Commit c1b4c2ef by François C.

Add Supercafoutch addons directory

parent 58222c66
# -*- encoding: utf-8 -*-
##############################################################################
#
# Sale - Food Module for Odoo
# Copyright (C) 2012-Today GRAP (http://www.grap.coop)
# @author Julien WESTE
# @author Sylvain LE GAL (https://twitter.com/legalsylvain)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from . import model
from . import report
# -*- coding: utf-8 -*-
##############################################################################
#
# Sale - Food Module for Odoo
# Copyright (C) 2012-Today GRAP (http://www.grap.coop)
# @author Julien WESTE
# @author Sylvain LE GAL (https://twitter.com/legalsylvain)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
{
'name': 'Supercafoutch Price Tag',
'version': '9.0.1.0.1',
'category': 'Custom',
'description': """
Functionnalities
- Showing a new tab `Food Informations` on product form view.
- Default price tag for products with its management by user's right.
""",
'author': 'GRAP,'
'Akretion - Julien WESTE - original',
'website': 'http://www.grap.coop',
'license': 'AGPL-3',
'depends': [
'product',
'product_to_print',
'report',
'l10n_fr_department',
'purchase_package_qty',
],
'data': [
'security/res_groups.yml',
'security/ir.model.access.csv',
'data/ir_actions_report_xml.yml',
'data/report_paperformat.xml',
'data/pricetag_model.xml',
'data/product_category_print.xml',
'report/coop_custom_product_report.xml',
'report/report_pricetag.xml',
'views/view_product_label.xml',
'views/view_product_product.xml',
'views/view_product_template.xml',
'views/view_product_uom_categ.xml',
'views/action.xml',
'views/menu.xml',
],
'demo': [
'demo/res_groups.yml',
],
'css': [
'static/src/css/pricetag.css',
],
}
-
I remove report_product_label on button "Print"
-
!python {model: ir.actions.report.xml}: |
report_product_label_id = self.search(cr, uid, [('report_name', '=', 'product.report_productlabel')])
report_product_label = self.browse(cr, uid, report_product_label_id[0])
if report_product_label and report_product_label.ir_values_id:
report_product_label.unlink_action()
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="product_to_print.pricetag_model_default" model="pricetag.model">
<field name="pricetag_paperformat_id" ref="bulk_product_pricetag.paperformat_pricetag"/>
<field name="report_model">bulk_product_pricetag.report_pricetag</field>
</record>
</odoo>
<?xml version="1.0"?>
<!--
Copyright (C) 2016-Today: La Louve (<http://www.lalouve.net/>)
@author: Julien Weste
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-->
<odoo>
<record model="product.category.print" id="demo_category">
<field name="name">Default Category</field>
<field name="field_ids" eval="[(4, ref('product.field_product_product_name')),(4, ref('product.field_product_product_list_price'))]" />
<field name="pricetag_model_id" ref="product_to_print.pricetag_model_default"/>
</record>
</odoo>
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="paperformat_pricetag" model="report.paperformat">
<field name="name">Default pricetag paper</field>
<field name="default" eval="True" />
<field name="format">A4</field>
<field name="page_height">0</field>
<field name="page_width">0</field>
<field name="orientation">Portrait</field>
<field name="margin_top">8</field>
<field name="margin_bottom">1</field>
<field name="margin_left">3</field>
<field name="margin_right">2</field>
<field name="header_line" eval="False" />
<field name="header_spacing">0</field>
<field name="dpi">2400</field>
</record>
</odoo>
\ No newline at end of file
# -*- encoding: utf-8 -*-
##############################################################################
#
# Sale - Food Module for Odoo
# Copyright (C) 2012-Today GRAP (http://www.grap.coop)
# @author Julien WESTE
# @author Sylvain LE GAL (https://twitter.com/legalsylvain)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
- !record {model: res.groups, id: group_food_manager}:
users:
- base.user_root
- !record {model: res.groups, id: base.group_sale_manager}:
users:
- base.user_root
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * bulk_product_pricetag
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 9.0c\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-25 21:25+0000\n"
"PO-Revision-Date: 2016-10-25 21:25+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: bulk_product_pricetag
#: code:addons/bulk_product_pricetag/model/product_template.py:207
#, python-format
msgid " - Category: "
msgstr " - Categorie: "
#. module: bulk_product_pricetag
#: code:addons/bulk_product_pricetag/model/product_template.py:205
#, python-format
msgid " - Range: "
msgstr " - Gamme: "
#. module: bulk_product_pricetag
#: selection:product.template,fresh_range:0
msgid "1 - Fresh"
msgstr "1 - Produit agricole frais"
#. module: bulk_product_pricetag
#: selection:product.template,fresh_range:0
msgid "2 - Canned"
msgstr "2 - En conserve / pasteurisé"
#. module: bulk_product_pricetag
#: selection:product.template,fresh_range:0
msgid "3 - Frozen"
msgstr "3 - Surgelé"
#. module: bulk_product_pricetag
#: selection:product.template,fresh_range:0
msgid "4 - Uncooked and Ready to Use"
msgstr "4 - Cru et prêt à l'emploi"
#. module: bulk_product_pricetag
#: selection:product.template,fresh_range:0
msgid "5 - Cooked and Ready to Use"
msgstr "5 - Cuit et prêt à l'emploi"
#. module: bulk_product_pricetag
#: selection:product.template,fresh_range:0
msgid "6 - Dehydrated and Shelf"
msgstr "6 - Déshydraté et longue conservation"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_template_is_mercuriale
msgid "A product in mercuriale has price that changes very regularly."
msgstr "Un produit en mercuriale voit son prix changer très fréquemment."
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_active
msgid "Active"
msgstr "Actif"
#. module: bulk_product_pricetag
#: selection:product.template,fresh_category:0
msgid "Category I"
msgstr "Catégorie I"
#. module: bulk_product_pricetag
#: selection:product.template,fresh_category:0
msgid "Category II"
msgstr "Catégorie II"
#. module: bulk_product_pricetag
#: selection:product.template,fresh_category:0
msgid "Category III"
msgstr "Catégorie III"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_fresh_category
msgid "Category for Fresh Product"
msgstr "Catégorie de produits frais"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_code
msgid "Code"
msgstr "Code"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.report_pricetag
msgid "Code:"
msgstr "Code:"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_company_id
msgid "Company"
msgstr "Société"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_template_country_id
msgid "Country of production of the product"
msgstr "Pays de production du produit"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_create_uid
msgid "Created by"
msgstr "Créé par"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_create_date
msgid "Created on"
msgstr "Créé le"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_template_department_id
msgid "Department of production of the product"
msgstr "Département de production du produit"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_display_name
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_report_bulk_product_pricetag_report_pricetag_display_name
msgid "Display Name"
msgstr "Nom affiché"
#. module: bulk_product_pricetag
#: code:addons/bulk_product_pricetag/model/product_template.py:219
#, python-format
msgid "Error ! Department %s doesn't belong to %s."
msgstr "Erreur ! Le département %s n'appartient pas au pays %s."
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_expiration_date_days
msgid "Expiration Date (Days)"
msgstr "DLC (En jour)"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_expiration_date_days
msgid "Expiration Consumption (Days)"
msgstr "Days before Consumption End (En jour)"
#. module: bulk_product_pricetag
#: selection:product.template,fresh_category:0
msgid "Extra"
msgstr "Extra"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_template_fresh_category
msgid "Extra - Hight Quality : product without default ;\n"
"Quality I - Good Quality : Product with little defaults ;\n"
"Quality II - Normal Quality : Product with default ;\n"
"Quality III - Bad Quality : Use this option only in specific situation."
msgstr "Extra - Excellente Qualité : Article sans défaut ;\n"
"Qualité I - Bonne Qualité : Article avec quelques défauts ;\n"
"Qualité II - Qualité Normal : Article avec défauts ;\n"
"Qualité III - Mauvaise Qualité : N'utilisez cette option que dans des cas spécifiques."
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_extra_note_bizerba_pricetag_1
msgid "Extra Note printed on Bizerba Pricetags #1"
msgstr "Information pour les étiquettes Bizerba #1"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_extra_note_bizerba_pricetag_2
msgid "Extra Note printed on Bizerba Pricetags #2"
msgstr "Information pour les étiquettes Bizerba #2"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_extra_food_info
msgid "Extra information for invoices"
msgstr "Information complémentaire sur facture"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_farming_method
msgid "Farming Method"
msgstr "Méthode de culture"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_template_expiration_date_days
msgid "Field used to compute the expiration date. (Number of days after packaging the product)"
msgstr "Champ utilisé pour calculer la DLC. (Nombre de jour après la date d'emballage du produit)"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.product_template_form_view_food
msgid "Food"
msgstr "Alimentaire"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.product_template_form_view_food
msgid "Food Informations"
msgstr "Informations Alimentaires"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_template_rack_instruction
msgid "For example, the number of packages that\n"
" should be stored on the rack"
msgstr "Par exemple, le nombre de colis qui\n"
" doivent être stockés en rayon"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_id
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_report_bulk_product_pricetag_report_pricetag_id
msgid "ID"
msgstr "ID"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_image
msgid "Image"
msgstr "Image"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.view_product_label_form
msgid "Information"
msgstr "Information"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_ingredients
msgid "Ingredients"
msgstr "Ingrédients"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_pricetag_coopinfos
msgid "La Louve custom fields"
msgstr "Champs spécifiques pour La Louve"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_pricetag_rackinfos
msgid "La Louve rack fields"
msgstr "Champs rayonnage pour La Louve"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.view_product_label_form
#: model:ir.ui.view,arch_db:bulk_product_pricetag.view_product_label_tree
msgid "Label"
msgstr "Label"
#. module: bulk_product_pricetag
#: model:ir.actions.act_window,name:bulk_product_pricetag.action_product_label
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_label_ids
#: model:ir.ui.menu,name:bulk_product_pricetag.menu_product_label
msgid "Labels"
msgstr "Labels"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label___last_update
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_report_bulk_product_pricetag_report_pricetag___last_update
msgid "Last Modified on"
msgstr "Dernière modification le"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_write_uid
msgid "Last Updated by"
msgstr "Mis à jour par"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_write_date
msgid "Last Updated on"
msgstr "Mis à jour le"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_maker_description
msgid "Maker"
msgstr "Producteur"
#. module: bulk_product_pricetag
#: model:res.groups,name:bulk_product_pricetag.group_food_manager
msgid "Manage Food fields"
msgstr "Gérer les champs Alimentaires"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_image_medium
msgid "Medium-sized image"
msgstr "Image de taille moyenne"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_label_image_medium
msgid "Medium-sized image of the product. It is automatically resized as a 128x128px image, with aspect ratio preserved, only when the image exceeds one of those sizes. Use this field in form views or some kanban views."
msgstr "Image de taille moyenne de l'article. Elle sera automatiquement redimensionnée à 128 x 128 px, en préservent le rapport hauteur/largeur, si l'image dépasse une de ces dimensions. Utilisez ce champ dans les vues formulaire ou certaines vues kanban."
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_is_mercuriale
#: model:ir.ui.view,arch_db:bulk_product_pricetag.view_product_product_search
msgid "Mercuriale Product"
msgstr "Produit en Mercuriale"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_name
msgid "Name"
msgstr "Nom"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_weight_net
msgid "Net Weight"
msgstr "Poids Net"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_note
msgid "Note"
msgstr "Note"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_rack_number_of_packages
msgid "Number of packages on the rack"
msgstr "Nombre de colis en rayon"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_template_farming_method
msgid "Organic Label"
msgstr "Label Bio"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.product_template_form_view_food
msgid "Origin"
msgstr "Origine"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_origin_description
msgid "Origin Complement"
msgstr "Complément d'origine"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_country_id
msgid "Origin Country"
msgstr "Pays d'origine"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_department_id
msgid "Origin Department"
msgstr "Département d'origine"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.report_pricetag
msgid "Origine:"
msgstr "Origine:"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_other_information
msgid "Other Information"
msgstr "Autres Informations"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.product_template_form_view_food
msgid "Price Tag"
msgstr "Etiquette"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_price_weight_net
msgid "Price by kg"
msgstr "Prix/kg"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_price_volume
msgid "Price by liter"
msgstr "Prix/L"
#. module: bulk_product_pricetag
#: model:ir.actions.report.xml,name:bulk_product_pricetag.pricetag
msgid "Pricetags"
msgstr "Étiquettes"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_uom_categ_pricetag_printable
msgid "Print on Price Tag"
msgstr "Imprimer sur l'étiquette"
#. module: bulk_product_pricetag
#: model:ir.model,name:bulk_product_pricetag.model_product_template
msgid "Product Template"
msgstr "Modèle d'article"
#. module: bulk_product_pricetag
#: model:ir.model,name:bulk_product_pricetag.model_product_uom_categ
msgid "Product uom categ"
msgstr "Catégorie d'UdM d'article"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_template_origin_description
msgid "Production location complementary information"
msgstr "Information complémentaire sur la production"
#. module: bulk_product_pricetag
#: model:ir.actions.act_window,name:bulk_product_pricetag.action_product_product_food
#: model:ir.ui.menu,name:bulk_product_pricetag.menu_product_product_food
#: model:ir.ui.view,arch_db:bulk_product_pricetag.view_product_product_food_tree
msgid "Products (Food)"
msgstr "Articles (Alimentaire)"
#. module: bulk_product_pricetag
#: model:ir.actions.act_window,name:bulk_product_pricetag.action_product_product_origin
#: model:ir.ui.menu,name:bulk_product_pricetag.menu_product_product_origin_3
#: model:ir.ui.view,arch_db:bulk_product_pricetag.view_product_product_origin_tree
msgid "Products (Origin)"
msgstr "Articles (Origine)"
#. module: bulk_product_pricetag
#: model:ir.actions.act_window,name:bulk_product_pricetag.action_product_product_pricetag
#: model:ir.ui.menu,name:bulk_product_pricetag.menu_product_product_pricetag_3
msgid "Products (Price Tags)"
msgstr "Articles (Etiquettes)"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_rack_instruction
msgid "Rack Instruction"
msgstr "Instructions rayonnage"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_rack_location
msgid "Rack Location"
msgstr "Rayon"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_fresh_range
msgid "Range for Fresh Product"
msgstr "Gamme de produits frais alimentaires"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_image_small
msgid "Small-sized image"
msgstr "Vignette de l'image"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_label_image_small
msgid "Small-sized image of the product. It is automatically resized as a 64x64px image, with aspect ratio preserved. Use this field anywhere a small image is required."
msgstr "Vignette de l'article. Elle sera automatiquement redimensionnée à 64 x 64 px, en préservent le rapport hauteur/largeur. Utilisez ce champ partout où une petite image est nécessaire."
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.product_template_form_view_food
msgid "Pricetag Information"
msgstr "Infos Étiquette"
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_template_pricetag_origin
msgid "Text about origin"
msgstr "Texte concernant l'origine"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_template_rack_location
msgid "The name or place of the rack"
msgstr "L'emplacement du rayon"
#. module: bulk_product_pricetag
#: model:ir.model.fields,help:bulk_product_pricetag.field_product_label_image
msgid "This field holds the image used as image for the label, limited to 1024x1024px."
msgstr "Ce champs contient l'impage utilisé pour le label. Limité à 1024x1024px."
#. module: bulk_product_pricetag
#: model:ir.model.fields,field_description:bulk_product_pricetag.field_product_label_website
msgid "Website"
msgstr "Site Web"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.report_pricetag
msgid "kg ---"
msgstr "kg ---"
#. module: bulk_product_pricetag
#: model:ir.model,name:bulk_product_pricetag.model_product_label
msgid "product.label"
msgstr "product.label"
#. module: bulk_product_pricetag
#: model:ir.model,name:bulk_product_pricetag.model_report_bulk_product_pricetag_report_pricetag
msgid "report.bulk_product_pricetag.report_pricetag"
msgstr "report.bulk_product_pricetag.report_pricetag"
#. module: bulk_product_pricetag
#: model:ir.ui.view,arch_db:bulk_product_pricetag.report_pricetag
msgid "€/kg<br/>"
msgstr "€/kg<br/>"
# -*- coding: utf-8 -*-
##############################################################################
#
# Sale - Food Module for Odoo
# Copyright (C) 2012-Today GRAP (http://www.grap.coop)
# @author Julien WESTE
# @author Sylvain LE GAL (https://twitter.com/legalsylvain)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from . import product_label
from . import product_template
from . import product_uom_categ
# -*- encoding: utf-8 -*-
##############################################################################
#
# Sale - Food Module for Odoo
# Copyright (C) 2012-Today GRAP (http://www.grap.coop)
# Copyright (C) 2016-Today La Louve (http://www.lalouve.net)
# @author Julien WESTE
# @author Sylvain LE GAL (https://twitter.com/legalsylvain)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import tools, fields, models, api
class ProductLabel(models.Model):
_name = 'product.label'
# Columns Section
code = fields.Char(string='Code', required=True)
name = fields.Char(string='Name', required=True)
active = fields.Boolean(string='Active', default=True)
company_id = fields.Many2one(string='Company', comodel_name='res.company')
website = fields.Char(string='Website')
note = fields.Text(string='Note')
# image: all image fields are base64 encoded and PIL-supported
image = fields.Binary(
string='Image', attachment=True, help="This field holds the image"
" used as image for the label, limited to 1024x1024px.")
image_medium = fields.Binary(
string='Medium-sized image', attachment=True, help="Medium-sized"
" image of the product. It is automatically resized as a 128x128px"
" image, with aspect ratio preserved, only when the image exceeds one"
" of those sizes. Use this field in form views or some kanban views.")
image_small = fields.Binary(
string='Small-sized image', attachment=True, help="Small-sized image"
" of the product. It is automatically resized as a 64x64px image,"
" with aspect ratio preserved. Use this field anywhere a small image"
" is required.")
# Overload Section
@api.model
def create(self, vals):
tools.image_resize_images(vals)
return super(ProductLabel, self).create(vals)
@api.multi
def write(self, vals):
tools.image_resize_images(vals)
return super(ProductLabel, self).write(vals)
# -*- coding: utf-8 -*-
##############################################################################
#
# Sale - Food Module for Odoo
# Copyright (C) 2012-Today GRAP (http://www.grap.coop)
# @author Julien WESTE
# @author Sylvain LE GAL (https://twitter.com/legalsylvain)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import api, fields, models, _
from openerp.exceptions import UserError
class ProductTemplate(models.Model):
_inherit = 'product.template'
# Constant Section
_FRESH_CATEGORY_KEYS = [
('extra', 'Extra'),
('1', 'Category I'),
('2', 'Category II'),
('3', 'Category III'),
]
_FRESH_RANGE_KEYS = [
('1', '1 - Fresh'),
('2', '2 - Canned'),
('3', '3 - Frozen'),
('4', '4 - Uncooked and Ready to Use'),
('5', '5 - Cooked and Ready to Use'),
('6', '6 - Dehydrated and Shelf'),
]
@api.depends('farming_method', 'other_information')
@api.multi
def _compute_pricetag_coopinfos(self):
for pt in self:
tmp = ''
if pt.other_information:
tmp = pt.other_information
if pt.farming_method:
tmp = pt.farming_method + \
(' - ' + tmp if tmp else '')
pt.pricetag_coopinfos = tmp
@api.depends(
'rack_instruction', 'rack_location', 'rack_number_of_packages',
'default_seller_id')
@api.multi
def _compute_pricetag_rackinfos(self):
for pt in self:
tmp = ''
if pt.rack_instruction:
tmp = pt.rack_instruction
if pt.rack_location:
tmp = pt.rack_location + \
(' - ' + tmp if tmp else '')
if pt.rack_number_of_packages:
tmp = pt.rack_number_of_packages + \
(' - ' + tmp if tmp else '')
if pt.default_seller_id.package_qty:
tmp = str(pt.default_seller_id.package_qty) + \
(' - ' + tmp if tmp else '')
pt.pricetag_rackinfos = tmp
# Columns section
label_ids = fields.Many2many(
string='Labels', comodel_name='product.label',
relation='product_label_product_rel',
column_1='product_id', column_2='label_id')
expiration_date_days = fields.Integer(
string='Expiration Date (Days)', help="Field used to compute the"
" expiration date. (Number of days after packaging the product)")
expiration_comsumption_days = fields.Integer(
string='Expiration Consumption (Days)')
ingredients = fields.Text(string='Ingredients')
extra_note_bizerba_pricetag_1 = fields.Char(
string='Extra Note printed on Bizerba Pricetags #1')
extra_note_bizerba_pricetag_2 = fields.Char(
string='Extra Note printed on Bizerba Pricetags #2')
is_mercuriale = fields.Boolean(
'Mercuriale Product', help="A product in mercuriale has price"
" that changes very regularly.")
weight_net = fields.Float('Net Weight', default=0)
price_volume = fields.Char(
compute='_compute_price_volume', string='Price by liter')
price_weight_net = fields.Char(
compute='_compute_price_weight_net', string='Price by kg')
country_id = fields.Many2one(
string='Origin Country', comodel_name='res.country',
help="Country of production of the product")
department_id = fields.Many2one(
string='Origin Department', comodel_name='res.country.department',
help="Department of production of the product")
origin_description = fields.Char(
string='Origin Complement',
help="Production location complementary information",)
maker_description = fields.Char(string='Maker')
pricetag_origin = fields.Char(
compute='_compute_pricetag_origin', string='Text about origin')
fresh_category = fields.Selection(
_FRESH_CATEGORY_KEYS, string='Category for Fresh Product',
help="Extra - Hight Quality : product without default ;\n"
"Quality I - Good Quality : Product with little defaults ;\n"
"Quality II - Normal Quality : Product with default ;\n"
"Quality III - Bad Quality : Use this option only in"
" specific situation.")
fresh_range = fields.Selection(
_FRESH_RANGE_KEYS, 'Range for Fresh Product')
extra_food_info = fields.Char(
compute='_compute_extra_food_info',
string='Extra information for invoices')
rack_instruction = fields.Char(
"Rack Instruction", help="""For example, the number of packages that
should be stored on the rack""")
rack_location = fields.Char(
"Rack Location", help="""The name or place of the rack""")
rack_number_of_packages = fields.Char(
"Number of packages on the rack")
farming_method = fields.Char(
"Farming Method", help="""Organic Label""")
other_information = fields.Char("Other Information")
pricetag_rackinfos = fields.Char(
compute=_compute_pricetag_rackinfos, string='Coop rack fields')
pricetag_coopinfos = fields.Char(
compute=_compute_pricetag_coopinfos, string='Coop custom fields')
category_print_id = fields.Many2one(
comodel_name='product.category.print', string='Print Category')
# Compute Section
@api.depends('list_price', 'volume')
@api.multi
def _compute_price_volume(self):
"""Return the price by liter"""
for pt in self:
if pt.list_price and pt.volume:
pt.price_volume = "%.2f" % round(pt.list_price / pt.volume, 2)
else:
pt.price_volume = ""
@api.depends('list_price', 'weight_net')
@api.multi
def _compute_price_weight_net(self):
"""Return the price by kg"""
for pt in self:
if pt.list_price and pt.weight_net:
pt.price_weight_net = "%.2f" % round(
pt.list_price / pt.weight_net, 2)
else:
pt.price_weight_net = ""
@api.depends('origin_description', 'department_id', 'country_id')
@api.multi
def _compute_pricetag_origin(self):
for pt in self:
tmp = ''
if pt.origin_description:
tmp = pt.origin_description
if pt.department_id:
tmp = pt.department_id.name + \
(' - ' + tmp if tmp else '')
if pt.country_id:
tmp = pt.country_id.name.upper() + \
(' - ' + tmp if tmp else '')
if pt.maker_description:
tmp = (tmp and (tmp + ' - ') or '') + pt.maker_description
pt.pricetag_origin = tmp
@api.depends('fresh_category', 'fresh_range')
@api.multi
def _compute_extra_food_info(self):
"""Return extra information about food for legal documents"""
for pt in self:
tmp = ''
if pt.fresh_range:
tmp += _(' - Range: ') + pt.fresh_range
if pt.fresh_category:
tmp += _(" - Category: ") + pt.fresh_category
pt.extra_food_info = tmp
# Constraints section
@api.multi
@api.constrains('department_id', 'country_id')
def _check_origin_department_country(self):
for pt in self:
if pt.department_id.country_id and \
pt.department_id.country_id.id != \
pt.country_id.id:
raise UserError(
_("Error ! Department %s doesn't belong to %s.")
% (pt.department_id.name, pt.country_id.name))
# Views section
@api.multi
@api.onchange('department_id')
def onchange_department_id(self):
for pt in self:
if pt.department_id:
pt.country_id = pt.department_id.country_id
else:
pt.country_id = False
@api.multi
@api.onchange('country_id')
def onchange_country_id(self):
for pt in self:
if pt.country_id:
pt.department_id = False
# -*- coding: utf-8 -*-
##############################################################################
#
# Sale - Food Module for Odoo
# Copyright (C) 2012-Today GRAP (http://www.grap.coop)
# @author Julien WESTE
# @author Sylvain LE GAL (https://twitter.com/legalsylvain)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from openerp import fields, models
class ProductUomCateg(models.Model):
_inherit = 'product.uom.categ'
pricetag_printable = fields.Boolean('Print on Price Tag')
# -*- coding: utf-8 -*-
##############################################################################
#
# Sale - Food Module for Odoo
# Copyright (C) 2012-Today GRAP (http://www.grap.coop)
# @author Julien WESTE
# @author Sylvain LE GAL (https://twitter.com/legalsylvain)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from . import report_pricetag
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- QWeb Reports -->
<report
id="pricetag"
model="report.pricetag"
string="Pricetags"
report_type="qweb-pdf"
name="bulk_product_pricetag.report_pricetag"
file="bulk_product_pricetag.report_pricetag"
attachment_use="False"
/>
<record id="bulk_product_pricetag.pricetag" model="ir.actions.report.xml">
<field name="paperformat_id" ref="bulk_product_pricetag.paperformat_pricetag"/>
<field name="attachment_use" eval="0"/>
</record>
</odoo>
# -*- coding: utf-8 -*-
from openerp import api, models
class ReportPricetag(models.AbstractModel):
_name = 'report.bulk_product_pricetag.report_pricetag'
@api.model
def _get_products(self, lines, fields):
result = []
line_ids = self.env['product.pricetag.wizard.line'].browse(lines)
for line in line_ids:
val = {}
val['line'] = line
val['product'] = line.product_id
result.append(val)
return result
@api.multi
def render_html(self, data):
self.model = self.env.context.get('active_model')
docs = self.env[self.model].browse(self.env.context.get('active_id'))
line_ids = data['form'].get('line_ids', [])
fields = data['form'].get('fields', [])
report_context = self._context.copy()
report_context.update(data['form'].get('used_context', {}))
product_res = self.with_context(report_context)._get_products(
line_ids, fields)
pricetag_model = self.env['product.category.print'].browse(
data['form']['category_print_id']).pricetag_model_id
report_model = pricetag_model.report_model
docargs = {
'doc_ids': self.ids,
'partner_id': self.env.user.partner_id,
'doc_model': self.model,
'data': data['form'],
'docs': docs,
'Products': product_res,
}
return self.env['report'].render(
report_model, docargs)
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="minimal_layout_inherit" inherit_id="report.minimal_layout">
<xpath expr="//head" position="inside">
<link rel='stylesheet' href="/bulk_product_pricetag/static/src/css/pricetag.css"/>
</xpath>
</template>
<template id="report_pricetag">
<t t-call="report.html_container">
<div class="page">
<t t-foreach="Products" t-as="product">
<t t-foreach="product['line'].quantity" t-as="q">
<div class="label_container">
<div class="pricetag">
<div class="label_top">
<div class="product_name">
<t t-esc="product['product'].name"/>
</div>
</div>
<div class="label_left">
<div class="product_informations">
<t t-if="product['product'].code">Code: <t t-esc="product['product'].code"/><br/></t>
<t t-if="product['product'].weight_net"><t t-esc="product['product'].weight_net"/> kg --- <t t-esc="product['product'].price_weight_net"/> €/kg<br/></t>
<t t-if="not(product['product'].weight_net) and product['product'].volume"><t t-esc="product['product'].volume"/>L --- <t t-esc="product['product'].price_volume"/> €/L<br/></t>
</div>
</div>
<div class="label_right">
<div class="product_price">
<t t-esc="'%0.2f' % (product['product'].list_price)"/>
</div>
</div>
<div class="label_bottom">
<div class="product_shelf_origin">
<t name="pricetag_origine" t-if="product['product'].pricetag_origin">Origine: <t t-esc="product['product'].pricetag_origin"/><br/></t>
</div>
<div class="product_shelf_rackinfo_barcode">
<t t-if="product['product'].pricetag_rackinfos"><t t-esc="product['product'].pricetag_rackinfos"/></t>&#160;&#160;
<t t-if="product['product'].barcode"><t t-esc="product['product'].barcode"/></t>
</div>
<div class="pricetag_shelf_coopinfos">
<t t-if="product['product'].pricetag_coopinfos"><t t-esc="product['product'].pricetag_coopinfos"/> </t>
</div>
</div>
</div>
</div>
</t>
</t>
</div>
</t>
</template>
</odoo>
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
,,,,,,,
,,,,,,,
access_model_product_label,access_model_product_label,bulk_product_pricetag.model_product_label,,1,0,0,0
access_model_product_label,access_model_product_label,bulk_product_pricetag.model_product_label,bulk_product_pricetag.group_food_manager_sc,1,1,1,0
# -*- coding: utf-8 -*-
##############################################################################
#
# Sale - Food Module for Odoo
# Copyright (C) 2012-Today GRAP (http://www.grap.coop)
# @author Julien WESTE
# @author Sylvain LE GAL (https://twitter.com/legalsylvain)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
- !record {model: res.groups, id: group_food_manager_sc}:
category_id: product_to_print.module_product_to_print
name: Manage Food fields SC
.page_pricetag{
padding:0px;margin:58mm;border:0px;overflow:hidden;
}
.body_pricetag{
padding:0px;margin:50mm;border:0px;overflow:hidden;
}
.label_container{
page-break-inside: avoid;
width:6.4cm; height:3.45cm; float:left;
margin-left:0cm;
margin-right:0cm;
margin-top:0cm;
margin-bottom:0cm;
padding:0cm;
}
.label_border{
border:1px solid;
}
.pricetag{
height: 100%;
width:100%;
padding:0.1cm;
}
.label_top{
width:100%; height:22%; float:left;
margin-bottom:0.2cm;
}
.label_left{
width:60%; height:33%; float:left;
}
.label_right{
width:40%; height:33%; float:right;
}
.label_bottom{
width:100%; height:45%; float:left;
font-size: 11px;
}
.product_name{
height: 100%;
width:100%;
font-size: 12px;
font-weight:bold;
line-height:13px;
overflow: hidden;
}
.product_informations{
background-color: rgba(255, 255, 255, 1);
width:100%;height:100%;
font-size: 11px;
}
.product_price{
width:100%;height:100%;
line-height: 1.2cm;
text-align:center; font-size:22px; font-weight:bold;
}
.product_shelf_origin{
width: 100%;
height: 20%;
}
.product_shelf_rackinfo_barcode{
width: 100%;
height: 20%;
}
.pricetag_shelf_coopinfos{
width: 100%;
height: 60%;
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!-- ********************************************************************** -->
<!--Sale - Food Module for Odoo -->
<!--Copyright (C) 2012-Today GRAP (http://www.grap.coop) -->
<!--@author Julien Weste -->
<!--@author Sylvain LE GAL (https://twitter.com/legalsylvain) -->
<!--This program is free software: you can redistribute it and/or modify -->
<!--it under the terms of the GNU Affero General Public License as -->
<!--published by the Free Software Foundation, either version 3 of the -->
<!--License, or (at your option) any later version. -->
<!--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 Affero General Public License for more details. -->
<!--You should have received a copy of the GNU Affero General Public License-->
<!--along with this program. If not, see <http://www.gnu.org/licenses/>. -->
<!-- ********************************************************************** -->
<odoo>
<record id="action_product_product_food" model="ir.actions.act_window">
<field name="name">Products (Food)</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">product.product</field>
<field name="view_type">form</field>
<field name="view_mode">tree</field>
<field name="view_id" ref="view_product_product_food_tree"/>
</record>
<record id="action_product_product_origin" model="ir.actions.act_window">
<field name="name">Products (Origin)</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">product.product</field>
<field name="view_type">form</field>
<field name="view_mode">tree</field>
<field name="view_id" ref="view_product_product_origin_tree"/>
</record>
<record id="action_product_product_pricetag" model="ir.actions.act_window">
<field name="name">Products (Price Tags)</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">product.product</field>
<field name="view_type">form</field>
<field name="view_mode">tree</field>
<field name="context">{'search_default_print_todo':1}</field>
<field name="search_view_id" ref="view_product_product_search"/>
<!-- <field name="view_id" ref="view_product_product_pricetag_tree"/> -->
</record>
<record id="action_product_label" model="ir.actions.act_window">
<field name="name">Labels</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">product.label</field>
<field name="view_type">form</field>
<field name="view_mode">kanban,tree,form</field>
</record>
</odoo>
<?xml version="1.0" encoding="UTF-8"?>
<!-- ********************************************************************** -->
<!--Sale - Food Module for Odoo -->
<!--Copyright (C) 2012-Today GRAP (http://www.grap.coop) -->
<!--@author Julien Weste -->
<!--@author Sylvain LE GAL (https://twitter.com/legalsylvain) -->
<!--This program is free software: you can redistribute it and/or modify -->
<!--it under the terms of the GNU Affero General Public License as -->
<!--published by the Free Software Foundation, either version 3 of the -->
<!--License, or (at your option) any later version. -->
<!--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 Affero General Public License for more details. -->
<!--You should have received a copy of the GNU Affero General Public License-->
<!--along with this program. If not, see <http://www.gnu.org/licenses/>. -->
<!-- ********************************************************************** -->
<odoo>
<!-- Model: product.label -->
<menuitem id="menu_product_label"
parent="base.menu_sale_config"
action="action_product_label"/>
<!-- Model: product.product -->
<menuitem id="menu_product_product_food"
parent="base.menu_product"
action="action_product_product_food"/>
<menuitem id="menu_product_product_origin_3"
parent="base.menu_product"
action="action_product_product_origin"/>
<menuitem id="menu_product_product_pricetag_3"
parent="base.menu_product"
action="action_product_product_pricetag"/>
</odoo>
<?xml version="1.0" encoding="UTF-8"?>
<!-- ********************************************************************** -->
<!--Sale - Food Module for Odoo -->
<!--Copyright (C) 2012-Today GRAP (http://www.grap.coop) -->
<!--@author Julien Weste -->
<!--@author Sylvain LE GAL (https://twitter.com/legalsylvain) -->
<!--This program is free software: you can redistribute it and/or modify -->
<!--it under the terms of the GNU Affero General Public License as -->
<!--published by the Free Software Foundation, either version 3 of the -->
<!--License, or (at your option) any later version. -->
<!--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 Affero General Public License for more details. -->
<!--You should have received a copy of the GNU Affero General Public License-->
<!--along with this program. If not, see <http://www.gnu.org/licenses/>. -->
<!-- ********************************************************************** -->
<odoo>
<record id="view_product_label_tree" model="ir.ui.view">
<field name="model">product.label</field>
<field name="arch" type="xml">
<tree string="Label">
<field name="code"/>
<field name="name"/>
<field name="website"/>
<field name="company_id" groups="base.group_multi_company"/>
</tree>
</field>
</record>
<record id="view_product_label_form" model="ir.ui.view">
<field name="model">product.label</field>
<field name="arch" type="xml">
<form string="Label" version="7.0">
<sheet>
<field name="image" widget="image" class="oe_avatar oe_left"/>
<div class="oe_title">
<div class="oe_edit_only"><label for="name"/></div>
<h1><field name="name"/></h1>
<label for="code" class="oe_edit_only"/>
<h2><field name="code"/></h2>
</div>
<notebook>
<page string="Information">
<group col="4">
<field name="active"/>
<field name="company_id" groups="base.group_multi_company"/>
<newline />
<field name="website" colspan="4"/>
<field name="note" widget="html" colspan="4"/>
</group>
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<record id="view_product_label_kanban" model="ir.ui.view">
<field name="model">product.label</field>
<field name="arch" type="xml">
<kanban>
<field name="image"/>
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_box oe_kanban_color_border">
<div class="product_label_kanban">
<div class="product_label_kanban_name">
<a type="edit">
<field name="name"/>
</a>
</div>
<div class="product_label_kanban_image">
<img t-att-src="kanban_image('product.label', 'image', record.id.value)" width="48"/>
</div>
</div>
</div>
</t>
</templates>
</kanban>
</field>
</record>
</odoo>
<?xml version="1.0" encoding="UTF-8"?>
<!-- ********************************************************************** -->
<!--Sale - Food Module for Odoo -->
<!--Copyright (C) 2012-Today GRAP (http://www.grap.coop) -->
<!--@author Julien Weste -->
<!--@author Sylvain LE GAL (https://twitter.com/legalsylvain) -->
<!--This program is free software: you can redistribute it and/or modify -->
<!--it under the terms of the GNU Affero General Public License as -->
<!--published by the Free Software Foundation, either version 3 of the -->
<!--License, or (at your option) any later version. -->
<!--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 Affero General Public License for more details. -->
<!--You should have received a copy of the GNU Affero General Public License-->
<!--along with this program. If not, see <http://www.gnu.org/licenses/>. -->
<!-- ********************************************************************** -->
<odoo>
<!-- Model: product.product -->
<record id="view_product_product_search" model="ir.ui.view">
<field name="model">product.product</field>
<field name="inherit_id" ref="product.product_search_form_view"/>
<field name="arch" type="xml">
<filter name="filter_to_sell" position="after">
<separator/>
<filter string="Mercuriale Product" name="is_mercuriale" domain="[('is_mercuriale', '=', True)]"/>
</filter>
</field>
</record>
<record id="view_product_product_food_tree" model="ir.ui.view">
<field name="model">product.product</field>
<field name="arch" type="xml">
<tree string="Products (Food)" editable="bottom">
<field name="name" readonly="1"/>
<field name="is_mercuriale"/>
<field name="fresh_category"/>
<field name="fresh_range"/>
</tree>
</field>
</record>
<record id="view_product_product_origin_tree" model="ir.ui.view">
<field name="model">product.product</field>
<field name="arch" type="xml">
<tree string="Products (Origin)" editable="bottom">
<field name="name" readonly="1"/>
<field name="country_id" options="{'quick_create':false}"/>
<field name="department_id" options="{'quick_create':false}"
domain="[('country_id', '=', country_id)]"/>
<field name="maker_description"/>
<field name="origin_description"/>
</tree>
</field>
</record>
</odoo>
<?xml version="1.0" encoding="UTF-8"?>
<!-- ********************************************************************** -->
<!--Sale - Food Module for Odoo -->
<!--Copyright (C) 2012-Today GRAP (http://www.grap.coop) -->
<!--@author Julien Weste -->
<!--@author Sylvain LE GAL (https://twitter.com/legalsylvain) -->
<!--This program is free software: you can redistribute it and/or modify -->
<!--it under the terms of the GNU Affero General Public License as -->
<!--published by the Free Software Foundation, either version 3 of the -->
<!--License, or (at your option) any later version. -->
<!--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 Affero General Public License for more details. -->
<!--You should have received a copy of the GNU Affero General Public License-->
<!--along with this program. If not, see <http://www.gnu.org/licenses/>. -->
<!-- ********************************************************************** -->
<odoo>
<record id="product_template_form_view_food" model="ir.ui.view">
<field name="model">product.template</field>
<field name="inherit_id" ref="product.product_template_form_view" />
<field name="arch" type="xml">
<notebook position="inside">
<page string="Food Informations" groups="bulk_product_pricetag.group_food_manager">
<group colspan="4">
<group>
<separator string="Origin" colspan="2"/>
<field name="country_id" options="{'quick_create':false}"/>
<field name="department_id" options="{'quick_create':false}"/>
<field name="origin_description"/>
<field name="maker_description"/>
</group>
<group>
<separator string="Food" colspan="2"/>
<field name="fresh_category"/>
<field name="fresh_range"/>
<field name="is_mercuriale"/>
<field name="label_ids" widget="many2many_tags"/>
</group>
<group>
<separator string="Price Tag" colspan="4"/>
<field name="expiration_date_days"/>
<field name="expiration_comsumption_days"/>
<field name="extra_note_bizerba_pricetag_1"/>
<field name="extra_note_bizerba_pricetag_2"/>
<field name="ingredients" widget="hmtl"/>
</group>
</group>
</page>
</notebook>
<xpath expr="//field[@name='weight']/.." position="after">
<field name="weight_net"/>
<field name="price_weight_net"/>
</xpath>
<xpath expr="//field[@name='volume']/.." position="after">
<field name="price_volume"/>
</xpath>
<xpath expr="//group[@name='group_standard_price']" position="after">
<group string="Pricetag Information" name="sticker_info">
<field name="rack_instruction"/>
<field name="rack_location"/>
<field name="rack_number_of_packages"/>
<field name="farming_method"/>
<field name="other_information"/>
</group>
</xpath>
</field>
</record>
</odoo>
<?xml version="1.0" encoding="UTF-8"?>
<!-- ********************************************************************** -->
<!--Sale - Food Module for Odoo -->
<!--Copyright (C) 2012-Today GRAP (http://www.grap.coop) -->
<!--@author Julien Weste -->
<!--@author Sylvain LE GAL (https://twitter.com/legalsylvain) -->
<!--This program is free software: you can redistribute it and/or modify -->
<!--it under the terms of the GNU Affero General Public License as -->
<!--published by the Free Software Foundation, either version 3 of the -->
<!--License, or (at your option) any later version. -->
<!--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 Affero General Public License for more details. -->
<!--You should have received a copy of the GNU Affero General Public License-->
<!--along with this program. If not, see <http://www.gnu.org/licenses/>. -->
<!-- ********************************************************************** -->
<odoo>
<!-- Model: product.uom.categ -->
<record id="view_product_uom_categ_form" model="ir.ui.view">
<field name="model">product.uom.categ</field>
<field name="inherit_id" ref="product.product_uom_categ_form_view" />
<field name="arch" type="xml">
<field name="name" position="after">
<field name="pricetag_printable"/>
</field>
</field>
</record>
</odoo>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment