Commit c5a2a785 authored by Xiaowu Zhang's avatar Xiaowu Zhang

erp5_web_renderjs_ui: add select&unselect all in listbox

add test later
parent 10906f77
...@@ -159,11 +159,25 @@ ...@@ -159,11 +159,25 @@
i, i,
result_list = [], result_list = [],
icon; icon;
result_list.push({ return this.getTranslationList(['Select All', 'Unselect All', 'Copy'])
title: 'Copy', .push(function (translation_list) {
result_list = [
{
title: translation_list[0],
icon: 'check-square-o',
action: 'select_all_document_list'
},
{
title: translation_list[1],
icon: 'ban',
action: 'unselect_all_document_list'
},
{
title: translation_list[2],
icon: 'copy', icon: 'copy',
action: 'copy_document_list' action: 'copy_document_list'
}); }
];
for (i = 0; i < action_list.length; i += 1) { for (i = 0; i < action_list.length; i += 1) {
if (action_list[i].name === 'delete_document_list') { if (action_list[i].name === 'delete_document_list') {
icon = 'trash-o'; icon = 'trash-o';
...@@ -179,6 +193,7 @@ ...@@ -179,6 +193,7 @@
}); });
} }
return result_list; return result_list;
});
} }
function createSearchQuery(checked_uid_list, key) { function createSearchQuery(checked_uid_list, key) {
...@@ -219,15 +234,16 @@ ...@@ -219,15 +234,16 @@
unchecked_uid_list = argument_list[2], unchecked_uid_list = argument_list[2],
view, view,
i, i,
select_attribute,
all_hide_element_list,
queue; queue;
if (checked_uid_list.length === 0) { if (checked_uid_list.length === 0) {
// If nothing is checked, use all unchecked values (same as xhtml style) // If nothing is checked, use all unchecked values (same as xhtml style)
checked_uid_list = unchecked_uid_list; checked_uid_list = unchecked_uid_list;
} }
if ((action_name !== 'copy_document_list') && (action_name !== 'select_all_document_list') && (action_name !== 'unselect_all_document_list')) {
if (action_name !== 'copy_document_list') { // Copy, select all, un select all actions are only done on javascript side
// Copy action is only done on javascript side
for (i = 0; i < action_list.length; i += 1) { for (i = 0; i < action_list.length; i += 1) {
if (action_name === action_list[i].name) { if (action_name === action_list[i].name) {
view = action_list[i].href; view = action_list[i].href;
...@@ -262,7 +278,17 @@ ...@@ -262,7 +278,17 @@
"message": "Nothing selected" "message": "Nothing selected"
}); });
} }
if ((action_name === 'select_all_document_list') || (action_name === 'unselect_all_document_list')) {
all_hide_element_list = gadget.element.querySelectorAll(".hide_element");
select_attribute = (action_name === 'select_all_document_list' ? true : false);
for (i = 0; i < all_hide_element_list.length; i += 1) {
all_hide_element_list[i].checked = select_attribute;
}
return notifyTranslatedMessage(gadget, {
"message": (action_name === 'select_all_document_list' ? 'Selected' : 'Unselected'),
"status": "success"
});
}
if (action_name === 'copy_document_list') { if (action_name === 'copy_document_list') {
return gadget.setSettingClipboardAction('clipboard', checked_uid_list) return gadget.setSettingClipboardAction('clipboard', checked_uid_list)
.push(function () { .push(function () {
......
...@@ -234,7 +234,7 @@ ...@@ -234,7 +234,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>979.58035.58376.38417</string> </value> <value> <string>984.64003.17482.44305</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -252,7 +252,7 @@ ...@@ -252,7 +252,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1574157261.21</float> <float>1593681243.48</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -14,6 +14,9 @@ ...@@ -14,6 +14,9 @@
data-i18n=Reset data-i18n=Reset
data-i18n=Previous data-i18n=Previous
data-i18n=Next data-i18n=Next
data-i18n=Copy
data-i18n=Select All
data-i18n=Unselect All
--> -->
<meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width" /> <meta name="viewport" content="width=device-width" />
......
...@@ -152,11 +152,13 @@ ...@@ -152,11 +152,13 @@
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
<pickle> <pickle>
<tuple> <dictionary>
<none/> <item>
<key> <string>_log</string> </key>
<value>
<list> <list>
<dictionary> <dictionary>
<item> <item>
...@@ -200,16 +202,20 @@ ...@@ -200,16 +202,20 @@
</item> </item>
</dictionary> </dictionary>
</list> </list>
</tuple> </value>
</item>
</dictionary>
</pickle> </pickle>
</record> </record>
<record id="4" aka="AAAAAAAAAAQ="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
<pickle> <pickle>
<tuple> <dictionary>
<none/> <item>
<key> <string>_log</string> </key>
<value>
<list> <list>
<dictionary> <dictionary>
<item> <item>
...@@ -232,7 +238,7 @@ ...@@ -232,7 +238,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>972.60114.22488.50688</string> </value> <value> <string>984.39653.64795.20104</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -250,7 +256,7 @@ ...@@ -250,7 +256,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1547457320.7</float> <float>1593680987.57</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -259,16 +265,20 @@ ...@@ -259,16 +265,20 @@
</item> </item>
</dictionary> </dictionary>
</list> </list>
</tuple> </value>
</item>
</dictionary>
</pickle> </pickle>
</record> </record>
<record id="5" aka="AAAAAAAAAAU="> <record id="5" aka="AAAAAAAAAAU=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
<pickle> <pickle>
<tuple> <dictionary>
<none/> <item>
<key> <string>_log</string> </key>
<value>
<list> <list>
<dictionary> <dictionary>
<item> <item>
...@@ -316,7 +326,9 @@ ...@@ -316,7 +326,9 @@
</item> </item>
</dictionary> </dictionary>
</list> </list>
</tuple> </value>
</item>
</dictionary>
</pickle> </pickle>
</record> </record>
</ZopeData> </ZopeData>
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