From 944925f83346cf1ff721bd427602ccab6666ea05 Mon Sep 17 00:00:00 2001 From: Kevin Deldycke <kevin@nexedi.com> Date: Tue, 19 Sep 2006 16:37:41 +0000 Subject: [PATCH] Admin toolbar is now floating in the default style. git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@10180 20353a03-c40f-0410-a6d1-a30d3c3de9de --- .../erp5_web/erp5_web_form.css.xml | 66 ++- .../erp5_web_default_layout/admin_toolbox.xml | 25 +- .../erp5_web_default_template.xml | 6 +- .../erp5_web_widget_library/admin_toolbox.xml | 381 +++++++++--------- .../admin_toolbox_clone_document.png.xml | 64 +++ .../admin_toolbox_new_document.png.xml | 70 ++++ bt5/erp5_web/bt/change_log | 1 + bt5/erp5_web/bt/revision | 2 +- bt5/erp5_web/bt/version | 2 +- 9 files changed, 405 insertions(+), 212 deletions(-) create mode 100644 bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox_clone_document.png.xml create mode 100644 bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox_new_document.png.xml diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/erp5_web_form.css.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/erp5_web_form.css.xml index fe1bd0d3ef..6c9fe67244 100644 --- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/erp5_web_form.css.xml +++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/erp5_web_form.css.xml @@ -168,18 +168,67 @@ form#main_form div.wrapper div.field label {\n /* Admin toolbox widget style\n ----------------------------------------------- */\n \n -#adminToolbox ul {\n +form#main_form div.wrapper div.adminToolbox {\n + position: fixed;\n + z-index: 200;\n + top: .2em;\n + right: .2em;\n + margin: 0;\n + padding: 0;\n + background-color: #fff7cd;\n + border: 1px solid #f77;\n +}\n +\n +div.adminToolbox label {\n + display: none;\n +}\n +\n +/* admin toolbox sub section title */\n +div.adminToolbox h3 {\n + padding: .5em 0;\n + margin-left: -1em;\n + font-size: inherit;\n +}\n +\n +/* admin toolbox title */\n +div.adminToolbox > div > h3 {\n + background: #f77;\n + padding: .5em;\n + margin: 0;\n + color: #fff;\n + cursor: pointer;\n +}\n +\n +div.adminToolbox > div > h3:hover {\n + background: #f00;\n +}\n +\n +div.adminToolbox > div.input > div.adminSection {\n + border-bottom: 1px dotted #f77;\n + padding: .5em .5em 1em 1.5em;\n +}\n +\n +div.adminToolbox ul {\n list-style: none;\n }\n \n -#adminToolbox li {\n +div.adminToolbox li {\n margin: 0;\n }\n \n -#adminToolbox li > a {\n +div.adminToolbox li > a {\n text-decoration: none;\n }\n \n +div.adminToolbox button,\n +div.adminToolbox li > a {\n + margin: .1em 0;\n + padding: .2em;\n +}\n +\n +div.adminToolbox button[type="submit"] {\n + display: none;\n +}\n \n \n \n @@ -248,19 +297,22 @@ input[type="image"] {\n background-color: transparent;\n }\n \n -/* Admin toolbox edit buttons have the same style as actions buttons */\n -#adminToolbox li > a,\n button {\n margin: .8em .5em;\n - border: 1px #ddd solid;\n padding: .3em;\n +}\n +\n +/* Admin toolbox edit buttons have the same style as actions buttons */\n +div.adminToolbox li > a,\n +button {\n + border: 1px #ddd solid;\n color: #999;\n background: #eee;\n cursor: pointer;\n display: block;\n }\n \n -#adminToolbox li > a:hover,\n +div.adminToolbox li > a:hover,\n button:hover {\n color: #333;\n background: #b0cfcb;\n diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_layout/admin_toolbox.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_layout/admin_toolbox.xml index f422b351ce..e5c415e28f 100644 --- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_layout/admin_toolbox.xml +++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_layout/admin_toolbox.xml @@ -150,7 +150,9 @@ </item> <item> <key> <string>enabled</string> </key> - <value> <string></string> </value> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> + </value> </item> <item> <key> <string>external_validator</string> </key> @@ -213,7 +215,7 @@ </item> <item> <key> <string>css_class</string> </key> - <value> <string></string> </value> + <value> <string>adminToolbox</string> </value> </item> <item> <key> <string>default</string> </key> @@ -304,4 +306,23 @@ </dictionary> </pickle> </record> + <record id="3" aka="AAAAAAAAAAM="> + <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>not: here/portal_membership/isAnonymousUser</string> </value> + </item> + </dictionary> + </pickle> + </record> </ZopeData> diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_template.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_template.xml index f37181dac4..ee88ad40a0 100644 --- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_template.xml +++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_default_theme/erp5_web_default_template.xml @@ -112,10 +112,8 @@ <tal:block metal:use-macro="template/macros/form"/>\n </tal:block>\n \n - <tal:block tal:define="agg_list python: layout_form.WebSite_getGroupList([\'header\', \'left\', \'right\', \'footer\'])">\n - <tal:block tal:repeat="aggregate agg_list">\n - <tal:block metal:use-macro="here/erp5_web_macros/macros/render_aggregate"/>\n - </tal:block>\n + <tal:block tal:repeat="aggregate python: layout_form.WebSite_getGroupList([\'header\', \'left\', \'right\', \'footer\'])">\n + <tal:block metal:use-macro="here/erp5_web_macros/macros/render_aggregate"/>\n </tal:block>\n \n </tal:block>\n diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox.xml index 9f320bb7f7..269e8a3a87 100644 --- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox.xml +++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox.xml @@ -61,187 +61,145 @@ <tal:block\n tal:define="is_web_mode python: True;\n portal_type python: here.getPortalType();">\n -<!-- widget_list python: [ \'admin_tool_menus\']"\n - , \'admin_tool_edit\'\n - , \'admin_tool_duplicate_document\'\n - , \'admin_tool_duplicate_section\'\n - , \'admin_tool_debug\'\n -]">\n --->\n - <tal:block metal:use-macro="here/global_definitions/macros/header_definitions"/>\n \n + <tal:block metal:use-macro="here/global_definitions/macros/header_definitions"/>\n \n - <div id="adminToolbox">\n + <script type="text/javascript" language="JavaScript" src="admin_toolbox_cookie_utils.js"></script>\n + <script type="text/javascript" language="JavaScript">\n + <!--\n + // global variables\n + var cookie_name = "erp5_admin_toolbox_hidden_state"\n + var hidden_class = "doNotDisplay";\n + var displayed_class = "adminSection";\n + var elements_to_hide_name = "adminSection";\n \n - <script type="text/javascript" language="JavaScript" src="admin_toolbox_cookie_utils.js"></script>\n - <script type="text/javascript" language="JavaScript">\n - <!--\n - // global variables\n - var cookie_name = "erp5_admin_toolbox_hidden_state"\n - var hidden_class = "doNotDisplay";\n - var elements_to_hide_name = "adminSection";\n + function hideElements (hide) {\n + if (hide == true) {\n + new_hidden_class = hidden_class;\n + } else if (hide == false) {\n + new_hidden_class = displayed_class;\n + } else {\n + return;\n + }\n + // set the visibility of each element\n + element_list = document.getElementsByName(elements_to_hide_name);\n + for (var i = 0; i < element_list.length; i++) {\n + element_list[i].className = new_hidden_class;\n + }\n + // update cookie to remember the visibility status\n + days = 1; // cookie lifetime\n + stop_date = new Date();\n + stop_date.setTime(stop_date.getTime() + (days*24*60*60*1000));\n + SetCookie(cookie_name, hidden_status, stop_date);\n + }\n \n - function hideElements (hide) {\n - if (hide == true) {\n - new_hidden_class = hidden_class;\n - } else if (hide == false) {\n - new_hidden_class = "";\n - } else {\n - return;\n - }\n - // set the visibility of each element\n - element_list = document.getElementsByName(elements_to_hide_name);\n - for (var i = 0; i < element_list.length; i++) {\n - element_list[i].className = new_hidden_class;\n - }\n - // update cookie to remember the visibility status\n - days = 1; // cookie lifetime\n - stop_date = new Date();\n - stop_date.setTime(stop_date.getTime() + (days*24*60*60*1000));\n - SetCookie(cookie_name, hidden_status, stop_date);\n + function autoHide () {\n + element_list = document.getElementsByName(elements_to_hide_name);\n + hidden_status = false;\n + // compute the global visibility only once to avoid inconsistencies\n + if (element_list[0].className != hidden_class) {\n + hidden_status = true;\n }\n + hideElements(hidden_status);\n + }\n \n - function autoHide () {\n - element_list = document.getElementsByName(elements_to_hide_name);\n + function initHiddenState () {\n + hidden_status = GetCookie(cookie_name);\n + // be carefull: cookies contain string values\n + if (hidden_status == "false") {\n hidden_status = false;\n - // compute the global visibility only once to avoid inconsistencies\n - if (element_list[0].className != hidden_class) {\n - hidden_status = true;\n - }\n - hideElements(hidden_status);\n + } else if (hidden_status == "true") {\n + hidden_status = true;\n }\n + // restore the previous state\n + hideElements(hidden_status);\n + }\n + -->\n + </script>\n \n - function initHiddenState () {\n - hidden_status = GetCookie(cookie_name);\n - // be carefull: cookies contain string values\n - if (hidden_status == "false") {\n - hidden_status = false;\n - } else if (hidden_status == "true") {\n - hidden_status = true;\n - }\n - // restore the previous state\n - hideElements(hidden_status);\n - }\n - -->\n - </script>\n -\n - <h3 title="Click to Collapse / Expand administrator toolbar." onclick="autoHide()" class="important"><img src="admin_toolbox.png"/><span name="adminSection"> Admin Tool Box</span></h3>\n -\n - <!-- Edit button menu -->\n - <div name="adminSection">\n - <h3>Edit</h3>\n - <ul tal:define="edit_links python: context.admin_toolbox_getEditShortcutList(truc=context)">\n - <li tal:repeat="link edit_links">\n - <a tal:attributes="href python: link[\'url\']">\n - <img tal:attributes="src python: link[\'icon\'];\n - title python: link[\'portal_type\'];\n - alt python: \'%s Icon\' % link[\'portal_type\'];"/>\n - <tal:block tal:replace="python: link[\'label\']"/>\n - </a>\n - </li>\n - </ul>\n - </div>\n -\n -\n - <!-- Action drop-down contextual menu -->\n - <div name="adminSection">\n - <h3><tal:block tal:content="portal_type"/> Actions</h3>\n - <tal:block metal:use-macro="here/context_box_render/macros/action"/>\n - </div>\n -\n -\n - <!-- Document creation panel -->\n - <div name="adminSection">\n - <form name="tool_create" method="post" action="WebSite_newContent">\n - <input id="document_action_mode" name="document_action_mode" value="clone" type="hidden"/>\n -\n - <h3>\n - <span id="create_new_document_title"></span>\n - <span id="clone_document_title">Clone <tal:block tal:content="python: (portal_type and \'Default \') or \'Current \'"/>Page</span>\n - </h3>\n -\n - <!-- TODO: bad use of table ! Generic css class for forms should be used there -->\n - <table cellspacing="1" cellpadding="0" border="0">\n - <tr>\n - <td>Title</td>\n - <td><input class="input" size="15" type="text" name="title" tal:attributes="value document/getTitle | nothing"/></td>\n - </tr>\n - <tr>\n - <td>Page URI</td>\n - <td><input class="input" size="15" type="text" name="reference" tal:attributes="value document/getReference | nothing"/></td>\n - </tr>\n - <tr>\n - <td>Version</td>\n - <td><input class="input" size="5" type="text" name="version" tal:attributes="value document/getVersion | nothing"/></td>\n - </tr>\n - <tr>\n - <td>Language</td>\n - <td><input class="input" size="5" type="text" name="language" tal:attributes="value document/getLanguage | nothing"/></td>\n - <!-- No required widget (make the form more complex) -->\n - <!--select name="language" size="1"\n - tal:define="language_map python: here.Localizer.get_languages_map()">\n - <tal:block tal:repeat="language language_map">\n - <tal:block tal:condition="python: document.getLanguage() == language[\'id\'] or language[\'selected\']">\n - <option tal:attributes="value language/id"\n - tal:content="language/id"\n - selected/>\n - </tal:block>\n - <tal:block tal:condition="python: not(document.getLanguage() == language[\'id\'] or language[\'selected\'])">\n - <option tal:attributes="value language/id"\n - tal:content="language/id"/>\n - </tal:block>\n +\n + <h3 title="Click to Collapse / Expand administrator toolbar." onclick="autoHide()" class="important"><img src="admin_toolbox.png"/><span name="adminSection"> Admin Tool Box</span></h3>\n +\n +\n + <!-- Edit button menu -->\n + <div name="adminSection" class="adminSection">\n + <h3>Edit</h3>\n + <ul tal:define="edit_links python: context.admin_toolbox_getEditShortcutList(truc=context)">\n + <li tal:repeat="link edit_links">\n + <a tal:attributes="href python: link[\'url\']">\n + <img tal:attributes="src python: link[\'icon\'];\n + title python: link[\'portal_type\'];\n + alt python: \'%s Icon\' % link[\'portal_type\'];"/>\n + <tal:block tal:replace="python: link[\'label\']"/>\n + </a>\n + </li>\n + </ul>\n + </div>\n +\n +\n + <!-- Action drop-down contextual menu -->\n + <div name="adminSection" class="adminSection">\n + <h3><tal:block tal:content="portal_type"/> Actions</h3>\n + <tal:block metal:use-macro="here/context_box_render/macros/action"/>\n + </div>\n +\n +\n + <!-- Document creation panel.\n + This part is displayed any document apart Web Site and Web Section.\n + But if Web Site and Web Section have default page, then it will be displayed anyway.\n + -->\n + <div name="adminSection" class="adminSection"\n + tal:condition="python: (portal_type in [\'Web Site\', \'Web Section\'] and here.WebSite_getDefaultWebPageValue()) or not portal_type in [\'Web Site\', \'Web Section\']">\n +\n + <form name="tool_create" method="post" action="WebSite_newContent">\n + <input id="document_action_mode" name="document_action_mode" value="clone" type="hidden"/>\n +\n + <h3>\n + <span id="create_new_document_title"></span>\n + <span id="clone_document_title"><tal:block tal:replace="python: \'Clone %s %s\' % ((portal_type in [\'Web Site\', \'Web Section\'] and \'Default\') or \'Current\', portal_type)"/></span>\n + </h3>\n +\n + <fieldset>\n + <!--legend class="group_title">left</legend-->\n +\n + <div class="field">\n + <label>Title</label>\n + <div class="input"><input class="input" size="15" type="text" name="title" tal:attributes="value here/getTitle | nothing"/></div>\n + </div>\n +\n + <div class="field">\n + <label>Page URI</label>\n + <div class="input"><input class="input" size="15" type="text" name="reference" tal:attributes="value here/getReference | nothing"/></div>\n + </div>\n +\n + <div class="field">\n + <label>Version</label>\n + <div class="input"><input class="input" size="5" type="text" name="version" tal:attributes="value here/getVersion | nothing"/></div>\n + </div>\n +\n + <div class="field">\n + <label>Language</label>\n + <div class="input"><input class="input" size="5" type="text" name="language" tal:attributes="value here/getLanguage | nothing"/></div>\n + <!-- Not a required widget (make the form more complex) -->\n + <!--select name="language" size="1"\n + tal:define="language_map python: here.Localizer.get_languages_map()">\n + <tal:block tal:repeat="language language_map">\n + <tal:block tal:condition="python: document.getLanguage() == language[\'id\'] or language[\'selected\']">\n + <option tal:attributes="value language/id"\n + tal:content="language/id"\n + selected/>\n + </tal:block>\n + <tal:block tal:condition="python: not(document.getLanguage() == language[\'id\'] or language[\'selected\'])">\n + <option tal:attributes="value language/id"\n + tal:content="language/id"/>\n </tal:block>\n - </select-->\n - </tr>\n -\n - <script type="text/javascript" language="JavaScript">\n - <!--\n - // preload action icons\n - if (document.images) {\n - clone_icon = new Image();\n - new_icon = new Image();\n - clone_icon.src = "clone-document.png";\n - new_icon.src = "new-document.png";\n - }\n -\n - function setCreationMode (sel) {\n - // default is cloning\n - var action = \'clone\';\n - var action_name = \'Clone & Edit\';\n - var icon = \'clone-document.png\';\n - var clone_class = \'\';\n - var new_title = \'\';\n -\n - // a portal type is given, so create a new document\n - var portal_type = sel.options[sel.selectedIndex].value;\n - if (portal_type != \'None\') {\n - action = \'new\'\n - action_name = \'Create New & Edit\';\n - icon = \'new-document.png\';\n - clone_class = \'doNotDisplay\';\n - new_title = \'Create New Document\';\n - }\n -\n - // update action dependent values\n - document.getElementById(\'document_action_mode\' ).value = action;\n - document.getElementById(\'create_new_document_title\').innerHTML = new_title;\n - document.getElementById(\'clone_document_title\' ).className = clone_class;\n - document.getElementById(\'duplicate_document_action\').innerHTML = action_name;\n -\n - // replace the action icon\n - document.getElementById(\'clone_action_icon\').src = eval(action + "_icon.src");\n -\n - // update action button alt & title\n - var button = document.getElementById(\'clone_action_button\');\n - button.alt = action_name;\n - button.title = action_name;\n - }\n - -->\n - </script>\n -\n - <tr>\n - <td>Type</td>\n - <td>\n + </tal:block>\n + </select-->\n + </div>\n +\n + <div class="field">\n + <label>Type</label>\n + <div class="input">\n <select class="input" name="new_portal_type" size="1" onchange="setCreationMode(this)">\n <option value="None" selected>— Same as Current —</option>\n <tal:block tal:repeat="portal_type python: here.portal_types.objectValues()">\n @@ -250,34 +208,63 @@ tal:attributes="value portal_type/id"/>\n </tal:block>\n </select>\n - </td>\n - </tr>\n - <tr>\n - <td colspan="2" class="centeredInner">\n - <button alt=\'Clone & Edit\' id="clone_action_button" title=\'Clone & Edit\'><img src="pictures/clone-document.png" id="clone_action_icon"/> <span id="duplicate_document_action">Clone & Edit</span></button>\n - <!--input type="image" alt="Clone & Edit" title="Clone & Edit" src="pictures/clone-document.png" id="clone_action_icon"/> <span id="duplicate_document_action">Clone & Edit</span-->\n - </td>\n - </tr>\n - </table>\n -\n - </form>\n - </div>\n -\n -\n - <!-- Debug panel -->\n - <!-- TODO: only display this part for manager -->\n - <div name="adminSection">\n - <h3>Debug Menu</h3>\n - <ul>\n - <li class="code">\n - <!-- Display erp5 web globals -->\n - <b>Globals:</b>\n - <tal:block tal:content="python: \'is_web_mode = \' + repr(is_web_mode)" />\n - </li>\n - </ul>\n - </div>\n + </div>\n + </div>\n +\n + <div class="field">\n + <label> </label>\n + <div class="input"><button alt=\'Clone & Edit\' id="clone_action_button" title=\'Clone & Edit\'><img src="admin_toolbox_clone_document.png" id="clone_action_icon"/> <span id="duplicate_document_action">Clone & Edit</span></button></div>\n + </div>\n \n + </fieldset>\n +\n + <script type="text/javascript" language="JavaScript">\n + <!--\n + // preload action icons\n + if (document.images) {\n + clone_icon = new Image();\n + new_icon = new Image();\n + clone_icon.src = "admin_toolbox_clone_document.png";\n + new_icon.src = "admin_toolbox_new_document.png";\n + }\n +\n + function setCreationMode (sel) {\n + // default is cloning\n + var action = \'clone\';\n + var action_name = \'Clone & Edit\';\n + var icon = \'admin_toolbox_clone_document.png\';\n + var clone_class = \'\';\n + var new_title = \'\';\n +\n + // a portal type is given, so create a new document\n + var portal_type = sel.options[sel.selectedIndex].value;\n + if (portal_type != \'None\') {\n + action = \'new\'\n + action_name = \'Create New & Edit\';\n + icon = \'admin_toolbox_new_document.png\';\n + clone_class = \'doNotDisplay\';\n + new_title = \'Create New Document\';\n + }\n +\n + // update action dependent values\n + document.getElementById(\'document_action_mode\' ).value = action;\n + document.getElementById(\'create_new_document_title\').innerHTML = new_title;\n + document.getElementById(\'clone_document_title\' ).className = clone_class;\n + document.getElementById(\'duplicate_document_action\').innerHTML = action_name;\n +\n + // replace the action icon\n + document.getElementById(\'clone_action_icon\').src = eval(action + "_icon.src");\n +\n + // update action button alt & title\n + var button = document.getElementById(\'clone_action_button\');\n + button.alt = action_name;\n + button.title = action_name;\n + }\n + -->\n + </script>\n + </form>\n </div>\n +\n </tal:block> ]]></string> </value> diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox_clone_document.png.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox_clone_document.png.xml new file mode 100644 index 0000000000..0a3a760cf1 --- /dev/null +++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox_clone_document.png.xml @@ -0,0 +1,64 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>OFS.Image</string> + <string>Image</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>__ac_local_roles__</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>__name__</string> </key> + <value> <string>admin_toolbox_clone_document.png</string> </value> + </item> + <item> + <key> <string>content_type</string> </key> + <value> <string>image/png</string> </value> + </item> + <item> + <key> <string>data</string> </key> + <value> <string encoding="base64">iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI +WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH1AcZDRMXMK5nmgAAAYhJREFUeNqllcFKw0AQhv+ZbPFB +PJYKBc8ePfsAvl17tw8iBGx7EPQNRKSaxrCb+T3ExMZu0kQHlhyG/fef2W8nQhLb7TPRE2m6xu3t +jWBMkMRm88TD8L5knnu+vLzx9XXHzeaJi8UdSWLo0thhSSJIEoHqT/ry8gLL5YpDDWtXQkSQJEnT +ivv7BwAYLO56T1VFWZa4vr7CbveB9/cM2+0j/ixcua2+qoosy5HnRas1/3IsQpgZ9vtPqCpUFfP5 +7IiiGDVR4RAMIRiyLEdReADAdHoeyWffVcywXK54KK4x/MwMRVGAJCaT5E/UHAmXJRuXzrmGjLHU +uN9uvfcQkWb1XVgfNS1hs0r8VAyhpmXH+7K1+RReNTXel3BO4ZyLU2EWQApIay5xCDVnZxOQDiHY +sXDdAhFCRDpb0kUNWe1rCafpGmm67ix5Pp91UlNXFYIdC5+atfVL66LGzBpCTk63WHRRUx2AluNR +wmOoGem4poYtamJV6Jhf2CE1v1sxamwejsU+amLxBcwsVQMFoSFoAAAAAElFTkSuQmCC</string> </value> + </item> + <item> + <key> <string>height</string> </key> + <value> <int>22</int> </value> + </item> + <item> + <key> <string>precondition</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <int>507</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>width</string> </key> + <value> <int>22</int> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox_new_document.png.xml b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox_new_document.png.xml new file mode 100644 index 0000000000..37f69b7265 --- /dev/null +++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web_widget_library/admin_toolbox_new_document.png.xml @@ -0,0 +1,70 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>OFS.Image</string> + <string>Image</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>__ac_local_roles__</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>__name__</string> </key> + <value> <string>admin_toolbox_new_document.png</string> </value> + </item> + <item> + <key> <string>content_type</string> </key> + <value> <string>image/png</string> </value> + </item> + <item> + <key> <string>data</string> </key> + <value> <string encoding="base64">iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI +WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH1QEbAzc5+RtIdwAAAsZJREFUOMu1k1tIFGEYhp9/5p91 +Nzct19Lciog8RJEdsIMhRIRRQSRIXXQVdNFVF0V1HYQ33XQVUUYIFdRFBkGiGBEGYSId6CDJmq5b +ELna7s7uus7u/F2M4mkpXeqFH2a+gWfe//2+TyilmNLDR23TLwuQ4S1e21BfM5ztm5xbOHzoAF6P +MatmWZBMQiIBiSQkEopI/BPfQsFga0dPRUN9Tf9cjrYgZwa43TNOnlOvrNiHZY58ae3o2ZITGMDl +mobmuZ1acZGH9ev2Y5kj71o7enbnBIZpx1NgpSVx5dn4ivdimSOv7j95fTIn8BTcMxnFUHCAWHwA +t3sY/+q1SCt8t6WlpSpr8/4mTQOPR7Br+yYSCQgElLKVEErB97Hh8HJJFdC3aMcAUsL4OIRCkBd4 +KIwP15EShMgx4yn9CvQT6upAl7Cm+AnlG3vRdZvlo+9l0dfOdVnBE6m0pf6wJtEoxLsvU7HnJfQ2 +oUkNYUhcn29z8sSvwh2lgxezgy1pRCIQiUA0BqYJ8TjETBgbAzMOExsukBoMUn4kg+5RaIagvC5I +OjxGV3/BzazNk9JZCNsGpSBjTz/bCuy+x7jCXYTDUUryg7irawBBZijAl9Y36eoCq+7DqaWns4Kl +dEBKzYYqG/RYM8uO1oFaCUqA7syeVupn87kGiWK/2f68dj5Yn+14JlwpSGy9RbD7PeLjA/yNZWhK +gQ0qNcHrq+3pUNLb9LO3/e78ORbOrGqT6c91vLRkFdpQJ4XHy8iMjJLqC6B7vahUhp3nD0rtWlt5 +Y5fq1xayELoOxmT2UkL62zMmBof5MXoMNAMlNCLes8TfflYlK1TtojdPCOcnvsZmUmYEf4GP2NNb +aPEUhXVbuPGiXrjF6KUzuaw0gC4lS5b5nJ5su8K4GSXf5VzeU+hLkSt4pvL9leRni5D/pP8GnhdF +8517/wT8G/5TIRk9cH4vAAAAAElFTkSuQmCC</string> </value> + </item> + <item> + <key> <string>height</string> </key> + <value> <int>22</int> </value> + </item> + <item> + <key> <string>precondition</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <int>825</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>width</string> </key> + <value> <int>22</int> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_web/bt/change_log b/bt5/erp5_web/bt/change_log index 56dc08c1d9..5250372471 100644 --- a/bt5/erp5_web/bt/change_log +++ b/bt5/erp5_web/bt/change_log @@ -1,6 +1,7 @@ 2006-09-19 Kevin * Much more sementical breadcrumb with hierarchical lists. * Admin Toolbar: add webdav and direct ERP5 access link. +* Admin toolbar is now floating in the default style. 2006-09-18 Kevin * Merge all admin toolbar code in one single page template. diff --git a/bt5/erp5_web/bt/revision b/bt5/erp5_web/bt/revision index 3b7560b755..2415c06594 100644 --- a/bt5/erp5_web/bt/revision +++ b/bt5/erp5_web/bt/revision @@ -1 +1 @@ -445 \ No newline at end of file +448 \ No newline at end of file diff --git a/bt5/erp5_web/bt/version b/bt5/erp5_web/bt/version index f369e01b03..c50657c768 100644 --- a/bt5/erp5_web/bt/version +++ b/bt5/erp5_web/bt/version @@ -1 +1 @@ -0.3.37 \ No newline at end of file +0.3.38 \ No newline at end of file -- 2.30.9