damned-lies r1504 - in trunk: . stats
- From: claudep svn gnome org
- To: svn-commits-list gnome org
- Subject: damned-lies r1504 - in trunk: . stats
- Date: Tue, 17 Mar 2009 08:01:56 +0000 (UTC)
Author: claudep
Date: Tue Mar 17 08:01:55 2009
New Revision: 1504
URL: http://svn.gnome.org/viewvc/damned-lies?rev=1504&view=rev
Log:
2009-03-17 Claude Paroz <claude 2xlibre net>
* stats/forms.py:
* stats/views.py: Fixed saving logic for branch edit form.
Modified:
trunk/ChangeLog
trunk/stats/forms.py
trunk/stats/views.py
Modified: trunk/stats/forms.py
==============================================================================
--- trunk/stats/forms.py (original)
+++ trunk/stats/forms.py Tue Mar 17 08:01:55 2009
@@ -5,7 +5,7 @@
def __init__(self, *args, **kwargs):
super(ReleaseField, self).__init__(*args, **kwargs)
self.required = False
- if 'initial' in kwargs:
+ if 'label' in kwargs:
self.is_branch = True
class ModuleBranchForm(forms.Form):
@@ -30,7 +30,7 @@
self.branch_fields.append((branch.name, branch.name+'_cat'))
self.fields['new_branch'] = forms.CharField(required=False)
- self.fields['new_branch_release'] = ReleaseField(queryset=Release.objects.all(), required=False)
+ self.fields['new_branch_release'] = ReleaseField(queryset=Release.objects.all())
self.fields['new_branch_category'] = forms.ChoiceField(choices=CATEGORY_CHOICES)
def get_branches(self):
Modified: trunk/stats/views.py
==============================================================================
--- trunk/stats/views.py (original)
+++ trunk/stats/views.py Tue Mar 17 08:01:55 2009
@@ -68,15 +68,20 @@
Category.objects.get(pk=key).delete()
updated = True
continue
- release_has_changed = field.initial != form.cleaned_data[key].pk
+ release_has_changed = field.initial != getattr(form.cleaned_data[key], 'pk', None)
category_has_changed = form.fields[key+'_cat'].initial != form.cleaned_data[key+'_cat']
- if release_has_changed or category_has_changed:
- old_release = Release.objects.get(pk=field.initial)
- cat = Category.objects.get(pk=key)
- if release_has_changed:
- new_release = form.cleaned_data[key]
- cat.release = new_release
- cat.name = form.cleaned_data[key+'_cat']
+ if form.cleaned_data[key] and (release_has_changed or category_has_changed):
+ if field.initial:
+ old_release = Release.objects.get(pk=field.initial)
+ cat = Category.objects.get(pk=key)
+ if release_has_changed:
+ new_release = form.cleaned_data[key]
+ cat.release = new_release
+ cat.name = form.cleaned_data[key+'_cat']
+ else:
+ rel = Release.objects.get(pk=form.cleaned_data[key].pk)
+ branch = Branch.objects.get(module=mod, name=key)
+ cat = Category(release=rel, branch=branch, name=form.cleaned_data[key+'_cat'])
cat.save()
updated = True
# New branch (or new category)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]