Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
4 Odpovědi
7048 Zobrazení

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
Zrušit
Autor

i find way to set color on load

Autor Nejlepší odpověď

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
Zrušit
Nejlepší odpověď

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
Zrušit
Nejlepší odpověď

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
Zrušit
Related Posts Odpovědi Zobrazení Aktivita
5
dub 25
11983
2
pro 22
13518
1
čvn 24
2571
2
pro 16
5398
1
bře 15
5632