Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[16.0] [MIG] partner_firstname #1357

Merged
merged 77 commits into from
Oct 11, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
c3ee752
[ADD] partner_firstname for v8
eLBati Jul 23, 2014
a506f2e
Fix pep8 (line length)
bwrsandman Aug 19, 2014
f4543fa
Spanish translation
Dec 23, 2014
ff4d3e3
[FIX] partner_firstname: Change _id by id in the method copy_data to …
Jan 29, 2015
d69d9d1
Add OCA as author of OCA addons
gurneyalex Mar 2, 2015
88e910d
[FIX] partner_firstname: Better practices in views
pedrobaeza Feb 15, 2015
a0c17dd
[FIX] cannot create user due to required name.
Apr 17, 2015
796b706
[ADD] Italian translation
LeartS May 12, 2015
55bb289
Danish translation of partner_firstname
hhgabelgaard May 22, 2015
05e7dcc
Better partner_firstname. Merged rebase.
May 15, 2015
2ec82b1
[REF][partner_firstname] Method refactoring to use algorithms in othe…
adrienpeiffer Aug 17, 2015
a67ed00
Add missing default oca icons
yvaucher Aug 18, 2015
45f2ea0
[IMP][partner_firstname] Update documentation according methods refac…
adrienpeiffer Aug 18, 2015
c47f95f
[UPD] prefix versions with 8.0
sbidoul Oct 9, 2015
d702fb2
[MIG] Make modules uninstallable
pedrobaeza Oct 14, 2015
c307969
Prepare partner_firstname for partner_second_lastname
May 15, 2015
0abaa0c
Fix #78. Test it too.
Oct 30, 2015
619ff80
Inverse values of name if required at creation.
Oct 30, 2015
f279c6e
Allow creation of partners from *Create and Edit*.
Nov 2, 2015
209f7d5
Fix bug #154.
Sep 7, 2015
8b3830c
[FIX] _get_inverse_name in case of space in name
bealdav Aug 20, 2015
dec3fe3
Credit creators, using same name across modules to avoid split statis…
Jan 5, 2016
305772d
[PORT] partner_firstname to 9.0
yvaucher Jan 12, 2016
33959ff
OCA Transbot updated translations from Transifex
oca-transbot Sep 1, 2015
86f1798
[FIX] remove en.po that was erroneously created by transbot
sbidoul Aug 15, 2016
875bee7
[MIG] Make modules uninstallable
pedrobaeza Oct 6, 2016
41db945
[MIG] Rename manifest files
pedrobaeza Oct 6, 2016
485bf86
[MIG] Migrate partner_firstname to v10
Oct 6, 2016
724c738
[IMP] Partner names order configurable
antespi Dec 18, 2015
ccffdf5
[FIX] partner_firstname: name, firstname and lastname only required i…
mmuch Feb 27, 2017
35d7203
OCA Transbot updated translations from Transifex
oca-transbot Mar 11, 2017
3b7eb2b
[MIG] partner_firstname: Upgrade to v10
lasley Nov 13, 2016
2bb09a6
[UPD] partner_firstname: fix website url in manifest
sbidoul Mar 13, 2017
17c6b3e
fix unicode/ascii error
damdam-s Jun 2, 2017
d6ef6a9
[IMP] partner_firstname: Add indices
lasley Aug 25, 2017
c9acb82
[MIG] partner_firstname
etobella Oct 9, 2017
5a2cf7b
OCA Transbot updated translations from Transifex
oca-transbot Nov 25, 2017
5b13002
[FIX] config_parameter must be readed with sudo
etobella Mar 21, 2018
c9977b3
[FIX] partner_firstname: Mixed content error, move to HTTPS
yajo Jun 11, 2018
b1062b9
remove obsolete .pot files [ci skip]
sbidoul Jun 15, 2018
d848d89
Translated using Weblate (Español (España))
etobella Jul 13, 2018
83db261
Translated using Weblate (German)
rschnapka Aug 22, 2018
a2cfefa
Bug fix when copying partners
wpichler Oct 29, 2018
fa3c34b
Migrate to V12
gdgellatly Oct 29, 2018
ced905c
Translated using Weblate (Italian)
primes2h Dec 23, 2018
cc01d55
Translated using Weblate (Italian)
primes2h Dec 29, 2018
f4aee21
[12.0] Fix migration script 12.0.1.0.0 of partner_firstname
ddufresne Feb 13, 2019
c2c1843
Translated using Weblate (French)
Kilhog May 24, 2019
b9c605d
[FIX] partner_firstname: Pylint errors
max3903 Jul 20, 2019
8856e82
[MIG] partner_firstname: Black, isort
lmignon Nov 7, 2019
71fe472
[MIG] partner_firstname: Migration to 13.0
lmignon Nov 7, 2019
d76a3f6
[MIG] partner_fistname: Migration to 13.0
lmignon Nov 7, 2019
6741a19
[MIG] partner_firstname: Fix config settings
lmignon Nov 7, 2019
018e2b0
[FIX] partner_firstname website in manifest
Nov 18, 2019
95cc2bb
partner_firstname 13.0.1.0.1
OCA-git-bot Nov 18, 2019
f713c80
Translated using Weblate (Portuguese (Brazil))
mileo Nov 25, 2019
61269c0
Translated using Weblate (Hungarian)
tdombos Jan 23, 2020
00bc321
[FIX] partner_firstname. Fix tests.
NL66278 Feb 14, 2020
e595a38
pre-commit update
OCA-git-bot Mar 14, 2020
40694b3
[MIG] partner_firstname: Migration to 14.0
luistorresm Oct 12, 2020
f0ad131
[UPD] Update partner_firstname.pot
oca-travis Oct 12, 2020
2383606
[UPD] README.rst
OCA-git-bot Oct 12, 2020
87a2abd
[FIX] Handle byte encoded string from ldap
astirpe Nov 16, 2020
56d1df9
partner_firstname 14.0.1.0.1
OCA-git-bot Dec 3, 2020
d42e0de
[MIG] partner_firstname: Migration to 15.0
bjornbillen Nov 12, 2021
de08793
[MIG] partner_firstname: Migration to 15.0
bjornbillen Nov 12, 2021
47cb841
[MIG][IMP] partner_firstname: Migration to 15.0 - updates after review
bjornbillen Nov 17, 2021
8e32369
[MIG][IMP] partner_firstname: Migration to 15.0 - updates after review
bjornbillen Jan 24, 2022
19c960c
[UPD] Update partner_firstname.pot
Feb 9, 2022
b0792b1
[UPD] README.rst
OCA-git-bot Feb 9, 2022
c67dedf
[IMP] update dotfiles [ci skip]
OCA-git-bot Mar 31, 2022
0549516
Translated using Weblate (Catalan)
juliap98 Apr 7, 2022
a982c8a
Translated using Weblate (Catalan)
pablontura Apr 22, 2022
39f0884
[IMP] partner_firstname: black, isort, prettier
FrancoMaxime Aug 23, 2022
1f44877
[MIG] : Migration to 16.0
FrancoMaxime Aug 24, 2022
6e4ba6e
[FIX] partner_firstname - return vals_list in create override
baimont Oct 6, 2022
9f02f1f
[FIX] partner_firstname - fix form tests
baimont Oct 6, 2022
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
140 changes: 140 additions & 0 deletions partner_firstname/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
================================
Partner first name and last name
================================

