diff --git a/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_getTioLiveSiteRootUrl.xml b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_getTioLiveSiteRootUrl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..72012c73383b814809597f1ff9d0a0f7af1dee8f
--- /dev/null
+++ b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_getTioLiveSiteRootUrl.xml
@@ -0,0 +1,125 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_body</string> </key>
+            <value> <string>"""\n
+  Get TioLive Site root URL.\n
+"""\n
+return context.REQUEST.get(\'BASE0\', \'https://www.tiolive.com\')\n
+</string> </value>
+        </item>
+        <item>
+            <key> <string>_code</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>errors</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_code</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="FuncCode" module="Shared.DC.Scripts.Signature"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>co_argcount</string> </key>
+                        <value> <int>0</int> </value>
+                    </item>
+                    <item>
+                        <key> <string>co_varnames</string> </key>
+                        <value>
+                          <tuple>
+                            <string>_getattr_</string>
+                            <string>context</string>
+                          </tuple>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_defaults</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>ERP5Site_getTioLiveSiteRootUrl</string> </value>
+        </item>
+        <item>
+            <key> <string>warnings</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveChangePasswordDialog.xml b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveChangePasswordDialog.xml
index 891413110bf6ae6e76a342eb493ede293c91d460..2226dc22e08387d18b8b06d8a3aa56196a4211fd 100644
--- a/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveChangePasswordDialog.xml
+++ b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveChangePasswordDialog.xml
@@ -53,9 +53,11 @@
         </item>
         <item>
             <key> <string>_body</string> </key>
-            <value> <string>cancel_url = context.getPortalObject().absolute_url()\n
+            <value> <string>portal = context.getPortalObject()\n
+cancel_url = portal.absolute_url()\n
 return container.REQUEST.RESPONSE.redirect(\n
-         \'https://www.tiolive.com/ERP5Site_viewChangeAuthenticatedMemberPasswordDialog?cancel_url=%s\' %cancel_url)\n
+         \'%s/ERP5Site_viewChangeAuthenticatedMemberPasswordDialog?cancel_url=%s\' \n
+           %(portal.ERP5Site_getTioLiveSiteRootUrl(), cancel_url))\n
 </string> </value>
         </item>
         <item>
@@ -94,6 +96,7 @@ return container.REQUEST.RESPONSE.redirect(\n
                           <tuple>
                             <string>_getattr_</string>
                             <string>context</string>
+                            <string>portal</string>
                             <string>cancel_url</string>
                             <string>container</string>
                           </tuple>
diff --git a/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveDocumentation.xml b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveDocumentation.xml
index 498a14cc7e53a33b4219e418909f8b5c690d3d44..4ab47cadf59b96b489ac4ee23090968c951d8ce0 100644
--- a/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveDocumentation.xml
+++ b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveDocumentation.xml
@@ -53,7 +53,9 @@
         </item>
         <item>
             <key> <string>_body</string> </key>
-            <value> <string>return container.REQUEST.RESPONSE.redirect(\'https://www.tiolive.com/documentation\')\n
+            <value> <string>portal = context.getPortalObject()\n
+return container.REQUEST.RESPONSE.redirect(\'%s/documentation\' \n
+                                            %portal.ERP5Site_getTioLiveSiteRootUrl())\n
 </string> </value>
         </item>
         <item>
@@ -91,6 +93,8 @@
                         <value>
                           <tuple>
                             <string>_getattr_</string>
+                            <string>context</string>
+                            <string>portal</string>
                             <string>container</string>
                           </tuple>
                         </value>
diff --git a/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveInstance.xml b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveInstance.xml
index b330f9f20feb4ba3df4dea7364a3bfb2439642d3..64693455047ec4a9398be3d6c110d5d3385e05d8 100644
--- a/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveInstance.xml
+++ b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveInstance.xml
@@ -53,7 +53,9 @@
         </item>
         <item>
             <key> <string>_body</string> </key>
-            <value> <string>return container.REQUEST.RESPONSE.redirect(\'https://www.tiolive.com/instance\')\n
+            <value> <string>portal = context.getPortalObject()\n
+return container.REQUEST.RESPONSE.redirect(\'%s/instance\'\n
+                                            %portal.ERP5Site_getTioLiveSiteRootUrl())\n
 </string> </value>
         </item>
         <item>
@@ -91,6 +93,8 @@
                         <value>
                           <tuple>
                             <string>_getattr_</string>
+                            <string>context</string>
+                            <string>portal</string>
                             <string>container</string>
                           </tuple>
                         </value>
diff --git a/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveProfile.xml b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveProfile.xml
index 312a9a56260cbca9279302e53c03b57058694342..d73a789052c3db10da07a45f8e9ed82c24654664 100644
--- a/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveProfile.xml
+++ b/bt5/tiolive_base/SkinTemplateItem/portal_skins/tiolive_base/ERP5Site_redirectToTioLiveProfile.xml
@@ -53,7 +53,9 @@
         </item>
         <item>
             <key> <string>_body</string> </key>
-            <value> <string>return container.REQUEST.RESPONSE.redirect(\'https://www.tiolive.com/profile\')\n
+            <value> <string>portal = context.getPortalObject()\n
+return container.REQUEST.RESPONSE.redirect(\'%s/profile\'\n
+                                            %portal.ERP5Site_getTioLiveSiteRootUrl())\n
 </string> </value>
         </item>
         <item>
@@ -91,6 +93,8 @@
                         <value>
                           <tuple>
                             <string>_getattr_</string>
+                            <string>context</string>
+                            <string>portal</string>
                             <string>container</string>
                           </tuple>
                         </value>
diff --git a/bt5/tiolive_base/bt/revision b/bt5/tiolive_base/bt/revision
index c24b6ae77df02a87472b208f251fad88382a2e55..72f523f36edb05f0f59e02607fd52a844817ed85 100644
--- a/bt5/tiolive_base/bt/revision
+++ b/bt5/tiolive_base/bt/revision
@@ -1 +1 @@
-38
\ No newline at end of file
+39
\ No newline at end of file
diff --git a/bt5/tiolive_base/bt/template_local_role_list b/bt5/tiolive_base/bt/template_local_role_list
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/bt5/tiolive_base/bt/template_portal_type_role_list b/bt5/tiolive_base/bt/template_portal_type_role_list
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391