[Erp5-report] r41483 ivan - in /erp5/trunk/bt5/erp5_knowledge_pad: SkinTemplateItem/portal_...

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Dec 16 08:45:54 CET 2010


Author: ivan
Date: Thu Dec 16 08:45:53 2010
New Revision: 41483

URL: http://svn.erp5.org?rev=41483&view=rev
Log:
If  an asynchronous gadget is minimized we do not need to load its content from server (needless requests). Still we will load it when user click maximize button.

Modified:
    erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgePad_generateAjaxCall.xml
    erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/erp5_knowledge_box.js.xml
    erp5/trunk/bt5/erp5_knowledge_pad/bt/revision

Modified: erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgePad_generateAjaxCall.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgePad_generateAjaxCall.xml?rev=41483&r1=41482&r2=41483&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgePad_generateAjaxCall.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgePad_generateAjaxCall.xml [utf8] Thu Dec 16 08:45:53 2010
@@ -80,11 +80,14 @@ if editable_mode in (\'True\', True, 1):
   editable_mode = 1\n
 else:\n
   editable_mode = 0\n
+js_update_code = """updater(\'%s\', \'%s\', \'%s\', \'%s\', \'%s\', %s);""" %(url, box_relative_url, dom_id, \n
+                                                                 current_web_section_url, editable_mode, encodeInJson(params))\n
+if box.getValidationState()==\'invisible\':\n
+  # we can generate \n
+  s = """invisible_gadgets["%s"]="%s";""" %(dom_id, js_update_code)\n
+else:\n
+  s = js_update_code\n
 \n
-s = """\n
-  updater(\'%s\', \'%s\', \'%s\', \'%s\', \'%s\', %s);\n
-  """ %(url, box_relative_url, dom_id, \n
-        current_web_section_url, editable_mode, encodeInJson(params))\n
 return s\n
 </string> </value>
         </item>
@@ -139,6 +142,7 @@ return s\n
                             <string>box_relative_url</string>
                             <string>editable_mode</string>
                             <string>True</string>
+                            <string>js_update_code</string>
                             <string>s</string>
                           </tuple>
                         </value>

Modified: erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/erp5_knowledge_box.js.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/erp5_knowledge_box.js.xml?rev=41483&r1=41482&r2=41483&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/erp5_knowledge_box.js.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/erp5_knowledge_box.js.xml [utf8] Thu Dec 16 08:45:53 2010
@@ -12,7 +12,7 @@
         </item>
         <item>
             <key> <string>_EtagSupport__etag</string> </key>
-            <value> <string>ts92251348.76</string> </value>
+            <value> <string>ts92483701.94</string> </value>
         </item>
         <item>
             <key> <string>__name__</string> </key>
@@ -36,6 +36,9 @@ var active_knowledge_pad_title_dom_id = 
 // enable or disable integration with server\n
 var is_knowledge_template_used = 0;\n
 \n
+// dictionary of invisible gadgets\n
+var invisible_gadgets={};\n
+\n
 function createCustomKnowledgePadOnServer(){\n
   url = "ERP5Site_createDefaultKnowledgePadListForUser";\n
   d = MochiKit.Async.doSimpleXMLHttpRequest(url, \n
@@ -484,7 +487,15 @@ function initialize(){\n
          if (is_knowledge_template_used){\n
            showCreateDefaultKnowledgePadWarningMessage();}\n
          else{\n
+           // togle DOM element (locally)\n
            toggle(minimize_wrapper);\n
+           js_dom_id = box.id + \'_content\';\n
+           js_code = invisible_gadgets[js_dom_id];\n
+           if (js_code!=undefined){\n
+             eval(js_code);\n
+             // gadget is now visible, i.e. no need to query server just toggle locally dom\n
+             delete invisible_gadgets[js_dom_id];}\n
+           // update server \n
            doSimpleXMLHttpRequest("KnowledgeBox_toggleVisibility", \n
                                   {box_relative_url: box.id});}});\n
        }\n
@@ -521,7 +532,7 @@ MochiKit.DOM.addLoadEvent(initialize);\n
         </item>
         <item>
             <key> <string>size</string> </key>
-            <value> <int>19554</int> </value>
+            <value> <int>19989</int> </value>
         </item>
         <item>
             <key> <string>title</string> </key>

Modified: erp5/trunk/bt5/erp5_knowledge_pad/bt/revision
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_knowledge_pad/bt/revision?rev=41483&r1=41482&r2=41483&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_knowledge_pad/bt/revision [utf8] (original)
+++ erp5/trunk/bt5/erp5_knowledge_pad/bt/revision [utf8] Thu Dec 16 08:45:53 2010
@@ -1 +1 @@
-662
\ No newline at end of file
+663
\ No newline at end of file



More information about the Erp5-report mailing list