.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |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%2Fpartner--contact-lightgray.png?logo=github
:target: https://github.com/OCA/partner-contact/tree/16.0/partner_firstname
:alt: OCA/partner-contact
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/partner-contact-16-0/partner-contact-16-0-partner_firstname
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/134/16.0
:alt: Try me on Runbot

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

This module was written to extend the functionality of contacts to support
having separate last name and first name.

**Table of contents**

.. contents::
:local:

Configuration
=============

You can configure some common name patterns for the inverse function
in Settings > General settings:

* Lastname Firstname: For example 'Anderson Robert'
* Lastname, Firstname: For example 'Anderson, Robert'
* Firstname Lastname: For example 'Robert Anderson'

After applying the changes, you can recalculate all partners name clicking
"Recalculate names" button. Note: This process could take so much time depending
how many partners there are in database.

You can use *_get_inverse_name* method to get lastname and firstname from a simple string
and also *_get_computed_name* to get a name form the lastname and firstname.
These methods can be overridden to change the format specified above.

Usage
=====

The field *name* becomes a stored function field concatenating the *last name*
and the *first name*. This avoids breaking compatibility with other modules.

Users should fulfill manually the separate fields for *last name* and *first
name*, but in case you edit just the *name* field in some unexpected module,
there is an inverse function that tries to split that automatically. It assumes
that you write the *name* in format configured (*"Lastname Firstname"*, by default),
but it could lead to wrong splitting (because it's just blindly trying to
guess what you meant), so you better specify it manually.

