def getDaysAvailableMenuItems(day): client = memcache.Client() key = MENU_ITEMS_FOR_DAY+ str(day) daysItems = client.get(key) if daysItems == None: menuItems = MenuItem.all().filter("day = ", day).filter("containingMenuItem = ", None) daysItems=[] for menuItem in menuItems: menuItemObject = createMenuItemData(menuItem) daysItems.append(menuItemObject) client.set(key,daysItems) # Fetch dishes for menu items ret = [] for menuItem in daysItems: sumprice = 0 dish = getDish(menuItem['dishKey']) menuItem['dish'] = dish if dish != None: sumprice = dish['price'] components = [] for subItemKey in menuItem['componentKeys']: component = getMenuItem(subItemKey) components.append(component) componentDish = getDish(component['dishKey']) if componentDish != None: sumprice = sumprice + componentDish['price'] menuItem['sumprice'] = sumprice menuItem['components'] = components ret.append(menuItem) return ret
def getDaysMenuItems(day, categoryKey): client = memcache.Client() key = MENU_ITEMS_FOR_DAY+ str(day) + "_" + str(categoryKey) daysItems = client.get(key) if daysItems == None: menuItems = MenuItem.all().filter("day = ", day).filter("categoryKey = ", categoryKey).filter("containingMenuItem = ", None) daysItems=[] for menuItem in menuItems: menuItemObject = createMenuItemData(menuItem) daysItems.append(menuItemObject) client.set(key,daysItems) # Fetch dishes for menu items ret = [] for menuItem in daysItems: menuItemObject=getMenuItem(menuItem['key']); ret.append(menuItemObject) return ret
def get(self): if not isUserAdmin(self): self.session[LOGIN_NEXT_PAGE_KEY] = self.URL self.redirect("/") return menuItems = MenuItem.all() newMenuItems = [] for menuItem in menuItems: try: menuItem.dish.key() except: menuItem.dish = None newMenuItems.append(menuItem) template_values = { 'menuItems' : menuItems } template = jinja_environment.get_template('templates/csv/menuItemList.download') self.response.out.write(template.render(template_values))