web-ribbon v17 added for testing
This commit is contained in:
@@ -1,20 +1,20 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.15.1: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils: https://docutils.sourceforge.io/" />
|
||||
<title>Web Environment Ribbon</title>
|
||||
<style type="text/css">
|
||||
|
||||
/*
|
||||
:Author: David Goodger (goodger@python.org)
|
||||
:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $
|
||||
:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $
|
||||
:Copyright: This stylesheet has been placed in the public domain.
|
||||
|
||||
Default cascading style sheet for the HTML output of Docutils.
|
||||
|
||||
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
|
||||
See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
|
||||
customize this style sheet.
|
||||
*/
|
||||
|
||||
@@ -366,60 +366,64 @@ ul.auto-toc {
|
||||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
!! This file is generated by oca-gen-addon-readme !!
|
||||
!! changes will be overwritten. !!
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
!! source digest: sha256:633699dce7538787594626fb371be0a97de6e53505ea986d27b7e1faafb870ff
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||
<p><a class="reference external" 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" 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" href="https://github.com/OCA/web/tree/15.0/web_environment_ribbon"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/web-15-0/web-15-0-web_environment_ribbon"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/162/15.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
|
||||
<p>Mark a Test Environment with a red ribbon on the top left corner in every page</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_environment_ribbon"><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_environment_ribbon"><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&target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
|
||||
<p>Mark a Test Environment with a red ribbon on the top left corner in
|
||||
every page</p>
|
||||
<p><strong>Table of contents</strong></p>
|
||||
<div class="contents local topic" id="contents">
|
||||
<ul class="simple">
|
||||
<li><a class="reference internal" href="#configuration" id="id1">Configuration</a></li>
|
||||
<li><a class="reference internal" href="#usage" id="id2">Usage</a></li>
|
||||
<li><a class="reference internal" href="#bug-tracker" id="id3">Bug Tracker</a></li>
|
||||
<li><a class="reference internal" href="#credits" id="id4">Credits</a><ul>
|
||||
<li><a class="reference internal" href="#authors" id="id5">Authors</a></li>
|
||||
<li><a class="reference internal" href="#contributors" id="id6">Contributors</a></li>
|
||||
<li><a class="reference internal" href="#maintainers" id="id7">Maintainers</a></li>
|
||||
<li><a class="reference internal" href="#configuration" id="toc-entry-1">Configuration</a></li>
|
||||
<li><a class="reference internal" href="#usage" id="toc-entry-2">Usage</a></li>
|
||||
<li><a class="reference internal" href="#bug-tracker" id="toc-entry-3">Bug Tracker</a></li>
|
||||
<li><a class="reference internal" href="#credits" id="toc-entry-4">Credits</a><ul>
|
||||
<li><a class="reference internal" href="#authors" id="toc-entry-5">Authors</a></li>
|
||||
<li><a class="reference internal" href="#contributors" id="toc-entry-6">Contributors</a></li>
|
||||
<li><a class="reference internal" href="#maintainers" id="toc-entry-7">Maintainers</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="configuration">
|
||||
<h1><a class="toc-backref" href="#id1">Configuration</a></h1>
|
||||
<h1><a class="toc-backref" href="#toc-entry-1">Configuration</a></h1>
|
||||
<ul class="simple">
|
||||
<li>You can change the ribbon’s name (“TEST”) by editing the default system
|
||||
parameter “ribbon.name” (in the menu Settings > Parameters > System
|
||||
Parameters) To hide the ribbon, set this parameter to “False” or delete it.</li>
|
||||
<li>You can customize the ribbon color and background color through system
|
||||
parameters: “ribbon.color”, “ribbon.background.color”. Fill with valid CSS
|
||||
colors or just set to “False” to use default values.</li>
|
||||
<li>You can add the database name in the ribbon by adding “{db_name}” in the
|
||||
system parameter “ribbon.name”.</li>
|
||||
<li>You can change the ribbon’s name (“TEST”) by editing the default
|
||||
system parameter “ribbon.name” (in the menu Settings > Parameters >
|
||||
System Parameters) To hide the ribbon, set this parameter to “False”
|
||||
or delete it.</li>
|
||||
<li>You can customize the ribbon color and background color through
|
||||
system parameters: “ribbon.color”, “ribbon.background.color”. Fill
|
||||
with valid CSS colors or just set to “False” to use default values.</li>
|
||||
<li>You can add the database name in the ribbon by adding “{db_name}” in
|
||||
the system parameter “ribbon.name”.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="usage">
|
||||
<h1><a class="toc-backref" href="#id2">Usage</a></h1>
|
||||
<p>To use this module, you need only to install it. After installation, a red
|
||||
ribbon will be visible on top left corner of every Odoo backend page</p>
|
||||
<h1><a class="toc-backref" href="#toc-entry-2">Usage</a></h1>
|
||||
<p>To use this module, you need only to install it. After installation, a
|
||||
red ribbon will be visible on top left corner of every Odoo backend page</p>
|
||||
</div>
|
||||
<div class="section" id="bug-tracker">
|
||||
<h1><a class="toc-backref" href="#id3">Bug Tracker</a></h1>
|
||||
<h1><a class="toc-backref" href="#toc-entry-3">Bug Tracker</a></h1>
|
||||
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/web/issues">GitHub Issues</a>.
|
||||
In case of trouble, please check there if your issue has already been reported.
|
||||
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
||||
<a class="reference external" href="https://github.com/OCA/web/issues/new?body=module:%20web_environment_ribbon%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
||||
If you spotted it first, help us to smash it by providing a detailed and welcomed
|
||||
<a class="reference external" href="https://github.com/OCA/web/issues/new?body=module:%20web_environment_ribbon%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
||||
<p>Do not contact contributors directly about support or help with technical issues.</p>
|
||||
</div>
|
||||
<div class="section" id="credits">
|
||||
<h1><a class="toc-backref" href="#id4">Credits</a></h1>
|
||||
<h1><a class="toc-backref" href="#toc-entry-4">Credits</a></h1>
|
||||
<div class="section" id="authors">
|
||||
<h2><a class="toc-backref" href="#id5">Authors</a></h2>
|
||||
<h2><a class="toc-backref" href="#toc-entry-5">Authors</a></h2>
|
||||
<ul class="simple">
|
||||
<li>Francesco OpenCode Apruzzese</li>
|
||||
<li>Tecnativa</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="contributors">
|
||||
<h2><a class="toc-backref" href="#id6">Contributors</a></h2>
|
||||
<h2><a class="toc-backref" href="#toc-entry-6">Contributors</a></h2>
|
||||
<ul class="simple">
|
||||
<li>Francesco Apruzzese <<a class="reference external" href="mailto:cescoap@gmail.com">cescoap@gmail.com</a>></li>
|
||||
<li>Javi Melendez <<a class="reference external" href="mailto:javimelex@gmail.com">javimelex@gmail.com</a>></li>
|
||||
@@ -431,13 +435,13 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="maintainers">
|
||||
<h2><a class="toc-backref" href="#id7">Maintainers</a></h2>
|
||||
<h2><a class="toc-backref" href="#toc-entry-7">Maintainers</a></h2>
|
||||
<p>This module is maintained by the OCA.</p>
|
||||
<a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
|
||||
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
|
||||
mission is to support the collaborative development of Odoo features and
|
||||
promote its widespread use.</p>
|
||||
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/web/tree/15.0/web_environment_ribbon">OCA/web</a> project on GitHub.</p>
|
||||
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/web/tree/17.0/web_environment_ribbon">OCA/web</a> project on GitHub.</p>
|
||||
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
-7
@@ -27,10 +27,3 @@
|
||||
.test-ribbon b {
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
header:hover ~ .test-ribbon,
|
||||
nav:hover ~ .test-ribbon {
|
||||
/* Ease out ribbon when user is using the navigation in Odoo */
|
||||
opacity: 0;
|
||||
transition: 0.2s ease;
|
||||
}
|
||||
@@ -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`<div class="test-ribbon" />`;
|
||||
|
||||
registry.category("main_components").add("WebEnvironmentRibbon", {
|
||||
Component: WebEnvironmentRibbon,
|
||||
});
|
||||
@@ -1,62 +0,0 @@
|
||||
/* Copyright 2015 Sylvain Calador <sylvain.calador@akretion.com>
|
||||
Copyright 2015 Javi Melendez <javi.melendez@algios.com>
|
||||
Copyright 2016 Antonio Espinosa <antonio.espinosa@tecnativa.com>
|
||||
Copyright 2017 Thomas Binsfeld <thomas.binsfeld@acsone.eu>
|
||||
Copyright 2017 Xavier Jiménez <xavier.jimenez@qubiq.es>
|
||||
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 = $('<div class="test-ribbon hidden"/>');
|
||||
$("body").append(ribbon);
|
||||
ribbon.hide();
|
||||
// Get ribbon data from backend
|
||||
rpc.query({
|
||||
model: "web.environment.ribbon.backend",
|
||||
method: "get_environment_ribbon",
|
||||
}).then(function (ribbon_data) {
|
||||
// Ribbon name
|
||||
if (ribbon_data.name && ribbon_data.name !== "False") {
|
||||
ribbon.html(ribbon_data.name);
|
||||
ribbon.show();
|
||||
}
|
||||
// Ribbon color
|
||||
if (ribbon_data.color && validStrColour(ribbon_data.color)) {
|
||||
ribbon.css("color", ribbon_data.color);
|
||||
}
|
||||
// Ribbon background color
|
||||
if (
|
||||
ribbon_data.background_color &&
|
||||
validStrColour(ribbon_data.background_color)
|
||||
) {
|
||||
ribbon.css("background-color", ribbon_data.background_color);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user