Compare commits

...

274 Commits

Author SHA1 Message Date
Sam Lieber (sali) 3bb5105cf5 [ADD] maintain: setup mailjet api
closes odoo/documentation#3305

X-original-commit: 197a1cc932
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2023-01-06 17:03:52 +01:00
Antoine Vandevenne (anv) bf5188b0fa [FIX] odoo_theme: re-enable redirect fallback logic
closes odoo/documentation#3298

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-01-05 16:45:58 +01:00
Odoo's Mergebot 04a860726a [MERGE] odoo_theme: SCSS code clean up
In order to reduce the size of our css files:
Some unused or repeated code was found and removed.
Variables have been cleaned up, the way the admonitions (alerts) were created has been modified,

Expanding the use of BS variables in order to reduce repeated code and to stay consistent in the general design.
Sphinx was updated which made some changes in the DOM, breaking some of the CSS:
the literals for example, these have been fixed in this PR.
The font sizes were breaking the typescale, this has been fixed by modifying the typescale
rather than hardcoding font sizes.

closes odoo/documentation#3290

Forward-port-of: odoo/documentation#3285
Forward-port-of: odoo/documentation#3225
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-01-04 17:34:46 +01:00
Elisabeth Dickinson 3a8ccd4aa3 [IMP][CSS] Replace text-decoration on link with BS override 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 5343808f61 [IMP][CSS] Reorder styles according to styles guidelines 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson cdf493d215 [IMP] fix typo 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 7e5e4007b4 [IMP] icon fixes 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson c10371585b [IMP][CSS] Fix unresponsive font-size on alert text
By removing $font-size-sm on the alerts, the text is bigger. The title
text and its icon have been increased as well.
2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 14430b27b2 [IMP][CSS] Remove browser prefixes and unnecessary mixins 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson c12aa3acce [IMP][CSS] Fix literals in alerts containing tabs 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 95c4826446 [IMP][CSS] Fix data indentation 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 4493b5da2e [IMP][CSS] Fix alignment on modal btn-close 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 6d74069c6d [IMP] Indentation fix 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 729378ab29 [REM] Removal of changelog
The idea was not developed and it has since been decided not to do it.
2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 66dd8963ae [IMP][CSS] Use BS font-weight variables and fix
Instead of redefining font-weights, we override the BS variables and add
one extra font-weight in the newly-introduced extended utilities file.
After this change all the variables needed replacing and some tweaking
was needed to get the same or closely similar result as before this
change.

By doing so the font-weight classes in the typography file were obsolete
and hence removed.
Some other font-weight issues which were already there have been fixed
in this commit too.
2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 748045d063 [IMP][CSS] Fix color variable issue 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson 8e002060df [IMP][CSS] Revamp of the .o_spoiler element to use same code as alerts 2023-01-04 16:59:41 +01:00
Elisabeth Dickinson d771a65c79 [IMP][CSS]Change order of imported scss files
The aim of this cleanup is to use as many bootstrap classes, functions
and utilities as possible to reduce the amount of extra code.
Instead of redefining variables, BS variables are overridden in the
bootstrap_overridden file.

In order to be able to reuse these overridden variables within our own
custom variable file — and after consultation with SRI — it was
determined that the variables.scss file should come after the bootstrap
files in the order of importation, unlike the order of odoo website's
scss files.

Changes to variables in bootstrap_overridden have been made to adapt to
the new structure.
2023-01-04 16:59:41 +01:00
Elisabeth Dickinson a3235560c8 [IMP][CSS] Use CSS variables to style different alert types
CSS variables avoid having to repeat code for each alert type.
Also remove the need to add "tip" to the theme-colors (no need for "tip"
styled buttons, badges etc, especially as tips use the primary color) by
styling `.alert-tip` with customized copy of BS alert mechanism.

In order to be able to modify the icons with a CSS variable,
the `content` attribute has been removed from the `o-inline-icon` mixin.
Code where this mixin is called in other places has been adapted.
2023-01-04 16:59:40 +01:00
Elisabeth Dickinson bf022f6d5e [IMP][CSS] Place overrides in bootstrap_overridden file 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson 8c102ee159 [IMP][CSS] Clean up the file according to conventions
Includes reordering styles, renaming variables ($o-*),
re-indenting lines, removing commented code
2023-01-04 16:59:40 +01:00
Elisabeth Dickinson 712408eb1d [IMP][CSS] Set gray background to it's original darker color 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson bc3f3d5246 [IMP][CSS] Improve literals styling (o_code, .sig-*) 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson f231191f04 [IMP][CSS] Update _sphinx_basic.css after update of Sphinx
Note: Some code is commented instead of being deleted.
This allows us to keep track of what should be commented out in future
versions of Sphinx' basic CSS.
2023-01-04 16:59:40 +01:00
Elisabeth Dickinson b500866ee9 [IMP][CSS] Remove repetitive or unnused CSS 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson 897bb1c06d [IMP][CSS] Improve margins on headings and sections 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson bd0f561b58 [IMP][CSS] Replace margin and padding values with variables 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson d26fcd4717 [IMP][CSS] Revamp modal to use all BS classes and variables 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson b3145962de [IMP][CSS] Rescale heading fonts 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson 62598a5406 [IMP][CSS] Cleanup font variables 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson 929f2690f7 [IMP][CSS] Cleanup admonitions (alerts) 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson 7e6c95ae0e [IMP][CSS] Cleanup color variables 2023-01-04 16:59:40 +01:00
Elisabeth Dickinson 2fbc270225 [IMP][CSS] update literals styles (.o_code, .sig-*) 2023-01-04 16:59:40 +01:00
Antoine Vandevenne (anv) 59540cbb17 [IMP] odoo_theme: add the class o_code on literals
The SCSS that styles the `literal`, `code`, `file`, and `command` roles
is excessively complex because the traduction from RST to HTML is not
consistent from one role to another: some use `<code>` elements, some
have the `code` class, some wrap the literal with a `span` element.

This commit sets the `o_code` class on all of these roles' parent node
at translation time to allow simplifying the SCSS target.
2023-01-04 16:59:40 +01:00
Mahmoud Metwally 2bffa6ecc8 Update qweb.rst
closes odoo/documentation#3287

X-original-commit: 8cde1f7b74
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-01-04 13:09:01 +01:00
Sam Lieber (sali) 062f913305 [FIX] maintain: correct cname definition
closes odoo/documentation#3279

X-original-commit: 96cbb2375b
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-01-04 00:31:22 +01:00
Jason (jaae) 173a403a1e [IMP] project: adding description to app page
closes odoo/documentation#3272

X-original-commit: cfaf4386c2
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-01-03 21:00:33 +01:00
Mahmoud Metwally 1f70389e68 [FIX] rdtraining: fix writing errors
closes odoo/documentation#3262

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-01-03 16:36:57 +01:00
Antoine Vandevenne (anv) 65ba4dd80c [FIX] odoo_theme: handle non-TOC pages when expanding top menu entries
Trying to "expand" those pages lead to a crash that prevented the menu
to be shown at all.

Incidentally, this commit also handles menus built with `make fast`.

closes odoo/documentation#3259

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-01-03 13:14:42 +01:00
Antoine Vandevenne (anv) 1bd5aa294c [IMP] odoo_theme: scroll the active menu entry into view
In large and deeply nested TOCs like finance/accounting/fiscal_localizations/localizations/...
the user had to constantly scroll the menu to the menu entry they just
clicked because the expanded menu would not fit entirely on the page.
With this commit, the active menu entry is scrolled into view each time
the page is reloaded.

The previous behavior was also the reason for expanding the top menu
entries on only the homepage. Thanks to the scroll, they now always
expand.

Part-of: odoo/documentation#3259
2023-01-03 13:14:42 +01:00
Antoine Vandevenne (anv) eda4370908 [IMP] README: remove version from links and rephrase explanations
task-2897123

closes odoo/documentation#3256

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-01-03 11:56:21 +01:00
Antoine Vandevenne (anv) 00781b5051 [IMP] contributing/documentation: rewrite the contribution guide
This commit restructures the contributing/documentation page to re-use
content introduced with the contributing/development page and to
display the two ways to contribute (github vs git) in content tabs
rather than sections.

The guide is simplified and updated to delegate long explanations to
other pages or websites, remove useless images and focus on getting
users ready to contribute.

task-2897123

Part-of: odoo/documentation#3256
2023-01-03 11:56:21 +01:00
Antoine Vandevenne (anv) 8d5403eb9a [ADD] contributing/development: add a guide to contribute to the codebase
In addition, this commit extracts the git guidelines from the coding
guidelines. This helps link the git guidelines and unclutter the coding
guidelines, which should focus on only the programming languages.

task-2897123

Part-of: odoo/documentation#3256
2023-01-03 11:56:21 +01:00
Michelle Vu (mivu) 72fcd5e725 [IMP] Calendar: Outlook sync warning
If committed, this will add a more elaborate warning on what users must
do before syncing Odoo Calendar and Outlook Calendar. It also removes
mentions of the import/export process and archiving events, as these
methods will not prevent email spam from Outlook.

closes odoo/documentation#3232

X-original-commit: 5979a772e6
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Michelle (mivu) <mivu@odoo.com>
2022-12-27 18:31:49 +01:00
Antoine Vandevenne (anv) 2f0f1bfd63 [FIX] odoo_theme: update the aria attributes when scrolling the page TOC
The 'aria-expanded' attribute was not correctly updated on the `i` tag
when the user scrolled through the page TOC. This caused a minor issue
where an arrow (`i`) that was collapsed manually with a click would no
longer automatically expand afterward.

task-3106339

closes odoo/documentation#3237

X-original-commit: f068065d39
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-12-27 13:03:55 +01:00
Antoine Vandevenne (anv) 740e54a794 [IMP] odoo_theme: expand top level menu items on the homepage
When the user browses the homepage, it might be hard to figure out
where they want to go next. Expanding the top-level menu items could
help them with that.

task-3106339

X-original-commit: 5526f1ea07
Part-of: odoo/documentation#3237
2022-12-27 13:03:55 +01:00
Sam Lieber (sali) c99f716e88 [IMP] general: add notes about dev mode toggle
closes odoo/documentation#3208

X-original-commit: 54b903e512
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2022-12-19 18:05:42 +01:00
LoredanaLrpz fac9be36b0 [IMP] POS: upgrade the getting started page for 15.0
Task ID: 3090486
Do not fw to 16.0 without making other changes

closes odoo/documentation#3217

X-original-commit: fb5c128fb7
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Perazzo Loredana (lrpz) <lrpz@odoo.com>
2022-12-19 13:38:31 +01:00
Antoine Vandevenne (anv) 94cbce843b [FIX] legal: fix path to PDF version of legal agreements
closes odoo/documentation#3214

X-original-commit: 15f42d679b
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-12-16 14:57:51 +01:00
Zachary Straub (ZST) 586ac54eb8 [IMP] email: add mail.default.from_filter
closes odoo/documentation#3207

X-original-commit: df041b1212
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Signed-off-by: Zachary Straub <zst@odoo.com>
2022-12-16 10:00:39 +01:00
Victor Feyens df582cceec [FIX] core: latex build
* latest droid package does not allow \usepackage{droid} anymore,
replace it with the right package

See https://github.com/MiKTeX/miktex-packaging/issues/136

* remove reference to package texlive-generic-recommended since
it's not available nor necessary since ubuntu 20.04.

closes odoo/documentation#3202

X-original-commit: 816f437064
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-12-15 18:47:07 +01:00
Tom Aarab (toaa) 2e201207e4 [IMP] odoo.sh: Python libraries and packages
Added a note on packages and extensions support

closes odoo/documentation#3186

Taskid: 2836438
X-original-commit: b1f92ba879
Signed-off-by: Aarab Tom (toaa) <toaa@odoo.com>
2022-12-13 09:02:20 +01:00
Horacio Tellez c29ff13bf4 [FIX] rdtraining: remove outdated line about journal_id in chapter 14
In chapter 14 there was a line pointing to how to deduce a default journal for an `account.move` record.
This is no longer needed as the journal is automatically deduced using the `move_type`. Also, the link
point to an outdated line of code that causes an error.

closes odoo/documentation#3181

X-original-commit: 67a75a3e11
Signed-off-by: Horacio Tellez Perez (hote) <hote@odoo.com>
2022-12-12 09:24:47 +01:00
Antoine Vandevenne (anv) 12e1085199 [IMP] conf.py, *: interpolate the version and releases in the content
This commit replaces hard-coded occurrences of the version and of the
last, current and next releases' version with placeholders interpolated
at build time to avoid manually updating these after each freeze.

task-2917614

closes odoo/documentation#3157

X-original-commit: 0a272f64ce
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-12-08 18:13:42 +01:00
KC (ksc) 206cfa2b6c [ADD] marketing automation: added 'getting started' section and docs to round out documentation
closes odoo/documentation#3160

X-original-commit: 4f6b03dc5b
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-12-08 17:20:32 +01:00
Antoine Vandevenne (anv) 4812c11a48 [IMP] contributing: list the ways to contribute to Odoo
task-2897123

closes odoo/documentation#3153

X-original-commit: a309372d83
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-12-08 16:21:47 +01:00
Donatienne Pirlot 000866472f [IMP] accounting: different ways to record a payment
closes odoo/documentation#3146

X-original-commit: 7a57fb3c81
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-12-08 12:33:47 +01:00
Zachary Straub (ZST) eed9419954 [IMP] CRM: updating flow and screenshots about lead mining
Task: 2543815
Cherry pick from #998

Omitted changes proposed in the **track_leads** directory (e.g. `lead_scoring.rst` + image folder). Both the content and image updates were already pushed from another PR so what was proposed on #998 was outdated and no longer necessary.

What’s left over are the original proposed changes in #998, within the **acquire_leads** directory which include updates to `lead_mining.rst` and corresponding image files.

On top of these proposals, I went ahead and made the following changes:

- renamed the image files in the asset directory, since they were using outdated naming convention (e.g. LM1.png, LM6.png, LM7.png)
- cleaned up rst formatting issues (headings, line breaks, added guilabels, etc.)
- rewrote document so content was more concise + followed content guidelines. You can see the first version of proposals here to compare the changes made.

closes odoo/documentation#3129

X-original-commit: 2416a2e5e9
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Zachary Straub <zst@odoo.com>
2022-12-07 18:03:43 +01:00
Morgane (morm) 40dc93cef4 [IMP] documentation: legal page design
Prior to this commit, the terms and conditions were displayed in a table
with all the languages and it was not practical for the futur, with many
more languages.

task-3073198

closes odoo/documentation#3134

X-original-commit: d7b69d802a
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-12-07 17:09:51 +01:00
jopa-odoo 05aaca05bc [IMP] legal/fr: fix typos, spellcheck French translation
No changes to actual contents/semantics.

closes odoo/documentation#3133

X-original-commit: 5dbd338dcc
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-12-07 17:09:48 +01:00
“Chiara b3b5f91030 [ACC] accounting: Forecasting bills
closes odoo/documentation#3125

Tasikd: 3069519
X-original-commit: 939d40c16d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: chiaraprattico <chpr@odoo.com>
2022-12-07 12:34:57 +01:00
“Chiara 10a417b947 [IMP] accounting: tax return
closes odoo/documentation#3115

X-original-commit: 1db9968faa
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: chiaraprattico <chpr@odoo.com>
2022-12-06 16:39:03 +01:00
Melanie Nguyen (meng) 827a23b7ab [IMP] mail plugins: gmail plugin updates
Updated to reflect how to download Gmail Plugin from Google Workspace Marketplace for Odoo Online users; added new images

Closes Odoo Task 3001713

closes odoo/documentation#3109

X-original-commit: 88e00bf021
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-12-06 16:39:00 +01:00
Sam Lieber (sali) 957ec9dbfc [IMP] accounting/l10n: AR update documentation
closes odoo/documentation#3104

X-original-commit: efb165d791
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-12-06 13:58:13 +01:00
Morgane (morm) 349169e85f [FIX] documentation: tabs responsiveness
Prior of this commit, the tabs were not responsive in the documentation

closes odoo/documentation#3079

X-original-commit: c9a001d22b
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-12-06 13:00:58 +01:00
“Chiara caea7f799d [IMP] accounting: SEPA
closes odoo/documentation#3098

Taskid: 2890089
X-original-commit: 5628762fae
Signed-off-by: Platteau Xavier (xpl) <xpl@odoo.com>
Signed-off-by: chiaraprattico <chpr@odoo.com>
2022-12-06 08:24:07 +01:00
Tom Aarab (toaa) 2d6208a8f5 [IMP] paypal: typo update
V14 has a dedicated "Fees" tab for PayPal, current documentation does not reflect that.

closes odoo/documentation#3085

Taskid: 3089273
X-original-commit: d774094e87
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: Aarab Tom (toaa) <toaa@odoo.com>
2022-12-02 20:20:41 +01:00
Tom Aarab (toaa) d60aeb7330 [IMP] payment provider: minor phrasing
Changed phrasing on main page, based on PR #2775

Forward to 15.3.

closes odoo/documentation#3083

Taskid: 3089294
X-original-commit: 870fb0ba54
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: Aarab Tom (toaa) <toaa@odoo.com>
2022-12-02 19:25:43 +01:00
LoredanaLrpz fedab8f748 [IMP] pos: update and improve the page and screenshots
closes odoo/documentation#3071

Taskid: 3062150
X-original-commit: f2b8645a3c
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Perazzo Loredana (lrpz) <lrpz@odoo.com>
2022-12-02 13:10:00 +01:00
“Chiara a20be43031 [IMP] accounting: update payments by check
closes odoo/documentation#3066

Taskid: 3062532
X-original-commit: 528d16c611
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: chiaraprattico <chpr@odoo.com>
2022-12-02 09:04:50 +01:00
Jonathan Castillo (jcs) 3ee3831e59 [IMP] contribution: typo in documentation.rst
closes odoo/documentation#3054

X-original-commit: f0fa7a2e22
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-11-30 15:27:00 +01:00
Sam Lieber (sali) 3fd9f55ea1 [ADD] discuss: specific email server from
closes odoo/documentation#2991

X-original-commit: ce1d0b216d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2022-11-30 15:26:49 +01:00
Antoine Vandevenne (anv) cd5a6305b4 [IMP] contributing/documentation: suggest to clone with ssh
GitHub requires users to "use token-based authentication for all
authenticated operations", for example `git push`. See
https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/

This commit suggests new contributors to clone the repository with SSH
so that the remote URL is automatically configured with the SSH
protocol.

task-3036845

closes odoo/documentation#3040

X-original-commit: dfb7801484
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-11-29 16:01:40 +01:00
Wesley Kao (weka) 001966ea5f [IMP] MRP: updated Kits doc rst content
Went through the existing kits documentation and changed a lot of the
content, as much of it was outdated. Also replaced the images with new
ones.

closes odoo/documentation#2995

X-original-commit: 426b66ec7b
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: weka-odoo <weka@odoo.com>
2022-11-28 19:05:38 +01:00
“Chiara ab561680eb [IMP] accounting: batch payments sdd
Forward to 16.0

closes odoo/documentation#3034

X-original-commit: fe2d694aff
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: chiaraprattico <chpr@odoo.com>
2022-11-28 09:34:02 +01:00
Ivan Kropotkin b9c6c0a058 [FW][FIX] developer/reference: code example
closes odoo/documentation#3026

Forward-port-of: odoo/documentation#2943
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-11-24 18:00:54 +01:00
Loan (lse) 5af7febd09 [IMP] point_of_sale: Adyen Event URLs configuration
Add more details as of how to set Adyen Event URLs.
This is important to configure as it is necessary to
receive a callback from Adyen terminal when a transaction
have been done.

OPW-3041117
OPW-3041117

closes odoo/documentation#3020

X-original-commit: aa9126b037
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-11-23 20:37:46 +01:00
Tori (vpk) b7eff482a0 [ADD] Sales: new doc about returns and refunds
Task Number: 2514789

closes odoo/documentation#2987

X-original-commit: be0a995e21
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-11-23 17:47:40 +01:00
Donatienne Pirlot 4b208d8959 [IMP] upgrade: updating screenshots and process steps
closes odoo/documentation#3013

X-original-commit: f0f6083ee5
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-11-22 20:42:23 +01:00
Victor Feyens 3ee921efb2 [IMP] developer/howtos: deprecate themes tutorial
This tutorial was already outdated in 13.0 (but
supposedly working).

In 14.0+, a lot of changes happened in website logic,
especially for 'website option definitions', breaking
the existing theme tutorial.

Considering the fact that a new tutorial is being made,
and that fixing the whole existing tutorial would be
a big work, it will be kept, but hidden as 'most things
being said still make sense'.

closes odoo/documentation#3004

X-original-commit: 9cc60baf46
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-11-21 18:40:05 +01:00
Victor Feyens a81f53b30c [FIX] developer/mobile: use spaces and not tabs for indentation
closes odoo/documentation#2982

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-11-18 17:32:45 +01:00
Victor Feyens 1dc580156d [FIX] *: unbalanced literal markups
Part-of: odoo/documentation#2982
2022-11-18 17:32:45 +01:00
Victor Feyens 164533c1b4 [FIX] *: remove trailing whitespaces
Part-of: odoo/documentation#2982
2022-11-18 17:32:45 +01:00
Victor Feyens 4541ace207 [FIX] *: enforce 1 newline on files end
Part-of: odoo/documentation#2982
2022-11-18 17:32:45 +01:00
Wesley Kao (weka) 77860e0636 [IMP] MRP: updated bills of materials rst content
Reviewed the 15.0 doc for Bills of Materials and made some edits to
clean up inconsistencies and made minor wording changes.

