class Ui_loginPage(object): def login(self): df = pd.read_csv("UserData.csv") msg = QMessageBox() # success = 1 if login success success = 0 for index, row in df.iterrows(): if self.lineEdit_username.text() == row['Username'] and self.lineEdit_password.text() == row['Password'] \ and row['Status'] != "visitor": success = 1 print('Login success') row_num = df[df['Username'] == row['Username']].index[0] # CurretnUser = 1 means this user is currently logged in df.loc[row_num, 'CurrentUser'] = 1 df.to_csv('UserData.csv', index=False) # if user is SU if row['Status'] == 'SU': self.window = QtWidgets.QMainWindow() self.ui = Ui_HomePageSU() self.ui.setupUi(self.window) self.window.show() # if user is OU or VIP else: self.window = QtWidgets.QMainWindow() self.ui = Ui_HomePage2() self.ui.setupUi(self.window) self.window.show() if success == 0: msg.setText('Incorrect Password') msg.exec_() def setupUi(self, loginPage): loginPage.setObjectName("LoginPage") loginPage.resize(446, 193) self.centralwidget = QtWidgets.QWidget(loginPage) self.centralwidget.setObjectName("centralwidget") self.label_username = QtWidgets.QLabel(self.centralwidget) self.label_username.setGeometry(QtCore.QRect(20, 30, 91, 16)) font = QtGui.QFont() font.setFamily("Arial") font.setPointSize(9) self.label_username.setFont(font) self.label_username.setObjectName("label_username") self.label_password = QtWidgets.QLabel(self.centralwidget) self.label_password.setGeometry(QtCore.QRect(20, 70, 61, 16)) font = QtGui.QFont() font.setFamily("Arial") self.label_password.setFont(font) self.label_password.setObjectName("label_password") self.lineEdit_username = QtWidgets.QLineEdit(self.centralwidget) self.lineEdit_username.setGeometry(QtCore.QRect(90, 20, 301, 31)) self.lineEdit_username.setObjectName("lineEdit_username") self.lineEdit_password = QtWidgets.QLineEdit(self.centralwidget) self.lineEdit_password.setGeometry(QtCore.QRect(90, 60, 301, 31)) self.lineEdit_password.setObjectName("lineEdit_password") self.pushButton_login = QtWidgets.QPushButton(self.centralwidget) self.pushButton_login.setGeometry(QtCore.QRect(100, 110, 101, 41)) self.pushButton_login.setObjectName("pushButton_login") self.pushButton_login.clicked.connect( self.login) # connect the button to home page 2 self.pushButton_login.clicked.connect(loginPage.close) self.pushButton_forgotPassowrd = QtWidgets.QPushButton( self.centralwidget) self.pushButton_forgotPassowrd.setGeometry( QtCore.QRect(220, 110, 121, 41)) self.pushButton_forgotPassowrd.setObjectName( "pushButton_forgotPassowrd") loginPage.setCentralWidget(self.centralwidget) self.menubar = QtWidgets.QMenuBar(loginPage) self.menubar.setGeometry(QtCore.QRect(0, 0, 446, 21)) self.menubar.setObjectName("menubar") loginPage.setMenuBar(self.menubar) self.statusbar = QtWidgets.QStatusBar(loginPage) self.statusbar.setObjectName("statusbar") loginPage.setStatusBar(self.statusbar) self.retranslateUi(loginPage) QtCore.QMetaObject.connectSlotsByName(loginPage) def retranslateUi(self, LoginPage): _translate = QtCore.QCoreApplication.translate LoginPage.setWindowTitle(_translate("LoginPage", "MainWindow")) self.label_username.setText(_translate("LoginPage", "Username")) self.label_password.setText(_translate("LoginPage", "Password")) self.pushButton_login.setText(_translate("LoginPage", "Log in")) self.pushButton_forgotPassowrd.setText( _translate("LoginPage", "Forgot Password"))
class Ui_MainWindow(object): def openInboxPage(self): from InboxPage import Ui_InboxPage self.window = QtWidgets.QMainWindow() self.ui = Ui_InboxPage() self.ui.setupUi(self.window) self.window.show() def openGroupPage(self): from GroupPage import Ui_GroupPage self.window = QtWidgets.QMainWindow() self.ui = Ui_GroupPage() self.ui.setupUi(self.window) self.window.show() def findUser(self): df = pd.read_csv('UserData.csv') username = str(self.comboBox.currentText()) rownum = df[df['Username'] == username].index[0] df.loc[0, 'temp'] = username df.loc[1, 'temp'] = rownum df.to_csv('UserData.csv', index=False) def openMemberPage(self): # USER ID PARAMETERS from memberpage1 import Ui_MainWindow self.window = QtWidgets.QMainWindow() self.ui = Ui_MainWindow() self.ui.setupUi(self.window) self.window.show() def openApplicationPage(self): # USER ID PARAMETERS from applicationpage1 import Ui_MainWindow self.window = QtWidgets.QMainWindow() self.ui = Ui_MainWindow() self.ui.setupUi(self.window) self.window.show() def openHomePageSU(self): from HomePageSU import Ui_HomePageSU self.window = QtWidgets.QMainWindow() self.ui = Ui_HomePageSU() self.ui.setupUi(self.window) self.window.show() def setupUi(self, MainWindow): df = pd.read_csv('UserData.csv') count = df.shape[0] MainWindow.setObjectName("MainWindow") MainWindow.resize(836, 549) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.pushButton = QtWidgets.QPushButton(self.centralwidget) self.pushButton.setGeometry(QtCore.QRect(0, 80, 93, 28)) self.pushButton.setObjectName("pushButton") self.label = QtWidgets.QLabel(self.centralwidget) self.label.setGeometry(QtCore.QRect(40, 0, 601, 61)) font = QtGui.QFont() font.setPointSize(16) self.label.setFont(font) self.label.setObjectName("label") self.frame = QtWidgets.QFrame(self.centralwidget) self.frame.setGeometry(QtCore.QRect(140, 50, 551, 461)) self.frame.setFrameShape(QtWidgets.QFrame.WinPanel) self.frame.setFrameShadow(QtWidgets.QFrame.Raised) self.frame.setObjectName("frame") self.label_2 = QtWidgets.QLabel(self.frame) self.label_2.setGeometry(QtCore.QRect(100, 10, 341, 31)) font = QtGui.QFont() font.setPointSize(10) self.label_2.setFont(font) self.label_2.setObjectName("label_2") self.frame_4 = QtWidgets.QFrame(self.frame) self.frame_4.setGeometry(QtCore.QRect(70, 90, 441, 231)) self.frame_4.setFrameShape(QtWidgets.QFrame.Panel) self.frame_4.setFrameShadow(QtWidgets.QFrame.Raised) self.frame_4.setObjectName("frame_4") self.pushButton_3 = QtWidgets.QPushButton(self.frame_4) self.pushButton_3.setGeometry(QtCore.QRect(330, 180, 93, 28)) self.pushButton_3.setObjectName("pushButton_3") self.members = QtWidgets.QLabel(self.frame_4) self.members.setGeometry(QtCore.QRect(20, 50, 91, 21)) self.members.setFrameShape(QtWidgets.QFrame.Panel) self.members.setFrameShadow(QtWidgets.QFrame.Raised) self.members.setObjectName("members") self.comboBox = QtWidgets.QComboBox(self.frame_4) self.comboBox.setGeometry(QtCore.QRect(20, 70, 91, 22)) self.comboBox.setObjectName("comboBox") while count != -1: self.comboBox.addItem("") count -= 1 self.pushButton_3.clicked.connect(self.findUser) self.frame_4.raise_() self.label_2.raise_() self.frame_2 = QtWidgets.QFrame(self.centralwidget) self.frame_2.setGeometry(QtCore.QRect(0, 49, 141, 461)) self.frame_2.setFrameShape(QtWidgets.QFrame.Panel) self.frame_2.setFrameShadow(QtWidgets.QFrame.Raised) self.frame_2.setObjectName("frame_2") self.frame_3 = QtWidgets.QFrame(self.centralwidget) self.frame_3.setGeometry(QtCore.QRect(690, 50, 141, 461)) self.frame_3.setFrameShape(QtWidgets.QFrame.Panel) self.frame_3.setFrameShadow(QtWidgets.QFrame.Raised) self.frame_3.setObjectName("frame_3") self.pushButton_2 = QtWidgets.QPushButton(self.frame_3) self.pushButton_2.setGeometry(QtCore.QRect(0, 420, 131, 28)) self.pushButton_2.setObjectName("pushButton_2") self.pushButton_3.clicked.connect(self.openMemberPage) self.pushButton_3.clicked.connect(MainWindow.close) self.pushButton_5 = QtWidgets.QPushButton(self.frame_3) self.pushButton_5.setGeometry(QtCore.QRect(20, 100, 93, 28)) self.pushButton_5.setObjectName("pushButton_5") self.pushButton_6 = QtWidgets.QPushButton(self.frame_3) self.pushButton_6.setGeometry(QtCore.QRect(20, 150, 93, 28)) self.pushButton_6.setObjectName("pushButton_6") self.label_5 = QtWidgets.QLabel(self.frame_3) self.label_5.setGeometry(QtCore.QRect(0, 0, 141, 20)) self.label_5.setObjectName("label_5") self.pushButton.raise_() self.pushButton.clicked.connect(self.openHomePageSU) self.pushButton.clicked.connect(MainWindow.close) self.pushButton_2.clicked.connect(self.openApplicationPage) self.pushButton_2.clicked.connect(MainWindow.close) self.pushButton_6.clicked.connect(self.openGroupPage) self.pushButton_5.clicked.connect(self.openInboxPage) MainWindow.setCentralWidget(self.centralwidget) self.statusbar = QtWidgets.QStatusBar(MainWindow) self.statusbar.setObjectName("statusbar") MainWindow.setStatusBar(self.statusbar) self.retranslateUi(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): df = pd.read_csv('UserData.csv') count = df.shape[0] i = 0 _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow")) self.pushButton.setText(_translate("MainWindow", "<<")) self.label.setText( _translate("MainWindow", " Team-Up")) self.label_2.setText( _translate("MainWindow", "System Management Page(Super User Only)")) self.pushButton_3.setText(_translate("MainWindow", "check profile")) self.pushButton_2.setText( _translate("MainWindow", "application page >>")) self.members.setText(_translate("MainWindow", "MemberList")) while count != 0: self.comboBox.setItemText( i, _translate("MainWindow", df.at[i, 'Username'])) i += 1 count -= 1 self.pushButton_5.setText(_translate("MainWindow", "inbox page")) self.pushButton_6.setText(_translate("MainWindow", "group page")) self.label_5.setText(_translate("MainWindow", " Navigation"))