Example #1
0
	def grab(self, id):
		databag = function.dict_object('data.json')
		studentName = databag['students'][id][0]
		studentDept = databag['students'][id][1]
		studentAvi = databag['students'][id][2]
		studentCourses = databag['students'][id][3]
		self.setWindowTitle('Registron - %s' %studentName)
		self.ui.studentName.setText(studentName)
		self.ui.studentID.setText(id)
		self.ui.studentDept.setText(studentDept)
		if len(databag['school']) > 34:
			truncated = databag['school'][:32] + '...'
			self.ui.schoolName.setText(truncated)
			self.ui.schoolName.setToolTip(databag['school'])
		else:
			self.ui.schoolName.setText(databag['school'])
		avatar = self.ui.studentAvatar
		if studentAvi == '':
			avatar.setPixmap(QtGui.QPixmap(function.resource_path('resources/images/128x128/default.jpg')))
		else:
			avatar.setPixmap(QtGui.QPixmap(function.resource_path('resources/images/128x128/%s' % studentAvi)))
		__courses__ = len(databag['departments'][studentDept])
		# Show the student's department courses
		for x, course in enumerate(databag['departments'][studentDept]):
			getattr(self.ui, 'course{}'.format(x + 1)).setText(' %s' %course)
			getattr(self.ui, 'course{}'.format(x + 1)).show()
			getattr(self.ui, 'courseCheck{}'.format(x + 1)).show()
		# check the courses offered by the student
		if studentCourses.split(':') != ['']: # check in cases of students with no registered courses
			for x, registered in enumerate(studentCourses.split(':')):
				getattr(self.ui, 'courseCheck{}'.format(registered)).setCheckState(2)
		self.show()
Example #2
0
	def __init__(self):
		QtGui.QMainWindow.__init__(self)
		self.ui = Ui_adminWindow()
		self.ui.setupUi(self)
		self.setGeometry(300, 100, 750, 520)
		self.ui.schoolSaved.hide()
		self.ui.studentSaved.hide()
		self.ui.courseAdded.hide()
		self.ui.passwordChanged.hide()
		self.ui.editUpdateNotif.hide()
		self.ui.studentNotFound.hide()
		self.ui.studentRecordSuccess.hide()
		self.ui.dataEditContainer.hide()
		self.ui.studentRecorded.hide()
		self.databag = function.dict_object('data.json')
		school = self.databag['school']
		self.ui.schoolName.setText(school)
		self.ui.schoolNameBtn.clicked.connect(self.addSchool)
		self.ui.changePassBtn.clicked.connect(self.changePass)
		self.ui.addDeptBtn.clicked.connect(self.addDepartment)
		self.ui.addStudentBtn.clicked.connect(self.addStudent)
		self.ui.editStudentBtn.clicked.connect(self.editStudent)
		self.ui.updateStudentBtn.clicked.connect(self.updateStudent)
		self.ui.deleteDeptBtn.clicked.connect(self.deleteDepartment)
		self.ui.deleteCourseBtn.clicked.connect(self.deleteCourse)
		self.ui.DeptEditBtn.clicked.connect(self.editDept)
		self.ui.CourseEditBtn.clicked.connect(self.editCourse)

		# Departments Combo Box
		for x, department in enumerate(self.databag['departments']):
			self.ui.courseAddDeptList.addItem('')
			self.ui.deptEditSelect.addItem('')
			self.ui.studentDept.addItem('')
			self.ui.ed_department.addItem('')
			self.ui.courseAddDeptList.setItemText(x, department)
			self.ui.deptEditSelect.setItemText(x, department)
			self.ui.studentDept.setItemText(x, department)
			self.ui.ed_department.setItemText(x, department)
		self.ui.DeptEdit.setText( str( self.ui.deptEditSelect.currentText() ) )

		# Dependent Courses Combo Box
		presentDeptCourses = str( self.ui.deptEditSelect.currentText() )
		for x, course in enumerate(self.databag['departments'][presentDeptCourses]):
			self.ui.courseEditSelect.addItem('')
			self.ui.courseEditSelect.setItemText(x, course)
		
		self.ui.CourseEdit.setText( str(self.ui.courseEditSelect.currentText()) )

		self.ui.deptEditSelect.currentIndexChanged.connect(self.updateCourseList)
		self.ui.courseEditSelect.currentIndexChanged.connect(self.updateCourseEdit)
		self.ui.addCourseBtn.clicked.connect(self.addCourses)
		#Menu Actions
		self.ui.actionQuit.triggered.connect(self.close)
		self.ui.actionDocumentation.triggered.connect(function.openGitPage)
		self.ui.actionAbout.triggered.connect(about.show)
		self.ui.actionCredits.triggered.connect(credits.show)
		self.ui.actionLicense.triggered.connect(license.show)
		self.ui.actionAdmin_Logout.triggered.connect(self.closeAdmin)