closes odoo/documentation#2961

X-original-commit: 1645e8c3da
Signed-off-by: Zachary Straub <zst@odoo.com>
2022-11-17 20:06:53 +01:00
Victor Feyens 57784a2f90 [CLN] core: upgrade to python 3.6
& sort imports

closes odoo/documentation#2963

X-original-commit: 5128208495
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-11-17 10:37:31 +01:00
jopa-odoo 5c924f0397 [IMP] Legal: Update Dutch translation
Update of the Dutch translation of Odoo Enterprise Subscription agreemnt
2022-11-15 17:52:51 +01:00
Donatienne Pirlot d20f026672 [IMP] accounting: update the doc related to internal transfers
closes odoo/documentation#2949

Id: 2901915
X-original-commit: d36bacb54a
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Pirlot Donatienne (dopi) <dopi@odoo.com>
2022-11-15 15:08:50 +01:00
Loan (lse) aace67650c [IMP] iot: Add part regarding screen
Add  more details as of how to connect a screen to the IoT box
and how it can be used.

OPW-2962462

closes odoo/documentation#2938

X-original-commit: 21edc4fcc7
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-11-14 11:07:05 +01:00
Tom Aarab (toaa) 90c924f319 [IMP] accounting: updated chart of accounts v15
Creating account groups part was outdated.

task id: 2950820

closes odoo/documentation#2931

X-original-commit: 60ad93ea31
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Aarab Tom (toaa) <toaa@odoo.com>
2022-11-10 15:05:36 +01:00
Tom Aarab (toaa) 390f5fb862 [IMP] TaxCloud: updated doc
Changed out-of-date function and updated doc/changed grammar. Forward up to 16 (16 exluded)

task id: 2909436

closes odoo/documentation#2906

X-original-commit: 7cf109db1e
Signed-off-by: Platteau Xavier (xpl) <xpl@odoo.com>
2022-11-08 10:21:46 +01:00
Tom Aarab (toaa) 0d42a11a71 [IMP] accounting: updated multiple payments page
Previous page was based on V13. Forward up to 16.

closes odoo/documentation#2917

Taskid: 3045197
X-original-commit: e4839ea7e9
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-11-07 13:16:44 +01:00
Tom Aarab (toaa) 3176526507 [IMP] accounting: updated bank statement page
Previous version used V13 screenshots.

task - 2902004

closes odoo/documentation#2912

X-original-commit: de7fddab6c
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-11-07 10:37:53 +01:00
Xavier 31e5d96796 [ADD] Studio: PDF reports
closes odoo/documentation#2893

Id: 2978638
X-original-commit: 5ad9d5eb0b
Signed-off-by: Platteau Xavier (xpl) <xpl@odoo.com>
2022-11-07 10:37:50 +01:00
“Chiara c79982e270 [IMP] accounting: Bank Synchronization: automatic import
closes odoo/documentation#2898

X-original-commit: 7fb5a21d64
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-11-02 18:48:52 +01:00
Tom (toaa) 69d9796743 [IMP] accounting: reconciliation models
Updated reconciliation page. Forward to V15.

closes odoo/documentation#2884

Taskid: 3043106
X-original-commit: 5c83679a02
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-10-28 14:58:03 +02:00
Antoine Vandevenne (anv) ed32235c82 [IMP] extensions/spoilers: add an extension for spoilers
It is often needed in developer tutorials to show excerpts of code for
examples and solutions. This takes quite some page space and, for the
latter, it is not always desired to show the final code result right
after the exercise objective.

This commit adds a spoiler feature to the documentation to allow hiding
content until the reader wants to display it.

The feature relies on the new `.. spoiler:: Button label` directive.

task-3036845

closes odoo/documentation#2875

X-original-commit: 4d7a88639a
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Co-authored-by: Morgan Meganck <morm@odoo.com>
Co-authored-by: Stefano Rigano <sri@odoo.com>
2022-10-28 14:11:55 +02:00
stefanorigano (SRI) 9be48d0aec [IMP] odoo_theme: add default BS functions
Prior to this change it was not possible to use Bootstrap default SCSS
functions in 'bootstrap_overridden.scss'.

This commit mirrors odoo framework's architecture, injecting bootstrap
'_functions.scss' at the beginning of the documentation's SCSS "bundle".

Commit preparatory to the introduction of the 'Spoiler' documentation
component.

task-3036845

X-original-commit: 1691e8970b
Part-of: odoo/documentation#2875
2022-10-28 14:11:55 +02:00
Donatienne Pirlot 11820ab07c [IMP] accounting: update and improve the cash basis taxes documentation
closes odoo/documentation#2870

Id: 2381690
X-original-commit: 8770938a97
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-10-28 14:11:52 +02:00
Donatienne Pirlot f46fcd8c17 [IMP] accounting: update the bank accounts documentation
ID:2607774

closes odoo/documentation#2879

X-original-commit: 285252d1fd
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-10-28 13:06:41 +02:00
Victor Feyens f5abf1e744 [FIX] developer/guidelines: do not mention deprecated xml tags
act_window & report xml tags have been deprecated by
https://github.com/odoo/odoo/commit/6835aeb0de6895f7f4d6b23e0b4654465ef21d6a
two years ago, we should avoid mentioning them in the guidelines.

Furthermore, in 17.0 they won't be available anymore.

closes odoo/documentation#2860

X-original-commit: 758463edd4
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-10-25 19:15:02 +02:00
Zachary Straub (ZST) 0aff699518 [IMP] inventory: thd batch updates
closes odoo/documentation#2853

X-original-commit: ac3ec17266
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-10-25 18:30:11 +02:00
Jonathan Castillo (jcs) 945a1a306e [IMP] *: Remove "SaaS" to keep only the "Odoo Online" appellation
task-3034812

closes odoo/documentation#2835

X-original-commit: eae71e6eda
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-10-21 15:36:38 +02:00
Jonathan Castillo (jcs) c7de4c21c7 [IMP] *: consistency for the use of "Odoo Online" (and SaaS)
task-3034812

X-original-commit: 121516d52c
Part-of: odoo/documentation#2835
2022-10-21 15:36:38 +02:00
Elias e4b1f63a7d [FIX] developer/howtos/rdtraining: Update warning message
Update warning output for missing access rules.
Also reflect up-to-date contents of res.country.state.csv.

closes odoo/documentation#2824

X-original-commit: e21dbd01c9
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-10-18 12:37:43 +02:00
Antoine Vandevenne (anv) 0d41285c32 [IMP] supported_version: release 16.0 and deprecate 13.0
closes odoo/documentation#2812

X-original-commit: 3c61d24b1d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-10-11 21:23:44 +02:00
Xavier-Do 745ab72b10 [ADD] developer/reference: add a reference page on performance
closes odoo/documentation#2792

X-original-commit: 4d8e3f9785
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
Co-authored-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-10-06 12:47:51 +02:00
Tom Aarab (toaa) ba25b3eb5e [FW][FIX] payment providers: ogone parameter value typo
Fixed a typo in the ogone documentation

task id: 3001021

closes odoo/documentation#2781

Forward-port-of: odoo/documentation#2772
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-09-30 12:52:45 +02:00
Aleksander b6b8e31376 [FW][IMP] howtos/rdtraining: give the meaning of "ACL"
closes odoo/documentation#2777

Forward-port-of: odoo/documentation#2774
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-09-30 12:52:42 +02:00
Jonathan Quique (jqu) 205cedc6ba [IMP] email_communication: can't use Odoo STMP with another mail server
Customer may want to use their own SMTP for email marketing, and Odoo default SMTP for everything else. There is no good way to do this. Previously we suggested adding Odoo SMTP as an outgoing email server but we don't want to share credentials anymore.
R&D is working on a solution (e.g. showing the Odoo default email server in the list rather than keeping it as an "hidden feature") but for the time being, if you use an outgoing email server, you give up using the Odoo default SMTP.

closes odoo/documentation#2769

X-original-commit: 7b21e6001b
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-09-29 15:37:45 +02:00
Wesley Kao (weka) 30e0ea946c [IMP] MRP: updated Variants BOM Management rst content
closes odoo/documentation#2762

X-original-commit: b3d5e928aa
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-09-27 18:40:27 +02:00
Fabrice Henrion ce11fc03e7 [FIX] accounting: grammar fix in ponto
closes odoo/documentation#2757

X-original-commit: dad110c7cc
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-09-23 11:39:39 +02:00
Tom Aarab (toaa) b3b2af0e16 [IMP] accounting: update + merge of multiple multi-currency pages
task id: 2942040

closes odoo/documentation#2743

X-original-commit: 149353cf72
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Co-authored-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2022-09-20 18:44:41 +02:00
Jonathan Quique (jqu) 050b5d9889 [FIX] sales/crm: fix menu path and RST formatting
Cherry-pick of #2652:
>To view the Sales Team dashboard, go to `:menuselection:CRM --> Sales --> Teams.`

closes odoo/documentation#2738

X-original-commit: 1b7ec7ca20
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-09-20 17:04:39 +02:00
Tori (vpk) 6a7d5bf733 [ADD] Sales: adding doc about variants in orders
closes odoo/documentation#2734

Task: 2574874
X-original-commit: 05d10ab355
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-09-20 11:09:48 +02:00
Claire Bretton (clbr) 38eb13f6dd [IMP] developer/howtos/rdtraining: Add missing information about module category.
Adds explanations and directive for module category creation, so it can be used correctly at res.groups creation.

closes odoo/documentation#2728

X-original-commit: 338fe297b0
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-09-16 16:26:44 +02:00
Max cd9fae9c97 [FW][IMP] developer/backend: correct filters attribute for calendar view fields
closes odoo/documentation#2723

Forward-port-of: odoo/documentation#2692
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-09-15 17:28:50 +02:00
Julien Castiaux 5180b7c9dc [IMP] developer/api/external_api: XML-RPC in PHP8
Starting PHP8, the XML-RPC extension is not available by default
anymore and must be installed separately.

closes odoo/documentation#2718

Task: 2613818
X-original-commit: 79e58e3db1
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-09-14 15:18:13 +02:00
Julien Castiaux 8c4425e8c9 [IMP] content/developer/webservices
It is hard to find and learn about RPC in Odoo, users hardly know about
JSON-RPC as the only place where we talk about it in deep down in the
*How to make a Module* tutorial.

In the commit, we isolated the tutorial about RPC in a dedicated file,
that file is better referenced thanks to cross-references in some others
places that are talking about RPC

Task: 2884559
X-original-commit: 83c2e6de0b
Part-of: odoo/documentation#2718
2022-09-14 15:18:12 +02:00
Xavier c9cbfdf74e [ADD] accounting: data inalterability check report
Task ID: 2977343

closes odoo/documentation#2715

X-original-commit: 1d48967962
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-09-13 12:26:56 +02:00
Tori (vpk) a8569610d2 [IMP] Sales: updating product variants overview and config
closes odoo/documentation#2710

Task: 2055940
X-original-commit: 01878ac966
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-09-13 11:33:58 +02:00
std-odoo 0180e11b45 [IMP] mail: add documentation about the SSL SMTP authentication
Purpose
=======
Add the documentation about the SSL SMTP authentication
(2 new binary arguments) and also about the new from
filter binary argument.

The goal of those new arguments is to improve the score
of the emails sent by Odoo.

Task 2367946
See odoo/odoo/pull/61853
See odoo/upgrade/pull/1903

closes odoo/documentation#2705

X-original-commit: 2a01b21800
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-09-12 15:31:56 +02:00
Valentin Vallaeys (vava) 9fef69ae53 [FIX] coding_guidelines: fix typos and add sql contraints
task-2977263

closes odoo/documentation#2700

X-original-commit: 8061470577
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-09-08 16:52:06 +02:00
Jonathan Castillo (jcs) 344a07a7f8 [IMP] acc/l10n: minor change in mexico/pre-requirements
task-2971754

closes odoo/documentation#2690

X-original-commit: 8d482c831e
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-09-06 11:52:13 +02:00
Donatienne Pirlot 20e3a49c6c [IMP] accounting: update the information on recording payments
closes odoo/documentation#2684

Id: 2258464
X-original-commit: de3beb7e8a
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-09-05 17:08:49 +02:00
Jonathan Castillo (jcs) d884d83397 [IMP] install/maintain: add note about mailboxes in domain_names
task-2973080

closes odoo/documentation#2679

X-original-commit: 9089a78602
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-09-05 13:26:48 +02:00
Jonathan Castillo (jcs) cf361ee56c [IMP] accounting/l10n: table with list of modules to install Luxembourg
closes odoo/documentation#2671

X-original-commit: 3083c2dbe6
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-09-02 15:04:57 +02:00
frin-odoo 5120064c85 [IMP] crm: grammar on google_spreadsheets
closes odoo/documentation#2668

X-original-commit: f39a43f697
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-09-02 15:04:55 +02:00
Nidhi Patel 50358658f9 [ADD] accounting/l10n: new localization page for India
closes odoo/documentation#2661

X-original-commit: 028c67041b
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Co-authored-by: Jonathan Castillo <jcs@odoo.com>
2022-09-01 22:58:54 +02:00
William Henrotin a0eaf959db [FIX] inventory: fix typo
closes odoo/documentation#2654

X-original-commit: 1a10dced12
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-08-31 20:34:30 +02:00
Zachary Straub (ZST) 772224031f [IMP] finance/accounting: add Delivery Guide to CL localization
closes odoo/documentation#2646

X-original-commit: a6f2c55896
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-08-30 14:16:50 +02:00
Tom Aarab (toaa) 63cba92ff5 [IMP] accounting: updated foreign currency page
Foreign currency page was V13 only and outdated. Updated for V14.

task - 2904025

closes odoo/documentation#2638

X-original-commit: 0ba09280ad
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-08-26 19:40:40 +02:00
Jonathan Castillo (jcs) db9426b523 [FIX] accounting: new tutorial link in payment_terms
task-2963526

closes odoo/documentation#2633

X-original-commit: 99519c93cb
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-08-26 17:17:11 +02:00
Tom Aarab (toaa) 147f851bb0 [IMP] accounting: fixed one-word mistake on B2B/B2C page
V13/14 only. Create fw-bot request for V15

task id: 2960682

closes odoo/documentation#2623

X-original-commit: e16200918d
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-08-26 12:17:50 +02:00
Julian Roussieau 48e34988c0 [FIX] odoo_sh: change img who explain storage space
closes odoo/documentation#2615

X-original-commit: f52be8da2a
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-08-19 14:17:14 +02:00
poma-odoo 3636f28492 [FW][FIX] developer/frontend: small typos
closes odoo/documentation#2608

Forward-port-of: odoo/documentation#2584
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-08-18 16:45:59 +02:00
Jonathan Castillo (jcs) ad8e7440b8 [FIX] iot: typo in devices/scale
task-2956495

closes odoo/documentation#2597

X-original-commit: 81a23de57d
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-08-18 15:20:42 +02:00
Moens Alexandre 5971ef0b51 [IMP] maintain : process for odoo.sh to odoo online
Correction to a typo that made the line completly nonsensical and made
people think that they could migrate just part of the database.

opw-2947684

closes odoo/documentation#2603

X-original-commit: a92671bd85
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-08-18 14:24:43 +02:00
Antoine Vandevenne (anv) 450c890aa2 [IMP] stripe: clarify the conditions for the support of a payment method
Even though the documentation was correct, it was confusing the reader
to state that local payment methods are considered enabled if their
related payment icon record does not exist in the database. The intended
meaning was that this statement only holds if the local payment method
is also supported, otherwise it cannot be enabled.

closes odoo/documentation#2590

X-original-commit: 8bcaa08531
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-08-18 10:38:17 +02:00
Donatienne Pirlot 10a8fa8763 [IMP] accounting: further information to be added regarding EDI
closes odoo/documentation#2577

Id: 2857860
X-original-commit: 0f42b4c94f
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-08-09 12:22:49 +02:00
Michelle Vu (mivu) 259263cd46 [IMP] helpdesk: update field names and screenshots
In Odoo v15, the field names for "Timesheet on Ticket" and "Time
Reinvoicing" changed to "Timesheets" and "Time Billing", respectively.
The "Tickets" button on the project card is also no longer available in
Odoo v15. Updated the RST file to reflect these changes, and also
updated screenshots to match.

Fixes PR #2094
Closes Odoo Task 2870115

closes odoo/documentation#2576

X-original-commit: 30a38d23d0
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-08-09 12:22:47 +02:00
Wesley Kao (weka) 1dfe9ff8c2 [IMP] inventory and mrp: capitalized "MRP" in toctree
In the toctree, "MRP" wasn't capitalized in "Inventory & MRP."
Affects all branches, can be forward ported.

closes odoo/documentation#2564

X-original-commit: 8c665643ce
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-08-09 10:27:25 +02:00
Donatienne Pirlot 81ff235598 [ADD] accounting: creation of electronic invoicing documentation
closes odoo/documentation#2570

Id: 2857860
X-original-commit: 73204e6789
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-08-08 12:01:50 +02:00
Antoine Vandevenne (anv) 1ddfcc49f4 [IMP] install: guide the user through the login page
Developers sometimes have a hard time making the difference between the
PostgreSQL user and the internal user. They would try to log into Odoo's
web client with their PostgreSQL credentials rather than with admin. See
https://reddit.com/r/Odoo/comments/w8zubf/logging_in_on_source_install.

closes odoo/documentation#2546

X-original-commit: 4558be3a5e
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-08-01 17:32:02 +02:00
Antoine Vandevenne (anv) 128de0e545 [IMP] rdtraining: mention that the second part needs to be completed too
closes odoo/documentation#2539

X-original-commit: 9279fb80a7
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-08-01 16:39:18 +02:00
Xavier d88030e622 [IMP] studio: complete update of Studio
The goal is to make the Studio users doc a sort of encyclopedia to accompany tutorials.
The doc isn't to explain the basics - or just briefly, as introductions - but instead to
give a full overview of all the available options.

closes odoo/documentation#2529

Task: 2817981
X-original-commit: c8ea9703f7
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-28 11:56:02 +02:00
Tom Aarab (toaa) 8d699ffa82 [IMP] payment providers: ingenico documentation updated
This is a new documentation for the Ingenico payment provider, as support received a lot of tickets from customers having issues setting-up ingenico properly.

task - 2834329

closes odoo/documentation#2525

X-original-commit: b064a7ed6b
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-26 11:21:11 +02:00
Victor Feyens 0fc36c18e4 [CLN] rdtraining: remove reference to unexisting file
The referenced `bypass.py` file isn't specified anywhere in
the training documentation or code content.

The paragraph is removed to avoid meaningless searches and
confusing trainees.

This commit also adds a missing parenthese in the preceding
code content.

Fixes #2488

closes odoo/documentation#2521

X-original-commit: 1c4abe4e07
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-25 14:13:55 +02:00
Benoit Socias 78945bf22e [IMP] rdtraining: update float utils information
The warning about float utils does not state where to find them, and
they are preceded by an example in the code that infringes the warning's
recommendation.

This commit indicates where to find the float utils and replaces the
example by one that uses them.

task-2925402

closes odoo/documentation#2511

X-original-commit: b8ee134a28
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-20 13:36:49 +02:00
Romain Derie 404c731d8b [FIX] website: warn about google api deprecation
Google deprecated both its "Universal Analytics" and "Google Sign-In"
API. See community counterpart commit for a detailed explanation and
links.

closes odoo/documentation#2497

X-original-commit: 0d01565ac3
Related: odoo/odoo#96271
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
2022-07-19 15:05:13 +02:00
Benoit Socias c40cf83073 [IMP] install: troubleshoot typical problems for Mac users
As mentioned in [1], because of [2], some python implementation for Mac
fail on startup with default parameters.

Also, when installing requirements, the psycopg requirement can fail
because the $PATH does not contain the postgresql tools installed with
the .app.

This commit provides instructions to avoid those issues.

[1]: https://github.com/odoo/odoo/issues/79112
[2]: https://bugs.python.org/issue40518

task-2922249

closes odoo/documentation#2503

X-original-commit: 77f4b4b307
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-19 12:14:08 +02:00
Stanislas Sobieski 7c3c8335ee [IMP] install/maintain: update info about upgrade process on Odoo.sh
closes odoo/documentation#2492

Id: 2744270
X-original-commit: 815acb64c4
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Pirlot Donatienne (dopi) <dopi@odoo.com>
Co-authored-by: Stanislas <sts@odoo.com>
Co-authored-by: Donatienne <dopi@odoo.com>
2022-07-18 12:06:43 +02:00
Victor Feyens 2ed6704b88 [FIX] accounting_localization: use relative paths in csv-table's option
The `file` option for the `csv-table` directive expects relative file
paths rather than absolute file paths since Sphinx 4. Since this was the
only usage of the `ODOO_ABSPATH` placeholder, it is removed with this
commit.

Task - 2898477

closes odoo/documentation#2483

