refactor: completely remove rather than replace Powered by Odoo branding across all templates

This commit is contained in:
Suherdy Yacob 2026-06-05 13:28:55 +07:00
parent 338792a8e4
commit 561dc9a816
5 changed files with 37 additions and 45 deletions

View File

@ -1,12 +1,12 @@
Hide Powered by Odoo (IT Mapan)
===============================
Hide Powered by Odoo
====================
This module customizes various templates to replace all instances of "Powered by Odoo" with "Powered by IT Mapan" and overrides the POS sleep/screensaver logo.
This module customizes various templates to completely hide all instances of "Powered by Odoo" and overrides the POS sleep/screensaver logo.
Features:
- Replaces Odoo logo/text on POS Customer Display sidebar and main section.
- Appends/inserts "Powered by IT Mapan" at the bottom of POS receipts.
- Overrides login footer page to show "Powered by IT Mapan".
- Replaces Odoo branding in Portal/Website promotion widgets.
- Replaces Odoo branding in Email notifications layouts.
- Hides Odoo logo/text on POS Customer Display sidebar and main section.
- Hides Odoo branding at the bottom of POS receipts.
- Hides Odoo branding links on the Login footer page.
- Hides Odoo branding in Portal/Website promotion widgets.
- Hides Odoo branding in Email notification layouts.
- Replaces the big Odoo logo on the POS sleep screen (screensaver) with the customized logo.

View File

@ -3,17 +3,17 @@
'name': 'Hide Powered by Odoo (IT Mapan)',
'version': '19.0.1.0.0',
'category': 'Hidden/Dependency',
'summary': 'Replaces "Powered by Odoo" with "Powered by IT Mapan" across Website, Portal, POS receipt, Customer display, Login page, and Email notifications.',
'summary': 'Hides "Powered by Odoo" completely across Website, Portal, POS receipt, Customer display, Login page, and Email notifications.',
'description': """
Hide Powered by Odoo (IT Mapan)
===============================
This module customizes various templates to replace all instances of "Powered by Odoo" with "Powered by IT Mapan".
Hide Powered by Odoo
====================
This module customizes various templates to completely hide all instances of "Powered by Odoo".
Customized areas:
- POS Customer Display (sidebar and main bottom branding)
- POS Receipt (appends/inserts "Powered by IT Mapan" at the bottom)
- Login Page (overrides both default Odoo and OdooAI login links)
- Portal & Website Brand Promotion
- POS Receipt (hides "Powered by Odoo" at the bottom)
- Login Page (hides both default Odoo and OdooAI login links)
- Portal & Website Brand Promotion (hides promotion message)
- Email Notifications (light and standard layouts)
""",
'author': 'Suherdy Yacob',

View File

@ -1,13 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<templates id="template" xml:space="preserve">
<t t-name="hide_powered_by_odoo.CustomerDisplay" t-inherit="point_of_sale.CustomerDisplay" t-inherit-mode="extension">
<!-- Replace the Odoo Logo in the sidebar with IT Mapan -->
<xpath expr="//div[hasclass('o_customer_display_sidebar')]//OdooLogo" position="replace">
<b class="ms-1 text-white">IT Mapan</b>
</xpath>
<!-- Replace the Odoo Logo in the main customer display with IT Mapan -->
<xpath expr="//div[hasclass('o_customer_display_main')]//OdooLogo" position="replace">
<b class="ms-1">IT Mapan</b>
</xpath>
<!-- Hide the Odoo/IT Mapan logo block in the sidebar -->
<xpath expr="//div[hasclass('o_customer_display_sidebar')]/div[contains(., 'Powered by')]" position="replace"/>
<!-- Hide the Odoo/IT Mapan logo block in the main customer display -->
<xpath expr="//div[hasclass('o_customer_display_main')]//div[contains(., 'Powered by')]" position="replace"/>
</t>
</templates>

View File

