Compare commits

..

No commits in common. "16.0" and "17.0" have entirely different histories.
16.0 ... 17.0

429 changed files with 530 additions and 17841 deletions

165
.gitignore vendored
View file

@ -1,133 +1,56 @@
# ---> Python # Archivos y carpetas generados por Odoo
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
*.py~
*.xml~
*~
# C extensions
*.so
# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
# Translations
*.mo
#*.pot
# Django stuff:
*.log *.log
local_settings.py *.pyc
db.sqlite3 *.pyo
db.sqlite3-journal __pycache__/
*.db
# Flask stuff: # Archivos de configuración de Odoo
instance/ *.sqlite
.webassets-cache *.log
*.conf
# Scrapy stuff: # Archivos de cache de Odoo
.scrapy *.pid
*.sock
*.swp
# Sphinx documentation # Archivos de dependencias
docs/_build/ *.egg
*.egg-info/
dist/
build/
# PyBuilder # Entornos virtuales de Python
target/
# Jupyter Notebook
.ipynb_checkpoints
# IPython
profile_default/
ipython_config.py
# pyenv
.python-version
# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
__pypackages__/
# Celery stuff
celerybeat-schedule
celerybeat.pid
# SageMath parsed files
*.sage.py
# Environments
.env
.venv
env/
venv/ venv/
ENV/ env/
env.bak/
venv.bak/
# Spyder project settings # Archivos de la base de datos
.spyderproject *.db
.spyproject *.dump
# Rope project settings # Archivos de cobertura de prueba
.ropeproject .coverage
# mkdocs documentation # Archivos de editor (emacs, vim, etc.)
/site *~
*.swp
.vscode/
.idea/
.DS_Store
# mypy # Archivos de paquetes de dependencias
.mypy_cache/ node_modules/
.dmypy.json *.bak
dmypy.json
# Pyre type checker # Archivos de logs
.pyre/ *.log
*.out
# Archivos de configuraciones locales de Odoo
*.ini
# Archivos temporales de Odoo (y otros archivos temporales)
*.tmp
*.bak
*.swp

View file

