diff --git a/.copier-answers.yml b/.copier-answers.yml index d06d988233..70b8e43330 100644 --- a/.copier-answers.yml +++ b/.copier-answers.yml @@ -1,7 +1,6 @@ # Do NOT update manually; changes here will be overwritten by Copier -_commit: v1.29 +_commit: v1.40 _src_path: gh:oca/oca-addons-repo-template -ci: GitHub convert_readme_fragments_to_markdown: false enable_checklog_odoo: false generate_requirements_txt: true diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000..e0d56685a9 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +test-requirements.txt merge=union diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml index ccf084dfeb..7b384a12b4 100644 --- a/.github/workflows/pre-commit.yml +++ b/.github/workflows/pre-commit.yml @@ -17,6 +17,8 @@ jobs: - uses: actions/setup-python@v5 with: python-version: "3.11" + cache: 'pip' + cache-dependency-path: '.pre-commit-config.yaml' - name: Get python version run: echo "PY=$(python -VV | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV - uses: actions/cache@v4 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e691905c08..0d09519116 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -63,6 +63,13 @@ jobs: run: oca_init_test_database - name: Run tests run: oca_run_tests + - name: Upload screenshots from JS tests + uses: actions/upload-artifact@v4 + if: ${{ failure() }} + with: + name: Screenshots of failed JS tests - ${{ matrix.name }}${{ join(matrix.include) }} + path: /tmp/odoo_tests/${{ env.PGDATABASE }} + if-no-files-found: ignore - uses: codecov/codecov-action@v4 with: token: ${{ secrets.CODECOV_TOKEN }} diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 96dbdc8ab0..48a6bca7ea 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -38,8 +38,13 @@ repos: entry: found a en.po file language: fail files: '[a-zA-Z0-9_]*/i18n/en\.po$' + - id: obsolete dotfiles + name: obsolete dotfiles + entry: found obsolete files; remove them + files: '^(\.travis\.yml|\.t2d\.yml|CONTRIBUTING\.md)$' + language: fail - repo: https://github.com/oca/maintainer-tools - rev: d5fab7ee87fceee858a3d01048c78a548974d935 + rev: f9b919b9868143135a9c9cb03021089cabba8223 hooks: # update the NOT INSTALLABLE ADDONS section above - id: oca-update-pre-commit-excluded-addons @@ -104,6 +109,7 @@ repos: additional_dependencies: - "eslint@v7.32.0" - "eslint-plugin-jsdoc@" + - "globals@" - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.0.1 hooks: @@ -140,7 +146,7 @@ repos: - --settings=. exclude: /__init__\.py$ - repo: https://github.com/acsone/setuptools-odoo - rev: 3.1.8 + rev: 3.3.2 hooks: - id: setuptools-odoo-make-default - id: setuptools-odoo-get-requirements diff --git a/.pylintrc b/.pylintrc index 449108e9b7..672060146d 100644 --- a/.pylintrc +++ b/.pylintrc @@ -25,19 +25,25 @@ disable=all enable=anomalous-backslash-in-string, api-one-deprecated, api-one-multi-together, - assignment-from-none, - attribute-deprecated, class-camelcase, - dangerous-default-value, dangerous-view-replace-wo-priority, - development-status-allowed, duplicate-id-csv, - duplicate-key, duplicate-xml-fields, duplicate-xml-record-id, eval-referenced, - eval-used, incoherent-interpreter-exec-perm, + openerp-exception-warning, + redundant-modulename-xml, + relative-import, + rst-syntax-error, + wrong-tabs-instead-of-spaces, + xml-syntax-error, + assignment-from-none, + attribute-deprecated, + dangerous-default-value, + development-status-allowed, + duplicate-key, + eval-used, license-allowed, manifest-author-string, manifest-deprecated-key, @@ -48,72 +54,67 @@ enable=anomalous-backslash-in-string, method-inverse, method-required-super, method-search, - openerp-exception-warning, pointless-statement, pointless-string-statement, print-used, redundant-keyword-arg, - redundant-modulename-xml, reimported, - relative-import, return-in-init, - rst-syntax-error, sql-injection, too-few-format-args, translation-field, translation-required, unreachable, use-vim-comment, - wrong-tabs-instead-of-spaces, - xml-syntax-error, - attribute-string-redundant, character-not-valid-in-resource-link, - consider-merging-classes-inherited, - context-overridden, create-user-wo-reset-password, dangerous-filter-wo-user, dangerous-qweb-replace-wo-priority, deprecated-data-xml-node, deprecated-openerp-xml-node, duplicate-po-message-definition, - except-pass, file-not-used, + missing-newline-extrafiles, + old-api7-method-defined, + po-msgstr-variables, + po-syntax-error, + str-format-used, + unnecessary-utf8-coding-comment, + xml-attribute-translatable, + xml-deprecated-qweb-directive, + xml-deprecated-tree-attribute, + attribute-string-redundant, + consider-merging-classes-inherited, + context-overridden, + except-pass, invalid-commit, manifest-maintainers-list, - missing-newline-extrafiles, missing-readme, missing-return, odoo-addons-relative-import, - old-api7-method-defined, - po-msgstr-variables, - po-syntax-error, renamed-field-parameter, resource-not-exist, - str-format-used, test-folder-imported, translation-contains-variable, translation-positional-used, - unnecessary-utf8-coding-comment, website-manifest-key-not-valid-uri, - xml-attribute-translatable, - xml-deprecated-qweb-directive, - xml-deprecated-tree-attribute, - # messages that do not cause the lint step to fail - consider-merging-classes-inherited, + missing-manifest-dependency, + too-complex,, create-user-wo-reset-password, dangerous-filter-wo-user, - deprecated-module, file-not-used, - invalid-commit, - missing-manifest-dependency, missing-newline-extrafiles, - missing-readme, no-utf8-coding-comment, - odoo-addons-relative-import, old-api7-method-defined, + unnecessary-utf8-coding-comment, + # messages that do not cause the lint step to fail + consider-merging-classes-inherited, + deprecated-module, + invalid-commit, + missing-readme, + odoo-addons-relative-import, redefined-builtin, - too-complex, - unnecessary-utf8-coding-comment + manifest-external-assets [REPORTS] diff --git a/.pylintrc-mandatory b/.pylintrc-mandatory index 164c82fd7d..f0c568c64a 100644 --- a/.pylintrc-mandatory +++ b/.pylintrc-mandatory @@ -17,19 +17,25 @@ disable=all enable=anomalous-backslash-in-string, api-one-deprecated, api-one-multi-together, - assignment-from-none, - attribute-deprecated, class-camelcase, - dangerous-default-value, dangerous-view-replace-wo-priority, - development-status-allowed, duplicate-id-csv, - duplicate-key, duplicate-xml-fields, duplicate-xml-record-id, eval-referenced, - eval-used, incoherent-interpreter-exec-perm, + openerp-exception-warning, + redundant-modulename-xml, + relative-import, + rst-syntax-error, + wrong-tabs-instead-of-spaces, + xml-syntax-error, + assignment-from-none, + attribute-deprecated, + dangerous-default-value, + development-status-allowed, + duplicate-key, + eval-used, license-allowed, manifest-author-string, manifest-deprecated-key, @@ -40,56 +46,50 @@ enable=anomalous-backslash-in-string, method-inverse, method-required-super, method-search, - openerp-exception-warning, pointless-statement, pointless-string-statement, print-used, redundant-keyword-arg, - redundant-modulename-xml, reimported, - relative-import, return-in-init, - rst-syntax-error, sql-injection, too-few-format-args, translation-field, translation-required, unreachable, use-vim-comment, - wrong-tabs-instead-of-spaces, - xml-syntax-error, - attribute-string-redundant, character-not-valid-in-resource-link, - consider-merging-classes-inherited, - context-overridden, create-user-wo-reset-password, dangerous-filter-wo-user, dangerous-qweb-replace-wo-priority, deprecated-data-xml-node, deprecated-openerp-xml-node, duplicate-po-message-definition, - except-pass, file-not-used, + missing-newline-extrafiles, + old-api7-method-defined, + po-msgstr-variables, + po-syntax-error, + str-format-used, + unnecessary-utf8-coding-comment, + xml-attribute-translatable, + xml-deprecated-qweb-directive, + xml-deprecated-tree-attribute, + attribute-string-redundant, + consider-merging-classes-inherited, + context-overridden, + except-pass, invalid-commit, manifest-maintainers-list, - missing-newline-extrafiles, missing-readme, missing-return, odoo-addons-relative-import, - old-api7-method-defined, - po-msgstr-variables, - po-syntax-error, renamed-field-parameter, resource-not-exist, - str-format-used, test-folder-imported, translation-contains-variable, translation-positional-used, - unnecessary-utf8-coding-comment, - website-manifest-key-not-valid-uri, - xml-attribute-translatable, - xml-deprecated-qweb-directive, - xml-deprecated-tree-attribute + website-manifest-key-not-valid-uri [REPORTS] msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg} diff --git a/README.md b/README.md index e7e9eeadb2..ca5723eeb6 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,7 @@ +[![Support the OCA](https://odoo-community.org/readme-banner-image)](https://odoo-community.org/get-involved?utm_source=repo-readme) + +# website [![Runboat](https://img.shields.io/badge/runboat-Try%20me-875A7B.png)](https://runboat.odoo-community.org/builds?repo=OCA/website&target_branch=15.0) [![Pre-commit Status](https://github.com/OCA/website/actions/workflows/pre-commit.yml/badge.svg?branch=15.0)](https://github.com/OCA/website/actions/workflows/pre-commit.yml?query=branch%3A15.0) [![Build Status](https://github.com/OCA/website/actions/workflows/test.yml/badge.svg?branch=15.0)](https://github.com/OCA/website/actions/workflows/test.yml?query=branch%3A15.0) @@ -7,8 +10,6 @@ -# website - TODO: add repo description. @@ -25,7 +26,7 @@ addon | version | maintainers | summary [website_breadcrumb](website_breadcrumb/) | 15.0.1.0.0 | | Let you have breadcrumbs in website pages [website_conditional_visibility_user_group](website_conditional_visibility_user_group/) | 15.0.1.0.0 | | Only internal users will see the blocks you add this condition to [website_cookiebot](website_cookiebot/) | 15.0.1.0.0 | | Ask for cookies consent connecting with Cookiebot -[website_cookiefirst](website_cookiefirst/) | 15.0.1.0.0 | | Cookiefirst integration +[website_cookiefirst](website_cookiefirst/) | 15.0.1.0.1 | | Cookiefirst integration [website_crm_privacy_policy](website_crm_privacy_policy/) | 15.0.1.1.0 | | Website CRM privacy policy [website_crm_quick_answer](website_crm_quick_answer/) | 15.0.1.0.1 | | Add an automatic answer for contacts asking for info [website_form_require_legal](website_form_require_legal/) | 15.0.1.1.0 | | Add possibility to require confirm legal terms. diff --git a/website_cookiefirst/README.rst b/website_cookiefirst/README.rst index e2fb7132ae..1be49771c5 100644 --- a/website_cookiefirst/README.rst +++ b/website_cookiefirst/README.rst @@ -1,3 +1,7 @@ +.. image:: https://odoo-community.org/readme-banner-image + :target: https://odoo-community.org/get-involved?utm_source=readme + :alt: Odoo Community Association + =================== Website Cookiefirst =================== @@ -7,13 +11,13 @@ Website Cookiefirst !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:abd79ec3ba61a225380d3a261091da8fe2df54789d9563e49ab9fed415f543da + !! source digest: sha256:0a298607fc9b6deadd23c0057284376e52467692897263da5bf9e337ec3809d1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png :target: https://odoo-community.org/page/development-status :alt: Beta -.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png +.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fwebsite-lightgray.png?logo=github @@ -42,10 +46,12 @@ Configuration To configure this module, you need to: -#. Go to **Website > Configuration > Settings** -#. Search 'Cookiefirst' option. -#. Fill in your 'Cookiefirst ID' (e.g. '00000000-0000-0000-0000-000000000000'). -#. Click on "Save" button. +1. Go to **Website \> Configuration \> Settings** +2. Search 'Cookiefirst' option. +3. Enable Use Cookiefirst checkbox +4. Enter your Cookiefirst **API Key** into **Cookiefirst ID** field (e.g. + '00000000-0000-0000-0000-000000000000'). +5. Click on "Save" button. Bug Tracker =========== diff --git a/website_cookiefirst/__manifest__.py b/website_cookiefirst/__manifest__.py index dc4eaddd56..f98ee08931 100644 --- a/website_cookiefirst/__manifest__.py +++ b/website_cookiefirst/__manifest__.py @@ -4,7 +4,7 @@ "name": "Website Cookiefirst", "summary": "Cookiefirst integration", "category": "Website", - "version": "15.0.1.0.0", + "version": "15.0.1.0.1", "author": "Studio73, Odoo Community Association (OCA)", "website": "https://github.com/OCA/website", "license": "AGPL-3", diff --git a/website_cookiefirst/readme/CONFIGURE.rst b/website_cookiefirst/readme/CONFIGURE.rst index 4e58e2c548..ccd11cccfc 100644 --- a/website_cookiefirst/readme/CONFIGURE.rst +++ b/website_cookiefirst/readme/CONFIGURE.rst @@ -1,6 +1,8 @@ To configure this module, you need to: -#. Go to **Website > Configuration > Settings** -#. Search 'Cookiefirst' option. -#. Fill in your 'Cookiefirst ID' (e.g. '00000000-0000-0000-0000-000000000000'). -#. Click on "Save" button. +1. Go to **Website \> Configuration \> Settings** +2. Search 'Cookiefirst' option. +3. Enable Use Cookiefirst checkbox +4. Enter your Cookiefirst **API Key** into **Cookiefirst ID** field (e.g. + '00000000-0000-0000-0000-000000000000'). +5. Click on "Save" button. diff --git a/website_cookiefirst/static/description/index.html b/website_cookiefirst/static/description/index.html index c9d7e25108..b912779b5f 100644 --- a/website_cookiefirst/static/description/index.html +++ b/website_cookiefirst/static/description/index.html @@ -1,18 +1,18 @@ - -Website Cookiefirst +README.rst -
-

