Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
a47cf3d
Gestion d url dans product & category
EBII Nov 22, 2016
55ee678
[REF] refactor base_url module
sebastienbeau Jan 25, 2017
4e6ae7d
[MIG] PORT base_url to 10.0
bealdav Oct 2, 2017
668ccd1
REFactor move url model to another file
sebastienbeau Oct 2, 2017
208199b
FIX file organization
bealdav Oct 2, 2017
bcd9c43
[IMP] shopinvader: product binding wizard
lmignon Jan 12, 2018
6dbcf64
[FIX] remove optimisation code as it seem not necessary anymore.
sebastienbeau May 28, 2018
2c7431d
[10.0][FIX] Fix function name for computed field
acsonefho Jul 2, 2018
f87255e
[FIX] fix access right issue, a user who have the right to modify the…
sebastienbeau Jul 31, 2018
972209c
[FIX] base_url: Remove unneeded sudo()
rousseldenis Aug 6, 2018
67aca8c
[10.0][ADD] Add URL unbind for shopinvader.variant
acsonefho Nov 7, 2018
4011f1d
[FIX] unbind url
bguillot Feb 15, 2019
ee0f383
[FIX] Fix flake8
acsonefho Mar 25, 2019
769bcd5
[FIX] base_url: Never call write/unlink/create within a compute method
lmignon Apr 4, 2019
80ebdee
[IMP] base_url: Refactor base url to no more depends on record_id and…
lmignon Apr 5, 2019
64d460b
[IMP] Add pre-commit hook and reformat code thanks to black
lmignon May 6, 2019
4d10e0b
[10.0][FIX] Fix unit test (avoid commit)
acsonefho May 7, 2019
e782a44
[12.0] Set installable False to all modules
rousseldenis May 10, 2019
9b40529
[12.0][MIG] base_url
rousseldenis May 10, 2019
a9aacb3
[MIG] Create branch 13.0
lmignon Oct 29, 2019
a4a1ff3
[MIG] base_url: Migration to 13.0
lmignon Oct 29, 2019
0146ac8
[MIG] shopinvader: Migration to 13.0
lmignon Nov 8, 2019
feab216
fix issue when creating binding from the main record
sebastienbeau Apr 3, 2020
06d728e
fix test and use use odoo-test-helper lib \o/
sebastienbeau Apr 4, 2020
710da9f
[REF] refactor url generator
sebastienbeau Jun 6, 2019
bf959bd
fixup compute
HviorForgeFlow May 28, 2020
726e2b0
base_url 13.0.1.1.0
Jun 5, 2020
a129ab4
Add some TODO comments
simahawk Jun 29, 2020
96f995d
shopinvader: fix category automatic url compute
simahawk Jun 29, 2020
3ac92a1
base_url 13.0.1.1.1
Jul 23, 2020
8693e96
.pre-commit-config.yaml align w/ OCA and Fix linting
simahawk Dec 8, 2020
af095e5
[IMP] base_url: black, isort, prettier
Jan 21, 2021
790c427
[MIG] base_url: Migration to 14.0
Jan 21, 2021
695bdc3
[UPD] Update base_url.pot
Mar 21, 2021
77836d6
[IMP] add broken test for missing redirect url on categ
sebastienbeau Jul 16, 2021
77fbee2
[REF] base_url refactor and fix url redirection
sebastienbeau Jul 16, 2021
2fce136
[IMP] base_url : add index
xavier-bouquiaux Apr 5, 2023
17f888c
base_url: pre-commit stuff, remove deprecated file
sebastienbeau Jun 23, 2023
435ef71
base_url: Refactor implementation
sebastienbeau Jun 26, 2023
471c4c0
base_url: add fields url_key and redirect_url_key, shopinvader_produc…
qgroulard Aug 29, 2023
0aee995
[FIX] base_url: Add missing dependency
lmignon Oct 10, 2023
20fba5b
[FIX] base_url: Import Serialized from its module
lmignon Oct 10, 2023
07120c4
[UPD] Update shopinvader_base_url.pot
Oct 13, 2023
a2e4f67
[FIX] base_url: No assign value if not changed
lmignon Nov 28, 2023
190e11b
[IMP] base_url: pre-commit auto fixes
paradoxxxzero Apr 1, 2026
778b3d7
[MIG] base_url
paradoxxxzero Apr 1, 2026
649263b
base_url: Update readme and manifest
sebastienbeau Apr 1, 2026
2e83ad4
[FIX] base_url: fix typo during refactoring
arnaudlayec Apr 13, 2026
3872648
[FIX] open_url: remove shopinvader
arnaudlayec Apr 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
96 changes: 96 additions & 0 deletions base_url/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
========
Base Url
========

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:cf83149625b6626854e0441d1b4e095b6796d8707d85a8ff6710cb5b78fd3909
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |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
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github
:target: https://github.com/OCA/server-tools/tree/18.0/base_url
:alt: OCA/server-tools
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/server-tools-18-0/server-tools-18-0-base_url
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/server-tools&target_branch=18.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

