Adrien Peiffer (ACSONE)
9 years ago
committed by
Luis M. Ontalba
10 changed files with 291 additions and 0 deletions
-
48partner_academic_title/README.rst
-
2partner_academic_title/__init__.py
-
43partner_academic_title/__openerp__.py
-
49partner_academic_title/data/partner_academic_title_data.xml
-
3partner_academic_title/models/__init__.py
-
35partner_academic_title/models/partner_academic_title.py
-
54partner_academic_title/models/res_partner.py
-
3partner_academic_title/security/ir.model.access.csv
-
38partner_academic_title/views/partner_academic_title_view.xml
-
16partner_academic_title/views/res_partner_view.xml
@ -0,0 +1,48 @@ |
|||
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg |
|||
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html |
|||
:alt: License: AGPL-3 |
|||
|
|||
====================== |
|||
Partner Academic Title |
|||
====================== |
|||
|
|||
This module was written to adds possibility to define some academic titles and |
|||
to add multiple titles on partners. there is a sequence on titles to display |
|||
them in an order on the partner. |
|||
|
|||
Usage |
|||
===== |
|||
|
|||
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas |
|||
:alt: Try me on Runbot |
|||
:target: https://runbot.odoo-community.org/runbot/134/8.0 |
|||
|
|||
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 |
|||
`here <https://github.com/OCA/partner-contact/issues/new?body=module:%20partner_academic_title%0Aversion:%208.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_. |
|||
|
|||
Credits |
|||
======= |
|||
|
|||
Contributors |
|||
------------ |
|||
|
|||
* Stéphane Bidoul <stephane.bidoul@acsone.eu> |
|||
* Adrien Peiffer <adrien.peiffer@acsone.eu> |
|||
|
|||
Maintainer |
|||
---------- |
|||
|
|||
.. image:: http://odoo-community.org/logo.png |
|||
:alt: Odoo Community Association |
|||
:target: http://odoo-community.org |
|||
|
|||
This module is maintained by the OCA. |
|||
|
|||
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. |
|||
|
|||
To contribute to this module, please visit http://odoo-community.org. |
@ -0,0 +1,2 @@ |
|||
# -*- coding: utf-8 -*- |
|||
from . import models |
@ -0,0 +1,43 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# This file is part of partner_academic_title, |
|||
# an Odoo module. |
|||
# |
|||
# Copyright (c) 2015 ACSONE SA/NV (<http://acsone.eu>) |
|||
# |
|||
# partner_academic_title is free software: |
|||
# you can redistribute it and/or modify it under the terms of the GNU |
|||
# Affero General Public License as published by the Free Software |
|||
# Foundation,either version 3 of the License, or (at your option) any |
|||
# later version. |
|||
# |
|||
# partner_academic_title is distributed |
|||
# in the hope that it will be useful, but WITHOUT ANY WARRANTY; without |
|||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR |
|||
# PURPOSE. See the GNU Affero General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU Affero General Public License |
|||
# along with partner_academic_title. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
{ |
|||
'name': "Partner Academic Title", |
|||
'summary': """ |
|||
Add possibility to define some academic title""", |
|||
'author': 'ACSONE SA/NV,Odoo Community Association (OCA)', |
|||
'website': "http://acsone.eu", |
|||
'category': 'Other', |
|||
'version': '8.0.1.0.0', |
|||
'license': 'AGPL-3', |
|||
'depends': [ |
|||
'hr', |
|||
], |
|||
'data': [ |
|||
'security/ir.model.access.csv', |
|||
'data/partner_academic_title_data.xml', |
|||
'views/partner_academic_title_view.xml', |
|||
'views/res_partner_view.xml', |
|||
], |
|||
} |
@ -0,0 +1,49 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<openerp> |
|||
<data noupdate="1"> |
|||
<record id="academic_title_bs" model="partner.academic.title"> |
|||
<field name="name">B.S.</field> |
|||
<field name="sequence">1</field> |
|||
</record> |
|||
<record id="academic_title_ms" model="partner.academic.title"> |
|||
<field name="name">M.S.</field> |
|||
<field name="sequence">2</field> |
|||
</record> |
|||
<record id="academic_title_mph" model="partner.academic.title"> |
|||
<field name="name">M.P.H.</field> |
|||
<field name="sequence">3</field> |
|||
</record> |
|||
<record id="academic_title_mba" model="partner.academic.title"> |
|||
<field name="name">M.B.A.</field> |
|||
<field name="sequence">4</field> |
|||
</record> |
|||
<record id="academic_title_md" model="partner.academic.title"> |
|||
<field name="name">M.D.</field> |
|||
<field name="sequence">5</field> |
|||
</record> |
|||
<record id="academic_title_phd" model="partner.academic.title"> |
|||
<field name="name">Ph.D.</field> |
|||
<field name="sequence">6</field> |
|||
</record> |
|||
<record id="academic_title_edd" model="partner.academic.title"> |
|||
<field name="name">Ed.D</field> |
|||
<field name="sequence">7</field> |
|||
</record> |
|||
<record id="academic_title_psyd" model="partner.academic.title"> |
|||
<field name="name">Psy.D.</field> |
|||
<field name="sequence">8</field> |
|||
</record> |
|||
<record id="academic_title_thd" model="partner.academic.title"> |
|||
<field name="name">Th.D.</field> |
|||
<field name="sequence">9</field> |
|||
</record> |
|||
<record id="academic_title_pharmd" model="partner.academic.title"> |
|||
<field name="name">Pharm.D.</field> |
|||
<field name="sequence">10</field> |
|||
</record> |
|||
<record id="academic_title_jd" model="partner.academic.title"> |
|||
<field name="name">J.D.</field> |
|||
<field name="sequence">11</field> |
|||
</record> |
|||
</data> |
|||
</openerp> |
@ -0,0 +1,3 @@ |
|||
# -*- coding: utf-8 -*- |
|||
from . import partner_academic_title |
|||
from . import res_partner |
@ -0,0 +1,35 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# This file is part of partner_academic_title, |
|||
# an Odoo module. |
|||
# |
|||
# Copyright (c) 2015 ACSONE SA/NV (<http://acsone.eu>) |
|||
# |
|||
# partner_academic_title is free software: |
|||
# you can redistribute it and/or modify it under the terms of the GNU |
|||
# Affero General Public License as published by the Free Software |
|||
# Foundation,either version 3 of the License, or (at your option) any |
|||
# later version. |
|||
# |
|||
# partner_academic_title is distributed |
|||
# in the hope that it will be useful, but WITHOUT ANY WARRANTY; without |
|||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR |
|||
# PURPOSE. See the GNU Affero General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU Affero General Public License |
|||
# along with partner_academic_title. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
|
|||
from openerp import models, fields |
|||
|
|||
|
|||
class PartnerAcademicTitle(models.Model): |
|||
_name = 'partner.academic.title' |
|||
|
|||
name = fields.Char(required=True) |
|||
sequence = fields.Integer(required=True, |
|||
help="""defines the order to display titles""") |
|||
active = fields.Boolean(default=True) |
@ -0,0 +1,54 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# This file is part of partner_academic_title, |
|||
# an Odoo module. |
|||
# |
|||
# Copyright (c) 2015 ACSONE SA/NV (<http://acsone.eu>) |
|||
# |
|||
# partner_academic_title is free software: |
|||
# you can redistribute it and/or modify it under the terms of the GNU |
|||
# Affero General Public License as published by the Free Software |
|||
# Foundation,either version 3 of the License, or (at your option) any |
|||
# later version. |
|||
# |
|||
# partner_academic_title is distributed |
|||
# in the hope that it will be useful, but WITHOUT ANY WARRANTY; without |
|||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR |
|||
# PURPOSE. See the GNU Affero General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU Affero General Public License |
|||
# along with partner_academic_title. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
|
|||
from openerp import models, fields, api |
|||
|
|||
|
|||
class ResPartner(models.Model): |
|||
_inherit = 'res.partner' |
|||
|
|||
def _get_separator(self): |
|||
return '-' |
|||
|
|||
@api.depends('academic_title_ids', 'academic_title_ids.sequence') |
|||
@api.one |
|||
def _get_academic_title_display(self): |
|||
display_title = "" |
|||
separator = self._get_separator() |
|||
title_ids = self.academic_title_ids.sorted(lambda r: r.sequence) |
|||
for title in title_ids: |
|||
if display_title: |
|||
display_title = "%s %s %s" % (display_title, separator, |
|||
title.name) |
|||
else: |
|||
display_title = "%s" % (title.name) |
|||
self.academic_title_display = display_title |
|||
|
|||
academic_title_ids = fields.Many2many( |
|||
comodel_name='partner.academic.title', |
|||
relation='partner_academic_title_ref', column1='partner_id', |
|||
column2='academic_title_id', string='Academic Titles') |
|||
academic_title_display = fields.Char(compute='_get_academic_title_display', |
|||
string='Academic Titles', store=True) |
@ -0,0 +1,3 @@ |
|||
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink |
|||
access_partner_academic_title_system,access_academic_title_system,model_partner_academic_title,base.group_system,1,1,1,1 |
|||
access_partner_academic_title_user,access_academic_title_user,model_partner_academic_title,base.group_user,1,0,0,0 |
@ -0,0 +1,38 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<openerp> |
|||
<data> |
|||
<record id="view_academic_title_form" model="ir.ui.view"> |
|||
<field name="name">partner.academic.title.form</field> |
|||
<field name="model">partner.academic.title</field> |
|||
<field name="arch" type="xml"> |
|||
<form> |
|||
<sheet> |
|||
<group> |
|||
<field name="name" /> |
|||
<field name="sequence" /> |
|||
<field name="active" /> |
|||
</group> |
|||
</sheet> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="view_academic_title_tree" model="ir.ui.view"> |
|||
<field name="name">partner.academic.title.tree</field> |
|||
<field name="model">partner.academic.title</field> |
|||
<field name="arch" type="xml"> |
|||
<tree editable="bottom"> |
|||
<field name="sequence"/> |
|||
<field name="name" /> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
<record id="open_academic_title" model="ir.actions.act_window"> |
|||
<field name="name">Academic Titles</field> |
|||
<field name="res_model">partner.academic.title</field> |
|||
<field name="view_type">form</field> |
|||
<field name="view_mode">tree,form</field> |
|||
</record> |
|||
<menuitem id="menu_academic_title" name="Academic Titles" parent="base.menu_config_address_book" groups="base.group_system" action="open_academic_title" sequence="4"/> |
|||
</data> |
|||
</openerp> |
@ -0,0 +1,16 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<openerp> |
|||
<data> |
|||
<record id="view_partner_form" model="ir.ui.view"> |
|||
<field name="name">res.partner.form (partner_academic_title)</field> |
|||
<field name="model">res.partner</field> |
|||
<field name="inherit_id" ref="base.view_partner_form" /> |
|||
<field name="arch" type="xml"> |
|||
<xpath expr="//field[@name='title']" position="after"> |
|||
<field name="academic_title_ids" class="oe_edit_only" widget="many2many_tags" placeholder="Academic Titles"/> |
|||
<field name="academic_title_display" class="oe_read_only" /> |
|||
</xpath> |
|||
</field> |
|||
</record> |
|||
</data> |
|||
</openerp> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue