def get(self): statuses = Status.all() amounts = {} users = {} for status in statuses: nickname = status.user.nickname() amount = amounts.get(nickname, { 'nama_cup': 0, 'nama_small': 0, 'nama_middle': 0, 'nama_big': 0, 'kan_350': 0, 'kan_500': 0, }) amount[status.beer] += status.amount amounts[nickname] = amount if not users.has_key(nickname): users[nickname] = status.user for nickname, amount in amounts.items(): total = TotalAmount.all().filter('user = ', users[nickname]).get() if total: for beer, value in amount.items(): setattr(total, beer, value) self.response.out.write("%s: %s(%s)<br>\n" % (nickname, beer, value)) total.put() self.response.out.write("done.")
def get(self): user = users.get_current_user() total = TotalAmount.all().filter('user = '******'page', 1)) if page > 0: offset = limit * (page - 1) else: self.redirect('/') return chart_labels, chart_values = mk_chart_data(total) total_status = Status.all().filter('user = '******'user = '******'-updated_at').fetch(limit, offset) if len(statuses): self.render_response('index.html', { 'statuses': statuses, 'total_amount': total.amount, 'chart_labels': chart_labels, 'chart_values': chart_values, 'is_paginated': limit < total_status, 'has_previous': page > 1, 'has_next': (offset + limit) < total_status, 'previous_page': page - 1, 'next_page': page + 1, }) else: self.render_response('index.html', { 'statuses': [], }) else: self.render_response('index.html', {})
def post(self): user = users.get_current_user() beer = self.request.get('beer') status_str = self.request.get('status') if beer and status_str: num = int(self.request.get('num')) status = Status(user = user, beer = beer, amount = TotalAmount.get_amount_by_beer(beer) * num, status = status_str, ) status.put() total = TotalAmount.all().filter('user = '******'/')