Ajout d'un warning pour la fonction 'commencer' de Mesurable, à fixer
[OpenERP/cmmi.git] / axes.py
diff --git a/axes.py b/axes.py
index df046d6..6c73ba9 100644 (file)
--- a/axes.py
+++ b/axes.py
@@ -39,7 +39,7 @@ class Mesurable(osv.Model):
         "date_plan_fin": fields.date(string="Plan fin"),
         "date_reel_deb": fields.date(string="Réel début"),
         "date_reel_fin": fields.date(string="Réel fin"),
-        "nb_jours_projets": fields.function(_nb_jours_init,
+        "nb_jours_initial": fields.function(_nb_jours_init,
                                             type="integer",
                                             string="Nombre de jour"),
     }
@@ -70,13 +70,18 @@ class Mesurable(osv.Model):
     def commencer(self, cr, uid, ids, context=None):
         if type(ids) == list:
             if len(ids) != 1:
-                return # TODO: message d'avertissement
+                return
             ids = ids[0]
 
         palier = self.read(cr, uid, ids, ['date_plan_deb', 'date_plan_fin', 'state'], context)
 
         if palier['state'] != 'cree':
-            return
+            return {
+                    'warning': { # FIXME: ne fonctionne pas
+                        'title'   : "Warning: not a list",
+                        'message' : "You cannot have negative number of seats",
+                        },
+                    }
 
         self.write(
             cr,
@@ -144,9 +149,23 @@ class Mesurable(osv.Model):
         )
         return self
 
+    def reprendre(self, cr, uid, ids, context=None):
+        if type(ids) == list:
+            if len(ids) != 1:
+                return # TODO: message d'avertissement
+            ids = ids[0]
 
-
-
+        mesurable = self.read(cr, uid, ids, ['state'], context, context)
+        if mesurable['state'] != 'suspendu':
+            return
+        self.write(
+            cr,
+            uid,
+            ids,
+            {'state': 'encours'},
+            context,
+        )
+        return self
 
 #------------ TRAVAIL CALCUL JOURS OUVRES ------------
     @staticmethod
@@ -256,6 +275,9 @@ class Palier(osv.Model):
         phase_model = self.pool.get("cmmi.projet.phase")
         phases_ids = phase_model.search(cr, uid, [('selectionne', '=', True)])
 
+        palier_model = self.pool.get("cmmi.axes.palier")
+        palier = palier_model.read(cr, uid, palier_id, ['date_plan_deb', 'date_plan_fin'])
+
         # Création des PalierPhase
         palier_phase_model = self.pool.get("cmmi.axes.palier.phase")
         for phase_id in phases_ids:
@@ -265,6 +287,8 @@ class Palier(osv.Model):
                 {
                     'phase_id': phase_id,
                     'palier_id': palier_id,
+                    'date_plan_deb': palier['date_plan_deb'],
+                    'date_plan_fin': palier['date_plan_fin'],
                 }
             )
         return palier_id
@@ -315,7 +339,6 @@ class PalierPhase(osv.Model):
         return osv.Model.create(self, cr, uid, vals, context=context)
 
 
-
 # ================================ CHANTIER ================================= #
 class Chantier(osv.Model):
     _name = "cmmi.axes.chantier"