예제 #1
0
	def create_schedule(self, name):
		profile = profiles.get_user_profile_from_ds()
		schedule = Schedule(parent=profile)
		schedule.name = name
		schedule.owner = users.get_current_user()
		schedule.term = 1
		schedule.year = 2011
		schedule.put()
		return schedule
예제 #2
0
	def update_current_schedule(self, entityKey):
		profile = profiles.get_user_profile_from_ds()
		logging.info('Given entityKey is: "' + str(entityKey) + '"')
		if not entityKey:
			profile.currentSchedule = None
		else:
			profile.currentSchedule = db.Key(encoded=entityKey)

		profile.put()
예제 #3
0
	def safely_delete(self, schedule):
		profile = profiles.get_user_profile_from_ds()

		# Simply comparing the two schedules themselves doesn't work
		# so we compare their keys
		if profile.currentSchedule.key() == schedule.key():
			logging.info('Deleted current schedule "' + schedule.name + '"')
			profile.currentSchedule = None
			profile.put()

		# Delete all courses in this schedule
		courses = Course.all().ancestor(schedule)
		for course in courses:
			course.delete()
		# Unshare this schedule from everyone
		records = ShareRecord.all().ancestor(schedule)
		for sharing in records:
			sharing.delete()
		schedule.delete()
예제 #4
0
	def get_current_schedule(self):
		profile = profiles.get_user_profile_from_ds()
		if profile.currentSchedule:
			return profile.currentSchedule.to_dict()
		else:
			return []