mirror of
https://github.com/OCA/web.git
synced 2025-02-22 13:21:25 +02:00
[MIG] web_disable_export_group: Migration to 15.0
TT43531
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
/** @odoo-module **/
|
||||
/* Copyright 2016 Onestein
|
||||
Copyright 2018 Tecnativa - David Vidal
|
||||
Copyright 2021 Tecnativa - Alexandre Díaz
|
||||
Copyright 2022 Tecnativa - Víctor Martínez
|
||||
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). */
|
||||
import AbstractController from "web.AbstractController";
|
||||
import session from "web.session";
|
||||
|
||||
AbstractController.include({
|
||||
/**
|
||||
* @override
|
||||
*/
|
||||
is_action_enabled: function (action) {
|
||||
if (
|
||||
!session.is_superuser &&
|
||||
action &&
|
||||
action === "export_xlsx" &&
|
||||
!session.group_xlsx_export_data
|
||||
) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return this._super.apply(this, arguments);
|
||||
},
|
||||
});
|
||||
@@ -1,31 +0,0 @@
|
||||
/* Copyright 2016 Onestein
|
||||
Copyright 2018 Tecnativa - David Vidal
|
||||
Copyright 2021 Tecnativa - Alexandre Díaz
|
||||
Copyright 2022 Tecnativa - Víctor Martínez
|
||||
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). */
|
||||
odoo.define("web_disable_export_group.WebDisableExportGroupController", function (
|
||||
require
|
||||
) {
|
||||
"use strict";
|
||||
|
||||
const session = require("web.session");
|
||||
const AbstractController = require("web.AbstractController");
|
||||
|
||||
AbstractController.include({
|
||||
/**
|
||||
* @override
|
||||
*/
|
||||
is_action_enabled: function (action) {
|
||||
if (
|
||||
!session.is_superuser &&
|
||||
action &&
|
||||
action.startsWith("export_xlsx") &&
|
||||
!session.group_xlsx_export_data
|
||||
) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return this._super.apply(this, arguments);
|
||||
},
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,19 @@
|
||||
/** @odoo-module **/
|
||||
/* Copyright 2018 Tecnativa - David Vidal
|
||||
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). */
|
||||
import ListController from "web.ListController";
|
||||
import session from "web.session";
|
||||
|
||||
ListController.include({
|
||||
init() {
|
||||
this._super(...arguments);
|
||||
this.isExportXlsEnable = false;
|
||||
},
|
||||
async willStart() {
|
||||
const res = await this._super(...arguments);
|
||||
this.isExportXlsEnable = await session.user_has_group(
|
||||
"web_disable_export_group.group_export_xlsx_data"
|
||||
);
|
||||
return res;
|
||||
},
|
||||
});
|
||||
@@ -1,39 +0,0 @@
|
||||
/* Copyright 2020 Tecnativa - João Marques
|
||||
Copyright 2022 Tecnativa - Víctor Martínez
|
||||
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). */
|
||||
|
||||
odoo.define("web_disable_export_group.tour", function (require) {
|
||||
"use strict";
|
||||
|
||||
var tour = require("web_tour.tour");
|
||||
|
||||
tour.register(
|
||||
"export_tour_xlsx_button_ok",
|
||||
{
|
||||
test: true,
|
||||
url:
|
||||
"/web#model=ir.ui.view&view_type=list&cids=&action=base.action_ui_view",
|
||||
},
|
||||
[
|
||||
{
|
||||
content: "Check if 'Export all' button exists",
|
||||
trigger: ".o_list_buttons:has(.o_list_export_xlsx)",
|
||||
},
|
||||
]
|
||||
);
|
||||
tour.register(
|
||||
"export_tour_xlsx_button_ko",
|
||||
{
|
||||
test: true,
|
||||
url:
|
||||
"/web#model=ir.ui.view&view_type=list&cids=&action=base.action_ui_view",
|
||||
},
|
||||
[
|
||||
{
|
||||
content: "Check if 'Export all' button exists",
|
||||
trigger: ".o_list_buttons:not(:has(.o_list_export_xlsx))",
|
||||
},
|
||||
]
|
||||
);
|
||||
return {};
|
||||
});
|
||||
@@ -0,0 +1,33 @@
|
||||
/** @odoo-module **/
|
||||
/* Copyright 2020 Tecnativa - João Marques
|
||||
Copyright 2022 Tecnativa - Víctor Martínez
|
||||
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). */
|
||||
|
||||
import tour from "web_tour.tour";
|
||||
|
||||
tour.register(
|
||||
"export_tour_xlsx_button_ok",
|
||||
{
|
||||
test: true,
|
||||
url: "/web#model=ir.ui.view&view_type=list&cids=&action=base.action_ui_view",
|
||||
},
|
||||
[
|
||||
{
|
||||
content: "Check if 'Export all' button exists",
|
||||
trigger: ".o_list_buttons:has(.o_list_export_xlsx)",
|
||||
},
|
||||
]
|
||||
);
|
||||
tour.register(
|
||||
"export_tour_xlsx_button_ko",
|
||||
{
|
||||
test: true,
|
||||
url: "/web#model=ir.ui.view&view_type=list&cids=&action=base.action_ui_view",
|
||||
},
|
||||
[
|
||||
{
|
||||
content: "Check if 'Export all' button exists",
|
||||
trigger: ".o_list_buttons:not(:has(.o_list_export_xlsx))",
|
||||
},
|
||||
]
|
||||
);
|
||||
12
web_disable_export_group/static/src/xml/export_xls_views.xml
Normal file
12
web_disable_export_group/static/src/xml/export_xls_views.xml
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<templates>
|
||||
|
||||
<t t-extend="ListView.buttons">
|
||||
<t t-jquery="t[t-if*='widget.isExportEnable']" t-operation="attributes">
|
||||
<attribute
|
||||
name="t-if"
|
||||
>widget.is_action_enabled('export_xlsx') and widget.isExportXlsEnable</attribute>
|
||||
</t>
|
||||
</t>
|
||||
|
||||
</templates>
|
||||
Reference in New Issue
Block a user