=========================
Extended view inheritance
=========================

.. 
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! This file is generated by oca-gen-addon-readme !!
   !! changes will be overwritten.                   !!
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! source digest: sha256:f3e7549a45401af6dc8f4fb45297cb6d8a5395e25365c6d13f48bb394aa17d03
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
    :target: https://odoo-community.org/page/development-status
    :alt: Mature
.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png
    :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
    :alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github
    :target: https://github.com/OCA/server-tools/tree/16.0/base_view_inheritance_extension
    :alt: OCA/server-tools
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
    :target: https://translation.odoo-community.org/projects/server-tools-16-0/server-tools-16-0-base_view_inheritance_extension
    :alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
    :target: https://runboat.odoo-community.org/builds?repo=OCA/server-tools&target_branch=16.0
    :alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module was written to make it simple to add custom operators for view
inheritance.

**Table of contents**

.. contents::
   :local:

Installation
============

You need to install the Python 'astor' library to use it.

Usage
=====

**Change a python dictionary (context for example)**


.. code-block:: xml

    <field position="attributes">
        <attribute name="context" operation="update">
            {
                "key": "value",
            }
        </attribute>
    </field>


Note that views are subject to evaluation of xmlids anyways, so if you need
to refer to some xmlid, say ``%(xmlid)s``.

**Add text after and/or before than original**

.. code-block:: xml

    <attribute name="$attribute" operation="text_add">
        $text_before {old_value} $text_after
    </attribute>

**Add domain with AND/OR join operator (AND if missed) allowing conditional changes**

.. code-block:: xml

    <attribute name="$attribute" operation="domain_add"
               condition="$field_condition" join_operator="OR">
        $domain_to_add
    </attribute>

**Add domain with AND/OR join operator (AND if missed) for key in attrs**

.. code-block:: xml

    <attribute name="$attribute" operation="attrs_domain_add"
               key="$attrs_key" join_operator="OR">
        $domain_to_add_to_attrs_key
    </attribute>

Known issues / Roadmap
======================

* Support an ``eval`` attribute for our new node types.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-tools/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/server-tools/issues/new?body=module:%20base_view_inheritance_extension%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
~~~~~~~

* Therp BV

Contributors
~~~~~~~~~~~~

* Holger Brunn <hbrunn@therp.nl>
* Ronald Portier <rportier@therp.nl>
* `Tecnativa <https://www.tecnativa.com>`_:

  * Sergio Teruel
  * Carlos Dauden

* Iván Todorovich <ivan.todorovich@camptocamp.com>
* Carlos Serra-Toro <carlos.serra@braintec.com>

Maintainers
~~~~~~~~~~~

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
   :alt: Odoo Community Association
   :target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/server-tools <https://github.com/OCA/server-tools/tree/16.0/base_view_inheritance_extension>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
