Advertisement
Guest User

Untitled

a guest
Jan 29th, 2019
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 8.00 KB | None | 0 0
  1. # main.py
  2. if __name__ == '__main__':
  3.     # from lib import GUI as gui
  4.     # from lib import Settings
  5.     from lib import Sqlite
  6.     import os
  7.  
  8.     path = os.path.dirname(os.path.realpath(__file__))
  9.     print(path)
  10.     name = 'database'
  11.     db = ''
  12.     ingelogt = False
  13.     # the currently open case
  14.     active_case = ''
  15.  
  16.     def makeCase(number, title, note):
  17.         values = {"number": number, "title": title, "note": note}
  18.         db.set_case(values)
  19.  
  20.     import PySimpleGUI as Sg
  21.  
  22.     layout = [[Sg.Text('At which location would you like to save the TUF database?')],
  23.               [Sg.Input(path), Sg.FolderBrowse()],
  24.               [Sg.T(' ' * 25), Sg.Button('Yes'), Sg.Button('No')]]
  25.     win1 = Sg.Window('TUF - Turtle Forensics', icon='ICON.ico').Layout(layout)
  26.  
  27.     win6_active = win5_active = win4_active = win3_active = win2_active = False
  28.  
  29.     while True:
  30.         ev1, vals1 = win1.Read()
  31.  
  32.         if ev1 is None:
  33.             break
  34.  
  35.         if ev1 == 'No':
  36.             break
  37.  
  38.         if ev1 == 'Yes':
  39.             if path != vals1[0]:
  40.                 path = vals1[0]
  41.             db = Sqlite.Sqlite(path, name)
  42.             db.setup_database()
  43.             db.log2csv()
  44.  
  45.         if not win2_active and ev1 == 'Yes':
  46.             win2_active = True
  47.             win1.Hide()
  48.             layout2 = [[Sg. Text('Login as a TUF user or create a new user account.')],
  49.                        [Sg.Text('Username'), Sg.Input()],
  50.                        [Sg.Text('Password'), Sg.Input()],
  51.                        [Sg.Button('Login'), Sg.Button('Create User')]]
  52.             win2 = Sg.Window('TUF - Turtle Forensics', size=(400, 300), icon='ICON.ico').Layout(layout2)
  53.  
  54.         if win2_active:
  55.             ev2, vals2 = win2.Read()
  56.  
  57.             while ingelogt is False:
  58.  
  59.                 if ev2 == 'Login':
  60.                     username = vals2[0]
  61.                     password = vals2[1]
  62.                     check_ingelogt = db.check_user(username, password)
  63.  
  64.                     if check_ingelogt is True:
  65.                         ingelogt = True
  66.                         Sg.Popup("te bent ingelogt")
  67.                         break
  68.                     elif check_ingelogt is False:
  69.                         ingelogt = False
  70.                         Sg.Popup("deze combinatie van gebruikers naam en wachtwoord bestaat niet")
  71.                         ev2, vals2 = win2.Read()
  72.                     else:
  73.                         Sg.Popup("er is iets fout gegaan")
  74.                         ingelogt = False
  75.  
  76.                 if ev2 == 'Create User' and ingelogt is False:
  77.                     create = db.check_username(vals2[0])
  78.  
  79.                     if create is False:
  80.                         db.set_user(username=vals2[0], password=vals2[1])
  81.                         Sg.Popup("Een user met de gebruikersnaam " + vals2[0] + " gemaakt")
  82.                         ingelogt = True
  83.                     else:
  84.                         Sg.Popup("deze gebruikersnaam bestaat al")
  85.                         ev2, vals2 = win2.Read()
  86.  
  87.  
  88.                 if ev2 is None:
  89.                     break
  90.  
  91.  
  92.  
  93.  
  94.         if not win3_active and ingelogt is True:
  95.             cases = db.get_cases()
  96.             table = Sg.Table(cases,
  97.                              headings=["case", "case id", "title", "description", "date created"],
  98.                              enable_events=True)
  99.             win3_active = True
  100.             win2.Hide()
  101.             layout3 = [[Sg.T(' ' * 20), Sg.Text('Welcome to Turtle Forensics!')],
  102.                        [Sg.Text('', key='_OUTPUT_')],
  103.                        [Sg.Text('Would you like to create a new case or open a recent one?')],
  104.                        [table],
  105.                        [Sg.Button('Open Case'), Sg.Button('Create Case')]]
  106.             win3 = Sg.Window('TUF - Turtle Forensics', icon='ICON.ico').Layout(layout3)
  107.  
  108.             while True:
  109.                 if win3_active:
  110.  
  111.                     ev3, vals3 = win3.Read()
  112.  
  113.                     if ev3 == 'clicked':
  114.  
  115.                         Sg.Popup(vals3)
  116.                     if ev3 == 'Open Case':
  117.                         active_case = cases[vals3[0][0]][0]
  118.                         break
  119.                     if ev3 is None:
  120.                         break
  121.  
  122.         if not win5_active and ev3 == 'Create Case' and ingelogt is True:
  123.             win5_active = True
  124.             win3.Hide()
  125.             layout5 = [[Sg.Text('Case Number: '), Sg.Input()],
  126.                        [Sg.Text('Case Title:      '), Sg.Input('')],
  127.                        [Sg.Text('Case Note:     '), Sg.Input()],
  128.                        [Sg.Button('Back'), Sg.Button('Save Case')]]
  129.             win5 = Sg.Window('Turtle Forensics - Create Case', icon='ICON.ico').Layout(layout5)
  130.  
  131.         if win5_active and ingelogt is True:
  132.             ev5, vals5 = win5.Read()
  133.             if ev5 == 'Save Case':
  134.                 x = ev5, vals5[0]
  135.                 number = x[1]
  136.                 y = ev5, vals5[1]
  137.                 title = y[1]
  138.                 z = ev5, vals5[2]
  139.                 note = z[1]
  140.  
  141.                 makeCase(number, title, note)
  142.                 Sg.Popup('The case: ', title, 'has been made.', icon='ICON.ico')
  143.  
  144.                 win6_active = True
  145.                 win5_active = False
  146.                 win5.Hide()
  147.                 layout6 = [[Sg.Radio('E01', "Image", key='e01'), Sg.Radio('RAW', "Image", key='RAW')],
  148.                            [Sg.Text('Image source:    '), Sg.Input(), Sg.FolderBrowse()],
  149.                            [Sg.Checkbox('Hash Image after Indexing')],
  150.                            [Sg.Button('Back'), Sg.Button('Save')]]
  151.                 win6 = Sg.Window('Turtle Forensics - Create Case', icon='ICON.ico').Layout(layout6)
  152.  
  153.             if win6_active:
  154.                 ev6, vals6 = win6.Read()
  155.  
  156.                 if ev6 == 'Save':
  157.                     if vals6['e01']:
  158.                         print('Hello mijn nama mama')
  159.                     if vals6['RAW']:
  160.                         print('raw')
  161.  
  162.         # case overvieuw
  163.         if not win6_active and ev3 == 'Open Case' and ingelogt is True:
  164.             case = db.get_case(1)
  165.             win3.Hide()
  166.             print(case)
  167.             layout6 = [[Sg.Radio('E01', "Image", key='e01'), Sg.Radio('RAW', "Image", key='RAW')],
  168.                        [Sg.Text('Image source:    '), Sg.Input(), Sg.FolderBrowse()],
  169.                        [Sg.Checkbox('Hash Image after Indexing')],
  170.                        [Sg.Button('Back'), Sg.Button('Save')]]
  171.             win6 = Sg.Window('Turtle Forensics - case ' + case[2], icon='ICON.ico').Layout(layout6)
  172.  
  173.  
  174. """           if ev2 in (None, 'Back', '< Prev'):
  175.                win2_active = False
  176.                win2.Close()
  177.                win1.UnHide()
  178.            elif ev3 == 'Next':
  179.                win4_active = True
  180.                win3_active = False
  181.                win3.Hide()
  182.                layout4 = [[Sg.Radio('E01', "Image"), Sg.Radio('RAW', "Image")],
  183.                           [Sg.Text('Image source:    '), Sg.Input(), Sg.FolderBrowse()],
  184.                           [Sg.Checkbox('Hash Image after Indexing')],
  185.                           [Sg.Button('Back'), Sg.Button('Save')]]
  186.                win3 = Sg.Window('Create Case').Layout(layout3)
  187.  
  188.        if win3_active:
  189.            ev3, vals3 = win3.Read()
  190.            if ev3 in (None, 'Back', '< Prev'):
  191.                win3.Close()
  192.                win3_active = False
  193.                win2_active = True
  194.                win2.UnHide()
  195.            elif ev3 == 'Save':
  196.                win4_active = True
  197.                win3_active = False
  198.                win3.Hide()
  199.                layout4 = [[Sg.Radio('E01', "Image"), Sg.Radio('RAW', "Image")],
  200.                           [Sg.Text('Image source:    '), Sg.Input(), Sg.FolderBrowse()],
  201.                           [Sg.Checkbox('Hash Image after Indexing')],
  202.                           [Sg.Button('Back'), Sg.Button('Save')]]
  203.                win4 = Sg.Window('Create Case').Layout(layout4)
  204.  
  205.                if win4_active:
  206.                    ev4, vals4 = win4.Read()
  207. """
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement