def submit_data(self, event=None): major = self.major_entry.get().strip() classification = self.classification_entry.get().strip() name = self.name_entry.get().strip() netid = self.net_id_entry.get().strip() for x in (major, classification, name, netid): if x == "": self.feedback_label.config(style="ErrorLabel.TLabel") self.feedback_label['text'] = 'Make sure there is an entry for every field.' return if self.dues.get() == "two": dues = 2 elif self.dues.get() == "one": dues = 1 else: dues = 0 data = MIS_Database_Functions.check_member(netid) if data is not None: if data['major'] != major: MIS_Database_Functions.set_major(netid, major) Logger.write_to_log(Logger.get_event_log_file(), "Major updated to %s for net id %s\n" % (major, netid)) if data['classification'] != classification: MIS_Database_Functions.set_classification(netid, classification) Logger.write_to_log(Logger.get_event_log_file(), "Classification updated to '%s' for net id '%s'\n" % (classification, netid)) if data['name'] != name: MIS_Database_Functions.set_name(netid, name) Logger.write_to_log(Logger.get_event_log_file(), "Name updated to %s for net id %s\n" % (name, netid)) if data['dues_paid'] != dues and dues > 0: MIS_Database_Functions.update_payment(netid, dues) Logger.write_to_log(Logger.get_event_log_file(), "Payment made for %s, %d semesters paid for\n" % (netid, dues)) if self.payment_made.get() == 0: Logger.write_to_log(Logger.get_event_log_file(), "Payment above NOT collected\n") else: MIS_Database_Functions.create_member(netid, name, major, classification, dues) Logger.write_to_log(Logger.get_event_log_file(), 'New Member: (%s, %s, %s, %s, %d)\n' % (netid, name, major, classification, dues)) if dues > 0: Logger.write_to_log(Logger.get_event_log_file(), "Payment made for %s semesters for net id %s\n" % (str(dues), netid)) if self.payment_made.get() == 0: Logger.write_to_log(Logger.get_event_log_file(), "Payment above NOT collected\n") event_id = MIS_Database_Functions.get_most_recent_event_id() # Weird edge case: when user accidentally presses trial button, may end up recording a trial meeting for a # a user who has already paid for the semester. Code is corrected to make sure the users payment information is # not affected, this just makes sure the logs don't falsely record a trial meeting. if data is None and dues == 0: Logger.write_to_log(Logger.get_event_log_file(), "Trial Meeting for %s\n" % netid) elif hasattr(data, 'dues_paid'): if data['dues_paid'] == 0: Logger.write_to_log(Logger.get_event_log_file(), "Trial Meeting for %s\n" % netid) MIS_Database_Functions.create_ticket(event_id, netid) Logger.write_to_log(Logger.get_event_log_file(), "\n\n") self.clear_all() self.feedback_label.config(style="SuccessLabel.TLabel") self.feedback_label['text'] = name.split(" ")[1] + " was checked in successfully!\n" \ "Welcome them to the meeting!"