/[openfoncier]/trunk/obj/instruction.class.php
ViewVC logotype

Diff of /trunk/obj/instruction.class.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2691 by nhaye, Fri Dec 27 16:28:38 2013 UTC revision 2692 by softime, Wed Jan 22 18:35:41 2014 UTC
# Line 835  class instruction extends instruction_ge Line 835  class instruction extends instruction_ge
835          // Booléen retourné          // Booléen retourné
836          $res_bool = true;          $res_bool = true;
837    
838          // Si le tableau n'est pas vide          // S'il y a un comparateur
839          if (count($tabRestriction) > 0) {          if (in_array(">=", $tabRestriction)
840                || in_array("<=", $tabRestriction)) {
841              // Boucle dans le tableau pour récupérer seulement les valeurs  
842              foreach ($tabRestriction as $key => $value) {              // Si le tableau n'est pas vide
843                                if (count($tabRestriction) > 0) {
844                  //  
845                  if (!in_array($value, $operateurs)) {                  // Boucle dans le tableau pour récupérer seulement les valeurs
846                      if ($this->getRestrictionValue($value) != false) {                  foreach ($tabRestriction as $key => $value) {
847                          $res[] = $this->getRestrictionValue($value);                      
848                      } else {                      //
849                          return false;                      if (!in_array($value, $operateurs)) {
850                            if ($this->getRestrictionValue($value) != false) {
851                                $res[] = $this->getRestrictionValue($value);
852                            } else {
853                                // Message d'erreur
854                                $error_message = sprintf(_("Le champ %s de l'instruction %s est vide"), "<span class='bold'>".$value."</span>", "<span class='bold'>".$this->valF["instruction"]."</span>");
855                                $this->addToMessage($error_message);
856                                // Arrête le traitement
857                                return false;
858                            }
859                      }                      }
860                  }                  }
             }  
861    
862              // Boucle dans le tableau                  // Boucle dans le tableau
863              // commence à 1 car le 0 doit rester inchangé tout au long du                  // commence à 1 car le 0 doit rester inchangé tout au long du
864              // traitement                  // traitement
865              for ($i = 1; $i<count($tabRestriction); $i++) {                  for ($i = 1; $i<count($tabRestriction); $i++) {
866                                        
867                  // Récupère le comparateur                      // Récupère le comparateur
868                  if ($tabRestriction[$i] === ">="                      if ($tabRestriction[$i] === ">="
869                      || $tabRestriction[$i] === "<=") {                          || $tabRestriction[$i] === "<=") {
870                      $comparateur = $tabRestriction[$i];                          $comparateur = $tabRestriction[$i];
871                  }                      }
872    
873                  // Si l'opérateur qui suit est un "+"                      // Si l'opérateur qui suit est un "+"
874                  if ($tabRestriction[$i] === "+") {                      if ($tabRestriction[$i] === "+") {
875                      $dateDep = strtotime($res[$j]);                          $dateDep = strtotime($res[$j]);
876                      unset($res[$j]);$j++;                          unset($res[$j]);$j++;
877                      $duree = $res[$j];                          $duree = $res[$j];
878                      unset($res[$j]);                          unset($res[$j]);
879                      $res[$j] = date('Y-m-d',                          $res[$j] = date('Y-m-d',
880                          strtotime('+'.$duree.' month', $dateDep));                              strtotime('+'.$duree.' month', $dateDep));
881                  }                      }
882    
883                  // Si l'opérateur qui suit est un "-"                      // Si l'opérateur qui suit est un "-"
884                  if ($tabRestriction[$i] === "-") {                      if ($tabRestriction[$i] === "-") {
885                      $dateDep = strtotime($res[$j]);                          $dateDep = strtotime($res[$j]);
886                      unset($res[$j]);$j++;                          unset($res[$j]);$j++;
887                      $duree = $res[$j];                          $duree = $res[$j];
888                      unset($res[$j]);                          unset($res[$j]);
889                      $res[$j] = date('Y-m-d',                          $res[$j] = date('Y-m-d',
890                          strtotime('-'.$duree.' month', $dateDep));                              strtotime('-'.$duree.' month', $dateDep));
891                        }
892                  }                  }
893                    
894              }              }
               
         }  
895    
896          // Si les tableau des résultats n'est pas vide              // Si les tableau des résultats n'est pas vide
897          if (count($res) > 0) {              if (count($res) > 0) {
             //  
             $res_bool = false;  
             // Effectue le test  
             if ($comparateur === ">=") {  
898                  //                  //
899                  if (strtotime($res[0]) >= strtotime($res[$j])) {                  $res_bool = false;
900                      $res_bool = true;                  // Effectue le test
901                    if ($comparateur === ">=") {
902                        //
903                        if (strtotime($res[0]) >= strtotime($res[$j])) {
904                            $res_bool = true;
905                        }
906                  }                  }
907              }                  if ($comparateur === "<=") {
             if ($comparateur === "<=") {  
908    
909                  if (strtotime($res[0]) <= strtotime($res[$j])) {                      if (strtotime($res[0]) <= strtotime($res[$j])) {
910                      $res_bool = true;                          $res_bool = true;
911                        }
912                  }                  }
913              }              }
914            // Sinon une erreur s'affiche
915            } else {
916    
917                // Message d'erreur
918                $error_message = _("La restriction est sans comparateur");
919                $this->addToMessage($error_message);
920                // Arrête le traitement
921                return false;
922          }          }
923                    
924          return $res_bool;          return $res_bool;

Legend:
Removed from v.2691  
changed lines
  Added in v.2692

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26