diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/Base_getPermanentURL.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/Base_getPermanentURL.xml
index dea4115012aabd2165f0f4abd1f6cee8cc1da3a9..30cd5757f3c1273839e5b3b71493550737f6f048 100644
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/Base_getPermanentURL.xml
+++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/Base_getPermanentURL.xml
@@ -90,6 +90,10 @@
  for the first relevant section and build a URL\n
  based on the section absolute_url and on the\n
  document reference.\n
+\n
+ The section parameter can be used to provide\n
+ explicitely a section. This can be useful to\n
+ build URL generators for listbox entries.\n
 \n
  More sophisticated behaviours are possible.\n
 \n
@@ -101,11 +105,18 @@
  - change the behaviour of WebSite_getDocumentUrl\n
    for documents which are not published.\n
 \n
- NOTE: it is still unknown whether this script\n
- needs to be integrated or not to the absolute_url API\n
+ NOTE: absolute_url is the appropriate API to get\n
+ the absolute_url of the current document. It has\n
+ been tweaked enough in ERP5 Web to support virtual\n
+ hosting and permanent URLs.\n
+ \n
+ Base_getPermanentURL is useful to create a permanent\n
+ URL out of a document which has been accessed either\n
+ directly or through a Web Section / Web Site. It is\n
+ the reverse method of WebSite_getDocumentValue.\n
 """\n
 # Return absolute URL if our parent is not a Web Section or Web Site\n
-if context.aq_parent.getPortalType() not in (\'Web Section\', \'Web Site\'):\n
+if section is None and context.aq_parent.getPortalType() not in (\'Web Section\', \'Web Site\'):\n
   return context.absolute_url()\n
 \n
 # Return absolute URL if this is not an appropriate portal_type\n
@@ -120,10 +131,10 @@ if context.getValidationState() not in validation_state:\n
   return context.absolute_url()\n
 \n
 # Find the Web Section or Web Site we belong to\n
-current_section = context.getWebSectionValue()\n
+if section is None: section = context.getWebSectionValue()\n
 \n
 # Return the URL\n
-return "%s/%s" % (current_section.absolute_url(), context.getReference())\n
+return "%s/%s" % (section.absolute_url(), context.getReference())\n
 </string> </value>
         </item>
         <item>
@@ -146,7 +157,7 @@ return "%s/%s" % (current_section.absolute_url(), context.getReference())\n
         </item>
         <item>
             <key> <string>_params</string> </key>
-            <value> <string></string> </value>
+            <value> <string>section=None</string> </value>
         </item>
         <item>
             <key> <string>errors</string> </key>
@@ -166,17 +177,18 @@ return "%s/%s" % (current_section.absolute_url(), context.getReference())\n
                   <dictionary>
                     <item>
                         <key> <string>co_argcount</string> </key>
-                        <value> <int>0</int> </value>
+                        <value> <int>1</int> </value>
                     </item>
                     <item>
                         <key> <string>co_varnames</string> </key>
                         <value>
                           <tuple>
+                            <string>section</string>
+                            <string>None</string>
                             <string>_getattr_</string>
                             <string>context</string>
                             <string>valid_portal_type_list</string>
                             <string>validation_state</string>
-                            <string>current_section</string>
                           </tuple>
                         </value>
                     </item>
@@ -188,7 +200,9 @@ return "%s/%s" % (current_section.absolute_url(), context.getReference())\n
         <item>
             <key> <string>func_defaults</string> </key>
             <value>
-              <none/>
+              <tuple>
+                <none/>
+              </tuple>
             </value>
         </item>
         <item>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/ImageModule_viewImageList/listbox.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/ImageModule_viewImageList/listbox.xml
index b482c1c38ac0296dd8e6e70fee3ce1e6232fb444..7bb3b87052c5059da24f7e236ccc811bc5cff300 100644
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/ImageModule_viewImageList/listbox.xml
+++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/ImageModule_viewImageList/listbox.xml
@@ -389,20 +389,7 @@
                 <item>
                     <key> <string>default_params</string> </key>
                     <value>
-                      <list>
-                        <tuple>
-                          <string>id</string>
-                          <string encoding="base64">Jyc=</string>
-                        </tuple>
-                        <tuple>
-                          <string>title</string>
-                          <string encoding="base64">Jyc=</string>
-                        </tuple>
-                        <tuple>
-                          <string>description</string>
-                          <string encoding="base64">Jyc=</string>
-                        </tuple>
-                      </list>
+                      <list/>
                     </value>
                 </item>
                 <item>
@@ -489,6 +476,10 @@
                       <list/>
                     </value>
                 </item>
+                <item>
+                    <key> <string>page_template</string> </key>
+                    <value> <string></string> </value>
+                </item>
                 <item>
                     <key> <string>portal_types</string> </key>
                     <value>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_layout.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_layout.xml
deleted file mode 100644
index f7a55b1a6cc2d06f8c3d38cbe4a2a2541d3a037e..0000000000000000000000000000000000000000
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_layout.xml
+++ /dev/null
@@ -1,146 +0,0 @@
-<?xml version="1.0"?>
-<ZopeData>
-  <record id="1" aka="AAAAAAAAAAE=">
-    <pickle>
-      <tuple>
-        <tuple>
-          <string>Products.ERP5Form.Form</string>
-          <string>ERP5Form</string>
-        </tuple>
-        <none/>
-      </tuple>
-    </pickle>
-    <pickle>
-      <dictionary>
-        <item>
-            <key> <string>__ac_local_roles__</string> </key>
-            <value>
-              <none/>
-            </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/>
-                        </value>
-                    </item>
-                  </dictionary>
-                </state>
-              </object>
-            </value>
-        </item>
-        <item>
-            <key> <string>_objects</string> </key>
-            <value>
-              <tuple/>
-            </value>
-        </item>
-        <item>
-            <key> <string>action</string> </key>
-            <value> <string></string> </value>
-        </item>
-        <item>
-            <key> <string>encoding</string> </key>
-            <value> <string>UTF-8</string> </value>
-        </item>
-        <item>
-            <key> <string>enctype</string> </key>
-            <value> <string></string> </value>
-        </item>
-        <item>
-            <key> <string>group_list</string> </key>
-            <value>
-              <list>
-                <string>left column</string>
-                <string>right column</string>
-                <string>footer</string>
-              </list>
-            </value>
-        </item>
-        <item>
-            <key> <string>groups</string> </key>
-            <value>
-              <dictionary>
-                <item>
-                    <key> <string>footer</string> </key>
-                    <value>
-                      <list>
-                        <string>login_box</string>
-                      </list>
-                    </value>
-                </item>
-                <item>
-                    <key> <string>left column</string> </key>
-                    <value>
-                      <list>
-                        <string>website_logo</string>
-                        <string>breadcrumb</string>
-                        <string>sub_web_object_list</string>
-                        <string>sub_document_list</string>
-                        <string>admin_toolbox</string>
-                      </list>
-                    </value>
-                </item>
-                <item>
-                    <key> <string>right column</string> </key>
-                    <value>
-                      <list>
-                        <string>your_searchable_text</string>
-                        <string>about_box</string>
-                        <string>latest_news</string>
-                      </list>
-                    </value>
-                </item>
-              </dictionary>
-            </value>
-        </item>
-        <item>
-            <key> <string>id</string> </key>
-            <value> <string>erp5_web_default_layout</string> </value>
-        </item>
-        <item>
-            <key> <string>method</string> </key>
-            <value> <string>POST</string> </value>
-        </item>
-        <item>
-            <key> <string>name</string> </key>
-            <value> <string>erp5_web_default_layout</string> </value>
-        </item>
-        <item>
-            <key> <string>pt</string> </key>
-            <value> <string>erp5_web_default_template</string> </value>
-        </item>
-        <item>
-            <key> <string>row_length</string> </key>
-            <value> <int>6</int> </value>
-        </item>
-        <item>
-            <key> <string>stored_encoding</string> </key>
-            <value> <string>UTF-8</string> </value>
-        </item>
-        <item>
-            <key> <string>title</string> </key>
-            <value> <string>Default Web Layout</string> </value>
-        </item>
-        <item>
-            <key> <string>unicode_mode</string> </key>
-            <value> <int>0</int> </value>
-        </item>
-        <item>
-            <key> <string>update_action</string> </key>
-            <value> <string></string> </value>
-        </item>
-      </dictionary>
-    </pickle>
-  </record>
-</ZopeData>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_section_layout.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_section_layout.xml
index cc8aa68dea45cc6ec24660d922a3317da95c1667..d80397557da2a781b407f5420fcda329fb9ad8d0 100644
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_section_layout.xml
+++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_section_layout.xml
@@ -103,6 +103,7 @@
                     <key>                 <string>left column (Navigation)</string> </key>
                     <value>
                       <list>
+                        <string>language_selector</string>
                         <string>breadcrumb</string>
                       </list>
                     </value>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_section_layout/language_selector.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_section_layout/language_selector.xml
new file mode 100644
index 0000000000000000000000000000000000000000..dadb71c1e57595e20830aa8cb466e9f05c1efe5d
--- /dev/null
+++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_section_layout/language_selector.xml
@@ -0,0 +1,307 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.ERP5Form.EditorField</string>
+          <string>EditorField</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>language_selector</string> </value>
+        </item>
+        <item>
+            <key> <string>message_values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>external_validator_failed</string> </key>
+                    <value> <string>The input failed the external validator.</string> </value>
+                </item>
+                <item>
+                    <key> <string>line_too_long</string> </key>
+                    <value> <string>A line was too long.</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>too_long</string> </key>
+                    <value> <string>You entered too many characters.</string> </value>
+                </item>
+                <item>
+                    <key> <string>too_many_lines</string> </key>
+                    <value> <string>You entered too many lines.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <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>
+                    <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>height</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_linelength</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_lines</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</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>
+                <item>
+                    <key> <string>width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>tales</string> </key>
+            <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>
+                      <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+                    </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>
+                    <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>height</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_linelength</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_lines</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</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>
+                <item>
+                    <key> <string>width</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string>hiddenLabel languageSelector</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> <int>0</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>height</string> </key>
+                    <value> <int>5</int> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>max_length</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_linelength</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>max_lines</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Language</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>
+                <item>
+                    <key> <string>width</string> </key>
+                    <value> <int>40</int> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <tuple>
+        <tuple>
+          <string>Products.Formulator.TALESField</string>
+          <string>TALESMethod</string>
+        </tuple>
+        <none/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string>here/language_selector</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/Base_cloneContent.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/Base_cloneContent.xml
index d7113f0dff06e90668d94a47cf753a818c106ec8..2996596f1ef737d202921eca7f8191bc9d2486a8 100644
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/Base_cloneContent.xml
+++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/Base_cloneContent.xml
@@ -75,11 +75,15 @@
   or by creating a new document.\n
 \n
   This script is called by the admin toolbox.\n
-"""\n
 \n
