Public release from ruodoo-project: 19.0 - 2026-05-10 21:19:01 UTC
BIN
web_debranding/static/description/Group.png
Normal file
|
After Width: | Height: | Size: 101 KiB |
BIN
web_debranding/static/description/Group2.png
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
web_debranding/static/description/Group3.png
Normal file
|
After Width: | Height: | Size: 158 KiB |
BIN
web_debranding/static/description/Group4.png
Normal file
|
After Width: | Height: | Size: 132 KiB |
BIN
web_debranding/static/description/Group5.png
Normal file
|
After Width: | Height: | Size: 138 KiB |
BIN
web_debranding/static/description/Group6.png
Normal file
|
After Width: | Height: | Size: 194 KiB |
BIN
web_debranding/static/description/icon.png
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
168
web_debranding/static/description/index.html
Normal file
@ -0,0 +1,168 @@
|
||||
|
||||
<section class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-offset-1 col-md-8 mb64 mt64">
|
||||
<div class="">
|
||||
<h2 class="display-3">Backend debranding</h2>
|
||||
<h4 class="text-default">Build and enhance your Brand by removing references to <a href="https://www.odoo.com/"> odoo.com </a></h4>
|
||||
<p class="text-default mt16">Version: v<b>17.0</b>.3.0.0</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3 text-right">
|
||||
<p>
|
||||
<img src="https://itpp.dev/images/favicon.png"/>
|
||||
<br/>Tested and maintained by
|
||||
<br/><b>IT Projects Labs</b>
|
||||
<br/>Assistance: <a href="mailto:apps@itpp.dev">apps@itpp.dev</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<section class="oe_container">
|
||||
<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
|
||||
<div class="carousel-inner">
|
||||
<div class="carousel-item active">
|
||||
<img class="d-block w-100" src="Group.png" alt="First slide" />
|
||||
</div>
|
||||
<div class="carousel-item">
|
||||
<img class="d-block w-100" src="Group2.png" alt="Second slide" />
|
||||
</div>
|
||||
<div class="carousel-item">
|
||||
<img class="d-block w-100" src="Group3.png" alt="Third slide" />
|
||||
</div>
|
||||
<div class="carousel-item">
|
||||
<img class="d-block w-100" src="Group4.png" alt="Forth slide" />
|
||||
</div>
|
||||
<div class="carousel-item">
|
||||
<img class="d-block w-100" src="Group5.png" alt="Fiveth slide" />
|
||||
</div>
|
||||
<div class="carousel-item">
|
||||
<img class="d-block w-100" src="Group6.png" alt="Sixth slide" />
|
||||
</div>
|
||||
</div>
|
||||
<a
|
||||
class="carousel-control-prev"
|
||||
href="#carouselExampleIndicators"
|
||||
role="button"
|
||||
data-slide="prev"
|
||||
>
|
||||
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
|
||||
<span class="sr-only">Previous</span>
|
||||
</a>
|
||||
<a
|
||||
class="carousel-control-next"
|
||||
href="#carouselExampleIndicators"
|
||||
role="button"
|
||||
data-slide="next"
|
||||
>
|
||||
<span class="carousel-control-next-icon" aria-hidden="true"></span>
|
||||
<span class="sr-only">Next</span>
|
||||
</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="oe_container">
|
||||
<div class="oe_row oe_spaced">
|
||||
<div class="oe_span12">
|
||||
<ol>
|
||||
<li>Replaces "Odoo" in page title</li>
|
||||
<li>
|
||||
Deletes Documentation, Support, About links from the top right-hand User Menu.
|
||||
</li>
|
||||
<li>Replaces "Odoo" in Dialog Box</li>
|
||||
<li>Replaces "Odoo" in all strings marked for translation</li>
|
||||
<li>Replaces "odoo.com" in hints, examples, etc.</li>
|
||||
<li>Hides Enterprise features in Settings</li>
|
||||
<li>
|
||||
Replaces links to
|
||||
<a href="https://www.odoo.com/documentation"> documentation </a> (e.g. "Help"
|
||||
in Import tool, "How-to" in paypal, etc.) to custom website
|
||||
</li>
|
||||
<li>Deletes Google Play, Apps Store links</li>
|
||||
<li>Deletes "Powered by Odoo" in Website (when installed)</li>
|
||||
<li>
|
||||
Disables server requests to odoo.com (publisher_warranty_url) - optional.
|
||||
Works only for non-enterprise versions of odoo
|
||||
</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
<section class="container text-center">
|
||||
<div class="mt-4 mb-3">
|
||||
<h2>Let our expertise work for you!</h2>
|
||||
<h4 class="d-none d-md-block">(Doors and windows below are clickable)</h4>
|
||||
<div class="mb32 d-md-none">
|
||||
<ul class="list-unstyled">
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/browse?repo_maintainer_id=59928">All modules</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/browse?price=Free&order=Downloads&repo_maintainer_id=59928">Free Modules</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/modules/category/Point%20of%20Sale/browse?repo_maintainer_id=59928">All POS modules</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/modules/category/Discuss/browse?repo_maintainer_id=59928">All Mail modules</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/modules/category/Website/browse?repo_maintainer_id=59928">All Website modules</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/modules/category/eCommerce/browse?repo_maintainer_id=59928">All eCommerce modules</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/modules/browse?search=sync+studio&repo_maintainer_id=59928">Sync Studio</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/modules/14.0/openapi/">REST API</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/modules/14.0/base_automation_webhook/">Webhooks</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/modules/14.0/pos_product_available/">POS: show product qty</a></li>
|
||||
<li><a target="_blank" href="https://apps.odoo.com/apps/modules/14.0/web_login_background/">Web Login Background</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="mb64 d-none d-xl-block">
|
||||
<img class="img img-responsive" src="https://itpp.dev/images/apps/;-)/itpp-labs-1100.jpg" usemap="#itpp-xl" />
|
||||
<map name="itpp-xl">
|
||||
<area alt="Free Modules" target="_blank" href="https://apps.odoo.com/apps/browse?price=Free&order=Downloads&repo_maintainer_id=59928" shape="rect" class="" coords="900,220,1080,625" />
|
||||
<area alt="Sync Studio" target="_blank" href="https://apps.odoo.com/apps/modules/browse?search=sync+studio&repo_maintainer_id=59928" shape="rect" class="" coords="552,186,721,274" />
|
||||
<area alt="REST API" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/openapi/" shape="rect" class="" coords="646,279,720,365" />
|
||||
<area alt="Webhooks" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/base_automation_webhook/" shape="rect" class="" coords="646,370,720,458" />
|
||||
<area alt="POS: show product qty" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/pos_product_available/" shape="rect" class="" coords="82,373,251,459" />
|
||||
<area alt="All modules" target="_blank" href="https://apps.odoo.com/apps/browse?repo_maintainer_id=59928" shape="rect" class="" coords="326,267,381,456" />
|
||||
<area alt="All POS modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/Point%20of%20Sale/browse?repo_maintainer_id=59928" shape="rect" class="" coords="82,191,154,276" />
|
||||
<area alt="All Mail modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/Discuss/browse?repo_maintainer_id=59928" shape="rect" class="" coords="82,282,155,368" />
|
||||
<area alt="All Website modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/Website/browse?repo_maintainer_id=59928" shape="rect" class="" coords="176,282,250,368" />
|
||||
<area alt="All eCommerce modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/eCommerce/browse?repo_maintainer_id=59928" shape="rect" class="" coords="175,189,250,275" />
|
||||
<area alt="Ivan Yelizariev" target="_blank" href="https://apps.odoo.com/apps/modules/browse?search=Ivan+Yelizariev&repo_maintainer_id=59928" shape="rect" class="" coords="554,280,625,456" />
|
||||
<area alt="Web Login Background" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/web_login_background/" shape="rect" class="" coords="420,267,477,456" />
|
||||
</map>
|
||||
</div>
|
||||
<div class="mb64 d-none d-lg-block d-xl-none">
|
||||
<img class="img img-responsive" src="https://itpp.dev/images/apps/;-)/itpp-labs-930.jpg" usemap="#itpp-lg" />
|
||||
<map name="itpp-lg">
|
||||
<area alt="Free Modules" target="_blank" href="https://apps.odoo.com/apps/browse?price=Free&order=Downloads&repo_maintainer_id=59928" shape="rect" class="" coords="760,186,913,528" />
|
||||
<area alt="Sync Studio" target="_blank" href="https://apps.odoo.com/apps/modules/browse?search=sync+studio&repo_maintainer_id=59928" shape="rect" class="" coords="466,157,609,231" />
|
||||
<area alt="REST API" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/openapi/" shape="rect" class="" coords="546,235,608,308" />
|
||||
<area alt="Webhooks" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/base_automation_webhook/" shape="rect" class="" coords="546,312,608,387" />
|
||||
<area alt="POS: show product qty" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/pos_product_available/" shape="rect" class="" coords="69,315,212,388" />
|
||||
<area alt="All modules" target="_blank" href="https://apps.odoo.com/apps/browse?repo_maintainer_id=59928" shape="rect" class="" coords="275,225,322,385" />
|
||||
<area alt="All POS modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/Point%20of%20Sale/browse?repo_maintainer_id=59928" shape="rect" class="" coords="69,161,130,233" />
|
||||
<area alt="All Mail modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/Discuss/browse?repo_maintainer_id=59928" shape="rect" class="" coords="69,238,131,311" />
|
||||
<area alt="All Website modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/Website/browse?repo_maintainer_id=59928" shape="rect" class="" coords="148,238,211,311" />
|
||||
<area alt="All eCommerce modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/eCommerce/browse?repo_maintainer_id=59928" shape="rect" class="" coords="147,159,211,232" />
|
||||
<area alt="Ivan Yelizariev" target="_blank" href="https://apps.odoo.com/apps/modules/browse?search=Ivan+Yelizariev&repo_maintainer_id=59928" shape="rect" class="" coords="468,236,528,385" />
|
||||
<area alt="Web Login Background" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/web_login_background/" shape="rect" class="" coords="355,225,403,385" />
|
||||
</map>
|
||||
</div>
|
||||
<div class="mb64 d-lg-none">
|
||||
<img class="img img-responsive" src="https://itpp.dev/images/apps/;-)/itpp-labs-690.jpg" usemap="#itpp-md" />
|
||||
<map name="itpp-md">
|
||||
<area alt="Free Modules" target="_blank" href="https://apps.odoo.com/apps/browse?price=Free&order=Downloads&repo_maintainer_id=59928" shape="rect" class="" coords="564,138,677,392" />
|
||||
<area alt="Sync Studio" target="_blank" href="https://apps.odoo.com/apps/modules/browse?search=sync+studio&repo_maintainer_id=59928" shape="rect" class="" coords="346,116,452,171" />
|
||||
<area alt="REST API" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/openapi/" shape="rect" class="" coords="405,175,451,228" />
|
||||
<area alt="Webhooks" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/base_automation_webhook/" shape="rect" class="" coords="405,232,451,287" />
|
||||
<area alt="POS: show product qty" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/pos_product_available/" shape="rect" class="" coords="51,233,157,287" />
|
||||
<area alt="All modules" target="_blank" href="https://apps.odoo.com/apps/browse?repo_maintainer_id=59928" shape="rect" class="" coords="204,167,238,286" />
|
||||
<area alt="All POS modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/Point%20of%20Sale/browse?repo_maintainer_id=59928" shape="rect" class="" coords="51,119,96,173" />
|
||||
<area alt="All Mail modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/Discuss/browse?repo_maintainer_id=59928" shape="rect" class="" coords="51,176,97,230" />
|
||||
<area alt="All Website modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/Website/browse?repo_maintainer_id=59928" shape="rect" class="" coords="110,176,156,230" />
|
||||
<area alt="All eCommerce modules" target="_blank" href="https://apps.odoo.com/apps/modules/category/eCommerce/browse?repo_maintainer_id=59928" shape="rect" class="" coords="109,118,156,172" />
|
||||
<area alt="Ivan Yelizariev" target="_blank" href="https://apps.odoo.com/apps/modules/browse?search=Ivan+Yelizariev&repo_maintainer_id=59928" shape="rect" class="" coords="347,175,392,286" />
|
||||
<area alt="Web Login Background" target="_blank" href="https://apps.odoo.com/apps/modules/14.0/web_login_background/" shape="rect" class="" coords="263,167,299,286" />
|
||||
</map>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
3
web_debranding/static/src/css/web.css
Normal file
@ -0,0 +1,3 @@
|
||||
.o_application_switcher .o_application_switcher_footer {
|
||||
display: none;
|
||||
}
|
||||
BIN
web_debranding/static/src/img/logo.png
Normal file
|
After Width: | Height: | Size: 799 B |
BIN
web_debranding/static/src/img/nologo.png
Normal file
|
After Width: | Height: | Size: 799 B |
38
web_debranding/static/src/js/base.js
Normal file
@ -0,0 +1,38 @@
|
||||
/** @odoo-module **/
|
||||
/* Copyright 2015-2018,2022-2023 Ivan Yelizariev <https://twitter.com/yelizariev>
|
||||
Copyright 2017 ArtyomLosev <https://github.com/ArtyomLosev>
|
||||
Copyright 2022 IT-Projects <https://it-projects.info/>
|
||||
License MIT (https://opensource.org/licenses/MIT). */
|
||||
|
||||
import { debrandTranslation } from "@web_debranding/js/translation";
|
||||
import { patch } from "@web/core/utils/patch";
|
||||
import { useService } from "@web/core/utils/hooks";
|
||||
import { WebClient } from "@web/webclient/webclient";
|
||||
|
||||
const { onMounted } = owl;
|
||||
const components = { WebClient };
|
||||
|
||||
patch(components.WebClient.prototype, {
|
||||
setup() {
|
||||
super.setup();
|
||||
odoo.debranding_new_name = "";
|
||||
odoo.debranding_new_website = "";
|
||||
odoo.debranding_new_title = "";
|
||||
this.title.setParts({ zopenerp: odoo.debranding_new_title });
|
||||
this.orm = useService("orm");
|
||||
onMounted(() => {
|
||||
this.updateDebrandingValues();
|
||||
});
|
||||
},
|
||||
async updateDebrandingValues() {
|
||||
const result = await this.orm.call(
|
||||
"ir.config_parameter",
|
||||
"get_debranding_parameters"
|
||||
);
|
||||
odoo.debranding_new_name = result["web_debranding.new_name"];
|
||||
odoo.debranding_new_website = result["web_debranding.new_website"];
|
||||
odoo.debranding_new_title = result["web_debranding.new_title"];
|
||||
this.title.setParts({ zopenerp: odoo.debranding_new_title });
|
||||
debrandTranslation();
|
||||
},
|
||||
});
|
||||
25
web_debranding/static/src/js/dialog.js
Normal file
@ -0,0 +1,25 @@
|
||||
/** @odoo-module **/
|
||||
/* Copyright 2015-2018,2021,2023 Ivan Yelizariev <https://twitter.com/yelizariev>
|
||||
Copyright 2015 igallyamov <https://github.com/igallyamov>
|
||||
Copyright 2017 Gabbasov Dinar <https://it-projects.info/team/GabbasovDinar>
|
||||
Copyright 2022 IT-Projects <https://it-projects.info/>
|
||||
License OPL-1 (https://www.odoo.com/documentation/user/14.0/legal/licenses/licenses.html#odoo-apps). */
|
||||
|
||||
import "@web_debranding/js/base";
|
||||
import { Dialog } from "@web/core/dialog/dialog";
|
||||
import { patch } from "@web/core/utils/patch";
|
||||
|
||||
const component = { Dialog };
|
||||
|
||||
patch(component.Dialog.prototype, {
|
||||
setup() {
|
||||
const debranding_new_name = odoo.debranding_new_name;
|
||||
if (this.constructor.title && this.constructor.title.replace) {
|
||||
var title = this.constructor.title.replace(/Odoo/gi, debranding_new_name);
|
||||
this.constructor.title = title;
|
||||
} else {
|
||||
this.constructor.title = debranding_new_name;
|
||||
}
|
||||
super.setup();
|
||||
},
|
||||
});
|
||||
26
web_debranding/static/src/js/field_upgrade.js
Normal file
@ -0,0 +1,26 @@
|
||||
/** @odoo-module **/
|
||||
/* Copyright 2023 Ivan Yelizariev <https://twitter.com/yelizariev>
|
||||
License OPL-1 (https://www.odoo.com/documentation/user/14.0/legal/licenses/licenses.html#odoo-apps) for derivative work. */
|
||||
import { patch } from "@web/core/utils/patch";
|
||||
import { SearchableSetting } from "@web/webclient/settings_form_view/settings/searchable_setting";
|
||||
|
||||
patch(SearchableSetting.prototype, {
|
||||
visible() {
|
||||
if (!super.visible()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Copy-pasted from addons/web/static/src/webclient/settings_form_view/highlight_text/form_label_highlight_text.js
|
||||
const isEnterprise = odoo.info && odoo.info.isEnterprise;
|
||||
let upgradeEnterprise = false;
|
||||
if (
|
||||
this.props.fieldInfo &&
|
||||
this.props.fieldInfo.field &&
|
||||
this.props.fieldInfo.field.isUpgradeField &&
|
||||
!isEnterprise
|
||||
) {
|
||||
upgradeEnterprise = true;
|
||||
}
|
||||
return !upgradeEnterprise;
|
||||
},
|
||||
});
|
||||
30
web_debranding/static/src/js/translation.js
Normal file
@ -0,0 +1,30 @@
|
||||
/** @odoo-module **/
|
||||
/* Copyright 2022-2023 Ivan Yelizariev <https://twitter.com/yelizariev>
|
||||
License OPL-1 (https://www.odoo.com/documentation/user/14.0/legal/licenses/licenses.html#odoo-apps). */
|
||||
|
||||
import { localizationService } from "@web/core/l10n/localization_service";
|
||||
import { translatedTerms } from "@web/core/l10n/translation";
|
||||
|
||||
const odoo_terms = [
|
||||
"Odoo Session Expired",
|
||||
"Your Odoo session expired. The current page is about to be refreshed.",
|
||||
];
|
||||
|
||||
export const debrandTranslation = () => {
|
||||
if (!odoo.debranding_new_name) {
|
||||
return;
|
||||
}
|
||||
odoo_terms.forEach((term) => {
|
||||
if (!translatedTerms[term]) {
|
||||
translatedTerms[term] = term;
|
||||
}
|
||||
translatedTerms[term] = term.replace(/Odoo/gi, odoo.debranding_new_name);
|
||||
});
|
||||
};
|
||||
|
||||
const start = localizationService.start;
|
||||
localizationService.start = async (env, { user }) => {
|
||||
const localization = await start(env, { user });
|
||||
debrandTranslation();
|
||||
return localization;
|
||||
};
|
||||
9
web_debranding/static/src/js/user_menu_items.js
Normal file
@ -0,0 +1,9 @@
|
||||
/** @odoo-module **/
|
||||
|
||||
import "@web/webclient/user_menu/user_menu_items";
|
||||
import { registry } from "@web/core/registry";
|
||||
|
||||
const menuItems = registry.category("user_menuitems");
|
||||
menuItems.remove("documentation");
|
||||
menuItems.remove("support");
|
||||
menuItems.remove("odoo_account");
|
||||
12
web_debranding/static/src/xml/upgradeEnterprise.xml
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!-- Copyright 2023 Ivan Yelizariev <https://twitter.com/yelizariev>
|
||||
License OPL-1 (https://www.odoo.com/documentation/17.0/legal/licenses.html#odoo-apps). -->
|
||||
<templates xml:space="preserve">
|
||||
<t t-inherit="web.SearchableSetting" t-inherit-mode="extension">
|
||||
<xpath expr="//div[@t-att-class='classNames']" position="replace">
|
||||
<t t-if="!upgradeEnterprise">
|
||||
<div t-att-class="classNames" t-out="0" />
|
||||
</t>
|
||||
</xpath>
|
||||
</t>
|
||||
</templates>
|
||||
22
web_debranding/static/src/xml/web.xml
Normal file
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!--Copyright 2015-2018,2020 Ivan Yelizariev <https://it-projects.info/team/yelizariev>
|
||||
Copyright 2016 Stanislav Krotov <https://it-projects.info/team/ufaks>
|
||||
Copyright 2016 Gabbasov Dinar <https://it-projects.info/team/GabbasovDinar>
|
||||
Copyright 2020 Denis Mudarisov <https://github.com/trojikman>
|
||||
License MIT (https://opensource.org/licenses/MIT).
|
||||
License OPL-1 (https://www.odoo.com/documentation/user/14.0/legal/licenses/licenses.html#odoo-apps) for derivative work. -->
|
||||
<templates xml:space="preserve">
|
||||
<t t-name="web_debranding.placeholder_patch" owl="1">
|
||||
<t t-extend="wysiwyg.widgets.image">
|
||||
<t t-jquery="t[t-set='urlPlaceholder']" t-operation="inner">
|
||||
https://www.example.com/logo.png
|
||||
</t>
|
||||
</t>
|
||||
|
||||
<t t-extend="wysiwyg.widgets.document">
|
||||
<t t-jquery="t[t-set='urlPlaceholder']" t-operation="inner">
|
||||
https://www.example.com/mydocument
|
||||
</t>
|
||||
</t>
|
||||
</t>
|
||||
</templates>
|
||||