diff --git a/bt5/erp5_knowledge_pad/ActionTemplateItem/portal_types/Gadget/preferences.xml b/bt5/erp5_knowledge_pad/ActionTemplateItem/portal_types/Gadget/preferences.xml
index e74461ae80ef78bdd52a7cf4ebd8d0920ada4c19..4d2c10b760dc91a72222ff840a6629dfb7232be3 100644
--- a/bt5/erp5_knowledge_pad/ActionTemplateItem/portal_types/Gadget/preferences.xml
+++ b/bt5/erp5_knowledge_pad/ActionTemplateItem/portal_types/Gadget/preferences.xml
@@ -35,7 +35,9 @@
         </item>
         <item>
             <key> <string>description</string> </key>
-            <value> <string></string> </value>
+            <value>
+              <none/>
+            </value>
         </item>
         <item>
             <key> <string>icon</string> </key>
@@ -53,6 +55,10 @@
               </tuple>
             </value>
         </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Action Information</string> </value>
+        </item>
         <item>
             <key> <string>priority</string> </key>
             <value> <float>2.0</float> </value>
@@ -79,7 +85,7 @@
       <dictionary>
         <item>
             <key> <string>text</string> </key>
-            <value> <string>python: \'%s/%s?is_gadget_mode=0\' %(object.absolute_url(), getattr(object, \'edit_form_id\'))</string> </value>
+            <value> <string>python: \'%s/%s?is_gadget_mode=0\' %(object.absolute_url(), object.getEditFormId())</string> </value>
         </item>
       </dictionary>
     </pickle>
@@ -95,7 +101,7 @@
       <dictionary>
         <item>
             <key> <string>text</string> </key>
