Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MIG] web_tree_dynamic_colored_field: Migration to 16.0 #2928

Closed
wants to merge 41 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
fc6c6b9
[IMP] rename module to 'web_tree_dynamic_colored_field'
damdam-s Aug 4, 2015
73966b6
delete unused code, move files to standard locations
hbrunn Mar 22, 2016
0ae9e0d
web_tree_dynamic_colored_field v9
hbrunn Nov 8, 2016
e25c327
Migration of web_tree_dynamic_colored_field to 10.0
jesusVMayor May 22, 2017
f1cdbeb
[MIG] web_tree_dynamic_colored_field: Migration to 11.0
Feb 20, 2018
93cdb12
web_tree_dynamic_colored_field: Parse field options with pyeval
guewen Mar 6, 2018
ff5a9d8
web_tree_dynamic_colored_field: Assume that color may not start with …
guewen Mar 7, 2018
79c7ae5
web_tree_dynamic_colored_field: correct options examples in readme
guewen Mar 7, 2018
94ae55d
[IMP] web_tree_dynamic_colored_field: Update README.rst (#899)
ljimenezsidoo Mar 28, 2018
9ac9c9e
[FIX] Issue #906
Tardo Jul 4, 2018
5c917d3
Update README because of wrong license
damdam-s Oct 2, 2018
e1a6e13
web_tree_dynamic_colored_field: Migration to 12.0
MiquelRForgeFlow Mar 20, 2019
be1363e
remove pyeval class and fixup
AdriaGForgeFlow Apr 4, 2019
c337181
[UPD] README.rst
OCA-git-bot May 22, 2019
350d529
OCA Transbot updated translations from Transifex
oca-transbot Jul 4, 2016
4d921af
[REF] web_tree_dynamic_colored_field: Black python code
guewen Jan 9, 2020
d46e779
[MIG] web_tree_dynamic_colored_field: Migration to 13.0
guewen Jan 9, 2020
4beef21
Remove support of dynamic colors on <tree>
guewen Jan 10, 2020
9e5d33f
Run pre-commit and fix js issues after rebase on new config
guewen Feb 4, 2020
09f14ce
run pre-commit with new prettiers
guewen Mar 19, 2020
950314e
[UPD] Update web_tree_dynamic_colored_field.pot
oca-travis Mar 19, 2020
e3dd8c3
[UPD] README.rst
OCA-git-bot Mar 19, 2020
95c28c9
Update translation files
oca-transbot Mar 29, 2020
811a155
[UPD] README.rst
OCA-git-bot Jul 13, 2020
ea10270
[UPD] README.rst
OCA-git-bot Jul 13, 2020
83fad39
[IMP] web_tree_dynamic_colored_field: black, isort, prettier
phuctranfxvn Feb 7, 2021
4fb6acb
[MIG] web_tree_dynamic_colored_field: Migration to 14.0
phuctranfxvn Feb 7, 2021
5f4b8a3
[UPD] Update web_tree_dynamic_colored_field.pot
oca-travis Apr 1, 2021
9b118a6
[UPD] README.rst
OCA-git-bot Apr 1, 2021
8c28a7b
[IMP] web_tree_dynamic_colored_field : Add bg_color_field option
legalsylvain Jun 9, 2021
f8a9b08
[IMP] web_tree_dynamic_colored_field: black, isort, prettier
amh-mw Feb 11, 2022
d96c649
[MIG] web_tree_dynamic_colored_field: Migration to 15.0
amh-mw Feb 11, 2022
561a058
[UPD] Update web_tree_dynamic_colored_field.pot
Oct 17, 2022
3a4f80f
[UPD] README.rst
OCA-git-bot Oct 17, 2022
79a9f1c
Update translation files
weblate Oct 17, 2022
e874981
Added translation using Weblate (French)
vincent-hatakeyama Nov 17, 2022
714976a
[UPD] README.rst
OCA-git-bot Sep 3, 2023
83eacd0
Update translation files
weblate Oct 9, 2023
ab56781
[UPD] web_tree_dynamic_colored_field: readme usage section
Tardo Jan 13, 2023
8a0c1cf
[BOT] post-merge updates
OCA-git-bot Feb 20, 2024
5b5b5cf
[MIG] web_tree_dynamic_colored_field: Migration to 16.0
amh-mw Sep 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions setup/web_tree_dynamic_colored_field/setup.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import setuptools

setuptools.setup(
setup_requires=['setuptools-odoo'],
odoo_addon=True,
)
191 changes: 191 additions & 0 deletions web_tree_dynamic_colored_field/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,191 @@
============================
Colorize field in tree views
============================

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

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github
:target: https://github.com/OCA/web/tree/15.0/web_tree_dynamic_colored_field
:alt: OCA/web
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/web-15-0/web-15-0-web_tree_dynamic_colored_field
: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/web&target_branch=15.0
:alt: Try me on Runboat

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

This module aims to add support for dynamically coloring fields in tree view
according to data in the record.

Features
========

* Add attribute ``bg_color`` on field's ``options`` to color background of a cell in tree view
* Add attribute ``fg_color`` on field's ``options`` to change text color of a cell in tree view

**Table of contents**

.. contents::
:local:

Usage
=====

* In the tree view declaration, put ``options='{"bg_color": "red: customer==True"}`` attribute in the ``field`` tag::

...
<field name="arch" type="xml">
<tree string="View name">
...
<field name="name" options='{"bg_color": "red: customer == True"}'/>
...
</tree>
</field>
...

With this example, column which renders 'name' field will have its background colored in red.

* In the tree view declaration, put ``options='{"fg_color": "white:customer == True"}'`` attribute in the ``field`` tag::

...
<field name="arch" type="xml">
<tree string="View name">
...
<field name="name" options='{"fg_color": "white:customer == True"}'/>
...
</tree>
</field>
...

With this example, column which renders 'name' field will have its text colored in white on a customer records.

* In the tree view declaration, use ``options='"color_field": "my_color"'`` attribute in the ``tree`` tag::

...
<field name="arch" type="xml">
<tree string="View name" colors="color_field: my_color" >
...
<field name="my_color" invisible="1"/>
...
</tree>
</field>
...

* You can also use ``colors="bg_color_field: my_color"`` to defined the field name that will be used
for the background color of the line.

* If you want to use more than one color, you can split the attributes using ';':

.. code::

options='{"fg_color": "red:red_color == True; green:green_color == True"}'

Example:

.. code:: xml

...
<field name="arch" type="xml">
<tree string="View name">
...
<field name="name" options='{"fg_color": "red:red_color == True; green:green_color == True"}'/>
...
</tree>
</field>
...

With this example, the content of the field named `my_color` will be used to
populate the `my_color` CSS value. Use a function field to return whichever
color you want depending on the other record values. Note that this
overrides the rest of `colors` attributes, and that you need the tree
to load your field in the first place by adding it as invisible field.

* Can use strings too... In the tree view declaration, put ``options="{'fg_color': 'green:customer_state == \'success\''}"`` attribute in the ``field`` tag::

...
<field name="arch" type="xml">
<tree string="View name">
...
<field name="name" options="{'fg_color': 'green:customer_state == \'success\''}"/>
...
</tree>
</field>
...

**Note that you can use single or normal quotes. If the declaration of the options doesn't follow the JSON format, the options string will be evaluated using py.eval()**

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

* Before version 13.0, this module had a feature allowing to change the color of
a line depending on a field, using a ``colors`` attribute with the name of the
field on the ``<tree>`` element. Since 13.0, the ``colors`` attribute is no
longer in the RelaxNG schema of the tree view, so we can't use it anymore.
This feature has then been dropped, but could be reimplement in another way.

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/web/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/web/issues/new?body=module:%20web_tree_dynamic_colored_field%0Aversion:%2015.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
~~~~~~~

* Camptocamp
* Therp BV

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

* Damien Crier <[email protected]>
* Holger Brunn <[email protected]>
* Artem Kostyuk <[email protected]>
* Guewen Baconnier <[email protected]>
* Phuc Tran Thanh <[email protected]>
* Sylvain LE GAL <https://twitter.com/legalsylvain>

Other credits
~~~~~~~~~~~~~

The development of this module has been financially supported by:

* Camptocamp

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/web <https://github.com/OCA/web/tree/15.0/web_tree_dynamic_colored_field>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions web_tree_dynamic_colored_field/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
19 changes: 19 additions & 0 deletions web_tree_dynamic_colored_field/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright 2015-2018 Camptocamp SA, Damien Crier
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
{
"name": "Colorize field in tree views",
"summary": "Allows you to dynamically color fields on tree views",
"category": "Hidden/Dependency",
"version": "16.0.1.0.0",
"depends": ["web"],
"author": "Camptocamp, Therp BV, Odoo Community Association (OCA)",
"license": "AGPL-3",
"website": "https://github.com/OCA/web",
"demo": ["demo/res_users.xml"],
"installable": True,
"assets": {
"web.assets_backend": [
"/web_tree_dynamic_colored_field/static/src/js/web_tree_dynamic_colored_field.js",
],
},
}
21 changes: 21 additions & 0 deletions web_tree_dynamic_colored_field/demo/res_users.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<record id="view_users_tree" model="ir.ui.view">
<field name="model">res.users</field>
<field name="inherit_id" ref="base.view_users_tree" />
<field name="arch" type="xml">
<field name="login_date" position="attributes">
<attribute name="options">{
"bg_color": "#9e1635: login_date == False",
"fg_color": "white: login_date == False"
}</attribute>
</field>
<field name="name" position="attributes">
<attribute name="options"> {
"bg_color": "blue; #653b5b: login == 'admin'",
"fg_color": "white"
}</attribute>
</field>
</field>
</record>
</odoo>
22 changes: 22 additions & 0 deletions web_tree_dynamic_colored_field/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_tree_dynamic_colored_field
#
# Translators:
# Pedro M. Baeza <[email protected]>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 9.0c\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-01-05 01:38+0000\n"
"PO-Revision-Date: 2017-01-05 01:38+0000\n"
"Last-Translator: Pedro M. Baeza <[email protected]>, 2017\n"
"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#~ msgid "columns.fct_colorize(record, column)"
#~ msgstr "columns.fct_colorize(record, column)"
22 changes: 22 additions & 0 deletions web_tree_dynamic_colored_field/i18n/fi.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_tree_dynamic_colored_field
#
# Translators:
# Jarmo Kortetjärvi <[email protected]>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-07-08 16:36+0000\n"
"PO-Revision-Date: 2016-07-08 16:36+0000\n"
"Last-Translator: Jarmo Kortetjärvi <[email protected]>, 2016\n"
"Language-Team: Finnish (https://www.transifex.com/oca/teams/23907/fi/)\n"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#~ msgid "columns.fct_colorize(record, column)"
#~ msgstr "columns.fct_colorize(record, column)"
Empty file.
23 changes: 23 additions & 0 deletions web_tree_dynamic_colored_field/i18n/nl_NL.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_tree_dynamic_colored_field
#
# Translators:
# Peter Hageman <[email protected]>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-06-22 08:27+0000\n"
"PO-Revision-Date: 2017-06-22 08:27+0000\n"
"Last-Translator: Peter Hageman <[email protected]>, 2017\n"
"Language-Team: Dutch (Netherlands) (https://www.transifex.com/oca/"
"teams/23907/nl_NL/)\n"
"Language: nl_NL\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#~ msgid "columns.fct_colorize(record, column)"
#~ msgstr "columns.fct_colorize(record, column)"
23 changes: 23 additions & 0 deletions web_tree_dynamic_colored_field/i18n/sl.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_tree_dynamic_colored_field
#
# Translators:
# Matjaž Mozetič <[email protected]>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-06-24 00:46+0000\n"
"PO-Revision-Date: 2016-06-24 00:46+0000\n"
"Last-Translator: Matjaž Mozetič <[email protected]>, 2016\n"
"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n"
"Language: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
"%100==4 ? 2 : 3);\n"

#~ msgid "columns.fct_colorize(record, column)"
#~ msgstr "columns.fct_colorize(record, column)"
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 15.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
Empty file.
6 changes: 6 additions & 0 deletions web_tree_dynamic_colored_field/readme/CONTRIBUTORS.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
* Damien Crier <[email protected]>
* Holger Brunn <[email protected]>
* Artem Kostyuk <[email protected]>
* Guewen Baconnier <[email protected]>
* Phuc Tran Thanh <[email protected]>
* Sylvain LE GAL <https://twitter.com/legalsylvain>
3 changes: 3 additions & 0 deletions web_tree_dynamic_colored_field/readme/CREDITS.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
The development of this module has been financially supported by:

* Camptocamp
8 changes: 8 additions & 0 deletions web_tree_dynamic_colored_field/readme/DESCRIPTION.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
This module aims to add support for dynamically coloring fields in tree view
according to data in the record.

Features
========

* Add attribute ``bg_color`` on field's ``options`` to color background of a cell in tree view
* Add attribute ``fg_color`` on field's ``options`` to change text color of a cell in tree view
5 changes: 5 additions & 0 deletions web_tree_dynamic_colored_field/readme/ROADMAP.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
* Before version 13.0, this module had a feature allowing to change the color of
a line depending on a field, using a ``colors`` attribute with the name of the
field on the ``<tree>`` element. Since 13.0, the ``colors`` attribute is no
longer in the RelaxNG schema of the tree view, so we can't use it anymore.
This feature has then been dropped, but could be reimplement in another way.
Loading
Loading