Example #3
0
	def courseUpdates(self):
		offered = ''
		for x in xrange(1,16,1):
			if getattr(self.ui, 'courseCheck{}'.format(x)).checkState() == 2:
				offered += str(x) + ':'
		offered = offered.rstrip(':')
		studentIndex = str(self.ui.studentID.text())
		databag = function.dict_object('data.json')
		databag['students'][studentIndex][3] = offered
		function.dump_data(databag)
		function.talk('Your courses have been updated')
		self.ui.courseStatus.setText('Courses updated')
Example #4
0
 def courseUpdates(self):
     offered = ''
     for x in xrange(1, 16, 1):
         if getattr(self.ui, 'courseCheck{}'.format(x)).checkState() == 2:
             offered += str(x) + ':'
     offered = offered.rstrip(':')
     studentIndex = str(self.ui.studentID.text())
     databag = function.dict_object('data.json')
     databag['students'][studentIndex][3] = offered
     function.dump_data(databag)
     function.talk('Your courses have been updated')
     self.ui.courseStatus.setText('Courses updated')
Example #5
0
	def verify(self):
		__user__ = str(self.ui.adminUname.text())
		__pass__ = str(self.ui.adminPass.text())
		databag = function.dict_object('data.json')
		__spass__ = databag['auth']
		if __user__ == 'admin' and function.computeHash(__pass__) == __spass__:
			self.ui.authError.hide()
			self.close()
			window.hide()
			manageCourse.hide()
			administration.show()
		else:
			function.talk("Invalid authentication")
			self.ui.authError.show()
Example #6
0
 def verify(self):
     __user__ = str(self.ui.adminUname.text())
     __pass__ = str(self.ui.adminPass.text())
     databag = function.dict_object('data.json')
     __spass__ = databag['auth']
     if __user__ == 'admin' and function.computeHash(__pass__) == __spass__:
         self.ui.authError.hide()
         self.close()
         window.hide()
         manageCourse.hide()
         administration.show()
     else:
         function.talk("Invalid authentication")
         self.ui.authError.show()
Example #7
0
	def checkCampusID(self):
		databag = function.dict_object('data.json')
		campusID = str(self.ui.matricInput.text())
		if campusID != '':
			if databag['students'].has_key(campusID):
				self.ui.invalidID.hide()
				studentName = databag['students'][campusID][0]
				function.talk("Hello %s, let us register your courses" % studentName)
				self.hide()
				manageCourse.grab(campusID)
			else:
				self.ui.invalidID.show()
				function.talk("There is no student with that campus ID in our records")
		else:
			self.ui.invalidID.show()
			function.talk("Your input is empty. Please type your campus ID to log in as a student")
Example #8
0
 def checkCampusID(self):
     databag = function.dict_object('data.json')
     campusID = str(self.ui.matricInput.text())
     if campusID != '':
         if databag['students'].has_key(campusID):
             self.ui.invalidID.hide()
             studentName = databag['students'][campusID][0]
             function.talk("Hello %s, let us register your courses" %
                           studentName)
             self.hide()
             manageCourse.grab(campusID)
         else:
             self.ui.invalidID.show()
             function.talk(
                 "There is no student with that campus ID in our records")
     else:
         self.ui.invalidID.show()
         function.talk(
             "Your input is empty. Please type your campus ID to log in as a student"
         )
