def new_comment(request, expense_pk): try: expense = models.Expense.objects.get(pk=int(expense_pk)) if not may_view_expense(request, expense): return HttpResponseForbidden() if request.method == 'POST': if re.match('^\s*$', request.POST['content']): return HttpResponseRedirect( reverse('expenses-expense', kwargs={'pk': expense_pk})) comment = models.Comment(expense=expense, author=request.user.profile, content=request.POST['content']) comment.save() return HttpResponseRedirect( reverse('expenses-expense', kwargs={'pk': expense_pk})) else: raise Http404() except ObjectDoesNotExist: raise Http404("Utlägget finns inte")
def new_comment(request, expense_pk): """ Adds new comment to receipt. """ try: expense = models.Expense.objects.get(pk=int(expense_pk)) except ObjectDoesNotExist: raise Http404("Utlägget finns inte") if not request.user.profile.may_view_expense(expense): return HttpResponseForbidden() if re.match('^\s*$', request.POST['content']): return HttpResponseRedirect( reverse('expenses-show', kwargs={'pk': expense_pk})) models.Comment(expense=expense, author=request.user.profile, content=request.POST['content']).save() return HttpResponseRedirect( reverse('expenses-show', kwargs={'pk': expense_pk}))
def new_payment(request): """ Performs a payment """ try: expenses = [ models.Expense.objects.get(id=int(expense_id)) for expense_id in request.POST.getlist('expense') ] except ObjectDoesNotExist: raise Http404("Ett av utläggen finns inte.") expense_owner = expenses[0].owner for expense in expenses: if expense.owner != expense_owner: return HttpResponseBadRequest("Alla kvitton måste ha samma ägare") if expense_owner.bank_name == "" or expense_owner.bank_account == "" or expense_owner.sorting_number == "": return HttpResponseBadRequest( "Användaren har inte angett alla sina bankuppgifter") payment = models.Payment( payer=request.user.profile, receiver=expense_owner, account=models.BankAccount.objects.get(name=request.POST['account'])) payment.save() for expense in expenses: expense.reimbursement = payment expense.save() models.Comment(author=request.user.profile, expense=expense, content="Betalade ut i betalning " + str(payment.id)).save() return HttpResponseRedirect( reverse('expenses-action-pay') + "?payment=" + str(payment.id))