Initial commit: Web packages

This commit is contained in:
Ernad Husremovic 2025-08-29 15:20:51 +02:00
commit cd458d4b85
791 changed files with 410049 additions and 0 deletions

View file

@ -0,0 +1,46 @@
# Gauge Widget for Kanban
This widget allows to display gauges using d3 library.
## Installation
```bash
pip install odoo-bringout-oca-ocb-web_kanban_gauge
```
## Dependencies
This addon depends on:
- web
## Manifest Information
- **Name**: Gauge Widget for Kanban
- **Version**: 1.0
- **Category**: Hidden
- **License**: LGPL-3
- **Installable**: False
## Source
Based on [OCA/OCB](https://github.com/OCA/OCB) branch 16.0, addon `web_kanban_gauge`.
## License
This package maintains the original LGPL-3 license from the upstream Odoo project.
## Documentation
- Overview: doc/OVERVIEW.md
- Architecture: doc/ARCHITECTURE.md
- Models: doc/MODELS.md
- Controllers: doc/CONTROLLERS.md
- Wizards: doc/WIZARDS.md
- Install: doc/INSTALL.md
- Usage: doc/USAGE.md
- Configuration: doc/CONFIGURATION.md
- Dependencies: doc/DEPENDENCIES.md
- Troubleshooting: doc/TROUBLESHOOTING.md
- FAQ: doc/FAQ.md

View file

@ -0,0 +1,32 @@
# Architecture
```mermaid
flowchart TD
U[Users] -->|HTTP| V[Views and QWeb Templates]
V --> C[Controllers]
V --> W[Wizards Transient Models]
C --> M[Models and ORM]
W --> M
M --> R[Reports]
DX[Data XML] --> M
S[Security ACLs and Groups] -. enforces .-> M
subgraph Web_kanban_gauge Module - web_kanban_gauge
direction LR
M:::layer
W:::layer
C:::layer
V:::layer
R:::layer
S:::layer
DX:::layer
end
classDef layer fill:#eef8ff,stroke:#6ea8fe,stroke-width:1px
```
Notes
- Views include tree/form/kanban templates and report templates.
- Controllers provide website/portal routes when present.
- Wizards are UI flows implemented with `models.TransientModel`.
- Data XML loads data/demo records; Security defines groups and access.

View file

@ -0,0 +1,3 @@
# Configuration
Refer to Odoo settings for web_kanban_gauge. Configure related models, access rights, and options as needed.

View file

@ -0,0 +1,3 @@
# Controllers
This module does not define custom HTTP controllers.

View file

@ -0,0 +1,5 @@
# Dependencies
This addon depends on:
- [web](../../odoo-bringout-oca-ocb-web)

View file

@ -0,0 +1,4 @@
# FAQ
- Q: Which Odoo version? A: 16.0 (OCA/OCB packaged).
- Q: How to enable? A: Start server with --addon web_kanban_gauge or install in UI.

View file

@ -0,0 +1,7 @@
# Install
```bash
pip install odoo-bringout-oca-ocb-web_kanban_gauge"
# or
uv pip install odoo-bringout-oca-ocb-web_kanban_gauge"
```

View file

@ -0,0 +1,11 @@
# Models
Detected core models and extensions in web_kanban_gauge.
```mermaid
classDiagram
```
Notes
- Classes show model technical names; fields omitted for brevity.
- Items listed under _inherit are extensions of existing models.

View file

@ -0,0 +1,6 @@
# Overview
Packaged Odoo addon: web_kanban_gauge. Provides features documented in upstream Odoo 16 under this addon.
- Source: OCA/OCB 16.0, addon web_kanban_gauge
- License: LGPL-3

View file

@ -0,0 +1,3 @@
# Reports
This module does not define custom reports.

View file

@ -0,0 +1,8 @@
# Security
This module does not define custom security rules or access controls beyond Odoo defaults.
Default Odoo security applies:
- Base user access through standard groups
- Model access inherited from dependencies
- No custom row-level security rules

View file

@ -0,0 +1,5 @@
# Troubleshooting
- Ensure Python and Odoo environment matches repo guidance.
- Check database connectivity and logs if startup fails.
- Validate that dependent addons listed in DEPENDENCIES.md are installed.

View file

@ -0,0 +1,7 @@
# Usage
Start Odoo including this addon (from repo root):
```bash
python3 scripts/odoo_web_server.py --db-name mydb --addon web_kanban_gauge
```

View file

@ -0,0 +1,3 @@
# Wizards
This module does not include UI wizards.

View file

@ -0,0 +1,42 @@
[project]
name = "odoo-bringout-oca-ocb-web_kanban_gauge"
version = "16.0.0"
description = "Gauge Widget for Kanban - Odoo addon"
authors = [
{ name = "Ernad Husremovic", email = "hernad@bring.out.ba" }
]
dependencies = [
"odoo-bringout-oca-ocb-web>=16.0.0",
"requests>=2.25.1"
]
readme = "README.md"
requires-python = ">= 3.11"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Office/Business",
]
[project.urls]
homepage = "https://github.com/bringout/odoo-bringout-oca-ocb-web_kanban_gauge"
repository = "https://github.com/bringout/odoo-bringout-oca-ocb-web_kanban_gauge"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.metadata]
allow-direct-references = true
[tool.hatch.build.targets.wheel]
packages = ["web_kanban_gauge"]
[tool.rye]
managed = true
dev-dependencies = [
"pytest>=8.4.1",
]

