Commit 24121747 authored by Cédric Le Ninivin's avatar Cédric Le Ninivin

erp5_web_renderjs_ui: Add Tabs on Action Gadget

parent c6c7f700
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<script id="table-template" type="text/x-handlebars-template"> <script id="table-template" type="text/x-handlebars-template">
<section class="ui-content-header-plain"> <section class="ui-content-header-plain">
<h3 class="ui-content-title ui-body-c" data-i18n="[last]{{definition_i18n}}"> <h3 class="ui-content-title ui-body-c" data-i18n="[last]{{definition_i18n}}">
<span class="ui-icon ui-icon-custom ui-icon-random">&nbsp;</span> <span class="ui-icon ui-icon-custom ui-icon-{{definition_icon}}">&nbsp;</span>
{{definition_title}} {{definition_title}}
</h3> </h3>
</section> </section>
...@@ -29,20 +29,6 @@ ...@@ -29,20 +29,6 @@
<li><a data-i18n="{{i18n}}" class="ui-body-inherit" href="{{link}}">{{title}}</a></li> <li><a data-i18n="{{i18n}}" class="ui-body-inherit" href="{{link}}">{{title}}</a></li>
{{/each}} {{/each}}
</ul> </ul>
{{#if action_tab_list}}
<section class="ui-content-header-plain">
<h3 class="ui-content-title ui-body-c" data-i18n="[last]{{section_i18n}}">
<span class="ui-icon ui-icon-custom ui-icon-random">&nbsp;</span>
{{section_title}}
</h3>
</section>
<ul data-role="listview" data-theme="c" data-inset="true" class="document-listview">
{{#each action_tab_list}}
<li><a data-i18n="{{i18n}}" class="ui-body-inherit" href="{{link}}">{{title}}</a></li>
{{/each}}
</ul>
{{/if}}
</script> </script>
</head> </head>
......
...@@ -46,7 +46,9 @@ ...@@ -46,7 +46,9 @@
erp5_document, erp5_document,
result_list, result_list,
view_list, view_list,
action_list; workflow_list,
action_list,
inner_html;
return gadget.jio_getAttachment(options.jio_key, "links") return gadget.jio_getAttachment(options.jio_key, "links")
.push(function (result) { .push(function (result) {
...@@ -56,17 +58,32 @@ ...@@ -56,17 +58,32 @@
gadget.getUrlFor({command: 'change', options: {page: "breadcrumb"}}) gadget.getUrlFor({command: 'change', options: {page: "breadcrumb"}})
]; ];
erp5_document = result; erp5_document = result;
view_list = erp5_document._links.action_workflow || []; workflow_list = erp5_document._links.action_workflow || [];
action_list = erp5_document._links.action_object_action || []; action_list = erp5_document._links.action_object_action || [];
view_list = erp5_document._links.view;
if (view_list.constructor !== Array) { if (view_list.constructor !== Array) {
view_list = [view_list]; view_list = [view_list];
} }
if (workflow_list.constructor !== Array) {
workflow_list = [workflow_list];
}
if (action_list.constructor !== Array) { if (action_list.constructor !== Array) {
view_list = [view_list]; action_list = [action_list];
} }
promise_list.push(gadget.getUrlFor({command: 'change', options: {
for (i = 0; i < view_list.length; i += 1) { view: "view",
promise_list.push(gadget.getUrlFor({command: 'change', options: {view: view_list[i].href, page: undefined, editable: undefined}})); page: undefined,
editable: undefined
}}));
for (i = 0; i < view_list.length - 1; i += 1) {
promise_list.push(gadget.getUrlFor({command: 'change', options: {
view: view_list[i].href,
editable: true,
page: undefined
}}));
}
for (i = 0; i < workflow_list.length; i += 1) {
promise_list.push(gadget.getUrlFor({command: 'change', options: {view: workflow_list[i].href, page: undefined, editable: undefined}}));
} }
if (erp5_document._links.action_object_clone_action) { if (erp5_document._links.action_object_clone_action) {
action_list.push(erp5_document._links.action_object_clone_action); action_list.push(erp5_document._links.action_object_clone_action);
...@@ -77,34 +94,62 @@ ...@@ -77,34 +94,62 @@
return RSVP.all(promise_list); return RSVP.all(promise_list);
}) })
.push(function (all_result) { .push(function (all_result) {
var i, var i, j,
tab_list = [], tab_list = [],
workflow_action_list = [],
action_tab_list = []; action_tab_list = [];
result_list = all_result; result_list = all_result;
j = 3;
for (i = 0; i < view_list.length; i += 1) { for (i = 0; i < view_list.length - 1; i += 1) {
tab_list.push({ tab_list.push({
title: view_list[i].title, title: view_list[i].title,
link: all_result[i + 2], link: all_result[j],
i18n: view_list[i].title i18n: view_list[i].title
}); });
j += 1;
}
for (i = 0; i < workflow_list.length; i += 1) {
workflow_action_list.push({
title: workflow_list[i].title,
link: all_result[j],
i18n: workflow_list[i].title
});
j += 1;
} }
for (i = 0; i < action_list.length; i += 1) { for (i = 0; i < action_list.length; i += 1) {
action_tab_list.push({ action_tab_list.push({
title: action_list[i].title, title: action_list[i].title,
link: all_result[i + view_list.length + 2], link: all_result[j],
i18n: action_list[i].title i18n: action_list[i].title
}); });
j += 1;
} }
return gadget.translateHtml(table_template({ inner_html = table_template({
definition_title: "Views",
definition_i18n: "Views",
definition_icon: "eye",
documentlist: [{
title: view_list[0].title,
link: all_result[2]
}]
}) + table_template({
definition_title: "Editables",
definition_i18n: "Editables",
definition_icon: "edit",
documentlist: tab_list
}) + table_template({
definition_title: "Workflow Transitions", definition_title: "Workflow Transitions",
documentlist: tab_list, documentlist: workflow_action_list,
definition_i18n: "Workflow-Transitions", definition_i18n: "Workflow-Transitions",
section_i18n: "Actions", definition_icon: "random"
section_title: "Actions", }) + table_template({
action_tab_list: action_tab_list definition_title: "Actions",
})); definition_i18n: "Actions",
documentlist: action_tab_list,
definition_icon: "gear"
});
return gadget.translateHtml(inner_html);
}) })
.push(function (my_translated_html) { .push(function (my_translated_html) {
gadget.props.element.innerHTML = my_translated_html; gadget.props.element.innerHTML = my_translated_html;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment