From 22a192ee75868ef28435e7a3c182d2fb6907d651 Mon Sep 17 00:00:00 2001 From: "Dylan Kiss (dyki)" Date: Tue, 23 Dec 2025 08:57:36 +0000 Subject: [PATCH] [I18N] *: remove untranslated POT files These files are not translated at the moment. We are cleaning up their outdated POT files. If we ever want them translated, we can add them back in with the sync. closes odoo/documentation#15892 X-original-commit: b87e58788ac9e2d418e99c5d8629ba7b1b2313f5 Signed-off-by: Tiffany Chang (tic) Signed-off-by: Dylan Kiss (dyki) --- locale/sources/contributing.pot | 3018 --- locale/sources/developer.pot | 40505 ------------------------------ locale/sources/legal.pot | 5676 ----- 3 files changed, 49199 deletions(-) delete mode 100644 locale/sources/contributing.pot delete mode 100644 locale/sources/developer.pot delete mode 100644 locale/sources/legal.pot diff --git a/locale/sources/contributing.pot b/locale/sources/contributing.pot deleted file mode 100644 index 1cb12dc8b3..0000000000 --- a/locale/sources/contributing.pot +++ /dev/null @@ -1,3018 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) Odoo S.A. -# This file is distributed under the same license as the Odoo package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Odoo 17.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-30 09:16+0000\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: ../../content/contributing.rst:6 -msgid "Contributing" -msgstr "" - -#: ../../content/contributing.rst:8 -msgid "First off, **thank you** for landing here and considering contributing to Odoo!" -msgstr "" - -#: ../../content/contributing.rst:10 -msgid "This documentation serves as a guide for first-timer and veteran contributors. As an open-core project, Odoo accepts contributions from everyone, Odoo employees and members of the Odoo community alike. The Odoo community comprises users, developers, and other interested parties who contribute their time and expertise." -msgstr "" - -#: ../../content/contributing.rst:15 -msgid "Depending on your skill set and interest, there are many ways to contribute to Odoo. The table below lists the most important of them." -msgstr "" - -#: ../../content/contributing.rst:23 -msgid "Contribution" -msgstr "" - -#: ../../content/contributing.rst:24 -msgid "Description" -msgstr "" - -#: ../../content/contributing.rst:25 -msgid "Resources" -msgstr "" - -#: ../../content/contributing.rst:26 -msgid "Target Audience" -msgstr "" - -#: ../../content/contributing.rst:27 -msgid "Join the community" -msgstr "" - -#: ../../content/contributing.rst:28 -msgid "Participate in discussions on the forums, help answer questions, and assist other members of the Odoo community." -msgstr "" - -#: ../../content/contributing.rst:30 -msgid "`Odoo forums `_" -msgstr "" - -#: ../../content/contributing.rst:31 -msgid "Anyone interested in Odoo" -msgstr "" - -#: ../../content/contributing.rst:32 -msgid "Submit bug reports" -msgstr "" - -#: ../../content/contributing.rst:33 -msgid "Help improve the stability of Odoo by reporting the bugs that you discover in :doc:`supported versions ` directly to Odoo support. Make sure to include as many details (version, environment, test scenario...) as possible. If you don't have the Odoo Enterprise license required for contacting the support, open a new issue on the GitHub repository of Odoo." -msgstr "" - -#: ../../content/contributing.rst:38 -msgid "`Odoo support `_" -msgstr "" - -#: ../../content/contributing.rst:39 -msgid "`Issue tracker on GitHub `_" -msgstr "" - -#: ../../content/contributing.rst:40 -msgid "Users of Odoo" -msgstr "" - -#: ../../content/contributing.rst:41 -msgid "Translate Odoo" -msgstr "" - -#: ../../content/contributing.rst:42 -msgid "Translate the user interface and documentation of Odoo into different languages." -msgstr "" - -#: ../../content/contributing.rst:43 -msgid "`Odoo project on Transifex `_" -msgstr "" - -#: ../../content/contributing.rst:44 -msgid "Anyone fluent in multiple languages" -msgstr "" - -#: ../../content/contributing.rst:45 -msgid "Contribute to the codebase" -msgstr "" - -#: ../../content/contributing.rst:46 -msgid "Submit pull requests to the Odoo GitHub repositories to fix bugs, add new features, or improve the performance and reliability of the product. You can also review and comment on pull requests from other contributors. By contributing to the codebase, you can make a direct and lasting impact on the quality and features of Odoo." -msgstr "" - -#: ../../content/contributing.rst:50 -msgid ":doc:`Guide: Contributing to the codebase `" -msgstr "" - -#: ../../content/contributing.rst:51 -msgid ":doc:`Developer tutorials `" -msgstr "" - -#: ../../content/contributing.rst:52 -msgid ":doc:`How-to guides `" -msgstr "" - -#: ../../content/contributing.rst:53 -#: ../../content/contributing.rst:66 -msgid "Developers with experience in Python and web development" -msgstr "" - -#: ../../content/contributing.rst:54 -msgid "Contribute to the documentation" -msgstr "" - -#: ../../content/contributing.rst:55 -msgid "Submit corrections and improvements to the Odoo documentation. The product evolves fast, and it can be challenging to consistently reflect these changes in the documentation. By updating the documentation, you can help many users find their way in Odoo." -msgstr "" - -#: ../../content/contributing.rst:58 -msgid ":doc:`Guide: Contributing to the documentation `" -msgstr "" - -#: ../../content/contributing.rst:59 -msgid "Anyone interested in improving the Odoo documentation" -msgstr "" - -#: ../../content/contributing.rst:60 -msgid "Create custom modules" -msgstr "" - -#: ../../content/contributing.rst:61 -msgid "Develop new modules to extend the functionality of Odoo. Custom modules can be made available for free or paid on the Odoo App Store or on any other Odoo modules library. By creating custom modules and making them available to others, you can help grow the Odoo ecosystem and provide additional value to users of the platform." -msgstr "" - -#: ../../content/contributing.rst:65 -msgid "`Odoo Apps Store `_" -msgstr "" - -#: ../../content/contributing.rst:69 -msgid "It is mainly Odoo employees who develop new features for the codebase and write new content for the documentation. Be sure to discuss any idea for a new feature or page with the Odoo team so they can give you the green light before you begin working on it. Some features may already be in development on their side, and only approved features can be merged." -msgstr "" - -#: ../../content/contributing/check_mergeability_status.rst:1 -#: ../../content/contributing/check_mergeability_status.rst:1 -#: ../../content/contributing/check_mergeability_status.rst:1 -#: ../../content/contributing/check_mergeability_status.rst:1 -#: ../../content/contributing/check_mergeability_status.rst:1 -#: ../../content/contributing/check_mergeability_status.rst:1 -msgid "At the bottom of the page, check the mergeability status and address any issues." -msgstr "" - -#: ../../content/contributing/configure_git_authorship.rst:1 -#: ../../content/contributing/configure_git_authorship.rst:1 -#: ../../content/contributing/configure_git_authorship.rst:1 -msgid "Configure Git to identify yourself as the author of your future contributions. Enter the same email address you used to register on GitHub." -msgstr "" - -#: ../../content/contributing/configure_github_account.rst:1 -#: ../../content/contributing/configure_github_account.rst:1 -#: ../../content/contributing/configure_github_account.rst:1 -msgid "`Generate a new SSH key and register it on your GitHub account `_." -msgstr "" - -#: ../../content/contributing/create_github_account.rst:1 -#: ../../content/contributing/create_github_account.rst:1 -#: ../../content/contributing/create_github_account.rst:1 -msgid "First, you need to `create a GitHub account `_. Odoo uses GitHub to manage the source code of its products, and this is where you will make your changes and submit them for review." -msgstr "" - -#: ../../content/contributing/development.rst:5 -msgid "Development" -msgstr "" - -#: ../../content/contributing/development.rst:13 -msgid "If you are reading this, chances are that you are interested in learning how to contribute to the codebase of Odoo. Whether that's the case or you landed here by accident, we've got you covered!" -msgstr "" - -#: ../../content/contributing/development.rst:17 -#: ../../content/contributing/documentation.rst:19 -msgid ":doc:`Discover other ways to contribute to Odoo <../contributing>`" -msgstr "" - -#: ../../content/contributing/development.rst:19 -msgid "When you feel ready, jump to the :ref:`contributing/development/setup` section to begin your journey in contributing to the development of Odoo." -msgstr "" - -#: ../../content/contributing/development.rst:25 -#: ../../content/contributing/documentation.rst:63 -msgid "Environment setup" -msgstr "" - -#: ../../content/contributing/development.rst:27 -msgid "The instructions below help you prepare your environment for making local changes to the codebase and then push them to GitHub. Skip this section and go to :ref:`contributing/development/first-contribution` if you have already completed this step." -msgstr "" - -#: ../../content/contributing/development.rst:33 -msgid "Go to `github.com/odoo/odoo `_ and click on the :guilabel:`Fork` button in the top right corner to create a fork (:dfn:`your own copy`) of the repository on your account. Do the same with `github.com/odoo/enterprise `_ if you have access to it. This creates a copy of the codebase to which you can make changes without affecting the main codebase. Skip this step if you work at Odoo." -msgstr "" - -#: ../../content/contributing/install_git.rst:1 -#: ../../content/contributing/install_git.rst:1 -#: ../../content/contributing/install_git.rst:1 -msgid "`Install Git `_. It is a command-line (:dfn:`a text interface`) tool that allows tracking the history of changes made to a file and, more importantly, working on different versions of that file simultaneously. It means you do not need to worry about overwriting someone else’s pending work when making changes." -msgstr "" - -#: ../../content/contributing/install_git.rst:6 -#: ../../content/contributing/install_git.rst:6 -#: ../../content/contributing/install_git.rst:6 -msgid "Verify that the installation directory of Git is included in your system's `PATH` variable." -msgstr "" - -#: ../../content/contributing/install_git.rst:10 -#: ../../content/contributing/install_git.rst:10 -#: ../../content/contributing/documentation.rst:97 -#: ../../content/contributing/documentation.rst:124 -#: ../../content/contributing/documentation.rst:140 -#: ../../content/contributing/install_git.rst:10 -msgid "Linux and macOS" -msgstr "" - -#: ../../content/contributing/install_git.rst:12 -#: ../../content/contributing/install_git.rst:12 -#: ../../content/contributing/install_git.rst:12 -msgid "Follow the `guide to update the PATH variable on Linux and macOS `_ with the installation path of Git (by default :file:`/usr/bin/git`)." -msgstr "" - -#: ../../content/contributing/install_git.rst:16 -#: ../../content/contributing/install_git.rst:16 -#: ../../content/contributing/documentation.rst:104 -#: ../../content/contributing/documentation.rst:130 -#: ../../content/contributing/documentation.rst:146 -#: ../../content/contributing/install_git.rst:16 -msgid "Windows" -msgstr "" - -#: ../../content/contributing/install_git.rst:18 -#: ../../content/contributing/install_git.rst:18 -#: ../../content/contributing/install_git.rst:18 -msgid "Follow the `guide to update the PATH variable on Windows `_ with the installation path of Git (by default :file:`C:\\\\Program Files\\\\Git`)." -msgstr "" - -#: ../../content/contributing/development.rst:40 -msgid ":doc:`Install Odoo from the sources <../administration/on_premise/source>`. Make sure to fetch the sources through Git with SSH." -msgstr "" - -#: ../../content/contributing/development.rst:42 -msgid "Configure Git to push changes to your fork(s) rather than to the main codebase. If you work at Odoo, configure Git to push changes to the shared forks created on the account **odoo-dev**." -msgstr "" - -#: ../../content/contributing/development.rst:47 -msgid "Link Git with your fork(s)" -msgstr "" - -#: ../../content/contributing/development.rst:49 -msgid "In the command below, replace `` with the name of the GitHub account on which you created the fork(s)." -msgstr "" - -#: ../../content/contributing/development.rst:57 -msgid "If you have access to `odoo/enterprise`, configure the related remote too." -msgstr "" - -#: ../../content/contributing/development.rst:64 -msgid "Link Git with odoo-dev" -msgstr "" - -#: ../../content/contributing/development.rst:76 -msgid "That's it! You are ready to :ref:`make your first contribution `." -msgstr "" - -#: ../../content/contributing/development.rst:82 -#: ../../content/contributing/documentation.rst:158 -msgid "Make your first contribution" -msgstr "" - -#: ../../content/contributing/development.rst:85 -msgid "Odoo development can be challenging for beginners. We recommend you to be knowledgeable enough to code a small module before contributing. If that is not the case, take some time to go through the :doc:`developer tutorials ` to fill in the gaps." -msgstr "" - -#: ../../content/contributing/development.rst:88 -#: ../../content/contributing/documentation.rst:204 -msgid "Some steps of this guide require to be comfortable with Git. Here are some `tutorials `_ and an `interactive training `_ if you are stuck at some point." -msgstr "" - -#: ../../content/contributing/development.rst:92 -msgid "Now that your environment is set up, you can start contributing to the codebase. In a terminal, navigate to the directory where you installed Odoo from sources and follow the guide below." -msgstr "" - -#: ../../content/contributing/development.rst:95 -msgid "Choose the version of Odoo to which you want to make changes. Keep in mind that contributions targeting an :doc:`unsupported version of Odoo ` are not accepted. This guide assumes that the changes target Odoo 17, which corresponds to branch `17.0`." -msgstr "" - -#: ../../content/contributing/development.rst:99 -#: ../../content/contributing/documentation.rst:216 -msgid "Create a new branch starting from branch 17.0. Prefix the branch name with the base branch: `17.0-...`. If you work at Odoo, suffix the branch name with your Odoo handle: `17.0-...-xyz`." -msgstr "" - -#: ../../content/contributing/development.rst:113 -msgid "`Sign the Odoo CLA `_ if not already done. Skip this step if you work at Odoo." -msgstr "" - -#: ../../content/contributing/development.rst:115 -msgid "Make the desired changes to the codebase. When working on the codebase, follow these rules:" -msgstr "" - -#: ../../content/contributing/development.rst:117 -msgid "Keep your changes focused and specific. It is best to work on one particular feature or bug fix at a time rather than tackle multiple unrelated changes simultaneously." -msgstr "" - -#: ../../content/contributing/development.rst:119 -msgid "Respect the `stable policy `_ when working in another branch than `master`." -msgstr "" - -#: ../../content/contributing/development.rst:122 -msgid "Follow the :doc:`coding guidelines `." -msgstr "" - -#: ../../content/contributing/development.rst:123 -msgid "Test your changes thoroughly and :doc:`write tests ` to ensure that everything is working as expected and that there are no regressions or unintended consequences." -msgstr "" - -#: ../../content/contributing/development.rst:127 -#: ../../content/contributing/documentation.rst:249 -msgid "Commit your changes. Write a clear commit message as instructed in the :doc:`Git guidelines `." -msgstr "" - -#: ../../content/contributing/development.rst:135 -#: ../../content/contributing/documentation.rst:257 -msgid "Push your change to your fork, for which we added the remote alias `dev`." -msgstr "" - -#: ../../content/contributing/development.rst:143 -#: ../../content/contributing/documentation.rst:274 -msgid "Open a :abbr:`PR (Pull Request)` on GitHub to submit your changes for review." -msgstr "" - -#: ../../content/contributing/development.rst:145 -msgid "Go to the `compare page of the odoo/odoo codebase `_, or the `compare page of the odoo/enterprise codebase `_, depending on which codebase your changes target." -msgstr "" - -#: ../../content/contributing/development.rst:149 -#: ../../content/contributing/documentation.rst:278 -msgid "Select **17.0** for the base." -msgstr "" - -#: ../../content/contributing/development.rst:150 -#: ../../content/contributing/documentation.rst:279 -msgid "Click on :guilabel:`compare across forks`." -msgstr "" - -#: ../../content/contributing/development.rst:151 -msgid "Select **/odoo** or **/enterprise** for the head repository. Replace `` with the name of the GitHub account on which you created the fork or by **odoo-dev** if you work at Odoo." -msgstr "" - -#: ../../content/contributing/development.rst:154 -#: ../../content/contributing/documentation.rst:192 -#: ../../content/contributing/documentation.rst:283 -msgid "Review your changes and click on the :guilabel:`Create pull request` button." -msgstr "" - -#: ../../content/contributing/development.rst:155 -#: ../../content/contributing/documentation.rst:193 -#: ../../content/contributing/documentation.rst:284 -msgid "Tick the :guilabel:`Allow edits from maintainer` checkbox. Skip this step if you work at Odoo." -msgstr "" - -#: ../../content/contributing/development.rst:156 -#: ../../content/contributing/documentation.rst:286 -msgid "Complete the description and click on the :guilabel:`Create pull request` button again." -msgstr "" - -#: ../../content/contributing/handle_reviews.rst:1 -#: ../../content/contributing/handle_reviews.rst:1 -#: ../../content/contributing/handle_reviews.rst:1 -#: ../../content/contributing/handle_reviews.rst:1 -#: ../../content/contributing/handle_reviews.rst:1 -#: ../../content/contributing/handle_reviews.rst:1 -msgid "As soon as your :abbr:`PR (Pull Request)` is ready for merging, a member of the Odoo team will be automatically assigned for review. If the reviewer has questions or remarks, they will post them as comments and you will be notified by email. Those comments must be resolved for the contribution to go forward." -msgstr "" - -#: ../../content/contributing/development.rst:160 -msgid "Once your changes are approved, the review merges them and they become available for all Odoo users after the next code update!" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:5 -msgid "Coding guidelines" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:7 -msgid "This page introduces the Odoo Coding Guidelines. Those aim to improve the quality of Odoo Apps code. Indeed proper code improves readability, eases maintenance, helps debugging, lowers complexity and promotes reliability. These guidelines should be applied to every new module and to all new development." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:14 -msgid "When modifying existing files in **stable version** the original file style strictly supersedes any other style guidelines. In other words please never modify existing files in order to apply these guidelines. It avoids disrupting the revision history of code lines. Diff should be kept minimal. For more details, see our `pull request guide `_." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:22 -msgid "When modifying existing files in **master (development) version** apply those guidelines to existing code only for modified code or if most of the file is under revision. In other words modify existing files structure only if it is going under major changes. In that case first do a **move** commit then apply the changes related to the feature." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:29 -msgid "Module structure" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:32 -msgid "Directories" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:34 -msgid "A module is organized in important directories. Those contain the business logic; having a look at them should make you understand the purpose of the module." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:37 -msgid "*data/* : demo and data xml" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:38 -msgid "*models/* : models definition" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:39 -msgid "*controllers/* : contains controllers (HTTP routes)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:40 -msgid "*views/* : contains the views and templates" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:41 -msgid "*static/* : contains the web assets, separated into *css/, js/, img/, lib/, ...*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:43 -msgid "Other optional directories compose the module." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:45 -msgid "*wizard/* : regroups the transient models (``models.TransientModel``) and their views" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:46 -msgid "*report/* : contains the printable reports and models based on SQL views. Python objects and XML views are included in this directory" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:47 -msgid "*tests/* : contains the Python tests" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:51 -msgid "File naming" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:53 -msgid "File naming is important to quickly find information through all odoo addons. This section explains how to name files in a standard odoo module. As an example we use a `plant nursery `_ application. It holds two main models *plant.nursery* and *plant.order*." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:58 -msgid "Concerning *models*, split the business logic by sets of models belonging to a same main model. Each set lies in a given file named based on its main model. If there is only one model, its name is the same as the module name. Each inherited model should be in its own file to help understanding of impacted models." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:72 -msgid "Concerning *security*, three main files should be used:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:74 -msgid "First one is the definition of access rights done in a :file:`ir.model.access.csv` file." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:75 -msgid "User groups are defined in :file:`_groups.xml`." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:76 -msgid "Record rules are defined in :file:`_security.xml`." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:87 -msgid "Concerning *views*, backend views should be split like models and suffixed by ``_views.xml``. Backend views are list, form, kanban, activity, graph, pivot, .. views. To ease split by model in views main menus not linked to specific actions may be extracted into an optional ``_menus.xml`` file. Templates (QWeb pages used notably for portal / website display) are put in separate files named ``_templates.xml``." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:105 -msgid "Concerning *data*, split them by purpose (demo or data) and main model. Filenames will be the main_model name suffixed by ``_demo.xml`` or ``_data.xml``. For instance for an application having demo and data for its main model as well as subtypes, activities and mail templates all related to mail module:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:118 -msgid "Concerning *controllers*, generally all controllers belong to a single controller contained in a file named ``.py``. An old convention in Odoo is to name this file ``main.py`` but it is considered as outdated. If you need to inherit an existing controller from another module do it in ``.py``. For example adding portal controller in an application is done in ``portal.py``." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:132 -msgid "Concerning *static files*, Javascript files follow globally the same logic as python models. Each component should be in its own file with a meaningful name. For instance, the activity widgets are located in ``activity.js`` of mail module. Subdirectories can also be created to structure the 'package' (see web module for more details). The same logic should be applied for the templates of JS widgets (static XML files) and for their styles (scss files). Don't link data (image, libraries) outside Odoo: do not use an URL to an image but copy it in the codebase instead." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:141 -msgid "Concerning *wizards*, naming convention is the same of for python models: ``.py`` and ``_views.xml``. Both are put in the wizard directory. This naming comes from old odoo applications using the wizard keyword for transient models." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:153 -msgid "Concerning *statistics reports* done with python / SQL views and classic views naming is the following :" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:163 -msgid "Concerning *printable reports* which contain mainly data preparation and Qweb templates naming is the following :" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:173 -msgid "The complete tree of our Odoo module therefore looks like" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:231 -msgid "File names should only contain ``[a-z0-9_]`` (lowercase alphanumerics and ``_``)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:234 -msgid "Use correct file permissions : folder 755 and file 644." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:239 -msgid "XML files" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:242 -msgid "Format" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:244 -msgid "To declare a record in XML, the **record** notation (using **) is recommended:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:246 -msgid "Place ``id`` attribute before ``model``" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:247 -msgid "For field declaration, ``name`` attribute is first. Then place the *value* either in the ``field`` tag, either in the ``eval`` attribute, and finally other attributes (widget, options, ...) ordered by importance." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:252 -msgid "Try to group the record by model. In case of dependencies between action/menu/views, this convention may not be applicable." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:254 -msgid "Use naming convention defined at the next point" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:255 -msgid "The tag ** is only used to set not-updatable data with ``noupdate=1``. If there is only not-updatable data in the file, the ``noupdate=1`` can be set on the ```` tag and do not set a ```` tag." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:273 -msgid "Odoo supports custom tags acting as syntactic sugar:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:275 -msgid "menuitem: use it as a shortcut to declare a ``ir.ui.menu``" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:276 -msgid "template: use it to declare a QWeb View requiring only the ``arch`` section of the view." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:278 -msgid "These tags are preferred over the *record* notation." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:282 -msgid "XML IDs and naming" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:285 -msgid "Security, View and Action" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:287 -msgid "Use the following pattern :" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:289 -msgid "For a menu: :samp:`{}_menu`, or :samp:`{}_menu_{do_stuff}` for submenus." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:290 -msgid "For a view: :samp:`{}_view_{}`, where *view_type* is ``kanban``, ``form``, ``tree``, ``search``, ..." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:292 -msgid "For an action: the main action respects :samp:`{}_action`. Others are suffixed with :samp:`_{}`, where *detail* is a lowercase string briefly explaining the action. This is used only if multiple actions are declared for the model." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:296 -msgid "For window actions: suffix the action name by the specific view information like :samp:`{}_action_view_{}`." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:298 -msgid "For a group: :samp:`{}_group_{}` where *group_name* is the name of the group, generally 'user', 'manager', ..." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:300 -msgid "For a rule: :samp:`{}_rule_{}` where *concerned_group* is the short name of the concerned group ('user' for the 'model_name_group_user', 'public' for public user, 'company' for multi-company rules, ...)." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:305 -msgid "Name should be identical to xml id with dots replacing underscores. Actions should have a real naming as it is used as display name." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:359 -msgid "Inheriting XML" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:361 -msgid "Xml Ids of inheriting views should use the same ID as the original record. It helps finding all inheritance at a glance. As final Xml Ids are prefixed by the module that creates them there is no overlap." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:365 -msgid "Naming should contain an ``.inherit.{details}`` suffix to ease understanding the override purpose when looking at its name." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:376 -msgid "New primary views do not require the inherit suffix as those are new records based upon the first one." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:391 -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:879 -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:881 -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:897 -msgid "Python" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:395 -msgid "Do not forget to read the :ref:`Security Pitfalls ` section as well to write secure code." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:399 -msgid "PEP8 options" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:401 -msgid "Using a linter can help show syntax and semantic warnings or errors. Odoo source code tries to respect Python standard, but some of them can be ignored." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:404 -msgid "E501: line too long" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:405 -msgid "E301: expected 1 blank line, found 0" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:406 -msgid "E302: expected 2 blank lines, found 1" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:409 -msgid "Imports" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:411 -msgid "The imports are ordered as" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:413 -msgid "External libraries (one per line sorted and split in python stdlib)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:414 -msgid "Imports of ``odoo``" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:415 -msgid "Imports from Odoo modules (rarely, and only if necessary)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:417 -msgid "Inside these 3 groups, the imported lines are alphabetically sorted." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:435 -msgid "Idiomatics of Programming (Python)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:437 -msgid "Always favor *readability* over *conciseness* or using the language features or idioms." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:438 -msgid "Don't use ``.clone()``" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:449 -msgid "Python dictionary : creation and update" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:474 -msgid "Use meaningful variable/class/method names" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:475 -msgid "Useless variable : Temporary variables can make the code clearer by giving names to objects, but that doesn't mean you should create temporary variables all the time:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:487 -msgid "Multiple return points are OK, when they're simpler" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:507 -msgid "Know your builtins : You should at least have a basic understanding of all the Python builtins (http://docs.python.org/library/functions.html)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:515 -msgid "Also, ``if 'key' in my_dict`` and ``if my_dict.get('key')`` have very different meaning, be sure that you're using the right one." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:518 -msgid "Learn list comprehensions : Use list comprehension, dict comprehension, and basic manipulation using ``map``, ``filter``, ``sum``, ... They make the code easier to read." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:531 -msgid "Collections are booleans too : In python, many objects have \"boolean-ish\" value when evaluated in a boolean context (such as an if). Among these are collections (lists, dicts, sets, ...) which are \"falsy\" when empty and \"truthy\" when containing items:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:542 -msgid "So, you can write ``if some_collection:`` instead of ``if len(some_collection):``." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:545 -msgid "Iterate on iterables" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:559 -msgid "Use dict.setdefault" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:575 -msgid "As a good developer, document your code (docstring on methods, simple comments for tricky part of code)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:577 -msgid "In additions to these guidelines, you may also find the following link interesting: http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html (a little bit outdated, but quite relevant)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:582 -msgid "Programming in Odoo" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:584 -msgid "Avoid to create generators and decorators: only use the ones provided by the Odoo API." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:586 -msgid "As in python, use ``filtered``, ``mapped``, ``sorted``, ... methods to ease code reading and performance." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:590 -msgid "Propagate the context" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:592 -msgid "The context is a ``frozendict`` that cannot be modified. To call a method with a different context, the ``with_context`` method should be used :" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:601 -msgid "Passing parameter in context can have dangerous side-effects." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:603 -msgid "Since the values are propagated automatically, some unexpected behavior may appear. Calling ``create()`` method of a model with *default_my_field* key in context will set the default value of *my_field* for the concerned model. But if during this creation, other objects (such as sale.order.line, on sale.order creation) having a field name *my_field* are created, their default value will be set too." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:609 -msgid "If you need to create a key context influencing the behavior of some object, choose a good name, and eventually prefix it by the name of the module to isolate its impact. A good example are the keys of ``mail`` module : *mail_create_nosubscribe*, *mail_notrack*, *mail_notify_user_signature*, ..." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:615 -msgid "Think extendable" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:617 -msgid "Functions and methods should not contain too much logic: having a lot of small and simple methods is more advisable than having few large and complex methods. A good rule of thumb is to split a method as soon as it has more than one responsibility (see http://en.wikipedia.org/wiki/Single_responsibility_principle)." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:622 -msgid "Hardcoding a business logic in a method should be avoided as it prevents to be easily extended by a submodule." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:648 -msgid "The above code is over extendable for the sake of example but the readability must be taken into account and a tradeoff must be made." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:651 -msgid "Also, name your functions accordingly: small and properly named functions are the starting point of readable/maintainable code and tighter documentation." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:654 -msgid "This recommendation is also relevant for classes, files, modules and packages. (See also http://en.wikipedia.org/wiki/Cyclomatic_complexity)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:658 -msgid "Never commit the transaction" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:660 -msgid "The Odoo framework is in charge of providing the transactional context for all RPC calls. The principle is that a new database cursor is opened at the beginning of each RPC call, and committed when the call has returned, just before transmitting the answer to the RPC client, approximately like this:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:681 -msgid "If any error occurs during the execution of the RPC call, the transaction is rolled back atomically, preserving the state of the system." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:684 -msgid "Similarly, the system also provides a dedicated transaction during the execution of tests suites, so it can be rolled back or not depending on the server startup options." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:688 -msgid "The consequence is that if you manually call ``cr.commit()`` anywhere there is a very high chance that you will break the system in various ways, because you will cause partial commits, and thus partial and unclean rollbacks, causing among others:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:693 -msgid "inconsistent business data, usually data loss" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:694 -msgid "workflow desynchronization, documents stuck permanently" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:695 -msgid "tests that can't be rolled back cleanly, and will start polluting the database, and triggering error (this is true even if no error occurs during the transaction)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:706 -msgid "Here is the very simple rule:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:700 -msgid "You should **NEVER** call ``cr.commit()`` yourself, **UNLESS** you have created your own database cursor explicitly! And the situations where you need to do that are exceptional!" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:704 -msgid "And by the way if you did create your own cursor, then you need to handle error cases and proper rollback, as well as properly close the cursor when you're done with it." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:708 -msgid "And contrary to popular belief, you do not even need to call ``cr.commit()`` in the following situations: - in the ``_auto_init()`` method of an *models.Model* object: this is taken care of by the addons initialization method, or by the ORM transaction when creating custom models - in reports: the ``commit()`` is handled by the framework too, so you can update the database even from within a report - within *models.Transient* methods: these methods are called exactly like regular *models.Model* ones, within a transaction and with the corresponding ``cr.commit()/rollback()`` at the end - etc. (see general rule above if you are in doubt!)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:720 -msgid "All ``cr.commit()`` calls outside of the server framework from now on must have an **explicit comment** explaining why they are absolutely necessary, why they are indeed correct, and why they do not break the transactions. Otherwise they can and will be removed !" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:726 -msgid "Use translation method correctly" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:728 -msgid "Odoo uses a GetText-like method named \"underscore\" ``_( )`` to indicate that a static string used in the code needs to be translated at runtime using the language of the context. This pseudo-method is accessed within your code by importing as follows:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:737 -msgid "A few very important rules must be followed when using it, in order for it to work and to avoid filling the translations with useless junk." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:740 -msgid "Basically, this method should only be used for static strings written manually in the code, it will not work to translate field values, such as Product names, etc. This must be done instead using the translate flag on the corresponding field." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:745 -msgid "The method accepts optional positional or named parameter The rule is very simple: calls to the underscore method should always be in the form ``_('literal string')`` and nothing else:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:788 -msgid "Also, keep in mind that translators will have to work with the literal values that are passed to the underscore function, so please try to make them easy to understand and keep spurious characters and formatting to a minimum. Translators must be aware that formatting patterns such as ``%s`` or ``%d``, newlines, etc. need to be preserved, but it's important to use these in a sensible and obvious manner:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:808 -msgid "In general in Odoo, when manipulating strings, prefer ``%`` over ``.format()`` (when only one variable to replace in a string), and prefer ``%(varname)`` instead of position (when multiple variables have to be replaced). This makes the translation easier for the community translators." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:814 -msgid "Symbols and Conventions" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:824 -msgid "Model name (using the dot notation, prefix by the module name) :" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:817 -msgid "When defining an Odoo Model : use singular form of the name (*res.partner* and *sale.order* instead of *res.partnerS* and *saleS.orderS*)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:819 -msgid "When defining an Odoo Transient (wizard) : use ``.`` where *related_base_model* is the base model (defined in *models/*) related to the transient, and *action* is the short name of what the transient do. Avoid the *wizard* word. For instance : ``account.invoice.make``, ``project.task.delegate.batch``, ..." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:823 -msgid "When defining *report* model (SQL views e.i.) : use ``.report.``, based on the Transient convention." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:826 -msgid "Odoo Python Class : use camelcase (Object-oriented style)." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:837 -msgid "Variable name :" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:835 -msgid "use camelcase for model variable" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:836 -msgid "use underscore lowercase notation for common variable." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:837 -msgid "suffix your variable name with *_id* or *_ids* if it contains a record id or list of id. Don't use ``partner_id`` to contain a record of res.partner" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:845 -msgid "``One2Many`` and ``Many2Many`` fields should always have *_ids* as suffix (example: sale_order_line_ids)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:846 -msgid "``Many2One`` fields should have *_id* as suffix (example : partner_id, user_id, ...)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:856 -msgid "Method conventions" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:848 -msgid "Compute Field : the compute method pattern is *_compute_*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:849 -msgid "Search method : the search method pattern is *_search_*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:850 -msgid "Default method : the default method pattern is *_default_*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:851 -msgid "Selection method: the selection method pattern is *_selection_*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:852 -msgid "Onchange method : the onchange method pattern is *_onchange_*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:853 -msgid "Constraint method : the constraint method pattern is *_check_*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:854 -msgid "Action method : an object action method is prefix with *action_*. Since it uses only one record, add ``self.ensure_one()`` at the beginning of the method." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:867 -msgid "In a Model attribute order should be" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:859 -msgid "Private attributes (``_name``, ``_description``, ``_inherit``, ``_sql_constraints``, ...)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:860 -msgid "Default method and ``default_get``" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:861 -msgid "Field declarations" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:862 -msgid "Compute, inverse and search methods in the same order as field declaration" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:863 -msgid "Selection method (methods used to return computed values for selection fields)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:864 -msgid "Constrains methods (``@api.constrains``) and onchange methods (``@api.onchange``)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:865 -msgid "CRUD methods (ORM overrides)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:866 -msgid "Action methods" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:867 -msgid "And finally, other business methods." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:923 -msgid "Javascript" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:926 -msgid "Static files organization" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:928 -msgid "Odoo addons have some conventions on how to structure various files. We explain here in more details how web assets are supposed to be organized." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:931 -msgid "The first thing to know is that the Odoo server will serve (statically) all files located in a *static/* folder, but prefixed with the addon name. So, for example, if a file is located in *addons/web/static/src/js/some_file.js*, then it will be statically available at the url *your-odoo-server.com/web/static/src/js/some_file.js*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:936 -msgid "The convention is to organize the code according to the following structure:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:938 -msgid "*static*: all static files in general" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:940 -msgid "*static/lib*: this is the place where js libs should be located, in a sub folder. So, for example, all files from the *jquery* library are in *addons/web/static/lib/jquery*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:942 -msgid "*static/src*: the generic static source code folder" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:944 -msgid "*static/src/css*: all css files" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:945 -msgid "*static/fonts*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:946 -msgid "*static/img*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:947 -msgid "*static/src/js*" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:949 -msgid "*static/src/js/tours*: end user tour files (tutorials, not tests)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:951 -msgid "*static/src/scss*: scss files" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:952 -msgid "*static/src/xml*: all qweb templates that will be rendered in JS" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:954 -msgid "*static/tests*: this is where we put all test related files." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:956 -msgid "*static/tests/tours*: this is where we put all tour test files (not tutorials)." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:959 -msgid "Javascript coding guidelines" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:961 -msgid "``use strict;`` is recommended for all javascript files" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:962 -msgid "Use a linter (jshint, ...)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:963 -msgid "Never add minified Javascript Libraries" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:964 -msgid "Use camelcase for class declaration" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:966 -msgid "More precise JS guidelines are detailed in the `github wiki `_. You may also have a look at existing API in Javascript by looking Javascript References." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:973 -msgid "CSS and SCSS" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:978 -msgid "Syntax and Formatting" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1010 -msgid "four (4) space indents, no tabs;" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1011 -msgid "columns of max. 80 characters wide;" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1012 -msgid "opening brace (`{`): empty space after the last selector;" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1013 -msgid "closing brace (`}`): on its own new line;" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1014 -msgid "one line for each declaration;" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1015 -msgid "meaningful use of whitespace." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1058 -msgid "Properties order" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1060 -msgid "Order properties from the \"outside\" in, starting from `position` and ending with decorative rules (`font`, `filter`, etc.)." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1063 -msgid ":ref:`Scoped SCSS variables ` and :ref:`CSS variables ` must be placed at the very top, followed by an empty line separating them from other declarations." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1089 -msgid "Naming Conventions" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1091 -msgid "Naming conventions in CSS are incredibly useful in making your code more strict, transparent and informative." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1096 -msgid "Avoid `id` selectors, and prefix your classes with `o_`, where `` is the technical name of the module (`sale`, `im_chat`, ...) or the main route reserved by the module (for website modules mainly, i.e. : `o_forum` for the `website_forum` module)." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1097 -msgid "The only exception for this rule is the webclient: it simply uses the `o_` prefix." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1099 -msgid "Avoid creating hyper-specific classes and variable names. When naming nested elements, opt for the \"Grandchild\" approach." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1107 -msgid "Don't" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1121 -msgid "Do" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1133 -msgid "Besides being more compact, this approach eases maintenance because it limits the need of renaming when changes occur at the DOM." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1139 -msgid "SCSS Variables" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1141 -msgid "Our standard convention is `$o-[root]-[element]-[property]-[modifier]`, with:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1143 -msgid "`$o-`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1144 -msgid "The prefix." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1145 -#: ../../content/contributing/development/coding_guidelines.rst:1229 -msgid "`[root]`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1146 -#: ../../content/contributing/development/coding_guidelines.rst:1230 -msgid "Either the component **or** the module name (components take priority)." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1147 -#: ../../content/contributing/development/coding_guidelines.rst:1231 -msgid "`[element]`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1148 -#: ../../content/contributing/development/coding_guidelines.rst:1232 -msgid "An optional identifier for inner elements." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1149 -#: ../../content/contributing/development/coding_guidelines.rst:1233 -msgid "`[property]`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1150 -#: ../../content/contributing/development/coding_guidelines.rst:1234 -msgid "The property/behavior defined by the variable." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1152 -#: ../../content/contributing/development/coding_guidelines.rst:1236 -msgid "`[modifier]`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1152 -#: ../../content/contributing/development/coding_guidelines.rst:1236 -msgid "An optional modifier." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1165 -msgid "SCSS Variables (scoped)" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1167 -msgid "These variables are declared within blocks and are not accessible from the outside. Our standard convention is `$-[variable name]`." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1185 -msgid "`Variables scope on the SASS Documentation `_" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1191 -msgid "SCSS Mixins and Functions" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1193 -msgid "Our standard convention is `o-[name]`. Use descriptive names. When naming functions, use verbs in the imperative form (e.g.: `get`, `make`, `apply`...)." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1196 -msgid "Name optional arguments in the :ref:`scoped variables form `, so `$-[argument]`." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1216 -msgid "`Mixins on the SASS Documentation `_" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1217 -msgid "`Functions on the SASS Documentation `_" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1222 -msgid "CSS Variables" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1224 -msgid "In Odoo, the use of CSS variables is strictly DOM-related. Use them to **contextually** adapt the design and layout." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1227 -msgid "Our standard convention is BEM, so `--[root]__[element]-[property]--[modifier]`, with:" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1258 -msgid "Use of CSS Variables" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1260 -msgid "In Odoo, the use of CSS variables is strictly DOM-related, meaning that are used to **contextually** adapt the design and layout rather than to manage the global design-system. These are typically used when a component's properties can vary in specific contexts or in other circumstances." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1264 -msgid "We define these properties inside the component's main block, providing default fallbacks." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1268 -msgid ":file:`my_component.scss`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1275 -msgid ":file:`my_dashboard.scss`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1284 -msgid "`CSS variables on MDN web docs `_" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1290 -msgid "CSS and SCSS Variables" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1292 -msgid "Despite being apparently similar, `CSS` and `SCSS` variables behave very differently. The main difference is that, while `SCSS` variables are **imperative** and compiled away, `CSS` variables are **declarative** and included in the final output." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1297 -msgid "`CSS/SCSS variables difference on the SASS Documentation `_" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1300 -msgid "In Odoo, we take the best of both worlds: using the `SCSS` variables to define the design-system while opting for the `CSS` ones when it comes to contextual adaptations." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1303 -msgid "The implementation of the previous example should be improved by adding SCSS variables in order to gain control at the top-level and ensure consistency with other components." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1308 -msgid ":file:`secondary_variables.scss`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1315 -msgid ":file:`component.scss`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1322 -msgid ":file:`dashboard.scss`" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1332 -msgid "The `:root` pseudo-class" -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1334 -msgid "Defining CSS variables on the `:root` pseudo-class is a technique we normally **don't use** in Odoo's UI. The practice is commonly used to access and modify CSS variables globally. We perform this using SCSS instead." -msgstr "" - -#: ../../content/contributing/development/coding_guidelines.rst:1338 -msgid "Exceptions to this rule should be fairly apparent, such as templates shared across bundles that require a certain level of contextual awareness in order to be rendered properly." -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:3 -msgid "Git guidelines" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:6 -msgid "Configure your git" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:8 -msgid "Based on ancestral experience and oral tradition, the following things go a long way towards making your commits more helpful:" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:11 -msgid "Be sure to define both the user.email and user.name in your local git config" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:17 -msgid "Be sure to add your full name to your Github profile here. Please feel fancy and add your team, avatar, your favorite quote, and whatnot ;-)" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:21 -msgid "Commit message structure" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:23 -msgid "Commit message has four parts: tag, module, short description and full description. Try to follow the preferred structure for your commit messages" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:46 -msgid "Tag and module name" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:48 -msgid "Tags are used to prefix your commit. They should be one of the following" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:50 -msgid "**[FIX]** for bug fixes: mostly used in stable version but also valid if you are fixing a recent bug in development version;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:52 -msgid "**[REF]** for refactoring: when a feature is heavily rewritten;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:53 -msgid "**[ADD]** for adding new modules;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:54 -msgid "**[REM]** for removing resources: removing dead code, removing views, removing modules, ...;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:56 -msgid "**[REV]** for reverting commits: if a commit causes issues or is not wanted reverting it is done using this tag;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:58 -msgid "**[MOV]** for moving files: use git move and do not change content of moved file otherwise Git may loose track and history of the file; also used when moving code from one file to another;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:61 -msgid "**[REL]** for release commits: new major or minor stable versions;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:62 -msgid "**[IMP]** for improvements: most of the changes done in development version are incremental improvements not related to another tag;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:64 -msgid "**[MERGE]** for merge commits: used in forward port of bug fixes but also as main commit for feature involving several separated commits;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:66 -msgid "**[CLA]** for signing the Odoo Individual Contributor License;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:67 -msgid "**[I18N]** for changes in translation files;" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:69 -msgid "After tag comes the modified module name. Use the technical name as functional name may change with time. If several modules are modified, list them or use various to tell it is cross-modules. Unless really required or easier avoid modifying code across several modules in the same commit. Understanding module history may become difficult." -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:76 -msgid "Commit message header" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:78 -msgid "After tag and module name comes a meaningful commit message header. It should be self explanatory and include the reason behind the change. Do not use single words like \"bugfix\" or \"improvements\". Try to limit the header length to about 50 characters for readability." -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:83 -msgid "Commit message header should make a valid sentence once concatenated with ``if applied, this commit will
``. For example ``[IMP] base: prevent to archive users linked to active partners`` is correct as it makes a valid sentence ``if applied, this commit will prevent users to archive...``." -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:89 -msgid "Commit message full description" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:91 -msgid "In the message description specify the part of the code impacted by your changes (module name, lib, transversal object, ...) and a description of the changes." -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:94 -msgid "First explain WHY you are modifying code. What is important if someone goes back to your commit in about 4 decades (or 3 days) is why you did it. It is the purpose of the change." -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:98 -msgid "What you did can be found in the commit itself. If there was some technical choices involved it is a good idea to explain it also in the commit message after the why. For Odoo R&D developers \"PO team asked me to do it\" is not a valid why, by the way." -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:102 -msgid "Please avoid commits which simultaneously impact multiple modules. Try to split into different commits where impacted modules are different. It will be helpful if we need to revert changes in a given module separately." -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:106 -msgid "Don't hesitate to be a bit verbose. Most people will only see your commit message and judge everything you did in your life just based on those few sentences. No pressure at all." -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:110 -msgid "**You spend several hours, days or weeks working on meaningful features. Take some time to calm down and write clear and understandable commit messages.**" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:113 -msgid "If you are an Odoo R&D developer the WHY should be the purpose of the task you are working on. Full specifications make the core of the commit message. **If you are working on a task that lacks purpose and specifications please consider making them clear before continuing.**" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:118 -msgid "Finally here are some examples of correct commit messages :" -msgstr "" - -#: ../../content/contributing/development/git_guidelines.rst:141 -msgid "Use the long description to explain the *why* not the *what*, the *what* can be seen in the diff" -msgstr "" - -#: ../../content/contributing/documentation.rst:5 -msgid "Documentation" -msgstr "" - -#: ../../content/contributing/documentation.rst:14 -msgid "This introductory guide will help you acquire the tools and knowledge you need to write documentation, whether you plan to make a minor content change or document an application from scratch." -msgstr "" - -#: ../../content/contributing/documentation.rst:21 -msgid "Read the :ref:`introduction to the reStructuredText language ` if you are not familiar with it. Then, you have two courses of action to start contributing to the documentation, depending on whether you want to propose minor changes to existing content or you instead want to work on significant changes to new and existing content." -msgstr "" - -#: ../../content/contributing/documentation.rst:26 -msgid "**For minor changes**, for example, adding a paragraph or fixing a typo, we recommend **using the GitHub interface**. This is the easiest and fastest way to submit your changes, and it is suitable for non-technical people. Jump directly to the :ref:`contributing/documentation/first-contribution` section to get started." -msgstr "" - -#: ../../content/contributing/documentation.rst:30 -msgid "**For more complex changes**, it is necessary to **use Git** and work from a local copy of the documentation. Follow the instructions in the :ref:`contributing/documentation/setup` section to first prepare your environment." -msgstr "" - -#: ../../content/contributing/documentation.rst:37 -msgid "reStructuredText (RST)" -msgstr "" - -#: ../../content/contributing/documentation.rst:39 -msgid "The documentation is written in **reStructuredText** (RST), a `lightweight markup language `_ consisting of regular text augmented with markup, which allows including headings, images, notes, and so on. This might seem a bit abstract, but there is no need to worry; :abbr:`RST (reStructuredText)` is not hard to learn, especially if you intend to make minor changes to the content." -msgstr "" - -#: ../../content/contributing/documentation.rst:45 -msgid "If you need to learn about a specific markup, head over to our :doc:`cheat sheet for RST `; it contains all the information you should ever need for the documentation of Odoo." -msgstr "" - -#: ../../content/contributing/documentation.rst:50 -msgid "We kindly ask you to observe a set of :doc:`content ` and :doc:`RST ` guidelines as you write documentation. This ensures that you stay consistent with the rest of the documentation and facilitates the approval of your content changes as the Odoo team reviews them." -msgstr "" - -#: ../../content/contributing/documentation.rst:56 -msgid ":doc:`documentation/content_guidelines`" -msgstr "" - -#: ../../content/contributing/documentation.rst:57 -msgid ":doc:`documentation/rst_cheat_sheet`" -msgstr "" - -#: ../../content/contributing/documentation.rst:58 -msgid ":doc:`documentation/rst_guidelines`" -msgstr "" - -#: ../../content/contributing/documentation.rst:65 -msgid "The instructions below help you prepare your environment for making local changes to the documentation and then push them to GitHub. Skip this section and go to :ref:`contributing/documentation/first-contribution` if you have already completed this step or want to make changes from the GitHub interface." -msgstr "" - -#: ../../content/contributing/documentation.rst:72 -msgid "Go to `github.com/odoo/documentation `_ and click on the :guilabel:`Fork` button in the top right corner to create a fork (:dfn:`your own copy`) of the repository on your account. This creates a copy of the codebase to which you can make changes without affecting the main codebase. Skip this step if you work at Odoo." -msgstr "" - -#: ../../content/contributing/documentation.rst:78 -msgid "Clone the sources with Git and navigate into the local repository." -msgstr "" - -#: ../../content/contributing/documentation.rst:85 -msgid "Configure Git to push changes to your fork rather than to the main codebase. In the commands below, replace `` with the name of the GitHub account on which you created the fork. Skip this step if you work at Odoo." -msgstr "" - -#: ../../content/contributing/documentation.rst:93 -msgid "Configure Git to ease the collaboration between writers coming from different systems." -msgstr "" - -#: ../../content/contributing/documentation.rst:111 -msgid "Install the latest release of `Python `_ and `pip `_ on your machine." -msgstr "" - -#: ../../content/contributing/documentation.rst:113 -msgid "Install the Python dependencies of the documentation with pip." -msgstr "" - -#: ../../content/contributing/documentation.rst:119 -msgid "Verify that the installation directory of the Python dependencies is included in your system's `PATH` variable." -msgstr "" - -#: ../../content/contributing/documentation.rst:126 -msgid "Follow the `guide to update the PATH variable on Linux and macOS `_ with the installation path of the Python dependencies (by default :file:`~/.local/bin`)." -msgstr "" - -#: ../../content/contributing/documentation.rst:132 -msgid "Follow the `guide to update the PATH variable on Windows `_ with the installation path of the Python dependencies." -msgstr "" - -#: ../../content/contributing/documentation.rst:136 -msgid "Install Make." -msgstr "" - -#: ../../content/contributing/documentation.rst:148 -msgid "Follow the `guide to install Make on Windows `_." -msgstr "" - -#: ../../content/contributing/documentation.rst:151 -msgid "`Install pngquant `_." -msgstr "" - -#: ../../content/contributing/documentation.rst:152 -msgid "That's it! You are ready to :ref:`make your first contribution ` with Git." -msgstr "" - -#: ../../content/contributing/documentation.rst:162 -msgid "Contribute from the GitHub interface" -msgstr "" - -#: ../../content/contributing/documentation.rst:164 -msgid "Verify that you are browsing the documentation in the version that you intend to change. The version can be selected from the dropdown in the top menu." -msgstr "" - -#: ../../content/contributing/documentation.rst:166 -msgid "Head to the page that you want to change and click on the :guilabel:`Edit on GitHub` button in the top right corner of the page." -msgstr "" - -#: ../../content/contributing/documentation.rst:168 -msgid "Click on the :guilabel:`Fork this repository` button to create a fork (:dfn:`your own copy`) of the repository on your account. This creates a copy of the codebase to which you can make changes without affecting the main codebase. Skip this step if you work at Odoo." -msgstr "" - -#: ../../content/contributing/documentation.rst:175 -#: ../../content/contributing/documentation.rst:230 -msgid "Make the desired changes while taking care of following the :doc:`content ` and :doc:`RST ` guidelines." -msgstr "" - -#: ../../content/contributing/documentation.rst:180 -msgid "Click on the :guilabel:`Preview changes` button to review your contribution in a more human-readable format. Be aware that the preview is not able to handle all markups correctly. Notes and tips, for instance, are shown as plain text." -msgstr "" - -#: ../../content/contributing/documentation.rst:184 -msgid "Scroll to the bottom of the page and fill out the small form to propose your changes. In the first text box, write a very short summary of your changes. For instance, \"Fix a typo\" or \"Add documentation for invoicing of sales orders.\" In the second text box, explain *why* you are proposing these changes. Then, click on the :guilabel:`Propose changes` button." -msgstr "" - -#: ../../content/contributing/documentation.rst:195 -msgid "Review the summary that you wrote about your changes and click on the :guilabel:`Create pull request` button again." -msgstr "" - -#: ../../content/contributing/documentation/changes_approved.rst:1 -#: ../../content/contributing/documentation/changes_approved.rst:1 -#: ../../content/contributing/documentation/changes_approved.rst:1 -#: ../../content/contributing/documentation/changes_approved.rst:1 -#: ../../content/contributing/documentation/changes_approved.rst:1 -msgid "Once your changes are approved, the reviewer merges them and they appear online the next day!" -msgstr "" - -#: ../../content/contributing/documentation.rst:201 -msgid "Contribute with Git" -msgstr "" - -#: ../../content/contributing/documentation.rst:208 -msgid "Now that your environment is set up, you can start contributing to the documentation. In a terminal, navigate to the directory where you cloned the sources and follow the guide below." -msgstr "" - -#: ../../content/contributing/documentation.rst:211 -msgid "Choose the version of the documentation to which you want to make changes. Keep in mind that contributions targeting an :doc:`unsupported version of Odoo ` are not accepted. This guide assumes that the changes target the documentation of Odoo 17, which corresponds to branch `17.0`." -msgstr "" - -#: ../../content/contributing/documentation.rst:233 -msgid "Compress all PNG images that you added or modified." -msgstr "" - -#: ../../content/contributing/documentation.rst:240 -msgid "Write a `redirect rule `_ for every RST file that your renamed." -msgstr "" - -#: ../../content/contributing/documentation.rst:243 -msgid "Build the documentation with :command:`make`. Then, open :file:`_build/index.html` in your web browser to browse the documentation with your changes." -msgstr "" - -#: ../../content/contributing/documentation.rst:247 -msgid "Use :command:`make help` to learn about other useful commands." -msgstr "" - -#: ../../content/contributing/documentation.rst:265 -msgid "If you work at Odoo, push your changes directly to the main codebase whose remote alias is `origin`." -msgstr "" - -#: ../../content/contributing/documentation.rst:276 -msgid "Go to the `compare page of the odoo/documentation codebase `_." -msgstr "" - -#: ../../content/contributing/documentation.rst:280 -msgid "Select **/odoo** for the head repository. Replace `` with the name of the GitHub account on which you created the fork. Skip this step if you work at Odoo." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:3 -msgid "Content guidelines" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:5 -msgid "To give the community the best documentation possible, we listed here a few guidelines, tips and tricks that will make your content shine at its brightest! While we encourage you to adopt your own writing style, some rules still apply to give the reader more clarity and comprehension." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:10 -msgid "We strongly recommend contributors to carefully read the other documents related to this section of the documentation. Good knowledge of the ins and outs of **RST writing** is required to write and submit your contribution. Note that it also affects your writing style itself." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:14 -msgid ":doc:`../documentation`" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:15 -msgid ":doc:`rst_cheat_sheet`" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:16 -msgid ":doc:`rst_guidelines`" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:21 -msgid "Writing style" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:23 -msgid "**Writing for documentation** isn't the same as writing for a blog or another medium. Readers are more likely to skim read until they've found the information they are looking for. Keep in mind that the user documentation is a place to inform and describe, not to convince and promote." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:30 -msgid "Consistency" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:32 -msgid "*Consistency is key to everything.*" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:34 -msgid "Make sure that your writing style remains **consistent**. If you modify an existing text, try to match the existing tone and presentation, or rewrite it to match your own style." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:40 -msgid "Grammatical tenses" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:42 -msgid "In English, descriptions and instructions require the use of a **Present Tense**, while a *future tense* is appropriate only when a specific event is to happen ulteriorly. This logic might be different in other languages." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "Good example (present):" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "*Screenshots are automatically resized to fit the content block's width.*" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "Bad example (future):" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "*When you take a screenshot, remember that it will be automatically resized to fit the content block's width.*" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:55 -msgid "Paragraphing" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:57 -msgid "A paragraph comprises several sentences that are linked by a shared idea. They usually are two to six lines long." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:60 -msgid "In English, a new idea implies a new paragraph, rather than having a *line break* as it is common to do in some other languages. *Line breaks* are useful for layout purposes but shouldn't be used as a grammatical way of separating ideas." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:65 -msgid ":ref:`RST cheat sheet: Break the line but not the paragraph `" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:70 -msgid "Titles and headings" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:72 -msgid "To write good titles and headings:" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:74 -msgid "**Be concise.**" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:76 -msgid "**Avoid sentences**, unnecessary verbs, questions, and titles starting with \"how to.\"" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:78 -msgid "**Don't use pronouns** in your titles, especially 2nd person (*your*)." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:79 -msgid "Use **sentence case**. This means you capitalize only:" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:81 -msgid "the first word of the title or heading" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:82 -msgid "the first word after a colon" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:83 -msgid "proper nouns (brands, product and service names, etc.)" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:86 -msgid "Most titles and headings generally refer to a concept and do *not* represent the name of a feature or a model." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:88 -msgid "Do not capitalize the words of an acronym if they don't entail a proper noun." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:89 -msgid "Verbs in headings are fine since they often describe an action." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:92 -msgid "**Titles** (H1)" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:94 -msgid "Quotation templates" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:95 -msgid "Lead mining" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:96 -msgid "Resupply from another warehouse" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:97 -msgid "Synchronize Google Calendar with Odoo" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:98 -msgid "Batch payments: SEPA Direct Debit (SDD)" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:99 -msgid "Digitize vendor bills with optical character recognition (OCR)" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:101 -msgid "**Headings** (H2, H3)" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:103 -msgid "Project stages" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:104 -msgid "Email alias" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:105 -msgid "Confirm the quotation" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:106 -msgid "Generate SEPA Direct Debit XML files to submit payments" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:111 -msgid "Document structure" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:113 -msgid "Use different **heading levels** to organize your text by sections and sub-sections. Your headings are not only displayed in the document but also on the navigation menu (only the H1) and on the \"On this page\" sidebar (all H2 to H6)." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "**H1: Page title**" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "Your *page title* gives your reader a quick and clear understanding of what your content is about." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:122 -msgid "The *content* in this section describes the upcoming content from a **business point of view**, and shouldn't put the emphasis on Odoo, as this is documentation and not marketing." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:126 -msgid "Start first with a **lead paragraph**, which helps the reader make sure that they've found the right page, then explain the **business aspects of this topic** in the following paragraphs." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "**H2: Section title (configuration)**" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "This first H2 section is about the configuration of the feature, or the prerequisites to achieve a specific goal. To add a path, make sure you use the ``:menuselection:`` specialized directive (see link below)." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "Example:" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "To do so, go to ``:menuselection:`App name --> Menu --> Sub-menu```, and enable the XYZ feature." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "**H2: Section title (main sections)**" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "Create as many main sections as you have actions or features to distinguish. The title can start with a verb, but try to avoid using \"Create ...\"." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "**H3: Subsection**" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:0 -msgid "Subsections are perfect for assessing very specific points. The title can be in the form of a question, if appropriate." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:147 -msgid "**H2: Next Section**" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:151 -msgid ":ref:`RST cheat sheet: headings `" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:152 -msgid ":ref:`RST cheat sheet: markups `" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:157 -msgid "Organizing the documentation" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:159 -msgid "When writing documentation about a given topic, try to keep pages within the same folder organized." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:161 -msgid "For most topics, a single page should do the job. Place it in the appropriate section of the documentation (e.g., content related to the CRM app go under :menuselection:`Applications -> Sales -> CRM`) and follow the :ref:`document structure ` guidelines." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:166 -msgid "For more complex topics, you may need several pages to cover all their aspects. Usually, you will find yourself adding documentation to a topic that is already partially covered. In that case, either create a new page and place it at the same level as other related pages or add new sections to an existing page. If you are documenting a complex topic from scratch, organize your content between one parent page (the :abbr:`TOC (Tree Of Contents)` page) and several child pages. Whenever possible, write content on the parent page and not only on the child pages. Make the parent page accessible from the navigation menu by using the :ref:`show-content ` metadata directive." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:178 -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:440 -msgid "Images" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:180 -msgid "Adding a few images to illustrate your text helps the readers to understand and memorize your content. However, avoid adding too many images: it isn't necessary to illustrate all steps and features, and it may overload your page." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:185 -msgid "Don't forget to :ref:`compress your PNG files with pngquant `." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:191 -msgid "Screenshots" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:193 -msgid "Screenshots are automatically resized to fit the content block's width. This implies that screenshots can't be too wide, else they would appear very small on-screen. Therefore, we recommend to avoid to take screenshots of a full screen display of the app, unless it is relevant to do so." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:197 -msgid "A few tips to improve your screenshots:" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:199 -msgid "**Zoom** in your browser. We recommend a 110% zoom for better results." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:200 -msgid "**Resize** your browser's width, either by *resizing the window* itself or by opening the *browser's developer tools* (press the ``F12`` key) and resizing the width." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:202 -msgid "**Select** the relevant area, rather than keeping the full window." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:203 -msgid "If necessary, you can **edit** the screenshot to remove unnecessary fields and to narrow even more Odoo's display." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:-1 -msgid "Three tips to take good screenshots for the Odoo documentation." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:211 -msgid "Resizing the window's width is the most important step to do as Odoo's responsive design automatically resizes all fields to match the window's width." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:217 -msgid "Media files" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:219 -msgid "A **media filename**:" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:221 -msgid "is written in **lower-case letters**" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:222 -msgid "is **relevant** to the media's content. (E.g., :file:`screenshot-tips.gif`.)" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:223 -msgid "separates its words with a **hyphen** ``-`` (E.g., :file:`awesome-filename.png`.)" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:225 -msgid "Each document has its own folder in which the media files are located. The folder's name must be the same as the document's filename." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:228 -msgid "For example, the document :file:`doc_filename.rst` refers to two images that are placed in the folder ``doc_filename``." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:240 -msgid "Previously, image filenames would mostly be named with numbers (e.g., :file:`feature01.png`) and placed in a single ``media`` folder. While it is advised not to name your *new* images in that fashion, it is also essential **not to rename unchanged files**, as doing this would double the weight of renamed image files on the repository. They will eventually all be replaced as the content referencing those images is updated." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:249 -msgid "ALT tags" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:251 -msgid "An **ALT tag** is a *text alternative* to an image. This text is displayed if the browser fails to render the image. It is also helpful for users who are visually impaired. Finally, it helps search engines, such as Google, to understand what the image is about and index it correctly, which improves the :abbr:`SEO (Search Engine Optimization)` significantly." -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:256 -msgid "Good ALT tags are:" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:258 -msgid "**Short** (one line maximum)" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:259 -msgid "**Not a repetition** of a previous sentence or title" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:260 -msgid "A **good description** of the action happening on the image" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:261 -msgid "Easily **understandable** if read aloud" -msgstr "" - -#: ../../content/contributing/documentation/content_guidelines.rst:264 -msgid ":ref:`RST cheat sheet: image directive `" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:5 -msgid "RST cheat sheet" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:10 -msgid "Headings" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:13 -msgid "For each formatting line (e.g., ``===``), write as many symbols (``=``) as there are characters in the header." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:17 -msgid "The symbols used for the formatting are, in fact, not important. Only the order in which they are written matters, as it determines the size of the decorated heading. This means that you may encounter different heading formatting and in a different order, in which case you should follow the formatting in place in the document. In any other case, use the formatting shown below." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:20 -msgid "Heading size" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:20 -msgid "Formatting" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:22 -msgid "H1" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:28 -msgid "H2" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:33 -msgid "H3" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:38 -msgid "H4" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:43 -msgid "H5" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:48 -msgid "H6" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:55 -msgid "Each document must have **exactly one H1 heading**. No less, no more." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:60 -msgid "Markups" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:65 -msgid "Emphasis (italic)" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:67 -msgid "To emphasize a part of the text. The text is rendered in italic." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:72 -msgid "Fill out the information *before* saving the form." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:81 -msgid "Strong emphasis (bold)" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:83 -msgid "To emphasize a part of the text. The text is rendered in bold." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:88 -msgid "A **subdomain** is a domain that is a part of another domain." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:97 -msgid "Technical term (literal)" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:99 -msgid "To write a technical term or a specific value to insert. The text is rendered in literal." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:104 -msgid "Insert the IP address of your printer, for example, `192.168.1.25`." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:113 -msgid "Definitions" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:115 -msgid "Use the `dfn` markup to define a term." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:120 -msgid "The documentation is written in RST and needs to be built (:dfn:`converted to HTML`) to display nicely." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:131 -msgid "Abbreviations" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:133 -msgid "Use the `abbr` markup to write a self-defining abbreviation that is displayed as a tooltip." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:138 -msgid "Odoo uses :abbr:`OCR (optical character recognition)` and artificial intelligence technologies to recognize the content of the documents." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:149 -msgid ":abbr:`GUI (graphical user interface)` element" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:151 -msgid "Use the `guilabel` markup to identify any text of the interactive user interface (e.g., button labels, view titles, field names, lists items, ...)." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:157 -msgid "Update your credentials, then click on :guilabel:`Save`." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:166 -msgid "Menu selection" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:168 -msgid "Use the `menuselection` markup to guide the user through a sequence of menus." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:173 -msgid "To review your sales performance, go to :menuselection:`Sales --> Reporting --> Dashboard`." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:182 -msgid "File" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:184 -msgid "Use the `file` markup to indicate a file path or name." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:190 -msgid "Create redirections with the :file:`redirects.txt` file at the root of the repository." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:199 -msgid "Command" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:201 -msgid "Use the `command` markup to highlight a command." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:206 -msgid "Run the command :command:`make clean html` to delete existing built files and build the documentation to HTML." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:217 -msgid "Lists" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:222 -msgid "Bulleted list" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:227 -msgid "This is a bulleted list." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:228 -msgid "It has two items, the second item uses two lines." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:240 -msgid "Numbered list" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:245 -msgid "This is a numbered list." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:246 -msgid "Numbering is automatic." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:256 -msgid "Use this format to start the numbering with a number other than one." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:258 -msgid "The numbering is automatic from there." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:267 -msgid "Prefer the use of autonumbered lists with `#.` for better code resilience." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:272 -msgid "Nested lists" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:277 -msgid "This is the first item of a bulleted list." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:279 -msgid "It has a nested numbered list" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:280 -msgid "with two items." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:292 -msgid "Hyperlinks" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:297 -msgid "External hyperlinks" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:299 -msgid "External hyperlinks are links to a URL with a custom label. They follow this syntax: ```label `_``" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:303 -msgid "The URL can be a relative path to a file within the documentation." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:304 -msgid "Use the :ref:`documentation pages hyperlinks ` if you target another documentation page." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:310 -msgid "For instance, `this is an external hyperlink to Odoo's website `_." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:319 -msgid "External hyperlink aliases" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:321 -msgid "External hyperlink aliases allow creating shortcuts for external hyperlinks." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:322 -msgid "The definition syntax is as follows: ``.. _target: URL``" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:323 -msgid "There are two ways to reference them, depending on the use case:" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:325 -msgid "``target_`` creates a hyperlink with the target name as label and the URL as reference. Note that the ``_`` moved after the target!" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:327 -msgid "```label `_`` does exactly what you expect: the label replaces the name of the target, and the target is replaced by the URL." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:333 -msgid "A `proof-of-concept `_ is a simplified version, a prototype of what is expected to agree on the main lines of expected changes. `PoC `_ is a common abbreviation." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:347 -msgid "Custom anchors" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:349 -msgid "Custom anchors follow the same syntax as external hyperlink aliases but without any URL. Indeed, they are internal. They allow referencing a specific part of a document by using the target as an anchor. When the user clicks on the reference, the documentation scrolls to the part of the page containing the anchor." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:354 -msgid "The definition syntax is: ``.. _target:``" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:355 -msgid "There are two ways to reference them, both using the ``ref`` markup:" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:357 -msgid "``:ref:`target``` creates a hyperlink to the anchor with the heading defined below as label." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:358 -msgid "``:ref:`label ``` creates a hyperlink to the anchor with the given label." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:360 -msgid "See :ref:`contributing/relative-links` to learn how to write proper relative links for internal references." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:364 -msgid "Custom anchors can be referenced from other files than the ones in which they are defined." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:365 -msgid "Notice that there is no ``_`` at the end, contrary to what is done with :ref:`external hyperlinks `." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:371 -msgid "This can easily be done by creating a new product, see `How to create a product? `_ for additional help." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:374 -msgid "**How to create a product?**" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:376 -msgid "As explained at the `start of the page `_, ..." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:394 -msgid "Documentation pages hyperlinks" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:397 -msgid "The ``doc`` markup allows referencing a documentation page wherever it is in the file tree through a relative file path." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:398 -msgid "As usual, there are two ways to use the markup:" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:401 -msgid "``:doc:`path_to_doc_page``` creates a hyperlink to the documentation page with the title of the page as label." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:403 -msgid "``:doc:`label ``` creates a hyperlink to the documentation page with the given label." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:409 -msgid "Please refer to `this documentation `_ and to `Send a pro-forma invoice `_." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:420 -msgid "File download hyperlinks" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:422 -msgid "The ``download`` markup allows referencing files (that are not necessarily :abbr:`RST (reStructuredText)` documents) within the source tree to be downloaded." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:428 -msgid "Download this `module structure template `_ to start building your module in no time." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:442 -msgid "The ``image`` markup allows inserting images in a document." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:0 -msgid "Create an invoice." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:458 -msgid "Add the :code:`:class: o-no-modal` `option `_ to an image to prevent opening it in a modal." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:465 -msgid "Alert blocks (admonitions)" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:470 -msgid "See also" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:476 -msgid "`Customer invoices `_" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:477 -msgid "`Pro-forma invoices `_" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:488 -msgid "Note" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:494 -msgid "Use this alert block to grab the reader's attention about additional information." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:504 -msgid "Tip" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:510 -msgid "Use this alert block to inform the reader about a useful trick that requires an action." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:520 -#: ../../content/contributing/documentation/rst_guidelines.rst:17 -msgid "Example" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:526 -msgid "Use this alert block to show an example." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:536 -msgid "Exercise" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:542 -msgid "Use this alert block to suggest an exercise to the reader." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:552 -msgid "Important" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:558 -msgid "Use this alert block to notify the reader about important information." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:568 -msgid "Warning" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:574 -msgid "Use this alert block to require the reader to proceed with caution with what is described in the warning." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:586 -msgid "Danger" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:592 -msgid "Use this alert block to bring the reader's attention to a serious threat." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:602 -msgid "Custom" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:607 -msgid "Title" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:609 -msgid "Customize this alert block with a **Title** of your choice." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:620 -msgid "Tables" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:623 -msgid "List tables" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:625 -msgid "List tables use two-level bulleted lists to convert data into a table. The first level represents the rows and the second level represents the columns." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:635 -msgid "Name" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:636 -msgid "Country" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:637 -msgid "Favorite color" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:638 -msgid "Raúl" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:639 -msgid "Montenegro" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:640 -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:672 -msgid "Purple" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:641 -msgid "Mélanie" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:642 -msgid "France" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:643 -msgid "Red" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:662 -msgid "Grid tables" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:664 -msgid "Grid tables represent the rendered table and are more visual to work with." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:670 -msgid "Shirts" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:670 -msgid "T-shirts" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:672 -msgid "**Available colours**" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:672 -msgid "Green" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:674 -msgid "Turquoise" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:674 -msgid "Orange" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:676 -msgid "**Sleeves length**" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:676 -msgid "Long sleeves" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:676 -msgid "Short sleeves" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:692 -msgid "Use `=` instead of `-` to define header rows." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:693 -msgid "Remove `-` and `|` separators to merge cells." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:694 -msgid "Make use of `this convenient table generator `_ to build your tables. Then, copy-paste the generated formatting into your document." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:700 -msgid "Code blocks" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:720 -msgid "Spoilers" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:727 -msgid "**42**" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:738 -msgid "Content tabs" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:741 -msgid "The `tabs` markup may not work well in some situations. In particular:" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:743 -msgid "The tabs' headers cannot be translated." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:744 -msgid "A tab cannot contain :ref:`headings `." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:745 -msgid "An :ref:`alert block ` cannot contain tabs." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:746 -msgid "A tab cannot contain :ref:`custom anchors `." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:751 -msgid "Basic tabs" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:753 -msgid "Basic tabs are useful to split the content into multiple options. The `tabs` markup is used to define sequence of tabs. Each tab is then defined with the `tab` markup followed by a label." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:761 -msgid "Odoo Online" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:763 -msgid "Content dedicated to Odoo Online users." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:765 -msgid "Odoo.sh" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:767 -msgid "Alternative for Odoo.sh users." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:769 -msgid "On-premise" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:771 -msgid "Third version for On-premise users." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:792 -msgid "Nested tabs" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:794 -msgid "Tabs can be nested inside one another." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:801 -msgid "Stars" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:805 -msgid "The Sun" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:807 -msgid "The closest star to us." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:809 -msgid "Proxima Centauri" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:811 -msgid "The second closest star to us." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:813 -msgid "Polaris" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:815 -msgid "The North Star." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:817 -msgid "Moons" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:821 -msgid "The Moon" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:823 -msgid "Orbits the Earth." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:825 -msgid "Titan" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:827 -msgid "Orbits Jupiter." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:864 -msgid "Group tabs" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:866 -msgid "Group tabs are special tabs that synchronize based on a group label. The last selected group is remembered and automatically selected when the user returns to the page or visits another page with the tabs group. The `group-tab` markup is used to define group tabs." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:875 -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:877 -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:889 -msgid "C++" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:883 -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:885 -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:904 -msgid "Java" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:956 -msgid "Code tabs" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:958 -msgid "Code tabs are essentially :ref:`group tabs ` that treat the content as a :ref:`code block `. The `code-tab` markup is used to define a code tab. Just as for the `code-block` markup, the language defines the syntax highlighting of the tab. If set, the label is used instead of the language for grouping tabs." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1009 -msgid "Cards" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1057 -msgid "Document metadata" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1059 -msgid "Sphinx supports document-wide metadata markups that specify a behavior for the entire page." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1060 -msgid "They must be placed between colons (`:`) at the top of the source file." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1063 -msgid "**Metadata**" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1063 -msgid "**Purpose**" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1065 -msgid "`show-content`" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1065 -msgid "Make a toctree page accessible from the navigation menu." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1067 -msgid "`show-toc`" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1067 -msgid "Show the table of content on a page that has the `show-content` metadata markup." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1070 -msgid "`code-column`" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:0 -msgid "Show a dynamic side column that can be used to display interactive tutorials or code excerpts." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:0 -msgid "For example, see :doc:`/applications/finance/accounting/get_started/cheat_sheet`." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1075 -msgid "`hide-page-toc`" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1075 -msgid "Hide the \"On this page\" sidebar and use full page width for the content." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1077 -msgid "`custom-css`" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1077 -msgid "Link CSS files (comma-separated) to the document." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1079 -msgid "`custom-js`" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1079 -msgid "Link JS files (comma-separated) to the document." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1081 -msgid "`classes`" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1081 -msgid "Assign the specified classes to the `
` element of the document." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1083 -msgid "`orphan`" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1083 -msgid "Suppress the need to include the document in a toctree." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1085 -msgid "`nosearch`" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1085 -msgid "Exclude the document from search results." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1091 -msgid "Formatting tips" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1096 -msgid "Break the line but not the paragraph" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:0 -msgid "A first long line that you break in two -> here <- is rendered as a single line." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:0 -msgid "A second line that follows a line break." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1114 -msgid "Escape markup symbols (Advanced)" -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1116 -msgid "Markup symbols escaped with backslashes (``\\``) are rendered normally. For instance, ``this \\*\\*line of text\\*\\* with \\*markup\\* symbols`` is rendered as “this \\*\\*line of text\\*\\* with \\*markup\\* symbols”." -msgstr "" - -#: ../../content/contributing/documentation/rst_cheat_sheet.rst:1120 -msgid "When it comes to backticks (`````), which are used in many cases such as :ref:`external hyperlinks `, using backslashes for escaping is no longer an option because the outer backticks interpret enclosed backslashes and thus prevent them from escaping inner backticks. For instance, ```\\`this formatting\\```` produces an ``[UNKNOWN NODE title_reference]`` error. Instead, `````this formatting````` should be used to produce the following result: ```this formatting```." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:3 -msgid "RST guidelines" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:8 -msgid "Use relative links for internal URLs" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:10 -msgid "If you need to reference an internal documentation page or a file that is not sitting in the same directory as your current page, always make use of *relative file paths* rather than *absolute file paths*. An absolute file path indicates the location of the target from the root of its file tree. A relative file path makes use of smart notations (such as ``../`` that redirects to the parent folder) to indicate the location of the target *relative* to that of the source document." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:19 -msgid "Given the following source file tree:" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:34 -msgid "A reference to the rendered :file:`prices.html` and :file:`variants.html` could be made from :file:`import.rst` as follows:" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:37 -msgid "Absolute:" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:39 -msgid "``https://odoo.com/documentation/17.0/applications/sales/sales/products_prices/prices.html``" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:40 -msgid "``https://odoo.com/documentation/17.0/applications/sales/sales/products_prices/products/variants.html``" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:42 -msgid "Relative:" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:44 -msgid "``../prices.html``" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:45 -msgid "``variants.html``" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:47 -msgid "The relative links are clearly superior in terms of readability and stability: the references survive version updates, folder name changes and file tree restructurations." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:53 -msgid "Start a new line before the 100th character" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:55 -msgid "In RST, it is possible to break a line without forcing a line break on the rendered HTML. Make use of this feature to write **lines of maximum 100 characters**. A line break in a sentence results in an additional whitespace in HTML. That means that you do not need to leave a trailing whitespace at the end of a line to separate words." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:61 -msgid "You can safely break a line around the separators (``-->``) of ``menuselection`` markups and anywhere in a hyperlink reference. For the ``doc``, ``ref`` and ``download`` markups, this is only true for the label part of the reference." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:66 -msgid "Example: Line breaks within markups" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:75 -msgid "Be consistent with indentation" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:77 -msgid "Use only spaces (never tabs)." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:79 -msgid "Use as many spaces at the beginning of an indented line as needed to align it with the first character of the markup in the line above. This usually implies 3 spaces but you only need 2 for bulleted lists." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:84 -msgid "Example: The first ``:`` is below the ``i`` (3 spaces)" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:93 -msgid "Example: The ``:titlesonly:`` and page references start below the ``t`` (3 spaces)" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:104 -msgid "Example: Continuation lines resume below the ``I``’s of “Invoice” (2 spaces)" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:114 -msgid "Use the menuselection markup" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:116 -msgid "Although chaining characters ``‣`` and menu names works fine to indicate a user which menus to click, it is best to use the ``menuselection`` markup (see :ref:`contributing/menuselection`) for the same result. Indeed, it renders the menus chain consistently with the rest of the documentation and would automatically adapt to the new graphic chart if we were to switch to a new one. This markup is used inline as follows: ``:menuselection:`Sales --> Settings --> Products --> Variants```." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:125 -msgid "Write resilient code" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:127 -msgid "Prefer the use of ``#.`` in numbered lists instead of ``1.``, ``2.``, etc. This removes the risk of breaking the numbering when adding new elements to the list and is easier to maintain." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:129 -msgid "Avoid using implicit hyperlink targets and prefer internal hyperlink targets instead. Referencing the implicit target ``How to print quotations?`` is more prone to break than a reference to the explicit target ``_print_quotation`` which never appears in the rendered HTML and is thus even less likely to be modified." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:137 -msgid "Prefix hyperlink targets with application names" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:139 -msgid "As hyperlink targets are visible from the entire documentation when referenced with the ``ref`` markup, it is recommended to prefix the target name with that of the related application. For instance, naming a target ``_amazon/form`` instead of ``_form`` avoids unwanted behaviors and makes the purpose of the target clear." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:147 -msgid "Don’t break hyperlink targets" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:149 -msgid "When refactoring (improving without adding new content) section headings or hyperlink targets, take care not to break any hyperlink reference to these targets or update them accordingly." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:155 -msgid "Use single-underscore suffixes for hyperlink references" -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:160 -msgid "Although using a double-underscore suffix works most of the time for classic hyperlink references, it is not recommended as double-underscores normally indicate an anonymous hyperlink reference. This is a special kind of hyperlink reference that makes use of nameless hyperlink targets consisting only of two underscore." -msgstr "" - -#: ../../content/contributing/documentation/rst_guidelines.rst:162 -msgid "tl;dr: Double-underscore suffixes work until they don’t and are bad practice, use single-underscore suffixes instead." -msgstr "" diff --git a/locale/sources/developer.pot b/locale/sources/developer.pot deleted file mode 100644 index 46c35eaf2c..0000000000 --- a/locale/sources/developer.pot +++ /dev/null @@ -1,40505 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) Odoo S.A. -# This file is distributed under the same license as the Odoo package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Odoo 17.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-03-08 12:48+0000\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: ../../content/developer.rst:9 -msgid "Developer" -msgstr "" - -#: ../../content/developer.rst:11 -msgid "Learn through tutorials and get help using reference guides." -msgstr "" - -#: ../../content/developer/glossary.rst:5 -msgid "Glossary" -msgstr "" - -#: ../../content/developer/glossary.rst:8 -msgid "external id" -msgstr "" - -#: ../../content/developer/glossary.rst:9 -msgid "external identifier" -msgstr "" - -#: ../../content/developer/glossary.rst:10 -msgid "external identifiers" -msgstr "" - -#: ../../content/developer/glossary.rst:12 -msgid "string identifier stored in ``ir.model.data``, can be used to refer to a record regardless of its database identifier during data imports or export/import roundtrips." -msgstr "" - -#: ../../content/developer/glossary.rst:16 -msgid "External identifiers are in the form :samp:`{module}.{id}` (e.g. ``account.invoice_graph``). From within a module, the :samp:`{module}.` prefix can be left out." -msgstr "" - -#: ../../content/developer/glossary.rst:20 -msgid "Sometimes referred to as \"xml id\" or ``xml_id`` as XML-based :ref:`reference/data` make extensive use of them." -msgstr "" - -#: ../../content/developer/glossary.rst:22 -msgid "format string" -msgstr "" - -#: ../../content/developer/glossary.rst:24 -msgid "inspired by `jinja variables`_, format strings allow more easily mixing literal content and computed content (expressions): content between ``{{`` and ``}}`` is interpreted as an expression and evaluated, other content is interpreted as literal strings and displayed as-is" -msgstr "" - -#: ../../content/developer/glossary.rst:29 -msgid "GIS" -msgstr "" - -#: ../../content/developer/glossary.rst:30 -msgid "Geographic Information System" -msgstr "" - -#: ../../content/developer/glossary.rst:32 -msgid "any computer system or subsystem to capture, store, manipulate, analyze, manage or present spatial and geographical data." -msgstr "" - -#: ../../content/developer/glossary.rst:34 -msgid "minified" -msgstr "" - -#: ../../content/developer/glossary.rst:35 -msgid "minification" -msgstr "" - -#: ../../content/developer/glossary.rst:37 -msgid "process of removing extraneous/non-necessary sections of files (comments, whitespace) and possibly recompiling them using equivalent but shorter structures (`ternary operator`_ instead of ``if/else``) in order to reduce network traffic" -msgstr "" - -#: ../../content/developer/howtos.rst:6 -msgid "How-to guides" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:4 -msgid "Accounting localization" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:8 -msgid "This tutorial requires knowledge about how to build a module in Odoo (see :doc:`../tutorials/getting_started`)." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:13 -msgid "Installation procedure" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:15 -msgid "On installing the `account `_ module, the localization module corresponding to the country code of the company is installed automatically. In case of no country code set or no localization module found, the `l10n_generic_coa `_ (US) localization module is installed by default. Check `post init hook `_ for details." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:19 -msgid "For example, `l10n_ch `_ will be installed if the company has ``Switzerland`` as country." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:22 -msgid "Building a localization module" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:24 -msgid "The structure of a basic ``l10n_XX`` module may be described with the following :file:`__manifest__.py` file:" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:45 -msgid "Your worktree should look like this" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:67 -msgid "In the first file :file:`models/template_xx.py`, we set the name for the chart of accounts along with some basic fields." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:70 -msgid ":doc:`Chart Template References `" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:73 -msgid "`addons/l10n_be/models/template_be.py `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:83 -msgid "Chart of Accounts" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:86 -msgid "Account tags" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:89 -msgid ":ref:`Account Tag References `" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:91 -msgid "Tags are a way to sort accounts. For example, imagine you want to create a financial report having multiple lines but you have no way to find a rule to dispatch the accounts according to their ``code``. The solution is the usage of tags, one for each report line, to filter accounts like you want." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:95 -msgid "Put the tags in the :file:`data/account_account_tag_data.xml` file." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:98 -msgid "`addons/l10n_lt/data/template/account.account-lt.csv `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:106 -msgid "Accounts" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:109 -msgid ":ref:`Account References `" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:110 -msgid ":doc:`/applications/finance/accounting/get_started/chart_of_accounts`" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:112 -msgid "Obviously, :guilabel:`Chart of Accounts` cannot exist without :guilabel:`Accounts`. You need to specify them in :file:`data/account.account.template.csv`." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:115 -msgid "`addons/l10n_ch/data/template/account.account-ch.csv `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:124 -msgid "Avoid the usage of `asset_cash` ``account_type``! Indeed, the bank & cash accounts are created directly at the installation of the localization module and then, are linked to an ``account.journal``." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:126 -msgid "Only one account of type payable/receivable is enough for the generic case. We need to define a PoS receivable account as well however. (linked in the CoA)" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:127 -msgid "Don't create too many accounts: 200-300 is enough. But mostly, we try to find a good balance where the CoA needs minimal adapting for most companies afterwards." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:131 -msgid "Account groups" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:134 -msgid ":ref:`Account Group References `" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:136 -msgid "Account groups allow describing the hierarchical structure of the chart of accounts. The filter needs to be activated in the report and then when you decollapse into journal entries it will show the parents of the account." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:138 -msgid "It works with the prefix *start*/*end*, so every account where the code starts with something between *start* and *end* will have this ``account.group`` as the parent group. Furthermore, the account groups can have a parent account group as well to form the hierarchy." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:142 -msgid "`addons/l10n_il/data/template/account.group-il.csv `_" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -#: ../../content/developer/howtos/website_themes/building_blocks.rst:444 -#: ../../content/developer/howtos/website_themes/building_blocks.rst:469 -#: ../../content/developer/howtos/website_themes/building_blocks.rst:500 -#: ../../content/developer/howtos/website_themes/layout.rst:71 -#: ../../content/developer/reference/backend/data/res.country.state.csv:1 -msgid "id" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "code_prefix_start" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "code_prefix_end" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -#: ../../content/developer/howtos/website_themes/building_blocks.rst:446 -#: ../../content/developer/howtos/website_themes/building_blocks.rst:471 -#: ../../content/developer/howtos/website_themes/building_blocks.rst:502 -#: ../../content/developer/howtos/website_themes/layout.rst:75 -#: ../../content/developer/howtos/website_themes/navigation.rst:58 -#: ../../content/developer/howtos/website_themes/pages.rst:139 -#: ../../content/developer/howtos/website_themes/pages.rst:203 -#: ../../content/developer/howtos/website_themes/shapes.rst:134 -#: ../../content/developer/howtos/website_themes/theming.rst:121 -#: ../../content/developer/tutorials/define_module_data.rst:177 -#: ../../content/developer/tutorials/getting_started/04_basicmodel.rst:189 -#: ../../content/developer/tutorials/getting_started/04_basicmodel.rst:262 -#: ../../content/developer/tutorials/getting_started/08_relations.rst:73 -#: ../../content/developer/tutorials/getting_started/08_relations.rst:180 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountAccount.account_type:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountAccount.code:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountAccount.currency_id:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountAccount.name:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountAccount.note:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountAccount.reconcile:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountAccount.tag_ids:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountAccount.tax_ids:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountGroup.code_prefix_end:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountGroup.code_prefix_start:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountGroup.name:0 -#: ../../../odoo/addons/account/models/account_account.py:docstring of odoo.addons.account.models.account_account.AccountGroup.parent_id:0 -#: ../../../odoo/addons/account/models/account_account_tag.py:docstring of odoo.addons.account.models.account_account_tag.AccountAccountTag.active:0 -#: ../../../odoo/addons/account/models/account_account_tag.py:docstring of odoo.addons.account.models.account_account_tag.AccountAccountTag.applicability:0 -#: ../../../odoo/addons/account/models/account_account_tag.py:docstring of odoo.addons.account.models.account_account_tag.AccountAccountTag.color:0 -#: ../../../odoo/addons/account/models/account_account_tag.py:docstring of odoo.addons.account.models.account_account_tag.AccountAccountTag.country_id:0 -#: ../../../odoo/addons/account/models/account_account_tag.py:docstring of odoo.addons.account.models.account_account_tag.AccountAccountTag.name:0 -#: ../../../odoo/addons/account/models/account_account_tag.py:docstring of odoo.addons.account.models.account_account_tag.AccountAccountTag.tax_negate:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.availability_condition:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.column_ids:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.country_id:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.default_opening_date_filter:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_account_type:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_analytic:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_date_range:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.allow_foreign_vat:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_growth_comparison:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_hierarchy:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_journals:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_multi_company:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_partner:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_period_comparison:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_show_draft:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_unfold_all:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.filter_unreconciled:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.line_ids:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.load_more_limit:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.name:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.only_tax_exigible:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.root_report_id:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReport.search_bar:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.action_id:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.children_ids:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.expression_ids:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.foldable:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.hide_if_zero:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.hierarchy_level:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.name:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.parent_id:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.print_on_new_page:0 -#: ../../../odoo/addons/account/models/account_report.py:docstring of odoo.addons.account.models.account_report.AccountReportLine.report_id:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.active:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.amount:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.amount_type:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.analytic:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.cash_basis_transition_account_id:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.children_tax_ids:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.description:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.include_base_amount:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.invoice_repartition_line_ids:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.is_base_affected:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.name:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.price_include:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.refund_repartition_line_ids:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.sequence:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.tax_exigibility:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.tax_group_id:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.tax_scope:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTax.type_tax_use:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTaxRepartitionLine.account_id:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTaxRepartitionLine.document_type:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTaxRepartitionLine.factor_percent:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTaxRepartitionLine.repartition_type:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTaxRepartitionLine.tag_ids:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTaxRepartitionLine.tax_id:0 -#: ../../../odoo/addons/account/models/account_tax.py:docstring of odoo.addons.account.models.account_tax.AccountTaxRepartitionLine.use_in_tax_closing:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.account_ids:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.auto_apply:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.country_group_id:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.country_id:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.name:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.note:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.sequence:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.state_ids:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.tax_ids:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.vat_required:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.zip_from:0 -#: ../../../odoo/addons/account/models/partner.py:docstring of odoo.addons.account.models.partner.AccountFiscalPosition.zip_to:0 -#: ../../content/developer/reference/backend/data/res.country.state.csv:1 -msgid "name" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "name@he_IL" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_100100" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "100100" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "100499" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Fixed Assets" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "רכוש קבוע" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_101110" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "101110" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "101400" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Current Assets" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "רכוש שוטף" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_101401" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "101401" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "101799" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Bank And Cash" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "בנק ומזומנים" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_111000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "111000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "111999" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Current Liabilities" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "התחייבויות שוטפות" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_112000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "112000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "112210" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Non-current Liabilities" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "התחייבויות לא שוטפות" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_200000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "200000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "200199" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Sales Income" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "הכנסות ממכירות" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_200200" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "200200" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "200300" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Other Income" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "הכנסות אחרות" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_201000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "201000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "201299" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Cost of Goods" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "עלות המכר" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_202000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "202000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "220900" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Expenses" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "הוצאות" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "il_group_300000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "300000" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "399999" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "Capital And Shares" -msgstr "" - -#: ../../../odoo/addons/l10n_il/data/template/account.group-il.csv:1 -msgid "הון ומניות" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:151 -#: ../../content/developer/reference/standard_modules/account/account_tax.rst:5 -msgid "Taxes" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:154 -msgid ":ref:`Tax References `" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:155 -msgid ":doc:`/applications/finance/accounting/taxes/`" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:157 -msgid "To add taxes you first need to specify tax groups. You normally need just one tax group for every tax rate, except for the 0% as you need to often distinguish between exempt, 0%, not subject, ... taxes. This model only has two required fields: `name` and `country`. Create the file :file:`data/template/account.tax.group-xx.csv` and list the groups." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:161 -msgid "`addons/l10n_uk/data/template/account.tax.group-uk.csv `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:168 -msgid "Now you can add the taxes via :file:`data/template/account.tax-xx.csv` file. The first tax you define that is purchase/sale also becomes the default purchase/sale tax for your products." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:172 -msgid "`addons/l10n_ae/data/template/account.tax-ae.csv `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:181 -msgid "Tax Report" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:187 -msgid "The tax report is declared in the :guilabel:`Invoicing` (`account`) app, but the report is only accessible when :guilabel:`Accounting` (`account_accountant`) is installed." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:190 -#: ../../content/developer/howtos/accounting_localization.rst:302 -msgid ":doc:`/developer/reference/standard_modules/account/account_report_line`" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:191 -msgid ":doc:`/applications/finance/accounting/reporting/tax_returns`" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:193 -msgid "In the previous section, you noticed the fields `invoice_repartition_line_ids` or `refund_repartition_line_ids` and probably understood nothing about them. Good news: you are not alone on this incomprehension. Bad news: you have to figure it out a bit. The topic is complicated. Indeed:" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:198 -msgid "The simple version is that, in the tax template, you indicate in the invoice/refund repartition lines whether the base or a percentage of the tax needs to be reported in which report line (through the *minus/plus_report_line_ids* fields). It becomes clear also when you check the tax configuration in the Odoo interface (or check the docs :ref:`Tax References `, :ref:`Tax Repartition References `)." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:201 -msgid "So, once you have properly configured taxes, you just need to add the :file:`data/account_tax_report_data.xml` file with a record for your `account.report`. For it to be considered as a tax report, you need to provide it with the right `root_report_id`." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:215 -msgid "... followed by the declaration of its lines, as `account.report.line` records." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:218 -msgid "`addons/l10n_au/data/account_tax_report_data.xml `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:229 -msgid "Fiscal positions" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:232 -msgid ":ref:`Fiscal Position References `" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:233 -msgid ":doc:`/applications/finance/accounting/taxes/fiscal_positions`" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:235 -msgid "Specify fiscal positions in the :file:`data/template/account.fiscal.position-xx.csv` file." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:238 -msgid "`addons/l10n_es/data/template/account.fiscal.position-es_common.csv `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:246 -msgid "Final steps" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:248 -msgid "Finally, you may add a demo company, so the localization can easily be tested in demo mode." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:251 -msgid "`addons/l10n_ch/demo/demo_company.xml `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:260 -msgid "Accounting reports" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:267 -msgid ":doc:`/applications/finance/accounting/reporting`" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:269 -msgid "Accounting reports should be added via a separate module `l10n_XX_reports` that should go to the `enterprise repository `_." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:271 -msgid "Basic :file:`__manifest__.py` file for such a module looks as following:" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:292 -msgid "Functional overview of financial reports is here: :doc:`/applications/finance/accounting/reporting`." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:294 -msgid "Some good examples:" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:296 -msgid "`l10n_ch_reports/data/account_financial_html_report_data.xml `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:297 -msgid "`l10n_be_reports/data/account_financial_html_report_data.xml `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:299 -msgid "You can check the meaning of the fields here:" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:301 -msgid ":doc:`/developer/reference/standard_modules/account/account_report`" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:304 -msgid "If you gave a `root_report_id` to your report, it is now available in its variant selector. If not, you still need to add a menu item for it. A default menu item can be created from the form view of the report by clicking on :menuselection:`Actions --> Create Menu Item`. You will then need to refresh the page to see it. Alternatively, to create a dedicated section for a totally new report in the :guilabel:`Reporting` menu, you need to create a new `ir.ui.menu` record (usually in the main `l10n_XX` module) and a new `ir.actions.client` (usually in the new report XML file) that calls the `account.report` with the new **report id**. Then, set the new menu as `parent_id` field in the action model." -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:314 -msgid "`ir.ui.menu creation `_" -msgstr "" - -#: ../../content/developer/howtos/accounting_localization.rst:315 -msgid "`ir.actions.client and menu item creation `_" -msgstr "" - -#: ../../content/developer/howtos/company.rst:6 -msgid "Multi-company Guidelines" -msgstr "" - -#: ../../content/developer/howtos/company.rst:10 -msgid "This tutorial requires good knowledge of Odoo. Please refer to the :doc:`../tutorials/getting_started` tutorial first if needed." -msgstr "" - -#: ../../content/developer/howtos/company.rst:13 -msgid "As of version 13.0, a user can be logged in to multiple companies at once. This allows the user to access information from multiple companies, but also to create/edit records in a multi-company environment." -msgstr "" - -#: ../../content/developer/howtos/company.rst:17 -msgid "If not managed correctly, it may be the source of a lot of inconsistent multi-company behaviors. For instance, a user logged in to both companies A and B could create a sales order in company A and add products belonging to company B to it. It is only when the user logs out from company B that access errors will occur for the sales order." -msgstr "" - -#: ../../content/developer/howtos/company.rst:22 -msgid "To correctly manage multi-company behaviors, Odoo's ORM provides multiple features:" -msgstr "" - -#: ../../content/developer/howtos/company.rst:24 -msgid ":ref:`Company-dependent fields `" -msgstr "" - -#: ../../content/developer/howtos/company.rst:25 -msgid ":ref:`Multi-company consistency `" -msgstr "" - -#: ../../content/developer/howtos/company.rst:26 -msgid ":ref:`Default company `" -msgstr "" - -#: ../../content/developer/howtos/company.rst:27 -msgid ":ref:`Views `" -msgstr "" - -#: ../../content/developer/howtos/company.rst:28 -msgid ":ref:`Security rules `" -msgstr "" - -#: ../../content/developer/howtos/company.rst:33 -msgid "Company-dependent fields" -msgstr "" - -#: ../../content/developer/howtos/company.rst:35 -msgid "When a record is available from multiple companies, we must expect that different values will be assigned to a given field depending on the company from which the value is set." -msgstr "" - -#: ../../content/developer/howtos/company.rst:38 -msgid "For the field of the same record to support several values, it must be defined with the attribute `company_dependent` set to `True`." -msgstr "" - -#: ../../content/developer/howtos/company.rst:57 -msgid "The `_compute_display_info` method is decorated with `depends_context('company')` (see :attr:`~odoo.api.depends_context`) to ensure that the computed field is recomputed depending on the current company (`self.env.company`)." -msgstr "" - -#: ../../content/developer/howtos/company.rst:61 -msgid "When a company-dependent field is read, the current company is used to retrieve its value. In other words, if a user is logged in to companies A and B with A as the main company and creates a record for company B, the value of company-dependent fields will be that of company A." -msgstr "" - -#: ../../content/developer/howtos/company.rst:65 -msgid "To read the values of company-dependent fields set by another company than the current one, we need to ensure the company we are using is the correct one. This can be done with :meth:`~odoo.models.Model.with_company`, which updates the current company." -msgstr "" - -#: ../../content/developer/howtos/company.rst:80 -msgid "Whenever you are computing/creating/... things that may behave differently in different companies, you should make sure whatever you are doing is done in the right company. It doesn't cost much to always use `with_company` to avoid problems later." -msgstr "" - -#: ../../content/developer/howtos/company.rst:101 -msgid "Multi-company consistency" -msgstr "" - -#: ../../content/developer/howtos/company.rst:103 -msgid "When a record is made shareable between several companies by the means of a `company_id` field, we must take care that it cannot be linked to the record of another company through a relational field. For instance, we do not want to have a sales order and its invoice belonging to different companies." -msgstr "" - -#: ../../content/developer/howtos/company.rst:107 -msgid "To ensure this multi-company consistency, you must:" -msgstr "" - -#: ../../content/developer/howtos/company.rst:109 -msgid "Set the class attribute `_check_company_auto` to `True`." -msgstr "" - -#: ../../content/developer/howtos/company.rst:110 -msgid "Define relational fields with the attribute `check_company` set to `True` if their model has a `company_id` field." -msgstr "" - -#: ../../content/developer/howtos/company.rst:113 -msgid "On each :meth:`~odoo.models.Model.create` and :meth:`~odoo.models.Model.write`, automatic checks will be triggered to ensure the multi-company consistency of the record." -msgstr "" - -#: ../../content/developer/howtos/company.rst:127 -msgid "The field `company_id` must not be defined with `check_company=True`." -msgstr "" - -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._check_company:1 -msgid "Check the companies of the values of the given field names." -msgstr "" - -#: ../../content/developer/reference/backend/mixins.rst:0 -#: ../../content/developer/reference/frontend/framework_overview.rst:0 -#: ../../content/developer/reference/frontend/qweb.rst:0 -#: ../../content/developer/reference/upgrade_scripts.rst:0 -#: ../../content/developer/reference/upgrade_utils.rst:0 -#: ../../../odoo/addons/payment/models/payment_method.py:docstring of odoo.addons.payment.models.payment_method.PaymentMethod._get_compatible_payment_methods:0 -#: ../../../odoo/addons/payment/models/payment_method.py:docstring of odoo.addons.payment.models.payment_method.PaymentMethod._get_from_code:0 -#: ../../../odoo/addons/payment/models/payment_provider.py:docstring of odoo.addons.payment.models.payment_provider.PaymentProvider._get_compatible_providers:0 -#: ../../../odoo/addons/payment/models/payment_provider.py:docstring of odoo.addons.payment.models.payment_provider.PaymentProvider._get_redirect_form_view:0 -#: ../../../odoo/addons/payment/models/payment_provider.py:docstring of odoo.addons.payment.models.payment_provider.PaymentProvider._is_tokenization_required:0 -#: ../../../odoo/addons/payment/models/payment_provider.py:docstring of odoo.addons.payment.models.payment_provider.PaymentProvider._should_build_inline_form:0 -#: ../../../odoo/addons/payment/models/payment_token.py:docstring of odoo.addons.payment.models.payment_token.PaymentToken._build_display_name:0 -#: ../../../odoo/addons/payment/models/payment_token.py:docstring of odoo.addons.payment.models.payment_token.PaymentToken._get_available_tokens:0 -#: ../../../odoo/addons/payment/models/payment_token.py:docstring of odoo.addons.payment.models.payment_token.PaymentToken._get_specific_create_values:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._compute_reference:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._compute_reference_prefix:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._get_specific_create_values:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._get_specific_processing_values:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._get_specific_rendering_values:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._get_tx_from_notification_data:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._handle_notification_data:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._process_notification_data:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._send_capture_request:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._send_refund_request:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._send_void_request:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._set_authorized:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._set_canceled:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._set_done:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._set_error:0 -#: ../../../odoo/addons/payment/models/payment_transaction.py:docstring of odoo.addons.payment.models.payment_transaction.PaymentTransaction._set_pending:0 -#: ../../../odoo/odoo/addons/base/models/ir_ui_view.py:docstring of odoo.addons.base.models.ir_ui_view.Model.get_view:0 -#: ../../../odoo/odoo/addons/base/models/ir_ui_view.py:docstring of odoo.addons.base.models.ir_ui_view.Model.get_views:0 -#: ../../../odoo/odoo/api.py:docstring of odoo.api.Environment.invalidate_all:0 -#: ../../../odoo/odoo/api.py:docstring of odoo.api.Environment.ref:0 -#: ../../../odoo/odoo/api.py:docstring of odoo.api.ondelete:0 -#: ../../../odoo/odoo/api.py:docstring of odoo.api.returns:0 -#: ../../../odoo/odoo/exceptions.py:docstring of odoo.exceptions.RedirectWarning:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Binary:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Char:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Date.context_today:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Date.to_date:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Date.to_string:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Datetime.context_timestamp:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Datetime.to_datetime:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Datetime.to_string:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Field:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Float:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Html:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Image:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Many2many:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Many2one:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Many2oneReference:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Monetary:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.One2many:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Selection:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.fields.Text:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.tools.date_utils.add:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.tools.date_utils.end_of:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.tools.date_utils.start_of:0 -#: ../../../odoo/odoo/fields.py:docstring of odoo.tools.date_utils.subtract:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.HttpDispatcher.handle_error:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.JsonRPCDispatcher.handle_error:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.Request.csrf_token:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.Request.make_json_response:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.Request.make_response:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.Request.render:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.Request.update_env:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.Request.validate_csrf:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.Response:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.Response.load:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.route:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._check_company:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._populate:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._read_group:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.browse:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.copy:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.create:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.default_get:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.fetch:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.fields_get:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.filtered:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.filtered_domain:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.flush_model:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.flush_recordset:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.grouped:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.invalidate_model:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.invalidate_recordset:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.mapped:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.modified:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.name_create:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.name_search:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.read:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.read_group:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.search:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.search_count:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.search_fetch:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.sorted:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.with_company:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.with_env:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.write:0 -#: ../../../odoo/odoo/tests/common.py:docstring of odoo.tests.common.BaseCase.browse_ref:0 -#: ../../../odoo/odoo/tests/common.py:docstring of odoo.tests.common.BaseCase.ref:0 -#: ../../../odoo/odoo/tests/form.py:docstring of odoo.tests.form.Form:0 -#: ../../../odoo/odoo/tools/populate.py:docstring of odoo.tools.populate.cartesian:0 -#: ../../../odoo/odoo/tools/populate.py:docstring of odoo.tools.populate.compute:0 -#: ../../../odoo/odoo/tools/populate.py:docstring of odoo.tools.populate.iterate:0 -#: ../../../odoo/odoo/tools/populate.py:docstring of odoo.tools.populate.randint:0 -#: ../../../odoo/odoo/tools/populate.py:docstring of odoo.tools.populate.randomize:0 -#: ../../../odoo/odoo/tools/profiler.py:docstring of odoo.tools.profiler.PeriodicCollector:0 -#: ../../../odoo/odoo/tools/profiler.py:docstring of odoo.tools.profiler.Profiler.__init__:0 -msgid "Parameters" -msgstr "" - -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._check_company:3 -msgid "names of relational fields to check" -msgstr "" - -#: ../../../odoo/odoo/addons/base/models/ir_ui_view.py:docstring of odoo.addons.base.models.ir_ui_view.Model.get_view:0 -#: ../../../odoo/odoo/api.py:docstring of odoo.api.Environment.companies:0 -#: ../../../odoo/odoo/api.py:docstring of odoo.api.Environment.company:0 -#: ../../../odoo/odoo/api.py:docstring of odoo.api.Environment.ref:0 -#: ../../../odoo/odoo/http.py:docstring of odoo.http.Response.load:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._check_company:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._read_group:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.create:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.ensure_one:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.fetch:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.read:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.read_group:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.search:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.search_fetch:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.unlink:0 -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel.write:0 -#: ../../../odoo/odoo/tests/form.py:docstring of odoo.tests.form.Form.save:0 -#: ../../../odoo/odoo/tests/form.py:docstring of odoo.tests.form.O2MProxy.edit:0 -#: ../../../odoo/odoo/tests/form.py:docstring of odoo.tests.form.O2MProxy.new:0 -#: ../../../odoo/odoo/tests/form.py:docstring of odoo.tests.form.O2MProxy.remove:0 -msgid "Raises" -msgstr "" - -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._check_company:4 -msgid "if the `company_id` of the value of any field is not in `[False, self.company_id]` (or `self` if :class:`~odoo.addons.base.models.res_company`)." -msgstr "" - -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._check_company:8 -msgid "For :class:`~odoo.addons.base.models.res_users` relational fields, verifies record company is in `company_ids` fields." -msgstr "" - -#: ../../../odoo/odoo/models.py:docstring of odoo.models.BaseModel._check_company:11 -msgid "User with main company A, having access to company A and B, could be assigned or linked to records in company B." -msgstr "" - -#: ../../content/developer/howtos/company.rst:132 -msgid "The `check_company` feature performs a strict check! It means that if a record has no `company_id` (i.e., the field is not required), it cannot be linked to a record whose `company_id` is set." -msgstr "" - -#: ../../content/developer/howtos/company.rst:138 -msgid "When no domain is defined on the field and `check_company` is set to `True`, a default domain is added: `['|', '('company_id', '=', False), ('company_id', '=', company_id)]`" -msgstr "" - -#: ../../content/developer/howtos/company.rst:144 -msgid "Default company" -msgstr "" - -#: ../../content/developer/howtos/company.rst:146 -msgid "When the field `company_id` is made required on a model, a good practice is to set a default company. It eases the setup flow for the user or even guarantees its validity when the company is hidden from view. Indeed, the company is usually hidden if the user does not have access to multiple companies (i.e., when the user does not have the group `base.group_multi_company`)." -msgstr "" - -#: ../../content/developer/howtos/company.rst:168 -#: ../../content/developer/howtos/upgrade_custom_db.rst:129 -#: ../../content/developer/howtos/website_themes/setup.rst:75 -#: ../../content/developer/howtos/website_themes/theming.rst:496 -#: ../../content/developer/reference/frontend/javascript_reference.rst:1154 -msgid "Views" -msgstr "" - -#: ../../content/developer/howtos/company.rst:170 -msgid "As stated in :ref:`above `, the company is usually hidden from view if the user does not have access to multiple companies. This is assessed with the group `base.group_multi_company`." -msgstr "" - -#: ../../content/developer/howtos/company.rst:197 -msgid "Security rules" -msgstr "" - -#: ../../content/developer/howtos/company.rst:199 -msgid "When working with records shared across companies or restricted to a single company, we must take care that a user does not have access to records belonging to other companies." -msgstr "" - -#: ../../content/developer/howtos/company.rst:202 -msgid "This is achieved with security rules based on `company_ids`, which contain the current companies of the user (the companies the user checked in the multi-company widget)." -msgstr "" - -#: ../../content/developer/howtos/company.rst:229 -#: ../../content/developer/howtos/translations.rst:19 -#: ../../content/developer/howtos/website_themes/building_blocks.rst:77 -#: ../../content/developer/howtos/website_themes/building_blocks.rst:332 -#: ../../content/developer/howtos/website_themes/layout.rst:547 -#: ../../content/developer/howtos/website_themes/pages.rst:130 -#: ../../content/developer/howtos/website_themes/pages.rst:194 -#: ../../content/developer/howtos/website_themes/shapes.rst:125 -#: ../../content/developer/reference/backend/actions.rst:173 -#: ../../content/developer/reference/backend/orm.rst:639 -#: ../../content/developer/reference/backend/orm.rst:641 -#: ../../content/developer/reference/backend/orm.rst:837 -#: ../../content/developer/reference/backend/orm.rst:996 -#: ../../content/developer/reference/backend/security.rst:28 -#: ../../content/developer/reference/backend/security.rst:186 -#: ../../content/developer/reference/frontend/qweb.rst:422 -#: ../../content/developer/reference/frontend/qweb.rst:739 -#: ../../content/developer/reference/user_interface/view_architectures.rst:223 -#: ../../content/developer/reference/user_interface/view_architectures.rst:2661 -#: ../../content/developer/reference/user_interface/view_architectures.rst:2682 -#: ../../content/developer/reference/user_interface/view_records.rst:217 -#: ../../content/developer/tutorials/web.rst:134 -#: ../../content/developer/tutorials/web.rst:1872 -#: ../../content/developer/tutorials/website.rst:495 -#: ../../../odoo/odoo/api.py:docstring of odoo.api:3 -msgid "Todo" -msgstr "" - -#: ../../content/developer/howtos/company.rst:229 -msgid "check_company on company_dependent fields." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:3 -msgid "Connect with a device" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:5 -msgid "IoT Drivers allow any Odoo module to communicate in real-time with any device connected to the IoT Box. Communication with the IoT Box goes both ways, so the Odoo client can send commands to and receive information from any of the supported devices." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:10 -msgid "To add support for a device, all we need is:" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:12 -msgid "an `Interface`, to detect connected devices of a specific type" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:13 -msgid "a `Driver`, to communicate with an individual device" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:15 -msgid "At each boot, the IoT Box will load all of the Interfaces and Drivers that can be located on the connected Odoo instance. Each module can contain an `iot_handlers` directory that will be copied to the IoT Box. The structure of this directory is the following" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:34 -msgid "Detect Devices" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:36 -msgid "Devices connected to the IoT Box are detected through `Interfaces`. There is an Interface for each supported connection type (USB, Bluetooth, Video, Printers, Serial, etc.). The interface maintains a list of detected devices and associates them with the right Driver." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:41 -msgid "Supported devices will appear both on the IoT Box Homepage that you can access through its IP address and in the IoT module of the connected Odoo instance." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:45 -msgid "Interface" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:47 -msgid "The role of the Interface is to maintain a list of devices connected through a determined connection type. Creating a new interface requires" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:50 -msgid "Extending the `Interface` class" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:51 -msgid "Setting the `connection_type` class attribute" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:52 -msgid "Implementing the `get_devices` method, that should return a dictionary containing data about each detected device. This data will be given as argument to the constructors and `supported` method of the Drivers." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:57 -msgid "Setting the `_loop_delay` attribute will modify the interval between calls to `get_devices`. By default, this interval is set to 3 seconds." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:74 -msgid "Driver" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:76 -msgid "Once the interface has retrieved the list of detected devices, it will loop through all of the Drivers that have the same `connection_type` attribute and test their respective `supported` method on all detected devices. If the supported method of a Driver returns `True`, an instance of this Driver will be created for the corresponding device." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:83 -msgid "`supported` methods of drivers are given a priority order. The `supported` method of a child class will always be tested before the one of its parent. This priority can be adjusted by modifying the `priority` attribute of the Driver." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:88 -msgid "Creating a new Driver requires:" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:90 -msgid "Extending `Driver`" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:91 -msgid "Setting the `connection_type` class attribute." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:92 -msgid "Setting the `device_type`, `device_connection` and `device_name` attributes." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:93 -msgid "Defining the `supported` method" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:113 -msgid "Communicate With Devices" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:115 -msgid "Once your new device is detected and appears in the IoT module, the next step is to communicate with it. Since the box only has a local IP address, it can only be reached from the same local network. Communication, therefore, needs to happen on the browser-side, in JavaScript." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:120 -msgid "The process depends on the direction of the communication: - From the browser to the box, through `Actions`_ - From the box to the browser, through `Longpolling`_" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:124 -msgid "Both channels are accessed from the same JS object, the `DeviceProxy`, which is instantiated using the IP of the IoT Box and the device identifier." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:137 -#: ../../content/developer/howtos/website_themes/forms.rst:33 -#: ../../content/developer/reference/backend/actions.rst:3 -#: ../../content/developer/tutorials/getting_started/06_firstui.rst:47 -msgid "Actions" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:139 -msgid "Actions are used to tell a selected device to execute a specific action, such as taking a picture, printing a receipt, etc." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:143 -msgid "It must be noted that no “answer” will be sent by the box on this route, only the request status. The answer to the action, if any, has to be retrieved via the longpolling." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:147 -msgid "An action can be performed on the DeviceProxy Object." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:153 -msgid "In your driver, define an `action` method that will be executed when called from an Odoo module. It takes the data given during the call as argument." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:162 -msgid "Longpolling" -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:164 -msgid "When any module in Odoo wants to read data from a specific device, it creates a listener identified by the IP/domain of the box and the device identifier and passes it a callback function to be called every time the device status changes. The callback is called with the new data as argument." -msgstr "" - -#: ../../content/developer/howtos/connect_device.rst:177 -msgid "In the Driver, an event is released by calling the `device_changed` function from the `event_manager`. All callbacks set on the listener will then be called with `self.data` as argument." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:3 -msgid "Create customized reports" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:5 -msgid "SQL views are a technique for creating customized reports to show data that cannot be shown with existing models' fields and views. In other words, this technique helps avoid unnecessary creation and calculation of additional fields solely for data analysis purposes." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:11 -msgid "Create a model" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:13 -msgid "A SQL view is created in a similar manner as a standard model:" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:26 -msgid "Where the attributes:" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:28 -msgid "`_auto = False` indicates that we do not want to store the model in the database" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:29 -msgid "`_rec_name` indicates which of the model's fields represents a record's name (i.e. the name that will be used in the navigation breadcrumb when opening a record's form view)" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:32 -msgid "and its fields are defined in the same way as a standard model, except every field is marked as `readonly=True`." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:36 -msgid "Don't forget to add your new model to your security file." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:39 -msgid "Populate the model" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:41 -msgid "There are 2 ways to populate a SQL view's table:" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:43 -msgid "override the `BaseModel.init()` method," -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:44 -msgid "set the `_table_query` property." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:46 -msgid "Regardless of which way is used, a SQL query will be executed to populate the model. Therefore, any SQL commands can be used to collect and/or calculate the data needed and you are expected to keep in mind that you are bypassing the ORM (i.e. it is a good idea to read through :ref:`reference/security` if you haven't already). The columns returned from the `SELECT` will populate the model's fields, so ensure that your column names match your field names, or use alias names that match." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:55 -msgid "Overriding `BaseModel.init()`" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:57 -msgid "In most cases, overriding the `BaseModel.init()` method is the standard and better option to use. It requires the import of `tools` and is typically written as follows:" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:71 -msgid "`tools.drop_view_if_exists` ensures that a conflicting view is not created when the SQL query is executed. It is standard to separate the different parts of the query to allow for easier model extension. Exactly how the query is split up across methods is not standardized, but at minimum, the `_select` and `_from` methods are common, and of course, all these methods will return strings." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:78 -msgid "`Example: a SQL view using an override of BaseModel.init() `_" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:81 -msgid "Using `_table_query`" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:83 -msgid "The ``_table_query`` property is used when the view depends on the context. It is typically written as follows:" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:92 -msgid "and follows the same `_select` and `_from` methods standards as `BaseModel.init()`." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:94 -msgid "An example of when the property should be used instead of overriding `BaseModel.init()` is in a multi-company and multi-currency environment where currency related amounts need to be converted using currency exchange rates when the user switches between companies." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:99 -msgid "`Example: a SQL view using _table_query `_" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:103 -msgid "Use the model" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:105 -msgid "Views and menu items for your SQL views are created and used in the same way as any other Odoo model. You are all set to start using your SQL view. Have fun!" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:109 -msgid "Extra tips" -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:112 -msgid "A common mistake in SQL views is not considering the duplication of certain data due to table JOINs. This can lead to miscounting when using a field's `group_operator` and/or the pivot view. It is best to test your SQL view with sufficient data to ensure the resulting field values are as you expect." -msgstr "" - -#: ../../content/developer/howtos/create_reports.rst:118 -msgid "If you have a field that you do not want as a measure (i.e., in your pivot or graph views), add `store=False` to it, and it will not show." -msgstr "" - -#: ../../content/developer/howtos/javascript_client_action.rst:6 -msgid "Create a client action" -msgstr "" - -#: ../../content/developer/howtos/javascript_client_action.rst:8 -msgid "A client action triggers an action that is entirely implemented in the client side. One of the benefits of using a client action is the ability to create highly customized interfaces with ease. A client action is typically defined by an OWL component; we can also use the web framework and use services, core components, hooks,..." -msgstr "" - -#: ../../content/developer/howtos/javascript_client_action.rst:13 -msgid "Create the :ref:`client action `, don't forget to make it accessible." -msgstr "" - -#: ../../content/developer/howtos/javascript_client_action.rst:23 -msgid "Create a component that represents the client action." -msgstr "" - -#: ../../content/developer/howtos/javascript_client_action.rst:25 -msgid ":file:`my_client_action.js`" -msgstr "" - -#: ../../content/developer/howtos/javascript_client_action.rst:40 -msgid ":file:`my_client_action.xml`" -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:4 -msgid "Customize a field" -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:7 -msgid "Subclass an existing field component" -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:9 -msgid "Let's take an example where we want to extends the `BooleanField` to create a boolean field displaying \"Late!\" in red whenever the checkbox is checked." -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:12 -msgid "Create a new widget component extending the desired field component." -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:14 -#: ../../content/developer/howtos/javascript_field.rst:45 -msgid ":file:`late_order_boolean_field.js`" -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:26 -msgid "Create the field template." -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:28 -msgid "The component uses a new template with the name `my_module.LateOrderBooleanField`. Create it by inheriting the current template of the `BooleanField`." -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:31 -msgid ":file:`late_order_boolean_field.xml`" -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:43 -msgid "Register the component to the fields registry." -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:50 -#: ../../content/developer/howtos/javascript_field.rst:103 -msgid "Add the widget in the view arch as an attribute of the field." -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:57 -msgid "Create a new field component" -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:59 -msgid "Assume that we want to create a field that displays a simple text in red." -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:61 -msgid "Create a new Owl component representing our new field" -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:63 -#: ../../content/developer/howtos/javascript_field.rst:96 -msgid ":file:`my_text_field.js`" -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:90 -msgid "The imported `standardFieldProps` contains the standard props passed by the `View` such as the `update` function to update the value, the `type` of the field in the model, the `readonly` boolean, and others." -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:94 -msgid "In the same file, register the component to the fields registry." -msgstr "" - -#: ../../content/developer/howtos/javascript_field.rst:101 -msgid "This maps the widget name in the arch to its actual component." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:3 -msgid "Customize a view type" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:6 -msgid "Subclass an existing view" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:8 -msgid "Assume we need to create a custom version of a generic view. For example, a kanban view with some extra ribbon-like widget on top (to display some specific custom information). In that case, this can be done in a few steps:" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:12 -msgid "Extend the kanban controller/renderer/model and register it in the view registry." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:14 -msgid ":file:`custom_kanban_controller.js`" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:39 -msgid "In our custom kanban, we defined a new template. We can either inherit the kanban controller template and add our template pieces or we can define a completely new template." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:42 -msgid ":file:`custom_kanban_controller.xml`" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:56 -msgid "Use the view with the `js_class` attribute in arch." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:68 -msgid "The possibilities for extending views are endless. While we have only extended the controller here, you can also extend the renderer to add new buttons, modify how records are presented, or customize the dropdown, as well as extend other components such as the model and `buttonTemplate`." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:73 -msgid "Create a new view from scratch" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:75 -msgid "Creating a new view is an advanced topic. This guide highlight only the essential steps." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:77 -msgid "Create the controller." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:79 -msgid "The primary role of a controller is to facilitate the coordination between various components of a view, such as the Renderer, Model, and Layout." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:82 -msgid ":file:`beautiful_controller.js`" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:116 -msgid "The template of the Controller displays the control panel with Layout and also the renderer." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:119 -msgid ":file:`beautiful_controller.xml`" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:131 -msgid "Create the renderer." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:133 -msgid "The primary function of a renderer is to generate a visual representation of data by rendering the view that includes records." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:136 -msgid ":file:`beautiful_renderer.js`" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:144 -msgid ":file:`beautiful_renderer.xml`" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:157 -msgid "Create the model." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:159 -msgid "The role of the model is to retrieve and manage all the necessary data in the view." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:161 -msgid ":file:`beautiful_model.js`" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:192 -msgid "For advanced cases, instead of creating a model from scratch, it is also possible to use `RelationalModel`, which is used by other views." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:195 -msgid "Create the arch parser." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:197 -msgid "The role of the arch parser is to parse the arch view so the view has access to the information." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:199 -msgid ":file:`beautiful_arch_parser.js`" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:216 -msgid "Create the view and combine all the pieces together, then register the view in the views registry." -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:219 -msgid ":file:`beautiful_view.js`" -msgstr "" - -#: ../../content/developer/howtos/javascript_view.rst:256 -msgid "Declare the :ref:`view ` in the arch." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:3 -msgid "Write lean easy-to-maintain CSS" -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:5 -msgid "There are many ways to lean and simplify SCSS. The first step is to establish if custom code is needed at all." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:8 -msgid "Odoo's webclient has been designed to be modular, meaning that (potentially all) classes can be shared across views. Check the code before creating a new class. Chances are that there is already a class or an HTML tag doing exactly what you're looking for." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:12 -msgid "On top of that, Odoo relies on `Bootstrap `_ (BS), one of the most complete CSS frameworks available. The framework has been customized in order to match Odoo's design (both community and enterprise versions), meaning that you can use any BS class directly in Odoo and achieve a visual result that is consistent with our UI." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:19 -msgid "The fact that a class achieves the desired visual result doesn't necessarily mean that it's the right one for the job. Be aware of classes triggering JS behaviors, for example." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:21 -msgid "Be careful about class semantics. Applying a **button class** to a **title** is not only semantically wrong, it may also lead to migration issues and visual inconsistencies." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:24 -msgid "The following sections describe tips to strip-down SCSS lines **when custom-code is the only way to go**." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:30 -msgid "Browser defaults" -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:32 -msgid "By default, each browser renders content using a *user agent stylesheet*. To overcome inconsistencies between browsers, some of these rules are overridden by `Bootstrap Reboot `_." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:36 -msgid "At this stage all \"browser-specific-decoration\" rules have been stripped away, but a big chunk of rules defining basic layout information is maintained (or reinforced by *Reboot* for consistency reasons)." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:40 -msgid "You can rely on these rules." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:44 -msgid "Applying `display: block;` to a `
` is normally not necessary." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:55 -msgid "In this instance, you may opt to switching the HTML tag rather than adding a new CSS rule." -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:65 -msgid "Here's a non-comprehensive list of default rules:" -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:70 -msgid "Tag / Attribute" -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:71 -msgid "Defaults" -msgstr "" - -#: ../../content/developer/howtos/scss_tips.rst:72 -msgid "`
`, `
`, `
`, `