diff --git a/session.py b/session.py index 2c4e2f2..2e984be 100644 --- a/session.py +++ b/session.py @@ -1,59 +1,107 @@ +#!/usr/bin/python3 + from tkinter import * -from tkinter import messagebox -from server import server -import threading -import pyqrcode -import subprocess +import os, sys, sqlite3 +from functools import partial +def create_db(): + if os.path.exists("party.db"): + print("user.db bereits vorhanden") + else: + # Verbindung zur Datenbank erzeugen + connection = sqlite3.connect("party.db") + # Datensatz-Cursor erzeugen + cursor = connection.cursor() + # Datenbanktabelle erzeugen + sql = "CREATE TABLE Party(" \ + "usr TEXT, " \ + "usrinfo TEXT)" \ + "Session ID TEXT, " \ + "zeit TEXT, " \ + "SpielName TEXT, " \ + "Spinfo TEXT)" + cursor.execute(sql) + # Verbindung beenden + connection.close() -def close_session(): - print("test") - +def load_session(): + verbunden_status = True -def run_server(): - #subprocess.run([server() ]) +def validateLogin(username, password): + print("username entered :", username.get()) + print("password entered :", password.get()) return -def action_get_info_dialog(): - m_text = "\ -************************\n\ -Autor: fingadumbledore\n\ -Copyright: 2022\n\ -Version: 0.1\n\ -************************" - messagebox.showinfo(message=m_text, title = "Infos") -def session(): - fenster = Tk() - fenster.title("Session") - fenster.geometry("450x400") +#username label and text entry box - info_text = Label(fenster, text = "Session") - info_text.pack() - # Menüleiste erstellen - menuleiste = Menu(fenster) +class Checkbar(Frame): + def __init__(self, parent=None, picks=[], side=LEFT, anchor=W): + Frame.__init__(self, parent) + self.vars = [] + for pick in picks: + var = IntVar() + chk = Checkbutton(self, text=pick, variable=var) + chk.pack(side=side, anchor=anchor, expand=YES) + self.vars.append(var) + def state(self): + return map((lambda var: var.get()), self.vars) - # Menü Datei und Help erstellen - datei_menu = Menu(menuleiste, tearoff=0) - help_menu = Menu(menuleiste, tearoff=0) + root = Tk() + lng = Checkbar(root, ['Planer', 'QR-Code', 'User']) + tgl = Checkbar(root, ['Server','Datenbank']) + lng.pack(side=TOP, fill=X) + tgl.pack(side=LEFT) + lng.config(relief=GROOVE, bd=2) - # Beim Klick auf Datei oder auf Help sollen nun weitere Einträge erscheinen. - # Diese werden also zu "datei_menu" und "help_menu" hinzugefügt - datei_menu.add_command(label="Server", command=run_server()) - datei_menu.add_separator() # Fügt eine Trennlinie hinzu - datei_menu.add_command(label="Exit", command=close_session()) + def allstates(): + print(list(lng.state()), list(tgl.state())) + Button(root, text='abbrechen', command=root.quit).pack(side=RIGHT) + Button(root, text='start', command=allstates).pack(side=RIGHT) + root.mainloop() - help_menu.add_command(label="Info!", command=action_get_info_dialog) - # Nun fügen wir die Menüs (Datei und Help) der Menüleiste als - # "Drop-Down-Menü" hinzu - menuleiste.add_cascade(label="Session", menu=datei_menu) - menuleiste.add_cascade(label="Help", menu=help_menu) +from tkinter import * - # Die Menüleiste mit den Menüeinrägen noch dem Fenster übergeben und fertig. - fenster.config(menu=menuleiste) +####### +def validateLogin(username, password): + print("username entered :", username.get()) + print("password entered :", password.get()) + return - - fenster.mainloop() - \ No newline at end of file +#window +tkWindow = Tk() +tkWindow.geometry('400x150') +tkWindow.title('Tkinter Login Form - pythonexamples.org') + +#username label and text entry box +usernameLabel = Label(tkWindow, text="User Name").grid(row=0, column=0) +username = StringVar() +usernameEntry = Entry(tkWindow, textvariable=username).grid(row=0, column=1) + +#password label and password entry box +passwordLabel = Label(tkWindow,text="Password").grid(row=1, column=0) +password = StringVar() +passwordEntry = Entry(tkWindow, textvariable=password, show='*').grid(row=1, column=1) + +validateLogin = partial(validateLogin, username, password) + +#login button +loginButton = Button(tkWindow, text="Login", command=validateLogin).grid(row=4, column=0) +usernameLabel = Label(tkWindow, text="User Name").grid(row=0, column=0) +username = StringVar() +usernameEntry = Entry(tkWindow, textvariable=username).grid(row=0, column=1) + +#password label and password entry box +passwordLabel = Label(tkWindow,text="Password").grid(row=1, column=0) +password = StringVar() +passwordEntry = Entry(tkWindow, textvariable=password, show='*').grid(row=1, column=1) + +validateLogin = partial(validateLogin, username, password) + +#login button +loginButton = Button(tkWindow, text="Login", command=validateLogin).grid(row=4, column=0) + +def session_window(): + Window.mainloop()