diff --git a/app_odoo_customize/__manifest__.py b/app_odoo_customize/__manifest__.py index 493a3dea..754df405 100644 --- a/app_odoo_customize/__manifest__.py +++ b/app_odoo_customize/__manifest__.py @@ -73,9 +73,10 @@ 'app_odoo_customize/static/src/scss/dialog.scss', # todo: fix,使用 owl 的 service 'app_odoo_customize/static/src/js/user_menu.js', - # 'app_odoo_customize/static/src/js/ribbon.js', - # 'app_odoo_customize/static/src/js/dialog.js', - # 'app_odoo_customize/static/src/webclient/*.js', + 'app_odoo_customize/static/src/js/ribbon.esm.js', + # odoo 17内置窗口拖放, + 'app_odoo_customize/static/src/js/dialog.js', + 'app_odoo_customize/static/src/webclient/*.js', 'app_odoo_customize/static/src/webclient/*.xml', 'app_odoo_customize/static/src/xml/res_config_edition.xml', ], diff --git a/app_odoo_customize/static/description/banner.gif b/app_odoo_customize/static/description/banner.gif index fa09adee..3cd4d9e1 100644 Binary files a/app_odoo_customize/static/description/banner.gif and b/app_odoo_customize/static/description/banner.gif differ diff --git a/app_odoo_customize/static/description/banner.png b/app_odoo_customize/static/description/banner.png index 6bff8fd9..628d2ff2 100644 Binary files a/app_odoo_customize/static/description/banner.png and b/app_odoo_customize/static/description/banner.png differ diff --git a/app_odoo_customize/static/description/index.html b/app_odoo_customize/static/description/index.html index 78a1d44a..0fab14cc 100644 --- a/app_odoo_customize/static/description/index.html +++ b/app_odoo_customize/static/description/index.html @@ -20,7 +20,7 @@
-

This is a Long Term Support Apps.Update: v17.24.02.27

+

This is a Long Term Support Apps.Update: v17.24.03.01

  • 1. Deletes Odoo label in footer
  • @@ -299,6 +299,10 @@

    This is a Long Term Support Apps.

    +

    Update: v17.24.03.01

    +

    Add more function for odoo 17.Dialog, language switcher.

    +

    Update: v17.24.02.26

    +

    Fix bug for odoo 17 origin update.

    Update: v16.23.09.13

    UI enhance. follow odoo16 setup UI.

    46. Add Help documentation anywhere. easy get help for any odoo operation or action.

    diff --git a/app_odoo_customize/static/src/js/dialog.js b/app_odoo_customize/static/src/js/dialog.js index f38af2e4..a765de0e 100644 --- a/app_odoo_customize/static/src/js/dialog.js +++ b/app_odoo_customize/static/src/js/dialog.js @@ -4,21 +4,15 @@ import { Dialog } from "@web/core/dialog/dialog"; import { patch } from "@web/core/utils/patch"; import { session } from "@web/session"; -patch(Dialog.prototype, "app_odoo_customize.Dialog", { +patch(Dialog.prototype, { setup() { - this._super.apply(this, arguments); - const app_system_name = session.app_system_name || "odooApp"; + super.setup(); + const app_system_name = session.app_system_name || "odooAi"; this.title = app_system_name; - owl.onMounted(() => { - this.setDrag(); - }); - }, - setDrag() { - var $dl = $('#' + this.id + ' .modal-dialog .modal-content'); - if ($dl) - $dl.draggable({ - handle: ".modal-header" - }); + //odoo17 已内置 窗口可拖放 + // owl.onMounted(() => { + // this.setDrag(); + // }); }, }); diff --git a/app_odoo_customize/static/src/js/ribbon.esm.js b/app_odoo_customize/static/src/js/ribbon.esm.js new file mode 100644 index 00000000..61eb8dc6 --- /dev/null +++ b/app_odoo_customize/static/src/js/ribbon.esm.js @@ -0,0 +1,68 @@ +/** @odoo-module **/ + +import {Component, xml} from "@odoo/owl"; +import {useBus, useService} from "@web/core/utils/hooks"; +import {registry} from "@web/core/registry"; + +export class WebEnvironmentRibbon extends Component { + setup() { + this.orm = useService("orm"); + useBus(this.env.bus, "WEB_CLIENT_READY", this.showRibbon.bind(this)); + } + + // Code from: http://jsfiddle.net/WK_of_Angmar/xgA5C/ + validStrColour(strToTest) { + if (strToTest === "") { + return false; + } + if (strToTest === "inherit") { + return true; + } + if (strToTest === "transparent") { + return true; + } + const image = document.createElement("img"); + image.style.color = "rgb(0, 0, 0)"; + image.style.color = strToTest; + if (image.style.color !== "rgb(0, 0, 0)") { + return true; + } + image.style.color = "rgb(255, 255, 255)"; + image.style.color = strToTest; + return image.style.color !== "rgb(255, 255, 255)"; + } + + showRibbon() { + const ribbon = $(".test-ribbon"); + const self = this; + ribbon.hide(); + // Get ribbon data from backend + self.orm + .call("web.environment.ribbon.backend", "get_environment_ribbon") + .then(function (ribbon_data) { + // Ribbon name + if (ribbon_data.name && ribbon_data.name !== "False") { + ribbon.show(); + ribbon.html(ribbon_data.name); + } + // Ribbon color + if (ribbon_data.color && self.validStrColour(ribbon_data.color)) { + ribbon.css("color", ribbon_data.color); + } + // Ribbon background color + if ( + ribbon_data.background_color && + self.validStrColour(ribbon_data.background_color) + ) { + ribbon.css("background-color", ribbon_data.background_color); + } + }); + } +} + +WebEnvironmentRibbon.props = {}; +WebEnvironmentRibbon.template = xml`
    `; + +registry.category("main_components").add("WebEnvironmentRibbon", { + Component: WebEnvironmentRibbon, +}); diff --git a/app_odoo_customize/static/src/js/ribbon.js b/app_odoo_customize/static/src/js/ribbon.js deleted file mode 100644 index 67a45712..00000000 --- a/app_odoo_customize/static/src/js/ribbon.js +++ /dev/null @@ -1,62 +0,0 @@ -/* Copyright 2015 Sylvain Calador - Copyright 2015 Javi Melendez - Copyright 2016 Antonio Espinosa - Copyright 2017 Thomas Binsfeld - Copyright 2017 Xavier Jiménez - License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */ - -odoo.define("web_environment_ribbon.ribbon", function (require) { - "use strict"; - var rpc = require("web.rpc"); - var core = require("web.core"); - - // Code from: http://jsfiddle.net/WK_of_Angmar/xgA5C/ - function validStrColour(strToTest) { - if (strToTest === "") { - return false; - } - if (strToTest === "inherit") { - return true; - } - if (strToTest === "transparent") { - return true; - } - var image = document.createElement("img"); - image.style.color = "rgb(0, 0, 0)"; - image.style.color = strToTest; - if (image.style.color !== "rgb(0, 0, 0)") { - return true; - } - image.style.color = "rgb(255, 255, 255)"; - image.style.color = strToTest; - return image.style.color !== "rgb(255, 255, 255)"; - } - - core.bus.on("web_client_ready", null, function () { - var ribbon = $('