# -*- coding: utf-8 -*-
# Copyright 2016 LasLabs Inc.
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).

from openerp import api
from lxml import etree
from openerp.addons.base.res.res_config import \
    res_config_settings


class ResConfigSettings(res_config_settings):

    @api.model
    def fields_view_get(self, view_id=None, view_type='form',
                        context=None, toolbar=False, submenu=False):

        ret_val = super(ResConfigSettings, self).fields_view_get(
            view_id=view_id,
            view_type=view_type,
            context=context,
            toolbar=toolbar,
            submenu=submenu,
        )

        page_name = ret_val['name']
        doc = etree.XML(ret_val['arch'])

        queries = []
        if page_name == 'account settings':
            queries += [
                "//div[field[@name='module_account_reports' and \
                    @widget='upgrade_boolean']]",
                "//div[field[@name='module_account_reports_followup' and \
                    @widget='upgrade_boolean']]",
                "//div[field[@name='module_account_batch_deposit' and \
                    @widget='upgrade_boolean']]",
            ]

        queries += [
            "//div[div[field[@widget='upgrade_boolean']]] \
                /preceding-sibling::label[1]",
            "//div[div[field[@widget='upgrade_boolean']]]",
            "//div[field[@widget='upgrade_boolean']] \
                /preceding-sibling::label[1]",
            "//div[field[@widget='upgrade_boolean']]",
            "//field[@widget='upgrade_boolean']",
        ]

        for query in queries:
            for item in doc.xpath(query):
                item.getparent().remove(item)

        ret_val['arch'] = etree.tostring(doc)
        return ret_val