@ -1,124 +0,0 @@
==============================
Generate Barcodes for Partners
==============================
..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:0c984bdd1b103633bb285af4d69763047cc898ed9b6e3499c164a41d8e300f99
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |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%2Fstock--logistics--barcode-lightgray.png?logo=github
:target: https://github.com/OCA/stock-logistics-barcode/tree/12.0/barcodes_generator_partner
:alt: OCA/stock-logistics-barcode
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/stock-logistics-barcode-12-0/stock-logistics-barcode-12-0-barcodes_generator_partner
: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/stock-logistics-barcode&target_branch=12.0
:alt: Try me on Runboat
|badge1| |badge2| |badge3| |badge4| |badge5|
This module expands Odoo functionality, allowing user to generate barcode
depending on a given barcode rule for Partners.
For example, a typical pattern for partners is "042........." that means
that:
* the EAN13 code will begin by '042'
* followed by 0 digits (named Barcode Base in this module)
* a 13 digit control
With this module, it is possible to:
* Assign a pattern (barcode.rule) to a res.partner
* Define a Barcode base:
* manually, if the base of the barcode must be set by a user. (typically an
internal code defined in your company)
* automaticaly by a sequence, if you want to let Odoo to increment a
sequence. (typical case of a customer number incrementation)
* Generate a barcode, based on the defined pattern and the barcode base
**Table of contents**
.. contents::
:local:
Configuration
=============
* To configure this module, see the 'Configuration' Section of the description of the module 'barcodes_generator_abstract'
Usage
=====
To use this module, you need to:
* Go to a Customer/Contact form, Sales & Purchases Tab:
1 for manual generation
* Set a Barcode Rule
* Set a Barcode Base
* click on the button 'Generate Barcode (Using Barcode Rule)'
2 for automatic generation
* Set a Barcode Rule
* click on the button 'Generate Base (Using Sequence)'
* click on the button 'Generate Barcode (Using Barcode Rule)'
.. image:: https://raw.githubusercontent.com/barcodes_generator_partner/static/description/res_partner_sequence_generation.png
:width: 1100px
Bug Tracker
===========
Bugs are tracked on `GitHub Issues <https://github.com/OCA/stock-logistics-barcode/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/stock-logistics-barcode/issues/new?body=module:%20barcodes_generator_partner%0Aversion:%2012.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
~~~~~~~
* GRAP
* La Louve
Contributors
~~~~~~~~~~~~
* Sylvain LE GAL (https://twitter.com/legalsylvain)
* Dave Lasley <dave@laslabs.com>
* Druidoo (https://druidoo.io)
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/stock-logistics-barcode <https://github.com/OCA/stock-logistics-barcode/tree/12.0/barcodes_generator_partner>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

View file

@ -1,3 +0,0 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import models

View file

@ -1,27 +0,0 @@
# Copyright (C) 2014-Today GRAP (http://www.grap.coop)
# Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
# @author: Sylvain LE GAL (https://twitter.com/legalsylvain)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
{
"name": "Generate Barcodes for Partners",
"summary": "Generate Barcodes for Partners",
"version": "16.0.1.0.1",
"category": "Tools",
"author": "GRAP," "La Louve," "Odoo Community Association (OCA)",
"website": "https://github.com/OCA/stock-logistics-barcode",
"license": "AGPL-3",
"depends": [
"barcodes_generator_abstract",
"point_of_sale",
],
"data": [
"views/view_res_partner.xml",
],
"demo": [
"demo/ir_sequence.xml",
"demo/barcode_rule.xml",
"demo/res_partner.xml",
"demo/function.xml",
],
}

View file

@ -1,25 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright (C) 2016-Today: GRAP (http://www.grap.coop)
Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
@author Sylvain LE GAL (https://twitter.com/legalsylvain)
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-->
<odoo>
<record id="partner_generated_barcode" model="barcode.rule">
<field name="name">Partner Rule (Generated Barcode)</field>
<field
name="barcode_nomenclature_id"
ref="barcodes.default_barcode_nomenclature"
/>
<field name="type">client</field>
<field name="sequence">998</field>
<field name="encoding">ean13</field>
<field name="pattern">042.........</field>
<field name="generate_type" eval="'sequence'" />
<field name="generate_model" eval="'res.partner'" />
<field name="sequence_id" ref="partner_ir_sequence" />
</record>
</odoo>

View file

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright (C) 2016-Today: GRAP (http://www.grap.coop)
Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
@author Sylvain LE GAL (https://twitter.com/legalsylvain)
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-->
<odoo>
<function
model="res.partner"
name="generate_base"
eval="[ref('res_partner_barcode')]"
/>
<function
model="res.partner"
name="generate_barcode"
eval="[ref('res_partner_barcode')]"
/>
</odoo>

View file

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright (C) 2016-Today: GRAP (http://www.grap.coop)
Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
@author Sylvain LE GAL (https://twitter.com/legalsylvain)
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-->
<odoo>
<record id="partner_ir_sequence" model="ir.sequence">
<field name="name">Partner Sequence (Generated Barcode)</field>
<field name="padding">10</field>
<field name="number_next">1</field>
</record>
</odoo>

View file

@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright (C) 2016-Today: GRAP (http://www.grap.coop)
Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
@author Sylvain LE GAL (https://twitter.com/legalsylvain)
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-->
<odoo>
<record id="res_partner_barcode" model="res.partner">
<field name="name">Partner with Generated Barcode</field>
<field name="barcode_rule_id" ref="partner_generated_barcode" />
</record>
</odoo>

View file

@ -1,100 +0,0 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * barcodes_generator_partner
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.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"
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Alias"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_barcode_rule
msgid "Barcode Rule"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Client"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_res_partner
msgid "Contact"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Barcode (Using Barcode Rule)"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Base (Using Sequence)"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__generate_model
msgid "Generate Model"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,help:barcodes_generator_partner.field_barcode_rule__generate_model
msgid "If 'Generate Type' is set, mention the model related to this rule."
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Location"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Lot"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Package"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Partners"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Products"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Stock Location"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__type
msgid "Type"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Unit Product"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Weighted Product"
msgstr ""

View file

@ -1,110 +0,0 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * barcodes_generator_partner
#
# Translators:
# enjolras <yo@miguelrevilla.com>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-15 02:01+0000\n"
"PO-Revision-Date: 2018-02-15 02:01+0000\n"
"Last-Translator: enjolras <yo@miguelrevilla.com>, 2018\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"
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Alias"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_barcode_rule
msgid "Barcode Rule"
msgstr "Regla de código de barras"
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Client"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_res_partner
msgid "Contact"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Barcode (Using Barcode Rule)"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Base (Using Sequence)"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__generate_model
msgid "Generate Model"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,help:barcodes_generator_partner.field_barcode_rule__generate_model
msgid "If 'Generate Type' is set, mention the model related to this rule."
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Location"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Lot"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Package"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Partners"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Products"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Stock Location"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__type
msgid "Type"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Unit Product"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Weighted Product"
msgstr ""
#~ msgid "Barcode Base"
#~ msgstr "Base de código de barras"
#~ msgid "barcode.rule"
#~ msgstr "barcode.rule"

View file

@ -1,128 +0,0 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * barcodes_generator_partner
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
# Fernando Lara <gennesis45@gmail.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-05-02 00:27+0000\n"
"PO-Revision-Date: 2017-05-02 00:27+0000\n"
"Last-Translator: Fernando Lara <gennesis45@gmail.com>, 2017\n"
"Language-Team: Spanish (Spain) (https://www.transifex.com/oca/teams/23907/"
"es_ES/)\n"
"Language: es_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"
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Alias"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_barcode_rule
msgid "Barcode Rule"
msgstr "Regla del codigo de barras"
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Client"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_res_partner
msgid "Contact"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Barcode (Using Barcode Rule)"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Base (Using Sequence)"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__generate_model
#, fuzzy
msgid "Generate Model"
msgstr "Generar Tipo"
#. module: barcodes_generator_partner
#: model:ir.model.fields,help:barcodes_generator_partner.field_barcode_rule__generate_model
msgid "If 'Generate Type' is set, mention the model related to this rule."
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Location"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Lot"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Package"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Partners"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Products"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Stock Location"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__type
msgid "Type"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Unit Product"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Weighted Product"
msgstr ""
#~ msgid ""
#~ "Allow to generate barcode, including a number (a base) in the final "
#~ "barcode.\n"
#~ " 'Base Set Manually' : User should set manually the value of the barcode "
#~ "base\n"
#~ " 'Base managed by Sequence': User will use a button to generate a new "
#~ "base. This base will be generated by a sequence"
#~ msgstr ""
#~ "Permitir generar código de barras, incluyendo un número (una base) en el "
#~ "código de barras final.'U+23CE'\n"
#~ "'Base Set Manually': El usuario debe establecer manualmente el valor del "
#~ "código de barras base'U+23CE'\n"
#~ "'Base administrada por Secuencia': El usuario utilizará un botón para "
#~ "generar una nueva base. Esta base será generada por una secuencia"
#~ msgid "Barcode Base"
#~ msgstr "Base de código de barras"
#~ msgid "barcode.rule"
#~ msgstr "regla.barra de codigos"

View file

@ -1,127 +0,0 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * barcodes_generator_partner
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-05-02 00:27+0000\n"
"PO-Revision-Date: 2017-05-02 00:27+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2017\n"
"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n"
"Language: fr\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: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Alias"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_barcode_rule
msgid "Barcode Rule"
msgstr "Règle de code barre"
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Client"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_res_partner
msgid "Contact"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Barcode (Using Barcode Rule)"
msgstr "Générer un code barre (via règle de codes barre)"
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Base (Using Sequence)"
msgstr "Générer une base (via une séquence)"
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__generate_model
#, fuzzy
msgid "Generate Model"
msgstr "Type de génération"
#. module: barcodes_generator_partner
#: model:ir.model.fields,help:barcodes_generator_partner.field_barcode_rule__generate_model
msgid "If 'Generate Type' is set, mention the model related to this rule."
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Location"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Lot"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Package"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
#, fuzzy
msgid "Partners"
msgstr "Partenaire"
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Products"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Stock Location"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__type
msgid "Type"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Unit Product"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Weighted Product"
msgstr ""
#~ msgid ""
#~ "Allow to generate barcode, including a number (a base) in the final "
#~ "barcode.\n"
#~ " 'Base Set Manually' : User should set manually the value of the barcode "
#~ "base\n"
#~ " 'Base managed by Sequence': User will use a button to generate a new "
#~ "base. This base will be generated by a sequence"
#~ msgstr ""
#~ "Autorise à générer des codes barre en incluant un numéro (base du code "
#~ "barre) dans le code barre final.\n"
#~ " 'Base indiquée manuellement' : L'utilisateur devra indiquer manuellement "
#~ "la base du barcode\n"
#~ " 'Base gérée via une séquence': L'utilisateur devra utiliser un boutton "
#~ "pour générer une nouvelle base. Cette base sera générée par une séquence"
#~ msgid "Barcode Base"
#~ msgstr "Base du code Barre"
#~ msgid "barcode.rule"
#~ msgstr "barcode.rule"

View file

@ -1,128 +0,0 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * barcodes_generator_partner
#
# Translators:
# Bole <bole@dajmi5.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-15 02:01+0000\n"
"PO-Revision-Date: 2018-02-15 02:01+0000\n"
"Last-Translator: Bole <bole@dajmi5.com>, 2017\n"
"Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n"
"Language: hr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \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: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Alias"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_barcode_rule
msgid "Barcode Rule"
msgstr "Barkod pravilo"
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Client"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_res_partner
msgid "Contact"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Barcode (Using Barcode Rule)"
msgstr "Generiraj barkod (koristeći pravilo)"
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Base (Using Sequence)"
msgstr "Generiraj osnovno ( koristi br.krug)"
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__generate_model
#, fuzzy
msgid "Generate Model"
msgstr "Tip generatora"
#. module: barcodes_generator_partner
#: model:ir.model.fields,help:barcodes_generator_partner.field_barcode_rule__generate_model
msgid "If 'Generate Type' is set, mention the model related to this rule."
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Location"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Lot"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Package"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
#, fuzzy
msgid "Partners"
msgstr "Partner"
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Products"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Stock Location"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__type
msgid "Type"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Unit Product"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Weighted Product"
msgstr ""
#~ msgid ""
#~ "Allow to generate barcode, including a number (a base) in the final "
#~ "barcode.\n"
#~ " 'Base Set Manually' : User should set manually the value of the barcode "
#~ "base\n"
#~ " 'Base managed by Sequence': User will use a button to generate a new "
#~ "base. This base will be generated by a sequence"
#~ msgstr ""
#~ "Omogućuje generiranje barkodova, uključujući broj(osnova) u finalnom "
#~ "barkodu.\n"
#~ "'Osnova postavljena ručno' : korisnik treba ručno postaviti vrijednost "
#~ "osnovice barkoda.\n"
#~ "'Osnova prema sekvenci' : korisnik će koristiti guzmb za generirnje nove "
#~ "osnove. Ta osnova će biti generirana iz sekvence."
#~ msgid "Barcode Base"
#~ msgstr "Osnova barkodova"
#~ msgid "barcode.rule"
#~ msgstr "barcode.rule"

View file

@ -1,108 +0,0 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * barcodes_generator_partner
#
# Translators:
# Peter Hageman <hageman.p@gmail.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-07-07 15:18+0000\n"
"PO-Revision-Date: 2017-07-07 15:18+0000\n"
"Last-Translator: Peter Hageman <hageman.p@gmail.com>, 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"
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Alias"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_barcode_rule
msgid "Barcode Rule"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Client"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model,name:barcodes_generator_partner.model_res_partner
msgid "Contact"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Barcode (Using Barcode Rule)"
msgstr ""
#. module: barcodes_generator_partner
#: model_terms:ir.ui.view,arch_db:barcodes_generator_partner.view_res_partner_form
msgid "Generate Base (Using Sequence)"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__generate_model
msgid "Generate Model"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,help:barcodes_generator_partner.field_barcode_rule__generate_model
msgid "If 'Generate Type' is set, mention the model related to this rule."
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Location"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Lot"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Package"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Partners"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Products"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,generate_model:0
msgid "Stock Location"
msgstr ""
#. module: barcodes_generator_partner
#: model:ir.model.fields,field_description:barcodes_generator_partner.field_barcode_rule__type
msgid "Type"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Unit Product"
msgstr ""
#. module: barcodes_generator_partner
#: selection:barcode.rule,type:0
msgid "Weighted Product"
msgstr ""
#~ msgid "barcode.rule"
#~ msgstr "barcode.rule"

View file

@ -1,4 +0,0 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import barcode_rule
from . import res_partner

View file

@ -1,12 +0,0 @@
# Copyright (C) 2014-Today GRAP (http://www.grap.coop)
# Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
# @author: Sylvain LE GAL (https://twitter.com/legalsylvain)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo import fields, models
class BarcodeRule(models.Model):
_inherit = "barcode.rule"
generate_model = fields.Selection(selection_add=[("res.partner", "Partners")])

View file

@ -1,11 +0,0 @@
# Copyright (C) 2014-Today GRAP (http://www.grap.coop)
# Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
# @author: Sylvain LE GAL (https://twitter.com/legalsylvain)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo import models
class ResPartner(models.Model):
_name = "res.partner"
_inherit = ["res.partner", "barcode.generate.mixin"]

View file

@ -1 +0,0 @@
* To configure this module, see the 'Configuration' Section of the description of the module 'barcodes_generator_abstract'

View file

@ -1,4 +0,0 @@
* Sylvain LE GAL (https://twitter.com/legalsylvain)
* Dave Lasley <dave@laslabs.com>
* Druidoo (https://druidoo.io)
* Armand POLMARD (https://github.com/ArPol-developpement)

View file

@ -1,21 +0,0 @@
This module expands Odoo functionality, allowing user to generate barcode
depending on a given barcode rule for Partners.
For example, a typical pattern for partners is "042........." that means
that:
* the EAN13 code will begin by '042'
* followed by 0 digits (named Barcode Base in this module)
* a 13 digit control
With this module, it is possible to:
* Assign a pattern (barcode.rule) to a res.partner
* Define a Barcode base:
* manually, if the base of the barcode must be set by a user. (typically an
internal code defined in your company)
* automaticaly by a sequence, if you want to let Odoo to increment a
sequence. (typical case of a customer number incrementation)
* Generate a barcode, based on the defined pattern and the barcode base

View file

@ -1,16 +0,0 @@
To use this module, you need to:
* Go to a Customer/Contact form, Sales & Purchases Tab:
1 for manual generation
* Set a Barcode Rule
* Set a Barcode Base
* click on the button 'Generate Barcode (Using Barcode Rule)'
2 for automatic generation
* Set a Barcode Rule
* click on the button 'Generate Base (Using Sequence)'
* click on the button 'Generate Barcode (Using Barcode Rule)'
.. image:: /barcodes_generator_partner/static/description/res_partner_sequence_generation.png
:width: 1100px

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

View file

@ -1,480 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils: https://docutils.sourceforge.io/" />
<title>Generate Barcodes for Partners</title>
<style type="text/css">
/*
:Author: David Goodger (goodger@python.org)
:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $
:Copyright: This stylesheet has been placed in the public domain.
Default cascading style sheet for the HTML output of Docutils.
See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
customize this style sheet.
*/
/* used to remove borders from tables and images */
.borderless, table.borderless td, table.borderless th {
border: 0 }
table.borderless td, table.borderless th {
/* Override padding for "table.docutils td" with "! important".
The right padding separates the table cells. */
padding: 0 0.5em 0 0 ! important }
.first {
/* Override more specific margin styles with "! important". */
margin-top: 0 ! important }
.last, .with-subtitle {
margin-bottom: 0 ! important }
.hidden {
display: none }
.subscript {
vertical-align: sub;
font-size: smaller }
.superscript {
vertical-align: super;
font-size: smaller }
a.toc-backref {
text-decoration: none ;
color: black }
blockquote.epigraph {
margin: 2em 5em ; }
dl.docutils dd {
margin-bottom: 0.5em }
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
overflow: hidden;
}
/* Uncomment (and remove this text!) to get bold-faced definition list terms
dl.docutils dt {
font-weight: bold }
*/
div.abstract {
margin: 2em 5em }
div.abstract p.topic-title {
font-weight: bold ;
text-align: center }
div.admonition, div.attention, div.caution, div.danger, div.error,
div.hint, div.important, div.note, div.tip, div.warning {
margin: 2em ;
border: medium outset ;
padding: 1em }
div.admonition p.admonition-title, div.hint p.admonition-title,
div.important p.admonition-title, div.note p.admonition-title,
div.tip p.admonition-title {
font-weight: bold ;
font-family: sans-serif }
div.attention p.admonition-title, div.caution p.admonition-title,
div.danger p.admonition-title, div.error p.admonition-title,
div.warning p.admonition-title, .code .error {
color: red ;
font-weight: bold ;
font-family: sans-serif }
/* Uncomment (and remove this text!) to get reduced vertical space in
compound paragraphs.
div.compound .compound-first, div.compound .compound-middle {
margin-bottom: 0.5em }
div.compound .compound-last, div.compound .compound-middle {
margin-top: 0.5em }
*/
div.dedication {
margin: 2em 5em ;
text-align: center ;
font-style: italic }
div.dedication p.topic-title {
font-weight: bold ;
font-style: normal }
div.figure {
margin-left: 2em ;
margin-right: 2em }
div.footer, div.header {
clear: both;
font-size: smaller }
div.line-block {
display: block ;
margin-top: 1em ;
margin-bottom: 1em }
div.line-block div.line-block {
margin-top: 0 ;
margin-bottom: 0 ;
margin-left: 1.5em }
div.sidebar {
margin: 0 0 0.5em 1em ;
border: medium outset ;
padding: 1em ;
background-color: #ffffee ;
width: 40% ;
float: right ;
clear: right }
div.sidebar p.rubric {
font-family: sans-serif ;
font-size: medium }
div.system-messages {
margin: 5em }
div.system-messages h1 {
color: red }
div.system-message {
border: medium outset ;
padding: 1em }
div.system-message p.system-message-title {
color: red ;
font-weight: bold }
div.topic {
margin: 2em }
h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
margin-top: 0.4em }
h1.title {
text-align: center }
h2.subtitle {
text-align: center }
hr.docutils {
width: 75% }
img.align-left, .figure.align-left, object.align-left, table.align-left {
clear: left ;
float: left ;
margin-right: 1em }
img.align-right, .figure.align-right, object.align-right, table.align-right {
clear: right ;
float: right ;
margin-left: 1em }
img.align-center, .figure.align-center, object.align-center {
display: block;
margin-left: auto;
margin-right: auto;
}
table.align-center {
margin-left: auto;
margin-right: auto;
}
.align-left {
text-align: left }
.align-center {
clear: both ;
text-align: center }
.align-right {
text-align: right }
/* reset inner alignment in figures */
div.align-right {
text-align: inherit }
/* div.align-center * { */
/* text-align: left } */
.align-top {
vertical-align: top }
.align-middle {
vertical-align: middle }
.align-bottom {
vertical-align: bottom }
ol.simple, ul.simple {
margin-bottom: 1em }
ol.arabic {
list-style: decimal }
ol.loweralpha {
list-style: lower-alpha }
ol.upperalpha {
list-style: upper-alpha }
ol.lowerroman {
list-style: lower-roman }
ol.upperroman {
list-style: upper-roman }
p.attribution {
text-align: right ;
margin-left: 50% }
p.caption {
font-style: italic }
p.credits {
font-style: italic ;
font-size: smaller }
p.label {
white-space: nowrap }
p.rubric {
font-weight: bold ;
font-size: larger ;
color: maroon ;
text-align: center }
p.sidebar-title {
font-family: sans-serif ;
font-weight: bold ;
font-size: larger }
p.sidebar-subtitle {
font-family: sans-serif ;
font-weight: bold }
p.topic-title {
font-weight: bold }
pre.address {
margin-bottom: 0 ;
margin-top: 0 ;
font: inherit }
pre.literal-block, pre.doctest-block, pre.math, pre.code {
margin-left: 2em ;
margin-right: 2em }
pre.code .ln { color: grey; } /* line numbers */
pre.code, code { background-color: #eeeeee }
pre.code .comment, code .comment { color: #5C6576 }
pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
pre.code .literal.string, code .literal.string { color: #0C5404 }
pre.code .name.builtin, code .name.builtin { color: #352B84 }
pre.code .deleted, code .deleted { background-color: #DEB0A1}
pre.code .inserted, code .inserted { background-color: #A3D289}
span.classifier {
font-family: sans-serif ;
font-style: oblique }
span.classifier-delimiter {
font-family: sans-serif ;
font-weight: bold }
span.interpreted {
font-family: sans-serif }
span.option {
white-space: nowrap }
span.pre {
white-space: pre }
span.problematic {
color: red }
span.section-subtitle {
/* font-size relative to parent (h1..h6 element) */
font-size: 80% }
table.citation {
border-left: solid 1px gray;
margin-left: 1px }
table.docinfo {
margin: 2em 4em }
table.docutils {
margin-top: 0.5em ;
margin-bottom: 0.5em }
table.footnote {
border-left: solid 1px black;
margin-left: 1px }
table.docutils td, table.docutils th,
table.docinfo td, table.docinfo th {
padding-left: 0.5em ;
padding-right: 0.5em ;
vertical-align: top }
table.docutils th.field-name, table.docinfo th.docinfo-name {
font-weight: bold ;
text-align: left ;
white-space: nowrap ;
padding-left: 0 }
/* "booktabs" style (no vertical lines) */
table.docutils.booktabs {
border: 0px;
border-top: 2px solid;
border-bottom: 2px solid;
border-collapse: collapse;
}
table.docutils.booktabs * {
border: 0px;
}
table.docutils.booktabs th {
border-bottom: thin solid;
text-align: left;
}
h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
font-size: 100% }
ul.auto-toc {
list-style-type: none }
</style>
</head>
<body>
<div class="document" id="generate-barcodes-for-partners">
<h1 class="title">Generate Barcodes for Partners</h1>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:0c984bdd1b103633bb285af4d69763047cc898ed9b6e3499c164a41d8e300f99
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/stock-logistics-barcode/tree/12.0/barcodes_generator_partner"><img alt="OCA/stock-logistics-barcode" src="https://img.shields.io/badge/github-OCA%2Fstock--logistics--barcode-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/stock-logistics-barcode-12-0/stock-logistics-barcode-12-0-barcodes_generator_partner"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/stock-logistics-barcode&amp;target_branch=12.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p>This module expands Odoo functionality, allowing user to generate barcode
depending on a given barcode rule for Partners.</p>
<p>For example, a typical pattern for partners is “042………” that means
that:</p>
<ul class="simple">
<li>the EAN13 code will begin by 042</li>
<li>followed by 0 digits (named Barcode Base in this module)</li>
<li>a 13 digit control</li>
</ul>
<p>With this module, it is possible to:</p>
<ul class="simple">
<li>Assign a pattern (barcode.rule) to a res.partner</li>
<li><dl class="first docutils">
<dt>Define a Barcode base:</dt>
<dd><ul class="first last">
<li>manually, if the base of the barcode must be set by a user. (typically an
internal code defined in your company)</li>
<li>automaticaly by a sequence, if you want to let Odoo to increment a
sequence. (typical case of a customer number incrementation)</li>
</ul>
</dd>
</dl>
</li>
<li>Generate a barcode, based on the defined pattern and the barcode base</li>
</ul>
<p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><a class="reference internal" href="#configuration" id="toc-entry-1">Configuration</a></li>
<li><a class="reference internal" href="#usage" id="toc-entry-2">Usage</a></li>
<li><a class="reference internal" href="#bug-tracker" id="toc-entry-3">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="toc-entry-4">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="toc-entry-5">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="toc-entry-6">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="toc-entry-7">Maintainers</a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="configuration">
<h1><a class="toc-backref" href="#toc-entry-1">Configuration</a></h1>
<ul class="simple">
<li>To configure this module, see the Configuration Section of the description of the module barcodes_generator_abstract</li>
</ul>
</div>
<div class="section" id="usage">
<h1><a class="toc-backref" href="#toc-entry-2">Usage</a></h1>
<p>To use this module, you need to:</p>
<ul class="simple">
<li>Go to a Customer/Contact form, Sales &amp; Purchases Tab:</li>
</ul>
<dl class="docutils">
<dt>1 for manual generation</dt>
<dd><ul class="first last simple">
<li>Set a Barcode Rule</li>
<li>Set a Barcode Base</li>
<li>click on the button Generate Barcode (Using Barcode Rule)</li>
</ul>
</dd>
<dt>2 for automatic generation</dt>
<dd><ul class="first last simple">
<li>Set a Barcode Rule</li>
<li>click on the button Generate Base (Using Sequence)</li>
<li>click on the button Generate Barcode (Using Barcode Rule)</li>
</ul>
</dd>
</dl>
<img alt="https://raw.githubusercontent.com/barcodes_generator_partner/static/description/res_partner_sequence_generation.png" src="https://raw.githubusercontent.com/barcodes_generator_partner/static/description/res_partner_sequence_generation.png" style="width: 1100px;" />
</div>
<div class="section" id="bug-tracker">
<h1><a class="toc-backref" href="#toc-entry-3">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/stock-logistics-barcode/issues">GitHub Issues</a>.
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
<a class="reference external" href="https://github.com/OCA/stock-logistics-barcode/issues/new?body=module:%20barcodes_generator_partner%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
</div>
<div class="section" id="credits">
<h1><a class="toc-backref" href="#toc-entry-4">Credits</a></h1>
<div class="section" id="authors">
<h2><a class="toc-backref" href="#toc-entry-5">Authors</a></h2>
<ul class="simple">
<li>GRAP</li>
<li>La Louve</li>
</ul>
</div>
<div class="section" id="contributors">
<h2><a class="toc-backref" href="#toc-entry-6">Contributors</a></h2>
<ul class="simple">
<li>Sylvain LE GAL (<a class="reference external" href="https://twitter.com/legalsylvain">https://twitter.com/legalsylvain</a>)</li>
<li>Dave Lasley &lt;<a class="reference external" href="mailto:dave&#64;laslabs.com">dave&#64;laslabs.com</a>&gt;</li>
<li>Druidoo (<a class="reference external" href="https://druidoo.io">https://druidoo.io</a>)</li>
</ul>
</div>
<div class="section" id="maintainers">
<h2><a class="toc-backref" href="#toc-entry-7">Maintainers</a></h2>
<p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
<p>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.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/stock-logistics-barcode/tree/12.0/barcodes_generator_partner">OCA/stock-logistics-barcode</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
</div>
</div>
</div>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

View file

@ -1,3 +0,0 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import test_barcodes_generator_partner

View file

@ -1,33 +0,0 @@
# Copyright (C) 2016-Today GRAP (http://www.grap.coop)
# Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
# @author: Sylvain LE GAL (https://twitter.com/legalsylvain)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo.tests.common import TransactionCase
class Tests(TransactionCase):
"""Tests for 'Barcodes Generate"""
def setUp(self):
super().setUp()
self.partner_obj = self.env["res.partner"]
# Test Section
def test_01_sequence_generation_partner(self):
self.partner = self.partner_obj.browse(
self.ref("barcodes_generator_partner.res_partner_barcode")
)
self.partner.generate_barcode()
self.assertEqual(
self.partner.barcode_base,
1,
"Incorrect base Generation (by sequence) for Partner.",
)
self.assertEqual(
self.partner.barcode,
"0420000000013",
"Barcode Generation (by sequence) for Partner."
"Incorrect EAN13 Generated. Pattern : %s - Base : %s"
% (self.partner.barcode_rule_id.pattern, self.partner.barcode_base),
)

View file

@ -1,63 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright (C) 2016-Today: GRAP (http://www.grap.coop)
Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
@author Sylvain LE GAL (https://twitter.com/legalsylvain)
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-->
<odoo>
<record id="view_res_partner_form" model="ir.ui.view">
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form" />
<field name="arch" type="xml">
<field name="barcode" position="before">
<field
name="barcode_rule_id"
domain="[('generate_model', '=', 'res.partner')]"
groups="barcodes_generator_abstract.generate_barcode"
colspan="2"
/>
<field name="generate_type" invisible="1" />
<field
name="barcode_base"
attrs="{
'invisible': [('barcode_rule_id', '=', False)],
'readonly': [('generate_type', '!=', 'manual')]}"
groups="barcodes_generator_abstract.generate_barcode"
colspan="2"
/>
<button
name="generate_base"
type="object"
string="Generate Base (Using Sequence)"
attrs="{'invisible': ['|',
('generate_type', '!=', 'sequence'),
('barcode_base', '!=', 0)]}"
groups="barcodes_generator_abstract.generate_barcode"
colspan="2"
/>
</field>
<field name="barcode" position="attributes">
<attribute
name="attrs"
>{'readonly': [('generate_type', '=', 'sequence')]}</attribute>
</field>
<field name="barcode" position="after">
<button
name="generate_barcode"
type="object"
string="Generate Barcode (Using Barcode Rule)"
attrs="{'invisible': ['|',
('barcode_rule_id', '=', False),
('barcode_base', '=', 0)]}"
groups="barcodes_generator_abstract.generate_barcode"
colspan="2"
/>
</field>
</field>
</record>
</odoo>

View file

@ -1,40 +0,0 @@
Code Backend Theme
==================
* Code Backend Theme module for Odoo 16 community editions
Installation
============
- www.odoo.com/documentation/16.0/setup/install.html
- Install our custom addon
License
-------
General Public License, Version 3 (LGPL v3).
(https://www.odoo.com/documentation/user/14.0/legal/licenses/licenses.html)
Company
-------
* 'Cybrosys Techno Solutions <https://cybrosys.com/>'__
Credits
-------
* 'Cybrosys Techno Solutions <https://cybrosys.com/>'__
Contacts
--------
* Mail Contact : odoo@cybrosys.com
Bug Tracker
-----------
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported.
Maintainer
==========
This module is maintained by Cybrosys Technologies.
For support and more information, please visit https://www.cybrosys.com
Further information
===================
HTML Description: `<static/description/index.html>`__

View file

@ -1,22 +0,0 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2021-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>)
#
# You can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from .hooks import test_pre_init_hook, test_post_init_hook

View file

@ -1,64 +0,0 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2021-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>)
#
# You can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
{
"name": "Code Backend Theme V16",
"description": """Minimalist and elegant backend theme for Odoo 16, Backend Theme, Theme""",
"summary": "Code Backend Theme V16 is an attractive theme for backend",
"category": "Themes/Backend",
"version": "16.0.1.0.2",
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'maintainer': 'Cybrosys Techno Solutions',
'website': "https://www.cybrosys.com",
"depends": ['base', 'web', 'mail'],
"data": [
'views/layout.xml',
'views/icons.xml',
],
'assets': {
'web.assets_backend': [
'code_backend_theme/static/src/xml/styles.xml',
'code_backend_theme/static/src/xml/top_bar.xml',
'code_backend_theme/static/src/scss/theme_accent.scss',
'code_backend_theme/static/src/scss/navigation_bar.scss',
'code_backend_theme/static/src/scss/datetimepicker.scss',
'code_backend_theme/static/src/scss/theme.scss',
'code_backend_theme/static/src/scss/sidebar.scss',
'code_backend_theme/static/src/js/chrome/sidebar_menu.js',
'code_backend_theme/static/src/js/fields/colors.js',
],
'web.assets_frontend': [
'code_backend_theme/static/src/scss/login.scss',
],
},
'images': [
'static/description/banner.png',
'static/description/theme_screenshot.png',
],
'license': 'LGPL-3',
'pre_init_hook': 'test_pre_init_hook',
'post_init_hook': 'test_post_init_hook',
'installable': True,
'application': False,
'auto_install': False,
}

View file

@ -1,6 +0,0 @@
## Module <code_backend_theme>
#### 17.10.2022
#### Version 16.0.1.0.0
#### ADD
Initial Commit

View file

@ -1,292 +0,0 @@
"""Hooks for Changing Menu Web_icon"""
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2021-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>)
#
# You can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
import base64
from odoo import api, SUPERUSER_ID
from odoo.modules import get_module_resource
def test_pre_init_hook(cr):
"""pre init hook"""
env = api.Environment(cr, SUPERUSER_ID, {})
menu_item = env['ir.ui.menu'].search([('parent_id', '=', False)])
for menu in menu_item:
if menu.name == 'Contacts':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Contacts.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Link Tracker':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Link Tracker.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Dashboards':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Dashboards.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Sales':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Sales.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Invoicing':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Invoicing.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Inventory':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Inventory.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Purchase':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Purchase.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Calendar':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Calendar.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'CRM':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'CRM.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Note' or menu.name == 'Notes':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Note.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Website':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Website.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Point of Sale':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Point of Sale.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Manufacturing':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Manufacturing.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Repairs':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Repairs.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Email Marketing':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Email Marketing.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'SMS Marketing':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'SMS Marketing.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Project':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Project.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Surveys':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Surveys.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Employees':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Employees.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Recruitment':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Recruitment.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Attendances':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Attendances.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Time Off':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Time Off.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Expenses':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Expenses.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Maintenance':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Maintenance.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Live Chat':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Live Chat.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Lunch':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Lunch.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Fleet':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Fleet.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Timesheets':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Timesheets.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Events':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Events.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'eLearning':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'eLearning.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Members':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Members.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
def test_post_init_hook(cr, registry):
"""post init hook"""
env = api.Environment(cr, SUPERUSER_ID, {})
menu_item = env['ir.ui.menu'].search([('parent_id', '=', False)])
for menu in menu_item:
if menu.name == 'Contacts':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Contacts.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Link Tracker':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Link Tracker.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Dashboards':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Dashboards.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Sales':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Sales.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Invoicing' or menu.name == 'Accounting':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Invoicing.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Inventory':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Inventory.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Purchase':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Purchase.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Calendar':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Calendar.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'CRM':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'CRM.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Note':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Note.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Website':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Website.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Point of Sale':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Point of Sale.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Manufacturing':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Manufacturing.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Repairs':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Repairs.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Email Marketing':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Email Marketing.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'SMS Marketing':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'SMS Marketing.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Project':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Project.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Surveys':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Surveys.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Employees':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Employees.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Recruitment':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Recruitment.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Attendances':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Attendances.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Time Off':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Time Off.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Expenses':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Expenses.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Maintenance':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Maintenance.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Live Chat':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Live Chat.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Lunch':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Lunch.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Fleet':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Fleet.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Timesheets':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Timesheets.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Events':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Events.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'eLearning':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'eLearning.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})
if menu.name == 'Members':
img_path = get_module_resource(
'code_backend_theme', 'static', 'src', 'img', 'icons', 'Members.png')
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())})

Binary file not shown.

Before

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 168 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 310 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 576 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 733 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 911 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 673 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 878 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 653 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 905 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 839 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 427 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 627 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 988 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 589 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 967 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 722 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 522 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 606 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 290 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 334 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 222 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 KiB

Some files were not shown because too many files have changed in this diff Show more