예제 #1
0
	def post(self):
		if not isUserCook(self):
			self.session[LOGIN_NEXT_PAGE_KEY] = self.URL
			self.redirect("/")
			return
		dishKey=self.request.get('dishKey')
		if ((dishKey != None) and (dishKey != "")):
		#Modification of basic data
			title = self.request.get('title')
			subtitle = self.request.get('subtitle')
			description = self.request.get('description')
			eggFree = (self.request.get('eggFree') == "yes")
			milkFree = (self.request.get('milkFree') == "yes")
			dishCategoryKey=self.request.get(DISH_CATEGORY_KEY)
			codeModifier=self.request.get(DISH_CODE_MODIFIER)
			dishCategory=None
			if ((dishCategoryKey != None) and (dishCategoryKey != "")):
				dishCategory = db.get(dishCategoryKey)
			modifyDish(dishKey, title, subtitle, description, dishCategory, eggFree, milkFree, codeModifier)
			self.redirect('/dish?dishKey=%s' % self.request.get('dishKey'))
			return
		else:
			dish = Dish()
			dish.creationDate = datetime.datetime.today().date()
			dish.title = self.request.get('title')
			dish.subtitle = self.request.get('subtitle')
			dish.description = self.request.get('description')
			dish.category = DishCategory.get(self.request.get('dishCategoryKey'))
			eggFree = (self.request.get('eggFree') == "yes")
			milkFree = (self.request.get('milkFree') == "yes")
			dish.milkFree = milkFree
			dish.eggFree = eggFree
			dish.put()
			addDish(dish)
			self.redirect('/dish?dishKey=%s' % str(dish.key()))
def getDishCategory(key):
	if key == None:
		return None
	client = memcache.Client()
	dishCategory = client.get(key)
	if dishCategory == None:
		dishCategoryDb = DishCategory.get(key)
		if dishCategoryDb != None:
			dishCategory = createCategoryObject(dishCategoryDb)
			client.set(dishCategory['key'], dishCategory)
	return dishCategory
def getCategoryWithDishes(key):
	client = memcache.Client()
	category = client.get(key)
	if category == None:
		categoryDb = DishCategory.get(key)
		if categoryDb != None:
			category = createCategoryObject(categoryDb);
			client.set(key, category)
		else:
			return None
	# Fetch dishes
	dishes = []
	for dishKey in category['dishKeys']:
		dishes.append(getDish(dishKey))
	category['dishes'] = dishes
	return category
예제 #4
0
def addComposit(categoryKey, day):
	# Add it to database
	composit = Composit()
	composit.day=day
	composit.category=DishCategory.get(categoryKey)
	composit.price = composit.category.basePrice
	composit.categoryKey=str(categoryKey)
	composit.put()
	# Adds it to cache
	client = memcache.Client()
	key = COMPOSIT_FOR_DAY+ str(composit.day) + "_" + str(composit.categoryKey)
	daysComposits = client.get(key)
	#If we have something to update
	if daysComposits != None:
		# Just add this menu item
		compositObject = createCompositData(composit)
		daysComposits.append(compositObject)
		client.set(compositObject['key'], compositObject)
		client.set(key,daysComposits)