From 4f3555f0abe5b4e320d5193480941d0015b98b67 Mon Sep 17 00:00:00 2001 From: Fabien Bourgeois Date: Wed, 13 Jul 2016 17:37:44 +0200 Subject: [PATCH] [FIX]GOLEM Season indepandance from golem_member and golem_activity --- golem_season/__openerp__.py | 2 +- golem_season/models/golem_season.py | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/golem_season/__openerp__.py b/golem_season/__openerp__.py index 63c5780a..14c2f500 100644 --- a/golem_season/__openerp__.py +++ b/golem_season/__openerp__.py @@ -27,6 +27,6 @@ 'license': 'AGPL-3', 'application': False, 'installable': True, - 'depends': ['base'], + 'depends': ['membership'], 'data': ['views/golem_season_view.xml'] } diff --git a/golem_season/models/golem_season.py b/golem_season/models/golem_season.py index 474cdab1..cecb0f2b 100644 --- a/golem_season/models/golem_season.py +++ b/golem_season/models/golem_season.py @@ -58,15 +58,19 @@ class GolemSeason(models.Model): @api.one def do_default_season(self): - """ is_default on and ensure that only one is_default is active """ + """ is_default on and ensure that only one is_default is active. Also + recomputes is_current for members and activities. For simplicity use a + magic trick around registry rather than double inheritance """ old_default_season = self.search([('is_default', '=', True)]) if old_default_season: old_default_season.is_default = False self.is_default = True - all_members = self.env['golem.member'].search([]) - all_members._compute_is_current() - all_members._compute_number() - self.env['golem.activity'].search([])._compute_is_current() + if 'golem.member' in self.env.registry: + all_members = self.env['golem.member'].search([]) + all_members._compute_is_current() + all_members._compute_number() + if 'golem.activity' in self.env.registry: + self.env['golem.activity'].search([])._compute_is_current() @api.multi def unlink(self):