def _valid_request(self, user, attr, deadline_id, value): # User parameters must be defined if not user or not attr or not value or not deadline_id: print "Invalid Request. Parameters Missing" return False notes = value[0].decode("utf-8") # The deadline associated with the deadline_id must exist deadline_repo = DeadlineRepository() dead = deadline_repo.deadline_for_user(user.id, deadline_id) deadline_repo.close() if not dead or not dead.meta or not dead.group_id: print "Something is wrong with the deadline object." return False group_repo = GroupRepository() group = group_repo.fetch(dead.group_id) group_repo.close() if not group: print "Associated group doesn't exist." return False if not (dead.type == "PER" or (group.maintainerId == dead.group_id and dead.type == "END")): print "User cannot modify this deadline" return False return True
def _perform_request(self, user, attr, deadline_id, value): notes = value[0].decode("utf-8") deadline_repo = DeadlineRepository() dead = deadline_repo.deadline_for_user(user.id, deadline_id) dead.meta.notes = notes deadline_repo.persist(dead) deadline_repo.close()
def _perform_request(self, user, attr, deadline_id, value): new_name = value[0].decode("utf-8") deadline_repo = DeadlineRepository() dd = deadline_repo.deadline_for_user(user.id, deadline_id) dd.name = new_name deadline_repo.persist(dd) deadline_repo.close()
def _perform_request(self, user, attr, deadline_id, value): new_time = value[0].decode("utf-8") # Strip the 0000- year off the time. new_time = datetime.strptime(new_time[5:], "%m-%d %H:%M") # Add the correct year new_time = new_time + (date(datetime.now().year, 1, 1) - date(new_time.year, 1, 1)) deadline_repo = DeadlineRepository() dead = deadline_repo.deadline_for_user(user.id, deadline_id) dead.deadline = new_time deadline_repo.persist(dead) deadline_repo.close()
def _perform_request(self, user, name, values): print "Performing request" deadline_id = values["deadline_id"] curr_user = self.get_current_user() dr = DeadlineRepository() gr = GroupRepository() deadline = dr.deadline_for_user(curr_user.id, deadline_id) group = gr.fetch(deadline.group_id) if(group.maintainerId == curr_user.id or group.type == 'PER'): dr.delete(deadline.id) else: dr.drop_metadata(deadline)
def _valid_request(self, user, attr, deadline_id, value): # User parameters must be defined if not user or not attr or not value or not deadline_id: print "Invalid Request. Parameters Missing" return False new_time = value[0].decode("utf-8") # Strip the 0000- year off the time. new_time = datetime.strptime(new_time[5:], "%m-%d %H:%M") # Add the correct year new_time = new_time + (date(datetime.now().year, 1, 1) - date(new_time.year, 1, 1)) if new_time < datetime.now(): print "Invalid time" return False # The deadline associated with the deadline_id must exist deadline_repo = DeadlineRepository() dead = deadline_repo.deadline_for_user(user.id, deadline_id) deadline_repo.close() if not dead or not dead.name or not dead.group_id: print "Something is wrong with the deadline object." return False group_repo = GroupRepository() group = group_repo.fetch(dead.group_id) group_repo.close() if not group: print "Associated group doesn't exist." return False if not (dead.type == "PER" or (group.maintainerId == dead.group_id and dead.type == "END")): print "User cannot modify this deadline" return False return True