X-original-commit: 60adfacbc9
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-07-14 22:21:58 +02:00
Victor Feyens bd34ada679 [IMP] conf.py, requirements.txt, *: allow building with Python 3.10
- Bump Sphinx version to 4.3.2 (default for Debian Jammy).
- Remove the retrocompatibility for Sphinx < 3.5 (warnings are raised in
  4.5).
- Fix translator issue crashing builds.
- Unpin jinja2 from the requirements as the base issue is solved in sphinx 4

Task - 2898477

X-original-commit: 217dba8bbe
Part-of: odoo/documentation#2483
2022-07-14 22:21:58 +02:00
Michelle Vu (mivu) 84779e5852 [IMP] helpdesk: clarify postpaid support and delete mentions of tasks
If committed, this will delete mentions of project tasks in the "Invoice
Time Spent on Tickets (Postpaid Support Services)" v14.0 user doc. It
also deletes unnecessary steps and screenshots about creating and
configuring a new Project and updates the steps and screenshots for the
"Create a sales order" and "Link the Helpdesk ticket to the SO" sections.

Fixes PR #1901
Closes Odoo Task 2870104

closes odoo/documentation#2477

X-original-commit: 521cee8aa0
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-14 11:05:23 +02:00
Sam Lieber (sali) 9ba4aff8d8 [ADD] maintain: google oauth doc
Added document and media files on the setup of Google Gmail using OAuth with Odoo.

closes odoo/documentation#2472

X-original-commit: 9b75dfd2ac
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-14 11:05:20 +02:00
Antoine Vandevenne (anv) ab55a5eda4 [REF] legal: convert the table from a grid to a list table
Prior to this commit, the /legal.html page relied on RST substitutions
to insert the images directives of legal agreements within the table.
This caused Sphinx to omit the `image-reference` class on all `<a>`
elements surrounding an `<img>` element, which it normally adds when the
`target` option is specified on an `image` directive. As the theme
relies on that class to hide the "external link" icon added with commit
343decf1, the layout of the page was broken.

While replacing the substitutions with the plain `image` directive, the
grid table is converted to a list table to avoid the hassle of expanding
table cells to fit the directives. This will also help in maintaining
the content of the table when we will add new translations for the legal
agreements.

task-2909167

closes odoo/documentation#2465

X-original-commit: 81bf067ba1
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-13 16:48:23 +02:00
Antoine Vandevenne (anv) 03257cb8d0 [FIX] odoo_theme: show a cursor when hovering on an image without modal
The images that have the class `o-no-modal` cannot be clicked to open in
a modal, so the cursor should not be changed to a pointer when hovering
on them.

This commit also simplifies the theme's SCSS by replacing the hard-coded
SVG images used in the "Supported versions" page by unicode circles with
a custom styling.

X-original-commit: f648960c78
Part-of: odoo/documentation#2465
Co-authored-by: Elisabeth Dickinson (edi) <edi@odoo.com>
2022-07-13 16:48:23 +02:00
Antoine Vandevenne (anv) 860234a415 [FIX] odoo_theme: only open images that have no target in modal
Since clicking on the image redirects the user to the target URL, it's
useless to open the image in a modal. Also, it partially broke the
layout of the /legal.html page due to the modal div being inserted into
table cells.

This commit also introduces the possibility to add the `o-no-modal`
class on images that should not open in a modal.

task-2909167

X-original-commit: 7cbbb77746
Part-of: odoo/documentation#2465
2022-07-13 16:48:23 +02:00
Antoine Vandevenne (anv) 291a3db45c [IMP] developer/rdtraining: simplify the development environment setup
In an attempt to help new developers install Odoo with a
straightforward procedure, Chapter 2 of the "Getting started" tutorial
included copy-pastes of parts of the "Installing Odoo" page. This proved
to be inefficient because it required maintaining documentation on the
installation procedure in several places and misled the readers by
suggesting installing the Python requirements *after* installing
PostgreSQL.

With this commit, the page on Chapter 2 is refreshed to be clearer to
the readers and redirect them to the "Installing Odoo" page when
necessary.

task-2908434

closes odoo/documentation#2460

X-original-commit: f75cbca98c
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-13 16:48:00 +02:00
Antoine Vandevenne (anv) 88fa15e327 [MOV] developer/reference: move up the standard_modules directory
With the renaming of the "Backend" and "Frontend" directories to "Python
framework" and "JavaScript framework", and since we may want to document
modules that mainly rely on JavaScript, it makes sense to move the
"Standard modules" one level up from under "Python framework" directly
under "Reference".

closes odoo/documentation#2457

X-original-commit: 62e80093bd
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-13 16:47:58 +02:00
Antoine Vandevenne (anv) db835469a1 [IMP] developer: rename reference directories to "Py/Js framework"
It was confusing to label the directory for pages related to the Python
framework "Backend" as, in Odoo, the backend is the web client, and the
frontend is the portal/website. It also led to the "Standard modules"
directory to be placed within the "Backend" directory as of `saas-15.1`
to indicate that they were part of the backend too, but that was a
mistake. Indeed, most standard modules comprise JavaScript methods, and
we could want to document these in the reference at some point.

X-original-commit: 8046f742bc
Part-of: odoo/documentation#2457
2022-07-13 16:47:57 +02:00
Antoine Vandevenne (anv) 625fac0a88 [FIX] odoo_theme: fix the display of modal images in mobile
task-2908330

closes odoo/documentation#2448

X-original-commit: 5e0f14f683
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-12 17:33:37 +02:00
LoredanaLrpz 12541f41ca [ADD] pos: add a doc about tracking numbers in pos
Task ID: 2622088

closes odoo/documentation#2447

X-original-commit: 235d2ad749
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Perazzo Loredana (lrpz) <lrpz@odoo.com>
Co-authored-by: Robin Boisdenghien <robo@odoo.com>
2022-07-12 16:14:35 +02:00
Antoine Vandevenne (anv) 2598fc1012 [CLN] conf.py: stop labelling saas-15.1 in version switcher
The branch was recently dropped from the supported versions. We no
longer need to add a label for it in the version switcher.

closes odoo/documentation#2435

X-original-commit: 2481e3d842
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-11 14:59:59 +02:00
LoredanaLrpz 24b116a23d [IMP] pos: add a warning about Six unusability in July
Task ID:2893426
Since Six payment terminal won't be usable starting in July 2022, I
added this warning.

closes odoo/documentation#2423

X-original-commit: ceec1b0436
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: Perazzo Loredana (lrpz) <lrpz@odoo.com>
2022-07-08 10:03:05 +02:00
“Lau-Odoo” 6ec2c5dfeb [IMP] ecommerce: remove one sub-menu to add it as a see also
task - 2904108 I removed the "website/publish" section from the toctree to add a link to the full website documentation inside off the see also.

closes odoo/documentation#2418

X-original-commit: 7307dac6a6
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-07 20:01:28 +02:00
Demesmaeker 5102b8ea1e [FIX] sale_amazon: fix information displayed
Both carrier name and tracking reference are now displayed to the
customer, even when using the carrie `Self Delivery`

task-2900803

closes odoo/documentation#2410

X-original-commit: 471d0c2094
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-07 14:12:56 +02:00
LoredanaLrpz 5db7fd6cd7 [ADD] pos: add a new doc page about sales orders in pos
Task ID: 2622084

closes odoo/documentation#2398

X-original-commit: 53744bea5b
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Co-authored-by: Quentin Celis (qce) <qce@odoo.com>
Co-authored-by: Xavier Plateau (xpl) <xpl@odoo.com>
Co-authored-by: Robin Boisdenghien (robo) <robo@odoo.com>
2022-07-07 07:15:55 +02:00
LoredanaLrpz 81c92f4056 [IMP] pos: change the page heading
closes odoo/documentation#2401

X-original-commit: a5d850e230
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-07-07 06:17:09 +02:00
Ludvig Auvens 1924117ab5 [IMP] eCommerce: update of cross-selling doc for Odoo 15.0 and after.
closes odoo/documentation#2391

X-original-commit: db8b45ead2
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-06 18:16:49 +02:00
Antoine Vandevenne (anv) f30e84c92a [IMP] developer/javascript: unify the styling of API references
Now that a new styling for API references was added with commit 934f45c,
we can remove the extra CSS that was crafted specifically for JavaScript
API references with commit 05a0a49a. While we're at it, this commit also
applies the new styling to definition lists that were missing it, like
it was done for the page on views with commit 120ae785.

closes odoo/documentation#2376

X-original-commit: 31a9d4a340
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-04 18:11:03 +02:00
Antoine Vandevenne (anv) 12ff9f118b [MOV] developer/misc: move all pages to a more logical location
Before this commit, the "Developer/Misc" directory of the doc, and
more particularly the "Developer/Misc/Other" sub-directory, was used as
a garbage dump where we moved all the pages that didn't fit elsewhere.
Due to that, interesting and important pages, such as the Coding
Guidelines, were buried in that directory never to be read again by Odoo
developers.

This commit moves most pages under "Misc" one or two levels up to be
located directly under "Developer" hence making them more accessible. A
new "Contributing/Development" directory is added to host the Coding
Guidelines page and soon many other pages.

task-2897143

closes odoo/documentation#2371

X-original-commit: 109817311e
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-07-04 16:18:16 +02:00
“Lau-Odoo” 20b12c9958 [IMP] website: broken link removal
task - 2841794

closes odoo/documentation#2363

X-original-commit: c40059e0a7
Signed-off-by: Auvens Ludvig (lau) <lau@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-07-01 13:30:03 +02:00
Tom Aarab (toaa) 4ace49cee6 [IMP] accounting: Adyen's backend changes for the webhook creation
Adyen's backend had slightly changed and the previous doc version was outdated (URL and HMAC key fields)

task - 2810213

closes odoo/documentation#2354

X-original-commit: da87312821
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-07-01 12:29:51 +02:00
Michelle Vu (mivu) ae744df665 [IMP] discuss: custom ICE server list optional
This will edit the "Define a list of custom ICE servers" section in the
"Configure ICE servers with Twilio" v15.0 user doc. I added a line to
mention that defining a list of custom ICE servers is an optional step,
as Odoo only uses this list as a fallback if Twilio is not configured or
is not working at any given moment.

Fixes PR #1994
Closes Odoo Task 2882679

closes odoo/documentation#2346

X-original-commit: 7f2110e8a3
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-29 12:16:46 +02:00
Antoine Vandevenne (anv) 8aeee6c1c6 [IMP] developer/views: apply the new API references style
The documentation of view attributes was lacking visual structure to
help the reader figure out which attribute relates to which parent
element. Since this documentation was relying on RST block quotes to
represent the hierarchy of view attributes, we can apply the same new
styling that was added with commit 934f45cf and designed for autodoc,
and which relies on the exact same HTML structure as block quotes.

task-2755298

closes odoo/documentation#2340

X-original-commit: e2a3ca0631
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-29 09:14:52 +02:00
LoredanaLrpz b65cfc12dd [ADD] pos: adyen payment terminal
Task ID: 2808584
Do not Forward port r+

closes odoo/documentation#2333

X-original-commit: 85b5374995
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Perazzo Loredana (lrpz) <lrpz@odoo.com>
2022-06-28 15:02:04 +02:00
LoredanaLrpz 95c3d0d97c [IMP] pos: change titles
X-original-commit: 5618e5ad9b
Part-of: odoo/documentation#2333
2022-06-28 15:02:04 +02:00
Odoo's Mergebot 6be0446259 [FW][MERGE] odoo_theme: styling fixes, tweaks, and general cleanup
**Special terms restyling:**
A general restyling of special terms has been made for better legibility
in text, and to differentiate roles (ie: `:command:`,`:file:`,`:dfn:`)
so writers can use these instead of italic and bold styling.
`:guilabel:` has not been changed because its use is too vast.

task-2790284

**Reference pages have a new look:**
`code` elements have been restyled to remove unnecessary spaces (ex:
`odoo.models .BaseModel`. See
https://www.odoo.com/documentation/15.0/developer/reference/backend/orm.html#odoo.models.BaseModel)
and to include visual aid of parent/children relations (left border).

Basic for task-2755298

**URL styling:**
When an image has an external link, the `external-link` icon appears
under the image. This has been removed. URLs with icons such as external
links or "Edit on Github" links have been modified to remove the
underline under the icons. On mobile, long URLs would push the content
outside the viewport. `overflow-wrap: anywhere` has been added to all
URLs on mobile devices.

**No more horizontal scroll on Windows thanks to css grid:**
Windows and Mac don't work the same (no kidding). Windows would add
±`1rem` of horizontal scroll when Mac doesn't. Adding that `1rem` to the
content's `max-width` calculations would make Mac unhappy (it left a
`1rem` gap). The solution for everyone to be happy was to change the
display type to `grid`. By doing this, the max-width calculations and
the left positioning according to the side-nav were not necessary
anymore. Great Success. Very Nice.

**Scrolling To:**
With the new subnav added with commit 10f62b6a, the scroll position was
wrong. This is fixed by changing the padding/margin top values in the
`o-scroll-padding` mixin.

**Replace "Hide Search Matches" with close icon:**
The title says it all.

**Forgotten scrollbar styling**
The scrollbar stylings for the side-nav should have been moved to
`o_side_nav-inner` during the previous restyling of the header.

**Clean up the mess:**
All these changes made me want to clean up a bit. By doing so I realised
that a lot of the utility mixins that were used in the old *old* doc
were still present here, but aren't being used. Same for some variables.
Some stying was using values instead of their variable counterparts, so
these have been replaced.

closes odoo/documentation#2326

Forward-port-of: odoo/documentation#2264
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-28 10:29:03 +02:00
Gopakumar N G 3bd9640881 [FIX] pos: change the tab name in the configuration steps
closes odoo/documentation#2311

X-original-commit: 2f41dc4445
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-27 16:05:58 +02:00
Elisabeth Dickinson 04f5b0a716 [REF] odoo_theme: replace values with variables in SCSS files
X-original-commit: c82d95b17c
2022-06-27 15:42:43 +02:00
Elisabeth Dickinson 5fa54af26d [REF] odoo_theme: move stray mixins into the _mixins.scss file
X-original-commit: 7fa153594d
2022-06-27 15:42:42 +02:00
Elisabeth Dickinson 8ce98f52ec [CLN] odoo_theme: remove unnecessary css
X-original-commit: fca78f44db
2022-06-27 15:42:41 +02:00
Elisabeth Dickinson cb0e0f2985 [CLN] odoo_theme: remove old doc's unused variables
X-original-commit: 383e3d4206
2022-06-27 15:42:40 +02:00
Elisabeth Dickinson 3bcdd860f0 [REF] odoo_theme: move scrollbar styling to .o_side_nav-inner
X-original-commit: b9ca38215d
2022-06-27 15:42:39 +02:00
Elisabeth Dickinson 42d0b475cc [CLN] odoo_theme: remove old doc's utility mixins
These mixins were used in the old doc and were kept "just in case". The
`valid-radius` mixin already exists in the bootstrap library.

X-original-commit: 9a2e8eefef
2022-06-27 15:42:38 +02:00
Elisabeth Dickinson a24594857a [IMP] odoo_theme: replace "hide search matches" by a close button
X-original-commit: 994d273a59
2022-06-27 15:42:37 +02:00
Elisabeth Dickinson fef1dc3ba5 [IMP] odoo_theme: improve spacing around code blocks on reference pages
X-original-commit: 794e42f78b
2022-06-27 15:42:37 +02:00
Elisabeth Dickinson f18355c555 [FIX] odoo_theme: fix scrollTo margin/padding with new headers height
The scroll padding needed increasing with the new sub-header.
Unnecessary calc() and parenthesis on the headers-height variable are
removed.

X-original-commit: 0b536debac
2022-06-27 15:42:36 +02:00
Elisabeth Dickinson 235464d0d9 [FIX] odoo_theme: remove the horizontal scroll bar
X-original-commit: 26bc1cd707
2022-06-27 15:42:35 +02:00
Elisabeth Dickinson 51271e432b [IMP] odoo_theme: improve URL stylings
- Remove external-link icon on images.
- Remove underline from external-link icon on link hover.
- Add overflow-wrap on URLs on mobile.

X-original-commit: 91cb3ca026
2022-06-27 15:42:34 +02:00
Elisabeth Dickinson 6176718eb0 [IMP] odoo_theme: improve general spacings and paddings
X-original-commit: 2e693b3c4a
2022-06-27 15:42:33 +02:00
Elisabeth Dickinson fccd6bb800 [IMP] odoo_theme: improve special terms styling
Including the `:command:`, `:file:` and `:dfn:` roles, and code-styled
text in alerts.

task-2790284

X-original-commit: 7239986484
2022-06-27 15:42:32 +02:00
Jonathan Castillo (jcs) a9e77b310b [IMP] contributing: update the rst cheat sheet
task - 2810468

closes odoo/documentation#2318

X-original-commit: 9ff312298d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Co-authored-by: Antoine Vandevenne (anv) <anv@odoo.com>
Co-authored-by: Elisabeth Dickinson (edi) <edi@odoo.com>
2022-06-27 15:01:29 +02:00
Valentin Chevalier 2c676ed846 [IMP] developer/howtos: Add missing information about debug mode
In chapter 3 of the developer core training, one is asked to click on a
button that is only shown in debug mode but there is no indication about
this mode in this chapter.

closes odoo/documentation#2302

X-original-commit: 96d822bf87
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-27 09:59:58 +02:00
Donatienne Pirlot 6039ab126c [IMP] accounting: note about outstanding accounts
task-2868642

closes odoo/documentation#2295

X-original-commit: 11f9c35191
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-06-24 17:42:08 +02:00
Antoine Vandevenne (anv) 873dc25718 [IMP] redirects: split redirects.txt into multiple, per-version, files
The `redirects.txt` file used to specify redirect rules for renamed or
moved documentation pages is starting to grow too big to be easily
maintainable. The main reason is that the number of redirect rules that
were thought to be required has been largely underestimated when
implementing the 'redirects' extension. At first, we believed that no
guidelines or structure were necessary because only a small amount of
redirect rules would be specified. This proved wrong and the file is now
becoming a mess, making it increasingly difficult to figure out where,
why, when, and if a redirect rule is specified in the file.

As the file is versioned, another issue emerges: conflicts occur every
time a commit is forward-ported to a later version if that commit adds a
redirect rule at the end of the file or at a line that was changed in
the later version. As redirect rules are frequently added, and since
blocks of redirect rules for new versions are added at the end of the
file, this tends to happen a lot.

This commit attempts to hit two birds with one stone by splitting the
`redirects.txt` file into multiple files, one per version. While doing
so, the existing redirect rules are ordered alphabetically and moved
into contextual blocks. Instructions and guidelines on how to create
redirect rules are also listed in the `redirects/MANUAL.md` file. By
sorting the redirect rules and adding them in different files, the
number of conflicts should decrease by a lot.

task-2891912

closes odoo/documentation#2289

X-original-commit: f8b03c5554
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-24 10:52:03 +02:00
Antoine Vandevenne (anv) 14531d43d0 [IMP] odoo_theme: open images in a modal
task-2358082

closes odoo/documentation#2282

X-original-commit: 2a867b4f60
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Co-authored-by: Elisabeth Dickinson (edi) <edi@odoo.com>
2022-06-23 14:04:49 +02:00
Antoine Vandevenne (anv) 54bbc778bc [FIX] odoo_theme: correctly test for fallback URLs when using switchers
closes odoo/documentation#2272

X-original-commit: 9e84b6f681
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-23 10:51:56 +02:00
Donatienne Pirlot ebbb7d2f62 [IMP] accounting: new content for invoice digitization (ocr)
closes odoo/documentation#2260

Id: 2320188
X-original-commit: c8fd4608d4
Signed-off-by: Pirlot Donatienne (dopi) <dopi@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-06-21 20:21:35 +02:00
Antoine Vandevenne (anv) 57a21f7f71 [FIX] redirects: add missing redirect rule for external_api.rst
The redirect rule was omitted in commit 3465475f.

closes odoo/documentation#2255

X-original-commit: 060e8f2344
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-21 12:10:39 +02:00
“Chiara 3e5393a558 [FW][IMP] accounting: remove the odoo tutorials invoices link
Deleting the Odoo Tutorials Invoices link since the course has been merged, and the link isn't necessary anymore.

closes odoo/documentation#2248

Forward-port-of: odoo/documentation#2243
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-06-20 18:33:43 +02:00
lma-odoo 2452b58ae9 Update epos_ssc.rst
Because of a recent Chrome security update, a lot of customers using peripheral devices (printers, ...) will have to follow this doc.

Therefore, I followed the doc and did the flow on my side.

I modified 'Copy to file' to 'Export' and 'Trusted Root Certification Authorities' to 'Authorities' in order to have the exact same terms as in Chrome (I guess they updated their terms at some point).

closes odoo/documentation#2235

X-original-commit: 4c4b81b12c
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-06-16 13:39:59 +02:00
Elisabeth Dickinson 4f2c38846d [FIX] odoo_theme: fix highlight blocks in field-list items
On pages such as /developer/reference/backend/orm.html#fields, the
highlight blocks inside `dl.field-list` items were pushing the width of
the page to go outside the screen on mobile. This is fixed by changing
the `.field-list`'s `display: grid` into `block` on mobile.

closes odoo/documentation#2228