For the same reason, after installing, previous names for contacts will stay in
the *name* field, and the first time you edit any of them you will be asked to
supply the *last name* and *first name* (just once per contact).

Known issues / Roadmap
======================

Patterns for the inverse function are configurable only at system level. Maybe
this configuration could depend on partner language, country or company,
as discussed at `this OCA issue <https://github.com/OCA/partner-contact/issues/210>`_

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/partner-contact/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
`feedback <https://github.com/OCA/partner-contact/issues/new?body=module:%20partner_firstname%0Aversion:%2016.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
~~~~~~~

* Camptocamp
* Grupo ESOC Ingeniería de Servicios
* Tecnativa
* LasLabs
* ACSONE SA/NV
* DynApps NV

Contributors
~~~~~~~~~~~~

* Nicolas Bessi <[email protected]>
* Yannick Vaucher <[email protected]>
* Vincent Renaville <[email protected]>
* Guewen Baconnier <[email protected]>
* Holger Brunn <[email protected]>
* Jonathan Nemry <[email protected]>
* Olivier Laurent <[email protected]>
* Sandy Carter <[email protected]>
* Alexis de Lattre <[email protected]>
* Lorenzo Battistini <[email protected]>
* Hans Henrik Gabelgaard <[email protected]>
* Jairo Llopis <[email protected]>
* Adrien Peiffer <[email protected]>
* Ronald Portier <[email protected]>
* Sylvain Van Hoof
* Pedro Baeza <[email protected]>
* Dave Lasley <[email protected]>
* Graeme Gellatly <[email protected]>
* Laurent Mignon <[email protected]>
* Bjorn Billen <[email protected]>

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.

This module is part of the `OCA/partner-contact <https://github.com/OCA/partner-contact/tree/16.0/partner_firstname>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 2 additions & 0 deletions partner_firstname/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import models
from .hooks import post_init_hook
30 changes: 30 additions & 0 deletions partner_firstname/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Copyright 2013 Nicolas Bessi (Camptocamp SA)
# Copyright 2014 Agile Business Group (<http://www.agilebg.com>)
# Copyright 2015 Grupo ESOC (<http://www.grupoesoc.es>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).

{
"name": "Partner first name and last name",
"summary": "Split first name and last name for non company partners",
"version": "16.0.1.0.0",
"author": "Camptocamp, "
"Grupo ESOC Ingeniería de Servicios, "
"Tecnativa, "
"LasLabs, "
"ACSONE SA/NV, "
"DynApps NV, "
"Odoo Community Association (OCA)",
"license": "AGPL-3",
"maintainer": "Camptocamp, Acsone",
"category": "Extra Tools",
"website": "https://github.com/OCA/partner-contact",
"depends": ["base_setup"],
"post_init_hook": "post_init_hook",
"data": [
"views/base_config_view.xml",
"views/res_partner.xml",
"views/res_user.xml",
],
"auto_install": False,
"installable": True,
}
12 changes: 12 additions & 0 deletions partner_firstname/exceptions.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Copyright 2014-2015 Grupo ESOC (<http://www.grupoesoc.es>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo import _, exceptions


class EmptyNamesError(exceptions.ValidationError):
def __init__(self, record, value=None):
value = value or _("No name is set.")
self.record = record
self._value = value
self._name = _("Error(s) with partner %d's name.") % record.id
self.args = (self._name, value)
9 changes: 9 additions & 0 deletions partner_firstname/hooks.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Copyright 2017 LasLabs Inc.
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).

