[Erp5-report] r30505 - in /erp5/trunk/bt5/erp5_administration: ExtensionTemplateItem/ SkinT...

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Nov 11 14:06:23 CET 2009


Author: ivan
Date: Wed Nov 11 14:06:22 2009
New Revision: 30505

URL: http://svn.erp5.org?rev=30505&view=rev
Log:
Add alarms and support check script that will periodically (if enabled) check
Localizers's MessageCatalog instances ratio of not translated messages.
Add script that can delete not translated ones.

Added:
    erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/Alarm_checkLocalizer.xml
    erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_deleteNotTranslatedMessageDict.xml
    erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getMessageDict.xml
    erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getNotTranslatedMessageDict.xml
Modified:
    erp5/trunk/bt5/erp5_administration/ExtensionTemplateItem/ERP5Administration.py
    erp5/trunk/bt5/erp5_administration/bt/revision

Modified: erp5/trunk/bt5/erp5_administration/ExtensionTemplateItem/ERP5Administration.py
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_administration/ExtensionTemplateItem/ERP5Administration.py?rev=30505&r1=30504&r2=30505&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_administration/ExtensionTemplateItem/ERP5Administration.py [utf8] (original)
+++ erp5/trunk/bt5/erp5_administration/ExtensionTemplateItem/ERP5Administration.py [utf8] Wed Nov 11 14:06:22 2009
@@ -59,3 +59,34 @@
     error_list.append(message)
     LOG('checkFolderHandler', INFO, message)
   return error_list
+
+
+def MessageCatalog_getMessageDict(self):
+  """
+    Get Localizer's MessageCatalog instance messages.
+  """
+  d = {}
+  for k,v in self._messages.iteritems():
+    d[k] = v
+  return d
+
+def MessageCatalog_getNotTranslatedMessageDict(self):
+  """
+    Get Localizer's MessageCatalog instance messages that are NOT translated.
+  """
+  not_translated_message_dict = {}
+  messages = MessageCatalog_getMessageDict(self)
+  for k,v in messages.iteritems():
+    if not len(v):
+      not_translated_message_dict[k] = v
+  return not_translated_message_dict
+
+def MessageCatalog_deleteNotTranslatedMessageDict(self):
+  """
+    Delete from  Localizer's MessageCatalog instance messages that are NOT translated.
+  """
+  not_translated_message_dict = MessageCatalog_getNotTranslatedMessageDict(self)
+  for k,v in not_translated_message_dict.iteritems():
+    # delete message from dict
+    del(self._messages[k])
+  return len(not_translated_message_dict.keys())

Added: erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/Alarm_checkLocalizer.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/Alarm_checkLocalizer.xml?rev=30505&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/Alarm_checkLocalizer.xml (added)
+++ erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/Alarm_checkLocalizer.xml [utf8] Wed Nov 11 14:06:22 2009
@@ -1,0 +1,159 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_body</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+"""\n
+  Check that number of untranslated messages for a Localizer MessageCatalog instance\n
+  doesn\'t exceed a fixed alarm_warn_ratio.\n
+"""\n
+alarm_warn_ratio = 0.25\n
+\n
+localizer = context.Localizer\n
+for message_catalog in localizer.objectValues(\'MessageCatalog\'):\n
+  all = len(message_catalog.MessageCatalog_getMessageDict().keys())\n
+  not_translated = len(message_catalog.MessageCatalog_getNotTranslatedMessageDict().keys())\n
+  enable_warning = not_translated > all*alarm_warn_ratio\n
+  if enable_warning:\n
+    # we have more than allowed number of untranslated messages,\n
+    # fire alarm\n
+    context.log("Too many untranslated Localizer messages for %s %s/%s" %(message_catalog, all, not_translated))\n
+    return True\n
+\n
+return False\n
+
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>_code</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string>activity_count=1, bundle_object_count=100, **kw</string> </value>
+        </item>
+        <item>
+            <key> <string>errors</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_code</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="FuncCode" module="Shared.DC.Scripts.Signature"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>co_argcount</string> </key>
+                        <value> <int>2</int> </value>
+                    </item>
+                    <item>
+                        <key> <string>co_varnames</string> </key>
+                        <value>
+                          <tuple>
+                            <string>activity_count</string>
+                            <string>bundle_object_count</string>
+                            <string>kw</string>
+                            <string>alarm_warn_ratio</string>
+                            <string>_getattr_</string>
+                            <string>context</string>
+                            <string>localizer</string>
+                            <string>_getiter_</string>
+                            <string>message_catalog</string>
+                            <string>len</string>
+                            <string>all</string>
+                            <string>not_translated</string>
+                            <string>enable_warning</string>
+                            <string>True</string>
+                            <string>False</string>
+                          </tuple>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_defaults</string> </key>
+            <value>
+              <tuple>
+                <int>1</int>
+                <int>100</int>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Alarm_checkLocalizer</string> </value>
+        </item>
+        <item>
+            <key> <string>warnings</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>

Added: erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_deleteNotTranslatedMessageDict.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_deleteNotTranslatedMessageDict.xml?rev=30505&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_deleteNotTranslatedMessageDict.xml (added)
+++ erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_deleteNotTranslatedMessageDict.xml [utf8] Wed Nov 11 14:06:22 2009
@@ -1,0 +1,31 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="ExternalMethod" module="Products.ExternalMethod.ExternalMethod"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_function</string> </key>
+            <value> <string>MessageCatalog_deleteNotTranslatedMessageDict</string> </value>
+        </item>
+        <item>
+            <key> <string>_module</string> </key>
+            <value> <string>ERP5Administration</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>MessageCatalog_deleteNotTranslatedMessageDict</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Delete from  Localizer\'s MessageCatalog instance messages that are NOT translated.</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>

Added: erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getMessageDict.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getMessageDict.xml?rev=30505&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getMessageDict.xml (added)
+++ erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getMessageDict.xml [utf8] Wed Nov 11 14:06:22 2009
@@ -1,0 +1,31 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="ExternalMethod" module="Products.ExternalMethod.ExternalMethod"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_function</string> </key>
+            <value> <string>MessageCatalog_getMessageDict</string> </value>
+        </item>
+        <item>
+            <key> <string>_module</string> </key>
+            <value> <string>ERP5Administration</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>MessageCatalog_getMessageDict</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>

Added: erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getNotTranslatedMessageDict.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getNotTranslatedMessageDict.xml?rev=30505&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getNotTranslatedMessageDict.xml (added)
+++ erp5/trunk/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/MessageCatalog_getNotTranslatedMessageDict.xml [utf8] Wed Nov 11 14:06:22 2009
@@ -1,0 +1,31 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="ExternalMethod" module="Products.ExternalMethod.ExternalMethod"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_function</string> </key>
+            <value> <string>MessageCatalog_getNotTranslatedMessageDict</string> </value>
+        </item>
+        <item>
+            <key> <string>_module</string> </key>
+            <value> <string>ERP5Administration</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>MessageCatalog_getNotTranslatedMessageDict</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>

Modified: erp5/trunk/bt5/erp5_administration/bt/revision
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_administration/bt/revision?rev=30505&r1=30504&r2=30505&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_administration/bt/revision [utf8] (original)
+++ erp5/trunk/bt5/erp5_administration/bt/revision [utf8] Wed Nov 11 14:06:22 2009
@@ -1,1 +1,1 @@
-71
+72




More information about the Erp5-report mailing list