[MIG] web_group_expand: migrate to V17

pull/3085/head
andrea 2024-06-27 21:55:05 +02:00 committed by Christopher Rogos
parent 5dfe4819db
commit 88eaec5ab9
6 changed files with 30 additions and 15 deletions

View File

@ -7,7 +7,7 @@ Group Expand Buttons
!! This file is generated by oca-gen-addon-readme !! !! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !! !! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:0fb42d09f0995520749d0cb55db14e5ed47e9e037598f2a9ac9e5534887e0666 !! source digest: sha256:b5fde9f965d20bdbf8c43c31517883b9d540f190b20715d4a86e09a7b8a774ad
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@ -73,6 +73,9 @@ Contributors
- Manuel Calero <manuelcalerosolis@gmail.com> - Manuel Calero <manuelcalerosolis@gmail.com>
- Alvaro Estebanez (brain-tec AG) <alvaro.estebanez@bt-group.com> - Alvaro Estebanez (brain-tec AG) <alvaro.estebanez@bt-group.com>
- Mayank Patel <mayankpatel3555@gmail.com> - Mayank Patel <mayankpatel3555@gmail.com>
- `360ERP <https://www.360erp.com>`__:
- Andrea Stirpe
Maintainers Maintainers
----------- -----------

View File

@ -1,7 +1,7 @@
{ {
"name": "Group Expand Buttons", "name": "Group Expand Buttons",
"category": "Web", "category": "Web",
"version": "16.0.1.0.0", "version": "17.0.1.0.0",
"license": "AGPL-3", "license": "AGPL-3",
"author": "OpenERP SA, " "author": "OpenERP SA, "
"AvanzOSC, " "AvanzOSC, "

View File

@ -4,7 +4,7 @@
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Odoo Server 16.0\n" "Project-Id-Version: Odoo Server 17.0\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
@ -16,6 +16,7 @@ msgstr ""
#. module: web_group_expand #. module: web_group_expand
#. odoo-javascript #. odoo-javascript
#: code:addons/web_group_expand/static/src/xml/list_controller.xml:0 #: code:addons/web_group_expand/static/src/xml/list_controller.xml:0
#: code:addons/web_group_expand/static/src/xml/list_controller.xml:0
#, python-format #, python-format
msgid "Compress" msgid "Compress"
msgstr "" msgstr ""
@ -23,6 +24,7 @@ msgstr ""
#. module: web_group_expand #. module: web_group_expand
#. odoo-javascript #. odoo-javascript
#: code:addons/web_group_expand/static/src/xml/list_controller.xml:0 #: code:addons/web_group_expand/static/src/xml/list_controller.xml:0
#: code:addons/web_group_expand/static/src/xml/list_controller.xml:0
#, python-format #, python-format
msgid "Expand" msgid "Expand"
msgstr "" msgstr ""

View File

@ -6,3 +6,5 @@
- Manuel Calero \<<manuelcalerosolis@gmail.com>\> - Manuel Calero \<<manuelcalerosolis@gmail.com>\>
- Alvaro Estebanez (brain-tec AG) \<<alvaro.estebanez@bt-group.com>\> - Alvaro Estebanez (brain-tec AG) \<<alvaro.estebanez@bt-group.com>\>
- Mayank Patel \<<mayankpatel3555@gmail.com>\> - Mayank Patel \<<mayankpatel3555@gmail.com>\>
- [360ERP](https://www.360erp.com):
- Andrea Stirpe

View File

@ -366,7 +366,7 @@ ul.auto-toc {
!! This file is generated by oca-gen-addon-readme !! !! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !! !! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:0fb42d09f0995520749d0cb55db14e5ed47e9e037598f2a9ac9e5534887e0666 !! source digest: sha256:b5fde9f965d20bdbf8c43c31517883b9d540f190b20715d4a86e09a7b8a774ad
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/web/tree/17.0/web_group_expand"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/web-17-0/web-17-0-web_group_expand"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/web&amp;target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p> <p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/web/tree/17.0/web_group_expand"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/web-17-0/web-17-0-web_group_expand"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/web&amp;target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p>When grouping a list by a field, this module adds two buttons to expand <p>When grouping a list by a field, this module adds two buttons to expand
@ -416,6 +416,10 @@ If you spotted it first, help us to smash it by providing a detailed and welcome
<li>Manuel Calero &lt;<a class="reference external" href="mailto:manuelcalerosolis&#64;gmail.com">manuelcalerosolis&#64;gmail.com</a>&gt;</li> <li>Manuel Calero &lt;<a class="reference external" href="mailto:manuelcalerosolis&#64;gmail.com">manuelcalerosolis&#64;gmail.com</a>&gt;</li>
<li>Alvaro Estebanez (brain-tec AG) &lt;<a class="reference external" href="mailto:alvaro.estebanez&#64;bt-group.com">alvaro.estebanez&#64;bt-group.com</a>&gt;</li> <li>Alvaro Estebanez (brain-tec AG) &lt;<a class="reference external" href="mailto:alvaro.estebanez&#64;bt-group.com">alvaro.estebanez&#64;bt-group.com</a>&gt;</li>
<li>Mayank Patel &lt;<a class="reference external" href="mailto:mayankpatel3555&#64;gmail.com">mayankpatel3555&#64;gmail.com</a>&gt;</li> <li>Mayank Patel &lt;<a class="reference external" href="mailto:mayankpatel3555&#64;gmail.com">mayankpatel3555&#64;gmail.com</a>&gt;</li>
<li><a class="reference external" href="https://www.360erp.com">360ERP</a>:<ul>
<li>Andrea Stirpe</li>
</ul>
</li>
</ul> </ul>
</div> </div>
<div class="section" id="maintainers"> <div class="section" id="maintainers">

View File

@ -3,28 +3,33 @@
import {patch} from "@web/core/utils/patch"; import {patch} from "@web/core/utils/patch";
import {ListController} from "@web/views/list/list_controller"; import {ListController} from "@web/views/list/list_controller";
patch(ListController.prototype, "web_group_expand.ListController", { function flatten(arr) {
return arr.reduce((flat, toFlatten) => {
return flat.concat(Array.isArray(toFlatten) ? flatten(toFlatten) : toFlatten);
}, []);
}
patch(ListController.prototype, {
async expandAllGroups() { async expandAllGroups() {
// We expand layer by layer. So first we need to find the highest // We expand layer by layer. So first we need to find the highest
// layer that's not already fully expanded. // layer that's not already fully expanded.
let layer = this.model.root.groups; let layer = this.model.root.groups;
while (layer.length) { while (layer.length) {
const closed = layer.filter(function (group) { const closed = layer.filter(function (group) {
return group.isFolded; return group._config.isFolded;
}); });
if (closed.length) { if (closed.length) {
// This layer is not completely expanded, expand it // This layer is not completely expanded, expand it
await layer.forEach((group) => { await layer.forEach((group) => {
group.isFolded = false; group._config.isFolded = false;
}); });
break; break;
} }
// This layer is completely expanded, move to the next // This layer is completely expanded, move to the next
layer = _.flatten( layer = flatten(
layer.map(function (group) { layer.map(function (group) {
return group.list.groups || []; return group.list.groups || [];
}), })
true
); );
} }
await this.model.root.load(); await this.model.root.load();
@ -36,18 +41,17 @@ patch(ListController.prototype, "web_group_expand.ListController", {
// layer that's not already fully collapsed. // layer that's not already fully collapsed.
let layer = this.model.root.groups; let layer = this.model.root.groups;
while (layer.length) { while (layer.length) {
const next = _.flatten( const next = flatten(
layer.map(function (group) { layer.map(function (group) {
return group.list.groups || []; return group.list.groups || [];
}), })
true
).filter(function (group) { ).filter(function (group) {
return !group.isFolded; return !group._config.isFolded;
}); });
if (!next.length) { if (!next.length) {
// Next layer is fully collapsed, so collapse this one // Next layer is fully collapsed, so collapse this one
await layer.forEach((group) => { await layer.forEach((group) => {
group.isFolded = true; group._config.isFolded = true;
}); });
break; break;
} }