diff --git a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/ListBox_asHTML.xml b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/ListBox_asHTML.xml index 0b88249461b1622f2584a6f21ad7c57789fc1ee9..2d86576a9b52f4822b1f03d670ef0bead8ce453a 100644 --- a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/ListBox_asHTML.xml +++ b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/ListBox_asHTML.xml @@ -263,10 +263,10 @@ <div class="left_data"\n tal:condition="not: repeat/valueY/index"\n tal:define="object_url python: \'%s/view\' % line.getObject().getAbsoluteUrl()">\n - <!-- XXX it should be possible to test isSummary() -->\n - <input tal:condition="python: form_id==\'Base_viewRelatedObjectList\' and line.getObject() is not None"\n + <!-- XXX it should be possible to test isSummary() form_id==\'Base_viewRelatedObjectList\' and-->\n + <input tal:condition="python: line.getObject() is not None"\n type="checkbox" value="checked" id="listbox_cb_1" name="uids:list"\n - tal:attributes="checked python: line.getUid() in checked_uid_set;\n + tal:attributes="checked python: not form_id==\'Base_viewHistory\' and line.getUid() in checked_uid_set;\n value line/getUid; id string:${field_id}_cb_${line/getUid}" />\n <a tal:condition="python:not form_id==\'Base_viewWorkflowHistory\'" href="#" tal:attributes="href string:${object_url}?selection_index=${selection_index}&selection_name=${selection_name}&ignore_layout:int=0&reset:int=1"><img src="document_icon.gif" tal:attributes="src string:${portal_url_string}/images/line_clickable.png; title python: line.getObject().getRelativeUrl()" title="document"/></a>\n <span tal:condition="original_value" tal:replace="structure html">value</span>\n diff --git a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/context_box_render.xml b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/context_box_render.xml index 4f139b1578c593ac2cedb166cb8b47f1a152e6c2..57bcac1743fc0ae42deabdf0aaae1df2de16b8ad 100644 --- a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/context_box_render.xml +++ b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/context_box_render.xml @@ -66,30 +66,83 @@ XXX: Folder_filter accesses selection directly\n -->\n </tal:block>\n <tal:block metal:define-macro="master">\n -<!-- XXX: exchange_actions seems to be bad condition -->\n - <span class="first"\n + <span class="first"\n tal:define="search_actions actions/object_search | nothing;\n exchange_actions actions/object_exchange | nothing;\n report_actions actions/object_report | nothing;\n button_actions actions/object_button | nothing;\n + fast_input_actions actions/object_fast_input | nothing;\n sort_actions actions/object_sort | nothing;\n ui_actions actions/object_ui | nothing;\n - print_actions actions/object_print | nothing">\n + print_actions actions/object_print | nothing;\n + list_mode list_mode | nothing">\n + <span class="tool_buttons" align="center">\n + <tal:block tal:condition="list_mode | nothing">\n + <button class="cut" type="submit" name="Folder_cut:method" title="Cut"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">Cut</span>\n + </button>\n + <button class="copy" type="submit" name="Folder_copy:method" title="Copy"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">Copy</span>\n + </button>\n + <button class="paste" type="submit" name="Folder_paste:method" title="Paste"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">Paste</span>\n + </button>\n + <span class="separator"><!--separator--></span>\n + </tal:block>\n +\n + <button class="new" type="submit" title="New"\n + tal:attributes="name python: list_mode and \'Folder_create:method\' or \'Base_createNewDocument:method\'"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">New</span>\n + </button>\n + <button class="clone" type="submit" title="Clone"\n + tal:condition="python: not list_mode"\n + tal:attributes="name python: \'Base_createCloneDocument:method\'"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">Clone</span>\n + </button>\n + <button tal:condition="list_mode" class="delete" type="submit" name="Folder_deleteObjectList:method" title="Delete"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">Delete</span>\n + </button>\n \n -<!-- <div class="arrow"> -->\n - <div class="div_prev" id="div_prev">\n - <span class="tool_buttons">\n - <!-- XXX: exchange_actions seems to be bad condition -->\n - <span class="first"\n - tal:define="search_actions actions/object_search | nothing;\n - exchange_actions actions/object_exchange | nothing;\n - report_actions actions/object_report | nothing;\n - button_actions actions/object_button | nothing;\n - sort_actions actions/object_sort | nothing;\n - ui_actions actions/object_ui | nothing;\n - print_actions actions/object_print | nothing">\n - <tal:block tal:condition="list_mode | nothing"></tal:block>\n - \n + <tal:block tal:condition="list_mode">\n + <span class="separator"><!--separator--></span>\n + <a tal:condition="search_actions" class="find" title="Find"\n + tal:attributes="href python: portal.ERP5Site_renderCustomLink(search_actions[0][\'url\'], http_parameter_list, dialog_category=\'object_search\')"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">Find</span>\n + </a> <!---->\n + <button class="show_all" type="submit" name="Folder_show:method" title="Show All"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">Show All</span>\n + </button>\n + <button type="submit" name="Folder_filter:method" title="Filter"\n + tal:attributes="class python: here.portal_selections.getSelectionInvertModeFor(request[\'selection_name\']) and \'filter_on\' or \'filter\';"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">Filter</span>\n + </button>\n + <a tal:condition="sort_actions" class="sort" title="Sort"\n + tal:attributes="href python: portal.ERP5Site_renderCustomLink(sort_actions[0][\'url\'], http_parameter_list, dialog_category=\'object_sort\')"\n + i18n:attributes="title" i18n:domain="ui">\n + <span class="image"></span>\n + <span class="description" i18n:translate="" i18n:domain="ui">Sort</span>\n + </a>\n + </tal:block>\n + </span><br />\n + <div class="div_prev" id="div_prev">\n <div id="actions">\n <select name="select_action"\n tal:attributes="onChange string:submitAction(this.form,\'${url}/Base_doAction\')" tal:define="document_template_list here/getDocumentTemplateList | nothing">\n @@ -155,8 +208,8 @@ XXX: Folder_filter accesses selection directly\n </button>\n -->\n </div>\n - </span>\n - </div>\n + </div>\n +\n \n <tal:block tal:condition="not: list_mode | nothing">\n <tal:block tal:condition="request/selection_index | nothing">\n @@ -195,8 +248,6 @@ XXX: Folder_filter accesses selection directly\n \n </div>\n </span>\n -<!-- </div> -->\n -\n <script>\n loadDivSize();\n </script>\n @@ -216,7 +267,7 @@ XXX: Folder_filter accesses selection directly\n </script>\n </tal:block>\n </tal:block>\n - </span>\n +</span>\n </tal:block> ]]></string> </value> diff --git a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/erp5.css.xml b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/erp5.css.xml index 8ac71822bb8e22bcc1851a7874999fc24454f657..ac2c3a03ecc3b455e201a6a6abdd3229b8cd9f7e 100644 --- a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/erp5.css.xml +++ b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/erp5.css.xml @@ -718,6 +718,13 @@ textarea {\n text-decoration: none;\n }\n \n +.link_selected {\n + color: #3C6464;\n + font-weight: bold;\n + font-size: 8pt;\n + text-decoration: underline;\n +}\n +\n .link2 {\n color: #3D7474;\n font-size: 12pt;\n @@ -767,6 +774,7 @@ fieldset {\n text-align:center;\n position: absolute;\n padding-right: 3px;\n + padding-bottom: 3px;\n right: 0px;\n line-height: 85%;\n top: 50px;\n @@ -928,6 +936,29 @@ fieldset {\n background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/exec16.png\');\n }\n \n +.separator {\n + height: 24px;\n + width: 2px;\n + margin-left: 6px;\n + margin-right: 6px;\n + display: block;\n + float: left;\n +}\n +\n +#context_bar {\n + padding-top: 2px;\n + padding-bottom: 2px;\n + /* border-bottom-width: 1px;\n + border-bottom-style: solid; */\n + color: inherit;\n + vertical-align: middle;\n +}\n +\n +#context_bar .separator {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/sepacla.png\');\n + height: 16px;\n +}\n +\n #context_bar .tool_buttons .jump_first .image {\n background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/2leftarrowb.png\');\n }\n @@ -948,6 +979,50 @@ fieldset {\n background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/text_block.png\');\n }\n \n +#context_bar .tool_buttons .new .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/filenew.png\');\n +}\n +\n +#context_bar .tool_buttons .clone .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/fileclone.png\');\n +}\n +\n +#context_bar .tool_buttons .cut .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/editcut.png\');\n +}\n +\n +#context_bar .tool_buttons .copy .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/editcopy.png\');\n +}\n +\n +#context_bar .tool_buttons .paste .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/editpaste.png\');\n +}\n +\n +#context_bar .tool_buttons .delete .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/editdelete.png\');\n +}\n +\n +#context_bar .tool_buttons .find .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/find.png\');\n +}\n +\n +#context_bar .tool_buttons .show_all .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/showall.png\');\n +}\n +\n +#context_bar .tool_buttons .filter .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/filter.png\');\n +}\n +\n +#context_bar .tool_buttons .filter_on .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/filter_on.png\');\n +}\n +\n +#context_bar .tool_buttons .sort .image {\n + background-image: url(\'<dtml-var expr="portal_url.getPortalObject().absolute_url()">/images/sort.png\');\n +}\n +\n #navigation_bar button .image,\n #context_bar button .image,\n .dialog_selector button .image,\n @@ -1010,7 +1085,10 @@ fieldset {\n #context_bar .tool_buttons a img {\n width: 16px;\n height: 16px;\n + margin: 0;\n + padding: 0;\n display: block;\n + background-repeat: no-repeat;\n }\n \n p.clear {\n diff --git a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/field_render.xml b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/field_render.xml index 6bfd9692546172293a743a700c77d7d01ba84e4e..9fe4f328092e3d5825d75930416dbc6cb591bb3c 100644 --- a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/field_render.xml +++ b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/field_render.xml @@ -72,11 +72,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n field_has_error python: field_errors.has_key(field_id);\n global form_id form_id | python: form.id;\n field_description field/Field_getDescription;">\n - <div tal:define="html_render python: field.render_htmlgrid(value, request, render_prefix=render_prefix)"\n + <div tal:define="html_render python: field.render_htmlgrid(value, request, render_prefix=render_prefix)"\n tal:attributes="title field_description;\n class python: \' \'.join([x for x in [\'field\', field.is_required() and \'required\' or None, field_has_error and \'error\' or None, field.get_value(\'css_class\') or None] if x is not None])"\n i18n:attributes="title" i18n:domain="ui">\n - <tal:block tal:repeat="html_tuple html_render">\n + <tal:block tal:repeat="html_tuple html_render">\n <label>\n <tal:block tal:content="structure python: html_tuple[0]"\n i18n:translate="" i18n:domain="ui"/>\n diff --git a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/form_render.xml b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/form_render.xml index f252ac9323a1d31063479b656aba42069afbe35b..33d7c2c54e17e7ab09e1314ecf07aa6ea222293b 100644 --- a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/form_render.xml +++ b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/form_render.xml @@ -88,12 +88,12 @@ It is possible to specify a group id and a group title by naming a group followi \n <tal:block metal:define-macro="master">\n <tal:block\n - tal:define="field_errors python: request.get(\'field_errors\', {});\n + tal:define="\n dummy python: request.set(\'here\', here);\n -\t\tgroup_list python: form.Form_getGroupTitleAndId();\n + group_list python: form.Form_getGroupTitleAndId();\n gid_list python: \' \'.join([x[\'gid\'] for x in group_list if x!=\'hidden\']);\n field_render nocall: here/field_render/macros/field_render">\n -\n + <!-- field_errors python: request.get(\'field_errors\', {}); -->\n <tal:block tal:repeat="group group_list">\n <tal:block tal:define="gid group/gid;">\n <fieldset tal:condition="python: gid.find(\'hidden\') < 0"\n diff --git a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/view_main.xml b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/view_main.xml index 82ffd693144ccc39bf69af8df4c1ebd3fa2e3a15..45b38e35f006ce608ef0ebcb4cae2f069fc50cca 100644 --- a/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/view_main.xml +++ b/bt5/erp5_mobile/SkinTemplateItem/portal_skins/erp5_mobile_ui/view_main.xml @@ -73,7 +73,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n local_parameter_list local_parameter_list | python: {};\n dummy python: local_parameter_list.update({\'object_uid\': object_uid, \'object_path\': object_path, \'form_id\': form_id});\n title string:${template/title_or_id} - ${here/Title};\n - ">\n +\n + "><!-- current_action python: here.ERP5Site_getCurrentDialogAction(current_url, dialog_actions); -->\n <div class="div1 small">\n \n <div class="title_index" align="middle">\n @@ -111,9 +112,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n </tal:block>\n <tal:block metal:fill-slot="main">\n <div tal:define="actions actions/object_view | python: []">\n - <div class="content nomarg div4" align="middle">\n - <span tal:repeat="action actions">\n - <a class="link" tal:attributes="href python: here.ERP5Site_renderLink(action[\'url\'], http_parameters)"\n + <div class="content nomarg div4" align="middle"><!-- tal:attributes="class python: action == current_action and \'selected\' or \'not_selected\'" -->\n + <span tal:repeat="action actions" >\n + <a tal:attributes="href python: here.ERP5Site_renderLink(action[\'url\'], http_parameters); class python: action == current_action and \'link_selected\' or \'link\'"\n tal:content="action/name"\n i18n:translate="" i18n:domain="ui"/>\n </span>\n diff --git a/bt5/erp5_mobile/bt/change_log b/bt5/erp5_mobile/bt/change_log index e5ce5aa399b00dc6eccb1d922678647d450dce62..c6d0d14063d8d22b5bc0e0454342dc2885a7216c 100644 --- a/bt5/erp5_mobile/bt/change_log +++ b/bt5/erp5_mobile/bt/change_log @@ -1,4 +1,9 @@ -2008-01-15 Kazuhiko +2009-03-10 Mohamadou +* In listmode it is now posible to copy/paste/cut/delete/find/filter/show_all/sort or add new element. +* In document view it is possible to clone or add new one +* In document view the current tab is highlighted. + +2009-01-15 Kazuhiko * Sync with erp5_xhtml_style (r.24958). 2008-01-02 Nicolas diff --git a/bt5/erp5_mobile/bt/revision b/bt5/erp5_mobile/bt/revision index aaa6442fe902e96a5233b136b973b96a4011fc18..f70d7bba4ae1f07682e0358bd7a2068094fc023b 100644 --- a/bt5/erp5_mobile/bt/revision +++ b/bt5/erp5_mobile/bt/revision @@ -1 +1 @@ -41 \ No newline at end of file +42 \ No newline at end of file