[copr] master: Process the checkbox values, sqlite chews them, but postgres must get numbers (b52d3e8)

bkabrda at fedoraproject.org bkabrda at fedoraproject.org
Fri Jan 11 11:22:53 UTC 2013


Repository : http://git.fedorahosted.org/cgit/copr.git

On branch  : master

>---------------------------------------------------------------

commit b52d3e875300f405380fd3634bf1fac506169393
Author: Bohuslav Kabrda <bkabrda at redhat.com>
Date:   Fri Jan 11 12:22:40 2013 +0100

    Process the checkbox values, sqlite chews them, but postgres must get numbers


>---------------------------------------------------------------

 coprs_frontend/coprs/forms.py |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/coprs_frontend/coprs/forms.py b/coprs_frontend/coprs/forms.py
index d652844..bb8b7a8 100644
--- a/coprs_frontend/coprs/forms.py
+++ b/coprs_frontend/coprs/forms.py
@@ -71,6 +71,11 @@ class StringListFilter(object):
         regex = re.compile(r'\s+')
         return regex.sub(lambda x: '\n', result)
 
+class ValueToPermissionNumberFilter(object):
+    def __call__(self, value):
+        if value:
+            return helpers.PermissionEnum.num('request')
+        return helpers.PermissionEnum.num('nothing')
 
 class CoprForm(wtf.Form):
     # also use id here, to be able to find out whether user is updating a copr
@@ -125,8 +130,8 @@ class PermissionsApplierFormFactory(object):
             if permission.copr_admin != helpers.PermissionEnum.num('nothing'):
                 admin_default = True
 
-        setattr(F, 'copr_builder', wtf.BooleanField(default = builder_default))
-        setattr(F, 'copr_admin', wtf.BooleanField(default = admin_default))
+        setattr(F, 'copr_builder', wtf.BooleanField(default = builder_default, filters = [ValueToPermissionNumberFilter()]))
+        setattr(F, 'copr_admin', wtf.BooleanField(default = admin_default, filters = [ValueToPermissionNumberFilter()]))
 
         return F
 



More information about the copr-devel mailing list