The aim of the module is to provide a generic mixin for building url on
record.

Natively odoo implementation of url is based on having an "id" in the
url, this module provide an alternative way of doing. Url are generated
and stored in an uniq table (to ensure unicity). Redirection are also
managed.

This project was initial build for shopinvader as we need to have uniq
url for the connected webshop. But this concept can be reuse in other
case and even replace the odoo url implementation.

**Table of contents**

.. contents::
:local:

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-tools/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
`feedback <https://github.com/OCA/server-tools/issues/new?body=module:%20base_url%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

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

Credits
=======

Authors
-------

* Akretion
* ACSONE SA/NV

Contributors
------------

- Sebastien Beau sebastien.beau@akretion.com
- Laurent Mignon laurent.mignon@acsone.eu

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

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.

.. |maintainer-sebastienbeau| image:: https://github.com/sebastienbeau.png?size=40px
:target: https://github.com/sebastienbeau
:alt: sebastienbeau

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-sebastienbeau|

This module is part of the `OCA/server-tools <https://github.com/OCA/server-tools/tree/18.0/base_url>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions base_url/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
23 changes: 23 additions & 0 deletions base_url/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Rewrite url Base module for OpenERP
# Copyright (C) 2013 Akretion (http://www.akretion.com)
# @author EBII MonsieurB <monsieurb@saaslys.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "Base Url",
"version": "18.0.1.0.0",
"category": "tools",
"license": "AGPL-3",
"summary": "Abstract module/mixin to manage clean url on odoo record",
"author": "Akretion, ACSONE SA/NV, Odoo Community Association (OCA)",
"website": "https://github.com/OCA/server-tools",
"depends": ["base", "base_sparse_field_list_support"],
"maintainers": ["sebastienbeau"],
"external_dependencies": {"python": ["python-slugify"]},
"data": [
"views/url_view.xml",
"security/res_groups.xml",
"security/ir.model.access.csv",
],
"installable": True,
}
167 changes: 167 additions & 0 deletions base_url/i18n/base_url.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,167 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * base_url
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: base_url
#: model:ir.model,name:base_url.model_abstract_url
msgid "Abstract Url"
msgstr ""

#. module: base_url
#: model:ir.model.constraint,message:base_url.constraint_url_url_unique_key_per_referential_per_lang
msgid "Already exists in database"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_abstract_url__count_url
msgid "Count Url"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__create_uid
msgid "Created by"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__create_date
msgid "Created on"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__display_name
msgid "Display Name"
msgstr ""

#. module: base_url
#: model:res.groups,name:base_url.group_edit_url
msgid "Edit url"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__id
msgid "ID"
msgstr ""

#. module: base_url
#: model:ir.model.fields,help:base_url.field_url_url__res_id
msgid "ID of the target record in the database"
msgstr ""

#. module: base_url
#: model:ir.model.fields,help:base_url.field_url_url__redirect
msgid "If tick this url is a redirection to the new url"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__key
msgid "Key"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__lang_id
msgid "Lang"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url____last_update
msgid "Last Modified on"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__write_uid
msgid "Last Updated by"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__write_date
msgid "Last Updated on"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__manual
msgid "Manual"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__need_refresh
msgid "Need Refresh"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__res_id
msgid "Record ID"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__redirect
msgid "Redirect"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_abstract_url__redirect_url_key
msgid "Redirect Url Keys"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__referential
msgid "Referential"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_url_url__res_model
msgid "Res Model"
msgstr ""

#. module: base_url
#: model:ir.model,name:base_url.model_url_url
#: model:ir.model.fields,field_description:base_url.field_abstract_url__url_ids
msgid "Url"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_abstract_url__url_key
msgid "Url Key"
msgstr ""

#. module: base_url
#: model:ir.model.fields,field_description:base_url.field_abstract_url__url_need_refresh
msgid "Url Need Refresh"
msgstr ""

#. module: base_url
#: model_terms:ir.ui.view,arch_db:base_url.url_view_form
msgid "Url rewriting edit form"
msgstr ""

#. module: base_url
#. odoo-python
#: code:addons/base_url/models/abstract_url.py:0
#, python-format
msgid ""
"Url_key already exist in other model\n"
"- name: %(model_name)s\n"
" - id: %(model_id)s\n"
"- url_key: %(url_key)s\n"
" - url_key_id %(url_id)s"
msgstr ""

#. module: base_url
#: model:ir.ui.menu,name:base_url.url_menu_view
msgid "Url_rewrite"
msgstr ""

#. module: base_url
#: model:ir.actions.act_window,name:base_url.base_url_action_view
msgid "url list Viewer"
msgstr ""
2 changes: 2 additions & 0 deletions base_url/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import abstract_url
from . import url_url
Loading
Loading