The Content-Security-Policy[^1] http header was only set on the response
generated by controllers but it was missing from the `/<module>/static/`
route.
It is not strictly necessary to set that header on the responses comming
from that routes as it is not possible to add new static files or edit
existing ones via the interface (not even as admin). Only the developers
and system administrator can access those files.
It is also worth mentionning that using the Odoo internal web server to
deliver static files is suboptimal. Outside of a dev environment, those
files will typically be delivered via a web server[^2] and sysadmins
should configure their web server to set the CSP header on static images.
[^1]: https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
[^2]: https://www.odoo.com/documentation/master/administration/install/deploy.html#serving-static-files-and-attachmentsclosesodoo/documentation#6953
X-original-commit: f3f44fe5f2
Related: odoo/odoo#146591
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
Install nginx using the nginx configuration found in the documentation
and changes the `listen` port to 8080. Start Odoo in `--proxy-mode`.
listen 8080;
server_name mycompany.odoo.com;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
location / {
proxy_pass http://127.0.0.1:8069;
}
Inside your browser, access "http://mycompany.odoo.com:8080" you are
wrongly redirected to "http://mycompany.odoo.com:80".
Odoo uses the `X-Forwarded-Host` http header value to generate new URls,
in this configuration `$host` only contains the domain (=hostname using
the urllib terminology) instead of the domain+port (=netloc). The
variable that contains both the domain and the port is actually
`$http_host`.
closesodoo/documentation#6943Closes: odoo/odoo#64643
X-original-commit: 09c42c5896
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
This commit rework the entire JavaScript tutorial series with the
following improvements:
- Each chapter is now designed to be independent, allowing learners to
follow any chapter without the necessity of completing previous ones.
- Each chapter has been transformed into a standalone module, enabling
learners to create small projects from scratch within each chapter.
- The screenshots/text/code have been updated for Odoo 17.
Currently we have 5 chapters:
- Discover Chapter 1 - Owl Components: This chapter allows to learn the
Owl framework in the `awesome_owl` module.
- Discover Chapter 2 - Build a dashboard: This chapter allows to grasp
the basic of the web framework by building a dashboard in the
`awesome_dashboard` module.
- Master Chapter 1 - Build a clicker game: This chapter allows to grasp
the web framework by building a clicker game in the `awesome_clicker`
module.
- Master Chapter 2 - Create a gallery view: This chapter allows to learn
how to create a new view type. The new view is a gallery of records
pictures. It can be done in the `awesome_gallery` module.
- Master Chapter 3 - Customize a kanban view: This chapter allows to
learn to customize a kanban view by implementing a list of customer in
the side of a kanban view. This can be done in the `awesome_kanban`
module.
The chapter on creating and customizing fields is deleted for now and
will be completely rewritten in a near future.
The chapter on testing is deleted, how-to guides will be written to
cover this subject.
The solutions for all exercises has been done for v17, the goal by
merging the new tutorial is to have this new branch structure in
`odoo/tutorials`:
- 16.0
- 16.0-solutions
- 17.0
- 17.0-discover-js-framework-solutions
- 17.0-master-odoo-web-framework-solutions
- master <-- default branch, starting point for all addons
- master-discover-js-framework-solutions
- master-master-odoo-web-framework-solutions
closesodoo/documentation#6876
Task-id: 3623595
Signed-off-by: Géry Debongnie <ged@odoo.com>
Official packages for wkhtmltopdf 0.12.5 are no more released since the
release of wkhtmltopdf 0.12.6 in 2020. Debian 10 "Buster" and Ubuntu
20.04 "Focal" were the last system for which 0.12.5 was built[^1].
Installing 0.12.5 on a Ubuntu 22.04 "Jammy" (using the Focal package)
fails for outdated dependencies.
Official packages for wkhtmltopdf 0.12.6 are published on another
repository[^2] than 0.12.5 used to, it includes packages for 0.12.6 for
both Debian 11 "Bullseye" and Ubuntu 22.04 "Jammy". Version 0.12.6.1-r3
is compatible out-of-the-box with Odoo and has been used by runbot to
test all 16.x, 17.x and master branches for the past month.
This work makes it official that [wkhtmltopdf 0.12.6.1-r3] must be used
for Odoo 16.0 and onward.
[^1]: https://github.com/wkhtmltopdf/wkhtmltopdf/releases/tag/0.12.5
[^2]: https://github.com/wkhtmltopdf/packaging/releases
[wkhtmltopdf 0.12.6.1-r3]: https://github.com/wkhtmltopdf/packaging/releases/tag/0.12.6.1-3closesodoo/documentation#6799
X-original-commit: e5d77ee285
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
The preferred/safe way of running Odoo is with a standard user, with
only the right to create a database.
See b6b73551dbclosesodoo/documentation#6768
X-original-commit: df8114e591
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: William André (wan) <wan@odoo.com>
Many customers struggle with their web server configuration, notably
regarding the `--proxy-mode` option and the way `X-Forwarded-*` HTTP
request headers are interpreted within Odoo.
The `--proxy-mode` section has been updated to cover the most common
misunderstandings and to give guidances on how to setup a web server.
Odoo always only takes the last entry of the `X-Forwarded-*` request
header because there are situations where it is not possible to
determine which last n-th entry to use. Employees might access their
odoo database via the internal network: connecting directly to nginx,
while customers might access the database via an additional proxy such
as cloudflare. The real IP of employees would be the last inside the
`X-Forwarded-For` chain, while the real IP of customers would be the
*second* last entry inside the chain. It would be incorrect to always
take the same nth last entry inside the chain. The cloudflare's own IP
address must be discarded from the chain. Web servers usually feature
a way to ignore trusted IP from the chain, a way so that the real IP
of the user is always the last entry inside the chain. Odoo relies on
such feature to be active and configured.
Prior discussions about `X-Forwarded-For`:
* odoo/odoo#104947
* odoo/odoo#118629
* odoo/odoo#139536
All `X-Forwarded-*` headers are ignored in case the `X-Forwarded-Host`
header is missing (even with `--proxy-mode`). System admin might be
tempted to not set this header and to set `Host` instead, this is
broken as this a user-agent would be able to spoof `X-Forwarded-Host`
and Odoo would use that instead of the correct `Host`.
Prior discussions about `X-Forwarded-Host`:
* odoo/odoo#63277
* odoo/odoo#70117closesodoo/documentation#6743
X-original-commit: 3d91c57b57
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
When writing the documentation page for standalone Owl apps, it was
originally required to create the env and start the services manually,
and then mount the application by giving it a bunch of configuration
parameters. During review, it was noted that this was error prone and
confusing, and as such a corresponding PR added a helper to mount the
application without needing to do much by hand. While the code was
adapted in the documentation that was merged, the text still referred to
starting the services and creating the environment which is no longer
necessary.
This commit removes references to those things, and because the
resulting section is very small and not very interesting it has been
merged into the previous section.
closesodoo/documentation#6669
Signed-off-by: Samuel Degueldre (sad) <sad@odoo.com>
The lambda function here is useless and makes newdooers think
they need to use it everytime.
`default=fields.Date.add(fields.Date.today(), months=3))`
should do the trick, no lambda involved.
closesodoo/documentation#6631
X-original-commit: 620508fb29
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Claire Bretton (clbr) <clbr@odoo.com>
The "../technical-training-sandbox" is added too early in the path since
its still empty, and results into an "invalid addons-path" error.
X-original-commit: 8707609b38
Part-of: odoo/documentation#6631
This addition explains how to create and connect an existing plausible.io account in Odoo.
task-3540753
closesodoo/documentation#6545
X-original-commit: cd11937f43
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
This commit adds a seealso section in the intro of the PDF quote builder
doc, with a link to the related Odoo Quick Tips video.
closesodoo/documentation#6534
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Without the :show-content: metadata markup, it is not possible to open the
page by navigating from the toctree.
closesodoo/documentation#6531
X-original-commit: 16e339a7a3
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Since we've introduced Owl, developers want more and more to create
standalone Owl applications outside of the webclient. This commit
introduces a How-to for doing just that.
task-3580007
closesodoo/documentation#6493
Related: odoo/odoo#142498
Signed-off-by: Samuel Degueldre (sad) <sad@odoo.com>
The tour utils were red and moved in Odoo (odoo/odoo#107618).
closesodoo/documentation#6514
X-original-commit: 1746c57ff4
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
0c0cf8ebc9
added a new way to select accounts in the account_codes engine. This
commit adds some explanation in the doc on how to use this new syntax.
closesodoo/documentation#6507
X-original-commit: 1a32165180
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
This PR adds the documentation for a new Pos IoT Six module which will
soon replace the old Six module.
task-3555605
closesodoo/documentation#6439
X-original-commit: bc98b8c491
Signed-off-by: Yaroslav Soroko (yaso) <yaso@odoo.com>
Co-authored-by: Yaroslav Soroko (yaso) <yaso@odoo.com>
Co-authored-by: Loredana Perazzo <lrpz@odoo.com>
For some reason, the first-person was used throughout the IAP
documentation, and quite inconsistently.
As the rest of the documentation is using second-person writing, IAP
should be no exception.
closesodoo/documentation#6327
X-original-commit: df474342ba
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Louis Baudoux (lba) <lba@odoo.com>
It has been decided to remove the possibility for our users to create
their own IAP services.
This decision was motivated by the fact that, in the 5 years of
existence of IAP, very few non-Odoo services have been created and
actively used by our customers.
X-original-commit: 282f041ed1
Part-of: odoo/documentation#6327
We have introduced a second version of the Extract API that adds the IAP
account token to the `get_result` and `validate` routes.
There are also other changes in this commit:
- The deprecated stuff has been removed as it's been deprecated for a
while and won't be supported anymore in the future.
- The `status` table of the `get_result` route has been added as it was
missing for some reason.
- The documentation regarding the `/validate` routes have been removed
for security reasons.
closesodoo/documentation#6282
X-original-commit: a8c6272899
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Louis Baudoux (lba) <lba@odoo.com>
In the CLI, `--unaccent` try to enable PostgreSQL unaccent extention
when odoo is responsible to create new database(s).
closesodoo/documentation#6244
X-original-commit: 1639d22efd
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
Updated screenshots and typos for 16.3
Forward to 16.4:
- Change: Dashboard links are improved, and audit features can be found
in the journal items view.
closesodoo/documentation#6233
X-original-commit: a31bcec3ba
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Added a note to make it clearer that for fiduciaries, a single API key
is valid for all databases linked to the user.
taskid-3570700
closesodoo/documentation#6230
X-original-commit: 323d3563c9
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
This commit adds the (currently missing) documentation for the
Austrian fiscal localization.
It i.e. includes information about the new SAF-T export for Austria.
closesodoo/documentation#5859
Related: odoo/odoo#135485
Related: odoo/enterprise#47405
Signed-off-by: Sven Führ (svfu) <svfu@odoo.com>
A new way to disable IAP accounts has been introduced recently.
This feature is mostly used in neutralization scripts to prevent
customers from accidentaly consuming their credits on their
staging/testing databases.
Documenting it will help users re-enable their accounts if they still
wish to use it in a testing environment.
closesodoo/documentation#6139
X-original-commit: fa604a95b0
Signed-off-by: Louis Baudoux (lba) <lba@odoo.com>
Remove parenthesis around a term that's fairly straightforward to
understand and later used as a title Add a much-needed point.
closesodoo/documentation#6126
X-original-commit: 6f3ed657fc
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Stanislas Gueniffey (stgu) <stgu@odoo.com>
This commit renames the calendar attribute "quick_add" to "quick_create"
and adds the attribute "quick_create_view_id".
closesodoo/documentation#6105
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Results of seeing a lot of wrong and missing configuration
on consultancy project for Outlook accounts.
The Multi outgoing mail server is harder to maintain than having
a unique mail server with an Odoo db correctly configured.
Insisting on the mail.default.from (ICP) and the From Filtering
parameters that NEEDS TO BE set up.
task-3512379
[FIX] Maintain: Azure_oauth: configuration mail server Outlook
Co-author-by: tiku-odoo <tiku@odoo.com>
Co-author-by: jqu-odoo <jqu@odoo.com>
Results of seeing a lot of wrong and missing configuration
on consultancy project for Outlook accounts.
The Multi outgoing mail server is harder to maintain than having
a unique mail server with an Odoo db correctly configured.
Insisting on the mail.default.from (ICP) and the From Filtering
parameters that NEEDS TO BE set up.
task-3512379
closesodoo/documentation#6036
X-original-commit: 41b9ba6383
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
The bill reference is no longer detected since a few months because it
had poor results and wasn't very useful.
closesodoo/documentation#6012
X-original-commit: cade61dd56
Signed-off-by: Louis Baudoux (lba) <lba@odoo.com>
Many users don't start odoo-bin in --workers (multi-processing) mode but
instead leave the default configuration which use the development/demo
multi-threaded server, even in production.
This commit rewords the section about the difference between the
built-in servers and highlight the many advantages of the
multi-processing on. It repeats that information when it comes to
running a dedicated cron server, that it should use the multi-processing
server instead of the default multi-threading one.
closesodoo/documentation#5934Fixes: odoo/odoo#88984Closes: odoo/odoo#128571
X-original-commit: 8e9ae99423
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
This commit:
- adds the link for the Ecuatorian localization app tour
- changes the other latam app tour links as the short links embedded the
`es_ES` language string in the URL, which should be avoided
closesodoo/documentation#5929
X-original-commit: 923839f2cf
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Pretty sure the previous wasnt the intended result as it would show the "this is new" in a new kanban card. This just groups it with the property it belongs to.
closesodoo/documentation#5907
Forward-port-of: odoo/documentation#5899
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
This commit, reword the doc about `ir.actions.act_url` and add also the
new `download` value for the `target`.
closesodoo/documentation#5822
Related: odoo/odoo#134436
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
It has always been the case informally but write it in the doc.
closesodoo/documentation#5835
X-original-commit: 80e1065dff
Signed-off-by: Olivier Dony (odo) <odo@odoo.com>
The documentation is unclear about the unit used for the --limit-memory-soft
and --limit-memory-hard options of odoo-bin. The unit used is bytes, but
it isn't mentioned and the default unit is shown in mebibytes, causing
confusion.
closesodoo/documentation#5794
X-original-commit: 9fadc3355d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
The value of `t-debug` is now optional, and leaving it out means the
directive just invokes the `breakpoint` builtin, which was added in
3.7 and is configurable via an envvar or a hook callable.
closesodoo/documentation#5800
Related: odoo/odoo#134842
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
task-2790245
- Update existing Google Analytics doc for GA4
- Merge GA and Plausible into one Analytics page
- Review Plausible.io instructions to adopt same style as GA instructions
closesodoo/documentation#5768
X-original-commit: d538ed070e
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
This PR updates the page's content as it is a bit dated in some places
(see task) and takes into consideration the latest rst guidelines.
task-3434787
closesodoo/documentation#5745
X-original-commit: 8e41b58834
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Added a note explaining that the filestores from the upgraded database
and the production database have to be merged for on-premise upgrade,
on both the testing and the production phases
closesodoo/documentation#5729
X-original-commit: 28cacd3b98
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Updated an outdated screenshot from V14 to V15
Forward to master.
taskid-3467638
closesodoo/documentation#5720
X-original-commit: 3324366190
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
The link pointing to domain.js file was broken.
The xml id on the line before that is also broken but it will be fixed with PR#5699.
closesodoo/documentation#5709
Forward-port-of: odoo/documentation#5702
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Co-authored-by: Armin FalDiS <armin.fallah96@gmail.com>
Co-authored-by: Armin FalDiS <fara@odoo.com>
This PR adds a page describing how to create, use and moderate a forum.
It creates references in the elearning page as karma features are shared.
It removes redundant information from the helpdesk/overview/help_center
page and links back to the more detailed forum page.
task-3283274
closesodoo/documentation#5676
X-original-commit: c60ec48c9d
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
In the multi-company HMRC submission section, the documentation mentions
that you can connect to HMRC from the user form, after having reset the
credentials.
This is not true, you have to go back to the tax report and click the
"Connect to HMRC" button.
opw-3449939
closesodoo/documentation#5670
X-original-commit: 39c0515208
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Arnaud Sibille (arsi) <arsi@odoo.com>
- Added Thailand localisation documentation as it not exist before.
Features were pushed to Odoo 16 already
closesodoo/documentation#5642
X-original-commit: 0151054619
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
This page used to be hosted as an "orphan" page in the documentation
repository. It now is displayed on the support form page at
www.odoo.com/help making this page redundant. This commit deletes that
page and a redirection pointing to the support form has been set.
task-3027584
closesodoo/documentation#5582
X-original-commit: fd2c0b8010
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Since January 1, 2023, Romanian businesses are required to report their
accounting data on a monthly/quarterly basis, in the D.406 declaration.
This is an XML following the SAF-T 2.0 standard, with Romanian-specific
customizations. The new module l10n_ro_saft lets you generate this
declaration from the General Ledger report.
Here's some documentation about how to use this new module! Yay!
closesodoo/documentation#5532
Task-id: 3172198
X-original-commit: 42ef43f8c4
Related: odoo/enterprise#45939
Related: odoo/odoo#132269
Signed-off-by: Antoine Dupuis (andu) <andu@odoo.com>
This PR moves the introduction about the different installation methods and editions found on the
install/install.rst page directly under the main install/ page. It creates three pages, one per
installation method documented on the install/install.rst page (Docker being documented on
docker.com and maintained by us), and moves the related content there. In addition, it fixes various
typos/grammar issues and improves the content according to the documentation guidelines. Various
references and links across the documentation had to be fixed accordingly.
task-3459070
closesodoo/documentation#5543
X-original-commit: 91c28fd433
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
The documentation of the views is redone in order to be up to date and
has allowed a better visualization of the task on the modifiers.
task-2495504
closesodoo/documentation#3523
Related: odoo/odoo#104741
Related: odoo/enterprise#35255
Related: odoo/upgrade#4884
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
Commit f36c612d13 changed the model name
in Chapter 4 without updating the other occurences.
closesodoo/documentation#5516
X-original-commit: b6f923d111
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
The current default daily limit for one-app free
is 20 mails only. This commit updates the value.
closesodoo/documentation#5515
X-original-commit: c0ca09cdde
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
In odoo/odoo#130467 the necessity to tag owl templates with an owl="1"
attribute has been removed, update the docs to reflect that.
closesodoo/documentation#5460
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
This commit also moves all versions from 8.0 to 12.0 from the table to
the "older versions" section.
closesodoo/documentation#5327
X-original-commit: 6225ef9e32
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Forward to master.
Change 16.3 onwards (screenshots)
Improved the doc and added some info on debit notes (was missing).
taskid-3439169
closesodoo/documentation#5270
X-original-commit: 898b08a70e
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
Sepa mandates are not automatically confirmed anymore,
customers have to make one successful bank transfer
matching the expected payment details to confirm
their mandate.
See fd2fb212c5
See 9b729b157bclosesodoo/documentation#5201
X-original-commit: bc1cf93455
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
To add updated information related to the elearning app
closesodoo/documentation#5155
Id: 3251391
X-original-commit: 2e9c99c941
Signed-off-by: Donatienne Pirlot (dopi) <dopi@odoo.com>
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Using `<` inside XML elements will result in a parsing error,
an entity reference should be used instead: `<`.
closesodoo/documentation#5184
X-original-commit: a7743d513b
Signed-off-by: Levi Siuzdak (sile) <sile@odoo.com>
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Stripe now implements a direct flow instead a redirect.
This commit focuses on updating the documentation to match the changes.
task-3322020
closesodoo/documentation#4719
Related: odoo/upgrade#4748
Related: odoo/enterprise#42196
Related: odoo/odoo#123573
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
I removed the dot notation in the "_name" variable for the example
model. AKA, "test.model" is now named "test_model".
Dot notation implies a data structure relationship between a <model> and
it's parent (or class etc) <test> (like test.model() or Test.model).
There is no relationship like this between a <test> and <model> - it's
just one thing: a <test model>.
The seeming "benefit" of the ORM translating dots to underscores doesn't
justify this naming convention. Yes, I know it's a string, but still,
this seems confusing for newbies and adds unnecessary complexity (why
name the same thing differently in different places?)
closesodoo/documentation#5141
X-original-commit: f36c612d13
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Examples rely on `kolo/xmlrpc` as well as on the standard library package `log` to panic on error, matching snippets in other languages (which tend to raise exceptions).
As with other languages, only the RPC interaction is spelled out.
closesodoo/documentation#5129
Forward-port-of: odoo/documentation#5064
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>