Browse Source

Make form in amount money page

devel
bashmak 8 years ago
parent
commit
275d09293d
  1. 8
      abonapp/forms.py
  2. 18
      abonapp/templates/abonapp/modal_abonamount.html
  3. 14
      abonapp/views.py

8
abonapp/forms.py

@ -178,3 +178,11 @@ class MarkersForm(forms.ModelForm):
def save(self, commit=True): def save(self, commit=True):
instance = super(MarkersForm, self).save(commit=False) instance = super(MarkersForm, self).save(commit=False)
return instance.save(update_fields=('markers',)) return instance.save(update_fields=('markers',))
class AmountMoneyForm(forms.Form):
amount = forms.FloatField(max_value=50000, label=_('Amount of money'))
comment = forms.CharField(max_length=128, label=_('Comment'), required=False)
def save(self):
pass

18
abonapp/templates/abonapp/modal_abonamount.html

@ -1,4 +1,5 @@
{% load i18n %} {% load i18n %}
{% load bootstrap3 %}
<form role="form" action="{% url 'abonapp:abon_amount' group_id abon.username %}" method="post"> {% csrf_token %} <form role="form" action="{% url 'abonapp:abon_amount' group_id abon.username %}" method="post"> {% csrf_token %}
<div class="modal-header primary"> <div class="modal-header primary">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
@ -6,23 +7,8 @@
</div> </div>
<div class="modal-body"> <div class="modal-body">
<div class="form-group-sm">
<label for="amount">{% trans 'Amount of money' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-ruble"></span></span>
<input id="amount" type="text" name="amount" placeholder="0.0" class="form-control" required>
</div>
</div>
<input type="hidden" name="abonuname" value="{{ abon.username }}"><br>
<div class="form-group-sm">
<label for="comment">{% trans 'Comment' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-pencil"></span></span>
<input id="comment" type="text" name="comment" class="form-control">
</div>
</div>
{% bootstrap_form form %}
<div class="btn-group"> <div class="btn-group">
<button type="submit" class="btn btn-sm btn-primary"> <button type="submit" class="btn btn-sm btn-primary">

14
abonapp/views.py

@ -191,12 +191,13 @@ class DelAbonDeleteView(DeleteView):
@transaction.atomic @transaction.atomic
def abonamount(request, gid, uname): def abonamount(request, gid, uname):
abon = get_object_or_404(models.Abon, username=uname) abon = get_object_or_404(models.Abon, username=uname)
frm = None
try: try:
if request.method == 'POST': if request.method == 'POST':
abonuname = request.POST.get('abonuname')
if abonuname == uname:
amnt = lib.safe_float(request.POST.get('amount'))
comment = request.POST.get('comment')
frm = forms.AmountMoneyForm(request.POST)
if frm.is_valid():
amnt = frm.cleaned_data.get('amount')
comment = frm.cleaned_data.get('comment')
if not comment: if not comment:
comment = _('fill account through admin side') comment = _('fill account through admin side')
abon.add_ballance(request.user, amnt, comment=comment) abon.add_ballance(request.user, amnt, comment=comment)
@ -205,6 +206,8 @@ def abonamount(request, gid, uname):
return redirect('abonapp:abon_phistory', gid=gid, uname=uname) return redirect('abonapp:abon_phistory', gid=gid, uname=uname)
else: else:
messages.error(request, _('I not know the account id')) messages.error(request, _('I not know the account id'))
else:
frm = forms.AmountMoneyForm()
except (NasNetworkError, NasFailedResult) as e: except (NasNetworkError, NasFailedResult) as e:
messages.error(request, e) messages.error(request, e)
except lib.MultipleException as errs: except lib.MultipleException as errs:
@ -212,7 +215,8 @@ def abonamount(request, gid, uname):
messages.error(request, err) messages.error(request, err)
return render_to_text('abonapp/modal_abonamount.html', { return render_to_text('abonapp/modal_abonamount.html', {
'abon': abon, 'abon': abon,
'group_id': gid
'group_id': gid,
'form': frm
}, request=request) }, request=request)

Loading…
Cancel
Save