r13523 - in Products.BrFieldsAndWidgets/trunk: Products/BrFieldsAndWidgets Products/BrFieldsAndWidgets/content Products/BrFieldsAndWidgets/profiles/default Products/BrFieldsAndWidgets/skins/BrF_templates docs

"Gustavo Alves Lepri" <[email protected]> Mon, 21 Mar 2011 19:38:40 +0000
Newsgroups gmane.comp.web.zope.plone.archetypes.cvs
Message-ID <[email protected]>
Author: lepri
Date: Mon Mar 21 19:38:40 2011
New Revision: 13523

Modified:
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/__init__.py
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/config.py
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/content/BrFieldsAndWidgetsDemo.py
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/interfaces.py
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/profiles/default/metadata.xml
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCEP.pt
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCNPJ.pt
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCPF.pt
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrPhone.pt
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrTime.pt
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/validators.py
   Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/version.txt
   Products.BrFieldsAndWidgets/trunk/docs/HISTORY.txt
Log:
Compatibility with Plone 4

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/__init__.py
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/__init__.py	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/__init__.py	Mon Mar 21 19:38:40 2011
@@ -1,3 +1,5 @@
+# -*- coding: utf-8 -*-
+
 from Products.CMFCore import utils
 from Products.CMFCore.DirectoryView import registerDirectory
 from Products.Archetypes.public import process_types, listTypes
@@ -14,13 +16,12 @@
 from Products.BrFieldsAndWidgets import validators
 from Products.BrFieldsAndWidgets.content import BrFieldsAndWidgetsDemo
 
-
 def initialize(context):
     
     content_types, constructors, ftis = process_types(
         listTypes(PROJECTNAME),
         PROJECTNAME)