Website Cookiefirst

+
+ + +Odoo Community Association + +
+

Website Cookiefirst

-

Beta License: AGPL-3 OCA/website Translate me on Weblate Try me on Runboat

+

Beta License: AGPL-3 OCA/website Translate me on Weblate Try me on Runboat

This module integrates Odoo website with GDPR through the functionality of Cookiefirst <https://cookiefirst.com/>, you need to register your website domain in Cookiefirst’s portal.

@@ -387,17 +392,19 @@

Website Cookiefirst

-

Configuration

+

Configuration

To configure this module, you need to:

  1. Go to Website > Configuration > Settings
  2. Search ‘Cookiefirst’ option.
  3. -
  4. Fill in your ‘Cookiefirst ID’ (e.g. ‘00000000-0000-0000-0000-000000000000’).
  5. +
  6. Enable Use Cookiefirst checkbox
  7. +
  8. Enter your Cookiefirst API Key into Cookiefirst ID field (e.g. +‘00000000-0000-0000-0000-000000000000’).
  9. Click on “Save” button.
-

Bug Tracker

+

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed @@ -405,15 +412,15 @@

Bug Tracker

Do not contact contributors directly about support or help with technical issues.

-

Credits

+

Credits

-

Authors

+

Authors

  • Studio73
-

Maintainers

+

Maintainers

This module is maintained by the OCA.

-Odoo Community Association + +Odoo Community Association +

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

@@ -437,5 +446,6 @@

Maintainers

+
diff --git a/website_cookiefirst/views/portal_template.xml b/website_cookiefirst/views/portal_template.xml index 4a94fefb9a..d5691a906c 100644 --- a/website_cookiefirst/views/portal_template.xml +++ b/website_cookiefirst/views/portal_template.xml @@ -17,10 +17,9 @@ performance - +