+  Cloning or creation is prevented if document already exists\n
+  with same reference, version, language. Pretty messages\n
+  are provided to the user.\n
+"""\n
+translateString =  context.Base_translateString\n
 form_data = context.REQUEST.form\n
 \n
-# Define a list of field name to ignore in the cloning process\n
+# Define a list of field name to take into account in the cloning process\n
 ACCEPTABLE_FORM_ID_LIST = [ \\\n
                          \'reference\'\n
                        , \'language\'\n
@@ -89,14 +93,6 @@ ACCEPTABLE_FORM_ID_LIST = [ \\\n
                        , \'short_title\'\n
 ]\n
 \n
-# Clone properties to the new object\n
-kw = {}\n
-property_id_list = context.propertyIds()\n
-for (key, val) in form_data.items():\n
-  if key in ACCEPTABLE_FORM_ID_LIST and key in property_id_list:\n
-    kw[key] = val\n
-new_object.edit(**kw)\n
-\n
 # First make sure that no document already exists with the\n
 # same portal_type, reference, language and version.\n
 if clone:\n
@@ -104,55 +100,56 @@ if clone:\n
 else:\n
   portal_type = form_data[\'new_portal_type\']\n
 \n
-portal_catalog(portal_type=portal_type, reference=reference, ) \n
+# prepare query params\n
+kw = {\'portal_type\' : portal_type}\n
+if form_data.get(\'reference\'): kw[\'reference\'] = form_data[\'reference\']\n
+if form_data.get(\'version\'): kw[\'version\'] = form_data[\'version\']\n
+if form_data.get(\'language\'): kw[\'language\'] = form_data[\'language\']\n
 \n
+# Count documents of same reference and prepare kw\n
+count = int(context.portal_catalog.countResults(**kw)[0][0])\n
+kw[\'reference\'] = kw.get(\'reference\', \'undefined\')\n
+kw[\'language\'] = kw.get(\'language\', \'any\')\n
+kw[\'version\'] = kw.get(\'version\', \'undefined\')\n
+# if count results not 0, warn user\n
+if count:\n
+  return context.Base_redirect(form_id, editable_mode=editable_mode,\n
+        keep_items={\'portal_status_message\': translateString("Sorry, a ${portal_type} with reference \'${reference}\' and version \'${version} [${language}]\' already exists. Please select another reference or version.", mapping = kw)})\n
 \n
 # Standard cloning method\n
 if clone:\n
-  \n
-\n
-  \n
-  # TODO ?: If the document language hasn\'t changed and the version wasn\'t increased,\n
-  #           change the copied document reference to "copy-of-%s". This idea came from\n
-  #           the fact some published document are "invisible" because cloned documents\n
-  #           share by default the same reference (within a set of documents of same\n
-  #           references in a given section, only one document is display).\n
-\n
   # We copy contents in place if possible\n
-  directory     = getattr(context, \'original_container\', None) or context.getParentValue()\n
+  directory = getattr(context, \'original_container\', None) or context.getParentValue()\n
 \n
   # Copy and paste the object\n
-  original_id = getattr(context, \'original_id\', None) or context.getId() # This is required for objects acquired in Web Section\n
-  clipboard    = directory.manage_copyObjects(ids=[original_id])\n
+  original_id = getattr(context, \'original_id\', None) or context.getId()\n
+                    # This is required for objects acquired in Web Section\n
+  clipboard = directory.manage_copyObjects(ids=[original_id])\n
   #context.log("Kev test clipboard                  >>>>>", repr(clipboard))\n
   paste_result = directory.manage_pasteObjects(cb_copy_data=clipboard)\n
-  new_object   = directory[paste_result[0][\'new_id\']]\n
-\n
-  #context.log("Kev test paste_result               >>>>>", repr(paste_result))\n
-  #context.log("Kev test directory.WebSite_getUrl() >>>>>", repr(directory.WebSite_getUrl()))\n
-  #context.log("Kev test new_object.getId()         >>>>>", repr(new_object.getId()))\n
-\n
-  redirect_url = \'%s/view?editable_mode=1\' % new_object.absolute_url()\n
+  new_object = directory[paste_result[0][\'new_id\']]\n
+  message_kind = \'clone\'\n
 \n
 # Create a new object here (this is a copy and paste of the previous WebSite_clone script)\n
 else:\n
   # Guess the new document module\n
-  portal       = context.getPortalObject()\n
-  module       = portal.getDefaultModule(portal_type=portal_type)\n
-  new_object   = module.newContent(portal_type = portal_type)\n
-  redirect_url = \'%s/view?editable_mode=1\' % new_object.absolute_url()\n
-\n
+  portal = context.getPortalObject()\n
+  module = portal.getDefaultModule(portal_type=portal_type)\n
+  new_object = module.newContent(portal_type = portal_type)\n
+  form_id = \'view\'\n
+  message_kind = \'new\'\n
 \n
 # Clone properties to the new object\n
-kw = {}\n
+edit_kw = {}\n
 property_id_list = new_object.propertyIds()\n
 for (key, val) in form_data.items():\n
   if key in ACCEPTABLE_FORM_ID_LIST and key in property_id_list:\n
-    kw[key] = val\n
-new_object.edit(**kw)\n
-\n
+    edit_kw[key] = val\n
+new_object.edit(**edit_kw)\n
 \n
-return context.REQUEST.RESPONSE.redirect(redirect_url)\n
+if not editable_mode: form_id = \'view\'\n
+return new_object.Base_redirect(form_id, editable_mode=1,\n
+        keep_items={\'portal_status_message\': translateString("Created %s ${portal_type} with reference \'${reference}\' and version \'${version} [${language}]\'." % message_kind, mapping = kw)})\n
 
 
 ]]></string> </value>
@@ -171,7 +168,7 @@ return context.REQUEST.RESPONSE.redirect(redirect_url)\n
         </item>
         <item>
             <key> <string>_params</string> </key>
-            <value> <string>clone=1</string> </value>
+            <value> <string>clone=1, form_id, editable_mode=0</string> </value>
         </item>
         <item>
             <key> <string>errors</string> </key>
@@ -191,38 +188,42 @@ return context.REQUEST.RESPONSE.redirect(redirect_url)\n
                   <dictionary>
                     <item>
                         <key> <string>co_argcount</string> </key>
-                        <value> <int>1</int> </value>
+                        <value> <int>3</int> </value>
                     </item>
                     <item>
                         <key> <string>co_varnames</string> </key>
                         <value>
                           <tuple>
                             <string>clone</string>
+                            <string>form_id</string>
+                            <string>editable_mode</string>
                             <string>_getattr_</string>
                             <string>context</string>
+                            <string>translateString</string>
                             <string>form_data</string>
                             <string>ACCEPTABLE_FORM_ID_LIST</string>
+                            <string>portal_type</string>
+                            <string>_getitem_</string>
                             <string>kw</string>
-                            <string>property_id_list</string>
-                            <string>_getiter_</string>
-                            <string>key</string>
-                            <string>val</string>
                             <string>_write_</string>
+                            <string>int</string>
                             <string>_apply_</string>
-                            <string>new_object</string>
-                            <string>portal_type</string>
-                            <string>_getitem_</string>
-                            <string>portal_catalog</string>
-                            <string>reference</string>
+                            <string>count</string>
                             <string>getattr</string>
                             <string>None</string>
                             <string>directory</string>
                             <string>original_id</string>
                             <string>clipboard</string>
                             <string>paste_result</string>
-                            <string>redirect_url</string>
+                            <string>new_object</string>
+                            <string>message_kind</string>
                             <string>portal</string>
                             <string>module</string>
+                            <string>edit_kw</string>
+                            <string>property_id_list</string>
+                            <string>_getiter_</string>
+                            <string>key</string>
+                            <string>val</string>
                           </tuple>
                         </value>
                     </item>
@@ -236,6 +237,8 @@ return context.REQUEST.RESPONSE.redirect(redirect_url)\n
             <value>
               <tuple>
                 <int>1</int>
+                <none/>
+                <int>0</int>
               </tuple>
             </value>
         </item>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/login_box.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/login_box.xml
deleted file mode 100644
index 54f53097d4e0706a629b6d9258d9b14150b13f10..0000000000000000000000000000000000000000
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/login_box.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0"?>
-<ZopeData>
-  <record id="1" aka="AAAAAAAAAAE=">
-    <pickle>
-      <tuple>
-        <tuple>
-          <string>OFS.Folder</string>
-          <string>Folder</string>
-        </tuple>
-        <none/>
-      </tuple>
-    </pickle>
-    <pickle>
-      <dictionary>
-        <item>
-            <key> <string>__ac_local_roles__</string> </key>
-            <value>
-              <none/>
-            </value>
-        </item>
-        <item>
-            <key> <string>_objects</string> </key>
-            <value>
-              <tuple/>
-            </value>
-        </item>
-        <item>
-            <key> <string>id</string> </key>
-            <value> <string>login_box</string> </value>
-        </item>
-        <item>
-            <key> <string>title</string> </key>
-            <value> <string></string> </value>
-        </item>
-      </dictionary>
-    </pickle>
-  </record>
-</ZopeData>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/my_stuff_list.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/my_stuff_list.xml
deleted file mode 100644
index f1225aa46d66801b7e02abe97e111d4862963f0a..0000000000000000000000000000000000000000
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/my_stuff_list.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0"?>
-<ZopeData>
-  <record id="1" aka="AAAAAAAAAAE=">
-    <pickle>
-      <tuple>
-        <tuple>
-          <string>OFS.Folder</string>
-          <string>Folder</string>
-        </tuple>
-        <none/>
-      </tuple>
-    </pickle>
-    <pickle>
-      <dictionary>
-        <item>
-            <key> <string>__ac_local_roles__</string> </key>
-            <value>
-              <none/>
-            </value>
-        </item>
-        <item>
-            <key> <string>_objects</string> </key>
-            <value>
-              <tuple/>
-            </value>
-        </item>
-        <item>
-            <key> <string>id</string> </key>
-            <value> <string>my_stuff_list</string> </value>
-        </item>
-        <item>
-            <key> <string>title</string> </key>
-            <value> <string>Outdated code: need upgrade</string> </value>
-        </item>
-      </dictionary>
-    </pickle>
-  </record>
-</ZopeData>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/my_task_list.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/my_task_list.xml
deleted file mode 100644
index b2bcb53d99ec3cdb4712375fd9d97f2554482dd6..0000000000000000000000000000000000000000
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/my_task_list.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0"?>
-<ZopeData>
-  <record id="1" aka="AAAAAAAAAAE=">
-    <pickle>
-      <tuple>
-        <tuple>
-          <string>OFS.Folder</string>
-          <string>Folder</string>
-        </tuple>
-        <none/>
-      </tuple>
-    </pickle>
-    <pickle>
-      <dictionary>
-        <item>
-            <key> <string>__ac_local_roles__</string> </key>
-            <value>
-              <none/>
-            </value>
-        </item>
-        <item>
-            <key> <string>_objects</string> </key>
-            <value>
-              <tuple/>
-            </value>
-        </item>
-        <item>
-            <key> <string>id</string> </key>
-            <value> <string>my_task_list</string> </value>
-        </item>
-        <item>
-            <key> <string>title</string> </key>
-            <value> <string>Outdated code: need upgrade</string> </value>
-        </item>
-      </dictionary>
-    </pickle>
-  </record>
-</ZopeData>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/pending_work_list.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/pending_work_list.xml
deleted file mode 100644
index 72a7d91bcbad6fce846e5f2fefe1a1852a93866b..0000000000000000000000000000000000000000
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/pending_work_list.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0"?>
-<ZopeData>
-  <record id="1" aka="AAAAAAAAAAE=">
-    <pickle>
-      <tuple>
-        <tuple>
-          <string>OFS.Folder</string>
-          <string>Folder</string>
-        </tuple>
-        <none/>
-      </tuple>
-    </pickle>
-    <pickle>
-      <dictionary>
-        <item>
-            <key> <string>__ac_local_roles__</string> </key>
-            <value>
-              <none/>
-            </value>
-        </item>
-        <item>
-            <key> <string>_objects</string> </key>
-            <value>
-              <tuple/>
-            </value>
-        </item>
-        <item>
-            <key> <string>id</string> </key>
-            <value> <string>pending_work_list</string> </value>
-        </item>
-        <item>
-            <key> <string>title</string> </key>
-            <value> <string>Outdated code: need upgrade</string> </value>
-        </item>
-      </dictionary>
-    </pickle>
-  </record>
-</ZopeData>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/recent_changes.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/recent_changes.xml
deleted file mode 100644
index 3c44046e408af376a54bf68703aec84f4d72d33b..0000000000000000000000000000000000000000
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/recent_changes.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0"?>
-<ZopeData>
-  <record id="1" aka="AAAAAAAAAAE=">
-    <pickle>
-      <tuple>
-        <tuple>
-          <string>OFS.Folder</string>
-          <string>Folder</string>
-        </tuple>
-        <none/>
-      </tuple>
-    </pickle>
-    <pickle>
-      <dictionary>
-        <item>
-            <key> <string>__ac_local_roles__</string> </key>
-            <value>
-              <none/>
-            </value>
-        </item>
-        <item>
-            <key> <string>_objects</string> </key>
-            <value>
-              <tuple/>
-            </value>
-        </item>
-        <item>
-            <key> <string>id</string> </key>
-            <value> <string>recent_changes</string> </value>
-        </item>
-        <item>
-            <key> <string>title</string> </key>
-            <value> <string>Outdated code: need upgrade</string> </value>
-        </item>
-      </dictionary>
-    </pickle>
-  </record>
-</ZopeData>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/search_box.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/search_box.xml
deleted file mode 100644
index f951987d3c2b2b870e34a1f3f75bc7b4c2c00ed8..0000000000000000000000000000000000000000
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/search_box.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0"?>
-<ZopeData>
-  <record id="1" aka="AAAAAAAAAAE=">
-    <pickle>
-      <tuple>
-        <tuple>
-          <string>OFS.Folder</string>
-          <string>Folder</string>
-        </tuple>
-        <none/>
-      </tuple>
-    </pickle>
-    <pickle>
-      <dictionary>
-        <item>
-            <key> <string>__ac_local_roles__</string> </key>
-            <value>
-              <none/>
-            </value>
-        </item>
-        <item>
-            <key> <string>_objects</string> </key>
-            <value>
-              <tuple/>
-            </value>
-        </item>
-        <item>
-            <key> <string>id</string> </key>
-            <value> <string>search_box</string> </value>
-        </item>
-        <item>
-            <key> <string>title</string> </key>
-            <value> <string>Outdated code: need upgrade</string> </value>
-        </item>
-      </dictionary>
-    </pickle>
-  </record>
-</ZopeData>
diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/site_map.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/site_map.xml
deleted file mode 100644
index 3ebdee01646d320c23c9621003b48abbf2f03654..0000000000000000000000000000000000000000
--- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/site_map.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0"?>
-<ZopeData>
-  <record id="1" aka="AAAAAAAAAAE=">
-    <pickle>
-      <tuple>
-        <tuple>
-          <string>OFS.Folder</string>
-          <string>Folder</string>
-        </tuple>
-        <none/>
-      </tuple>
-    </pickle>
-    <pickle>
-      <dictionary>
-        <item>
-            <key> <string>__ac_local_roles__</string> </key>
-            <value>
-              <none/>
-            </value>
-        </item>
-        <item>
-            <key> <string>_objects</string> </key>
-            <value>
-              <tuple/>
-            </value>
-        </item>
-        <item>
-            <key> <string>id</string> </key>
-            <value> <string>site_map</string> </value>
-        </item>
-        <item>
-            <key> <string>title</string> </key>
-            <value> <string>Outdated code: need upgrade</string> </value>
-        </item>
-      </dictionary>
-    </pickle>
-  </record>
-</ZopeData>
diff --git a/bt5/erp5_web/bt/revision b/bt5/erp5_web/bt/revision
index df2d2b6cee7f8de8a6bd944613e831192e343399..2e790af68a8c3683ef466009ea9cea14a1ee2e46 100644
--- a/bt5/erp5_web/bt/revision
+++ b/bt5/erp5_web/bt/revision
@@ -1 +1 @@
-497
\ No newline at end of file
+510
\ No newline at end of file