X-original-commit: a689ea236d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-15 20:23:48 +02:00
Odoo's Mergebot 9ae0808010 [FW][MERGE] odoo_theme: revamp header and menu for better mobile support
Previously the switchers were hidden on mobile. These have been moved
to a sub-nav which also contains the button for the sidenav, leaving
more space for the searchbox so it can remain in the header. Like MDN
web docs, the navigation now slides in from the left instead of the
top.

See PR's commits for more details.

task-2800937

closes odoo/documentation#2220

Forward-port-of: odoo/documentation#2206
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-15 13:20:53 +02:00
Antoine Vandevenne (anv) d9d2ab2434 [FIX] odoo_theme: stop testing for valid URLs if in localhost
The mechanism that makes the version and language switchers test for
valid URLs crashed when testing in localhost. The mechanism is now
skipped if the URL starts with a '/'.

X-original-commit: 98e98f65c9
2022-06-15 11:41:41 +02:00
Elisabeth Dickinson c9f24e2794 [FIX] odoo_theme: fix searchbox's highlight-link
task-2800937

X-original-commit: 3fd32fe92a
2022-06-15 11:41:40 +02:00
Elisabeth Dickinson e7cb811971 [IMP] odoo_theme: revamp side menu to add overlay
task-2800937

X-original-commit: 4ed8c2238a
2022-06-15 11:41:39 +02:00
Elisabeth Dickinson 0138a0822a [FIX] odoo_theme: fix menu scrolling
task-2800937

X-original-commit: 9c53901db9
2022-06-15 11:41:38 +02:00
Elisabeth Dickinson 35623039a1 [IMP] odoo_theme: add side menu collapse icon
task-2800937

X-original-commit: 7284b11a36
2022-06-15 11:41:37 +02:00
Elisabeth Dickinson adb3cfb148 [IMP] odoo_theme: change collapsing menu orientation
task-2800937

X-original-commit: dee96ad2da
2022-06-15 11:41:36 +02:00
Elisabeth Dickinson a1e08d7634 [IMP] odoo_theme: add subheader and adapt switchers and searchbar
task-2800937

X-original-commit: 411e1cb1d3
2022-06-15 11:41:35 +02:00
Elisabeth Dickinson abb40e8e31 [IMP] odoo_theme: stop translating language names in the switcher
Before this commit, the language names were translated to display
"Français" instead of "French". This helped the user find their language
in the switcher but it was taking too much horizontal space, and that
space was not constant from one language to another.

This commit removes the translations of the language names and simply
goes with "FR", "NL", etc. which any user can identify as their
language.

task-2800937

X-original-commit: b1fa30f431
2022-06-15 11:41:34 +02:00
Elisabeth Dickinson f21170d178 [IMP] design: add an icon behind external links
The external links' target attribute is now also updated to open the
link in a new tab. In addition, the "[source]" link of autodoc's models
is moved right next to the name of the model to correctly position the
icon.

task-2790244

closes odoo/documentation#2211

X-original-commit: 343decf192
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Co-authored-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-14 14:38:01 +02:00
Elisabeth Dickinson d88a96dada [IMP] odoo_theme: show the "On this page" section in mobile
When the page gets too small for the "On this page" section (local tree
of content) to fit on the page, the section is now moved above the menu
(global tree of content) rather than being hidden.

task-2800970

closes odoo/documentation#2199

X-original-commit: c0040fa532
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Co-authored-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-14 12:04:04 +02:00
LoredanaLrpz f3f14deb8c [REM] pos: remove cash control doc page in 15 bc deprecated
Task ID: 2680699

closes odoo/documentation#2190

X-original-commit: c0036ae13c
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-13 09:28:14 +02:00
Julien Castiaux 97b7bdfd5e [IMP] rdtraining: tip about -i/-u for odoo-bin
It is never shown to the trainee that he can install/update a module
right from the CLI. Multiple developpers still use the app manager to
install/update their modules multiple months into the job.

closes odoo/documentation#2185

X-original-commit: 3d2f067e6c
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Signed-off-by: Julien Castiaux <juc@odoo.com>
2022-06-10 21:51:02 +02:00
Antoine Vandevenne (anv) 9d36e4e2a4 [FIX] requirements: pin docutils to 0.16.0
Since sphinx-tabs 3.2.0 has the requirement docutils==0.16.0 and sphinx
3.5.4 has the requirement docutils>=0.12,<0.17, this commit pins
docutils to version 0.16.0.

While we're at it, the dependency to sphinx-tabs is also explicitly
listed, although it was already imported in the extensions. It causes
no trouble to install it from pip alongside the imported extension.

closes odoo/documentation#2176

X-original-commit: 9923bb33c9
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-10 10:26:06 +02:00
Denis Vermylen 48c8d22a54 [FIX] odoo.sh: remove hidden folder from documentation
it will also be renamed to .repositories in the near future

closes odoo/documentation#2164

X-original-commit: 1afee9e2c7
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-08 09:33:16 +02:00
Jason Aerts (jaae) 226d49c239 [IMP] maintain: process for odoo.sh to odoo online
task-id 2870122

closes odoo/documentation#2157

X-original-commit: 6dc4288e49
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-06-03 14:19:22 +02:00
Jonathan Castillo (jcs) de04e27d1a [ADD] accounting/l10n: new egyptian localization and einvoicing section
task-id 2858349

closes odoo/documentation#2147

X-original-commit: a2cf3da864
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-02 16:50:23 +02:00
Antoine Vandevenne (anv) 87a919e864 [FIX] homepage: fix the link to the external API page
The page was moved from odoo.rst to external_api.rst with commit
0fc52188.

task-2870501

closes odoo/documentation#2142

X-original-commit: f6cd947d6b
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-02 13:42:55 +02:00
Tom Aarab (toaa) 4197755373 [IMP] accounting: add note about bank sync not available for trial db
Added a note to specify that bank synchronization is not available on trial databases

closes odoo/documentation#2137

X-original-commit: e4fc5f07ee
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: Aarab Tom (toaa) <toaa@odoo.com>
2022-06-02 13:42:48 +02:00
Jonathan Castillo (jcs) 745a1da595 [IMP] maintain: add note in hosting changes (on-premise to online)
task-id 2869953

closes odoo/documentation#2128

X-original-commit: 4cd0500408
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-06-01 19:38:29 +02:00
Antoine Vandevenne (anv) 1601ce58d0 [IMP] payment_acquirers: explain the different additional features
task-2862636

closes odoo/documentation#2120

X-original-commit: c820aa4951
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-06-01 10:48:54 +02:00
william 44d82e1f07 [FIX] conf: dynamic LaTeX releasename
closes odoo/documentation#2115

X-original-commit: 6d4f4f7d9b
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-05-30 17:58:02 +02:00
Demesmaeker 920bb3d816 [IMP] amazon: migrate to SPAPI
Starting July 2022, Amazon WMS API is deprecated and we need to use the Selling Partners API.

This brings changes in the authentication flow that are explained.

task-2466636

closes odoo/documentation#2106

X-original-commit: 2dd3a4ae74
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-30 16:57:57 +02:00
Michelle Vu (mivu) d103229364 [IMP] payment: update SIX screenshots
closes odoo/documentation#2100

X-original-commit: 6dc30adf15
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-27 13:16:28 +02:00
Michelle Vu (mivu) 42b1af5d5c [IMP] helpdesk: update flow and images for reinvoicing time
closes odoo/documentation#2096

X-original-commit: 00ec789d96
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-27 13:16:23 +02:00
Michelle Vu (mivu) e31183f4ed [FW][IMP] calendar: update Google Calendar sync screenshots
Task ID: 2685658

closes odoo/documentation#2089

Forward-port-of: odoo/documentation#1982
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-25 12:40:43 +02:00
Donatienne Pirlot 5b85b5a8e9 [IMP] accounting: update the follow-up information
Task ID: 2735445

closes odoo/documentation#2080

X-original-commit: ffc23483ca
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Pirlot Donatienne (dopi) <dopi@odoo.com>
2022-05-24 16:51:50 +02:00
Michelle Vu (mivu) 3ba2967847 [ADD] discuss: configure Twilio ICE servers
closes odoo/documentation#2073

X-original-commit: 47d1146c10
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-23 10:56:29 +02:00
Antoine Vandevenne (anv) 75e7f29fe1 [MOV] developer/api/odoo: rename odoo.rst into external_api.rst
The previous file name was not very relevant in regard to the content of
the page, and it conflicted with the `sys.path`.

