diff --git a/golem_activity_registration/__manifest__.py b/golem_activity_registration/__manifest__.py index d2ce101..f760937 100644 --- a/golem_activity_registration/__manifest__.py +++ b/golem_activity_registration/__manifest__.py @@ -18,7 +18,7 @@ { 'name': 'GOLEM Activity Member Registrations', 'summary': 'GOLEM Activities Member Registrations management', - 'version': '10.0.1.4.5', + 'version': '10.0.1.5.0', 'category': 'GOLEM', 'author': 'Fabien Bourgeois, Michel Dessenne', 'license': 'AGPL-3', diff --git a/golem_activity_registration/i18n/fr.po b/golem_activity_registration/i18n/fr.po index 4c5b9c7..bddeb50 100644 --- a/golem_activity_registration/i18n/fr.po +++ b/golem_activity_registration/i18n/fr.po @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 10.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-09 14:23+0000\n" -"PO-Revision-Date: 2018-08-09 16:38+0200\n" +"POT-Creation-Date: 2018-09-26 08:25+0000\n" +"PO-Revision-Date: 2018-09-26 10:28+0200\n" "Last-Translator: <>\n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -204,6 +204,13 @@ msgstr "Le nombre de places ne peut pas être négatif" msgid "On default season, there is no activity for this member." msgstr "Sur la saison par défaut, il n'y a pas d'activité pour cet usager." +#. module: golem_activity_registration +#: model:ir.model.fields,field_description:golem_activity_registration.field_golem_activity_only_for_subscriber +#: model:ir.model.fields,field_description:golem_activity_registration.field_golem_activity_registration_only_for_subscriber +#: model:ir.ui.view,arch_db:golem_activity_registration.golem_activity_search_inherit_registration +msgid "Only for subscriber" +msgstr "Réservé aux adhérents" + #. module: golem_activity_registration #: model:ir.model.fields,field_description:golem_activity_registration.field_golem_activity_places msgid "Places" @@ -245,7 +252,7 @@ msgid "Service user" msgstr "Usager" #. module: golem_activity_registration -#: code:addons/golem_activity_registration/models/golem_activity_registration.py:70 +#: code:addons/golem_activity_registration/models/golem_activity_registration.py:71 #, python-format msgid "Sorry, there is no more place !" msgstr "Désolé, il n'y a plus de place disponible !" @@ -256,13 +263,19 @@ msgid "Subscription" msgstr "Inscription" #. module: golem_activity_registration -#: code:addons/golem_activity_registration/models/golem_activity_registration.py:100 +#: code:addons/golem_activity_registration/models/golem_activity_registration.py:130 +#, python-format +msgid "Subscription can not be executed : the targeted activity is only for subscriber." +msgstr "L'inscription n'a pas pu être faite : l'activité choisie est réservée aux adhérents." + +#. module: golem_activity_registration +#: code:addons/golem_activity_registration/models/golem_activity_registration.py:134 #, python-format msgid "Subscription can not be executed : the targeted member is not on the same season as the activity." msgstr "L'inscription n'a pas pu être enregistrée : l'usager visé n'est pas ahdérant pour la même saison que celle pendant laquelle se déroule l'activité." #. module: golem_activity_registration -#: code:addons/golem_activity_registration/models/golem_activity_registration.py:92 +#: code:addons/golem_activity_registration/models/golem_activity_registration.py:104 #: sql_constraint:golem.activity.registration:0 #, python-format msgid "This member has already been registered for this activity." diff --git a/golem_activity_registration/i18n/golem_activity_registration.pot b/golem_activity_registration/i18n/golem_activity_registration.pot index b56cd83..4bc0b2b 100644 --- a/golem_activity_registration/i18n/golem_activity_registration.pot +++ b/golem_activity_registration/i18n/golem_activity_registration.pot @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 10.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-09 14:23+0000\n" -"PO-Revision-Date: 2018-08-09 14:23+0000\n" +"POT-Creation-Date: 2018-09-26 08:25+0000\n" +"PO-Revision-Date: 2018-09-26 08:25+0000\n" "Last-Translator: <>\n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -204,6 +204,13 @@ msgstr "" msgid "On default season, there is no activity for this member." msgstr "" +#. module: golem_activity_registration +#: model:ir.model.fields,field_description:golem_activity_registration.field_golem_activity_only_for_subscriber +#: model:ir.model.fields,field_description:golem_activity_registration.field_golem_activity_registration_only_for_subscriber +#: model:ir.ui.view,arch_db:golem_activity_registration.golem_activity_search_inherit_registration +msgid "Only for subscriber" +msgstr "" + #. module: golem_activity_registration #: model:ir.model.fields,field_description:golem_activity_registration.field_golem_activity_places msgid "Places" @@ -245,7 +252,7 @@ msgid "Service user" msgstr "" #. module: golem_activity_registration -#: code:addons/golem_activity_registration/models/golem_activity_registration.py:70 +#: code:addons/golem_activity_registration/models/golem_activity_registration.py:71 #, python-format msgid "Sorry, there is no more place !" msgstr "" @@ -256,13 +263,19 @@ msgid "Subscription" msgstr "" #. module: golem_activity_registration -#: code:addons/golem_activity_registration/models/golem_activity_registration.py:100 +#: code:addons/golem_activity_registration/models/golem_activity_registration.py:130 +#, python-format +msgid "Subscription can not be executed : the targeted activity is only for subscriber." +msgstr "" + +#. module: golem_activity_registration +#: code:addons/golem_activity_registration/models/golem_activity_registration.py:134 #, python-format msgid "Subscription can not be executed : the targeted member is not on the same season as the activity." msgstr "" #. module: golem_activity_registration -#: code:addons/golem_activity_registration/models/golem_activity_registration.py:92 +#: code:addons/golem_activity_registration/models/golem_activity_registration.py:104 #: sql_constraint:golem.activity.registration:0 #, python-format msgid "This member has already been registered for this activity." diff --git a/golem_activity_registration/models/golem_activity_registration.py b/golem_activity_registration/models/golem_activity_registration.py index 7dcbb8d..f42e4d3 100644 --- a/golem_activity_registration/models/golem_activity_registration.py +++ b/golem_activity_registration/models/golem_activity_registration.py @@ -76,7 +76,7 @@ class GolemActivityRegistration(models.Model): """ GOLEM Activity Registration """ _name = 'golem.activity.registration' _description = 'GOLEM Activity Registration' - _rec_name ='activity_id' + _rec_name = 'activity_id' member_id = fields.Many2one('golem.member', string='Service user', required=True, ondelete='cascade', index=True) @@ -92,6 +92,23 @@ class GolemActivityRegistration(models.Model): ('registration_uniq', 'UNIQUE (member_id, activity_id)', _('This member has already been registered for this activity.'))] + @api.onchange('activity_id', 'activity_id.only_for_subscriber') + def onchange_activity_subcrib(self): + """ If activity only for subscribers : do not allow non subscribers """ + domain = [] + if self.activity_id.only_for_subscriber: + domain.append(('membership_state', 'not in', ('none', 'canceled', 'old'))) + return {'domain': {'member_id': domain}} + + @api.onchange('member_id') + def onchange_member_subcrib(self): + """ If not subscriber : do not show subscribers only activities """ + domain = [] + if self.member_id and self.member_id.membership_state in ('none', 'canceled', 'old'): + domain.append(('only_for_subscriber', '=', False)) + return {'domain': {'activity_id': domain}} + + @api.constrains('member_id', 'activity_id') def _check_season_reliability(self): """ Forbid registration when member season if not coherent with diff --git a/golem_activity_registration/views/golem_activity_views.xml b/golem_activity_registration/views/golem_activity_views.xml index a3827d5..265455e 100644 --- a/golem_activity_registration/views/golem_activity_views.xml +++ b/golem_activity_registration/views/golem_activity_views.xml @@ -38,7 +38,7 @@ along with this program. If not, see . - +