-        utils.ContentInit(
+    utils.ContentInit(
             PROJECTNAME + ' Content',
             content_types      = content_types,
             permission         = ADD_CONTENT_PERMISSION,

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/config.py
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/config.py	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/config.py	Mon Mar 21 19:38:40 2011
@@ -8,3 +8,11 @@
     from Products.CMFCore.CMFCorePermissions import AddPortalContent
 
 ADD_CONTENT_PERMISSION = AddPortalContent
+
+try: 
+    # Plone 4 and higher 
+    import plone.app.upgrade 
+    USE_BBB_VALIDATORS = False 
+except ImportError: 
+    # BBB Plone 3 
+    USE_BBB_VALIDATORS = True

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/content/BrFieldsAndWidgetsDemo.py
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/content/BrFieldsAndWidgetsDemo.py	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/content/BrFieldsAndWidgetsDemo.py	Mon Mar 21 19:38:40 2011
@@ -3,7 +3,7 @@
 from Products.Archetypes.public import *
 
 from Products.BrFieldsAndWidgets import MessageFactory as _
-
+from Products.BrFieldsAndWidgets.config import PROJECTNAME
 from AccessControl import ClassSecurityInfo
 
 from Products.BrFieldsAndWidgets.content.BrFieldsAndWidgets import *
@@ -37,4 +37,4 @@
     security = ClassSecurityInfo()
 
 
-registerType(BrFieldsAndWidgetsDemo)
+registerType(BrFieldsAndWidgetsDemo,PROJECTNAME)

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/interfaces.py
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/interfaces.py	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/interfaces.py	Mon Mar 21 19:38:40 2011
@@ -5,5 +5,5 @@
 
 
 # Zope imports
-from Interface import Interface
+#from Interface import Interface
 

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/profiles/default/metadata.xml
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/profiles/default/metadata.xml	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/profiles/default/metadata.xml	Mon Mar 21 19:38:40 2011
@@ -1,4 +1,4 @@
 <?xml version="1.0" ?>
 <metadata>
- <version>1.0.1</version>
+ <version>1.0.2</version>
 </metadata>
\ No newline at end of file

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCEP.pt
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCEP.pt	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCEP.pt	Mon Mar 21 19:38:40 2011
@@ -26,10 +26,8 @@
 
             <metal:fill fill-slot="widget_body" tal:define="value python:value or '';">
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                        tabindex tabindex/next;
                                        value python:value[:5]" type="text" size="5" maxlength="5" onchange="autoTab(this,0);" onKeyup="autoTab(this,0);">-
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[5:]" type="text" size="3" maxlength="3"  onchange="autoTab(this,1);" onKeyup="autoTab(this,1);">
                 <input type="hidden" tal:attributes="name fieldName;
                                        value value" type="text" maxlength="8">

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCNPJ.pt
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCNPJ.pt	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCNPJ.pt	Mon Mar 21 19:38:40 2011
@@ -24,27 +24,22 @@
 
             <metal:fill fill-slot="widget_body" tal:define="value python:value or ''">
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[:2]" type="text" size="2" maxlength="2"
                        onchange="autoTab(this,0);"
                        onKeyup="autoTab(this,0);">.
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[2:5]" type="text" size="3" maxlength="3"
                        onchange="autoTab(this,1);"
                        onKeyup="autoTab(this,1);">.
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[5:8]" type="text" size="3" maxlength="3"
                        onchange="autoTab(this,2);"
                        onKeyup="autoTab(this,2);">/
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[8:12]" type="text" size="4" maxlength="4"
                        onchange="autoTab(this,3);"
                        onKeyup="autoTab(this,3);">-
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[12:]" type="text" size="2" maxlength="2"
                        onchange="autoTab(this,4);"
                        onKeyup="autoTab(this,4);">

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCPF.pt
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCPF.pt	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrCPF.pt	Mon Mar 21 19:38:40 2011
@@ -25,22 +25,18 @@
 
             <metal:fill fill-slot="widget_body" tal:define="value python:value or ''">
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[:3]" type="text" size="3" maxlength="3"
                          onchange="autoTab(this,0);" 
                         onKeyup="autoTab(this,0);">.
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[3:6]" type="text" size="3" maxlength="3"
                          onchange="autoTab(this,1);" 
                         onKeyup="autoTab(this,1);">.
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[6:9]" type="text" size="3" maxlength="3"
                          onchange="autoTab(this,2);" 
                         onKeyup="autoTab(this,2);">-
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:value[9:]" type="text" size="2" maxlength="2"
                          onchange="autoTab(this,3);" 
                         onKeyup="autoTab(this,3);">

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrPhone.pt
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrPhone.pt	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrPhone.pt	Mon Mar 21 19:38:40 2011
@@ -28,8 +28,7 @@
                                     value python:value or '';
                                     value python:((len(value)>2) and value) or ''">
                     (<select tal:attributes="name python:'a%s' % fieldName;
-                                            id python:'a%s' % fieldName;
-                                            tabindex tabindex/next;"
+                                            id python:'a%s' % fieldName;"
                              tal:define="vocab python:here.lstDDD();
                                             value_ddd python:here.phoneFormat(value,'ddd');" onChange="updatePhone(this);">
 
@@ -42,7 +41,6 @@
 
                     </select>)
                 <input tal:attributes="name python:'a%s' % fieldName;
-                                       tabindex tabindex/next;
                                        value python:here.phoneFormat(value,'phone')" type="text" size="8" maxlength="8" onKeyUp="updatePhone(this);" onchange="updatePhone(this);">
                 
                 <input type="hidden" tal:attributes="name fieldName;

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrTime.pt
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrTime.pt	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/skins/BrF_templates/BrTime.pt	Mon Mar 21 19:38:40 2011
@@ -25,7 +25,6 @@
                         tal:define="value python:value or ''">
                     <select tal:attributes="name python:'a%s' % fieldName;
                                             id python:'a%s' % fieldName;
-                                            tabindex tabindex/next;
                                             value python:value[:2];"
                              tal:define="vocab python:['%02d' % hora for hora in range(0,24)];
                                          value_combo python:value[:2];" onChange="updateTime(this);">
@@ -39,7 +38,6 @@
                     </select>&nbsp;h&nbsp;
                     <select tal:attributes="name python:'a%s' % fieldName;
                                             id python:'a%s' % fieldName;
-                                            tabindex tabindex/next;
                                             value python:value[2:];"
                              tal:define="vocab python:['%02d' % minuto for minuto in range(0,60,5)];
                                          value_combo python:value[2:];" onChange="updateTime(this);" onChange="updateTime(this);">min

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/validators.py
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/validators.py	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/validators.py	Mon Mar 21 19:38:40 2011
@@ -1,12 +1,17 @@
+# -*- coding: utf-8 -*-
+
 __author__  = '''Simples Consultoria'''
 __docformat__ = 'plaintext'
 
+from zope.interface import implements
+
 from Products.validation.interfaces import ivalidator
 
 from Products.validation.config import validation
 from Products.validation.interfaces.IValidator import IValidator
 
 from Products.BrFieldsAndWidgets import MessageFactory as _
+from Products.BrFieldsAndWidgets.config import USE_BBB_VALIDATORS
 
 import re
 
@@ -18,7 +23,10 @@
     Baseado em http://www.pythonbrasil.com.br/moin.cgi/VerificadorDeCPF .
     """
     
-    __implements__ = IValidator
+    if USE_BBB_VALIDATORS:
+        __implements__ = (ivalidator,)
+    else:
+        implements(IValidator)
     
     def __init__(self, name, title='', description=''):
         self.name = name
@@ -63,7 +71,10 @@
     Baseado em http://www.pythonbrasil.com.br/moin.cgi/VerificadorDeCnpj
     """
     
-    __implements__ = IValidator
+    if USE_BBB_VALIDATORS:
+        __implements__ = (ivalidator,)
+    else:
+        implements(IValidator)
     
     def __init__(self, name, title='', description=''):
         self.name = name
@@ -111,7 +122,10 @@
     pode ser qualquer digito entre 0 e 9.
     """
     
-    __implements__ = IValidator
+    if USE_BBB_VALIDATORS:
+        __implements__ = (ivalidator,)
+    else:
+        implements(IValidator)
     
     def __init__(self, name, title='', description=''):
         self.name = name
@@ -137,7 +151,10 @@
         0n00XXXXXX (n sendo 3 ou 8)
     """
     
-    __implements__ = IValidator
+    if USE_BBB_VALIDATORS:
+        __implements__ = (ivalidator,)
+    else:
+        implements(IValidator)
     
     def __init__(self, name, title='', description=''):
         self.name = name

Modified: Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/version.txt
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/version.txt	(original)
+++ Products.BrFieldsAndWidgets/trunk/Products/BrFieldsAndWidgets/version.txt	Mon Mar 21 19:38:40 2011
@@ -1 +1 @@
-1.0.1
\ No newline at end of file
+1.0.2
\ No newline at end of file

Modified: Products.BrFieldsAndWidgets/trunk/docs/HISTORY.txt
==============================================================================
--- Products.BrFieldsAndWidgets/trunk/docs/HISTORY.txt	(original)
+++ Products.BrFieldsAndWidgets/trunk/docs/HISTORY.txt	Mon Mar 21 19:38:40 2011
@@ -5,6 +5,7 @@
 ------------------
     
     * Fixes DDD vocabulary [erico_andrei]
+    * Compatibility with Plone 4 [lepri]
 
 1.0.1 (2009-06-02)
 ------------------

------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d