View file

@ -0,0 +1,2 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.

View file

@ -0,0 +1,22 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
{
'name': 'Gauge Widget for Kanban',
'category': 'Hidden',
'description': """
This widget allows to display gauges using d3 library.
""",
'version': '1.0',
'depends': ['web'],
'assets' : {
'web.assets_backend': [
'web_kanban_gauge/static/src/**/*',
],
'web.qunit_suite_tests': [
'web_kanban_gauge/static/tests/**/*',
],
},
'auto_install': True,
'license': 'LGPL-3',
}

View file

@ -0,0 +1,10 @@
.. _changelog:
Changelog
=========
`trunk (saas-2)`
----------------
- Module ``web_kanban_gauge`` created. It comes from the refactoring of
custom kanban widgets used in other modules, now standardized.

View file

@ -0,0 +1,10 @@
Gauge for Kanban module documentation
======================================
Changelog
'''''''''
.. toctree::
:maxdepth: 1
changelog.rst

View file

@ -0,0 +1,40 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2015-08-25 10:26+0000\n"
"Last-Translator: <>\n"
"Language-Team: Afrikaans (http://www.transifex.com/odoo/odoo-9/language/"
"af/)\n"
"Language: af\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"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "Verkeerde waarde ingevoer!"

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Arabic (https://www.transifex.com/odoo/teams/41243/ar/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ar\n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-08-24 09:33+0000\n"
"Language-Team: Azerbaijani (https://www.transifex.com/odoo/teams/41243/az/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: az\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

View file

@ -0,0 +1,32 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2024-02-06 13:32+0000\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"
#. module: web_kanban_gauge
#. odoo-javascript
#: code:addons/web_kanban_gauge/static/src/gauge_field.js:0
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:0
#, python-format
msgid "Max: "
msgstr "Maksimalno: "
#. module: web_kanban_gauge
#. odoo-javascript
#: code:addons/web_kanban_gauge/static/src/gauge_field.js:0
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:0
#, python-format
msgid "Value: "
msgstr "Vrijednost: "

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-09-18 09:49+0000\n"
"Language-Team: Catalan (https://www.transifex.com/odoo/teams/41243/ca/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ca\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Czech (https://www.transifex.com/odoo/teams/41243/cs/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: cs\n"
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Danish (https://www.transifex.com/odoo/teams/41243/da/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: da\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,34 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Philipp Fürstos <pfu@odoo.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Last-Translator: Philipp Fürstos <pfu@odoo.com>, 2019\n"
"Language-Team: German (https://www.transifex.com/odoo/teams/41243/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr "Max: "
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr "Wert: "

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-09-18 09:49+0000\n"
"Language-Team: Greek (https://www.transifex.com/odoo/teams/41243/el/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: el\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

View file

@ -0,0 +1,41 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Andi Chandler <andi@gowling.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2016-04-21 09:34+0000\n"
"Last-Translator: Andi Chandler <andi@gowling.com>\n"
"Language-Team: English (United Kingdom) (http://www.transifex.com/odoo/"
"odoo-9/language/en_GB/)\n"
"Language: en_GB\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"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr "Click to change value"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr "Only Integer Value should be valid."
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "Wrong value entered!"

View file

@ -0,0 +1,34 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Jon Perez <jop@odoo.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Last-Translator: Jon Perez <jop@odoo.com>, 2019\n"
"Language-Team: Spanish (https://www.transifex.com/odoo/teams/41243/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr "Max: "
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr "Valor:"

View file

@ -0,0 +1,52 @@
# #-#-#-#-# es_CO.po (Odoo 9.0) #-#-#-#-#
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Mateo Tibaquirá <nestormateo@gmail.com>, 2015
# #-#-#-#-# es_CO.po (Odoo 9.0) #-#-#-#-#
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2015-08-25 10:26+0000\n"
"Last-Translator: <>\n"
"Language-Team: Spanish (Colombia) (http://www.transifex.com/odoo/odoo-9/"
"language/es_CO/)\n"
"Language: es_CO\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"#-#-#-#-# es_CO.po (Odoo 9.0) #-#-#-#-#\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"#-#-#-#-# es_CO.po (Odoo 9.0) #-#-#-#-#\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr "Clic para cambiar el valor"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr "Sólo Valores Enteros debe ser válido."
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "Valor introducido no válido!"

View file

@ -0,0 +1,41 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Juliano Henriquez <juliano@consultoriahenca.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2016-05-18 07:54+0000\n"
"Last-Translator: Juliano Henriquez <juliano@consultoriahenca.com>\n"
"Language-Team: Spanish (Dominican Republic) (http://www.transifex.com/odoo/"
"odoo-9/language/es_DO/)\n"
"Language: es_DO\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"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr "Haga clic para cambiar el valor"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr "El único valor válido es un entero."
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "Valor introducido no válido"

View file

@ -0,0 +1,41 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Rick Hunter <rick_hunter_ec@yahoo.com>, 2015
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2015-11-27 06:13+0000\n"
"Last-Translator: Rick Hunter <rick_hunter_ec@yahoo.com>\n"
"Language-Team: Spanish (Ecuador) (http://www.transifex.com/odoo/odoo-9/"
"language/es_EC/)\n"
"Language: es_EC\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"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr "Cliquee para cambiar el valor"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr "Solo un valor entero es válido."
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "¡Valor entero no válido!"

View file

@ -0,0 +1,41 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Carlos Eduardo Rodriguez Rossi <crodriguez@samemotion.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2016-06-16 19:18+0000\n"
"Last-Translator: Carlos Eduardo Rodriguez Rossi <crodriguez@samemotion.com>\n"
"Language-Team: Spanish (Peru) (http://www.transifex.com/odoo/odoo-9/language/"
"es_PE/)\n"
"Language: es_PE\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"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr "Clique para cambiar valor"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr "Solamente Valor Entero puede ser válido."
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "¡Valor erróneo ingresado!"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-08-24 09:33+0000\n"
"Language-Team: Estonian (https://www.transifex.com/odoo/teams/41243/et/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: et\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

View file

@ -0,0 +1,39 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2015-08-25 10:26+0000\n"
"Last-Translator: <>\n"
"Language-Team: Basque (http://www.transifex.com/odoo/odoo-9/language/eu/)\n"
"Language: eu\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"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr "Klikatu balorea aldatzeko"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr "Bakarrik zenbaki osoko baloreak balioko dute."
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "Balore okerra sartua!"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-09-18 09:49+0000\n"
"Language-Team: Persian (https://www.transifex.com/odoo/teams/41243/fa/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fa\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.2\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-03-22 14:11+0000\n"
"PO-Revision-Date: 2018-03-22 14:11+0000\n"
"Language-Team: Finnish (https://www.transifex.com/odoo/teams/41243/fi/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fi\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

View file

@ -0,0 +1,34 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# gdp Odoo <gdp@odoo.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Last-Translator: gdp Odoo <gdp@odoo.com>, 2019\n"
"Language-Team: French (https://www.transifex.com/odoo/teams/41243/fr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr "Max: "
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr "Valeur: "

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.2\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-03-22 14:11+0000\n"
"PO-Revision-Date: 2018-03-22 14:11+0000\n"
"Language-Team: Gujarati (https://www.transifex.com/odoo/teams/41243/gu/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: gu\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Hebrew (https://www.transifex.com/odoo/teams/41243/he/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: he\n"
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Croatian (https://www.transifex.com/odoo/teams/41243/hr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: hr\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Hungarian (https://www.transifex.com/odoo/teams/41243/hu/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: hu\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 09:54+0000\n"
"PO-Revision-Date: 2017-09-20 09:54+0000\n"
"Language-Team: Indonesian (https://www.transifex.com/odoo/teams/41243/id/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: id\n"
"Plural-Forms: nplurals=1; plural=0;\n"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-08-24 09:33+0000\n"
"Language-Team: Icelandic (https://www.transifex.com/odoo/teams/41243/is/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: is\n"
"Plural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"

View file

@ -0,0 +1,34 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Luigia Cimmino Caserta <lcc@odoo.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Last-Translator: Luigia Cimmino Caserta <lcc@odoo.com>, 2019\n"
"Language-Team: Italian (https://www.transifex.com/odoo/teams/41243/it/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: it\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr "Massimo:"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr "Valore:"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-09-18 09:49+0000\n"
"Language-Team: Japanese (https://www.transifex.com/odoo/teams/41243/ja/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ja\n"
"Plural-Forms: nplurals=1; plural=0;\n"

View file

@ -0,0 +1,39 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2015-09-08 09:39+0000\n"
"Last-Translator: Martin Trigaux\n"
"Language-Team: Kabyle (http://www.transifex.com/odoo/odoo-9/language/kab/)\n"
"Language: kab\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"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr "Sit dagi iwakken aţ-snifel-eḍ azal"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr "Ala amḍan ummid i gellan d ameɣtu."
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "Tsekcmeḍ azal uruzɣan !"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-09-18 09:49+0000\n"
"Language-Team: Khmer (https://www.transifex.com/odoo/teams/41243/km/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: km\n"
"Plural-Forms: nplurals=1; plural=0;\n"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-08-24 09:33+0000\n"
"Language-Team: Korean (https://www.transifex.com/odoo/teams/41243/ko/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ko\n"
"Plural-Forms: nplurals=1; plural=0;\n"

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Luxembourgish (https://www.transifex.com/odoo/teams/41243/lb/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lb\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Lithuanian (https://www.transifex.com/odoo/teams/41243/lt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lt\n"
"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 09:54+0000\n"
"PO-Revision-Date: 2017-09-20 09:54+0000\n"
"Language-Team: Latvian (https://www.transifex.com/odoo/teams/41243/lv/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lv\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"

View file

@ -0,0 +1,40 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2015-09-08 09:39+0000\n"
"Last-Translator: Martin Trigaux\n"
"Language-Team: Macedonian (http://www.transifex.com/odoo/odoo-9/language/"
"mk/)\n"
"Language: mk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr "Кликнете да ја промените вредноста"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr "Само вредност на интегер треба да е валидна"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "Внесовте погрешна вредност."

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Mongolian (https://www.transifex.com/odoo/teams/41243/mn/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: mn\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Norwegian Bokmål (https://www.transifex.com/odoo/teams/41243/nb/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: nb\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,34 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Yenthe Van Ginneken <yenthespam@gmail.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Last-Translator: Yenthe Van Ginneken <yenthespam@gmail.com>, 2019\n"
"Language-Team: Dutch (https://www.transifex.com/odoo/teams/41243/nl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: nl\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr "Max:"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr "Waarde:"

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Polish (https://www.transifex.com/odoo/teams/41243/pl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pl\n"
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Portuguese (https://www.transifex.com/odoo/teams/41243/pt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pt\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Portuguese (Brazil) (https://www.transifex.com/odoo/teams/41243/pt_BR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pt_BR\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Romanian (https://www.transifex.com/odoo/teams/41243/ro/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ro\n"
"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Russian (https://www.transifex.com/odoo/teams/41243/ru/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ru\n"
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-09-18 09:49+0000\n"
"Language-Team: Slovak (https://www.transifex.com/odoo/teams/41243/sk/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sk\n"
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 09:54+0000\n"
"PO-Revision-Date: 2017-09-20 09:54+0000\n"
"Language-Team: Slovenian (https://www.transifex.com/odoo/teams/41243/sl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sl\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-09-18 09:49+0000\n"
"Language-Team: Serbian (https://www.transifex.com/odoo/teams/41243/sr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sr\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 09:54+0000\n"
"PO-Revision-Date: 2017-09-20 09:54+0000\n"
"Language-Team: Serbian (Latin) (https://www.transifex.com/odoo/teams/41243/sr%40latin/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sr@latin\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.2\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-03-22 14:11+0000\n"
"PO-Revision-Date: 2018-03-22 14:11+0000\n"
"Language-Team: Swedish (https://www.transifex.com/odoo/teams/41243/sv/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sv\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

View file

@ -0,0 +1,15 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 09:49+0000\n"
"PO-Revision-Date: 2018-08-24 09:33+0000\n"
"Language-Team: Thai (https://www.transifex.com/odoo/teams/41243/th/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: th\n"
"Plural-Forms: nplurals=1; plural=0;\n"

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Turkish (https://www.transifex.com/odoo/teams/41243/tr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: tr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,34 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Alina Lisnenko <alinasemeniuk1@gmail.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Last-Translator: Alina Lisnenko <alinasemeniuk1@gmail.com>, 2019\n"
"Language-Team: Ukrainian (https://www.transifex.com/odoo/teams/41243/uk/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: uk\n"
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr "Макс.: "
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr "Значення: "

View file

@ -0,0 +1,40 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Ali Kamran <kamran@digitalrightsfoundation.pk>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo 9.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-08-18 14:08+0000\n"
"PO-Revision-Date: 2016-01-27 17:58+0000\n"
"Last-Translator: Ali Kamran <kamran@digitalrightsfoundation.pk>\n"
"Language-Team: Urdu (http://www.transifex.com/odoo/odoo-9/language/ur/)\n"
"Language: ur\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"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:210
#, python-format
msgid "Click to change value"
msgstr "قیمت تبدیل کرنے کیلئے کلک کریں"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Only Integer Value should be valid."
msgstr "صرف عددی قیمت درست ہونی چاہیئے۔"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:172
#, python-format
msgid "Wrong value entered!"
msgstr "غلط قیمت داخل ھوگئ!"

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Vietnamese (https://www.transifex.com/odoo/teams/41243/vi/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: vi\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,32 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2024-02-06 13:32+0000\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"
#. module: web_kanban_gauge
#. odoo-javascript
#: code:addons/web_kanban_gauge/static/src/gauge_field.js:0
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:0
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. odoo-javascript
#: code:addons/web_kanban_gauge/static/src/gauge_field.js:0
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:0
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,34 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
# Translators:
# Felix Yuen <fyu@odoo.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Last-Translator: Felix Yuen <fyu@odoo.com>, 2019\n"
"Language-Team: Chinese (China) (https://www.transifex.com/odoo/teams/41243/zh_CN/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: zh_CN\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr "最大值:"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr "价值:"

View file

@ -0,0 +1,30 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_kanban_gauge
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-12 11:32+0000\n"
"PO-Revision-Date: 2019-08-26 09:15+0000\n"
"Language-Team: Chinese (Taiwan) (https://www.transifex.com/odoo/teams/41243/zh_TW/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: zh_TW\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:99
#, python-format
msgid "Max: "
msgstr ""
#. module: web_kanban_gauge
#. openerp-web
#: code:addons/web_kanban_gauge/static/src/js/kanban_gauge.js:97
#, python-format
msgid "Value: "
msgstr ""

View file

@ -0,0 +1,100 @@
/** @odoo-module **/
import { _t } from "@web/core/l10n/translation";
import { loadJS } from "@web/core/assets";
import { registry } from "@web/core/registry";
import { formatFloat } from "@web/views/fields/formatters";
import { standardFieldProps } from "@web/views/fields/standard_field_props";
import { Component, onWillStart, useEffect, useRef } from "@odoo/owl";
export class GaugeField extends Component {
setup() {
this.chart = null;
this.canvasRef = useRef("canvas");
onWillStart(() => loadJS("/web/static/lib/Chart/Chart.js"));
useEffect(() => {
this.renderChart();
return () => {
if (this.chart) {
this.chart.destroy();
}
};
});
}
get formattedValue() {
return formatFloat(this.props.value, { humanReadable: true, decimals: 1 });
}
renderChart() {
const gaugeValue = this.props.value;
let maxValue = Math.max(gaugeValue, this.props.record.data[this.props.maxValueField] || this.props.maxValue);
let maxLabel = maxValue;
if (gaugeValue === 0 && maxValue === 0) {
maxValue = 1;
maxLabel = 0;
}
const config = {
type: "doughnut",
data: {
datasets: [
{
data: [gaugeValue, maxValue - gaugeValue],
backgroundColor: ["#1f77b4", "#dddddd"],
label: this.props.title,
},
],
},
options: {
circumference: Math.PI,
rotation: -Math.PI,
responsive: true,
tooltips: {
displayColors: false,
callbacks: {
label: function (tooltipItems) {
if (tooltipItems.index === 0) {
return _t("Value: ") + gaugeValue;
}
return _t("Max: ") + maxLabel;
},
},
},
title: {
display: true,
text: this.props.title,
padding: 4,
},
layout: {
padding: {
bottom: 5,
},
},
maintainAspectRatio: false,
cutoutPercentage: 70,
},
};
this.chart = new Chart(this.canvasRef.el, config);
}
}
GaugeField.template = "web.GaugeField";
GaugeField.props = {
...standardFieldProps,
maxValueField: { type: String },
title: { type: String },
maxValue: { type: Number },
};
GaugeField.extractProps = ({ attrs, field }) => {
return {
maxValueField: attrs.options.max_field || "",
title: attrs.options.title || field.string,
maxValue: attrs.options.max_value || 100,
};
};
registry.category("fields").add("gauge", GaugeField);

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<templates xml:space="preserve">
<t t-name="web.GaugeField" owl="1">
<div class="oe_gauge position-relative">
<canvas t-ref="canvas"/>
<span class="o_gauge_value position-absolute start-0 end-0 bottom-0 text-center" t-esc="props.value"/>
</div>
</t>
</templates>

View file

@ -0,0 +1,130 @@
odoo.define('web_kanban_gauge.widget', function (require) {
"use strict";
var AbstractField = require('web.AbstractField');
var core = require('web.core');
var field_registry = require('web.field_registry');
var utils = require('web.utils');
var _t = core._t;
/**
* options
*
* - max_value: maximum value of the gauge [default: 100]
* - max_field: get the max_value from the field that must be present in the
* view; takes over max_value
* - gauge_value_field: if set, the value displayed below the gauge is taken
* from this field instead of the base field used for
* the gauge. This allows to display a number different
* from the gauge.
* - label: lable of the gauge, displayed below the gauge value
* - label_field: get the label from the field that must be present in the
* view; takes over label
* - title: title of the gauge, displayed on top of the gauge
* - style: custom style
*/
var GaugeWidget = AbstractField.extend({
className: "oe_gauge",
jsLibs: [
'/web/static/lib/Chart/Chart.js',
],
//--------------------------------------------------------------------------
// Private
//--------------------------------------------------------------------------
/**
* @override
* @private
*/
_render: function () {
// current value
var val = this.value;
if (_.isArray(JSON.parse(val))) {
val = JSON.parse(val);
}
var gauge_value = _.isArray(val) && val.length ? val[val.length-1].value : val;
if (this.nodeOptions.gauge_value_field) {
gauge_value = this.recordData[this.nodeOptions.gauge_value_field];
}
// max_value
var max_value = this.nodeOptions.max_value || 100;
if (this.nodeOptions.max_field) {
max_value = this.recordData[this.nodeOptions.max_field];
}
max_value = Math.max(gauge_value, max_value);
// title
var title = this.nodeOptions.title || this.field.string;
var maxLabel = max_value;
if (gauge_value === 0 && max_value === 0) {
max_value = 1;
maxLabel = 0;
}
var config = {
type: 'doughnut',
data: {
datasets: [{
data: [
gauge_value,
max_value - gauge_value
],
backgroundColor: [
"#1f77b4", "#dddddd"
],
label: title
}],
},
options: {
circumference: Math.PI,
rotation: -Math.PI,
responsive: true,
tooltips: {
displayColors: false,
callbacks: {
label: function(tooltipItems) {
if (tooltipItems.index === 0) {
return _t('Value: ') + gauge_value;
}
return _t('Max: ') + maxLabel;
},
},
},
title: {
display: true,
text: title,
padding: 4,
},
layout: {
padding: {
bottom: 5
}
},
maintainAspectRatio: false,
cutoutPercentage: 70,
}
};
this.$canvas = $('<canvas/>');
this.$el.empty();
this.$el.append(this.$canvas);
this.$el.attr('style', this.nodeOptions.style);
this.$el.css({position: 'relative'});
var context = this.$canvas[0].getContext('2d');
this.chart = new Chart(context, config);
var humanValue = utils.human_number(gauge_value, 1);
var $value = $('<span class="o_gauge_value">').text(humanValue);
$value.css({'text-align': 'center', position: 'absolute', left: 0, right: 0, bottom: '6px', 'font-weight': 'bold'});
this.$el.append($value);
},
});
field_registry.add("gauge", GaugeWidget);
return GaugeWidget;
});

View file

@ -0,0 +1,63 @@
/** @odoo-module **/
import { getFixture, getNodesTextContent } from "@web/../tests/helpers/utils";
import { makeView, setupViewRegistries } from "@web/../tests/views/helpers";
let serverData;
let target;
QUnit.module("Fields", (hooks) => {
hooks.beforeEach(() => {
target = getFixture();
serverData = {
models: {
partner: {
fields: {
int_field: {
string: "int_field",
type: "integer",
},
another_int_field: {
string: "another_int_field",
type: "integer",
},
},
records: [
{ id: 1, int_field: 10, another_int_field: 45 },
{ id: 2, int_field: 4, another_int_field: 10 },
],
},
},
};
setupViewRegistries();
});
QUnit.module("GaugeField");
QUnit.test("GaugeField in kanban view", async function (assert) {
await makeView({
type: "kanban",
resModel: "partner",
serverData,
arch: `
<kanban>
<field name="another_int_field"/>
<templates>
<t t-name="kanban-box">
<div>
<field name="int_field" widget="gauge" options="{'max_field': 'another_int_field'}"/>
</div>
</t>
</templates>
</kanban>`,
});
assert.containsN(target, ".o_kanban_record:not(.o_kanban_ghost)", 2);
assert.containsN(target, ".o_field_widget[name=int_field] .oe_gauge canvas", 2);
assert.deepEqual(getNodesTextContent(target.querySelectorAll(".o_gauge_value")), [
"10",
"4",
]);
});
});

View file

@ -0,0 +1,49 @@
odoo.define('web_kanban_gauge.gauge_tests', function (require) {
"use strict";
var KanbanView = require('web.KanbanView');
var testUtils = require('web.test_utils');
var createView = testUtils.createView;
QUnit.module('fields', {}, function () {
QUnit.module('basic_fields', {
beforeEach: function () {
this.data = {
partner: {
fields: {
int_field: {string: "int_field", type: "integer", sortable: true},
},
records: [
{id: 1, int_field: 10},
{id: 2, int_field: 4},
]
},
};
}
}, function () {
QUnit.module('gauge widget');
QUnit.test('basic rendering', async function (assert) {
assert.expect(1);
var kanban = await createView({
View: KanbanView,
model: 'partner',
data: this.data,
arch: '<kanban><templates><t t-name="kanban-box">' +
'<div><field name="int_field" widget="gauge"/></div>' +
'</t></templates></kanban>',
});
assert.containsOnce(kanban, '.o_kanban_record:first .oe_gauge canvas',
"should render the gauge widget");
kanban.destroy();
});
});
});
});

View file

@ -0,0 +1,57 @@
/** @odoo-module **/
import { getFixture, getNodesTextContent } from "@web/../tests/helpers/utils";
import { makeView, setupViewRegistries } from "@web/../tests/views/helpers";
let serverData;
let target;
QUnit.module("Fields", (hooks) => {
hooks.beforeEach(() => {
target = getFixture();
serverData = {
models: {
partner: {
fields: {
int_field: {
string: "int_field",
type: "integer",
},
},
records: [
{ id: 1, int_field: 10 },
],
},
},
};
setupViewRegistries();
});
QUnit.module("GaugeValue");
QUnit.test("GaugeValue in kanban view", async function (assert) {
await makeView({
type: "kanban",
resModel: "partner",
serverData,
arch: `
<kanban>
<templates>
<t t-name="kanban-box">
<div>
<field name="int_field" widget="gauge" options="{'max_value': 120}"/>
<field name="int_field" widget="gauge"/>
</div>
</t>
</templates>
</kanban>`,
});
assert.containsN(target, ".o_field_widget[name=int_field] .oe_gauge canvas", 2);
assert.deepEqual(getNodesTextContent(target.querySelectorAll(".o_gauge_value")), [
"10",
"10",
]);
});
});