summaryrefslogtreecommitdiff
path: root/src/gui/pageLogin.py
blob: 083ae84fa3839bf42db5d35a288cdbaffff9920e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68

from PyQt5.QtWidgets import (
    QPushButton, QHBoxLayout, QGroupBox, QLabel,
    QLineEdit, QWidget, QVBoxLayout, QGridLayout
)
from src.gui import pageHome, pageRegister
from src.core.coreUser import core_login


def main(mainWindow) -> None:
    if not mainWindow.userConnected:
        connexionState = QLabel("Non connecté.")
    else:
        connexionState = QLabel(f"Connecté: {mainWindow.userEmail} - {mainWindow.userStatus}")

    btnAccueil = QPushButton("Accueil")
    btnAccueil.clicked.connect(lambda: pageHome.main(mainWindow))
    btnInscription = QPushButton("Inscription")
    btnInscription.clicked.connect(lambda: pageRegister.main(mainWindow))

    layoutUser = QHBoxLayout()
    layoutUser.addWidget(btnAccueil)
    layoutUser.addStretch()
    layoutUser.addWidget(btnInscription)
    grpUtilisateur = QGroupBox("Gestion de l'utilisateur")
    grpUtilisateur.setLayout(layoutUser)

    labMail = QLabel("Email")
    leditMail = QLineEdit()
    labPassword = QLabel("Mot de passe")
    leditPassword = QLineEdit()
    leditPassword.setEchoMode(QLineEdit.Password)
    btnConnexion = QPushButton("Connexion")
    btnConnexion.clicked.connect(
        lambda: 
            core_login(
                mainWindow,
                leditMail.text(),
                leditPassword.text()
            )
    )

    LayoutInfoConnexion = QGridLayout()
    LayoutInfoConnexion.addWidget(labMail, 0, 0)
    LayoutInfoConnexion.addWidget(leditMail, 0, 1)
    LayoutInfoConnexion.addWidget(labPassword, 1, 0)
    LayoutInfoConnexion.addWidget(leditPassword, 1, 1)
    LayoutInfoConnexion.addWidget(btnConnexion, 2, 1)
    
    layoutGroupConnexion = QHBoxLayout()
    layoutGroupConnexion.addStretch()
    layoutGroupConnexion.addLayout(LayoutInfoConnexion)
    layoutGroupConnexion.addStretch()

    grpConnexion = QGroupBox("Connexion")
    grpConnexion.setLayout(layoutGroupConnexion)

    layoutMain = QVBoxLayout()
    layoutMain.addWidget(connexionState)
    layoutMain.addWidget(grpUtilisateur)
    layoutMain.addStretch()
    layoutMain.addWidget(grpConnexion)
    layoutMain.addStretch()

    mainWindow.mainWidget.deleteLater()
    mainWindow.mainWidget = QWidget()
    mainWindow.mainWidget.setLayout(layoutMain)
    mainWindow.setCentralWidget(mainWindow.mainWidget)