closes odoo/documentation#2067

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-20 14:44:52 +02:00
Antoine Vandevenne (anv) 4649c3f8d1 [MOV] content/*: move resource files into their related page's directory
Since odoo/documentation#903, the guideline for the location of new
resource (images, downloadable files, RST includes...) files is to place
those inside the directory of the RST page that references them.

For example, if `doc1.rst` has a reference to `image.png` and to
`download.zip`, the file structure should look like this:

├── parent_doc/
│     └── doc1/
│     │     └── image.png
│     │     └── download.zip
│     └── doc1.rst
│     └── doc2.rst
├── parent_doc.rst

Before this commit, most of the resource files were still located inside
'media' directories holding all the resource files referenced by RST
pages located at the same level as these directories. In the example
above, a single 'media' directory would hold all the resource files
referenced by both `doc1.rst` and `doc2.rst`. Doing so prevented us from
figuring out easily which resource file was referenced by which RST page
and, thus, lead to unused resource files piling up in the repository. It
also made it more complicated to define codeowners regex rules because a
team could not simply be assigned to `/some_page.*` but needed to be
assigned to both `/some_page\.rst` and to the location of 'media'.

In order to help new content writers figure out the guideline when
taking examples from other RST pages, this commit retroactively applies
the guideline to existing resource files and 'media' directories. The
left-over resource files that are not referenced by any RST page are
removed.

task-2497965

Part-of: odoo/documentation#2067
2022-05-20 14:44:52 +02:00
Donatienne Pirlot 51d3b5f0a2 [IMP] accounting : update the list of fiscal localization packages
task id: 2858536

closes odoo/documentation#2050

X-original-commit: 6ca1fd83ec
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: Pirlot Donatienne (dopi) <dopi@odoo.com>
2022-05-20 14:44:49 +02:00
Martin Trigaux 2b29e4a29b [FIX] odoo_theme: correctly consider baseurl
urlBase was only containing the domain name, not the /documentation/

closes odoo/documentation#2061

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-20 11:40:29 +02:00
Martin Trigaux c9d95858b4 [IMP] odoo_theme: introduce fallback URLs for the page switchers
When a user clicks on the link of an alternate page in the version or
language switcher, we now check if the page referenced by the target URL
exists or not. If not, we generate a series of fallback URLs from the
target URL and check whether the targeted resource exists or not, until
we read the root of the documentation. As soon as we find a valid URL,
we redirect the user to it.

This is inspired by the behaviour of docs.python.org's version and
language switchers.

task-2534669

closes odoo/documentation#2051

X-original-commit: 25e863a64c
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Co-authored-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-19 23:12:51 +02:00
Beshoy Nabeih a572e055a8 [FIX] developer/frontend: typo in the user menu registry example
closes odoo/documentation#2038

X-original-commit: 6d30d81a76
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-19 15:18:59 +02:00
Altela Eleviansyah Pramardhika d67a2492ce [FW][FIX] developer/howtos: Fixed typo from field to fields
closes odoo/documentation#2035

Forward-port-of: odoo/documentation#2023
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-19 15:18:56 +02:00
Tori (vpk) cfeb1e4838 [IMP] CRM: updated lead scoring with note about deprecation
Task ID: 2496900

closes odoo/documentation#2029

X-original-commit: fca684e802
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-19 15:18:53 +02:00
John Kirkwood (kij) ad21e95e8b [IMP] developer: clarify options for many2one widget
Only `no_create` is required to hide both the 'Create "xxx"' and the
'Create and Edit...' dropdown menu options.

closes odoo/documentation#2015

X-original-commit: 599a137ffc
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-19 14:14:58 +02:00
Tori (vpk) b1e6b4c3e3 [IMP] CRM: updating flow and screenshots of generating leads
closes odoo/documentation#2021

Task: 2540813
X-original-commit: 44129be225
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-19 11:47:02 +02:00
Donatienne Pirlot 7cbc4b5673 [ADD] accounting: new doc about outstanding account
Task-id 2744131

closes odoo/documentation#2011

X-original-commit: 5de81c9e2d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-18 13:28:16 +02:00
Antoine Vandevenne (anv) 1f550b7ab0 [FIX] requirements.txt: pin Jinja2 < 3.1
The latest versions of Jinja2 are no longer compatible with the latest
version of Sphinx 3 (3.5.4).

task-2828982

closes odoo/documentation#2000

X-original-commit: 4c7e89d872
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-13 15:58:10 +02:00
Fabrice Henrion 3b5979708a [IMP] payment acquirers: a note in Authorize.net
closes odoo/documentation#1989

X-original-commit: df10f17c3e
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-05-13 15:57:50 +02:00
Laurent Desausoi (lade) 5dca17ad7d [IMP] sale_management: remove price_unit from quotation template
Companion of [1].

[1]: https://github.com/odoo/odoo/pull/47186

opw-2824263

closes odoo/documentation#1979

X-original-commit: f6bf1183db
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Desausoi Laurent (lade) <lade@odoo.com>
2022-05-10 16:16:53 +02:00
Antoine Vandevenne (anv) a0181810fd [FIX] conf: allow building the documentation with Python 3.6.
Commit 3d358fdb introduced a new import of Odoo source files which
complain about the minimal Python version if the hack added by 57e1e314
is not executed early enough.

closes odoo/documentation#1972

X-original-commit: 557b261e01
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-09 16:23:50 +02:00
wan 3fb30d87d7 [REF] i18n/localization.rst: rework the entire localization tutorial
closes odoo/documentation#1968

X-original-commit: 9db567159d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: William André (wan) <wan@odoo.com>
Co-authored-by: William Andre <wan@odoo.com>
Co-authored-by: Ivan Yelizariev <iel@odoo.com>
2022-05-09 13:30:05 +02:00
wan 1e20a49f47 [ADD] extension: allow to build graphs using graphviz
X-original-commit: e00b5e35c7
Part-of: odoo/documentation#1968
2022-05-09 13:30:05 +02:00
wan 5aa9ba31fe [ADD] extensions: new autofield directive
This new directive is generating documentation from Odoo fields. This
can be used to build documentation about business classes.
This will help developpers import/export data and build localization
modules for instance.

X-original-commit: 16afaf6fa7
Part-of: odoo/documentation#1968
2022-05-09 13:30:05 +02:00
wan 2e6634ea7a [ADD] conf: give relative and absolute path to odoo repo
Also add a condition on some directives to ignore them when we have no
relative/absolute path.

X-original-commit: a514c905c0
Part-of: odoo/documentation#1968
2022-05-09 13:30:04 +02:00
Demesmaeker 6fc5fd5249 [IMP] amazon: explain how to use a carrier
In case of an unsupported carrier or a self Delivery, Odoo won't block
the user to use the Amazon connector, but explanation were needed for
these cases.

task-2804907

closes odoo/documentation#1966

X-original-commit: 3231d20d92
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-09 13:29:57 +02:00
Tori (vpk) 6a2ecf5675 [IMP] CRM: update multiple sales teams doc
closes odoo/documentation#1963

Task: 2588786
X-original-commit: 98f306eca5
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-09 12:31:18 +02:00
Jeremy Kersten d956bfd5c9 [IMP] odoo_theme: allow to add plausible script
export PLAUSIBLE_SCRIPT=https://plausible.io/js/script.js
export PLAUSIBLE_DOMAIN=yourdomain.com

closes odoo/documentation#1954

X-original-commit: 4c526eb02f
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Jérémy Kersten <jke@odoo.com>
2022-05-09 11:20:38 +02:00
Jonathan Castillo (jcs) 2d72944305 [IMP] install/maintain: add seealso links in domain names doc
closes odoo/documentation#1937

X-original-commit: d7da800674
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-05-09 10:20:53 +02:00
Zachary Straub (ZST) 4b97817afa [ADD] accounting: avatax integration
closes odoo/documentation#1945

X-original-commit: 093aea15ec
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-09 08:25:13 +02:00
Altela Eleviansyah Pramardhika 376ee43cf7 [FW][FIX] developer/howtos: missing parentheses in print statement
Added parentheses in a print function

closes odoo/documentation#1930

Forward-port-of: odoo/documentation#1923
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-05-06 11:42:49 +02:00
Jonathan Castillo (jcs) 8bada22d42 [IMP] contributing: modify titles and headings guidelines
The previous guidelines for titles and headings included an exception to
capitalize feature names as they are written in the apps. However, this
exception seems to have confused most writers as it isn't always clear
what should be considered as a feature name or what should be considered
as a noun or noun group. This commit removes this exception to make the
writing and reviewing processes easier while retaining good titles and
improving consistency across the documentation. It also changes the
titles of the Accounting section to provide a better example to other
writers.

task-id 2843109

closes odoo/documentation#1921

X-original-commit: 1997788e81
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2022-05-05 15:27:05 +02:00
Antoine Dupuis (andu) f0ea12f515 [FW][IMP] accounting: add a warning about invoices in USD in Mexico
Mexican companies very commonly issue invoices in USD, to be fulfiled
in MXN, at the official exchange rate defined by the Banco de Mexico
on the day of payment.

(Presumably, this is to insure against the volatility of the Mexican
peso.)

Odoo supports this workflow, but only if the payment is registered
directly on the invoice using the 'Register Payment' button.

If the payment is created separately, and then reconciled manually
with the invoice, a whole host of problems occur:
- the payment typically can't be reconciled fully with the invoice,
  (even though that can usually be solved by manually creating
  an exchange move)
- but more problematically, the amounts on the payment CFDI will
  be wrong, and even manually creating an exchange move won't solve
  that.

So, we absolutely need to warn users not to try to do that.

(We've been encountering lots of tickets lately in the tech-support
pipe because of users who tried this and then wonder why it doesn't
work.)

This is currently an issue in 14.0, 15.0 and master.

closes odoo/documentation#1916

Forward-port-of: odoo/documentation#1728
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-05 10:20:35 +02:00
Alexandre de Pape a271ebfef5 [FIX] sales: fix typo
critarias -> criteria

closes odoo/documentation#1905

X-original-commit: b2f4a9e818
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-02 18:41:58 +02:00
Antoine Vandevenne (anv) 41a19f587e [ADD] .gitattributes: include RST files in language statistic on GitHub
closes odoo/documentation#1897

X-original-commit: 34d604ca89
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-04-28 20:06:58 +02:00
root a7478dd186 [ADD] multi_website: add info to configure multiple domains
closes odoo/documentation#1896

X-original-commit: 324936c43e
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-04-28 20:06:55 +02:00
Loan (lse) daf07926a6 [IMP] outlook mail_plugin: add solution for cookie issue
closes odoo/documentation#1884

X-original-commit: 3e25d94b0d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-04-28 15:08:48 +02:00
Adrien Milis 1bee07e966 [FIX] developer/rd-training: fix commands
Changed commands that were still referring to Odoo 14.0 to 15.0

closes odoo/documentation#1879

X-original-commit: b578f575d0
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-04-27 10:06:02 +02:00
MichaSi bc2e37d73d [FW][FIX] crm: fix typos and menuselection items
closes odoo/documentation#1873

Forward-port-of: odoo/documentation#1183
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-04-26 15:08:48 +02:00
Antoine Vandevenne (anv) 44a62e385f [FIX] developer/rdtraining: fix typos
closes odoo/documentation#1866

X-original-commit: f8f5ed93e1
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-04-26 10:54:57 +02:00
Dossogne Bertrand 4d8c21fc11 [FIX] developer: fix duplicate action availability
The duplicate action is not available for list views

closes odoo/documentation#1859

X-original-commit: ce1961ebaf
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-04-25 10:57:51 +02:00
Dossogne Bertrand 5ba9583788 [FIX] developer: fix duplicate availability
The duplicate action is not available for list views

closes odoo/documentation#1852

X-original-commit: 9cf425d886
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-04-22 17:16:06 +02:00
Touati Djamel (otd) cb239b36a0 [FIX] inventory_and_mrp: documentation update
After this PR: https://github.com/odoo/odoo/pull/78199

The explanation of the `Security Lead Time for Purchase` field needs to be updated

opw-2766940

closes odoo/documentation#1840

X-original-commit: 9c242400b6
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Djamel Touati (otd) <otd@odoo.com>
2022-04-21 16:59:09 +02:00
Benoit Socias af27e20e02 [IMP] rdtraining: clarify transition sentence to view inheritance
The "View Inheritance" section is introduced by a sentence that can be
understood as "do this task then we'll be ready to go the next section"
instead of "in the next section we will see how to do this task".
This can confuse the reader into thinking that some knowledge was not
acquired in the previous parts.

This commit makes it clear that the task described in the transition
sentence will be achieved in the next part.

task-2822582

closes odoo/documentation#1830

X-original-commit: 5a39ba7d24
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Benoit Socias (bso) <bso@odoo.com>
2022-04-14 13:43:55 +02:00
Benoit Socias 7462b89f57 [IMP] rdtraining: add note about Settings requiring at least one app
At the point when the developer mode is introduced in the training, it is
confusing because the documentation page describes the option inside the
Settings page, but that page only appears if at least one application is
installed. (Otherwise, the Settings app shows the Users instead)

This commit adds a note so that the reader does not start looking for a
screen that cannot be reached at that point.

task-2822582

X-original-commit: 2ebb7fe802
Part-of: odoo/documentation#1830
2022-04-14 13:43:54 +02:00
Altela Eleviansyah Pramardhika c4ffa7a8cd [FW][FIX] developer/rdtraining: fix typo
Fixed `name = field.Char(required=True)` to
`name = fields.Char(required=True)`.

closes odoo/documentation#1823

Forward-port-of: odoo/documentation#1816
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-04-11 12:39:57 +02:00
Antoine Vandevenne (anv) 9cb3eaa2ef [REL] freeze saas-15.3 branch
closes odoo/documentation#1791

Related: odoo/odoo#87949
Related: odoo/design-themes#558
Related: odoo/enterprise#25888
2022-04-11 12:37:49 +02:00
2772 changed files with 18394 additions and 12967 deletions
+2
View File
@@ -0,0 +1,2 @@
# Include RST files in language statistics on GitHub.
*.rst linguist-detectable
+2 -1
View File
@@ -1,6 +1,7 @@
*.pyc
.*
*.mo
.*
!.gitattributes
# Sphinx build files
_build/
+1 -1
View File
@@ -60,4 +60,4 @@ source_lang = en
[odoo-14-doc.websites]
file_filter = locale/<lang>/LC_MESSAGES/websites.po
source_file = locale/sources/websites.pot
source_lang = en
source_lang = en
+4 -2
View File
@@ -19,12 +19,14 @@ SPHINXOPTS = -D project_root=$(ROOT) -D canonical_version=$(CANONICAL_VERSIO
-D versions=$(VERSIONS) -D languages=$(LANGUAGES) -D language=$(CURRENT_LANG) \
-D is_remote_build=$(IS_REMOTE_BUILD) \
-A google_analytics_key=$(GOOGLE_ANALYTICS_KEY) \
-A plausible_script=$(PLAUSIBLE_SCRIPT) \
-A plausible_domain=$(PLAUSIBLE_DOMAIN) \
-j $(WORKERS)
SOURCE_DIR = content
HTML_BUILD_DIR = $(BUILD_DIR)/html
ifdef VERSIONS
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/master
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/saas-15.3
endif
ifneq ($(CURRENT_LANG),en)
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/$(CURRENT_LANG)
@@ -53,7 +55,7 @@ html: $(HTML_BUILD_DIR)/_static/style.css
# To call *after* `make html`
# Binary dependencies (Debian): texlive-fonts-recommended texlive-latex-extra
# texlive-generic-recommended texlive-fonts-extra
# texlive-fonts-extra
latexpdf:
@echo "Starting build..."
$(SPHINX_BUILD) -c $(CONFIG_DIR) -b latex $(SPHINXOPTS) $(SOURCE_DIR) $(BUILD_DIR)/latex
+13 -23
View File
@@ -4,43 +4,33 @@
### Requirements
- [Git](https://www.odoo.com/documentation/master/contributing/documentation.html#install-git)
- [Python 3.7 or 3.8](https://www.odoo.com/documentation/master/contributing/documentation.html#python)
- Python dependencies listed in the file [`requirements.txt`](https://github.com/odoo/documentation/tree/master/requirements.txt).
- [Make](https://www.odoo.com/documentation/master/contributing/documentation.html#make)
- A local copy of the [odoo/odoo repository in master](https://github.com/odoo/odoo/tree/master) (Optional)
- Git
- Python 3.6, 3.7, or 3.8
- Python dependencies listed in the file `requirements.txt`.
- Make
- A local copy of the [odoo/odoo repository](https://github.com/odoo/odoo) (optional)
### Instructions
1. In a terminal, navigate to the root directory and compile the documentation to HTML with the
following command:
```sh
make
```
1. In a terminal, navigate to the root directory of the documentation and build it `make`.
Additional commands are available with `make help`.
2. Open the file `documentation/_build/html/index.html` in your web browser to display the render.
3. See [this guide](https://www.odoo.com/documentation/master/contributing/documentation.html#preview-your-changes)
2. Open the file `documentation/_build/html/index.html` in your web browser.
3. See [this guide](https://www.odoo.com/documentation/latest/contributing/documentation.html)
for more detailed instructions.
Optional: to fully build the developer documentation with inline docstrings for documented Python
functions, place your local copy of the `odoo/odoo` repository in the root directory. Alternatively,
create a symbolic link with `odoo` as link name. If the Odoo sources are not found, a warning will
be shown.
Optional: place your local copy of the `odoo/odoo` repository in the parent directory or in the root
directory of the documentation to build the latter with the documented Python docstrings.
## Contribute to the documentation
For contributions to the content of the documentation, please refer to the
[Introduction Guide](https://www.odoo.com/documentation/master/contributing/documentation.html).
[Introduction Guide](https://www.odoo.com/documentation/latest/contributing/documentation.html).
To **report a content issue**, **request new content** or **ask a question**, use the
[repository's issue tracker](https://github.com/odoo/documentation-user/issues) as usual.
[repository's issue tracker](https://github.com/odoo/documentation/issues).
## Learn More
To learn more about Odoo, in addition to the documentation, have a look at
[the official eLearning](https://odoo.com/slides) and
[Scale-up, The Business Game](https://www.odoo.com/page/scale-up-business-game).
[Scale-up, The Business Game](https://www.odoo.com/page/scale-up-business-game).
+1 -1
View File
@@ -16,4 +16,4 @@
# [REM] = Removal
# [REF] = Refactoring (restructuring)
# [MOV] = Move/rename
#
#
+118 -28
View File
@@ -1,11 +1,14 @@
import re
import os
import re
import shutil
import sys
from pathlib import Path
from pygments.lexers import JsonLexer, XmlLexer
from sphinx.util import logging
import docutils
import sphinx
from pygments.lexers import JsonLexer, XmlLexer
from sphinx.ext import graphviz
from sphinx.util import logging
_logger = logging.getLogger(__name__)
@@ -16,10 +19,24 @@ _logger = logging.getLogger(__name__)
project = 'Odoo'
copyright = 'Odoo S.A.'
# `version` if the version info for the project being documented, acts as replacement for |version|,
# `version` is the version info for the project being documented, acts as replacement for |version|,
# also used in various other places throughout the built documents.
# `release` is the full version, including alpha/beta/rc tags. Acts as replacement for |release|.
version = release = 'master'
version = release = 'saas-15.3'
# `current_branch` is the technical name of the current branch.
# E.g., saas-15.4 -> saas-15.4; 12.0 -> 12.0, master -> master (*).
current_branch = version
# `current_version` is the Odoo version linked to the current branch.
# E.g., saas-15.4 -> 15.4; 12.0 -> 12; master -> master (*).
current_version = current_branch.replace('saas-', '').replace('.0', '')
# `current_major_branch` is the technical name of the major branch before the current branch.
# E.g., saas-15.4 -> 15.0; 12.0 -> 12.0; master -> master (*).
current_major_branch = re.sub(r'\.\d', '.0', current_branch.replace('saas-', ''))
# `current_major_version` is the Odoo version linked to the current major branch.
# E.g., saas-15.4 -> 15; 12.0 -> 12; master -> master (*).
current_major_version = current_major_branch.replace('.0', '')
# (*): We don't care for master.
# The minimal Sphinx version required to build the documentation.
needs_sphinx = '3.0.0'
@@ -48,11 +65,25 @@ exclude_patterns = [
# See https://docutils.sourceforge.io/docs/ref/rst/roles.html#standard-roles for other roles.
default_role = 'literal'
# Whether scaled down images should be be wrapped in a `<a/>` tag linking to the image file or not.
html_scaled_image_link = False
# If true, '()' will be appended to :func: etc. cross-reference text
add_function_parentheses = True
#=== Extensions configuration ===#
source_read_replace_vals = {
'BRANCH': current_branch,
'CURRENT_BRANCH': current_branch,
'CURRENT_VERSION': current_version,
'CURRENT_MAJOR_BRANCH': current_major_branch,
'CURRENT_MAJOR_VERSION': current_major_version,
'GITHUB_PATH': f'https://github.com/odoo/odoo/blob/{version}',
'GITHUB_ENT_PATH': f'https://github.com/odoo/enterprise/blob/{version}',
}
# Add extensions directory to PYTHONPATH
extension_dir = Path('extensions')
sys.path.insert(0, str(extension_dir.absolute()))
@@ -74,11 +105,14 @@ if not odoo_sources_dirs:
{'dir_list': '\n'.join([f'\t- {d.resolve()}' for d in odoo_sources_candidate_dirs])},
)
else:
odoo_dir = odoo_sources_dirs[0].resolve()
sys.path.insert(0, str(odoo_dir))
if (3, 6) < sys.version_info < (3, 7):
# Running odoo needs python 3.7 min but monkey patch version_info to be compatible with 3.6
# Running odoo needs python 3.7 min but monkey patch version_info to be compatible with 3.6.
sys.version_info = (3, 7, 0)
odoo_dir = odoo_sources_dirs[0].resolve()
source_read_replace_vals['ODOO_RELPATH'] = '/../' + str(odoo_sources_dirs[0])
sys.path.insert(0, str(odoo_dir))
import odoo.addons
odoo.addons.__path__.append(str(odoo_dir) + '/addons')
from odoo import release as odoo_release # Don't collide with Sphinx's 'release' config option
odoo_version = odoo_release.version.replace('~', '-') # Change saas~XX.Y to saas-XX.Y
odoo_version = 'master' if 'alpha' in odoo_release.version else odoo_version
@@ -98,12 +132,18 @@ else:
)
odoo_dir_in_path = True
# Mapping between odoo models related to master data and the declaration of the
# data. This is used to point users to available xml_ids when giving values for
# a field with the autodoc_field extension.
model_references = {
'account.account.type': 'addons/account/data/data_account_type.xml',
'res.country': 'odoo/addons/base/data/res_country_data.xml',
'res.currency': 'odoo/addons/base/data/res_currency_data.xml',
}
# The Sphinx extensions to use, as module names.
# They can be extensions coming with Sphinx (named 'sphinx.ext.*') or custom ones.
extensions = [
# Parse Python docstrings (autodoc, automodule, autoattribute directives)
'sphinx.ext.autodoc' if odoo_dir_in_path else 'autodoc_placeholder',
# Link sources in other projects (used to build the reference doc)
'sphinx.ext.intersphinx',
@@ -124,6 +164,9 @@ extensions = [
# Content tabs
'sphinx_tabs.tabs',
# Spoilers
'spoilers',
# Strange html domain logic used in memento pages
'html_domain',
]
@@ -133,7 +176,15 @@ if odoo_dir_in_path:
extensions += [
'sphinx.ext.linkcode',
'github_link',
# Parse Python docstrings (autodoc, automodule, autoattribute directives)
'sphinx.ext.autodoc',
'autodoc_field',
]
else:
extensions += [
'autodoc_placeholder',
]
extensions.append('sphinx.ext.graphviz' if shutil.which('dot') else 'graphviz_placeholder')
todo_include_todos = False
@@ -158,8 +209,9 @@ sphinx.transforms.i18n.docname_to_domain = (
# is populated. If a version is passed to `versions` but is not listed here, it will not be shown.
versions_names = {
'master': "Master",
'16.0': "Odoo 16",
'saas-15.3': "Odoo Online",
'saas-15.2': "Odoo Online",
'saas-15.1': "Odoo Online",
'15.0': "Odoo 15",
'14.0': "Odoo 14",
'13.0': "Odoo 13",
@@ -168,18 +220,18 @@ versions_names = {
# The language names that should be shown in the language switcher, if the config option `languages`
# is populated. If a language is passed to `languages` but is not listed here, it will not be shown.
languages_names = {
'de': 'Deutsch',
'en': 'English',
'es': 'Español',
'fr': 'Français',
'nl': 'Nederlands',
'pt_BR': 'Português (BR)',
'uk': 'українська',
'zh_CN': '简体中文',
'de': 'DE',
'en': 'EN',
'es': 'ES',
'fr': 'FR',
'nl': 'NL',
'pt_BR': 'PT',
'uk': 'UA',
'zh_CN': 'ZH',
}
# The specifications of redirect rules used by the redirects extension.
redirects_file = 'redirects.txt'
# The directory in which files holding redirect rules used by the 'redirects' extension are listed.
redirects_dir = 'redirects/'
sphinx_tabs_disable_tab_closing = True
sphinx_tabs_disable_css_loading = True
@@ -203,12 +255,12 @@ html_favicon = os.path.join(html_theme_path[0], html_theme, 'static', 'img', 'fa
# They are copied after the builtin static files, so a file named "default.css" will overwrite the
# builtin "default.css".
html_static_path = ['static']
html_add_permalinks = '' # Sphinx < 3.5
html_permalinks = True # Sphinx >= 3.5
html_permalinks = True
# Additional JS & CSS files that can be imported with the 'custom-js' and 'custom-css' metadata.
# Lists are empty because the files are specified in extensions/themes.
html_js_files = []
html_css_files = ["css/js.css"]
html_css_files = []
# PHP lexer option to not require <?php
highlight_options = {
@@ -226,7 +278,7 @@ latex_elements = {
'tableofcontents': '', # no TOC
# Output manually in latex docs
'releasename': '14.0',
'releasename': release,
}
latex_additional_files = ['static/latex/odoo.sty']
@@ -246,7 +298,7 @@ latex_documents = [
('legal/terms/i18n/partnership_tex_fr',
'odoo_partnership_agreement_fr.tex', 'Odoo Partnership Agreement (FR)', '', 'howto'),
('legal/terms/i18n/terms_of_sale_fr', 'terms_of_sale_fr.tex',
u'Conditions Générales de Vente Odoo', '', 'howto'),
'Conditions Générales de Vente Odoo', '', 'howto'),
('legal/terms/i18n/enterprise_tex_nl', 'odoo_enterprise_agreement_nl.tex',
'Odoo Enterprise Subscription Agreement (NL)', '', 'howto'),
@@ -266,6 +318,21 @@ latex_logo = 'static/img/odoo_logo.png'
# If true, show URL addresses after external links.
latex_show_urls = 'True'
# https://github.com/sphinx-doc/sphinx/issues/4054#issuecomment-329097229
def source_read_replace(app, docname, source):
"""Substitute parts of strings with computed values.
Since the RST substitution is not working everywhere, i.e. in directives'
options, we need to be able to input those values when reading the sources.
This is using the config `source_read_replace_vals`, mapping a name to its
replacement. This will look for the name surrounded by curly braces in the source.
Meant to be connected to the `source-read` event.
"""
result = source[0]
for key in app.config.source_read_replace_vals:
result = result.replace(f"{{{key}}}", app.config.source_read_replace_vals[key])
source[0] = result
def setup(app):
# Generate all alternate URLs for each document
@@ -274,12 +341,34 @@ def setup(app):
app.add_config_value('versions', None, 'env')
app.add_config_value('languages', None, 'env')
app.add_config_value('is_remote_build', None, 'env') # Whether the build is remotely deployed
app.add_config_value('source_read_replace_vals', {}, 'env')
app.connect('source-read', source_read_replace)
app.add_lexer('json', JsonLexer)
app.add_lexer('xml', XmlLexer)
app.connect('html-page-context', _generate_alternate_urls)
# Add a `condition` option on directives to ignore them based on config values
app.add_config_value('odoo_dir_in_path', None, 'env')
def context_eval(expr):
return eval(expr, {confval.name: confval.value for confval in app.config})
def patch(to_patch):
to_patch.option_spec['condition'] = context_eval
original_run = to_patch.run
def new_run(self):
if not self.options.get('condition', True):
return []
return original_run(self)
to_patch.run = new_run
for to_patch in (
sphinx.directives.code.LiteralInclude,
docutils.parsers.rst.directives.tables.CSVTable,
):
patch(to_patch)
def _generate_alternate_urls(app, pagename, templatename, context, doctree):
""" Add keys of required alternate URLs for the current document in the rendering context.
@@ -332,8 +421,9 @@ def _generate_alternate_urls(app, pagename, templatename, context, doctree):
The entry 'language' is added by Sphinx in the rendering context.
"""
_current_lang = app.config.language or 'en'
# Replace the context value by its translated description ("Français" instead of "french")
# Replace the context value by its upper-cased value ("FR" instead of "fr")
context['language'] = languages_names.get(_current_lang)
context['language_code'] = _current_lang
# If the list of languages is not set, assume that the project has no alternate language
_provided_languages = app.config.languages and app.config.languages.split(',') or []
+95 -48
View File
@@ -33,7 +33,7 @@ Editions
========
There are two different Editions_ of Odoo: the Community and Enterprise versions.
Using the Enterprise version is possible on our SaaS_ and accessing the code is
Using the Enterprise version is possible on `Odoo Online`_ and accessing the code is
restricted to Enterprise customers and partners. The Community version is freely
available to anyone.
@@ -55,17 +55,17 @@ around and try things out with no commitment.
Demo_ instances require no local installation, just a web browser.
SaaS
----
Odoo Online
-----------
Trivial to start with, fully managed and migrated by Odoo S.A., Odoo's SaaS_
Trivial to start with, fully managed and migrated by Odoo S.A., `Odoo Online`_
provides private instances and starts out free. It can be used to discover and
test Odoo and do non-code customizations (i.e. incompatible with custom modules
or the Odoo Apps Store) without having to install it locally.
Can be used for both testing Odoo and long-term production use.
Like demo_ instances, SaaS_ instances require no local installation, a web
Like demo_ instances, `Odoo Online`_ instances require no local installation, a web
browser is sufficient.
@@ -151,7 +151,7 @@ Repository
.. code-block:: console
# wget -O - https://nightly.odoo.com/odoo.key | apt-key add -
# echo "deb http://nightly.odoo.com/15.0/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list
# echo "deb http://nightly.odoo.com/{CURRENT_MAJOR_BRANCH}/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list
# apt-get update && apt-get install odoo
You can then use the usual `apt-get upgrade` command to keep your installation up-to-date.
@@ -163,7 +163,7 @@ Repository
.. code-block:: console
$ sudo dnf config-manager --add-repo=https://nightly.odoo.com/15.0/nightly/rpm/odoo.repo
$ sudo dnf config-manager --add-repo=https://nightly.odoo.com/{CURRENT_MAJOR_BRANCH}/nightly/rpm/odoo.repo
$ sudo dnf install -y odoo
$ sudo systemctl enable odoo
$ sudo systemctl start odoo
@@ -183,8 +183,8 @@ Distribution package
<download_>`_.
.. note::
Odoo 15.0 'deb' package currently supports `Debian 11 (Bullseye)`_, `Ubuntu 20.04 (Focal)`_
or above.
Odoo {CURRENT_MAJOR_VERSION} 'deb' package currently supports `Debian 11 (Bullseye)`_,
`Ubuntu 20.04 (Focal)`_ or above.
Next, execute the following commands **as root**:
@@ -224,13 +224,13 @@ Distribution package
<download_>`_.
.. note::
Odoo 15.0 'rpm' package supports Fedora 34.
Odoo {CURRENT_MAJOR_VERSION} 'rpm' package supports Fedora 34.
Once downloaded, the package can be installed using the 'dnf' package manager:
.. code-block:: console
$ sudo dnf localinstall odoo_15.0.latest.noarch.rpm
$ sudo dnf localinstall odoo_{CURRENT_MAJOR_BRANCH}.latest.noarch.rpm
$ sudo systemctl enable odoo
$ sudo systemctl start odoo
@@ -242,9 +242,8 @@ Source install
The source "installation" is really about not installing Odoo, and running it directly from source
instead.
This can be more convenient for module developers as the Odoo source is more easily accessible
than using packaged installation (for information or to build this documentation and have it
available offline).
It can be more convenient for module developers as the Odoo source is more easily accessible than
using packaged installation.
It also makes starting and stopping Odoo more flexible and explicit than the services set up by the
packaged installations, and allows overriding settings using
@@ -272,55 +271,80 @@ Enterprise Edition:
* `Official download page <download_>`_
* `GitHub repository <enterprise-repository_>`_
.. _setup/install/source/git:
Git
~~~
The following requires `git <https://git-scm.com/>`_ to be installed on your machine and that you
have basic knowledge of git commands.
The following requires `Git <git_>`_ to be installed on your machine and that you have basic
knowledge of Git commands. To clone a Git repository, you must choose between cloning with HTTPS or
SSH. If you do not know the difference between the two, the best option is most likely HTTPS. If you
are following the :doc:`Getting started </developer/howtos/rdtraining>` developer tutorial, or plan
on contributing to Odoo source code, choose SSH.
Community Edition:
.. note::
**The Enterprise Git repository does not contain the full Odoo source code**. It is only a
collection of extra add-ons. The main server code is in the Community version. Running the
Enterprise version actually means running the server from the Community version with the
addons-path option set to the folder with the Enterprise version. You need to clone both the
Community and Enterprise repository to have a working Odoo Enterprise installation. See
:ref:`setup/install/editions` to get access to the Enterprise repository.
.. tabs::
.. group-tab:: Windows
.. code-block:: doscon
.. tabs::
C:\> git clone https://github.com/odoo/odoo.git
.. tab:: Clone with HTTPS
.. code-block:: doscon
C:\> git clone https://github.com/odoo/odoo.git
C:\> git clone https://github.com/odoo/enterprise.git
.. tab:: Clone with SSH
.. code-block:: doscon
C:\> git clone git@github.com:odoo/odoo.git
C:\> git clone git@github.com:odoo/enterprise.git
.. group-tab:: Linux
.. code-block:: console
.. tabs::
$ git clone https://github.com/odoo/odoo.git
.. tab:: Clone with HTTPS
.. code-block:: console
$ git clone https://github.com/odoo/odoo.git
$ git clone https://github.com/odoo/enterprise.git
.. tab:: Clone with SSH
.. code-block:: console
$ git clone git@github.com:odoo/odoo.git
$ git clone git@github.com:odoo/enterprise.git
.. group-tab:: Mac OS
.. code-block:: console
.. tabs::
$ git clone https://github.com/odoo/odoo.git
.. tab:: Clone with HTTPS
Enterprise Edition: (see :ref:`setup/install/editions` to get access)
.. code-block:: console
.. tabs::
$ git clone https://github.com/odoo/odoo.git
$ git clone https://github.com/odoo/enterprise.git
.. group-tab:: Windows
.. tab:: Clone with SSH
.. code-block:: doscon
.. code-block:: console
C:\> git clone https://github.com/odoo/enterprise.git
.. group-tab:: Linux
.. code-block:: console
$ git clone https://github.com/odoo/enterprise.git
.. group-tab:: Mac OS
.. code-block:: console
$ git clone https://github.com/odoo/enterprise.git
$ git clone git@github.com:odoo/odoo.git
$ git clone git@github.com:odoo/enterprise.git
.. note::
**The Enterprise git repository does not contain the full Odoo source code**. It is only a
@@ -329,6 +353,8 @@ Enterprise Edition: (see :ref:`setup/install/editions` to get access)
addons-path option set to the folder with the Enterprise version. You need to clone both the
Community and Enterprise repository to have a working Odoo Enterprise installation.
.. _setup/install/source/prepare:
Prepare
-------
@@ -451,6 +477,11 @@ PostgreSQL
<https://postgresapp.com>`_ to download and install PostgreSQL (supported version: 10.0 and
later).
.. tip::
To make the command line tools bundled with `postgres.app` available, make sure to setup your
`$PATH` variable by following the `Postgres.app CLI Tools Instructions
<https://postgresapp.com/documentation/cli-tools.html>`_.
By default, the only user is `postgres` but Odoo forbids connecting as `postgres`, so you need
to create a new PostgreSQL user:
@@ -645,8 +676,8 @@ A typical way to run the server would be:
C:\> python odoo-bin -r dbuser -w dbpassword --addons-path=addons -d mydb
Where `CommunityPath` is the path of the Odoo Community installation, `dbuser` is the
PostgreSQL login, `dbpassword` is the PostgreSQL password and `mydb` is the default database
to serve on `localhost:8069`.
PostgreSQL login, `dbpassword` is the PostgreSQL password, and `mydb` is the name of the
PostgreSQL database.
.. group-tab:: Linux
@@ -655,8 +686,8 @@ A typical way to run the server would be:
$ cd /CommunityPath
$ python3 odoo-bin --addons-path=addons -d mydb
Where `CommunityPath` is the path of the Odoo Community installation and `mydb` is the default
database to serve on `localhost:8069`.
Where `CommunityPath` is the path of the Odoo Community installation, and `mydb` is the name
of the PostgreSQL database.
.. group-tab:: Mac OS
@@ -665,11 +696,27 @@ A typical way to run the server would be:
$ cd /CommunityPath
$ python3 odoo-bin --addons-path=addons -d mydb
Where `CommunityPath` is the path of the Odoo Community installation and `mydb` is the default
database to serve on `localhost:8069`.
Where `CommunityPath` is the path of the Odoo Community installation, and `mydb` is the name
of the PostgreSQL database.
.. warning::
Some versions of python on Mac might lead to the following error message: `current limit
exceeds maximum limit`. In that case, add the following parameter `--limit-memory-hard 0`
to avoid the problem.
After the server has started (the INFO log `odoo.modules.loading: Modules loaded.` is printed), open
http://localhost:8069 in your web browser and log in with the base administrator account: Use
`admin` for the :guilabel:`Email` and, again, `admin` for the :guilabel:`Password`. That's it, you
just logged into your own Odoo database!
.. tip::
- From there, you can create and manage new :doc:`users
</applications/general/users/manage_users>`.
- The user account you use to log into Odoo's web interface differs from the :option:`--db_user
<odoo-bin -r>` CLI argument.
.. seealso::
- :doc:`The exhaustive list of arguments for odoo-bin </developer/misc/other/cmdline>`.
:doc:`The exhaustive list of CLI arguments for odoo-bin </developer/cli>`.
.. _setup/install/docker:
@@ -690,7 +737,7 @@ official Odoo `docker image <https://hub.docker.com/_/odoo/>`_ page.
.. _install pip:
https://pip.pypa.io/en/latest/installing.html#install-pip
.. _Quilt: http://en.wikipedia.org/wiki/Quilt_(software)
.. _saas: https://www.odoo.com/page/start
.. _Odoo Online: https://www.odoo.com/page/start
.. _the wkhtmltopdf download page: https://github.com/wkhtmltopdf/wkhtmltopdf/releases/tag/0.12.5
.. _UAC: http://en.wikipedia.org/wiki/User_Account_Control
.. _wkhtmltopdf: http://wkhtmltopdf.org
+3 -1
View File
@@ -7,9 +7,11 @@ Maintain
.. toctree::
maintain/domain_names
maintain/google_oauth
maintain/mailjet_api
maintain/update
maintain/enterprise
maintain/hosting_changes
maintain/online
maintain/odoo_online
maintain/on_premise
maintain/supported_versions
@@ -17,10 +17,15 @@ You can use a custom domain name to access your Odoo database and websites:
``odoo.com`` for both the URL and the emails (e.g., ``https://example.odoo.com``).
.. important::
Odoo offers a :ref:`free custom domain name <domain-name/odoo-register>` to all Odoo Online
Odoo offers a :ref:`free custom domain name <domain-name/odoo-register>` to all Odoo Online
databases for one year. Visitors can then access your website with an address such as
``www.example.com`` rather than the default ``example.odoo.com``.
.. seealso::
- `Odoo Tutorials: Register a Free Domain Name
<https://www.odoo.com/slides/slide/register-a-free-domain-name-1663>`_
- `Odoo Quick Tips: Get a free domain name! <https://www.youtube.com/watch?v=eAfgeNOHLP4>`_
.. _domain-name/about:
About domain names
@@ -54,6 +59,8 @@ database manager.
registrar.
- You are the owner of the domain name and can use it for other purposes.
- Odoo manages payment and technical support for you.
- This offer doesn't include any mailbox. However, you can :ref:`configure your MX records
<domain-name/odoo-manage>` to use your own email server or solution such as Google Workspace.
To do so, go to :menuselection:`Website --> Go to website --> Promote --> Domain Name`.
Alternatively, open your `database manager <https://www.odoo.com/my/databases>`_, click on the
@@ -118,8 +125,8 @@ that you proceed with the following actions in this order:
Add a CNAME record
------------------
A **CNAME record** is a type of DNS record that points to the IP address of another website rather
than to directly to an IP address.
A **CNAME record** is a type of DNS record that points to the domain of another website rather than
directly to an IP address.
You need a CNAME record that points to your Odoo database. The requirements are detailed in your
database manager.
@@ -144,7 +151,7 @@ database manager.
#. Open the **DNS zone** management page for the domain name you want to configure.
#. Create a **CNAME record** pointing to the address of your database.
While Odoo suggests creating a CNAME record for your ``www.`` subdomain (``www.example.com``, you
While Odoo suggests creating a CNAME record for your ``www.`` subdomain (``www.example.com``), you
can of course use any domain name of your choice, with any subdomain (e.g.,
``anything.example.com``).
@@ -41,7 +41,7 @@ On Linux, using an installer
.. code-block:: console
$ sudo dpkg -i <path_to_enterprise_deb>
* Update your database to the enterprise packages using
.. code-block:: console
@@ -0,0 +1,192 @@
========================================
Connect Gmail to Odoo using Google OAuth
========================================
Odoo is compatible with Google's OAuth for Gmail. In order to send secure emails from a custom
domain, all that is required is to configure a few settings on Google's *Workspace* platform, as
well as on the back end of the Odoo database. This configuration works by using either a personal
email address or an address created by a custom domain.
.. tip::
For more information, visit `Google's documentation
<https://support.google.com/cloud/answer/6158849>`_ on setting up OAuth.
Setup in Google
===============
Create a new project
--------------------
To get started, go to the `Google API Platform
<https://console.cloud.google.com/apis/credentials/consent>`_. Log in with your *Google Workspace*
account if you have one, otherwise log in with your personal Gmail account (this should match the
email address you want to configure in Odoo).
After that, click on :guilabel:`Create Project`, located on the far right of the OAuth consent
screen. If a project has already been created in this account, then the :guilabel:`New Project`
option will be located on the top left under the :guilabel:`Select a project` drop-down menu.
On the :guilabel:`New Project` screen, rename the :guilabel:`Project name` to `Odoo` and browse for
the :guilabel:`Location`. Set the :guilabel:`Location` as the `Google Workspace` organization. If
you are using a personal Gmail account, then leave the :guilabel:`Location` as `No Organization`.
.. image:: google_oauth/new-project.png
:align: center
:alt: Project Name and Location for Google Oauth.
Click on :guilabel:`Create` to finish this step. On the next screen, :guilabel:`User Type` options,
select the :guilabel:`External` option, and then click on :guilabel:`Create` again, which will
finally navigate to the :guilabel:`Edit app registration` page.
Edit app registration
---------------------
- On the :guilabel:`Oauth consent screen` step, under the :guilabel:`App information` section,
enter `Odoo` in the :guilabel:`App name` field. Select the organization's email address under the
:guilabel:`User support` email field.
- Next, under :menuselection:`App Domain --> Authorized domains`, click on :guilabel:`Add Domain`
and enter `odoo.com`.
- After that, under the :guilabel:`Developer contact information` section, enter the organization's
email address. Google uses this email address to notify the organization about any changes to
your project.
- Next, click on the :guilabel:`Save and Continue` button.
- Then, skip the :guilabel:`Scopes` page by scrolling to the bottom and clicking on
:guilabel:`Save and Continue`.
- Next, add the email being configured under the :guilabel:`Test users` step by clicking on
:guilabel:`Add Users` and then the :guilabel:`Save and Continue` button. A summary of the
:guilabel:`App registration` appears.
- Finally, scroll to the bottom and click on :guilabel:`Back to Dashboard`.
Create Credentials
------------------
Now that you have set up the project, you need to create credentials, which includes the
:guilabel:`Client ID` and :guilabel:`Client Secret`. First, click on :guilabel:`Credentials` in the
left sidebar menu.
Then, click on :guilabel:`Create Credentials` in the top menu and select
:guilabel:`OAuth client ID` from the dropdown menu.
- Under :guilabel:`Application Type`, select :guilabel:`Web Application` from the dropdown menu.
- In the :guilabel:`Client ID` field, enter `Odoo`.
- Under the :guilabel:`Authorized redirect URIs` label, click the button :guilabel:`ADD URI`, and
then input `https://yourdbname.odoo.com/google_gmail/confirm` in the :guilabel:`URIs 1` field. Be
sure to replace the *yourdbname* part of the URL with your actual Odoo database name.
- Next, click on :guilabel:`Create` to generate an OAuth :guilabel:`Client ID` and
:guilabel:`Client Secret`. Finally, copy each generated value for later use when configuring in
Odoo, and then navigate to the Odoo database.
.. image:: google_oauth/client-credentials.png
:align: center
:alt: Client ID and Client Secret for Google OAuth.
Setup in Odoo
=============
Enter Google Credentials
------------------------
First, open Odoo and navigate to the :guilabel:`Apps` module. Then, remove the :guilabel:`Apps`
filter from the search bar and type in `Google`. Install the module called :guilabel:`Google Gmail`.
Next, navigate to :menuselection:`Settings --> General Settings`, and under the :guilabel:`Discuss`
section, ensure that the checkbox for :guilabel:`Custom Email Servers` is checked. This populates a
new option for :guilabel:`Gmail Credentials`. Then, copy and paste the :guilabel:`Client ID` and
:guilabel:`Client Secret` into the respective fields and :guilabel:`Save` the settings.
Configure outgoing email server
-------------------------------
After that, on the :guilabel:`General Settings` page, under :guilabel:`Custom Email Servers`, click
:guilabel:`Outgoing Email Servers` to configure the external Gmail account.
.. image:: google_oauth/outgoing-servers.png
:align: center
:alt: Configure Outgoing Email Servers in Odoo.
Then, :guilabel:`Create` a new email server and select the option for :guilabel:`Gmail`. Next, fill
in the :guilabel:`Description` (can be anything) and the email :guilabel:`Username` and click on
:guilabel:`Connect your Gmail account`.
A new window from :guilabel:`Google` opens to complete the authorization process. Select the
appropriate email address that is being configured in Odoo.
If the email address is a personal account, an extra step pops up, click :guilabel:`Continue` to
allow the verification and connect the Gmail account to Odoo.
Then, allow Odoo to access the Google account by clicking on :guilabel:`Continue` or
:guilabel:`Allow`. After that, the page navigates back to the newly configured outgoing email
server in Odoo. The configuration automatically loads the token in Odoo, and a tag stating
:guilabel:`Gmail Token Valid` appears in green.
.. image:: google_oauth/green-token.png
:align: center
:alt: Configure Outgoing Email Servers in Odoo.
Finally, save the settings and :guilabel:`Test the Connection`. A confirmation message should
appear. The Odoo database can now send safe, secure emails through Google using OAuth
authentication.
Google OAuth FAQ
================
Production VS Testing Publishing Status
---------------------------------------
Choosing :guilabel:`Production` as the :guilabel:`Publishing Status` (instead of Testing) will
display the following warning message:
.. image:: google_oauth/published-status.png
:align: center
:alt: OAuth is Limited to 100 Sensitive Scope Logins.
To correct this warning, navigate to the `Google API Platform
<https://console.cloud.google.com/apis/credentials/consent>`_. If the :guilabel:`Publishing status`
is :guilabel:`In Production`, click :guilabel:`Back to Testing` to correct the issue.
No Test Users Added
-------------------
If no test users are added to the OAuth consent screen, then a 403 access denied error will
populate.
.. image:: google_oauth/403-error.png
:align: center
:alt: 403 Access Denied Error.
To correct this error, return to the :guilabel:`OAuth consent screen` under
:guilabel:`APIs & Services` and add test user(s) to the app. Add the email that you are configuring
in Odoo.
Gmail Module not updated
------------------------
If the :guilabel:`Gmail Module` in Odoo has not been updated to the latest version, then a
:guilabel:`Forbidden` error message populates.
.. image:: google_oauth/forbidden-error.png
:align: center
:alt: Forbidden you don't have the permission to access the requested resource.
To correct this error, go to the :guilabel:`Apps` module and clear out the search terms. Then,
search for `Gmail` or `Google` and upgrade the :guilabel:`Google Gmail` module. Finally, click on
the three dots on the upper right of the module and select :guilabel:`Upgrade`.
Application Type
----------------
When creating the :guilabel:`Credentials` (OAuth Client ID and Client Secret), if
:guilabel:`Desktop App` is selected for the :guilabel:`Application Type`, an
:guilabel:`Authorization Error` appears.
.. image:: google_oauth/error-400.png
:align: center
:alt: Error 400 Redirect URI Mismatch.
To correct this error, delete the credentials already created and create new credentials, selecting
:guilabel:`Web Application` for the :guilabel:`Application Type`. Then, under
:guilabel:`Authorized redirect URIs`, click :guilabel:`ADD URI` and type:
`https://yourdbname.odoo.com/google_gmail/confirm` in the field.
.. note::
Replace *yourdbname* in the URL with the Odoo database name.
Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

@@ -11,8 +11,6 @@ Depending on the platforms, you have to do it by yourself or contact our support
From on-premises to Odoo Online
===============================
.. warning:: Odoo Online is not compatible with **non-standard apps**.
1. Create a :ref:`duplicate <duplicate_premise>` of your database: in this duplicate, uninstall all the **non-standard apps**.
2. Grab a "dump with filestore" of your database by using the Database Manager.
3. **If you have time constraints, contact us earlier to schedule the transfer.**
@@ -20,6 +18,11 @@ From on-premises to Odoo Online
5. We will make sure your database is compatible and upload it to our cloud. In case of technical issues, we will get in touch with you.
6. It's done!
.. important::
- Odoo Online is not compatible with **non-standard apps**.
- The database you are moving to Odoo Online must be in a :doc:`supported version
<supported_versions>`.
From on-premises to Odoo.sh
===========================
@@ -45,17 +48,40 @@ From Odoo Online to Odoo.sh
From Odoo.sh to Odoo Online
===========================
.. warning:: Odoo Online is not compatible with **non-standard apps**.
#. Uninstall all the **non-standard apps**.
#. `Create a support ticket <https://www.odoo.com/help>`_ and include the following:
1. Uninstall all the **non-standard apps**: test it in a staging build first, then do it in your production build.
2. **If you have time constraints, contact us earlier to schedule the transfer.**
3. `Create a support ticket <https://www.odoo.com/help>`_ and include your subscription number and the URL you want to use for your database (e.g.: my-company.odoo.com).
4. We will make sure your database is compatible and upload it to our cloud. In case of technical issues, we will get in touch with you.
5. It's done!
- Your subscription number
- The URL you want to use for your database (e.g., `example.odoo.com`)
- Which branch you want to migrate
- In which region you want to be hosted:
- Americas
- Europe
- Asia
- Which user(s) will be the administrator(s)
- When (and in which timezone) you want the database to be up and running
#. We will make sure your database is compatible and upload it to our cloud. In case of technical
issues, we will get in touch with you.
#. All done!
.. important::
- Odoo Online is not compatible with **non-standard apps**.
- Make sure to uninstall all the **non-standard apps** in a staging build before doing it in your
production build.
.. note::
- Make sure you select the **region** that is closest to your users to reduce latency.
- The future **administrator(s)** must have an odoo.com account.
- The specific **date and time** at which you want the database to be up and running are mainly
helpful to organize the switch from the odoo.sh server to the Odoo Online servers.
- Databases are **not reachable** during their migration.
- **If you have time constraints, contact us earlier to schedule the transfer**.
From Odoo.sh to on-premises
===========================
1. Grab a :ref:`backup of your Odoo.sh production database <odoo_sh_branches_backups>`.
2. Restore it from the database manager on your local server.
@@ -0,0 +1,218 @@
===========
Mailjet API
===========
Odoo is compatible with Mailjet's :abbr:`API (Application Programming Interface)` for mass mailing.
Set up a dedicated mass mailing server through Mailjet by configuring settings in the Mailjet
account and the Odoo database. In some circumstances, settings need to be configured on the custom
domain's :abbr:`DNS (Domain Name System)` settings as well.
Set up in Mailjet
=================
Create API credentials
----------------------
To get started, sign in to the `Mailjet Account Information <https://app.mailjet.com/account>`_
page. Next, navigate to the :guilabel:`Senders & Domains` section and click on :guilabel:`SMTP and
SEND API Settings`.
.. image:: mailjet_api/api-settings.png
:align: center
:alt: SMTP and Send API Settings link in the Senders & Domains section of Mailjet.
Then, copy the :abbr:`SMTP (Simple Mail Transfer Protocol)` configuration settings onto a notepad.
They can be found under the :guilabel:`Configuration (SMTP only)` section. The :abbr:`SMTP (Simple
Mail Transfer Protocol)` configuration settings include the server address, the security option
needed (Use :abbr:`SSL (Secure Sockets Layer)`/:abbr:`TLS (Transport Layer Security)`), and the
port number. The settings are needed to configure Mailjet in Odoo, which is covered in the
:ref:`last section <maintain/mailjet-api/odoo-setup>`.
.. seealso::
`Mailjet: How can I configure my SMTP parameters?
<https://documentation.mailjet.com/hc/articles/360043229473>`_
.. important::
Odoo blocks `port 25` on Odoo Online and Odoo.sh databases. :ref:`See reference here
<email_servers/restriction>`.
.. image:: mailjet_api/smtp-config.png
:align: center
:alt: SMTP configuration from Mailjet.
Next, click on the button labeled :guilabel:`Retrieve your API credentials` to retrieve the Mailjet
API credentials.
Then, click on the eye icon to reveal the :guilabel:`API key`. Copy this key to a notepad, as this
serves as the :guilabel:`Username` in the Odoo configuration. Next, click on the
:guilabel:`Generate Secret Key` button to generate the :guilabel:`Secret Key`. Copy this key to a
notepad, as this serves as the :guilabel:`Password` in the Odoo configuration.
Add verified sender address(es)
-------------------------------
The next step is to add a sender address or a domain to the Mailjet account settings so that the
email address or domain is approved to send emails using Mailjet's servers. First, navigate to the
`Mailjet Account Information <https://app.mailjet.com/account>`_ page. Next, click on the
:guilabel:`Add a Sender Domain or Address` link under the :guilabel:`Senders & Domains` section.
.. image:: mailjet_api/add-domain-email.png
:align: center
:alt: Add a sender domain or address in the Mailjet interface.
Determine if a sender's email address or the entire domain needs to be added to the Mailjet
settings. It may be easier to configure the domain as a whole if :abbr:`DNS (Domain Name System)`
access is available. Jump to the :ref:`Add a domain <maintain/mailjet-api/add-domain>` section for
steps on adding the domain.
.. note::
Either all email addresses of the Odoo database users who are sending emails using Mailjet's
servers need to be configured or the domain(s) of the users' email addresses can be configured.
By default, the email address originally set up in the Mailjet account is added as a trusted
sender. To add another email address, click on the button labeled :guilabel:`Add a sender address`.
Then, add the email address that is configured to send from the custom domain.
At minimum the following email addresses should be set up in the provider and verified in Mailjet:
- notifications\@yourdomain.com
- bounce\@yourdomain.com
- catchall\@yourdomain.com
.. note::
Replace `yourdomain` with the custom domain for the Odoo database. If there isn't one, then use
the :guilabel:`mail.catchall.domain` system parameter.
After that, fill out the :guilabel:`Email Information` form, making sure to select the appropriate
email type: transactional email or mass emails. After completing the form, an activation email is
sent to the email address and the trusted sender can be activated.
It is recommended to set up the :abbr:`SPF (Sender Policy Framework)`/:abbr:`DKIM (DomainKeys
Identified Mail)`/:abbr:`DMARC (Domain-based Message Authentication, Reporting, and
Conformance)` settings on the domain of the sender.
.. seealso::
`Mailjet's SPF/DKIM/DMARC documentation <https://documentation.mailjet.com/hc/articles/
360042412734-Authenticating-Domains-with-SPF-DKIM>`_
.. important::
If the database is not using a custom domain, then in order to verify the sender's address, a
temporary alias (of the three email addresses mentioned above) should be set up in Odoo CRM to
create a lead. Then, the database is able to receive the verification email and verify the
accounts.
.. _maintain/mailjet-api/add-domain:
Add a domain
------------
By adding an entire domain to the Mailjet account, all the sender addresses related to that domain
are automatically validated for sending emails using Mailjet servers. First, navigate to the
`Mailjet Account Information <https://app.mailjet.com/account>`_ page. Next, click on
:guilabel:`Add a Sender Domain or Address` link under the :guilabel:`Senders & Domains` section.
Then, click on :guilabel:`Add domain` to add the custom domain.
.. note::
The domain needs to be added to the Mailjet account and then validated through the :abbr:`DNS
(Domain Name System)`.
After that, fill out the :guilabel:`Add a new Domain` page on Mailjet and click
:guilabel:`Continue`.
After adding the domain, a validation page will populate. Unless the Odoo database is on-premise
(in which case, choose :guilabel:`Option 1`), choose :guilabel:`Option 2: Create a DNS Record`.
Copy the TXT record information to a notepad and then navigate to the domain's :abbr:`DNS (Domain
Name System)` provider to complete validation.
.. image:: mailjet_api/host-value-dns.png
:align: center
:alt: The TXT record information to input on the domain's DNS.
Setup in the domain's DNS
~~~~~~~~~~~~~~~~~~~~~~~~~
After getting the TXT record information from the Mailjet account, add a TXT record to the domain's
:abbr:`DNS (Domain Name System)`. This process varies depending on the :abbr:`DNS (Domain Name
System)` provider. Consult the provider for specific configuration processes. The TXT record
information consists of the :guilabel:`Host` and :guilabel:`Value`. Paste these into
the corresponding fields in the TXT record.
Return to Mailjet account information
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
After adding the TXT record to the domain's :abbr:`DNS (Domain Name System)`, navigate back to the
Mailjet account. Then, navigate to :menuselection:`Account Information --> Add a Sender Domain or
Address`, click the gear icon next to :guilabel:`Domain`, and select :guilabel:`Validate`.
This action can also be done by going to the `Sender domains & addresses <https://app.mailjet.com/
account/sender>`_ page on the Mailjet account information and clicking on :guilabel:`Manage`.
Next, click :guilabel:`Check Now` to validate the TXT record that was added on the domain. A
success screen will appear if the domain is configured correctly.
.. image:: mailjet_api/check-dns.png
:align: center
:alt: Check DNS record in Mailjet.
After successfully setting up the domain, there is an option to :guilabel:`Authenticate this domain
(SPF/DKIM)`. This button populates :abbr:`SPF (Sender Policy Framework)` & :abbr:`DKIM (DomainKeys
Identified Mail) records to input into the :abbr:`DNS (Domain Name System)` provider.
.. seealso::
`Mailjet's SPF/DKIM/DMARC documentation <https://documentation.mailjet.com/hc/articles/
360042412734-Authenticating-Domains-with-SPF-DKIM>`_
.. image:: mailjet_api/authenticate.png
:align: center
:alt: Authenticate the domain with SPF/DKIM records in Mailjet.
.. _maintain/mailjet-api/odoo-setup:
Set up in Odoo
==============
To complete the setup, navigate to the Odoo database and go to the :guilabel:`Settings`. With
:ref:`developer-mode` turned on, go to the :menuselection:`Technical Menu --> Email --> Outgoing
Mail Servers`. Then, create a new outgoing server configuration by clicking on the
:guilabel:`Create` button.
Next, input the `SMTP server` (in-v3.mailjet.com), `port number` (587 or 465), and `Security
(SSL/TLS)` that was copied earlier from the Mailjet account. They can also be found `here
<https://app.mailjet.com/account/setup>`_. It is recommended to use :abbr:`SSL (Secure Sockets
Layer)`/:abbr:`TLS (Transport Layer Security)` even though Mailjet may not require it.
For the :guilabel:`Username`, input the :guilabel:`API KEY`. For the :guilabel:`Password`, input
the :guilabel:`SECRET KEY` that was copied from the Mailjet account to the notepad earlier. These
settings can be found on :menuselection:`Mailjet --> Account Settings --> SMTP and SEND API
Settings`.
Then, if the Mailjet server is used for mass emailing, set the :guilabel:`Priority` value higher
than that of any transactional email server(s). Finally, save the settings and :guilabel:`Test the
Connection`.
.. image:: mailjet_api/server-settings.png
:align: center
:alt: Odoo outgoing email server settings.
.. important::
In order for the notifications feature to work using Mailjet, there are three settings that need
to be set in Odoo.
#. The :guilabel:`From Filter` needs to be set on the server configuration. It is recommended
to set it as a domain and not a full email address. It should match the domain in the two
proceeding steps. More information can be referenced :ref:`here
<email_servers/outgoing-email-server>`.
#. The :guilabel:`mail.default.from` system parameter must have the value
`notifications\@yourdomain.com`.
#. The :guilabel:`mail.default.from_filter` system parameter must have the value
`yourdomain.com`. Replace `yourdomain` with the custom domain for the Odoo database. If there
isn't one, then use the :guilabel:`mail.catchall.domain` system parameter.
For more information see :ref:`Using a default email address <email_domain/default>`.
The :guilabel:`System Parameters` can be accessed by activating
:doc:`../../applications/general/developer_mode` in the :menuselection:`Settings --> Technical
--> Parameters --> System Parameters` menu.
Once the setup is complete, the Odoo database is ready to use the Mailjet email server for mass
mailing or transactional emails!
Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

@@ -1,18 +1,18 @@
=================================
Online (SaaS) database management
=================================
===============================
Odoo Online database management
===============================
To manage a database, sign in to https://www.odoo.com and access the `database management page
<https://www.odoo.com/my/databases>`_ by clicking on the user icon, then on *My Databases*.
.. image:: online/my-databases.png
.. image:: odoo_online/my-databases.png
:align: center
:alt: Clicking on the user icon opens a drop-down menu. "My databases" button is highlighted.
.. note::
Make sure you are connected as the administrator of the database you want to manage.
.. image:: online/dropdown-menu.png
.. image:: odoo_online/dropdown-menu.png
:align: right
:alt: Clicking on the gear icon opens the drop-down menu.
@@ -20,17 +20,17 @@ Open the drop-down menu next to the database you want to manage by clicking on t
Several actions are available:
- :ref:`online/upgrade`
- :ref:`online/duplicate`
- :ref:`online/rename`
- :ref:`online/download`
- :ref:`online/domains`
- :ref:`online/tags`
- :ref:`online/delete`
- :ref:`online/contact-support`
- :ref:`online/users`
- :ref:`odoo_online/upgrade`
- :ref:`odoo_online/duplicate`
- :ref:`odoo_online/rename`
- :ref:`odoo_online/download`
- :ref:`odoo_online/domains`
- :ref:`odoo_online/tags`
- :ref:`odoo_online/delete`
- :ref:`odoo_online/contact-support`
- :ref:`odoo_online/users`
.. _online/upgrade:
.. _odoo_online/upgrade:
Upgrade
=======
@@ -56,7 +56,7 @@ upgrade to the latest version (e.g., 13.0 to 15.1).
- :doc:`../upgrade`
- :doc:`supported_versions`
.. _online/duplicate:
.. _odoo_online/duplicate:
Duplicate
=========
@@ -69,14 +69,14 @@ operations.
orders, etc.) are disabled by default on the duplicated database.
- Duplicate databases expire automatically after 15 days.
.. _online/rename:
.. _odoo_online/rename:
Rename
======
Rename the database and its URL.
.. _online/download:
.. _odoo_online/download:
Download
========
@@ -87,7 +87,7 @@ Download instantly a ZIP file with a backup of the database.
Databases are backed up daily according to the `Odoo Cloud SLA
<https://www.odoo.com/cloud-sla>`_.
.. _online/domains:
.. _odoo_online/domains:
Domains
=======
@@ -97,14 +97,14 @@ Configure custom domains to access the database via another URL.
.. seealso::
- :doc:`domain_names`
.. _online/tags:
.. _odoo_online/tags:
Tags
====
Add tags to sort your databases out. You can search the tags in the search bar.
.. _online/delete:
.. _odoo_online/delete:
Delete
======
@@ -118,7 +118,7 @@ Delete a database instantly.
Read carefully the warning message that pops up and proceed only if you fully understand the
implications of deleting a database:
.. image:: online/delete.png
.. image:: odoo_online/delete.png
:align: center
:alt: A warning message is prompted before deleting a database.
@@ -129,7 +129,7 @@ implications of deleting a database:
needed, please get in touch with `Odoo Support <https://www.odoo.com/help>`_.
- To delete your account, please get in touch with `Odoo Support <https://www.odoo.com/help>`_.
.. _online/contact-support:
.. _odoo_online/contact-support:
Contact Support
===============
@@ -137,7 +137,7 @@ Contact Support
Access the Odoo `support page <https://www.odoo.com/help>`_ with your database's details already
pre-filled.
.. _online/users:
.. _odoo_online/users:
Invite / Remove Users
=====================
@@ -145,7 +145,7 @@ Invite / Remove Users
To invite users, fill out the email address of the new user and click on *Invite*. To add multiple
users, click on *Add more users*.
.. image:: online/invite-users.png
.. image:: odoo_online/invite-users.png
:align: center
:alt: Clicking on "Add more users" adds additional email fields.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 9.6 KiB

@@ -8,8 +8,9 @@ Supported versions
Odoo provides support and bug fixing **for the 3 last major versions** of Odoo.
.. note::
Odoo releases intermediary versions called **Online versions** on the :doc:`Odoo Online <online>`
hosting every two months. Odoo Online users can then benefit from the latest features of Odoo.
Odoo releases intermediary versions called **Online versions** on the :doc:`Odoo Online
<odoo_online>` hosting every two months. Odoo Online users can then benefit from the latest
features of Odoo.
- Admins of Odoo Online databases are invited to :doc:`upgrade <../upgrade>` them regularly.
- Online versions are *not* released for Odoo.sh and On-Premise installations.
@@ -25,6 +26,8 @@ This matrix shows the support status of every version.
+-----------------+-------------+----------+-------------+----------------+------------------------+
| | Odoo Online | Odoo.sh | On-Premise | Release date | End of support |
+=================+=============+==========+=============+================+========================+
| **Odoo 16.0** | |green| | |green| | |green| | October 2022 | October 2025 (planned) |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo saas~15.2 | |green| | N/A | N/A | March 2022 | |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo saas~15.1 | |red| | N/A | N/A | February 2022 | |
@@ -33,7 +36,7 @@ This matrix shows the support status of every version.
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 14.0** | |green| | |green| | |green| | October 2020 | October 2023 (planned) |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 13.0** | |green| | |green| | |green| | October 2019 | October 2022 (planned) |
| **Odoo 13.0** | |red| | |red| | |red| | October 2019 | October 2022 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo saas~12.3 | |red| | N/A | N/A | August 2019 | |
+-----------------+-------------+----------+-------------+----------------+------------------------+
@@ -68,14 +71,13 @@ This matrix shows the support status of every version.
🏁 Future version, not released yet
.. This is an awful way to display colored circles but "Large Green Circle Emoji" was only released
in 2019 (see https://unicode-table.com/en/1F7E2/). Let's wait a few more years...
.. |green| raw:: html
.. |green| image:: data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMzIuMTkgMjMyLjE5Ij48Y2lyY2xlIGN4PSIxMTYuMDkiIGN5PSIxMTYuMDkiIHI9IjExNi4wOSIgc3R5bGU9ImZpbGw6IzAwYTcwMCIvPjwvc3ZnPg==
:width: 15
<span class="text-success" style="font-size: 32px; line-height: 0.5">●</span>
.. |red| image:: data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMzIuMTkgMjMyLjE5Ij48Y2lyY2xlIGN4PSIxMTYuMDkiIGN5PSIxMTYuMDkiIHI9IjExNi4wOSIgc3R5bGU9ImZpbGw6I2QwMDAwMCIvPjwvc3ZnPg==
:width: 15
.. |red| raw:: html
<span class="text-danger" style="font-size: 32px; line-height: 0.5">●</span>
I run an older version of Odoo/OpenERP/TinyERP
==============================================
@@ -17,7 +17,7 @@ The platform will take care to install these dependencies in your containers.
`The pip requirements specifiers <https://pip.pypa.io/en/stable/reference/pip_install/#requirement-specifiers>`_
documentation can help you write a :file:`requirements.txt` file.
To have a concrete example,
check out the `requirements.txt file of Odoo <https://github.com/odoo/odoo/blob/14.0/requirements.txt>`_.
check out the `requirements.txt file of Odoo <{GITHUB_PATH}/requirements.txt>`_.
The :file:`requirements.txt` files of submodules are taken into account as well. The platform
looks for :file:`requirements.txt` files in each folder containing Odoo modules: Not in the module folder itself,
@@ -167,16 +167,16 @@ In the above commands, the argument:
* ``--stop-after-init`` will immediately shutdown the server instance after it completed the operations you asked.
More options are available and detailed in the
:doc:`CLI documentation </developer/misc/other/cmdline>`.
:doc:`CLI documentation </developer/cli>`.
You can find in the logs (*~/logs/odoo.log*) the addons path used by Odoo.sh to run your server.
Look for "*odoo: addons paths*":
::
2018-02-19 10:51:39,267 4 INFO ? odoo: Odoo version 13.0
2018-02-19 10:51:39,267 4 INFO ? odoo: Odoo version {BRANCH}
2018-02-19 10:51:39,268 4 INFO ? odoo: Using configuration file at /home/odoo/.config/odoo/odoo.conf
2018-02-19 10:51:39,268 4 INFO ? odoo: addons paths: ['/home/odoo/data/addons/13.0', '/home/odoo/src/user', '/home/odoo/src/enterprise', '/home/odoo/src/themes', '/home/odoo/src/odoo/addons', '/home/odoo/src/odoo/odoo/addons']
2018-02-19 10:51:39,268 4 INFO ? odoo: addons paths: ['/home/odoo/data/addons/{BRANCH}', '/home/odoo/src/user', '/home/odoo/src/enterprise', '/home/odoo/src/themes', '/home/odoo/src/odoo/addons', '/home/odoo/src/odoo/odoo/addons']
**Be careful**, especially with your production database.
Operations that you perform running this Odoo server instance are not isolated:
@@ -232,6 +232,6 @@ Save the file and then run the Odoo Shell:
Finally, *via* the Odoo Shell, you can trigger the piece of code/function/method
you want to debug.
.. image:: ./media/pdb_sh.png
.. image:: containers/pdb_sh.png
:align: center
:alt: Console screenshot showing ``pdb`` running in an Odoo.sh shell.

Before

Width:  |  Height:  |  Size: 72 KiB

After

Width:  |  Height:  |  Size: 72 KiB

@@ -29,4 +29,3 @@ We advise that:
- Your scheduled actions should be
`idempotent <https://stackoverflow.com/a/1077421/3332416>`_: they must not
cause side-effects if they are started more often than expected.
@@ -44,7 +44,7 @@ On Odoo.sh, in the branches view of your project, choose the branch in which you
In the upper right corner, click on the *Submodule* button, and then on *Run*.
.. image:: ./media/advanced-submodules-button.png
.. image:: submodules/advanced-submodules-button.png
:align: center
A dialog with a form is shown. Fill the inputs as follows:
@@ -53,12 +53,12 @@ A dialog with a form is shown. Fill the inputs as follows:
* Branch: The branch you want to use.
* Path: The folder in which you want to add this submodule in your branch.
.. image:: ./media/advanced-submodules-dialog.png
.. image:: submodules/advanced-submodules-dialog.png
:align: center
On Github, you can get the repository URL with the *Clone or download* button of the repository. Make sure to *use SSH*.
.. image:: ./media/advanced-submodules-github-sshurl.png
.. image:: submodules/advanced-submodules-github-sshurl.png
:align: center
.. _odoosh-advanced-submodules-withgit:
@@ -8,7 +8,7 @@ Overview
The branches view gives you an overview of the different branches your repository has.
.. image:: ./media/interface-branches.png
.. image:: branches/interface-branches.png
:align: center
.. _odoosh-gettingstarted-branches-stages:
@@ -20,7 +20,7 @@ Odoo.sh offers three different stages for your branches: production, staging and
You can change the stage of a branch by drag and dropping it into the stage section title.
.. image:: ./media/interface-branches-stagechange.png
.. image:: branches/interface-branches-stagechange.png
:align: center
.. _stage_production:
@@ -42,7 +42,7 @@ instance will be held temporarily unavailable for maintenance reason.
This method is equivalent to perform an upgrade of the module through the Apps menu,
or through the :code:`-u` switch of
:doc:`the command line </developer/misc/other/cmdline>`.
:doc:`the command line </developer/cli>`.
In the case the changes in the commit prevent the server to restart,
or if the modules update fails,
@@ -109,7 +109,7 @@ Merging your branches
---------------------
You can merge your branches easily by drag and dropping them into each other.
.. image:: ./media/interface-branches-merge.png
.. image:: branches/interface-branches-merge.png
:align: center
When you want to test the changes of your development branches with the production data,
@@ -156,7 +156,7 @@ An overview of your branch history:
* The messages of the commits and their authors,
* The various events linked to the platform, such as stage changes, database imports, backup restores.
.. image:: ./media/interface-branches-history.png
.. image:: branches/interface-branches-history.png
:align: center
For each event, a status is displayed in the top right-hand corner.
@@ -172,7 +172,7 @@ This tab contains the mail catcher. It displays an overview of the emails sent b
The mail catcher is available for your development and
staging branches as the emails of your production database are really sent instead of being intercepted.
.. image:: ./media/interface-branches-mails.png
.. image:: branches/interface-branches-mails.png
:align: center
:scale: 50%
@@ -181,7 +181,7 @@ Shell
A shell access to your container. You can perform basic linux commands (:code:`ls`, :code:`top`)
and open a shell on your database by typing :code:`psql`.
.. image:: ./media/interface-branches-shell.png
.. image:: branches/interface-branches-shell.png
:align: center
You can open multiple tabs and drag-and-drop them to arrange the layout as you wish,
@@ -197,7 +197,7 @@ Editor
An online integrated development environment (IDE) to edit the source code.
You can also open terminals, Python consoles and even Odoo Shell consoles.
.. image:: ./media/interface-branches-editor.png
.. image:: branches/interface-branches-editor.png
:align: center
You can open multiple tabs and drag-and-drop them to arrange the layout as you wish,
@@ -207,7 +207,7 @@ Monitoring
----------
This link contains various monitoring metrics of the current build.
.. image:: ./media/interface-branches-monitoring.png
.. image:: branches/interface-branches-monitoring.png
:align: center
You can zoom, change the time range or select a specific metric on each graph.
@@ -219,7 +219,7 @@ Logs
----
A viewer to have a look to your server logs.
.. image:: ./media/interface-branches-logs.png
.. image:: branches/interface-branches-logs.png
:align: center
Different logs are available:
@@ -243,7 +243,7 @@ Backups
A list of the backups available for download and restore, the ability to perform a manual backup and to import a
database.
.. image:: ./media/interface-branches-backups.png
.. image:: branches/interface-branches-backups.png
:align: center
Odoo.sh makes daily backups of the production database. It keeps 7 daily, 4 weekly and 3 monthly backups.
@@ -259,16 +259,16 @@ This server only keeps one month of backups: 7 daily and 4 weekly backups.
Dedicated backup servers keep the same backups, as well as 3 additional monthly backups.
To restore or download one of these monthly backups, please `contact us <https://www.odoo.com/help>`_.
If you merge a commit updating the version of one or several modules (in :file:`__manifest__.py`), or their linked python
dependencies (in :file:`requirements.txt`), then Odoo.sh performs a backup automatically (flagged with type Update in the list),
as either the container will be changed by the installation of new pip packages, either the database itself will be
changed with the module update triggered afterwards. In these two cases, we are doing a backup as it may potentially
If you merge a commit updating the version of one or several modules (in :file:`__manifest__.py`), or their linked python
dependencies (in :file:`requirements.txt`), then Odoo.sh performs a backup automatically (flagged with type Update in the list),
as either the container will be changed by the installation of new pip packages, either the database itself will be
changed with the module update triggered afterwards. In these two cases, we are doing a backup as it may potentially
break things.
If you merge a commit that only changes some code without the above-mentioned modifications, then no backup is done
by Odoo.sh, as neither the container nor the database is modified so the platform considers this safe enough. Of course,
as an extra precaution, you can make a backup manually before making big changes in your production sources in case
something goes wrong (those manual backups are available for about one week). To avoid abuse, we limit manual backups
If you merge a commit that only changes some code without the above-mentioned modifications, then no backup is done
by Odoo.sh, as neither the container nor the database is modified so the platform considers this safe enough. Of course,
as an extra precaution, you can make a backup manually before making big changes in your production sources in case
something goes wrong (those manual backups are available for about one week). To avoid abuse, we limit manual backups
to 5 per day.
The *import database* feature accepts database archives in the format provided by:
@@ -279,13 +279,24 @@ The *import database* feature accepts database archives in the format provided b
* the Odoo.sh backup download button of this *Backups* tab,
* the Odoo.sh dump download button in the :ref:`Builds view <odoosh-gettingstarted-builds>`.
.. _odoo_sh/upgrade:
Upgrade
-------
Available for production and staging branches for valid projects.
.. seealso::
:doc:`Upgrade - Odoo.sh <../../upgrade/odoo_sh>`
.. _odoosh-gettingstarted-branches-tabs-settings:
Settings
--------
Here you can find a couple of settings that only apply to the currently selected branch.
.. image:: ./media/interface-branches-settings.jpg
.. image:: branches/interface-branches-settings.jpg
:align: center
**Behaviour upon new commit**
@@ -302,7 +313,7 @@ back from staging to development will automatically be set to 'Do nothing'.
Choose the modules to install automatically for your development builds.
.. image:: ./media/interface-settings-modulesinstallation.png
.. image:: branches/interface-settings-modulesinstallation.png
:align: center
* *Install only my modules* will install the modules of the branch only. This is the default option.
@@ -384,7 +395,7 @@ we are considering the feature if there is enough demand.
In case the domain of your users email addresses use SPF (Sender Policy Framework) or DKIM
(DomainKeys Identified Mail), don't forget to authorize Odoo as a sending host in your domain name
settings to increase the deliverability of your outgoing emails.
The configuration steps are explained in the documentation about :ref:`SPF
The configuration steps are explained in the documentation about :ref:`SPF
<email_communication/spf_compliant>` and :ref:`DKIM <email_communication/dkim_compliant>`.
@@ -397,7 +408,7 @@ Shell commands
==============
In the top right-hand corner of the view, different shell commands are available.
.. image:: ./media/interface-branches-shellcommands.png
.. image:: branches/interface-branches-shellcommands.png
:align: center
Each command can be copied in the clipboard to be used in a terminal,
@@ -466,12 +477,12 @@ To do so, follow these steps:
(only apply the step 1)
#. Paste the copied content to your profile SSH keys and press "Add"
.. image:: ./media/SSH-key-pasting.png
.. image:: branches/SSH-key-pasting.png
:align: center
#. The key should appear below
.. image:: ./media/SSH-key-appearing.png
.. image:: branches/SSH-key-appearing.png
:align: center
Connection
@@ -485,7 +496,7 @@ To connect to your builds using ssh use the following command in a terminal:
You will find a shortcut for this command into the SSH tab in the upper right corner.
.. image:: ./media/SSH-panel.png
.. image:: branches/SSH-panel.png
:align: center
Provided you have the :ref:`correct access rights <odoosh-gettingstarted-settings-collaborators>` on the project,

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

@@ -13,7 +13,7 @@ In Odoo.sh, a build is considered as a database loaded by an Odoo server
running on a specific revision of your project repository in a containerized environment.
Its purpose is to test the well-behavior of the server, the database and the features with this revision.
.. image:: ./media/interface-builds.png
.. image:: builds/interface-builds.png
:align: center
In this view, a row represents a branch, and a cell of a row represents a build of this branch.
@@ -95,7 +95,7 @@ Features
The production branch will always appear first,
and then the other branches are ordered by last build created. You can filter out the branches.
.. image:: ./media/interface-builds-branches.png
.. image:: builds/interface-builds-branches.png
:align: center
For each branch, you can access the last build's database using the *Connect* link and jump to the branch code using
@@ -103,7 +103,7 @@ the *Github* link. For other branches than the production, you can create a new
of the branch using the link *rebuild*. This last link is not available when there is already a build in progress for
the branch.
.. image:: ./media/interface-builds-build.png
.. image:: builds/interface-builds-build.png
:align: center
For each build, you can access the revision changes using the button with the Github icon.
@@ -113,7 +113,7 @@ in the dropdown menu of the *Connect* button.
.. _odoosh-gettingstarted-builds-download-dump:
.. image:: ./media/interface-builds-build-dropdown.png
.. image:: builds/interface-builds-build-dropdown.png
:align: center
.. _odoosh-gettingstarted-builds-dropdown-menu:

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

@@ -10,7 +10,7 @@ Deploy your platform
Go to `Odoo.sh <https://www.odoo.sh/>`_ and hit the *Deploy your platform* button.
.. image:: ./media/deploy.png
.. image:: create/deploy.png
:align: center
Sign in with Github
@@ -18,7 +18,7 @@ Sign in with Github
Sign in with your Github account. If you do not have an account yet, hit the *Create an account* link.
.. image:: ./media/github-signin.png
.. image:: create/github-signin.png
:align: center
Authorize Odoo.sh
@@ -26,7 +26,7 @@ Authorize Odoo.sh
Grant Odoo.sh the required accesses to your account by clicking the *Authorize* button.
.. image:: ./media/github-authorize.png
.. image:: create/github-authorize.png
:align: center
Odoo.sh basically needs:
@@ -62,7 +62,7 @@ When submitting the form, if you are notified your subscription is not valid, it
In case of doubt with your subscription, please contact the `Odoo support <https://www.odoo.com/help>`_.
.. image:: ./media/deploy-form.png
.. image:: create/deploy-form.png
:align: center
You're done !
@@ -70,7 +70,7 @@ You're done !
You can start using Odoo.sh. Your first build is about to be created. You will soon be able to connect to your first database.
.. image:: ./media/deploy-done.png
.. image:: create/deploy-done.png
:align: center
.. _odoo_sh_import_your_database:
@@ -113,12 +113,12 @@ Access the URL :file:`/web/database/manager` of your on-premise database and dow
You will need the master password of your database server. If you do not have it, contact your system administrator.
.. image:: ./media/create-import-onpremise-backup.png
.. image:: create/create-import-onpremise-backup.png
:align: center
Choose a zip including the filestore as the backup format.
.. image:: ./media/create-import-onpremise-backup-dialog.png
.. image:: create/create-import-onpremise-backup-dialog.png
:align: center
Odoo Online databases
@@ -126,24 +126,24 @@ Odoo Online databases
`Access your databases manager <https://accounts.odoo.com/my/databases/manage>`_ and download a backup of your database.
.. image:: ./media/create-import-online-backup.png
.. image:: create/create-import-online-backup.png
:align: center
.. Warning::
Saas releases (e.g. *saas-**) are not supported on Odoo.sh.
Online versions (e.g. *saas-**) are not supported on Odoo.sh.
Upload the backup
-----------------
Then, in your Odoo.sh project, in the backups tab of your production branch, import the backup you just downloaded.
.. image:: ./media/create-import-production.png
.. image:: create/create-import-production.png
:align: center
Once the backup imported, you can access the database using the *Connect* button in the history of the branch.
.. image:: ./media/create-import-production-done.png
.. image:: create/create-import-production-done.png
:align: center
Check your outgoing email servers

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

@@ -1,14 +1,14 @@
==================================
=================
Your first module
==================================
=================
Overview
========
This chapter helps you to create your first Odoo module and deploy it in your Odoo.sh project.
This tutorial requires :ref:`you created a project on Odoo.sh <odoosh-gettingstarted-create>`, and you know your Github repository's URL.
This tutorial requires :ref:`you created a project on Odoo.sh <odoosh-gettingstarted-create>`, and
you know your Github repository's URL.
Basic use of Git and Github is explained.
@@ -37,20 +37,20 @@ In the branches view:
|pic1| |pic2|
.. |pic1| image:: ./media/firstmodule-development-+.png
.. |pic1| image:: first_module/firstmodule-development-+.png
:width: 45%
.. |pic2| image:: ./media/firstmodule-development-fork.png
.. |pic2| image:: first_module/firstmodule-development-fork.png
:width: 45%
Once the build created, you can access the editor and browse to the folder *~/src/user* to access
to the code of your development branch.
.. image:: ./media/firstmodule-development-editor.png
.. image:: first_module/firstmodule-development-editor.png
:align: center
.. image:: ./media/firstmodule-development-editor-interface.png
.. image:: first_module/firstmodule-development-editor-interface.png
:align: center
From your computer
@@ -95,8 +95,8 @@ Or, from your computer, if you have an :ref:`installation of Odoo <setup/install
$ ./odoo-bin scaffold my_module ~/src/odoo-addons/
If you do not want to bother installing Odoo on your computer,
you can also :download:`download this module structure template <media/my_module.zip>` in which you replace every occurrences of
*my_module* to the name of your choice.
you can also :download:`download this module structure template <first_module/my_module.zip>` in
which you replace every occurrences of *my_module* to the name of your choice.
The below structure will be generated:
@@ -121,9 +121,9 @@ The below structure will be generated:
.. Warning::
Do not use special characters other than the underscore ( _ ) for your module name, not even an hyphen ( - ).
This name is used for the Python classes of your module,
and having classes name with special characters other than the underscore is not valid in Python.
Do not use special characters other than the underscore ( _ ) for your module name, not even an
hyphen ( - ). This name is used for the Python classes of your module, and having classes name
with special characters other than the underscore is not valid in Python.
Uncomment the content of the files:
@@ -180,8 +180,8 @@ The above command is explained in the section
<odoosh-gettingstarted-online-editor-push>` of the
:ref:`Online Editor <odoosh-gettingstarted-online-editor>`
chapter.
It includes the explanation regarding the fact you will be prompted to type your username and password,
and what to do if you use the two-factor authentication.
It includes the explanation regarding the fact you will be prompted to type your username and
password, and what to do if you use the two-factor authentication.
Or, from your computer terminal:
@@ -201,23 +201,24 @@ Test your module
Your branch should appear in your development branches in your project.
.. image:: ./media/firstmodule-test-branch.png
.. image:: first_module/firstmodule-test-branch.png
:align: center
In the branches view of your project,
you can click on your branch name in the left navigation panel to access its history.
.. image:: ./media/firstmodule-test-branch-history.png
.. image:: first_module/firstmodule-test-branch-history.png
:align: center
You can see here the changes you just pushed, including the comment you set.
Once the database ready, you can access it by clicking the *Connect* button.
.. image:: ./media/firstmodule-test-database.png
.. image:: first_module/firstmodule-test-database.png
:align: center
If your Odoo.sh project is configured to install your module automatically,
you will directly see it amongst the database apps. Otherwise, it will be available in the apps to install.
you will directly see it amongst the database apps. Otherwise, it will be available in the apps to
install.
You can then play around with your module, create new records and test your features and buttons.
@@ -232,22 +233,23 @@ you can test it with the production data using a staging branch.
You can either:
* Make your development branch a staging branch, by drag and dropping it onto the *staging* section title.
* Make your development branch a staging branch, by drag and dropping it onto the *staging* section
title.
.. image:: ./media/firstmodule-test-devtostaging.png
.. image:: first_module/firstmodule-test-devtostaging.png
:align: center
* Merge it in an existing staging branch, by drag and dropping it onto the given staging branch.
.. image:: ./media/firstmodule-test-devinstaging.png
.. image:: first_module/firstmodule-test-devinstaging.png
:align: center
You can also use the :code:`git merge` command to merge your branches.
This will create a new staging build, which will duplicate the production database and make it run using a server
updated with your latest changes of your branch.
This will create a new staging build, which will duplicate the production database and make it run
using a server updated with your latest changes of your branch.
.. image:: ./media/firstmodule-test-mergedinstaging.png
.. image:: first_module/firstmodule-test-mergedinstaging.png
:align: center
Once the database ready, you can access it using the *Connect* button.
@@ -257,22 +259,24 @@ Once the database ready, you can access it using the *Connect* button.
Install your module
-------------------
Your module will not be installed automatically, you have to install it from the apps menu.
Indeed, the purpose of the staging build is to test the behavior of your changes as it would be on your production,
and on your production you would not like your module to be installed automatically, but on demand.
Your module will not be installed automatically, you have to install it from the apps menu. Indeed,
the purpose of the staging build is to test the behavior of your changes as it would be on your
production, and on your production you would not like your module to be installed automatically, but
on demand.
Your module may not appear directly in your apps to install either, you need to update your apps list first:
Your module may not appear directly in your apps to install either, you need to update your apps
list first:
* Activate the :ref:`developer mode <developer-mode>`
* in the apps menu, click the *Update Apps List* button,
* in the dialog that appears, click the *Update* button.
.. image:: ./media/firstmodule-test-updateappslist.png
.. image:: first_module/firstmodule-test-updateappslist.png
:align: center
Your module will then appear in the list of available apps.
.. image:: ./media/firstmodule-test-mymoduleinapps.png
.. image:: first_module/firstmodule-test-mymoduleinapps.png
:align: center
Deploy in production
@@ -283,7 +287,7 @@ and believe it is ready for production, you can merge your branch in the product
Drag and drop your staging branch on the production branch.
.. image:: ./media/firstmodule-test-mergeinproduction.png
.. image:: first_module/firstmodule-test-mergeinproduction.png
:align: center
You can also use the :code:`git merge` command to merge your branches.
@@ -291,7 +295,7 @@ You can also use the :code:`git merge` command to merge your branches.
This will merge the latest changes of your staging branch in the production branch,
and update your production server with these latest changes.
.. image:: ./media/firstmodule-test-mergedinproduction.png
.. image:: first_module/firstmodule-test-mergedinproduction.png
:align: center
Once the database ready, you can access it using the *Connect* button.
@@ -307,14 +311,16 @@ you have to install it manually as explained in the
Add a change
============
This section explains how to add a change in your module by adding a new field in a model and deploy it.
This section explains how to add a change in your module by adding a new field in a model and deploy
it.
From the Odoo.sh editor,
* browse to your module folder *~/src/user/my_module*,
* then, open the file *models/models.py*.
Or, from your computer,
* use the file browser of your choice to browse to your module folder *~/src/odoo-addons/my_module*,
* use the file browser of your choice to browse to your module folder
*~/src/odoo-addons/my_module*,
* then, open the file *models/models.py* using the editor of your choice,
such as *Atom*, *Sublime Text*, *PyCharm*, *vim*, ...
@@ -350,8 +356,8 @@ and modify a view stored in database.
In order to be applied in existing databases, such as your production database,
these changes requires the module to be updated.
If you would like the update to be performed automatically by the Odoo.sh platform when you push your changes,
increase your module version in its manifest.
If you would like the update to be performed automatically by the Odoo.sh platform when you push
your changes, increase your module version in its manifest.
Open the module manifest *__manifest__.py*.
@@ -367,7 +373,8 @@ with
'version': '0.2',
The platform will detect the change of version and trigger the update of the module upon the new revision deployment.
The platform will detect the change of version and trigger the update of the module upon the new
revision deployment.
Browse to your Git folder.
@@ -411,13 +418,13 @@ Or, from your computer terminal:
The platform will then create a new build for the branch *feature-1*.
.. image:: ./media/firstmodule-test-addachange-build.png
.. image:: first_module/firstmodule-test-addachange-build.png
:align: center
Once you tested your changes, you can merge your changes in the production branch, for instance by drag-and-dropping the
branch on the production branch in the Odoo.sh interface. As you increased the module version in the manifest,
the platform will update the module automatically and your new field will be directly available.
Otherwise you can manually update the module within the apps list.
Once you tested your changes, you can merge your changes in the production branch, for instance by
drag-and-dropping the branch on the production branch in the Odoo.sh interface. As you increased the
module version in the manifest, the platform will update the module automatically and your new field
will be directly available. Otherwise you can manually update the module within the apps list.
Use an external Python library
==============================
@@ -425,10 +432,18 @@ Use an external Python library
If you would like to use an external Python library which is not installed by default,
you can define a *requirements.txt* file listing the external libraries your modules depends on.
.. note::
- It is not possible to install or upgrade system packages on an Odoo.sh database (e.g., apt
packages). However, under specific conditions, packages can be considered for installation.
This also applies to **Python modules** requiring system packages for their compilation, and
**third-party Odoo modules**.
- **PostgreSQL extensions** are not supported on Odoo.sh.
- For more information, consult our `FAQ <https://www.odoo.sh/faq#install_dependencies>`_.
The platform will use this file to automatically install the Python libraries your project needs.
The feature is explained in this section by using the `Unidecode library <https://pypi.python.org/pypi/Unidecode>`_ in
your module.
The feature is explained in this section by using the `Unidecode library
<https://pypi.python.org/pypi/Unidecode>`_ in your module.
Create a file *requirements.txt* in the root folder of your repository
@@ -442,8 +457,8 @@ Add
unidecode
Then use the library in your module, for instance to remove accents from characters in the name field of your
model.
Then use the library in your module, for instance to remove accents from characters in the name
field of your model.
Open the file *models/models.py*.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

@@ -12,7 +12,7 @@ The online editor allows you to edit the source code of your builds from a web b
It also gives you the possibility to open terminals, Python consoles, Odoo Shell consoles and
`Notebooks <https://jupyterlab.readthedocs.io/en/stable/user/notebook.html>`_.
.. image:: ./media/interface-editor.png
.. image:: online-editor/interface-editor.png
:align: center
You can access the editor of a build through
@@ -37,7 +37,6 @@ The working directory is composed of the following folders:
│ │ ├── enterprise Odoo Enterprise source code
│ │ ├── themes Odoo Themes source code
│ │ └── user Your repository branch source code
│ ├── repositories The Git repositories used by your project
│ ├── data
│ │ ├── filestore database attachments, as well as the files of binary fields
│ │ └── sessions visitors and users sessions
@@ -66,20 +65,20 @@ server is not a good practice.
To open a file in the editor, just double-click on it in the file browser panel on the left.
.. image:: ./media/interface-editor-open-file.png
.. image:: online-editor/interface-editor-open-file.png
:align: center
You can then begin to make your changes. You can save your changes with the menu
:menuselection:`File --> Save .. File` or by hitting the :kbd:`Ctrl+S` shortcut.
.. image:: ./media/interface-editor-save-file.png
.. image:: online-editor/interface-editor-save-file.png
:align: center
If you save a Python file which is under your Odoo server addons path,
Odoo will detect it and reload automatically so your changes are reflected immediately,
without having to restart the server manually.
.. image:: ./media/interface-editor-automaticreload.gif
.. image:: online-editor/interface-editor-automaticreload.gif
:align: center
However, if the change is a data stored in database, such as the label of a field, or a view,
@@ -88,7 +87,7 @@ You can update the module of the currently opened file by using the menu
:menuselection:`Odoo --> Update current module`. Note that the file considered as currently opened
is the file focused in the text editor, not the file highlighted in the file browser.
.. image:: ./media/interface-editor-update-current-module.png
.. image:: online-editor/interface-editor-update-current-module.png
:align: center
You can also open a terminal and execute the command:
@@ -118,7 +117,7 @@ In this last command,
* <branch> must be replaced by the name of the branch to which you want to push the changes,
most-likely the current branch if you work in a development build.
.. image:: ./media/interface-editor-commit-push.png
.. image:: online-editor/interface-editor-commit-push.png
:align: center
.. Note::
@@ -160,7 +159,7 @@ Thanks to this, you will be able to display objects in HTML.
You can for instance display cells of a CSV file using
`pandas <https://pandas.pydata.org/pandas-docs/stable/tutorials.html>`_.
.. image:: ./media/interface-editor-console-python-read-csv.png
.. image:: online-editor/interface-editor-console-python-read-csv.png
:align: center
You can also open an Odoo Shell console to play around
@@ -189,12 +188,12 @@ to easily display lists and dicts in a pretty way, using the
`rich display <https://ipython.readthedocs.io/en/stable/config/integrating.html#rich-display>`_
mentioned above.
.. image:: ./media/interface-editor-console-odoo-pretty.png
.. image:: online-editor/interface-editor-console-odoo-pretty.png
:align: center
You can also use
`pandas <https://pandas.pydata.org/pandas-docs/stable/tutorials.html>`_
to display graphs.
.. image:: ./media/interface-editor-console-odoo-graph.png
.. image:: online-editor/interface-editor-console-odoo-graph.png
:align: center

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