bonjour,
voilà la modification en patch du CVS du 21/01/08 pour pouvoir valider un action sans obligatoirement l’éditer.
l’objectif est de gagner un peut de temps.
Elle valide l’action à 100% et enregistre la date de validation à now();


Pour que des modifications soient intégrées il faut qu'elles soient fournies au format patch.
Voir
http://www.dolibarr.com/wikidev/index.php/FAQ_D%C3%A9veloppeur#Soumettre_un_patch.2C_amelioration_ou_participer_au_d.C3.A9veloppement

Sylvain wrote:

j'ai modifié le code de 3 pages ci-jointe pour ajouter une validation a l'action sans
étre obligé de modifier la fiche action :

dolibarr/htdocs/comm/action/fiche.php
dolibarr/htdocs/langs/fr_FR/orders.lang
dolibarr/htdocs/actioncomm.class.php
------------------------------------------------------------------------

_______________________________________________
Dolibarr-dev mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/dolibarr-dev




_______________________________________________
Dolibarr-dev mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/dolibarr-dev



diff -Naur --exclude=CVS --exclude='.#*' --exclude='*~' --exclude='*.bak' --exclude=conf.php --exclude=documents dolibarr/htdocs/actioncomm.class.php nouveauDolibarr/htdocs/actioncomm.class.php
--- dolibarr/htdocs/actioncomm.class.php	2007-10-17 16:55:55.000000000 +0200
+++ nouveauDolibarr/htdocs/actioncomm.class.php	2008-01-21 09:26:56.000000000 +0100
@@ -57,7 +57,24 @@
     var $contact;
     var $note;
     var $percentage;
-    
+
+
+function set_Action()
+    {
+        $sql = 'UPDATE '.MAIN_DB_PREFIX.'actioncomm';
+        $sql.= ' SET percent = 100';
+ 		$sql.= ', datea = NOW()'; 
+ 		$sql.= ' WHERE id = '.$this->id;
+        $resql = $this->db->query($sql);
+        if (! $resql)
+        {
+            $this->error=$this->db->error();
+            dolibarr_print_error($this->db);
+            return -1;
+        }
+        return 1;
+    }
+
     /**
      *      \brief      Constructeur
      *      \param      db      Handler d'accès base de donnée
diff -Naur --exclude=CVS --exclude='.#*' --exclude='*~' --exclude='*.bak' --exclude=conf.php --exclude=documents dolibarr/htdocs/comm/action/fiche.php nouveauDolibarr/htdocs/comm/action/fiche.php
--- dolibarr/htdocs/comm/action/fiche.php	2008-01-11 05:00:10.000000000 +0100
+++ nouveauDolibarr/htdocs/comm/action/fiche.php	2008-01-21 09:28:59.000000000 +0100
@@ -290,6 +290,18 @@
 /*                                                                            */
 /* ************************************************************************** */
 
+// Valider l'Action
+if ($_REQUEST['action'] == 'confirm_validate' && $_REQUEST['confirm'] == 'yes')
+{
+    $action = new Actioncomm($db);
+	$action->fetch($_GET['id']);
+	$action->set_Action();
+    Header('Location: index.php');
+}
+
+
+
+
 if ($_GET["action"] == 'create')
 {
 	$caction = new CActioncomm($db);
@@ -554,6 +566,18 @@
 	}
 	print "</form>";
 }
+    //----------------------------------------------------------------------
+    //mysql> select * from llx_actioncomm where label='envoi des codes';
+        /*
+       * Confirmation de la validation
+       */
+      if ($_GET['action'] == 'validate')
+      {
+      	$text=$langs->trans('ConfirmValidateAction',$num);
+      	$html->form_confirm($_SERVER["PHP_SELF"].'?id='.$_GET["id"], $langs->trans('ValidateAction'), $text, 'confirm_validate');
+      	print '<br />';
+      }
+//---------------------------------------------------------------------------
 
 /*
  * Affichage action en mode edition ou visu
@@ -769,9 +793,29 @@
 
     if ($_GET["action"] != 'edit' && $_GET["action"] != 'delete')
     {
-        print '<a class="butAction" href="fiche.php?action=edit&id='.$act->id.'">'.$langs->trans("Modify").'</a>';
 
-        print '<a class="butActionDelete" href="fiche.php?action=delete&id='.$act->id.'">'.$langs->trans("Delete").'</a>';
+	 print '<a class="butAction" href="fiche.php?action=edit&id='.$act->id.'">'.$langs->trans("Edit").'</a>';    
+	//----------------
+			 /*
+            * vérification du % de l'action
+            */
+            $sql = 'SELECT  a.id,a.percent ' ;
+            $sql .= ' FROM '.MAIN_DB_PREFIX.'actioncomm as a';
+            $sql .= ' WHERE a.id = '.$act->id ;
+			$sql .= ' AND a.percent !=100'; 
+            $resql = $db->query($sql);
+            if ($resql)
+            {
+                $num = $db->num_rows($resql);
+                if ($num)
+                {
+					print '<a class="butAction" href="fiche.php?action=validate&id='.$act->id.'">'.$langs->trans("Validate").'</a>';
+
+				}
+			}
+			
+	//----------------
+		print '<a class="butActionDelete" href="fiche.php?action=delete&id='.$act->id.'">'.$langs->trans("Delete").'</a>';
     }
 
     print '</div>';
diff -Naur --exclude=CVS --exclude='.#*' --exclude='*~' --exclude='*.bak' --exclude=conf.php --exclude=documents dolibarr/htdocs/langs/fr_FR/orders.lang nouveauDolibarr/htdocs/langs/fr_FR/orders.lang
--- dolibarr/htdocs/langs/fr_FR/orders.lang	2007-12-08 23:35:30.000000000 +0100
+++ nouveauDolibarr/htdocs/langs/fr_FR/orders.lang	2008-01-21 09:30:03.000000000 +0100
@@ -72,6 +72,7 @@
 CloseOrder=Cloturer commande
 ConfirmCloseOrder=Êtes-vous sur de vouloir cloturer cette commande ? Une fois une commande cloturée, elle doit être facturée.
 ConfirmCloseOrderIfSending=Êtes-vous sur de vouloir cloturer cette commande ? Vous ne devez cloturer une commande qu'une fois les produits expédiés.
+ConfirmValidateAction=Êtes-vous sur de vouloir valider cette action ?
 ConfirmDeleteOrder=Êtes-vous sur de vouloir effacer cette commande ?
 ConfirmValidateOrder=Êtes-vous sur de vouloir valider cette commande sous la référence <b>%s</b> ?
 ConfirmCancelOrder=Êtes-vous sur de vouloir annuler cette commande ?
@@ -125,4 +126,4 @@
 RubisNumRefModelDesc1=Renvoie le numéro sous la forme CYYNNNNN où YY est l'année et NNNNN le numéro d'incrément qui commence à 1
 RubisNumRefModelDesc2=L'année s'incrémente de 1 SANS remise à zero en début d'année d'exercice.
 RubisNumRefModelDesc3=Définir le mois de début d'exercice dans configuration->société, ex: septembre.
-RubisNumRefModelDesc4=Dans cette exemple nous aurons au 1er septembre 2007 une commande nommée C0800345
\ Pas de fin de ligne à la fin du fichier.
+RubisNumRefModelDesc4=Dans cette exemple nous aurons au 1er septembre 2007 une commande nommée C0800345
_______________________________________________
Dolibarr-dev mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/dolibarr-dev

Répondre à