[Erp5-report] r7865 - /spec/mandriva/2006.0/erp5-Formulator/

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Jun 19 17:25:01 CEST 2006


Author: kevin
Date: Mon Jun 19 17:24:59 2006
New Revision: 7865

URL: http://svn.erp5.org?rev=7865&view=rev
Log:
Commit erp5-Formulator-1.6.1-4mdk spec files and patches

Added:
    spec/mandriva/2006.0/erp5-Formulator/
    spec/mandriva/2006.0/erp5-Formulator/Formulator-1.6.1-editable-xml.patch   (with props)
    spec/mandriva/2006.0/erp5-Formulator/erp5-Formulator.spec   (with props)

Added: spec/mandriva/2006.0/erp5-Formulator/Formulator-1.6.1-editable-xml.patch
URL: http://svn.erp5.org/spec/mandriva/2006.0/erp5-Formulator/Formulator-1.6.1-editable-xml.patch?rev=7865&view=auto
==============================================================================
--- spec/mandriva/2006.0/erp5-Formulator/Formulator-1.6.1-editable-xml.patch (added)
+++ spec/mandriva/2006.0/erp5-Formulator/Formulator-1.6.1-editable-xml.patch Mon Jun 19 17:24:59 2006
@@ -1,0 +1,127 @@
+diff -ru erp5-Formulator-1.6.1/Formulator/Field.py erp5-Formulator-1.6.1.final/Formulator/Field.py
+--- erp5-Formulator-1.6.1/Formulator/Field.py 2004-01-21 17:06:17.000000000 +0100
++++ erp5-Formulator-1.6.1.final/Formulator/Field.py 2004-01-22 16:22:21.000000000 +0100
+@@ -177,12 +177,14 @@
+                 return getattr(self.validator, name)
+             else:
+                 return "Unknown error: %s" % name
+-    
++
+     security.declarePrivate('_render_helper')
+     def _render_helper(self, key, value, REQUEST):
+         value = self._get_default(key, value, REQUEST)
+         if self.get_value('hidden'):
+             return self.widget.render_hidden(self, key, value, REQUEST)
++        elif (not self.get_value('editable')):
++            return self.widget.render_view(self, value)
+         else:
+             return self.widget.render(self, key, value, REQUEST)
+ 
+diff -ru erp5-Formulator-1.6.1/Formulator/Form.py erp5-Formulator-1.6.1.final/Formulator/Form.py
+--- erp5-Formulator-1.6.1/Formulator/Form.py  2004-01-21 17:06:17.000000000 +0100
++++ erp5-Formulator-1.6.1.final/Formulator/Form.py  2004-01-22 16:22:21.000000000 +0100
+@@ -20,6 +20,8 @@
+ from FormToXML import formToXML
+ from XMLToForm import XMLToForm
+ 
++from ComputedAttribute import ComputedAttribute
++
+ # FIXME: manage_renameObject hack needs these imports
+ from Acquisition import aq_base
+ from App.Dialogs import MessageDialog
+@@ -469,16 +471,15 @@
+         """change form according to xml"""
+         XMLToForm(xml, self, override_encoding)
+ 
+-    security.declareProtected('Access contents information',
+-                              'management_page_charset')
+-    def management_page_charset(self):
+-        """manage_before_header calls this to determine management
+-        screen encodings.
+-        """
++    def _management_page_charset(self):
+         if not self.unicode_mode:
+             return self.stored_encoding
+         else:
+             return 'UTF-8'
++
++    security.declareProtected('Access contents information',
++                              'management_page_charset')
++    management_page_charset = ComputedAttribute(_management_page_charset)
+         
+     security.declareProtected('View', 'set_encoding_header')
+     def set_encoding_header(self):
+diff -ru erp5-Formulator-1.6.1/Formulator/FormToXML.py erp5-Formulator-1.6.1.final/Formulator/FormToXML.py
+--- erp5-Formulator-1.6.1/Formulator/FormToXML.py 2004-01-21 17:06:17.000000000 +0100
++++ erp5-Formulator-1.6.1.final/Formulator/FormToXML.py 2004-01-22 16:29:27.000000000 +0100
+@@ -41,9 +41,16 @@
+             for key, value in items:
+                 if value is None:
+                     continue
+-                if type(value) == type(1.1):
++                if value==True: # XXX Patch
++                    value = 1 # XXX Patch
++                if value==False: # XXX Patch
++                    value = 0 # XXX Patch
++                if callable(value): # XXX Patch
++                    write('          <%s type="method">%s</%s>\n' % # XXX Patch
++                        (key, escape(str(value.method_name)), key)) # XXX Patch
++                elif type(value) == type(1.1):
+                     write('          <%s type="float">%s</%s>\n' % (key, escape(str(value)), key))
+-                if type(value) == type(1):
++                elif type(value) == type(1):
+                     write('          <%s type="int">%s</%s>\n' % (key, escape(str(value)), key))
+                 elif type(value) == type([]):
+                     write('          <%s type="list">%s</%s>\n' % (key, escape(str(value)), key))
+diff -ru erp5-Formulator-1.6.1/Formulator/Validator.py erp5-Formulator-1.6.1.final/Formulator/Validator.py
+--- erp5-Formulator-1.6.1/Formulator/Validator.py 2004-01-21 17:06:17.000000000 +0100
++++ erp5-Formulator-1.6.1.final/Formulator/Validator.py 2004-01-22 16:22:21.000000000 +0100
+@@ -10,7 +10,7 @@
+ class ValidatorBase:
+     """Even more minimalistic base class for validators.
+     """
+-    property_names = ['enabled']
++    property_names = ['enabled','editable']
+ 
+     message_names = []
+ 
+@@ -24,10 +24,18 @@
+         "get a validation error as a field suddenly got enabled that "
+         "wasn't there when the form was drawn."),
+                                    default=1)
+-    
++
++    editable = fields.CheckBoxField('editable',
++                                   title="Editable",
++                                   description=(
++        "If a field is not editable, then the user can only see"
++        "the value. This allows to drawn very different forms depending"
++        "on use permissions."),
++                                   default=1)
++
+     def raise_error(self, error_key, field):
+         raise ValidationError(error_key, field)
+-    
++
+     def validate(self, field, key, REQUEST):    
+         pass # override in subclass
+ 
+diff -ru erp5-Formulator-1.6.1/Formulator/XMLToForm.py erp5-Formulator-1.6.1.final/Formulator/XMLToForm.py
+--- erp5-Formulator-1.6.1/Formulator/XMLToForm.py 2004-01-21 17:06:17.000000000 +0100
++++ erp5-Formulator-1.6.1.final/Formulator/XMLToForm.py 2004-01-22 16:22:21.000000000 +0100
+@@ -1,5 +1,6 @@
+ import XMLObjects
+ from Products.Formulator.TALESField import TALESMethod
++from Products.Formulator.MethodField import Method
+ 
+ def XMLToForm(s, form, override_encoding=None):
+     """Takes an xml string and changes formulator form accordingly.
+@@ -80,6 +81,8 @@
+                     field.values[name] = float(value.text)
+                 elif value.attributes.get('type') == 'int':
+                     field.values[name] = int(value.text)
++                elif value.attributes.get('type') == 'method': # XXX Patch
++                    field.values[name] = Method(value.text) # XXX Patch
+                 elif value.attributes.get('type') == 'list':
+                     # XXX bare eval here (this may be a security leak ?)
+                     field.values[name] = eval(

Propchange: spec/mandriva/2006.0/erp5-Formulator/Formulator-1.6.1-editable-xml.patch
------------------------------------------------------------------------------
    svn:executable = *

Added: spec/mandriva/2006.0/erp5-Formulator/erp5-Formulator.spec
URL: http://svn.erp5.org/spec/mandriva/2006.0/erp5-Formulator/erp5-Formulator.spec?rev=7865&view=auto
==============================================================================
--- spec/mandriva/2006.0/erp5-Formulator/erp5-Formulator.spec (added)
+++ spec/mandriva/2006.0/erp5-Formulator/erp5-Formulator.spec Mon Jun 19 17:24:59 2006
@@ -1,0 +1,112 @@
+%define product   Formulator
+%define version   1.6.1
+%define release   4
+
+%define zope_home %{_prefix}/lib/zope
+%define software_home %{zope_home}/lib/python
+
+Summary:   A patched version of the Formulator Zope product for ERP5
+Name:      erp5-%{product}
+Version:   %{version}
+Release:   %mkrel %{release}
+License:   GPL
+Group:     System/Servers
+Source0:   %{product}-%{version}.tar.bz2
+Patch0:    Formulator-1.6.1-editable-xml.patch
+URL:       http://www.erp5.org
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
+BuildArch: noarch
+Requires:  zope
+Provides:  Formulator
+
+
+%description
+Formulator is an extensible framework that eases the creation and validation of
+web forms.
+
+This version contain a patch from Nexedi that allow widgets in forms to be
+editable or not.
+
+%prep
+%setup -c
+%patch0 -p1
+
+%build
+# Not much, eh? :-)
+
+
+%install
+%{__rm} -rf %{buildroot}
+%{__mkdir_p} %{buildroot}/%{software_home}/Products
+%{__cp} -a * %{buildroot}%{software_home}/Products/
+
+
+%clean
+%{__rm} -rf %{buildroot}
+
+%post
+if [ "`%{_prefix}/bin/zopectl status`" != "daemon manager not running" ] ; then
+  service zope restart
+fi
+
+%postun
+if [ -f "%{_prefix}/bin/zopectl" ] && [ "`%{_prefix}/bin/zopectl status`" != "daemon manager not running" ] ; then
+  service zope restart
+fi
+
+%files
+%defattr(0644, root, root, 0755)
+%{software_home}/Products/*
+
+
+#----------------------------------------------------------------------
+%changelog
+* Wed Jan 5 2006 Kevin Deldycke <kevin at nexedi.com> 1.6.1-4mdk
+  - Rewrite spec file based on the one written by Gaetan Lehmann for Mandriva 2006
+
+* Thu Jan 22 2004 Sebastien Robin <seb at nexedi.com> 1.6.1-3mdk
+- small error on the last patch
+
+* Thu Jan 22 2004 Sebastien Robin <seb at nexedi.com> 1.6.1-2mdk
+- updated the patch so that the xml is working again
+
+* Wed Jan 21 2004 Sebastien Robin <seb at nexedi.com> 1.6.1-1mdk
+- Updated to version 1.6.1
+- added a small patch in order to allow to display field
+- read only
+
+* Wed Sep 12 2003 Sebastien Robin <seb at nexedi.com> 1.4.2-1mdk
+- Updated to version 1.4.2
+
+* Wed Sep 05 2003 Sebastien Robin <seb at nexedi.com> 1.3.1-9mdk
+- Remove old variables 'ZOPE_NAME' and replace it with 'name'
+
+* Wed Sep 05 2003 Sebastien Robin <seb at nexedi.com> 1.3.1-8mdk
+- Update spec in order to follows Mandrake Rules
+
+* Thu Jul 24 2003 Sebastien Robin <seb at nexedi.com> 1.3.1-7nxd
+- New patch made by me in order allow float with commas
+
+* Wed Jun 11 2003 Sebastien Robin <seb at nexedi.com> 1.3.1-6nxd
+- New patch made by me in order to get an xml ordered
+
+* Thu Jun 3 2003 Sebastien Robin <seb at nexedi.com> 1.3.1-5nxd
+- New patch again in order to apply a script on a line of a listbox (with the cell value)
+
+* Thu Jun 3 2003 Sebastien Robin <seb at nexedi.com> 1.3.1-4nxd
+- New patch in order to apply a script on a line of a listbox (with the cell value)
+
+* Tue May 13 2003 Sebastien Robin <seb at nexedi.com> 1.3.1-3nxd
+- New patch in order to improve Formulator with XML
+
+* Wed Mar 26 2003 Sebastien Robin <seb at nexedi.com> 1.3.1-1nxd
+- Update to release 1.3.1 of the formulator
+- Added patch made by Jean-Paul Smets <jp at nexedi.com> wich allows
+to use a list of keys.
+
+* Mon Nov 4 2002 Sebastien Robin <seb at nexedi.com> 1.2.0-2nxd
+- Added patch in order to dynamically change the name
+
+* Mon Nov 4 2002 Jean-Paul Smets <jp at nexedi.com> 1.2.0-1nxd
+- Initial release
+

Propchange: spec/mandriva/2006.0/erp5-Formulator/erp5-Formulator.spec
------------------------------------------------------------------------------
    svn:executable = *




More information about the Erp5-report mailing list