Example #9
0
 def grab(self, id):
     databag = function.dict_object('data.json')
     studentName = databag['students'][id][0]
     studentDept = databag['students'][id][1]
     studentAvi = databag['students'][id][2]
     studentCourses = databag['students'][id][3]
     self.setWindowTitle('Registron - %s' % studentName)
     self.ui.studentName.setText(studentName)
     self.ui.studentID.setText(id)
     self.ui.studentDept.setText(studentDept)
     if len(databag['school']) > 34:
         truncated = databag['school'][:32] + '...'
         self.ui.schoolName.setText(truncated)
         self.ui.schoolName.setToolTip(databag['school'])
     else:
         self.ui.schoolName.setText(databag['school'])
     avatar = self.ui.studentAvatar
     if studentAvi == '':
         avatar.setPixmap(
             QtGui.QPixmap(
                 function.resource_path(
                     'resources/images/128x128/default.jpg')))
     else:
         avatar.setPixmap(
             QtGui.QPixmap(
                 function.resource_path('resources/images/128x128/%s' %
                                        studentAvi)))
     __courses__ = len(databag['departments'][studentDept])
     # Show the student's department courses
     for x, course in enumerate(databag['departments'][studentDept]):
         getattr(self.ui, 'course{}'.format(x + 1)).setText(' %s' % course)
         getattr(self.ui, 'course{}'.format(x + 1)).show()
         getattr(self.ui, 'courseCheck{}'.format(x + 1)).show()
     # check the courses offered by the student
     if studentCourses.split(':') != [
             ''
     ]:  # check in cases of students with no registered courses
         for x, registered in enumerate(studentCourses.split(':')):
             getattr(self.ui,
                     'courseCheck{}'.format(registered)).setCheckState(2)
     self.show()
Example #10
0
    def __init__(self):
        QtGui.QMainWindow.__init__(self)
        self.ui = Ui_adminWindow()
        self.ui.setupUi(self)
        self.setGeometry(300, 100, 750, 520)
        self.ui.schoolSaved.hide()
        self.ui.studentSaved.hide()
        self.ui.courseAdded.hide()
        self.ui.passwordChanged.hide()
        self.ui.editUpdateNotif.hide()
        self.ui.studentNotFound.hide()
        self.ui.studentRecordSuccess.hide()
        self.ui.dataEditContainer.hide()
        self.ui.studentRecorded.hide()
        self.databag = function.dict_object('data.json')
        school = self.databag['school']
        self.ui.schoolName.setText(school)
        self.ui.schoolNameBtn.clicked.connect(self.addSchool)
        self.ui.changePassBtn.clicked.connect(self.changePass)
        self.ui.addDeptBtn.clicked.connect(self.addDepartment)
        self.ui.addStudentBtn.clicked.connect(self.addStudent)
        self.ui.editStudentBtn.clicked.connect(self.editStudent)
        self.ui.updateStudentBtn.clicked.connect(self.updateStudent)
        self.ui.deleteDeptBtn.clicked.connect(self.deleteDepartment)
        self.ui.deleteCourseBtn.clicked.connect(self.deleteCourse)
        self.ui.DeptEditBtn.clicked.connect(self.editDept)
        self.ui.CourseEditBtn.clicked.connect(self.editCourse)

        # Departments Combo Box
        for x, department in enumerate(self.databag['departments']):
            self.ui.courseAddDeptList.addItem('')
            self.ui.deptEditSelect.addItem('')
            self.ui.studentDept.addItem('')
            self.ui.ed_department.addItem('')
            self.ui.courseAddDeptList.setItemText(x, department)
            self.ui.deptEditSelect.setItemText(x, department)
            self.ui.studentDept.setItemText(x, department)
            self.ui.ed_department.setItemText(x, department)
        self.ui.DeptEdit.setText(str(self.ui.deptEditSelect.currentText()))

        # Dependent Courses Combo Box
        presentDeptCourses = str(self.ui.deptEditSelect.currentText())
        for x, course in enumerate(
                self.databag['departments'][presentDeptCourses]):
            self.ui.courseEditSelect.addItem('')
            self.ui.courseEditSelect.setItemText(x, course)

        self.ui.CourseEdit.setText(str(self.ui.courseEditSelect.currentText()))

        self.ui.deptEditSelect.currentIndexChanged.connect(
            self.updateCourseList)
        self.ui.courseEditSelect.currentIndexChanged.connect(
            self.updateCourseEdit)
        self.ui.addCourseBtn.clicked.connect(self.addCourses)
        #Menu Actions
        self.ui.actionQuit.triggered.connect(self.close)
        self.ui.actionDocumentation.triggered.connect(function.openGitPage)
        self.ui.actionAbout.triggered.connect(about.show)
        self.ui.actionCredits.triggered.connect(credits.show)
        self.ui.actionLicense.triggered.connect(license.show)
        self.ui.actionAdmin_Logout.triggered.connect(self.closeAdmin)