from odoo import SUPERUSER_ID, api


def post_init_hook(cr, _):
env = api.Environment(cr, SUPERUSER_ID, {})
env["res.partner"]._install_partner_firstname()
116 changes: 116 additions & 0 deletions partner_firstname/i18n/am.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * partner_firstname
#
# Translators:
# OCA Transbot <[email protected]>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-10 03:39+0000\n"
"PO-Revision-Date: 2017-03-10 03:39+0000\n"
"Last-Translator: OCA Transbot <[email protected]>, 2017\n"
"Language-Team: Amharic (https://www.transifex.com/oca/teams/23907/am/)\n"
"Language: am\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#. module: partner_firstname
#: code:addons/partner_firstname/models/res_users.py:0
#, python-format
msgid "%(name)s (copy)"
msgstr ""

#. module: partner_firstname
#: code:addons/partner_firstname/models/res_users.py:0
#, python-format
msgid "%(login)s (copy)"
msgstr ""

#. module: partner_firstname
#: model:ir.model,name:partner_firstname.model_res_config_settings
msgid "Config Settings"
msgstr ""

#. module: partner_firstname
#: model:ir.model,name:partner_firstname.model_res_partner
msgid "Contact"
msgstr ""

#. module: partner_firstname
#: model:ir.model.constraint,message:partner_firstname.constraint_res_partner_check_name
msgid "Contacts require a name."
msgstr ""

#. module: partner_firstname
#: code:addons/partner_firstname/exceptions.py:0
#, python-format
msgid "Error(s) with partner %d's name."
msgstr ""

#. module: partner_firstname
#: model:ir.model.fields,field_description:partner_firstname.field_res_partner__firstname
#: model:ir.model.fields,field_description:partner_firstname.field_res_users__firstname
msgid "First name"
msgstr ""

#. module: partner_firstname
#: model:ir.model.fields,field_description:partner_firstname.field_res_partner__lastname
#: model:ir.model.fields,field_description:partner_firstname.field_res_users__lastname
msgid "Last name"
msgstr ""

#. module: partner_firstname
#: model:ir.model.fields,field_description:partner_firstname.field_res_partner__name
#: model:ir.model.fields,field_description:partner_firstname.field_res_users__name
msgid "Name"
msgstr ""

#. module: partner_firstname
#: code:addons/partner_firstname/exceptions.py:0
#, python-format
msgid "No name is set."
msgstr ""

#. module: partner_firstname
#: model:ir.model.fields,help:partner_firstname.field_res_config_settings__partner_names_order
msgid "Order to compose partner fullname"
msgstr ""

#. module: partner_firstname
#: model_terms:ir.ui.view,arch_db:partner_firstname.res_config_settings_view_form
msgid "Partner Names Order"
msgstr ""

#. module: partner_firstname
#: model:ir.model.fields,field_description:partner_firstname.field_res_config_settings__partner_names_order_changed
msgid "Partner Names Order Changed"
msgstr ""

#. module: partner_firstname
#: model:ir.model.fields,field_description:partner_firstname.field_res_config_settings__partner_names_order
msgid "Partner names order"
msgstr ""

#. module: partner_firstname
#: model_terms:ir.ui.view,arch_db:partner_firstname.res_config_settings_view_form
msgid "Recalculate names"
msgstr ""

#. module: partner_firstname
#: model_terms:ir.ui.view,arch_db:partner_firstname.res_config_settings_view_form
msgid ""
"Recalculate names for all partners. This process could take so much time if "
"there are more than 10,000 active partners"
msgstr ""

#. module: partner_firstname
#: model:ir.model,name:partner_firstname.model_res_users
msgid "Users"
msgstr ""

#~ msgid "Partner"
#~ msgstr "ተባባሪ"
Loading