def _handler(self, expense_key, post=False): user = users.get_current_user() if user: instance = Transaction.get(expense_key) if instance.user != user: self.redirect(users.create_login_url(self.request.uri)) if post: form = IncomeForm(user, instance=instance, data=self.request.POST) if form.is_valid(): transaction = form.save(commit=False) transaction.account = transaction.customer.account transaction.put() self.redirect("/receitas/") form = IncomeForm(user, instance=instance) path = os.path.join(os.path.dirname(__file__), 'templates/income.html') self.response.out.write(template.render(path, { 'form': form, 'user': user, 'logout_url': users.create_logout_url("/") })) else: self.redirect(users.create_login_url(self.request.uri))
def _handler(self, post=False): user = users.get_current_user() if user: if post: form = IncomeForm(user, data=self.request.POST) if form.is_valid(): transaction = form.save(commit=False) transaction.account = transaction.customer.account transaction.user = user transaction.income = True transaction.put() self.redirect(self.request.uri) else: form = IncomeForm(user) start, end = get_start_end_range(self.request) account_key = self.request.get('account', None) filter_form = FilterForm(user) filter_form.fields['start'].initial = start filter_form.fields['end'].initial = end filter_form.fields['account'].initial = account_key incomes = Transaction.all()\ .filter('user ='******'income =', True)\ .filter('date >=', start)\ .filter('date <=', end) if account_key: incomes = incomes.filter('account =', Account.get(account_key)) incomes = incomes.order('-date').fetch(1000) prefetch_refprops(incomes, Transaction.account, Transaction.customer) path = os.path.join(os.path.dirname(__file__), 'templates/incomes.html') self.response.out.write(template.render(path, { 'start': start, 'end': end, 'filter_form': filter_form, 'incomes': incomes, 'form': form, 'user': user, 'js_data': calc_expenses_js_data(incomes), 'total': sum([income.value for income in incomes]), 'logout_url': users.create_logout_url("/") })) else: self.redirect(users.create_login_url(self.request.uri))