def add_time(self): hours = self.hours_input.text() try: hours = float(hours) skill_name = self.skill_cb.currentText() session_date = self.date_edit.date().toString("yyyy-M-dd") file_path = self.config["PATHS"]["sessions_filepath"] session_params = { "skill_name": skill_name, "session_date": session_date, "hours": hours, "file_path": file_path, } for note_category, text_edit in self.note_inputs.items(): # adding notes is optional, so ignore textareas left blank note_text = text_edit.toPlainText() if note_text: session_params[note_category.replace(":", "")] = note_text session = Session(**session_params) session.serialize_and_save() self.user.add_time(skill_name, hours) utils.save(self.user, self.config) self.add_time_win.hide() self.reset_add_time_win() except ValueError as e: message_box = QtGui.QMessageBox() message_box.setText(e) message_box.exec_()
def add_notes(skill, notes): user = utils.load_user(create=False, config=config) if user: sessions_filepath = config['PATHS']['sessions_filepath'] session = Session(skill, file_path=sessions_filepath, notes=notes) session.serialize_and_save() print(session) else: print(no_data_msg)
def add_time(skill, time, date=None): user = utils.load_user(config=config) if user: user.add_time(skill, time) utils.save(user, config) params = {'skill_name': skill, 'hours': time, 'file_path': config['PATHS']['sessions_filepath']} if date: params['session_date'] = date session = Session(**params) session.serialize_and_save() else: print(no_data_msg)
def print_session(self, date): session_node = self.get_session(date) if session_node is not None: session = Session.deserialize(self.skill, session_node) print(session) else: print("No session data for that date exists!")
def print_recent(self): recent_session_nodes = self.get_recent() if recent_session_nodes: for session_node in recent_session_nodes: session = Session.deserialize(self.skill, session_node) print(session) else: print("No session data exists for {}".format(self.skill))