Skip to Content
Menu
You need to be registered to interact with the community.
This question has been flagged
4 Odgovori
7108 Prikazi

I have multi company. I want to have different color theme (different colors for some elements) for each company in my configuration (i added fields to res_company that will contain elements colors). Users can switch their companies, and then user changed company (click top right menu -> preferences -> change company -> save) i want to change color for some elements for him (top menu background color, left menu back color, menu font color....).

what is the best way to do that ?

Avatar
Opusti
Avtor

i find way to set color on load

Avtor Best Answer

i find way to set color on load by extending js

is it right way ?

var apply_theme = function(instance)
{
    if(instance)
    {
        new instance.web.Model('res.users')
            .query(['name','company_id'])
            .filter([['id', '=', instance.session.user_context.uid]])
            .first()
            .then(function (user) {
                if(user)
                {
                    new instance.web.Model('res.company')
                        .query(['name','theme_color_menu_back'])
                        .filter([['id', '=', user.company_id[0]]])
                        .first()
                        .then(function (company) {
                            if(company)
                                if(company.theme_color_menu_back)
                                    $('td.oe_topbar').css('background', company.theme_color_menu_back);
                        });
                }
            });
    };
}

openerp.my_base_ext = function(instance){

    var module = instance.web; // loading the namespace

    module.UserMenu.include({

        start: function() {
            this._super();

            apply_theme(instance);
        }

    });
};
Avatar
Opusti
Best Answer

I created a openerp 7 module which allows you to choose templates : www.martinienolinga.com/en/plugin-des-templates-sous-openerp, You can look at source code how to do what you want

Avatar
Opusti
Best Answer

You may have different styles by different users (including users from various companies) just by installing this module: https://apps.odoo.com/apps/modules/8.0/colors_customization/

Avatar
Opusti
Related Posts Odgovori Prikazi Aktivnost
5
apr. 25
12126
2
dec. 22
13629
1
jun. 24
2649
2
dec. 16
5434
1
mar. 15
5690