def METHOD_NAME(request, id=None, template_name="donations/view.html"):
    donation = get_object_or_404(Donation, pk=id)
    if not has_perm(request.user,'donations.view_donation'): raise Http403
    EventLog.objects.log(instance=donation)
    donation.donation_amount = tcurrency(donation.donation_amount)
    return render_to_resp(request=request, template_name=template_name,
        context={'donation':donation})