Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Estate Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Pricing
  • Help

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Accounting
  • Inventory
  • PoS
  • Project
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

Inherit ControlPanel and place a div after it

Subscribe

Get notified when there's activity on this post

This question has been flagged
templatesinherit
1 Reply
2741 Views
Avatar
Luke

Hello there

I need to place a div between the divs o_control_panel and o_content.


I managed to place it inside the content-div before the renderer using this inherit:


{ t t-inherit="web.KanbanRenderer" t-inherit-mode="extension" owl="1" }

{ xpath expr="//div[hasclass('o_kanban_renderer', 'o_renderer', 'd-flex')]" position="before" }

{ div } The Div Content { /div }

{ /xpath }

{ /t }


My problem with this is that I would have to add it to treeview, too. And that the content-div has height-scrolling-issues after adding the new div that i would have to fix in css.


A better Idea would be to place the new div between the control-panel and content. I tried this, but it doesnt work.


    { t t-inherit="web.ControlPanel" t-inherit-mode="extension" owl="1" }

        { xpath expr="//div[hasclass('o_control_panel')]" position="after" }

            { div } The Div Content { /div }

        { /xpath }

    { /t }


How can i inherit the ControlPanel (or web.ControlPanel.Regular)? What am I doing wrong?


Thanks & Best regards

0
Avatar
Discard
Avatar
S.A. Methsiri Madusanka Sooriyaarachchi
Best Answer

To insert a div between the o_control_panel and o_content divs, inheriting the ControlPanel might not be sufficient because it mainly controls the control panel itself and not its surrounding structure. Instead, you should target the parent template where both o_control_panel and o_content are rendered. This is typically done in the web.View or web.AbstractView template, depending on the view type.

Solution:

You can try inheriting the web.View template where the o_control_panel and o_content divs are both present. Here's how you can achieve it:

xmlCopy code
    
        
The Div Content

Explanation:

  • Template to Inherit (web.View): This template is responsible for rendering the control panel and content area in most views.
  • XPath Expression: The XPath targets the div with the o_control_panel class. The new div is inserted immediately after this control panel div and before the content div.

Key Points:

  • Inheritance Scope: By inheriting web.View, your new div will be placed consistently across different view types like Kanban and Tree.
  • Positioning: Placing the div after the control panel ensures it's correctly positioned between the control panel and the content.

CSS Adjustments:

If you face any scrolling issues or UI misalignment after inserting the div, you may need to adjust the CSS for the o_content or your new div to ensure proper layout and scrolling behavior. For example, setting height: calc(100% - your-div-height) for the o_content div might help.

2
Avatar
Discard
Luke
Author

Thank you very much for your answer. Basically everything sounds good and I can follow you. Unfortunately the Odoo forum cuts off all your code with lt and gt brackets so I can't see it.

I found the template web.View here: addons\web\static\src\views\view.xml
But it only consists of a “WithSearch” command with a t-component with some options, nothing that looks like DIVs here.

Searching the codebase for “o_control_panel” only shows the templates web.Legacy.ControlPanel, web.ControlPanel and web.FormControlPanel, nothing related to web.View.

Could you please resend the code without brackets or point me to the correct file?

Thanks!

Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
inherit the helpdesk teamdashboard to rename a label Solved
templates inherit v17
Avatar
1
Mar 24
2193
[odoo10] : How to inherit <templates> of web module? Solved
templates inherit odoo10
Avatar
Avatar
Avatar
18
Dec 22
38844
How to inherit and replace a inherited template in website_sale? Solved
templates inherit website_sale
Avatar
Avatar
Avatar
2
Dec 22
33510
How to inherit and replace a inherited template in survey?
survey templates inherit
Avatar
Avatar
Avatar
2
Nov 21
9394
Inherit base common template
templates inherit v10
Avatar
0
Jan 18
5841
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now