@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<templates id="template" xml:space="preserve">
<t t-name="hide_powered_by_odoo.OrderReceipt" t-inherit="point_of_sale.OrderReceipt" t-inherit-mode="extension">
<!-- Replace Powered by Odoo with Powered by IT Mapan on the receipt -->
<xpath expr="//div[contains(@class, 'pos-receipt-order-data') and contains(., 'Powered by')]" position="replace">
<div class="pos-receipt-order-data text-center pt-3">
<span>Powered by <b> IT Mapan </b></span>
</div>
</xpath>
<!-- Hide Powered by Odoo/IT Mapan on the receipt -->
<xpath expr="//div[contains(@class, 'pos-receipt-order-data') and contains(., 'Powered by')]" position="replace"/>
</t>
</templates>

View File

@ -4,43 +4,43 @@
<template id="brand_promotion_message" inherit_id="web.brand_promotion_message">
<xpath expr="//t[@t-set='odoo_logo']" position="replace"/>
<xpath expr="//t[@t-set='final_message']" position="replace"/>
<xpath expr="//t[@t-out]" position="replace">
<span>Powered by IT Mapan</span>
</xpath>
<xpath expr="//t[@t-out]" position="replace"/>
</template>
<!-- 2. Website Brand Promotion Override (Website) -->
<template id="website_brand_promotion" inherit_id="website.brand_promotion">
<xpath expr="//t[@t-call='web.brand_promotion_message']" position="replace">
<span>Powered by IT Mapan</span>
</xpath>
<xpath expr="//t[@t-call='web.brand_promotion_message']" position="replace"/>
</template>
<!-- 3. Portal Record Sidebar Override (Portal) -->
<template id="portal_record_sidebar" inherit_id="portal.portal_record_sidebar">
<xpath expr="//div[contains(@class, 'text-muted') and contains(., 'Powered by')]/a[contains(@href, 'odoo.com')]" position="replace">
<b class="ms-1">IT Mapan</b>
</xpath>
<xpath expr="//div[contains(@class, 'text-muted') and contains(., 'Powered by')]" position="replace"/>
</template>
<!-- 4. Login Page Footer Override (Web) -->
<template id="login_layout" inherit_id="web.login_layout">
<xpath expr="//a[@href='https://www.odoo.com?utm_source=db&amp;utm_medium=auth'] | //a[@href='https://www.odooai.cn']" position="replace">
<span>Powered by <span>IT Mapan</span></span>
</xpath>
<xpath expr="//a[@href='https://www.odoo.com?utm_source=db&amp;utm_medium=auth'] | //a[@href='https://www.odooai.cn']" position="replace"/>
</template>
<!-- 5. Email Notification Layout Footer Override (Mail) -->
<template id="mail_notification_layout" inherit_id="mail.mail_notification_layout">
<xpath expr="//div[contains(@style, 'color: #555555;')]/a[contains(@href, 'odoo.com')]" position="replace">
<span t-att-style="'color: ' + (company.email_secondary_color or '#875A7B') + ';'">IT Mapan</span>
<xpath expr="//div[contains(@style, 'color: #555555;')]" position="replace">
<div t-if="show_footer" style="color: #555555; font-size:11px;">
<span t-if="show_unfollow" id="mail_unfollow">
<a href="/mail/unfollow" style="text-decoration:none; color:#555555;">Unfollow</a>
</span>
</div>
</xpath>
</template>
<!-- 6. Email Notification Light Layout Footer Override (Mail) -->
<template id="mail_notification_light" inherit_id="mail.mail_notification_light">
<xpath expr="//tr[td[contains(., 'Powered by')]]/td/a[contains(@href, 'odoo.com')]" position="replace">
<span t-att-style="'color: ' + (company.email_secondary_color or '#875A7B') + ';'">IT Mapan</span>
<xpath expr="//tr[td[contains(., 'Powered by')]]/td" position="replace">
<td align="center" style="min-width: 590px; font-size: 11px;">
<span t-if="show_unfollow" id="mail_unfollow">
<a href="/mail/unfollow" style="text-decoration:none; color:#555555;">Unfollow</a>
</span>
</td>
</xpath>
</template>
</odoo>