def set_loc(self, chat_id, i, loc): try: self.plans[str(chat_id)][i]["loc"] = loc iomgr.save(PLANS_JSON, self.plans) return "*Location is updated!* 😎" except IndexError: return False except KeyError: return False
def set_desc(self, chat_id, i, desc): try: self.plans[str(chat_id)][i]["desc"] = util.title(desc) iomgr.save(PLANS_JSON, self.plans) return "*Description is updated!* 😎" except IndexError: return False except KeyError: return False
def delete(self, chat_id, i): try: del self.plans[str(chat_id)][i] iomgr.save(PLANS_JSON, self.plans) return "*The event is removed!* 🙃" except KeyError: return "*The event is not found!* 😞" except IndexError: return "*This action is invalid!* 😾"
def save_history(self, chat_id, plan): print(plan["desc"] + " saved to history!") if self.history is None: self.history = dict() if chat_id not in self.history: self.history[chat_id] = [] self.history[chat_id].append(plan) iomgr.save(HISTORY_JSON, self.history)
def set_date(self, chat_id, i, date): try: chat_id = str(chat_id) plan = self.plans[chat_id][i] date = datetime2str(update_year(get_datetime(date))) time = util.extract_time(plan) if ":" not in date and is_datetime(plan["dt"]) and time: date += ", " + time plan["dt"] = date self.plans[chat_id] = sort_plans(self.plans[chat_id]) iomgr.save(PLANS_JSON, self.plans) return "*Date is updated!* 😎" except IndexError: return False except KeyError: return False
def set_time(self, chat_id, i, time): try: plan = self.plans[str(chat_id)][i] dt_str = plan["dt"] if is_datetime(dt_str): dt_str = util.extract_date(plan) + ", " + time plan["dt"] = datetime2str(get_datetime(dt_str)) else: return "_Set a date first!_" self.plans[chat_id] = sort_plans(self.plans[chat_id]) iomgr.save(PLANS_JSON, self.plans) return "*Time is updated!* 😎" except IndexError: return False except KeyError: return False
def new_plan(self, chat_id, desc, place, time): chat_id = str(chat_id) if chat_id not in self.plans: self.plans[chat_id] = [] # util.insert_new_plan(self.plans[chat_id], {"desc": util.title(desc), # "loc": place, # "dt": time}) self.plans[chat_id].append({ "desc": util.title(desc), "loc": place, "dt": time }) self.plans[chat_id] = sort_plans(self.plans[chat_id]) print("Added a new event!") iomgr.save(PLANS_JSON, self.plans)