-            <value> <string>python: getattr(object, \'edit_form_id\', None) is not None</string> </value>
+            <value> <string>python: object.getEditFormId() is not None</string> </value>
         </item>
       </dictionary>
     </pickle>
diff --git a/bt5/erp5_knowledge_pad/ActionTemplateItem/portal_types/Gadget/view.xml b/bt5/erp5_knowledge_pad/ActionTemplateItem/portal_types/Gadget/view.xml
index 1cf2c6f76eddde6b3dedb34b306815d20a3720c8..304df9b548e7e67acbe7376e884c70e9dc5fa63e 100644
--- a/bt5/erp5_knowledge_pad/ActionTemplateItem/portal_types/Gadget/view.xml
+++ b/bt5/erp5_knowledge_pad/ActionTemplateItem/portal_types/Gadget/view.xml
@@ -33,7 +33,9 @@
         </item>
         <item>
             <key> <string>description</string> </key>
-            <value> <string></string> </value>
+            <value>
+              <none/>
+            </value>
         </item>
         <item>
             <key> <string>icon</string> </key>
@@ -51,6 +53,10 @@
               </tuple>
             </value>
         </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Action Information</string> </value>
+        </item>
         <item>
             <key> <string>priority</string> </key>
             <value> <float>1.0</float> </value>
diff --git a/bt5/erp5_knowledge_pad/CategoryTemplateItem/portal_categories/gadget_render_type.xml b/bt5/erp5_knowledge_pad/CategoryTemplateItem/portal_categories/gadget_render_type.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b5ddd99f29480337447b18d2745b8891d88b107c
--- /dev/null
+++ b/bt5/erp5_knowledge_pad/CategoryTemplateItem/portal_categories/gadget_render_type.xml
@@ -0,0 +1,132 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="BaseCategory" module="Products.ERP5Type.Document.BaseCategory"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_Add_portal_content_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Add_portal_folders_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Copy_or_Move_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Delete_objects_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Modify_portal_content_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignee</string>
+                <string>Assignor</string>
+                <string>Manager</string>
+                <string>Owner</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_count</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>_mt_index</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>_tree</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>gadget_render_type</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>gadget_render_type</string> </value>
+        </item>
+        <item>
+            <key> <string>last_id</string> </key>
+            <value> <string>2</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Base Category</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Gadget Render Type</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="Length" module="BTrees.Length"/>
+    </pickle>
+    <pickle> <int>0</int> </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="OOBTree" module="BTrees._OOBTree"/>
+    </pickle>
+    <pickle>
+      <none/>
+    </pickle>
+  </record>
+  <record id="4" aka="AAAAAAAAAAQ=">
+    <pickle>
+      <global name="OOBTree" module="BTrees._OOBTree"/>
+    </pickle>
+    <pickle>
+      <none/>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_categories/gadget_render_type/asynchronous.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_categories/gadget_render_type/asynchronous.xml
new file mode 100644
index 0000000000000000000000000000000000000000..749c6cd1ce15fbedeb9d908859f886841342ae14
--- /dev/null
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_categories/gadget_render_type/asynchronous.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="Category" module="Products.ERP5Type.Document.Category"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_Add_portal_content_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Add_portal_folders_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Copy_or_Move_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Delete_objects_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Modify_portal_content_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignee</string>
+                <string>Assignor</string>
+                <string>Manager</string>
+                <string>Owner</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>gadget_render_type/gadget_render_type</string>
+                <string>gadget_render_type/synchronous</string>
+                <string>gadget_render_type/synchronous</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>asynchronous</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Category</string> </value>
+        </item>
+        <item>
+            <key> <string>short_title</string> </key>
+            <value> <string>Asynchronous</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Asynchronous</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_categories/gadget_render_type/synchronous.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_categories/gadget_render_type/synchronous.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6aa33c0b30653be1ed02ddbc56ceddc8a56e5fa1
--- /dev/null
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_categories/gadget_render_type/synchronous.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="Category" module="Products.ERP5Type.Document.Category"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_Add_portal_content_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Add_portal_folders_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Copy_or_Move_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Delete_objects_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignor</string>
+                <string>Manager</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>_Modify_portal_content_Permission</string> </key>
+            <value>
+              <tuple>
+                <string>Assignee</string>
+                <string>Assignor</string>
+                <string>Manager</string>
+                <string>Owner</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>gadget_render_type/gadget_render_type</string>
+                <string>gadget_render_type/synchronous</string>
+                <string>gadget_render_type/synchronous</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>synchronous</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Category</string> </value>
+        </item>
+        <item>
+            <key> <string>short_title</string> </key>
+            <value> <string>Synchronous</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Synchronous</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/clock.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/clock.xml
index e52d3b4291bec7ad5d0eee34b34b812f71b672e3..41fba6fb1a54d9a70210ef87e7f89e1b1f7dc2d2 100644
--- a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/clock.xml
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/clock.xml
@@ -3,7 +3,7 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="Folder" module="Products.ERP5Type.Document.Folder"/>
+        <global name="Gadget" module="Products.ERP5.Document.Gadget"/>
         <tuple/>
       </tuple>
     </pickle>
@@ -13,30 +13,16 @@
             <key> <string>_Access_contents_information_Permission</string> </key>
             <value>
               <list>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
+                <string>Anonymous</string>
               </list>
             </value>
         </item>
-        <item>
-            <key> <string>_Modify_portal_content_Permission</string> </key>
-            <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
-            </value>
-        </item>
         <item>
             <key> <string>_View_Permission</string> </key>
             <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
+              <list>
+                <string>Anonymous</string>
+              </list>
             </value>
         </item>
         <item>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_advertisement.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_advertisement.xml
index 552211dea8c57ce8b9fc221b7e9247fa9b68d399..c379cc76757395b34068d3859806d8725980b7c1 100644
--- a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_advertisement.xml
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_advertisement.xml
@@ -3,7 +3,7 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="Folder" module="Products.ERP5Type.Document.Folder"/>
+        <global name="Gadget" module="Products.ERP5.Document.Gadget"/>
         <tuple/>
       </tuple>
     </pickle>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_documentation.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_documentation.xml
index bfca6a661f2348db0f2f92b60ee2a9006c19b620..7f390f0c55d031f889d7251c202bb8449ce67786 100644
--- a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_documentation.xml
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_documentation.xml
@@ -3,7 +3,7 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="Folder" module="Products.ERP5Type.Document.Folder"/>
+        <global name="Gadget" module="Products.ERP5.Document.Gadget"/>
         <tuple/>
       </tuple>
     </pickle>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_persons.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_persons.xml
index 9ca9450b9ca07ae7f8d82adb3794f13e706e00f9..4b6638a8249a5c624559aa5c24c2adc95e2a5fdd 100644
--- a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_persons.xml
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_persons.xml
@@ -3,7 +3,7 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="Folder" module="Products.ERP5Type.Document.Folder"/>
+        <global name="Gadget" module="Products.ERP5.Document.Gadget"/>
         <tuple/>
       </tuple>
     </pickle>
@@ -13,30 +13,16 @@
             <key> <string>_Access_contents_information_Permission</string> </key>
             <value>
               <list>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
+                <string>Anonymous</string>
               </list>
             </value>
         </item>
-        <item>
-            <key> <string>_Modify_portal_content_Permission</string> </key>
-            <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
-            </value>
-        </item>
         <item>
             <key> <string>_View_Permission</string> </key>
             <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
+              <list>
+                <string>Anonymous</string>
+              </list>
             </value>
         </item>
         <item>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_rss.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_rss.xml
index 5845b8d419a924c091aa84b2e03ac5ea753dcb2c..83f85ddaa7f3084fd6987735d9448ec2dca6526a 100644
--- a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_rss.xml
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_rss.xml
@@ -3,7 +3,7 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="Folder" module="Products.ERP5Type.Document.Folder"/>
+        <global name="Gadget" module="Products.ERP5.Document.Gadget"/>
         <tuple/>
       </tuple>
     </pickle>
@@ -13,30 +13,16 @@
             <key> <string>_Access_contents_information_Permission</string> </key>
             <value>
               <list>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
+                <string>Anonymous</string>
               </list>
             </value>
         </item>
-        <item>
-            <key> <string>_Modify_portal_content_Permission</string> </key>
-            <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
-            </value>
-        </item>
         <item>
             <key> <string>_View_Permission</string> </key>
             <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
+              <list>
+                <string>Anonymous</string>
+              </list>
             </value>
         </item>
         <item>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_worklists.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_worklists.xml
index df04b13afb403ae9ce45aa4cc3905931f03281ea..83ded260e57e2809643bd4ed18ab1853e22c68ed 100644
--- a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_worklists.xml
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/erp5_worklists.xml
@@ -3,7 +3,7 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="Folder" module="Products.ERP5Type.Document.Folder"/>
+        <global name="Gadget" module="Products.ERP5.Document.Gadget"/>
         <tuple/>
       </tuple>
     </pickle>
@@ -13,30 +13,16 @@
             <key> <string>_Access_contents_information_Permission</string> </key>
             <value>
               <list>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
+                <string>Anonymous</string>
               </list>
             </value>
         </item>
-        <item>
-            <key> <string>_Modify_portal_content_Permission</string> </key>
-            <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
-            </value>
-        </item>
         <item>
             <key> <string>_View_Permission</string> </key>
             <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
+              <list>
+                <string>Anonymous</string>
+              </list>
             </value>
         </item>
         <item>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_calendar.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_calendar.xml
index c1061a5cf94ca0dc8d73fb247a35bed35e24320c..67de646ddd9079c9acd4136acd476269c7dc8f08 100644
--- a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_calendar.xml
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_calendar.xml
@@ -3,7 +3,7 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="Folder" module="Products.ERP5Type.Document.Folder"/>
+        <global name="Gadget" module="Products.ERP5.Document.Gadget"/>
         <tuple/>
       </tuple>
     </pickle>
@@ -13,30 +13,16 @@
             <key> <string>_Access_contents_information_Permission</string> </key>
             <value>
               <list>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
+                <string>Anonymous</string>
               </list>
             </value>
         </item>
-        <item>
-            <key> <string>_Modify_portal_content_Permission</string> </key>
-            <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
-            </value>
-        </item>
         <item>
             <key> <string>_View_Permission</string> </key>
             <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
+              <list>
+                <string>Anonymous</string>
+              </list>
             </value>
         </item>
         <item>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_maps.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_maps.xml
index f1630ef385878e838ee26bb44cf0884d45bdf969..0dcc5192878bd16e5c62097897ea9ee0e104cee7 100644
--- a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_maps.xml
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_maps.xml
@@ -3,7 +3,7 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="Folder" module="Products.ERP5Type.Document.Folder"/>
+        <global name="Gadget" module="Products.ERP5.Document.Gadget"/>
         <tuple/>
       </tuple>
     </pickle>
@@ -13,30 +13,16 @@
             <key> <string>_Access_contents_information_Permission</string> </key>
             <value>
               <list>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
+                <string>Anonymous</string>
               </list>
             </value>
         </item>
-        <item>
-            <key> <string>_Modify_portal_content_Permission</string> </key>
-            <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
-            </value>
-        </item>
         <item>
             <key> <string>_View_Permission</string> </key>
             <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
+              <list>
+                <string>Anonymous</string>
+              </list>
             </value>
         </item>
         <item>
diff --git a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_search.xml b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_search.xml
index 44967a86766b51256336379aa63c3fe3a3b33655..b478aa7eabad519cd56e054d9f8aabbfb9ccc8db 100644
--- a/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_search.xml
+++ b/bt5/erp5_knowledge_pad/PathTemplateItem/portal_gadgets/google_search.xml
@@ -3,7 +3,7 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="Folder" module="Products.ERP5Type.Document.Folder"/>
+        <global name="Gadget" module="Products.ERP5.Document.Gadget"/>
         <tuple/>
       </tuple>
     </pickle>
@@ -13,30 +13,16 @@
             <key> <string>_Access_contents_information_Permission</string> </key>
             <value>
               <list>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
+                <string>Anonymous</string>
               </list>
             </value>
         </item>
-        <item>
-            <key> <string>_Modify_portal_content_Permission</string> </key>
-            <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
-            </value>
-        </item>
         <item>
             <key> <string>_View_Permission</string> </key>
             <value>
-              <tuple>
-                <string>Assignor</string>
-                <string>Manager</string>
-                <string>Owner</string>
-              </tuple>
+              <list>
+                <string>Anonymous</string>
+              </list>
             </value>
         </item>
         <item>
@@ -172,6 +158,12 @@
             <key> <string>edit_form_id</string> </key>
             <value> <string>ERP5Site_viewGoogleSearchGadgetPreferenceDialog</string> </value>
         </item>
+        <item>
+            <key> <string>gadget_type</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
         <item>
             <key> <string>id</string> </key>
             <value> <string>google_search</string> </value>
diff --git a/bt5/erp5_knowledge_pad/PortalTypeBaseCategoryTemplateItem/base_category_list.xml b/bt5/erp5_knowledge_pad/PortalTypeBaseCategoryTemplateItem/base_category_list.xml
index 977c1985bef2ab2a110d8d49d13d2c0ce8e9ee22..7726dd1b6f159a54c18046b670147de2dce257ab 100644
--- a/bt5/erp5_knowledge_pad/PortalTypeBaseCategoryTemplateItem/base_category_list.xml
+++ b/bt5/erp5_knowledge_pad/PortalTypeBaseCategoryTemplateItem/base_category_list.xml
@@ -1,12 +1,9 @@
 <base_category_list>
- <portal_type id="Gadget">
-  <item>gadget_type</item>
- </portal_type>
  <portal_type id="Knowledge Box">
   <item>specialise</item>
  </portal_type>
  <portal_type id="Knowledge Pad">
-  <item>publication_section</item>
   <item>group</item>
+  <item>publication_section</item>
  </portal_type>
 </base_category_list>
\ No newline at end of file
diff --git a/bt5/erp5_knowledge_pad/PortalTypeTemplateItem/portal_types/Gadget.xml b/bt5/erp5_knowledge_pad/PortalTypeTemplateItem/portal_types/Gadget.xml
index 17ced0f9f61a649224d180f82301be1696f72f66..821c59d9fb0eea1f2821e2346929c8026b46cfde 100644
--- a/bt5/erp5_knowledge_pad/PortalTypeTemplateItem/portal_types/Gadget.xml
+++ b/bt5/erp5_knowledge_pad/PortalTypeTemplateItem/portal_types/Gadget.xml
@@ -28,35 +28,15 @@
               </dictionary>
             </value>
         </item>
-        <item>
-            <key> <string>acquire_local_roles</string> </key>
-            <value> <int>0</int> </value>
-        </item>
-        <item>
-            <key> <string>content_icon</string> </key>
-            <value> <string>document_icon.gif</string> </value>
-        </item>
-        <item>
-            <key> <string>content_meta_type</string> </key>
-            <value> <string>ERP5 Gadget</string> </value>
-        </item>
         <item>
             <key> <string>description</string> </key>
-            <value> <string>ERP5 gadget</string> </value>
+            <value>
+              <none/>
+            </value>
         </item>
         <item>
             <key> <string>factory</string> </key>
-            <value> <string>addXMLObject</string> </value>
-        </item>
-        <item>
-            <key> <string>filter_content_types</string> </key>
-            <value> <int>1</int> </value>
-        </item>
-        <item>
-            <key> <string>group_list</string> </key>
-            <value>
-              <tuple/>
-            </value>
+            <value> <string>addGadget</string> </value>
         </item>
         <item>
             <key> <string>id</string> </key>
@@ -75,8 +55,8 @@
             </value>
         </item>
         <item>
-            <key> <string>title</string> </key>
-            <value> <string></string> </value>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Base Type</string> </value>
         </item>
       </dictionary>
     </pickle>
diff --git a/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/Gadget_view/my_render_type.xml b/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/Gadget_view/my_render_type.xml
index 09f68c364ab9c5d27e7317301e8b51db3916759e..32f24f9075fb78a0a6afae33069926c07c0c6834 100644
--- a/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/Gadget_view/my_render_type.xml
+++ b/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/Gadget_view/my_render_type.xml
@@ -3,12 +3,21 @@
   <record id="1" aka="AAAAAAAAAAE=">
     <pickle>
       <tuple>
-        <global name="ListField" module="Products.Formulator.StandardFields"/>
+        <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
         <tuple/>
       </tuple>
     </pickle>
     <pickle>
       <dictionary>
+        <item>
+            <key> <string>delegated_list</string> </key>
+            <value>
+              <list>
+                <string>items</string>
+                <string>title</string>
+              </list>
+            </value>
+        </item>
         <item>
             <key> <string>id</string> </key>
             <value> <string>my_render_type</string> </value>
@@ -21,14 +30,6 @@
                     <key> <string>external_validator_failed</string> </key>
                     <value> <string>The input failed the external validator.</string> </value>
                 </item>
-                <item>
-                    <key> <string>required_not_found</string> </key>
-                    <value> <string>Input is required but no input given.</string> </value>
-                </item>
-                <item>
-                    <key> <string>unknown_selection</string> </key>
-                    <value> <string>You selected an item that was not in the list.</string> </value>
-                </item>
               </dictionary>
             </value>
         </item>
@@ -37,71 +38,15 @@
             <value>
               <dictionary>
                 <item>
-                    <key> <string>alternate_name</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>css_class</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>default</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>description</string> </key>
+                    <key> <string>field_id</string> </key>
                     <value> <string></string> </value>
                 </item>
                 <item>
-                    <key> <string>editable</string> </key>
+                    <key> <string>form_id</string> </key>
                     <value> <string></string> </value>
                 </item>
                 <item>
-                    <key> <string>enabled</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>external_validator</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>extra</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>extra_item</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>first_item</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>hidden</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>items</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>required</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>size</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>title</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>unicode</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>whitespace_preserve</string> </key>
+                    <key> <string>target</string> </key>
                     <value> <string></string> </value>
                 </item>
               </dictionary>
@@ -112,73 +57,27 @@
             <value>
               <dictionary>
                 <item>
-                    <key> <string>alternate_name</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>css_class</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>default</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>description</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>editable</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>enabled</string> </key>
+                    <key> <string>field_id</string> </key>
                     <value> <string></string> </value>
                 </item>
                 <item>
-                    <key> <string>external_validator</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>extra</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>extra_item</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>first_item</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>hidden</string> </key>
+                    <key> <string>form_id</string> </key>
                     <value> <string></string> </value>
                 </item>
                 <item>
                     <key> <string>items</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>required</string> </key>
-                    <value> <string></string> </value>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+                    </value>
                 </item>
                 <item>
-                    <key> <string>size</string> </key>
+                    <key> <string>target</string> </key>
                     <value> <string></string> </value>
                 </item>
                 <item>
                     <key> <string>title</string> </key>
                     <value> <string></string> </value>
                 </item>
-                <item>
-                    <key> <string>unicode</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>whitespace_preserve</string> </key>
-                    <value> <string></string> </value>
-                </item>
               </dictionary>
             </value>
         </item>
@@ -187,92 +86,47 @@
             <value>
               <dictionary>
                 <item>
-                    <key> <string>alternate_name</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>css_class</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>default</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>description</string> </key>
-                    <value> <string></string> </value>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>my_category</string> </value>
                 </item>
                 <item>
-                    <key> <string>editable</string> </key>
-                    <value> <int>1</int> </value>
-                </item>
-                <item>
-                    <key> <string>enabled</string> </key>
-                    <value> <int>1</int> </value>
-                </item>
-                <item>
-                    <key> <string>external_validator</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>extra</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>extra_item</string> </key>
-                    <value> <string></string> </value>
-                </item>
-                <item>
-                    <key> <string>first_item</string> </key>
-                    <value> <int>0</int> </value>
-                </item>
-                <item>
-                    <key> <string>hidden</string> </key>
-                    <value> <int>0</int> </value>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewFieldLibrary</string> </value>
                 </item>
                 <item>
                     <key> <string>items</string> </key>
                     <value>
-                      <list>
-                        <tuple>
-                          <string></string>
-                          <string></string>
-                        </tuple>
-                        <tuple>
-                          <string>Asynchronous</string>
-                          <string>asynchronous</string>
-                        </tuple>
-                        <tuple>
-                          <string>Synchronous</string>
-                          <string>synchronous</string>
-                        </tuple>
-                      </list>
+                      <list/>
                     </value>
                 </item>
                 <item>
-                    <key> <string>required</string> </key>
-                    <value> <int>0</int> </value>
-                </item>
-                <item>
-                    <key> <string>size</string> </key>
-                    <value> <int>1</int> </value>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
                 </item>
                 <item>
                     <key> <string>title</string> </key>
                     <value> <string>Type of rendering</string> </value>
                 </item>
-                <item>
-                    <key> <string>unicode</string> </key>
-                    <value> <int>0</int> </value>
-                </item>
-                <item>
-                    <key> <string>whitespace_preserve</string> </key>
-                    <value> <int>0</int> </value>
-                </item>
               </dictionary>
             </value>
         </item>
       </dictionary>
     </pickle>
   </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <tuple>
+        <global name="TALESMethod" module="Products.Formulator.TALESField"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string>python: getattr(here.portal_categories.gadget_render_type, preferences.getPreference(\'preferred_category_child_item_list_method_id\', \'getCategoryChildCompactLogicalPathItemList\'))(local_sort_id=(\'int_index\', \'translated_title\'), checked_permission=\'View\')</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
 </ZopeData>
diff --git a/bt5/erp5_knowledge_pad/bt/change_log b/bt5/erp5_knowledge_pad/bt/change_log
index 563b35e45311640b915ff4cedd751029365ac489..ac66939556661f6e829253c64499fc32cf115183 100644
--- a/bt5/erp5_knowledge_pad/bt/change_log
+++ b/bt5/erp5_knowledge_pad/bt/change_log
@@ -1,3 +1,6 @@
+2010-02-15 ivan
+* Use dedicated file system based Gadget class
+
 2009-11-26 Fabien
 * add two more gadgets : google maps and google search. Add title on google calendar
 
diff --git a/bt5/erp5_knowledge_pad/bt/revision b/bt5/erp5_knowledge_pad/bt/revision
index 812799aa82ed573e25002889181db700932e62c9..a6d80d584162931833f8d09f1e897fb1bb7bbc3b 100644
--- a/bt5/erp5_knowledge_pad/bt/revision
+++ b/bt5/erp5_knowledge_pad/bt/revision
@@ -1 +1 @@
-452
\ No newline at end of file
+466
\ No newline at end of file
diff --git a/bt5/erp5_knowledge_pad/bt/template_base_category_list b/bt5/erp5_knowledge_pad/bt/template_base_category_list
index bd9f77901a08bec50238f65dae42326b80a96c7e..79d80fb011e86a9578f981676b7454bc9c6d9a1d 100644
--- a/bt5/erp5_knowledge_pad/bt/template_base_category_list
+++ b/bt5/erp5_knowledge_pad/bt/template_base_category_list
@@ -1 +1,2 @@
+gadget_render_type
 gadget_type
\ No newline at end of file
diff --git a/bt5/erp5_knowledge_pad/bt/template_path_list b/bt5/erp5_knowledge_pad/bt/template_path_list
index e0f38a0fb9ba6d8e72da5b1edd2e121253579d44..12c9822fd77877b50d5dbd66685077b2b6159ea3 100644
--- a/bt5/erp5_knowledge_pad/bt/template_path_list
+++ b/bt5/erp5_knowledge_pad/bt/template_path_list
@@ -1,3 +1,4 @@
+portal_categories/gadget_render_type/**
 portal_categories/gadget_type/**
 portal_gadgets/clock
 portal_gadgets/clock/**
diff --git a/bt5/erp5_knowledge_pad/bt/template_portal_type_base_category_list b/bt5/erp5_knowledge_pad/bt/template_portal_type_base_category_list
index 17adf9486f3a35bea3fc60f0aa2f9c139bc7a1b9..895922f0ee7269ebd74a10626d7fa16285224aa1 100644
--- a/bt5/erp5_knowledge_pad/bt/template_portal_type_base_category_list
+++ b/bt5/erp5_knowledge_pad/bt/template_portal_type_base_category_list
@@ -1,4 +1,3 @@
-Gadget | gadget_type
 Knowledge Box | specialise
 Knowledge Pad | group
 Knowledge Pad | publication_section
\ No newline at end of file