From 20c57c5e571ebf2d38d1a2304f9564fb3fd70a83 Mon Sep 17 00:00:00 2001 From: eloyoussef Date: Mon, 19 Feb 2018 23:58:50 +0100 Subject: [PATCH] organise files and configure the activity queue register button --- golem_activity_queue/models/__init__.py | 2 + golem_activity_queue/models/golem_activity.py | 76 +++++++++++++++++++ .../models/golem_activity_queue.py | 62 +-------------- golem_activity_queue/models/golem_member.py | 17 +++++ .../views/golem_activity_queue_views.xml | 10 +-- .../views/golem_activity_views.xml | 4 +- 6 files changed, 105 insertions(+), 66 deletions(-) create mode 100644 golem_activity_queue/models/golem_activity.py create mode 100644 golem_activity_queue/models/golem_member.py diff --git a/golem_activity_queue/models/__init__.py b/golem_activity_queue/models/__init__.py index 0ff98f0..e279223 100644 --- a/golem_activity_queue/models/__init__.py +++ b/golem_activity_queue/models/__init__.py @@ -16,3 +16,5 @@ # along with this program. If not, see . from . import golem_activity_queue +from . import golem_activity +from . import golem_member diff --git a/golem_activity_queue/models/golem_activity.py b/golem_activity_queue/models/golem_activity.py new file mode 100644 index 0000000..cf35b4e --- /dev/null +++ b/golem_activity_queue/models/golem_activity.py @@ -0,0 +1,76 @@ +# -*- coding: utf-8 -*- + +# Copyright 2018 Youssef El Ouahby +# Copyright 2018 Fabien Bourgeois +# +# This program 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. +# +# This program 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 this program. If not, see . + +from odoo import models, fields, api, _ + +class GolemActivity(models.Model): + """ GOLEM Activity adaptations """ + _inherit = 'golem.activity' + + + #ajout d'un champs O2M vers activity_id + activity_queue_id = fields.One2many('golem.activity.queue', 'activity_id') + # un boolen pour determiner si une fille d'attente est autorisé + queue_allowed = fields.Boolean(default=True) + + def queue_register(self): + return { + 'name' : _('Register in the queue'), + 'type' : 'ir.actions.act_window', + 'res_model' : 'golem.activity.queue', + 'view_mode': 'form', + 'view_type': 'form', + 'target': 'new', + } + + @api.onchange('activity_registration_ids') + def _checkRemain(self): + if len(self.activity_registration_ids) > self.places and self.queue_allowed: + return { + 'warning' : { + 'title' : _('Warning'), + 'message': _('No remaining place, please register in the queue'), + } + } + + """ + @api.multi + @api.constrains('places_remain') + def _check_remaining_places(self): + #Forbid inscription when there is no more place + for activity in self: + if activity.places_remain < 5: + + if self.queue_allowed: + print "__________________________ test ______________________" + return { + 'name' : _('Do you want to add your registration to the queue?'), + 'type' : 'ir.actions.act_window', + 'res_model' : 'golem.activity.queue', + 'view_mode': 'form', + 'view_type': 'form', + 'target': 'new', + } + print "________________________________test 2 __________________" + raise models.ValidationError("erreur") + + + else: + emsg = _('Sorry, there is no more place man !') + raise models.ValidationError(emsg) +""" diff --git a/golem_activity_queue/models/golem_activity_queue.py b/golem_activity_queue/models/golem_activity_queue.py index 7c70bfc..f668522 100644 --- a/golem_activity_queue/models/golem_activity_queue.py +++ b/golem_activity_queue/models/golem_activity_queue.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- -# Copyright 2017 Fabien Bourgeois +# Copyright 2018 Youssef El Ouahby +# Copyright 2018 Fabien Bourgeois # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -43,65 +44,6 @@ class YesNoQueuePopUp(models.TransientModel): pass # don't do anything -class GolemActivity(models.Model): - """ GOLEM Activity adaptations """ - _inherit = 'golem.activity' - - - #ajout d'un champs O2M vers activity_id - activity_queue_id = fields.One2many('golem.activity.queue', 'activity_id') - # un boolen pour determiner si une fille d'attente est autorisé - queue_allowed = fields.Boolean(default=True) - - def queue_register(self): - return { - 'name' : _('Register in the queue'), - 'type' : 'ir.actions.act_window', - 'res_model' : 'golem.activity.queue', - 'view_mode': 'form', - 'view_type': 'form', - 'target': 'new', - } - - @api.onchange('activity_registration_ids') - def _checkRemain(self): - - if len(self.activity_registration_ids) > self.places and self.queue_allowed: - return { - 'warning' : { - 'title' : _('Warning'), - 'message': _('No remaining place, please register in the queue'), - } - } - - """ - @api.multi - @api.constrains('places_remain') - def _check_remaining_places(self): - #Forbid inscription when there is no more place - for activity in self: - if activity.places_remain < 5: - - if self.queue_allowed: - print "__________________________ test ______________________" - return { - 'name' : _('Do you want to add your registration to the queue?'), - 'type' : 'ir.actions.act_window', - 'res_model' : 'golem.activity.queue', - 'view_mode': 'form', - 'view_type': 'form', - 'target': 'new', - } - print "________________________________test 2 __________________" - raise models.ValidationError("erreur") - - - else: - emsg = _('Sorry, there is no more place man !') - raise models.ValidationError(emsg) -""" - - class GolemActivityQueue(models.Model): diff --git a/golem_activity_queue/models/golem_member.py b/golem_activity_queue/models/golem_member.py new file mode 100644 index 0000000..7d004f8 --- /dev/null +++ b/golem_activity_queue/models/golem_member.py @@ -0,0 +1,17 @@ +# -*- coding: utf-8 -*- + +# Copyright 2018 Youssef El Ouahby +# Copyright 2018 Fabien Bourgeois +# +# This program 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. +# +# This program 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 this program. If not, see . diff --git a/golem_activity_queue/views/golem_activity_queue_views.xml b/golem_activity_queue/views/golem_activity_queue_views.xml index f1c8656..c9ef7b4 100644 --- a/golem_activity_queue/views/golem_activity_queue_views.xml +++ b/golem_activity_queue/views/golem_activity_queue_views.xml @@ -42,11 +42,11 @@ along with this program. If not, see . queue.tree golem.activity.queue - - - - - + + + + + diff --git a/golem_activity_queue/views/golem_activity_views.xml b/golem_activity_queue/views/golem_activity_views.xml index 2d200a2..6c5300a 100644 --- a/golem_activity_queue/views/golem_activity_views.xml +++ b/golem_activity_queue/views/golem_activity_views.xml @@ -28,7 +28,9 @@ along with this program. If not, see . -