def post(self): User = users.get_current_user() if User: student = db.GqlQuery("SELECT * FROM Student WHERE user = :1", User).get() #logging.warning("going to get credentials") #credentials = decorator.credentials #logging.warning("going to refresh credentials") #credentials.refresh(http=decorator.http()) #logging.warning("refreshed credentials") postData = json.loads(self.request.body) logging.warning(postData) newReminder = models.Reminder(parent=models.student_key(User)) newReminder.type = postData['type'] newReminder.title = postData['title'] newReminder.course_str = postData['course_str'] newReminder.completed = False newReminder.date = postData['date'] newReminder.start_time = postData['start_time'] newReminder.end_time = postData['end_time'] newReminder.course = postData['course'] newReminder.note = postData['note'] newReminder.id = int(time.time()) # do we need to rand here too? newReminder.eventid = "" newReminder.eventseq = -1 newReminder.alert_min = int(postData['alert_min']) newReminder.deleted = False newReminder.semester_id = "SP13" # eventually not hardcoded if postData['add_to_cal'] == True: newReminder.add_to_cal = True event = utils.createReminderEvent(postData) logging.warning(event) request = service.events().insert(calendarId=student.calID, body=event) response = request.execute(http=decorator.http()) if response is not None and response != "": logging.warning(json.dumps(response)) newReminder.eventid = response["id"] newReminder.eventseq = response["sequence"] else: newReminder.add_to_cal = False newReminder.put() logging.warning("added reminder to db") self.response.out.write(json.dumps(models.serialize(newReminder))) else: self.response.out.write("['auth':'fail']")
def post(self): User = users.get_current_user() if User: student = db.GqlQuery("SELECT * FROM Student WHERE user = :1", User).get() #logging.warning("going to get credentials") #credentials = decorator.credentials #logging.warning("going to refresh credentials") #credentials.refresh(http=decorator.http()) #logging.warning("refreshed credentials") postData = json.loads(self.request.body) logging.warning(postData) newReminder = models.Reminder(parent=models.student_key(User)) newReminder.type = postData['type'] newReminder.title = postData['title'] newReminder.course_str = postData['course_str'] newReminder.completed = False newReminder.date = postData['date'] newReminder.start_time = postData['start_time'] newReminder.end_time = postData['end_time'] newReminder.course = postData['course'] newReminder.note = postData['note'] newReminder.id = int(time.time()) # do we need to rand here too? newReminder.eventid = "" newReminder.eventseq = -1 newReminder.alert_min = int(postData['alert_min']) newReminder.deleted = False newReminder.semester_id = "SP13" # eventually not hardcoded if postData['add_to_cal'] == True : newReminder.add_to_cal = True event = utils.createReminderEvent(postData) logging.warning(event) request = service.events().insert(calendarId=student.calID, body=event) response = request.execute(http=decorator.http()) if response is not None and response != "" : logging.warning(json.dumps(response)) newReminder.eventid = response["id"] newReminder.eventseq = response["sequence"] else : newReminder.add_to_cal = False newReminder.put() logging.warning("added reminder to db") self.response.out.write(json.dumps(models.serialize(newReminder))) else : self.response.out.write("['auth':'fail']")
def put(self, idArg): User = users.get_current_user() if User: student = db.GqlQuery("SELECT * FROM Student WHERE user = :1", User).get() reminder = db.GqlQuery( "SELECT * FROM Reminder WHERE ANCESTOR IS :1 AND id = :2", models.student_key(User), int(idArg)).get() if reminder == None: self.response.out.write( "couldn't find a single reminder to edit") return info = json.loads(self.request.body) reminder.course = 0 if (info['course']): reminder.course = int(info['course']) reminder.course_str = info['course_str'] reminder.type = info['type'] reminder.title = info['title'] reminder.completed = info['completed'] reminder.date = info['date'] reminder.note = info['note'] reminder.start_time = info['start_time'] reminder.end_time = info['end_time'] if (info['alert_min']): reminder.alert_min = int(info['alert_min']) if info['add_to_cal'] == True: event = utils.createReminderEvent(info) logging.warning(event) if reminder.add_to_cal == False: # reminder was NOT on calendar before, add it request = service.events().insert(calendarId=student.calID, body=event) response = request.execute(http=decorator.http()) logging.warning(json.dumps(response)) reminder.eventid = response["id"] reminder.eventseq = response["sequence"] else: # reminder was on calendar before, edit it event["sequence"] = int(reminder.eventseq) request = service.events().update(calendarId=student.calID, eventId=reminder.eventid, body=event) response = request.execute(http=decorator.http()) logging.warning(json.dumps(response)) reminder.eventseq = response["sequence"] reminder.add_to_cal = True else: if reminder.add_to_cal == True: # reminder was on calendar before, delete it from calendar request = service.events().delete(calendarId=student.calID, eventId=reminder.eventid) response = request.execute(http=decorator.http()) logging.warning(response) reminder.eventid = "" reminder.eventseq = -1 reminder.add_to_cal = False reminder.put() self.response.out.write("completed reminders") else: self.response.out.write("['auth':'fail']")
def put(self, idArg): User = users.get_current_user() if User: student = db.GqlQuery("SELECT * FROM Student WHERE user = :1", User).get() reminder = db.GqlQuery("SELECT * FROM Reminder WHERE ANCESTOR IS :1 AND id = :2", models.student_key(User), int(idArg)).get() if reminder == None : self.response.out.write("couldn't find a single reminder to edit") return info = json.loads(self.request.body) reminder.course = 0 if (info['course']): reminder.course = int(info['course']) reminder.course_str = info['course_str'] reminder.type = info['type'] reminder.title = info['title'] reminder.completed = info['completed'] reminder.date = info['date'] reminder.note = info['note'] reminder.start_time = info['start_time'] reminder.end_time = info['end_time'] if (info['alert_min']): reminder.alert_min = int(info['alert_min']) if info['add_to_cal'] == True : event = utils.createReminderEvent(info) logging.warning(event) if reminder.add_to_cal == False : # reminder was NOT on calendar before, add it request = service.events().insert(calendarId=student.calID, body=event) response = request.execute(http=decorator.http()) logging.warning(json.dumps(response)) reminder.eventid = response["id"] reminder.eventseq = response["sequence"] else : # reminder was on calendar before, edit it event["sequence"] = int(reminder.eventseq) request = service.events().update(calendarId=student.calID, eventId=reminder.eventid, body=event) response = request.execute(http=decorator.http()) logging.warning(json.dumps(response)) reminder.eventseq = response["sequence"] reminder.add_to_cal = True; else : if reminder.add_to_cal == True : # reminder was on calendar before, delete it from calendar request = service.events().delete(calendarId=student.calID, eventId=reminder.eventid) response = request.execute(http=decorator.http()) logging.warning(response) reminder.eventid = "" reminder.eventseq = -1 reminder.add_to_cal = False; reminder.put() self.response.out.write("completed reminders") else: self.response.out.write("['auth':'fail']");