Passed
Push — master ( 21f027...66b259 )
by
unknown
04:58
created
class/actions_subtotal.class.php 3 patches
Indentation   +286 added lines, -286 removed lines patch added patch discarded remove patch
@@ -101,11 +101,11 @@  discard block
 block discarded – undo
101 101
 	 * @return     void
102 102
 	 */
103 103
     
104
-    var $module_number = 104777;
104
+	var $module_number = 104777;
105 105
     
106
-    function formObjectOptions($parameters, &$object, &$action, $hookmanager) 
107
-    {
108
-      	global $langs,$db,$user, $conf;
106
+	function formObjectOptions($parameters, &$object, &$action, $hookmanager) 
107
+	{
108
+	  	global $langs,$db,$user, $conf;
109 109
 		
110 110
 		$langs->load('subtotal@subtotal');
111 111
 		
@@ -120,10 +120,10 @@  discard block
 block discarded – undo
120 120
 				$createRight = $user->rights->facture->creer;
121 121
 			} elseif($object->element == 'order_supplier' )
122 122
 			{
123
-			    $createRight = $user->rights->fournisseur->commande->creer;
123
+				$createRight = $user->rights->fournisseur->commande->creer;
124 124
 			} elseif($object->element == 'invoice_supplier' )
125 125
 			{
126
-			    $createRight = $user->rights->fournisseur->facture->creer;
126
+				$createRight = $user->rights->fournisseur->facture->creer;
127 127
 			}
128 128
 			
129 129
 			if ($object->statut == 0  && $createRight) {
@@ -173,7 +173,7 @@  discard block
 block discarded – undo
173 173
 					
174 174
 					if (!empty($conf->global->SUBTOTAL_AUTO_ADD_SUBTOTAL_ON_ADDING_NEW_TITLE) && $qty < 10) TSubtotal::addSubtotalMissing($object, $qty);
175 175
 					
176
-	    			TSubtotal::addSubTotalLine($object, $title, $qty);
176
+					TSubtotal::addSubTotalLine($object, $title, $qty);
177 177
 				}
178 178
 				else if($action==='ask_deleteallline') {
179 179
 						$form=new Form($db);
@@ -395,36 +395,36 @@  discard block
 block discarded – undo
395 395
 		$TContext = explode(':',$parameters['context']);
396 396
 		if (
397 397
 				in_array('invoicecard',$TContext)
398
-		        || in_array('invoicesuppliercard',$TContext)
398
+				|| in_array('invoicesuppliercard',$TContext)
399 399
 				|| in_array('propalcard',$TContext)
400 400
 				|| in_array('ordercard',$TContext)
401
-		        || in_array('ordersuppliercard',$TContext)
401
+				|| in_array('ordersuppliercard',$TContext)
402 402
 				|| in_array('invoicereccard',$TContext)
403 403
 			)
404
-	        {	
405
-	            $hideInnerLines	= isset( $_SESSION['subtotal_hideInnerLines_'.$parameters['modulepart']][$object->id] ) ?  $_SESSION['subtotal_hideInnerLines_'.$parameters['modulepart']][$object->id] : 0;
406
-	            $hidedetails	= isset( $_SESSION['subtotal_hidedetails_'.$parameters['modulepart']][$object->id] ) ?  $_SESSION['subtotal_hidedetails_'.$parameters['modulepart']][$object->id] : 0;
404
+			{	
405
+				$hideInnerLines	= isset( $_SESSION['subtotal_hideInnerLines_'.$parameters['modulepart']][$object->id] ) ?  $_SESSION['subtotal_hideInnerLines_'.$parameters['modulepart']][$object->id] : 0;
406
+				$hidedetails	= isset( $_SESSION['subtotal_hidedetails_'.$parameters['modulepart']][$object->id] ) ?  $_SESSION['subtotal_hidedetails_'.$parameters['modulepart']][$object->id] : 0;
407 407
 				$hidepricesDefaultConf = !empty($conf->global->SUBTOTAL_HIDE_PRICE_DEFAULT_CHECKED)?$conf->global->SUBTOTAL_HIDE_PRICE_DEFAULT_CHECKED:0;
408 408
 				$hideprices= isset( $_SESSION['subtotal_hideprices_'.$parameters['modulepart']][$object->id] ) ?  $_SESSION['subtotal_hideprices_'.$parameters['modulepart']][$object->id] : $hidepricesDefaultConf;
409 409
 				
410 410
 				$var=false;
411
-		     	$out.= '<tr '.$bc[$var].'>
411
+			 	$out.= '<tr '.$bc[$var].'>
412 412
 		     			<td colspan="4" align="right">
413 413
 		     				<label for="hideInnerLines">'.$langs->trans('HideInnerLines').'</label>
414 414
 		     				<input type="checkbox" onclick="if($(this).is(\':checked\')) { $(\'#hidedetails\').prop(\'checked\', \'checked\')  }" id="hideInnerLines" name="hideInnerLines" value="1" '.(( $hideInnerLines ) ? 'checked="checked"' : '' ).' />
415 415
 		     			</td>
416 416
 		     			</tr>';
417 417
 				
418
-		     	$var=!$var;
419
-		     	$out.= '<tr '.$bc[$var].'>
418
+			 	$var=!$var;
419
+			 	$out.= '<tr '.$bc[$var].'>
420 420
 		     			<td colspan="4" align="right">
421 421
 		     				<label for="hidedetails">'.$langs->trans('SubTotalhidedetails').'</label>
422 422
 		     				<input type="checkbox" id="hidedetails" name="hidedetails" value="1" '.(( $hidedetails ) ? 'checked="checked"' : '' ).' />
423 423
 		     			</td>
424 424
 		     			</tr>';
425 425
 		     	
426
-		     	$var=!$var;
427
-		     	$out.= '<tr '.$bc[$var].'>
426
+			 	$var=!$var;
427
+			 	$out.= '<tr '.$bc[$var].'>
428 428
 		     			<td colspan="4" align="right">
429 429
 		     				<label for="hideprices">'.$langs->trans('SubTotalhidePrice').'</label>
430 430
 		     				<input type="checkbox" id="hideprices" name="hideprices" value="1" '.(( $hideprices ) ? 'checked="checked"' : '' ).' />
@@ -436,9 +436,9 @@  discard block
 block discarded – undo
436 436
 				if ( 
437 437
 					(in_array('propalcard',$TContext) && !empty($conf->global->SUBTOTAL_PROPAL_ADD_RECAP))
438 438
 					|| (in_array('ordercard',$TContext) && !empty($conf->global->SUBTOTAL_COMMANDE_ADD_RECAP))
439
-				    || (in_array('ordersuppliercard',$TContext) && !empty($conf->global->SUBTOTAL_COMMANDE_ADD_RECAP))
439
+					|| (in_array('ordersuppliercard',$TContext) && !empty($conf->global->SUBTOTAL_COMMANDE_ADD_RECAP))
440 440
 					|| (in_array('invoicecard',$TContext) && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP))
441
-				    || (in_array('invoicesuppliercard',$TContext) && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP))
441
+					|| (in_array('invoicesuppliercard',$TContext) && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP))
442 442
 					|| (in_array('invoicereccard',$TContext)  && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP ))
443 443
 				)
444 444
 				{
@@ -457,19 +457,19 @@  discard block
 block discarded – undo
457 457
 			}
458 458
 			
459 459
 		
460
-        return 1;
460
+		return 1;
461 461
 	} 
462 462
 	 
463
-    function formEditProductOptions($parameters, &$object, &$action, $hookmanager) 
464
-    {
463
+	function formEditProductOptions($parameters, &$object, &$action, $hookmanager) 
464
+	{
465 465
 		
466
-    	if (in_array('invoicecard',explode(':',$parameters['context'])))
467
-        {
466
+		if (in_array('invoicecard',explode(':',$parameters['context'])))
467
+		{
468 468
         	
469
-        }
469
+		}
470 470
 		
471
-        return 0;
472
-    }
471
+		return 0;
472
+	}
473 473
 	
474 474
 	function ODTSubstitutionLine(&$parameters, &$object, $action, $hookmanager) {
475 475
 		global $conf;
@@ -518,11 +518,11 @@  discard block
 block discarded – undo
518 518
 	
519 519
 		if (
520 520
 				in_array('invoicecard',explode(':',$parameters['context']))
521
-		        || in_array('invoicesuppliercard',explode(':',$parameters['context']))
521
+				|| in_array('invoicesuppliercard',explode(':',$parameters['context']))
522 522
 				|| in_array('propalcard',explode(':',$parameters['context']))
523
-		        || in_array('supplier_proposalcard',explode(':',$parameters['context']))
523
+				|| in_array('supplier_proposalcard',explode(':',$parameters['context']))
524 524
 				|| in_array('ordercard',explode(':',$parameters['context']))
525
-		        || in_array('ordersuppliercard',explode(':',$parameters['context']))
525
+				|| in_array('ordersuppliercard',explode(':',$parameters['context']))
526 526
 				|| in_array('invoicereccard',explode(':',$parameters['context']))
527 527
 		) {
528 528
 			
@@ -601,20 +601,20 @@  discard block
 block discarded – undo
601 601
 				in_array('invoicecard',explode(':',$parameters['context']))
602 602
 				|| in_array('propalcard',explode(':',$parameters['context']))
603 603
 				|| in_array('ordercard',explode(':',$parameters['context']))
604
-			    || in_array('ordersuppliercard',explode(':',$parameters['context']))
605
-			    || in_array('invoicesuppliercard',explode(':',$parameters['context']))
606
-			    || in_array('supplier_proposalcard',explode(':',$parameters['context']))
604
+				|| in_array('ordersuppliercard',explode(':',$parameters['context']))
605
+				|| in_array('invoicesuppliercard',explode(':',$parameters['context']))
606
+				|| in_array('supplier_proposalcard',explode(':',$parameters['context']))
607 607
 			)
608
-	        {								
608
+			{								
609 609
 				if(in_array('invoicecard',explode(':',$parameters['context']))) {
610 610
 					$sessname = 'subtotal_hideInnerLines_facture';	
611 611
 					$sessname2 = 'subtotal_hidedetails_facture';
612 612
 					$sessname3 = 'subtotal_hideprices_facture';
613 613
 				}
614 614
 				elseif(in_array('invoicesuppliercard',explode(':',$parameters['context']))) {
615
-				    $sessname = 'subtotal_hideInnerLines_facture_fournisseur';
616
-				    $sessname2 = 'subtotal_hidedetails_facture_fournisseur';
617
-				    $sessname3 = 'subtotal_hideprices_facture_fournisseur';
615
+					$sessname = 'subtotal_hideInnerLines_facture_fournisseur';
616
+					$sessname2 = 'subtotal_hidedetails_facture_fournisseur';
617
+					$sessname3 = 'subtotal_hideprices_facture_fournisseur';
618 618
 				}
619 619
 				elseif(in_array('propalcard',explode(':',$parameters['context']))) {
620 620
 					$sessname = 'subtotal_hideInnerLines_propal';
@@ -622,9 +622,9 @@  discard block
 block discarded – undo
622 622
 					$sessname3 = 'subtotal_hideprices_propal';
623 623
 				}
624 624
 				elseif(in_array('supplier_proposalcard',explode(':',$parameters['context']))) {
625
-				    $sessname = 'subtotal_hideInnerLines_supplier_proposal';
626
-				    $sessname2 = 'subtotal_hidedetails_supplier_proposal';
627
-				    $sessname3 = 'subtotal_hideprices_supplier_proposal';
625
+					$sessname = 'subtotal_hideInnerLines_supplier_proposal';
626
+					$sessname2 = 'subtotal_hidedetails_supplier_proposal';
627
+					$sessname3 = 'subtotal_hideprices_supplier_proposal';
628 628
 				}
629 629
 				elseif(in_array('ordercard',explode(':',$parameters['context']))) {
630 630
 					$sessname = 'subtotal_hideInnerLines_commande';
@@ -632,9 +632,9 @@  discard block
 block discarded – undo
632 632
 					$sessname3 = 'subtotal_hideprices_commande';
633 633
 				}
634 634
 				elseif(in_array('ordersuppliercard',explode(':',$parameters['context']))) {
635
-				    $sessname = 'subtotal_hideInnerLines_commande_fournisseur';
636
-				    $sessname2 = 'subtotal_hidedetails_commande_fournisseur';
637
-				    $sessname3 = 'subtotal_hideprices_commande_fournisseur';
635
+					$sessname = 'subtotal_hideInnerLines_commande_fournisseur';
636
+					$sessname2 = 'subtotal_hidedetails_commande_fournisseur';
637
+					$sessname3 = 'subtotal_hideprices_commande_fournisseur';
638 638
 				}
639 639
 				else {
640 640
 					$sessname = 'subtotal_hideInnerLines_unknown';
@@ -659,17 +659,17 @@  discard block
 block discarded – undo
659 659
 				foreach($object->lines as &$line) {
660 660
 					if ($line->product_type == 9 && $line->special_code == $this->module_number) {
661 661
 					    
662
-                        if($line->qty>=90) {
663
-                            $line->modsubtotal_total = 1;
664
-                        }
665
-                        else{
666
-                            $line->modsubtotal_title = 1;
667
-                        }
662
+						if($line->qty>=90) {
663
+							$line->modsubtotal_total = 1;
664
+						}
665
+						else{
666
+							$line->modsubtotal_title = 1;
667
+						}
668 668
                         
669 669
 						$line->total_ht = $this->getTotalLineFromObject($object, $line, '');
670 670
 					}
671
-	        	}
672
-	        }
671
+				}
672
+			}
673 673
 			
674 674
 		}
675 675
 		else if($action === 'confirm_delete_all_lines' && GETPOST('confirm')=='yes') {
@@ -686,7 +686,7 @@  discard block
 block discarded – undo
686 686
 				 */
687 687
 				else if($object->element=='invoice_supplier')
688 688
 				{
689
-				    $object->deleteline($idLine);
689
+					$object->deleteline($idLine);
690 690
 				}
691 691
 				/**
692 692
 				 * @var $object Propal
@@ -709,7 +709,7 @@  discard block
 block discarded – undo
709 709
 				 */
710 710
 				else if($object->element=='order_supplier')
711 711
 				{
712
-				    $object->deleteline($idLine);
712
+					$object->deleteline($idLine);
713 713
 				}
714 714
 				/**
715 715
 				 * @var $object Facturerec
@@ -780,7 +780,7 @@  discard block
 block discarded – undo
780 780
 		
781 781
 		foreach($object->lines as $l) {
782 782
 		
783
-		    $lid = (!empty($l->rowid) ? $l->rowid : $l->id);
783
+			$lid = (!empty($l->rowid) ? $l->rowid : $l->id);
784 784
 			if($lid == $lineid) {
785 785
 
786 786
 				$found = true;
@@ -789,7 +789,7 @@  discard block
 block discarded – undo
789 789
 			
790 790
 			if($found) {
791 791
 				
792
-			    $Tab[] = (!empty($l->rowid) ? $l->rowid : $l->id);
792
+				$Tab[] = (!empty($l->rowid) ? $l->rowid : $l->id);
793 793
 				
794 794
 				if($l->special_code==$this->module_number && (($l->qty==99 && $qty_line==1) || ($l->qty==98 && $qty_line==2))   ) {
795 795
 					break; // end of story
@@ -916,7 +916,7 @@  discard block
 block discarded – undo
916 916
 		if(method_exists('Closure','bind')) {
917 917
 			$pageBreakOriginalValue = $pdf->AcceptPageBreak();
918 918
 			$sweetsThief = function ($pdf) {
919
-		    		return $pdf->bMargin ;
919
+					return $pdf->bMargin ;
920 920
 			};
921 921
 			$sweetsThief = Closure::bind($sweetsThief, null, $pdf);
922 922
 	
@@ -984,7 +984,7 @@  discard block
 block discarded – undo
984 984
 					list($total, $total_tva, $total_ttc, $TTotal_tva) = $this->getTotalLineFromObject($object, $line, '', 1);
985 985
 					$total_to_print = price($total);
986 986
 					
987
-                    $line->total_ht = $total;
987
+					$line->total_ht = $total;
988 988
 					$line->total = $total;
989 989
 					$line->total_tva = $total_tva;
990 990
 					$line->total_ttc = $total_ttc;
@@ -1133,7 +1133,7 @@  discard block
 block discarded – undo
1133 1133
 	}
1134 1134
 	
1135 1135
 	function pdf_getlinetotalexcltax($parameters=array(), &$object, &$action='') {
1136
-	    global $conf, $hideprices, $hookmanager;
1136
+		global $conf, $hideprices, $hookmanager;
1137 1137
 		
1138 1138
 		if(is_array($parameters)) $i = & $parameters['i'];
1139 1139
 		else $i = (int)$parameters;
@@ -1172,7 +1172,7 @@  discard block
 block discarded – undo
1172 1172
 			}
1173 1173
 		}
1174 1174
 		if ((int)GETPOST('hideInnerLines') && !empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES)){
1175
-		    $this->resprints = price($object->lines[$i]->total_ht);
1175
+			$this->resprints = price($object->lines[$i]->total_ht);
1176 1176
 		}
1177 1177
 		
1178 1178
 		// Si la gestion C/NC est active et que je suis sur un ligne dont l'extrafield est coché
@@ -1301,7 +1301,7 @@  discard block
 block discarded – undo
1301 1301
 	}
1302 1302
 	
1303 1303
 	function pdf_getlineupexcltax($parameters=array(), &$object, &$action='') {
1304
-	    global $conf,$hideprices,$hookmanager;
1304
+		global $conf,$hideprices,$hookmanager;
1305 1305
 
1306 1306
 		if(is_array($parameters)) $i = & $parameters['i'];
1307 1307
 		else $i = (int)$parameters;
@@ -1309,17 +1309,17 @@  discard block
 block discarded – undo
1309 1309
 		if($this->isModSubtotalLine($parameters,$object) ) {
1310 1310
 			$this->resprints = ' ';
1311 1311
 
1312
-            $line = $object->lines[$i];
1312
+			$line = $object->lines[$i];
1313 1313
 
1314
-            // On récupère les montants du bloc pour les afficher dans la ligne de sous-total
1315
-            if(TSubtotal::isSubtotal($line)) {
1316
-                $parentTitle = TSubtotal::getParentTitleOfLine($object, $i);
1314
+			// On récupère les montants du bloc pour les afficher dans la ligne de sous-total
1315
+			if(TSubtotal::isSubtotal($line)) {
1316
+				$parentTitle = TSubtotal::getParentTitleOfLine($object, $i);
1317 1317
 
1318
-                if(! empty($parentTitle->array_options['options_show_total_ht'])) {
1319
-                    $TTotal = TSubtotal::getTotalBlockFromTitle($object, $parentTitle);
1320
-                    $this->resprints = price($TTotal['total_subprice']);
1321
-                }
1322
-            }
1318
+				if(! empty($parentTitle->array_options['options_show_total_ht'])) {
1319
+					$TTotal = TSubtotal::getTotalBlockFromTitle($object, $parentTitle);
1320
+					$this->resprints = price($TTotal['total_subprice']);
1321
+				}
1322
+			}
1323 1323
 		
1324 1324
 			if((float)DOL_VERSION<=3.6) {
1325 1325
 				return '';
@@ -1335,57 +1335,57 @@  discard block
 block discarded – undo
1335 1335
 		(!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i]))
1336 1336
 		)
1337 1337
 		{
1338
-		    // alors je dois vérifier si la méthode fait partie de la conf qui l'exclue
1339
-		    if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1340
-		    {
1341
-		        $this->resprints = ' ';
1338
+			// alors je dois vérifier si la méthode fait partie de la conf qui l'exclue
1339
+			if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1340
+			{
1341
+				$this->resprints = ' ';
1342 1342
 		        
1343
-		        // currentcontext à modifier celon l'appel
1344
-		        $params = array('parameters' => $parameters, 'currentmethod' => 'pdf_getlineupexcltax', 'currentcontext'=>'subtotal_hide_nc', 'i' => $i);
1345
-		        return $this->callHook($object, $hookmanager, $action, $params); // return 1 (qui est la valeur par défaut) OU -1 si erreur OU overrideReturn (contient -1 ou 0 ou 1)
1343
+				// currentcontext à modifier celon l'appel
1344
+				$params = array('parameters' => $parameters, 'currentmethod' => 'pdf_getlineupexcltax', 'currentcontext'=>'subtotal_hide_nc', 'i' => $i);
1345
+				return $this->callHook($object, $hookmanager, $action, $params); // return 1 (qui est la valeur par défaut) OU -1 si erreur OU overrideReturn (contient -1 ou 0 ou 1)
1346 1346
 		        
1347
-		    }
1347
+			}
1348 1348
 		}
1349 1349
 		// Cache le prix pour les lignes standards dolibarr qui sont dans un ensemble
1350 1350
 		else if (!empty($hideprices))
1351 1351
 		{
1352 1352
 		    
1353
-		    // Check if a title exist for this line && if the title have subtotal
1354
-		    $lineTitle = TSubtotal::getParentTitleOfLine($object, $i);
1355
-		    if(TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1356
-		    {
1353
+			// Check if a title exist for this line && if the title have subtotal
1354
+			$lineTitle = TSubtotal::getParentTitleOfLine($object, $i);
1355
+			if(TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1356
+			{
1357 1357
 		        
1358
-		        $this->resprints = ' ';
1358
+				$this->resprints = ' ';
1359 1359
 		        
1360
-		        // currentcontext à modifier celon l'appel
1361
-		        $params = array('parameters' => $parameters, 'currentmethod' => 'pdf_getlineupexcltax', 'currentcontext'=>'subtotal_hideprices', 'i' => $i);
1362
-		        return $this->callHook($object, $hookmanager, $action, $params); // return 1 (qui est la valeur par défaut) OU -1 si erreur OU overrideReturn (contient -1 ou 0 ou 1)
1363
-		    }
1360
+				// currentcontext à modifier celon l'appel
1361
+				$params = array('parameters' => $parameters, 'currentmethod' => 'pdf_getlineupexcltax', 'currentcontext'=>'subtotal_hideprices', 'i' => $i);
1362
+				return $this->callHook($object, $hookmanager, $action, $params); // return 1 (qui est la valeur par défaut) OU -1 si erreur OU overrideReturn (contient -1 ou 0 ou 1)
1363
+			}
1364 1364
 		}
1365 1365
 		
1366 1366
 		return 0;
1367 1367
 	}
1368 1368
 	
1369 1369
 	function pdf_getlineremisepercent($parameters=array(), &$object, &$action='') {
1370
-	    global $conf,$hideprices,$hookmanager;
1370
+		global $conf,$hideprices,$hookmanager;
1371 1371
 
1372
-        if(is_array($parameters)) $i = & $parameters['i'];
1373
-        else $i = (int) $parameters;
1372
+		if(is_array($parameters)) $i = & $parameters['i'];
1373
+		else $i = (int) $parameters;
1374 1374
 
1375 1375
 		if($this->isModSubtotalLine($parameters,$object) ) {
1376 1376
 			$this->resprints = ' ';
1377 1377
 
1378
-            $line = $object->lines[$i];
1378
+			$line = $object->lines[$i];
1379 1379
 
1380
-            // Affichage de la remise 
1381
-            if(TSubtotal::isSubtotal($line)) {
1382
-                $parentTitle = TSubtotal::getParentTitleOfLine($object, $i);
1380
+			// Affichage de la remise 
1381
+			if(TSubtotal::isSubtotal($line)) {
1382
+				$parentTitle = TSubtotal::getParentTitleOfLine($object, $i);
1383 1383
 
1384
-                if(! empty($parentTitle->array_options['options_show_reduc'])) {
1385
-                    $TTotal = TSubtotal::getTotalBlockFromTitle($object, $parentTitle);
1386
-                    $this->resprints = price($TTotal['total_ht'] / $TTotal['total_subprice']*100, 0, '', 1, 2, 2).'%';
1387
-                }
1388
-            }
1384
+				if(! empty($parentTitle->array_options['options_show_reduc'])) {
1385
+					$TTotal = TSubtotal::getTotalBlockFromTitle($object, $parentTitle);
1386
+					$this->resprints = price($TTotal['total_ht'] / $TTotal['total_subprice']*100, 0, '', 1, 2, 2).'%';
1387
+				}
1388
+			}
1389 1389
 		
1390 1390
 			if((float)DOL_VERSION<=3.6) {
1391 1391
 				return '';
@@ -1395,15 +1395,15 @@  discard block
 block discarded – undo
1395 1395
 			}
1396 1396
 		}
1397 1397
 		elseif (!empty($hideprices)
1398
-		        || (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1399
-		        )
1400
-		    {
1401
-		        if (!empty($hideprices) || !in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1402
-		        {
1403
-		            $this->resprints = ' ';
1404
-		            return 1;
1405
-		        }
1406
-		    }
1398
+				|| (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1399
+				)
1400
+			{
1401
+				if (!empty($hideprices) || !in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1402
+				{
1403
+					$this->resprints = ' ';
1404
+					return 1;
1405
+				}
1406
+			}
1407 1407
 		
1408 1408
 		return 0;
1409 1409
 	}
@@ -1439,7 +1439,7 @@  discard block
 block discarded – undo
1439 1439
 	}
1440 1440
 	
1441 1441
 	function pdf_getlinevatrate($parameters=array(), &$object, &$action='') {
1442
-	    global $conf,$hideprices,$hookmanager;
1442
+		global $conf,$hideprices,$hookmanager;
1443 1443
 	    
1444 1444
 		if($this->isModSubtotalLine($parameters,$object) ){
1445 1445
 			$this->resprints = ' ';
@@ -1464,31 +1464,31 @@  discard block
 block discarded – undo
1464 1464
 		(!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i]))
1465 1465
 		)
1466 1466
 		{
1467
-		    // alors je dois vérifier si la méthode fait partie de la conf qui l'exclue
1468
-		    if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1469
-		    {
1470
-		        $this->resprints = ' ';
1467
+			// alors je dois vérifier si la méthode fait partie de la conf qui l'exclue
1468
+			if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1469
+			{
1470
+				$this->resprints = ' ';
1471 1471
 		        
1472
-		        // currentcontext à modifier celon l'appel
1473
-		        $params = array('parameters' => $parameters, 'currentmethod' => 'pdf_getlinevatrate', 'currentcontext'=>'subtotal_hide_nc', 'i' => $i);
1474
-		        return $this->callHook($object, $hookmanager, $action, $params); // return 1 (qui est la valeur par défaut) OU -1 si erreur OU overrideReturn (contient -1 ou 0 ou 1)
1475
-		    }
1472
+				// currentcontext à modifier celon l'appel
1473
+				$params = array('parameters' => $parameters, 'currentmethod' => 'pdf_getlinevatrate', 'currentcontext'=>'subtotal_hide_nc', 'i' => $i);
1474
+				return $this->callHook($object, $hookmanager, $action, $params); // return 1 (qui est la valeur par défaut) OU -1 si erreur OU overrideReturn (contient -1 ou 0 ou 1)
1475
+			}
1476 1476
 		}
1477 1477
 		// Cache le prix pour les lignes standards dolibarr qui sont dans un ensemble
1478 1478
 		else if (!empty($hideprices))
1479 1479
 		{
1480 1480
 		    
1481
-		    // Check if a title exist for this line && if the title have subtotal
1482
-		    $lineTitle = TSubtotal::getParentTitleOfLine($object, $i);
1483
-		    if(TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1484
-		    {
1481
+			// Check if a title exist for this line && if the title have subtotal
1482
+			$lineTitle = TSubtotal::getParentTitleOfLine($object, $i);
1483
+			if(TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1484
+			{
1485 1485
 		        
1486
-		        $this->resprints = ' ';
1486
+				$this->resprints = ' ';
1487 1487
 		        
1488
-		        // currentcontext à modifier celon l'appel
1489
-		        $params = array('parameters' => $parameters, 'currentmethod' => 'pdf_getlinevatrate', 'currentcontext'=>'subtotal_hideprices', 'i' => $i);
1490
-		        return $this->callHook($object, $hookmanager, $action, $params); // return 1 (qui est la valeur par défaut) OU -1 si erreur OU overrideReturn (contient -1 ou 0 ou 1)
1491
-		    }
1488
+				// currentcontext à modifier celon l'appel
1489
+				$params = array('parameters' => $parameters, 'currentmethod' => 'pdf_getlinevatrate', 'currentcontext'=>'subtotal_hideprices', 'i' => $i);
1490
+				return $this->callHook($object, $hookmanager, $action, $params); // return 1 (qui est la valeur par défaut) OU -1 si erreur OU overrideReturn (contient -1 ou 0 ou 1)
1491
+			}
1492 1492
 		}
1493 1493
 		
1494 1494
 		return 0;
@@ -1612,24 +1612,24 @@  discard block
 block discarded – undo
1612 1612
 		
1613 1613
 		$this->add_numerotation($object);	
1614 1614
 		
1615
-        foreach($object->lines as $k => &$l) {
1616
-            if(TSubtotal::isSubtotal($l)) {
1617
-                $parentTitle = TSubtotal::getParentTitleOfLine($object, $k);
1618
-                if(! empty($parentTitle->id) && ! empty($parentTitle->array_options['options_show_total_ht'])) {
1619
-                    $l->remise_percent = 100;    // Affichage de la réduction sur la ligne de sous-total
1620
-                }
1621
-            }
1622
-        }
1615
+		foreach($object->lines as $k => &$l) {
1616
+			if(TSubtotal::isSubtotal($l)) {
1617
+				$parentTitle = TSubtotal::getParentTitleOfLine($object, $k);
1618
+				if(! empty($parentTitle->id) && ! empty($parentTitle->array_options['options_show_total_ht'])) {
1619
+					$l->remise_percent = 100;    // Affichage de la réduction sur la ligne de sous-total
1620
+				}
1621
+			}
1622
+		}
1623 1623
 
1624 1624
 		$hideInnerLines = (int)GETPOST('hideInnerLines');
1625 1625
 		$hidedetails = (int)GETPOST('hidedetails');
1626 1626
 
1627 1627
 		if ($hideInnerLines) { // si c une ligne de titre
1628
-	    	$fk_parent_line=0;
1628
+			$fk_parent_line=0;
1629 1629
 			$TLines =array();
1630 1630
 		
1631 1631
 			$original_count=count($object->lines);
1632
-		    $TTvas = array(); // tableau de tva
1632
+			$TTvas = array(); // tableau de tva
1633 1633
 		    
1634 1634
 			foreach($object->lines as $k=>&$line) 
1635 1635
 			{
@@ -1668,48 +1668,48 @@  discard block
 block discarded – undo
1668 1668
 			
1669 1669
 				if ($hideInnerLines)
1670 1670
 				{
1671
-				    if(!empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES))
1672
-				    {
1673
-				        if($line->tva_tx != '0.000' && $line->product_type!=9){
1671
+					if(!empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES))
1672
+					{
1673
+						if($line->tva_tx != '0.000' && $line->product_type!=9){
1674 1674
 				            
1675
-    				        // on remplit le tableau de tva pour substituer les lignes cachées
1676
-    				        $TTvas[$line->tva_tx]['total_tva'] += $line->total_tva;
1677
-    				        $TTvas[$line->tva_tx]['total_ht'] += $line->total_ht;
1678
-    				        $TTvas[$line->tva_tx]['total_ttc'] += $line->total_ttc; 
1679
-    				    }
1680
-    					if($line->product_type==9 && $line->rowid>0)
1681
-    					{
1682
-    					    //Cas où je doit cacher les produits et afficher uniquement les sous-totaux avec les titres
1683
-    					    // génère des lignes d'affichage des montants HT soumis à tva
1684
-    					    $nbtva = count($TTvas);
1685
-    					    if(!empty($nbtva)){
1686
-    					        foreach ($TTvas as $tx =>$val){
1687
-    					            $l = clone $line;
1688
-    					            $l->product_type = 1;
1689
-    					            $l->special_code = '';
1690
-    					            $l->qty = 1;
1691
-    					            $l->desc = $langs->trans('AmountBeforeTaxesSubjectToVATX%', $langs->transnoentitiesnoconv('VAT'), price($tx));
1692
-    					            $l->tva_tx = $tx;
1693
-    					            $l->total_ht = $val['total_ht'];
1694
-    					            $l->total_tva = $val['total_tva'];
1695
-    					            $l->total = $line->total_ht;
1696
-    					            $l->total_ttc = $val['total_ttc'];
1697
-    					            $TLines[] = $l;
1698
-    					            array_shift($TTvas);
1699
-    					       }
1700
-    					    }
1675
+							// on remplit le tableau de tva pour substituer les lignes cachées
1676
+							$TTvas[$line->tva_tx]['total_tva'] += $line->total_tva;
1677
+							$TTvas[$line->tva_tx]['total_ht'] += $line->total_ht;
1678
+							$TTvas[$line->tva_tx]['total_ttc'] += $line->total_ttc; 
1679
+						}
1680
+						if($line->product_type==9 && $line->rowid>0)
1681
+						{
1682
+							//Cas où je doit cacher les produits et afficher uniquement les sous-totaux avec les titres
1683
+							// génère des lignes d'affichage des montants HT soumis à tva
1684
+							$nbtva = count($TTvas);
1685
+							if(!empty($nbtva)){
1686
+								foreach ($TTvas as $tx =>$val){
1687
+									$l = clone $line;
1688
+									$l->product_type = 1;
1689
+									$l->special_code = '';
1690
+									$l->qty = 1;
1691
+									$l->desc = $langs->trans('AmountBeforeTaxesSubjectToVATX%', $langs->transnoentitiesnoconv('VAT'), price($tx));
1692
+									$l->tva_tx = $tx;
1693
+									$l->total_ht = $val['total_ht'];
1694
+									$l->total_tva = $val['total_tva'];
1695
+									$l->total = $line->total_ht;
1696
+									$l->total_ttc = $val['total_ttc'];
1697
+									$TLines[] = $l;
1698
+									array_shift($TTvas);
1699
+							   }
1700
+							}
1701 1701
     					    
1702
-    					    // ajoute la ligne de sous-total
1703
-    					    $TLines[] = $line; 
1704
-    					}
1705
-				    } else {
1702
+							// ajoute la ligne de sous-total
1703
+							$TLines[] = $line; 
1704
+						}
1705
+					} else {
1706 1706
 				        
1707
-				        if($line->product_type==9 && $line->rowid>0)
1708
-				        {
1709
-				            // ajoute la ligne de sous-total
1710
-				            $TLines[] = $line; 
1711
-				        }
1712
-				    }
1707
+						if($line->product_type==9 && $line->rowid>0)
1708
+						{
1709
+							// ajoute la ligne de sous-total
1710
+							$TLines[] = $line; 
1711
+						}
1712
+					}
1713 1713
 				    
1714 1714
 					
1715 1715
 				}
@@ -1734,20 +1734,20 @@  discard block
 block discarded – undo
1734 1734
 			$nbtva = count($TTvas);
1735 1735
 			if(!empty($nbtva) && $hideInnerLines && !empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES))
1736 1736
 			{
1737
-			    foreach ($TTvas as $tx =>$val){
1738
-			        $l = clone $line;
1739
-			        $l->product_type = 1;
1740
-			        $l->special_code = '';
1741
-			        $l->qty = 1;
1742
-			        $l->desc = $langs->trans('AmountBeforeTaxesSubjectToVATX%', $langs->transnoentitiesnoconv('VAT'), price($tx));
1743
-			        $l->tva_tx = $tx;
1744
-			        $l->total_ht = $val['total_ht'];
1745
-			        $l->total_tva = $val['total_tva'];
1746
-			        $l->total = $line->total_ht;
1747
-			        $l->total_ttc = $val['total_ttc'];
1748
-			        $TLines[] = $l;
1749
-			        array_shift($TTvas);
1750
-			    }
1737
+				foreach ($TTvas as $tx =>$val){
1738
+					$l = clone $line;
1739
+					$l->product_type = 1;
1740
+					$l->special_code = '';
1741
+					$l->qty = 1;
1742
+					$l->desc = $langs->trans('AmountBeforeTaxesSubjectToVATX%', $langs->transnoentitiesnoconv('VAT'), price($tx));
1743
+					$l->tva_tx = $tx;
1744
+					$l->total_ht = $val['total_ht'];
1745
+					$l->total_tva = $val['total_tva'];
1746
+					$l->total = $line->total_ht;
1747
+					$l->total_ttc = $val['total_ttc'];
1748
+					$TLines[] = $l;
1749
+					array_shift($TTvas);
1750
+				}
1751 1751
 			}
1752 1752
 			
1753 1753
 			global $nblignes;
@@ -1759,7 +1759,7 @@  discard block
 block discarded – undo
1759 1759
 				$this->resprints = '';
1760 1760
 				return 0;
1761 1761
 			}
1762
-	    }
1762
+		}
1763 1763
 		
1764 1764
 		return 0;
1765 1765
 	}
@@ -1922,18 +1922,18 @@  discard block
 block discarded – undo
1922 1922
 		}
1923 1923
 		elseif($object->element == 'order_supplier' )
1924 1924
 		{
1925
-		    $createRight = $user->rights->fournisseur->commande->creer;
1925
+			$createRight = $user->rights->fournisseur->commande->creer;
1926 1926
 		}
1927 1927
 		elseif($object->element == 'invoice_supplier' )
1928 1928
 		{
1929
-		    $createRight = $user->rights->fournisseur->facture->creer;
1929
+			$createRight = $user->rights->fournisseur->facture->creer;
1930 1930
 		}
1931 1931
 		
1932 1932
 		if($line->special_code!=$this->module_number || $line->product_type!=9) {
1933 1933
 			null;
1934 1934
 		}	
1935 1935
 		else if (in_array('invoicecard',$contexts) || in_array('invoicesuppliercard',$contexts) || in_array('propalcard',$contexts) || in_array('supplier_proposalcard',$contexts) || in_array('ordercard',$contexts) || in_array('ordersuppliercard',$contexts) || in_array('invoicereccard',$contexts)) 
1936
-        {
1936
+		{
1937 1937
 			if($object->element=='facture')$idvar = 'facid';
1938 1938
 			else $idvar='id';
1939 1939
 			
@@ -1982,7 +1982,7 @@  discard block
 block discarded – undo
1982 1982
 			//var_dump($line);
1983 1983
             
1984 1984
 			// HTML 5 data for js
1985
-            $data = $this->_getHtmlData($parameters, $object, $action, $hookmanager);
1985
+			$data = $this->_getHtmlData($parameters, $object, $action, $hookmanager);
1986 1986
             
1987 1987
 			
1988 1988
 			?>
@@ -2044,8 +2044,8 @@  discard block
 block discarded – undo
2044 2044
 						}
2045 2045
 						
2046 2046
 						if ($object->element == 'order_supplier' || $object->element == 'invoice_supplier') {
2047
-						    $line->label = !empty($line->description) ? $line->description : $line->desc;
2048
-						    $line->description = '';
2047
+							$line->label = !empty($line->description) ? $line->description : $line->desc;
2048
+							$line->description = '';
2049 2049
 						}
2050 2050
 						$newlabel = $line->label;
2051 2051
 						if($line->label=='' && !$isFreeText) {
@@ -2079,38 +2079,38 @@  discard block
 block discarded – undo
2079 2079
 						
2080 2080
 
2081 2081
 						echo '<div class="subtotal_underline" style="margin-left:24px; line-height: 25px;">';
2082
-                        echo '<div>';
2083
-                        echo '<input style="vertical-align:sub;"  type="checkbox" name="line-pagebreak" id="subtotal-pagebreak" value="8" '.(($line->info_bits > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2084
-                        echo '<label for="subtotal-pagebreak">'.$langs->trans('AddBreakPageBefore').'</label>';
2085
-                        echo '</div>';
2086
-
2087
-                        if (TSubtotal::isTitle($line))
2088
-                        {
2089
-                            $form = new Form($db);
2090
-                            echo '<div>';
2091
-                            echo '<label for="subtotal_tva_tx">'.$form->textwithpicto($langs->trans('subtotal_apply_default_tva'), $langs->trans('subtotal_apply_default_tva_help')).'</label>';
2092
-                            echo '<select id="subtotal_tva_tx" name="subtotal_tva_tx" class="flat"><option selected="selected" value="">-</option>';
2093
-                            if (empty($readonlyForSituation)) echo str_replace('selected', '', $form->load_tva('subtotal_tva_tx', '', $parameters['seller'], $parameters['buyer'], 0, 0, '', true));
2094
-                            echo '</select>';
2095
-                            echo '</div>';
2096
-
2097
-                            if (!empty($conf->global->INVOICE_USE_SITUATION) && $object->element == 'facture' && $object->type == Facture::TYPE_SITUATION)
2098
-                            {
2099
-                                echo '<div>';
2100
-                                echo '<label for="subtotal_progress">'.$langs->trans('subtotal_apply_progress').'</label> <input id="subtotal_progress" name="subtotal_progress" value="" size="1" />%';
2101
-                                echo '</div>';
2102
-                            }
2103
-                            echo '<div>';
2104
-                            echo '<input style="vertical-align:sub;"  type="checkbox" name="line-showTotalHT" id="subtotal-showTotalHT" value="9" '.(($line->array_options['options_show_total_ht'] > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2105
-                            echo '<label for="subtotal-showTotalHT">'.$langs->trans('ShowTotalHTOnSubtotalBlock').'</label>';
2106
-                            echo '</div>';
2107
-
2108
-                            echo '<div>';
2109
-                            echo '<input style="vertical-align:sub;"  type="checkbox" name="line-showReduc" id="subtotal-showReduc" value="1" '.(($line->array_options['options_show_reduc'] > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2110
-                            echo '<label for="subtotal-showReduc">'.$langs->trans('ShowReducOnSubtotalBlock').'</label>';
2111
-                            echo '</div>';
2112
-                        }
2113
-                        else if ($isFreeText) echo TSubtotal::getFreeTextHtml($line, (bool) $readonlyForSituation);
2082
+						echo '<div>';
2083
+						echo '<input style="vertical-align:sub;"  type="checkbox" name="line-pagebreak" id="subtotal-pagebreak" value="8" '.(($line->info_bits > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2084
+						echo '<label for="subtotal-pagebreak">'.$langs->trans('AddBreakPageBefore').'</label>';
2085
+						echo '</div>';
2086
+
2087
+						if (TSubtotal::isTitle($line))
2088
+						{
2089
+							$form = new Form($db);
2090
+							echo '<div>';
2091
+							echo '<label for="subtotal_tva_tx">'.$form->textwithpicto($langs->trans('subtotal_apply_default_tva'), $langs->trans('subtotal_apply_default_tva_help')).'</label>';
2092
+							echo '<select id="subtotal_tva_tx" name="subtotal_tva_tx" class="flat"><option selected="selected" value="">-</option>';
2093
+							if (empty($readonlyForSituation)) echo str_replace('selected', '', $form->load_tva('subtotal_tva_tx', '', $parameters['seller'], $parameters['buyer'], 0, 0, '', true));
2094
+							echo '</select>';
2095
+							echo '</div>';
2096
+
2097
+							if (!empty($conf->global->INVOICE_USE_SITUATION) && $object->element == 'facture' && $object->type == Facture::TYPE_SITUATION)
2098
+							{
2099
+								echo '<div>';
2100
+								echo '<label for="subtotal_progress">'.$langs->trans('subtotal_apply_progress').'</label> <input id="subtotal_progress" name="subtotal_progress" value="" size="1" />%';
2101
+								echo '</div>';
2102
+							}
2103
+							echo '<div>';
2104
+							echo '<input style="vertical-align:sub;"  type="checkbox" name="line-showTotalHT" id="subtotal-showTotalHT" value="9" '.(($line->array_options['options_show_total_ht'] > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2105
+							echo '<label for="subtotal-showTotalHT">'.$langs->trans('ShowTotalHTOnSubtotalBlock').'</label>';
2106
+							echo '</div>';
2107
+
2108
+							echo '<div>';
2109
+							echo '<input style="vertical-align:sub;"  type="checkbox" name="line-showReduc" id="subtotal-showReduc" value="1" '.(($line->array_options['options_show_reduc'] > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2110
+							echo '<label for="subtotal-showReduc">'.$langs->trans('ShowReducOnSubtotalBlock').'</label>';
2111
+							echo '</div>';
2112
+						}
2113
+						else if ($isFreeText) echo TSubtotal::getFreeTextHtml($line, (bool) $readonlyForSituation);
2114 2114
 						echo '</div>';
2115 2115
 
2116 2116
 						if($line->qty<10) {
@@ -2378,17 +2378,17 @@  discard block
 block discarded – undo
2378 2378
 		if ($object->statut == 0 && !empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && $action != 'editline')
2379 2379
 		{
2380 2380
 		    
2381
-		    if($object->element == 'invoice_supplier' || $object->element == 'order_supplier')
2382
-		    {
2383
-		        foreach ($object->lines as $line)
2384
-		        {
2385
-		            // fetch optionals attributes and labels
2386
-		            require_once(DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php');
2387
-		            $extrafields=new ExtraFields($this->db);
2388
-		            $extralabels=$extrafields->fetch_name_optionals_label($object->table_element_line,true);
2389
-		            $line->fetch_optionals($line->id,$extralabels);
2390
-		        }
2391
-		    }
2381
+			if($object->element == 'invoice_supplier' || $object->element == 'order_supplier')
2382
+			{
2383
+				foreach ($object->lines as $line)
2384
+				{
2385
+					// fetch optionals attributes and labels
2386
+					require_once(DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php');
2387
+					$extrafields=new ExtraFields($this->db);
2388
+					$extralabels=$extrafields->fetch_name_optionals_label($object->table_element_line,true);
2389
+					$line->fetch_optionals($line->id,$extralabels);
2390
+				}
2391
+			}
2392 2392
 		    
2393 2393
 			$TSubNc = array();
2394 2394
 			foreach ($object->lines as &$l)
@@ -2479,80 +2479,80 @@  discard block
 block discarded – undo
2479 2479
 	{
2480 2480
 		dol_include_once('/subtotal/class/subtotal.class.php');
2481 2481
 
2482
-	    $line = &$parameters['line'];
2482
+		$line = &$parameters['line'];
2483 2483
 	    
2484
-	    $ThtmlData['data-id']           = $line->id;
2485
-	    $ThtmlData['data-product_type'] = $line->product_type;
2486
-	    $ThtmlData['data-qty']          = 0; //$line->qty;
2487
-	    $ThtmlData['data-level']        = TSubtotal::getNiveau($line);
2484
+		$ThtmlData['data-id']           = $line->id;
2485
+		$ThtmlData['data-product_type'] = $line->product_type;
2486
+		$ThtmlData['data-qty']          = 0; //$line->qty;
2487
+		$ThtmlData['data-level']        = TSubtotal::getNiveau($line);
2488 2488
 	    
2489
-	    if(TSubtotal::isTitle($line)){
2490
-	        $ThtmlData['data-issubtotal'] = 'title';
2491
-	    }elseif(TSubtotal::isSubtotal($line)){
2492
-	        $ThtmlData['data-issubtotal'] = 'subtotal';
2493
-	    }
2494
-	    else{
2495
-	        $ThtmlData['data-issubtotal'] = 'freetext';
2496
-	    }
2489
+		if(TSubtotal::isTitle($line)){
2490
+			$ThtmlData['data-issubtotal'] = 'title';
2491
+		}elseif(TSubtotal::isSubtotal($line)){
2492
+			$ThtmlData['data-issubtotal'] = 'subtotal';
2493
+		}
2494
+		else{
2495
+			$ThtmlData['data-issubtotal'] = 'freetext';
2496
+		}
2497 2497
 	    
2498 2498
 	    
2499
-	    // Change or add data  from hooks
2500
-	    $parameters = array_replace($parameters , array(  'ThtmlData' => $ThtmlData )  );
2499
+		// Change or add data  from hooks
2500
+		$parameters = array_replace($parameters , array(  'ThtmlData' => $ThtmlData )  );
2501 2501
 	    
2502
-	    // hook 
2503
-	    $reshook = $hookmanager->executeHooks('subtotalLineHtmlData',$parameters,$object,$action); // Note that $action and $object may have been modified by hook
2504
-	    if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
2505
-	    if ($reshook>0)
2506
-	    {
2507
-	        $ThtmlData = $hookmanager->resArray;
2508
-	    }
2509
-
2510
-	    return $this->implodeHtmlData($ThtmlData);
2502
+		// hook 
2503
+		$reshook = $hookmanager->executeHooks('subtotalLineHtmlData',$parameters,$object,$action); // Note that $action and $object may have been modified by hook
2504
+		if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
2505
+		if ($reshook>0)
2506
+		{
2507
+			$ThtmlData = $hookmanager->resArray;
2508
+		}
2509
+
2510
+		return $this->implodeHtmlData($ThtmlData);
2511 2511
 	
2512 2512
 	}
2513 2513
 	
2514 2514
 	
2515 2515
 	function implodeHtmlData($ThtmlData = array())
2516 2516
 	{
2517
-	    $data = '';
2518
-	    foreach($ThtmlData as $k => $h )
2519
-	    {
2520
-	        if(is_array($h))
2521
-	        {
2522
-	            $h = json_encode($h);
2523
-	        }
2517
+		$data = '';
2518
+		foreach($ThtmlData as $k => $h )
2519
+		{
2520
+			if(is_array($h))
2521
+			{
2522
+				$h = json_encode($h);
2523
+			}
2524 2524
 	        
2525
-	        $data .= $k . '="'.dol_htmlentities($h, ENT_QUOTES).'" ';
2526
-	    }
2525
+			$data .= $k . '="'.dol_htmlentities($h, ENT_QUOTES).'" ';
2526
+		}
2527 2527
 	    
2528
-	    return $data;
2528
+		return $data;
2529 2529
 	}
2530 2530
 	
2531 2531
 	function _ajax_block_order_js($object)
2532 2532
 	{
2533
-	    global $conf,$tagidfortablednd,$filepath,$langs;
2533
+		global $conf,$tagidfortablednd,$filepath,$langs;
2534 2534
 	    
2535
-	    /*
2535
+		/*
2536 2536
 	     * this part of js is base on dolibarr htdocs/core/tpl/ajaxrow.tpl.php 
2537 2537
 	     * for compatibility reasons we don't use tableDnD but jquery sortable
2538 2538
 	     */
2539 2539
 	    
2540
-	    $id=$object->id;
2541
-	    $nboflines=(isset($object->lines)?count($object->lines):0);
2542
-	    $forcereloadpage=empty($conf->global->MAIN_FORCE_RELOAD_PAGE)?0:1;
2540
+		$id=$object->id;
2541
+		$nboflines=(isset($object->lines)?count($object->lines):0);
2542
+		$forcereloadpage=empty($conf->global->MAIN_FORCE_RELOAD_PAGE)?0:1;
2543 2543
 	    
2544
-	    $id=$object->id;
2545
-	    $fk_element=$object->fk_element;
2546
-	    $table_element_line=$object->table_element_line;
2547
-	    $nboflines=(isset($object->lines)?count($object->lines):(empty($nboflines)?0:$nboflines));
2548
-	    $tagidfortablednd=(empty($tagidfortablednd)?'tablelines':$tagidfortablednd);
2549
-	    $filepath=(empty($filepath)?'':$filepath);
2544
+		$id=$object->id;
2545
+		$fk_element=$object->fk_element;
2546
+		$table_element_line=$object->table_element_line;
2547
+		$nboflines=(isset($object->lines)?count($object->lines):(empty($nboflines)?0:$nboflines));
2548
+		$tagidfortablednd=(empty($tagidfortablednd)?'tablelines':$tagidfortablednd);
2549
+		$filepath=(empty($filepath)?'':$filepath);
2550 2550
 	    
2551 2551
 	    
2552
-	    if (GETPOST('action','aZ09') != 'editline' && $nboflines > 1)
2553
-	    {
2552
+		if (GETPOST('action','aZ09') != 'editline' && $nboflines > 1)
2553
+		{
2554 2554
 	        
2555
-	        ?>
2555
+			?>
2556 2556
 		
2557 2557
 		
2558 2558
 			<script type="text/javascript">
Please login to merge, or discard this patch.
Spacing   +410 added lines, -410 removed lines patch added patch discarded remove patch
@@ -16,17 +16,17 @@  discard block
 block discarded – undo
16 16
 		
17 17
 		global $type_element, $where;
18 18
 		
19
-		$contexts = explode(':',$parameters['context']);
19
+		$contexts = explode(':', $parameters['context']);
20 20
 		
21
-		if(in_array('consumptionthirdparty',$contexts) && in_array($type_element, array('propal', 'order', 'invoice', 'supplier_order', 'supplier_invoice', 'supplier_proposal'))) {
21
+		if (in_array('consumptionthirdparty', $contexts) && in_array($type_element, array('propal', 'order', 'invoice', 'supplier_order', 'supplier_invoice', 'supplier_proposal'))) {
22 22
 			$mod_num = TSubtotal::$module_number;
23 23
 			
24 24
 			// Not a title (can't use TSubtotal class methods in sql)
25
-			$where.= ' AND (d.special_code != '.$mod_num.' OR d.product_type != 9 OR d.qty > 9)';
25
+			$where .= ' AND (d.special_code != '.$mod_num.' OR d.product_type != 9 OR d.qty > 9)';
26 26
 			// Not a subtotal (can't use TSubtotal class methods in sql)
27
-			$where.= ' AND (d.special_code != '.$mod_num.' OR d.product_type != 9 OR d.qty < 90)';
27
+			$where .= ' AND (d.special_code != '.$mod_num.' OR d.product_type != 9 OR d.qty < 90)';
28 28
 			// Not a free line text (can't use TSubtotal class methods in sql)
29
-			$where.= ' AND (d.special_code != '.$mod_num.' OR d.product_type != 9 OR d.qty != 50)';
29
+			$where .= ' AND (d.special_code != '.$mod_num.' OR d.product_type != 9 OR d.qty != 50)';
30 30
 			
31 31
 		}
32 32
 		
@@ -105,43 +105,43 @@  discard block
 block discarded – undo
105 105
     
106 106
     function formObjectOptions($parameters, &$object, &$action, $hookmanager) 
107 107
     {
108
-      	global $langs,$db,$user, $conf;
108
+      	global $langs, $db, $user, $conf;
109 109
 		
110 110
 		$langs->load('subtotal@subtotal');
111 111
 		
112
-		$contexts = explode(':',$parameters['context']);
112
+		$contexts = explode(':', $parameters['context']);
113 113
 		
114
-		if(in_array('ordercard',$contexts) || in_array('ordersuppliercard',$contexts) || in_array('propalcard',$contexts) || in_array('supplier_proposalcard',$contexts) || in_array('invoicecard',$contexts) || in_array('invoicesuppliercard',$contexts) || in_array('invoicereccard',$contexts)) {
114
+		if (in_array('ordercard', $contexts) || in_array('ordersuppliercard', $contexts) || in_array('propalcard', $contexts) || in_array('supplier_proposalcard', $contexts) || in_array('invoicecard', $contexts) || in_array('invoicesuppliercard', $contexts) || in_array('invoicereccard', $contexts)) {
115 115
 			
116 116
 			$createRight = $user->rights->{$object->element}->creer;
117
-			if($object->element == 'facturerec' )
117
+			if ($object->element == 'facturerec')
118 118
 			{
119 119
 				$object->statut = 0; // hack for facture rec
120 120
 				$createRight = $user->rights->facture->creer;
121
-			} elseif($object->element == 'order_supplier' )
121
+			} elseif ($object->element == 'order_supplier')
122 122
 			{
123 123
 			    $createRight = $user->rights->fournisseur->commande->creer;
124
-			} elseif($object->element == 'invoice_supplier' )
124
+			} elseif ($object->element == 'invoice_supplier')
125 125
 			{
126 126
 			    $createRight = $user->rights->fournisseur->facture->creer;
127 127
 			}
128 128
 			
129
-			if ($object->statut == 0  && $createRight) {
129
+			if ($object->statut == 0 && $createRight) {
130 130
 			
131 131
 
132
-				if($object->element=='facture')$idvar = 'facid';
133
-				else $idvar='id';
132
+				if ($object->element == 'facture')$idvar = 'facid';
133
+				else $idvar = 'id';
134 134
 				
135
-				if(in_array($action, array('add_title_line', 'add_total_line', 'add_subtitle_line', 'add_subtotal_line', 'add_free_text')) )
135
+				if (in_array($action, array('add_title_line', 'add_total_line', 'add_subtitle_line', 'add_subtotal_line', 'add_free_text')))
136 136
 				{
137 137
 					$level = GETPOST('level', 'int'); //New avec SUBTOTAL_USE_NEW_FORMAT
138 138
 					
139
-					if($action=='add_title_line') {
139
+					if ($action == 'add_title_line') {
140 140
 						$title = GETPOST('title');
141
-						if(empty($title)) $title = $langs->trans('title');
142
-						$qty = $level<1 ? 1 : $level ;
141
+						if (empty($title)) $title = $langs->trans('title');
142
+						$qty = $level < 1 ? 1 : $level;
143 143
 					}
144
-					else if($action=='add_free_text') {
144
+					else if ($action == 'add_free_text') {
145 145
 						$title = GETPOST('title');
146 146
 
147 147
 						if (empty($title)) {
@@ -153,21 +153,21 @@  discard block
 block discarded – undo
153 153
 								}
154 154
 							}
155 155
 						}
156
-						if(empty($title)) $title = $langs->trans('subtotalAddLineDescription');
156
+						if (empty($title)) $title = $langs->trans('subtotalAddLineDescription');
157 157
 						$qty = 50;
158 158
 					}
159
-					else if($action=='add_subtitle_line') {
159
+					else if ($action == 'add_subtitle_line') {
160 160
 						$title = GETPOST('title');
161
-						if(empty($title)) $title = $langs->trans('subtitle');
161
+						if (empty($title)) $title = $langs->trans('subtitle');
162 162
 						$qty = 2;
163 163
 					}
164
-					else if($action=='add_subtotal_line') {
164
+					else if ($action == 'add_subtotal_line') {
165 165
 						$title = $langs->trans('SubSubTotal');
166 166
 						$qty = 98;
167 167
 					}
168 168
 					else {
169 169
 						$title = GETPOST('title') ? GETPOST('title') : $langs->trans('SubTotal');
170
-						$qty = $level ? 100-$level : 99;
170
+						$qty = $level ? 100 - $level : 99;
171 171
 					}
172 172
 					dol_include_once('/subtotal/class/subtotal.class.php');
173 173
 					
@@ -175,15 +175,15 @@  discard block
 block discarded – undo
175 175
 					
176 176
 	    			TSubtotal::addSubTotalLine($object, $title, $qty);
177 177
 				}
178
-				else if($action==='ask_deleteallline') {
179
-						$form=new Form($db);
178
+				else if ($action === 'ask_deleteallline') {
179
+						$form = new Form($db);
180 180
 						
181
-						$lineid = GETPOST('lineid','integer');
181
+						$lineid = GETPOST('lineid', 'integer');
182 182
 						$TIdForGroup = $this->getArrayOfLineForAGroup($object, $lineid);
183 183
 					
184 184
 						$nbLines = count($TIdForGroup);
185 185
 					
186
-						$formconfirm=$form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&lineid='.$lineid, $langs->trans('deleteWithAllLines'), $langs->trans('ConfirmDeleteAllThisLines',$nbLines), 'confirm_delete_all_lines','',0,1);
186
+						$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&lineid='.$lineid, $langs->trans('deleteWithAllLines'), $langs->trans('ConfirmDeleteAllThisLines', $nbLines), 'confirm_delete_all_lines', '', 0, 1);
187 187
 						print $formconfirm;
188 188
 				}
189 189
 
@@ -193,13 +193,13 @@  discard block
 block discarded – undo
193 193
 				}
194 194
 
195 195
 				
196
-				if($action!='editline') {
196
+				if ($action != 'editline') {
197 197
 					// New format is for 3.8
198 198
 					$this->printNewFormat($object, $conf, $langs, $idvar);
199 199
 				}
200 200
 			}
201 201
 		}
202
-		elseif ((!empty($parameters['currentcontext']) && $parameters['currentcontext'] == 'orderstoinvoice') || in_array('orderstoinvoice',$contexts))
202
+		elseif ((!empty($parameters['currentcontext']) && $parameters['currentcontext'] == 'orderstoinvoice') || in_array('orderstoinvoice', $contexts))
203 203
 		{
204 204
 			?>
205 205
 			<script type="text/javascript">
@@ -224,7 +224,7 @@  discard block
 block discarded – undo
224 224
 				$(document).ready(function() {
225 225
 					$('div.fiche div.tabsAction').append('<br />');
226 226
 					
227
-					$('div.fiche div.tabsAction').append('<div class="inline-block divButAction"><a id="add_title_line" rel="add_title_line" href="javascript:;" class="butAction"><?php echo  $langs->trans('AddTitle' )?></a></div>');
227
+					$('div.fiche div.tabsAction').append('<div class="inline-block divButAction"><a id="add_title_line" rel="add_title_line" href="javascript:;" class="butAction"><?php echo  $langs->trans('AddTitle')?></a></div>');
228 228
 					$('div.fiche div.tabsAction').append('<div class="inline-block divButAction"><a id="add_total_line" rel="add_total_line" href="javascript:;" class="butAction"><?php echo  $langs->trans('AddSubTotal')?></a></div>');
229 229
 					$('div.fiche div.tabsAction').append('<div class="inline-block divButAction"><a id="add_free_text" rel="add_free_text" href="javascript:;" class="butAction"><?php echo  $langs->trans('AddFreeText')?></a></div>');
230 230
 
@@ -275,9 +275,9 @@  discard block
 block discarded – undo
275 275
 						$('body').append(dialog_html);
276 276
 
277 277
 						<?php 
278
-						$editorTool = empty($conf->global->FCKEDITOR_EDITORNAME)?'ckeditor':$conf->global->FCKEDITOR_EDITORNAME;
279
-						$editorConf = empty($conf->global->FCKEDITOR_ENABLE_DETAILS)?false:$conf->global->FCKEDITOR_ENABLE_DETAILS;
280
-						if($editorConf && in_array($editorTool,array('textarea','ckeditor'))){ 
278
+						$editorTool = empty($conf->global->FCKEDITOR_EDITORNAME) ? 'ckeditor' : $conf->global->FCKEDITOR_EDITORNAME;
279
+						$editorConf = empty($conf->global->FCKEDITOR_ENABLE_DETAILS) ?false:$conf->global->FCKEDITOR_ENABLE_DETAILS;
280
+						if ($editorConf && in_array($editorTool, array('textarea', 'ckeditor'))) { 
281 281
 						?>
282 282
 						if (action == 'addTitle' || action == 'addFreeTxt')
283 283
 						{
@@ -392,62 +392,62 @@  discard block
 block discarded – undo
392 392
 		global $conf, $langs, $bc;
393 393
 			
394 394
 		$action = GETPOST('action');	
395
-		$TContext = explode(':',$parameters['context']);
395
+		$TContext = explode(':', $parameters['context']);
396 396
 		if (
397
-				in_array('invoicecard',$TContext)
398
-		        || in_array('invoicesuppliercard',$TContext)
399
-				|| in_array('propalcard',$TContext)
400
-				|| in_array('ordercard',$TContext)
401
-		        || in_array('ordersuppliercard',$TContext)
402
-				|| in_array('invoicereccard',$TContext)
397
+				in_array('invoicecard', $TContext)
398
+		        || in_array('invoicesuppliercard', $TContext)
399
+				|| in_array('propalcard', $TContext)
400
+				|| in_array('ordercard', $TContext)
401
+		        || in_array('ordersuppliercard', $TContext)
402
+				|| in_array('invoicereccard', $TContext)
403 403
 			)
404 404
 	        {	
405
-	            $hideInnerLines	= isset( $_SESSION['subtotal_hideInnerLines_'.$parameters['modulepart']][$object->id] ) ?  $_SESSION['subtotal_hideInnerLines_'.$parameters['modulepart']][$object->id] : 0;
406
-	            $hidedetails	= isset( $_SESSION['subtotal_hidedetails_'.$parameters['modulepart']][$object->id] ) ?  $_SESSION['subtotal_hidedetails_'.$parameters['modulepart']][$object->id] : 0;
407
-				$hidepricesDefaultConf = !empty($conf->global->SUBTOTAL_HIDE_PRICE_DEFAULT_CHECKED)?$conf->global->SUBTOTAL_HIDE_PRICE_DEFAULT_CHECKED:0;
408
-				$hideprices= isset( $_SESSION['subtotal_hideprices_'.$parameters['modulepart']][$object->id] ) ?  $_SESSION['subtotal_hideprices_'.$parameters['modulepart']][$object->id] : $hidepricesDefaultConf;
405
+	            $hideInnerLines = isset($_SESSION['subtotal_hideInnerLines_'.$parameters['modulepart']][$object->id]) ? $_SESSION['subtotal_hideInnerLines_'.$parameters['modulepart']][$object->id] : 0;
406
+	            $hidedetails = isset($_SESSION['subtotal_hidedetails_'.$parameters['modulepart']][$object->id]) ? $_SESSION['subtotal_hidedetails_'.$parameters['modulepart']][$object->id] : 0;
407
+				$hidepricesDefaultConf = !empty($conf->global->SUBTOTAL_HIDE_PRICE_DEFAULT_CHECKED) ? $conf->global->SUBTOTAL_HIDE_PRICE_DEFAULT_CHECKED : 0;
408
+				$hideprices = isset($_SESSION['subtotal_hideprices_'.$parameters['modulepart']][$object->id]) ? $_SESSION['subtotal_hideprices_'.$parameters['modulepart']][$object->id] : $hidepricesDefaultConf;
409 409
 				
410
-				$var=false;
411
-		     	$out.= '<tr '.$bc[$var].'>
410
+				$var = false;
411
+		     	$out .= '<tr '.$bc[$var].'>
412 412
 		     			<td colspan="4" align="right">
413 413
 		     				<label for="hideInnerLines">'.$langs->trans('HideInnerLines').'</label>
414
-		     				<input type="checkbox" onclick="if($(this).is(\':checked\')) { $(\'#hidedetails\').prop(\'checked\', \'checked\')  }" id="hideInnerLines" name="hideInnerLines" value="1" '.(( $hideInnerLines ) ? 'checked="checked"' : '' ).' />
414
+		     				<input type="checkbox" onclick="if($(this).is(\':checked\')) { $(\'#hidedetails\').prop(\'checked\', \'checked\')  }" id="hideInnerLines" name="hideInnerLines" value="1" '.(($hideInnerLines) ? 'checked="checked"' : '').' />
415 415
 		     			</td>
416 416
 		     			</tr>';
417 417
 				
418
-		     	$var=!$var;
419
-		     	$out.= '<tr '.$bc[$var].'>
418
+		     	$var = !$var;
419
+		     	$out .= '<tr '.$bc[$var].'>
420 420
 		     			<td colspan="4" align="right">
421 421
 		     				<label for="hidedetails">'.$langs->trans('SubTotalhidedetails').'</label>
422
-		     				<input type="checkbox" id="hidedetails" name="hidedetails" value="1" '.(( $hidedetails ) ? 'checked="checked"' : '' ).' />
422
+		     				<input type="checkbox" id="hidedetails" name="hidedetails" value="1" '.(($hidedetails) ? 'checked="checked"' : '').' />
423 423
 		     			</td>
424 424
 		     			</tr>';
425 425
 		     	
426
-		     	$var=!$var;
427
-		     	$out.= '<tr '.$bc[$var].'>
426
+		     	$var = !$var;
427
+		     	$out .= '<tr '.$bc[$var].'>
428 428
 		     			<td colspan="4" align="right">
429 429
 		     				<label for="hideprices">'.$langs->trans('SubTotalhidePrice').'</label>
430
-		     				<input type="checkbox" id="hideprices" name="hideprices" value="1" '.(( $hideprices ) ? 'checked="checked"' : '' ).' />
430
+		     				<input type="checkbox" id="hideprices" name="hideprices" value="1" '.(($hideprices) ? 'checked="checked"' : '').' />
431 431
 		     			</td>
432 432
 		     			</tr>';
433 433
 		     	
434 434
 		     	
435 435
 				 
436 436
 				if ( 
437
-					(in_array('propalcard',$TContext) && !empty($conf->global->SUBTOTAL_PROPAL_ADD_RECAP))
438
-					|| (in_array('ordercard',$TContext) && !empty($conf->global->SUBTOTAL_COMMANDE_ADD_RECAP))
439
-				    || (in_array('ordersuppliercard',$TContext) && !empty($conf->global->SUBTOTAL_COMMANDE_ADD_RECAP))
440
-					|| (in_array('invoicecard',$TContext) && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP))
441
-				    || (in_array('invoicesuppliercard',$TContext) && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP))
442
-					|| (in_array('invoicereccard',$TContext)  && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP ))
437
+					(in_array('propalcard', $TContext) && !empty($conf->global->SUBTOTAL_PROPAL_ADD_RECAP))
438
+					|| (in_array('ordercard', $TContext) && !empty($conf->global->SUBTOTAL_COMMANDE_ADD_RECAP))
439
+				    || (in_array('ordersuppliercard', $TContext) && !empty($conf->global->SUBTOTAL_COMMANDE_ADD_RECAP))
440
+					|| (in_array('invoicecard', $TContext) && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP))
441
+				    || (in_array('invoicesuppliercard', $TContext) && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP))
442
+					|| (in_array('invoicereccard', $TContext) && !empty($conf->global->SUBTOTAL_INVOICE_ADD_RECAP))
443 443
 				)
444 444
 				{
445
-					$var=!$var;
446
-					$out.= '
445
+					$var = !$var;
446
+					$out .= '
447 447
 						<tr '.$bc[$var].'>
448 448
 							<td colspan="4" align="right">
449 449
 								<label for="subtotal_add_recap">'.$langs->trans('subtotal_add_recap').'</label>
450
-								<input type="checkbox" id="subtotal_add_recap" name="subtotal_add_recap" value="1" '.( GETPOST('subtotal_add_recap') ? 'checked="checked"' : '' ).' />
450
+								<input type="checkbox" id="subtotal_add_recap" name="subtotal_add_recap" value="1" '.(GETPOST('subtotal_add_recap') ? 'checked="checked"' : '').' />
451 451
 							</td>
452 452
 						</tr>';
453 453
 				}
@@ -463,7 +463,7 @@  discard block
 block discarded – undo
463 463
     function formEditProductOptions($parameters, &$object, &$action, $hookmanager) 
464 464
     {
465 465
 		
466
-    	if (in_array('invoicecard',explode(':',$parameters['context'])))
466
+    	if (in_array('invoicecard', explode(':', $parameters['context'])))
467 467
         {
468 468
         	
469 469
         }
@@ -474,13 +474,13 @@  discard block
 block discarded – undo
474 474
 	function ODTSubstitutionLine(&$parameters, &$object, $action, $hookmanager) {
475 475
 		global $conf;
476 476
 		
477
-		if($action === 'builddoc') {
477
+		if ($action === 'builddoc') {
478 478
 			
479 479
 			$line = &$parameters['line'];
480 480
 			$object = &$parameters['object'];
481 481
 			$substitutionarray = &$parameters['substitutionarray'];
482 482
 			
483
-			if($line->product_type == 9 && $line->special_code == $this->module_number) {
483
+			if ($line->product_type == 9 && $line->special_code == $this->module_number) {
484 484
 				$substitutionarray['line_modsubtotal'] = 1;	
485 485
 				
486 486
 				$substitutionarray['line_price_ht']
@@ -491,7 +491,7 @@  discard block
 block discarded – undo
491 491
 					 = $substitutionarray['line_up'] 
492 492
 					 = '';
493 493
 				
494
-				if($line->qty>90) {
494
+				if ($line->qty > 90) {
495 495
 					$substitutionarray['line_modsubtotal_total'] = true;
496 496
 					
497 497
 					list($total, $total_tva, $total_ttc, $TTotal_tva) = $this->getTotalLineFromObject($object, $line, '', 1);
@@ -505,7 +505,7 @@  discard block
 block discarded – undo
505 505
 				
506 506
 				
507 507
 			}	
508
-			else{
508
+			else {
509 509
 				$substitutionarray['line_not_modsubtotal'] = true;
510 510
 				$substitutionarray['line_modsubtotal'] = 0;
511 511
 			}
@@ -517,29 +517,29 @@  discard block
 block discarded – undo
517 517
 	function createFrom($parameters, &$object, $action, $hookmanager) {
518 518
 	
519 519
 		if (
520
-				in_array('invoicecard',explode(':',$parameters['context']))
521
-		        || in_array('invoicesuppliercard',explode(':',$parameters['context']))
522
-				|| in_array('propalcard',explode(':',$parameters['context']))
523
-		        || in_array('supplier_proposalcard',explode(':',$parameters['context']))
524
-				|| in_array('ordercard',explode(':',$parameters['context']))
525
-		        || in_array('ordersuppliercard',explode(':',$parameters['context']))
526
-				|| in_array('invoicereccard',explode(':',$parameters['context']))
520
+				in_array('invoicecard', explode(':', $parameters['context']))
521
+		        || in_array('invoicesuppliercard', explode(':', $parameters['context']))
522
+				|| in_array('propalcard', explode(':', $parameters['context']))
523
+		        || in_array('supplier_proposalcard', explode(':', $parameters['context']))
524
+				|| in_array('ordercard', explode(':', $parameters['context']))
525
+		        || in_array('ordersuppliercard', explode(':', $parameters['context']))
526
+				|| in_array('invoicereccard', explode(':', $parameters['context']))
527 527
 		) {
528 528
 			
529 529
 			global $db;
530 530
 			
531 531
 			$objFrom = $parameters['objFrom'];
532 532
 			
533
-			foreach($objFrom->lines as $k=> &$lineOld) {
533
+			foreach ($objFrom->lines as $k=> &$lineOld) {
534 534
 				
535
-					if($lineOld->product_type == 9 && $lineOld->info_bits > 0 ) {
535
+					if ($lineOld->product_type == 9 && $lineOld->info_bits > 0) {
536 536
 							
537 537
 							$line = & $object->lines[$k];
538 538
 				
539 539
 							$idLine = (int) ($line->id ? $line->id : $line->rowid); 
540 540
 				
541 541
 							$db->query("UPDATE ".MAIN_DB_PREFIX.$line->table_element."
542
-							SET info_bits=".(int)$lineOld->info_bits."
542
+							SET info_bits=".(int) $lineOld->info_bits."
543 543
 							WHERE rowid = ".$idLine."
544 544
 							");
545 545
 						
@@ -555,15 +555,15 @@  discard block
 block discarded – undo
555 555
 	
556 556
 	function doActions($parameters, &$object, $action, $hookmanager)
557 557
 	{
558
-		global $db, $conf, $langs,$user;
558
+		global $db, $conf, $langs, $user;
559 559
 		
560 560
 		dol_include_once('/subtotal/class/subtotal.class.php');
561 561
 		dol_include_once('/subtotal/lib/subtotal.lib.php');
562
-		require_once DOL_DOCUMENT_ROOT . '/core/class/extrafields.class.php';
562
+		require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
563 563
 		
564 564
 		$showBlockExtrafields = GETPOST('showBlockExtrafields');
565 565
 		
566
-		if($object->element=='facture') $idvar = 'facid';
566
+		if ($object->element == 'facture') $idvar = 'facid';
567 567
 		else $idvar = 'id';
568 568
 			
569 569
 		if ($action == 'updateligne' || $action == 'updateline')
@@ -576,7 +576,7 @@  discard block
 block discarded – undo
576 576
 				if ($line->id == $lineid && TSubtotal::isModSubtotalLine($line))
577 577
 				{
578 578
 					$found = true;
579
-					if(TSubtotal::isTitle($line) && !empty($showBlockExtrafields)) {
579
+					if (TSubtotal::isTitle($line) && !empty($showBlockExtrafields)) {
580 580
 						$extrafieldsline = new ExtraFields($db);
581 581
 						$extralabelsline = $extrafieldsline->fetch_name_optionals_label($object->table_element_line);
582 582
 						$extrafieldsline->setOptionalsFromPost($extralabelsline, $line);
@@ -595,43 +595,43 @@  discard block
 block discarded – undo
595 595
 				exit; // Surtout ne pas laisser Dolibarr faire du traitement sur le updateligne sinon ça plante les données de la ligne
596 596
 			}
597 597
 		}
598
-		else if($action === 'builddoc') {
598
+		else if ($action === 'builddoc') {
599 599
 			
600 600
 			if (
601
-				in_array('invoicecard',explode(':',$parameters['context']))
602
-				|| in_array('propalcard',explode(':',$parameters['context']))
603
-				|| in_array('ordercard',explode(':',$parameters['context']))
604
-			    || in_array('ordersuppliercard',explode(':',$parameters['context']))
605
-			    || in_array('invoicesuppliercard',explode(':',$parameters['context']))
606
-			    || in_array('supplier_proposalcard',explode(':',$parameters['context']))
601
+				in_array('invoicecard', explode(':', $parameters['context']))
602
+				|| in_array('propalcard', explode(':', $parameters['context']))
603
+				|| in_array('ordercard', explode(':', $parameters['context']))
604
+			    || in_array('ordersuppliercard', explode(':', $parameters['context']))
605
+			    || in_array('invoicesuppliercard', explode(':', $parameters['context']))
606
+			    || in_array('supplier_proposalcard', explode(':', $parameters['context']))
607 607
 			)
608 608
 	        {								
609
-				if(in_array('invoicecard',explode(':',$parameters['context']))) {
609
+				if (in_array('invoicecard', explode(':', $parameters['context']))) {
610 610
 					$sessname = 'subtotal_hideInnerLines_facture';	
611 611
 					$sessname2 = 'subtotal_hidedetails_facture';
612 612
 					$sessname3 = 'subtotal_hideprices_facture';
613 613
 				}
614
-				elseif(in_array('invoicesuppliercard',explode(':',$parameters['context']))) {
614
+				elseif (in_array('invoicesuppliercard', explode(':', $parameters['context']))) {
615 615
 				    $sessname = 'subtotal_hideInnerLines_facture_fournisseur';
616 616
 				    $sessname2 = 'subtotal_hidedetails_facture_fournisseur';
617 617
 				    $sessname3 = 'subtotal_hideprices_facture_fournisseur';
618 618
 				}
619
-				elseif(in_array('propalcard',explode(':',$parameters['context']))) {
619
+				elseif (in_array('propalcard', explode(':', $parameters['context']))) {
620 620
 					$sessname = 'subtotal_hideInnerLines_propal';
621 621
 					$sessname2 = 'subtotal_hidedetails_propal';	
622 622
 					$sessname3 = 'subtotal_hideprices_propal';
623 623
 				}
624
-				elseif(in_array('supplier_proposalcard',explode(':',$parameters['context']))) {
624
+				elseif (in_array('supplier_proposalcard', explode(':', $parameters['context']))) {
625 625
 				    $sessname = 'subtotal_hideInnerLines_supplier_proposal';
626 626
 				    $sessname2 = 'subtotal_hidedetails_supplier_proposal';
627 627
 				    $sessname3 = 'subtotal_hideprices_supplier_proposal';
628 628
 				}
629
-				elseif(in_array('ordercard',explode(':',$parameters['context']))) {
629
+				elseif (in_array('ordercard', explode(':', $parameters['context']))) {
630 630
 					$sessname = 'subtotal_hideInnerLines_commande';
631 631
 					$sessname2 = 'subtotal_hidedetails_commande';	
632 632
 					$sessname3 = 'subtotal_hideprices_commande';
633 633
 				}
634
-				elseif(in_array('ordersuppliercard',explode(':',$parameters['context']))) {
634
+				elseif (in_array('ordersuppliercard', explode(':', $parameters['context']))) {
635 635
 				    $sessname = 'subtotal_hideInnerLines_commande_fournisseur';
636 636
 				    $sessname2 = 'subtotal_hidedetails_commande_fournisseur';
637 637
 				    $sessname3 = 'subtotal_hideprices_commande_fournisseur';
@@ -644,25 +644,25 @@  discard block
 block discarded – undo
644 644
 					
645 645
 				global $hideprices;
646 646
 				
647
-				$hideInnerLines = (int)GETPOST('hideInnerLines');
648
-				if(!empty($_SESSION[$sessname]) && !is_array($_SESSION[$sessname][$object->id]) ) $_SESSION[$sessname] = array(); // prevent old system
647
+				$hideInnerLines = (int) GETPOST('hideInnerLines');
648
+				if (!empty($_SESSION[$sessname]) && !is_array($_SESSION[$sessname][$object->id])) $_SESSION[$sessname] = array(); // prevent old system
649 649
 				$_SESSION[$sessname][$object->id] = $hideInnerLines;		
650 650
 				
651
-				$hidedetails= (int)GETPOST('hidedetails');
652
-				if(!empty($_SESSION[$sessname2]) && !is_array($_SESSION[$sessname2][$object->id]) ) $_SESSION[$sessname2] = array(); // prevent old system
651
+				$hidedetails = (int) GETPOST('hidedetails');
652
+				if (!empty($_SESSION[$sessname2]) && !is_array($_SESSION[$sessname2][$object->id])) $_SESSION[$sessname2] = array(); // prevent old system
653 653
 				$_SESSION[$sessname2][$object->id] = $hidedetails;
654 654
 				
655
-				$hideprices= (int)GETPOST('hideprices');
656
-				if(!empty($_SESSION[$sessname3]) && !is_array($_SESSION[$sessname3][$object->id]) ) $_SESSION[$sessname3] = array(); // prevent old system
655
+				$hideprices = (int) GETPOST('hideprices');
656
+				if (!empty($_SESSION[$sessname3]) && !is_array($_SESSION[$sessname3][$object->id])) $_SESSION[$sessname3] = array(); // prevent old system
657 657
 				$_SESSION[$sessname3][$object->id] = $hideprices;
658 658
 				
659
-				foreach($object->lines as &$line) {
659
+				foreach ($object->lines as &$line) {
660 660
 					if ($line->product_type == 9 && $line->special_code == $this->module_number) {
661 661
 					    
662
-                        if($line->qty>=90) {
662
+                        if ($line->qty >= 90) {
663 663
                             $line->modsubtotal_total = 1;
664 664
                         }
665
-                        else{
665
+                        else {
666 666
                             $line->modsubtotal_title = 1;
667 667
                         }
668 668
                         
@@ -672,34 +672,34 @@  discard block
 block discarded – undo
672 672
 	        }
673 673
 			
674 674
 		}
675
-		else if($action === 'confirm_delete_all_lines' && GETPOST('confirm')=='yes') {
675
+		else if ($action === 'confirm_delete_all_lines' && GETPOST('confirm') == 'yes') {
676 676
 			
677 677
 			$Tab = $this->getArrayOfLineForAGroup($object, GETPOST('lineid'));
678 678
 			
679
-			foreach($Tab as $idLine) {
679
+			foreach ($Tab as $idLine) {
680 680
 				/**
681 681
 				 * @var $object Facture
682 682
 				 */
683
-				if($object->element=='facture') $object->deleteline($idLine);
683
+				if ($object->element == 'facture') $object->deleteline($idLine);
684 684
 				/**
685 685
 				 * @var $object Facture fournisseur
686 686
 				 */
687
-				else if($object->element=='invoice_supplier')
687
+				else if ($object->element == 'invoice_supplier')
688 688
 				{
689 689
 				    $object->deleteline($idLine);
690 690
 				}
691 691
 				/**
692 692
 				 * @var $object Propal
693 693
 				 */
694
-				else if($object->element=='propal') $object->deleteline($idLine);
694
+				else if ($object->element == 'propal') $object->deleteline($idLine);
695 695
 				/**
696 696
 				 * @var $object Propal Fournisseur
697 697
 				 */
698
-				else if($object->element=='supplier_proposal') $object->deleteline($idLine);
698
+				else if ($object->element == 'supplier_proposal') $object->deleteline($idLine);
699 699
 				/**
700 700
 				 * @var $object Commande
701 701
 				 */
702
-				else if($object->element=='commande') 
702
+				else if ($object->element == 'commande') 
703 703
 				{
704 704
 					if ((float) DOL_VERSION >= 5.0) $object->deleteline($user, $idLine);
705 705
 					else $object->deleteline($idLine);
@@ -707,14 +707,14 @@  discard block
 block discarded – undo
707 707
 				/**
708 708
 				 * @var $object Commande fournisseur
709 709
 				 */
710
-				else if($object->element=='order_supplier')
710
+				else if ($object->element == 'order_supplier')
711 711
 				{
712 712
 				    $object->deleteline($idLine);
713 713
 				}
714 714
 				/**
715 715
 				 * @var $object Facturerec
716 716
 				 */
717
-				else if($object->element=='facturerec') $object->deleteline($idLine);
717
+				else if ($object->element == 'facturerec') $object->deleteline($idLine);
718 718
 			}
719 719
 			
720 720
 			header('location:?id='.$object->id);
@@ -737,7 +737,7 @@  discard block
 block discarded – undo
737 737
 		return 0;
738 738
 	}
739 739
 	
740
-	function formAddObjectLine ($parameters, &$object, &$action, $hookmanager) {
740
+	function formAddObjectLine($parameters, &$object, &$action, $hookmanager) {
741 741
 		return 0;
742 742
 	}
743 743
 	
@@ -755,8 +755,8 @@  discard block
 block discarded – undo
755 755
 			if (!empty($parameters['fk_element']))
756 756
 			{
757 757
 				
758
-				if($obj->fetch($parameters['fk_element'])){
759
-					$obj->id= $obj->rowid;
758
+				if ($obj->fetch($parameters['fk_element'])) {
759
+					$obj->id = $obj->rowid;
760 760
 					if (empty($obj->array_options))
761 761
 						$obj->fetch_optionals();
762 762
 					if (!empty($obj->array_options['options_subtotal_nc']))
@@ -776,22 +776,22 @@  discard block
 block discarded – undo
776 776
 		
777 777
 		$found = false;
778 778
 
779
-		$Tab= array();
779
+		$Tab = array();
780 780
 		
781
-		foreach($object->lines as $l) {
781
+		foreach ($object->lines as $l) {
782 782
 		
783 783
 		    $lid = (!empty($l->rowid) ? $l->rowid : $l->id);
784
-			if($lid == $lineid) {
784
+			if ($lid == $lineid) {
785 785
 
786 786
 				$found = true;
787 787
 				$qty_line = $l->qty;
788 788
 			}
789 789
 			
790
-			if($found) {
790
+			if ($found) {
791 791
 				
792 792
 			    $Tab[] = (!empty($l->rowid) ? $l->rowid : $l->id);
793 793
 				
794
-				if($l->special_code==$this->module_number && (($l->qty==99 && $qty_line==1) || ($l->qty==98 && $qty_line==2))   ) {
794
+				if ($l->special_code == $this->module_number && (($l->qty == 99 && $qty_line == 1) || ($l->qty == 98 && $qty_line == 2))) {
795 795
 					break; // end of story
796 796
 				}
797 797
 			}
@@ -820,7 +820,7 @@  discard block
 block discarded – undo
820 820
 	 * 
821 821
 	 * @param	$use_level		isn't used anymore
822 822
 	 */
823
-	function getTotalLineFromObject(&$object, &$line, $use_level=false, $return_all=0) {
823
+	function getTotalLineFromObject(&$object, &$line, $use_level = false, $return_all = 0) {
824 824
 		global $conf;
825 825
 		
826 826
 		$rang = $line->rang;
@@ -831,31 +831,31 @@  discard block
 block discarded – undo
831 831
 		$total_ttc = 0;
832 832
 		$TTotal_tva = array();
833 833
 		
834
-		$sign=1;
835
-		if (isset($object->type) && $object->type == 2 && ! empty($conf->global->INVOICE_POSITIVE_CREDIT_NOTE)) $sign=-1;
834
+		$sign = 1;
835
+		if (isset($object->type) && $object->type == 2 && !empty($conf->global->INVOICE_POSITIVE_CREDIT_NOTE)) $sign = -1;
836 836
 		
837 837
 		if (GETPOST('action') == 'builddoc') $builddoc = true;
838 838
 		else $builddoc = false;
839 839
 		
840 840
 		dol_include_once('/subtotal/class/subtotal.class.php');
841
-		foreach($object->lines as $l) {
841
+		foreach ($object->lines as $l) {
842 842
 			//print $l->rang.'>='.$rang.' '.$total.'<br/>';
843
-			if($l->rang>=$rang) {
843
+			if ($l->rang >= $rang) {
844 844
 				//echo 'return!<br>';
845 845
 				if (!$return_all) return $total;
846 846
 				else return array($total, $total_tva, $total_ttc, $TTotal_tva);
847 847
 			}
848
-			else if(TSubtotal::isTitle($l, 100 - $qty_line)) 
848
+			else if (TSubtotal::isTitle($l, 100 - $qty_line)) 
849 849
 		  	{
850 850
 				$total = 0;
851 851
 				$total_tva = 0;
852 852
 				$total_ttc = 0;
853 853
 				$TTotal_tva = array();
854 854
 			}
855
-			elseif(!TSubtotal::isTitle($l) && !TSubtotal::isSubtotal($l)) {
855
+			elseif (!TSubtotal::isTitle($l) && !TSubtotal::isSubtotal($l)) {
856 856
 				
857 857
 				// TODO retirer le test avec $builddoc quand Dolibarr affichera le total progression sur la card et pas seulement dans le PDF
858
-				if ($builddoc && $object->element == 'facture' && $object->type==Facture::TYPE_SITUATION)
858
+				if ($builddoc && $object->element == 'facture' && $object->type == Facture::TYPE_SITUATION)
859 859
 				{
860 860
 					if ($l->situation_percent > 0)
861 861
 					{
@@ -868,7 +868,7 @@  discard block
 block discarded – undo
868 868
 						}
869 869
 						
870 870
 						$result = $sign * ($l->total_ht / ($l->situation_percent / 100)) * $progress;
871
-						$total+= $result;
871
+						$total += $result;
872 872
 						// TODO check si les 3 lignes du dessous sont corrects
873 873
 						$total_tva += $sign * ($l->total_tva / ($l->situation_percent / 100)) * $progress;
874 874
 						$TTotal_tva[$l->tva_tx] += $sign * ($l->total_tva / ($l->situation_percent / 100)) * $progress;
@@ -900,10 +900,10 @@  discard block
 block discarded – undo
900 900
 	 * @param $w            float               width
901 901
 	 * @param $h            float               height
902 902
 	 */
903
-	function pdf_add_total(&$pdf,&$object, &$line, $label, $description,$posx, $posy, $w, $h) {
904
-		global $conf,$subtotal_last_title_posy;
903
+	function pdf_add_total(&$pdf, &$object, &$line, $label, $description, $posx, $posy, $w, $h) {
904
+		global $conf, $subtotal_last_title_posy;
905 905
 
906
-		$hideInnerLines = (int)GETPOST('hideInnerLines');
906
+		$hideInnerLines = (int) GETPOST('hideInnerLines');
907 907
 		if (!empty($conf->global->SUBTOTAL_ONE_LINE_IF_HIDE_INNERLINES) && $hideInnerLines && !empty($subtotal_last_title_posy))
908 908
 		{
909 909
 			$posy = $subtotal_last_title_posy;
@@ -913,34 +913,34 @@  discard block
 block discarded – undo
913 913
 		$hidePriceOnSubtotalLines = (int) GETPOST('hide_price_on_subtotal_lines');
914 914
 		
915 915
 		$set_pagebreak_margin = false;
916
-		if(method_exists('Closure','bind')) {
916
+		if (method_exists('Closure', 'bind')) {
917 917
 			$pageBreakOriginalValue = $pdf->AcceptPageBreak();
918
-			$sweetsThief = function ($pdf) {
919
-		    		return $pdf->bMargin ;
918
+			$sweetsThief = function($pdf) {
919
+		    		return $pdf->bMargin;
920 920
 			};
921 921
 			$sweetsThief = Closure::bind($sweetsThief, null, $pdf);
922 922
 	
923
-			$bMargin  = $sweetsThief($pdf);
923
+			$bMargin = $sweetsThief($pdf);
924 924
 	
925
-			$pdf->SetAutoPageBreak( false );
925
+			$pdf->SetAutoPageBreak(false);
926 926
 
927 927
 			$set_pagebreak_margin = true;			
928 928
 		}
929 929
 		
930 930
 			
931
-		if($line->qty==99)
932
-			$pdf->SetFillColor(220,220,220);
933
-		elseif ($line->qty==98)
934
-			$pdf->SetFillColor(230,230,230);
931
+		if ($line->qty == 99)
932
+			$pdf->SetFillColor(220, 220, 220);
933
+		elseif ($line->qty == 98)
934
+			$pdf->SetFillColor(230, 230, 230);
935 935
 		else
936
-			$pdf->SetFillColor(240,240,240);
936
+			$pdf->SetFillColor(240, 240, 240);
937 937
 		
938 938
 		$style = 'B';
939 939
 		if (!empty($conf->global->SUBTOTAL_SUBTOTAL_STYLE)) $style = $conf->global->SUBTOTAL_SUBTOTAL_STYLE;
940 940
 		
941 941
 		$pdf->SetFont('', $style, 9);
942 942
 		
943
-		$pdf->writeHTMLCell($w, $h, $posx, $posy, $label, 0, 1, false, true, 'R',true);
943
+		$pdf->writeHTMLCell($w, $h, $posx, $posy, $label, 0, 1, false, true, 'R', true);
944 944
 //		var_dump($bMargin);
945 945
 		$pageAfter = $pdf->getPage();
946 946
 		
@@ -968,7 +968,7 @@  discard block
 block discarded – undo
968 968
 			
969 969
 			
970 970
 			
971
-			if($total_to_print !== '') {
971
+			if ($total_to_print !== '') {
972 972
 				
973 973
 				if (GETPOST('hideInnerLines'))
974 974
 				{
@@ -992,11 +992,11 @@  discard block
 block discarded – undo
992 992
 			}
993 993
 
994 994
 			$pdf->SetXY($pdf->postotalht, $posy);
995
-			if($set_pagebreak_margin) $pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin);
996
-			$pdf->MultiCell($pdf->page_largeur-$pdf->marge_droite-$pdf->postotalht, 3, $total_to_print, 0, 'R', 0);
995
+			if ($set_pagebreak_margin) $pdf->SetAutoPageBreak($pageBreakOriginalValue, $bMargin);
996
+			$pdf->MultiCell($pdf->page_largeur - $pdf->marge_droite - $pdf->postotalht, 3, $total_to_print, 0, 'R', 0);
997 997
 		}
998
-		else{
999
-			if($set_pagebreak_margin) $pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin);
998
+		else {
999
+			if ($set_pagebreak_margin) $pdf->SetAutoPageBreak($pageBreakOriginalValue, $bMargin);
1000 1000
 		}
1001 1001
 		
1002 1002
 		$posy = $posy + $cell_height;
@@ -1016,22 +1016,22 @@  discard block
 block discarded – undo
1016 1016
 	 * @param $w            float               width
1017 1017
 	 * @param $h            float               height
1018 1018
 	 */
1019
-	function pdf_add_title(&$pdf,&$object, &$line, $label, $description,$posx, $posy, $w, $h) {
1019
+	function pdf_add_title(&$pdf, &$object, &$line, $label, $description, $posx, $posy, $w, $h) {
1020 1020
 		
1021
-		global $db,$conf,$subtotal_last_title_posy;
1021
+		global $db, $conf, $subtotal_last_title_posy;
1022 1022
 		
1023 1023
 		$subtotal_last_title_posy = $posy;
1024
-		$pdf->SetXY ($posx, $posy);
1024
+		$pdf->SetXY($posx, $posy);
1025 1025
 		
1026
-		$hideInnerLines = (int)GETPOST('hideInnerLines');
1026
+		$hideInnerLines = (int) GETPOST('hideInnerLines');
1027 1027
 		
1028 1028
 		
1029 1029
  
1030
-		$style = ($line->qty==1) ? 'BU' : 'BUI';
1030
+		$style = ($line->qty == 1) ? 'BU' : 'BUI';
1031 1031
 		if (!empty($conf->global->SUBTOTAL_TITLE_STYLE)) $style = $conf->global->SUBTOTAL_TITLE_STYLE;
1032 1032
 		
1033
-		if($hideInnerLines) {
1034
-			if($line->qty==1)$pdf->SetFont('', $style, 9);
1033
+		if ($hideInnerLines) {
1034
+			if ($line->qty == 1)$pdf->SetFont('', $style, 9);
1035 1035
 			else 
1036 1036
 			{
1037 1037
 				if (!empty($conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES)) $style = $conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES;
@@ -1040,43 +1040,43 @@  discard block
 block discarded – undo
1040 1040
 		}
1041 1041
 		else {
1042 1042
 
1043
-			if($line->qty==1)$pdf->SetFont('', $style, 9); //TODO if super utile
1043
+			if ($line->qty == 1)$pdf->SetFont('', $style, 9); //TODO if super utile
1044 1044
 			else $pdf->SetFont('', $style, 9);
1045 1045
 			
1046 1046
 		}
1047 1047
 		
1048 1048
 		if ($label === strip_tags($label) && $label === dol_html_entity_decode($label, ENT_QUOTES)) $pdf->MultiCell($w, $h, $label, 0, 'L'); // Pas de HTML dans la chaine
1049
-		else $pdf->writeHTMLCell($w, $h, $posx, $posy, $label, 0, 1, false, true, 'J',true); // et maintenant avec du HTML
1049
+		else $pdf->writeHTMLCell($w, $h, $posx, $posy, $label, 0, 1, false, true, 'J', true); // et maintenant avec du HTML
1050 1050
 		
1051
-		if($description && !$hidedesc) {
1051
+		if ($description && !$hidedesc) {
1052 1052
 			$posy = $pdf->GetY();
1053 1053
 			
1054 1054
 			$pdf->SetFont('', '', 8);
1055 1055
 			
1056
-			$pdf->writeHTMLCell($w, $h, $posx, $posy, $description, 0, 1, false, true, 'J',true);
1056
+			$pdf->writeHTMLCell($w, $h, $posx, $posy, $description, 0, 1, false, true, 'J', true);
1057 1057
 
1058 1058
 		}
1059 1059
 		
1060 1060
 	}
1061 1061
 
1062
-	function pdf_writelinedesc_ref($parameters=array(), &$object, &$action='') {
1062
+	function pdf_writelinedesc_ref($parameters = array(), &$object, &$action = '') {
1063 1063
 	// ultimate PDF hook O_o
1064 1064
 		
1065
-		return $this->pdf_writelinedesc($parameters,$object,$action);
1065
+		return $this->pdf_writelinedesc($parameters, $object, $action);
1066 1066
 		
1067 1067
 	}
1068 1068
 
1069 1069
 	function isModSubtotalLine(&$parameters, &$object) {
1070 1070
 		
1071
-		if(is_array($parameters)) {
1071
+		if (is_array($parameters)) {
1072 1072
 			$i = & $parameters['i'];	
1073 1073
 		}
1074 1074
 		else {
1075
-			$i = (int)$parameters;
1075
+			$i = (int) $parameters;
1076 1076
 		}
1077 1077
 		
1078 1078
 		
1079
-		if($object->lines[$i]->special_code == $this->module_number && $object->lines[$i]->product_type == 9) {
1079
+		if ($object->lines[$i]->special_code == $this->module_number && $object->lines[$i]->product_type == 9) {
1080 1080
 			return true;
1081 1081
 		}
1082 1082
 		
@@ -1084,43 +1084,43 @@  discard block
 block discarded – undo
1084 1084
 		
1085 1085
 	}
1086 1086
 
1087
-	function pdf_getlineqty($parameters=array(), &$object, &$action='') {
1088
-		global $conf,$hideprices;
1087
+	function pdf_getlineqty($parameters = array(), &$object, &$action = '') {
1088
+		global $conf, $hideprices;
1089 1089
 		
1090
-		if($this->isModSubtotalLine($parameters,$object) ){
1090
+		if ($this->isModSubtotalLine($parameters, $object)) {
1091 1091
 			
1092 1092
 			$this->resprints = ' ';
1093 1093
 			
1094
-			if((float)DOL_VERSION<=3.6) {
1094
+			if ((float) DOL_VERSION <= 3.6) {
1095 1095
 				return '';
1096 1096
 			}
1097
-			else if((float)DOL_VERSION>=3.8) {
1097
+			else if ((float) DOL_VERSION >= 3.8) {
1098 1098
 				return 1;
1099 1099
 			}
1100 1100
 			
1101 1101
 		}
1102
-		elseif(!empty($hideprices)) {
1102
+		elseif (!empty($hideprices)) {
1103 1103
 			$this->resprints = $object->lines[$parameters['i']]->qty;
1104 1104
 			return 1;
1105 1105
 		}
1106 1106
 		elseif (!empty($conf->global->SUBTOTAL_IF_HIDE_PRICES_SHOW_QTY))
1107 1107
 		{
1108
-			$hideInnerLines = (int)GETPOST('hideInnerLines');
1109
-			$hidedetails = (int)GETPOST('hidedetails');
1108
+			$hideInnerLines = (int) GETPOST('hideInnerLines');
1109
+			$hidedetails = (int) GETPOST('hidedetails');
1110 1110
 			if (empty($hideInnerLines) && !empty($hidedetails))
1111 1111
 			{
1112 1112
 				$this->resprints = $object->lines[$parameters['i']]->qty;
1113 1113
 			}
1114 1114
 		}
1115 1115
 		
1116
-		if(is_array($parameters)) $i = & $parameters['i'];
1117
-		else $i = (int)$parameters;
1116
+		if (is_array($parameters)) $i = & $parameters['i'];
1117
+		else $i = (int) $parameters;
1118 1118
 
1119 1119
 		if (empty($object->lines[$i])) return 0; // hideInnerLines => override $object->lines et Dolibarr ne nous permet pas de mettre à jour la variable qui conditionne la boucle sur les lignes (PR faite pour 6.0)
1120 1120
 		
1121
-		if(empty($object->lines[$i]->array_options)) $object->lines[$i]->fetch_optionals();
1121
+		if (empty($object->lines[$i]->array_options)) $object->lines[$i]->fetch_optionals();
1122 1122
 
1123
-		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1123
+		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])))
1124 1124
 		{
1125 1125
 			if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1126 1126
 			{
@@ -1132,20 +1132,20 @@  discard block
 block discarded – undo
1132 1132
 		return 0;
1133 1133
 	}
1134 1134
 	
1135
-	function pdf_getlinetotalexcltax($parameters=array(), &$object, &$action='') {
1135
+	function pdf_getlinetotalexcltax($parameters = array(), &$object, &$action = '') {
1136 1136
 	    global $conf, $hideprices, $hookmanager;
1137 1137
 		
1138
-		if(is_array($parameters)) $i = & $parameters['i'];
1139
-		else $i = (int)$parameters;
1138
+		if (is_array($parameters)) $i = & $parameters['i'];
1139
+		else $i = (int) $parameters;
1140 1140
 			
1141
-		if($this->isModSubtotalLine($parameters,$object) ){
1141
+		if ($this->isModSubtotalLine($parameters, $object)) {
1142 1142
 			
1143 1143
 			$this->resprints = ' ';
1144 1144
 			
1145
-			if((float)DOL_VERSION<=3.6) {
1145
+			if ((float) DOL_VERSION <= 3.6) {
1146 1146
 				return '';
1147 1147
 			}
1148
-			else if((float)DOL_VERSION>=3.8) {
1148
+			else if ((float) DOL_VERSION >= 3.8) {
1149 1149
 				return 1;
1150 1150
 			}
1151 1151
 			
@@ -1171,7 +1171,7 @@  discard block
 block discarded – undo
1171 1171
 				}
1172 1172
 			}
1173 1173
 		}
1174
-		if ((int)GETPOST('hideInnerLines') && !empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES)){
1174
+		if ((int) GETPOST('hideInnerLines') && !empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES)) {
1175 1175
 		    $this->resprints = price($object->lines[$i]->total_ht);
1176 1176
 		}
1177 1177
 		
@@ -1196,7 +1196,7 @@  discard block
 block discarded – undo
1196 1196
 		{
1197 1197
 			// Check if a title exist for this line && if the title have subtotal
1198 1198
 			$lineTitle = TSubtotal::getParentTitleOfLine($object, $i);
1199
-			if(TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1199
+			if (TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1200 1200
 			{
1201 1201
 
1202 1202
 				$this->resprints = ' ';
@@ -1216,7 +1216,7 @@  discard block
 block discarded – undo
1216 1216
 	 */
1217 1217
 	private function callHook(&$object, &$hookmanager, $action, $params, $defaultReturn = 1)
1218 1218
 	{
1219
-		$reshook=$hookmanager->executeHooks('subtotalHidePrices',$params, $object, $action);
1219
+		$reshook = $hookmanager->executeHooks('subtotalHidePrices', $params, $object, $action);
1220 1220
 		if ($reshook < 0)
1221 1221
 		{
1222 1222
 			$this->error = $hookmanager->error;
@@ -1232,7 +1232,7 @@  discard block
 block discarded – undo
1232 1232
 			$this->resprints = $hookmanager->resprints;
1233 1233
 
1234 1234
 			// override return (use  $this->results['overrideReturn'] or $this->resArray['overrideReturn'] in other module action_xxxx.class.php )
1235
-			if(isset($hookmanager->resArray['overrideReturn']))
1235
+			if (isset($hookmanager->resArray['overrideReturn']))
1236 1236
 			{
1237 1237
 				return $hookmanager->resArray['overrideReturn'];
1238 1238
 			}
@@ -1241,25 +1241,25 @@  discard block
 block discarded – undo
1241 1241
 		return $defaultReturn;
1242 1242
 	}
1243 1243
 	
1244
-	function pdf_getlinetotalwithtax($parameters=array(), &$object, &$action='') {
1244
+	function pdf_getlinetotalwithtax($parameters = array(), &$object, &$action = '') {
1245 1245
 		global $conf;
1246 1246
 		
1247
-		if($this->isModSubtotalLine($parameters,$object) ){
1247
+		if ($this->isModSubtotalLine($parameters, $object)) {
1248 1248
 			
1249 1249
 			$this->resprints = ' ';
1250 1250
 		
1251
-			if((float)DOL_VERSION<=3.6) {
1251
+			if ((float) DOL_VERSION <= 3.6) {
1252 1252
 				return '';
1253 1253
 			}
1254
-			else if((float)DOL_VERSION>=3.8) {
1254
+			else if ((float) DOL_VERSION >= 3.8) {
1255 1255
 				return 1;
1256 1256
 			}
1257 1257
 		}
1258 1258
 		
1259
-		if(is_array($parameters)) $i = & $parameters['i'];
1260
-		else $i = (int)$parameters;
1259
+		if (is_array($parameters)) $i = & $parameters['i'];
1260
+		else $i = (int) $parameters;
1261 1261
 		
1262
-		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) ) 
1262
+		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i]))) 
1263 1263
 		{
1264 1264
 			if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1265 1265
 			{
@@ -1271,24 +1271,24 @@  discard block
 block discarded – undo
1271 1271
 		return 0;
1272 1272
 	}
1273 1273
 	
1274
-	function pdf_getlineunit($parameters=array(), &$object, &$action='') {
1274
+	function pdf_getlineunit($parameters = array(), &$object, &$action = '') {
1275 1275
 		global $conf;
1276 1276
 		
1277
-		if($this->isModSubtotalLine($parameters,$object) ){
1277
+		if ($this->isModSubtotalLine($parameters, $object)) {
1278 1278
 			$this->resprints = ' ';
1279 1279
 		
1280
-			if((float)DOL_VERSION<=3.6) {
1280
+			if ((float) DOL_VERSION <= 3.6) {
1281 1281
 				return '';
1282 1282
 			}
1283
-			else if((float)DOL_VERSION>=3.8) {
1283
+			else if ((float) DOL_VERSION >= 3.8) {
1284 1284
 				return 1;
1285 1285
 			}
1286 1286
 		}
1287 1287
 		
1288
-		if(is_array($parameters)) $i = & $parameters['i'];
1289
-		else $i = (int)$parameters;
1288
+		if (is_array($parameters)) $i = & $parameters['i'];
1289
+		else $i = (int) $parameters;
1290 1290
 			
1291
-		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1291
+		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])))
1292 1292
 		{
1293 1293
 			if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1294 1294
 			{
@@ -1300,31 +1300,31 @@  discard block
 block discarded – undo
1300 1300
 		return 0;
1301 1301
 	}
1302 1302
 	
1303
-	function pdf_getlineupexcltax($parameters=array(), &$object, &$action='') {
1304
-	    global $conf,$hideprices,$hookmanager;
1303
+	function pdf_getlineupexcltax($parameters = array(), &$object, &$action = '') {
1304
+	    global $conf, $hideprices, $hookmanager;
1305 1305
 
1306
-		if(is_array($parameters)) $i = & $parameters['i'];
1307
-		else $i = (int)$parameters;
1306
+		if (is_array($parameters)) $i = & $parameters['i'];
1307
+		else $i = (int) $parameters;
1308 1308
 
1309
-		if($this->isModSubtotalLine($parameters,$object) ) {
1309
+		if ($this->isModSubtotalLine($parameters, $object)) {
1310 1310
 			$this->resprints = ' ';
1311 1311
 
1312 1312
             $line = $object->lines[$i];
1313 1313
 
1314 1314
             // On récupère les montants du bloc pour les afficher dans la ligne de sous-total
1315
-            if(TSubtotal::isSubtotal($line)) {
1315
+            if (TSubtotal::isSubtotal($line)) {
1316 1316
                 $parentTitle = TSubtotal::getParentTitleOfLine($object, $i);
1317 1317
 
1318
-                if(! empty($parentTitle->array_options['options_show_total_ht'])) {
1318
+                if (!empty($parentTitle->array_options['options_show_total_ht'])) {
1319 1319
                     $TTotal = TSubtotal::getTotalBlockFromTitle($object, $parentTitle);
1320 1320
                     $this->resprints = price($TTotal['total_subprice']);
1321 1321
                 }
1322 1322
             }
1323 1323
 		
1324
-			if((float)DOL_VERSION<=3.6) {
1324
+			if ((float) DOL_VERSION <= 3.6) {
1325 1325
 				return '';
1326 1326
 			}
1327
-			else if((float)DOL_VERSION>=3.8) {
1327
+			else if ((float) DOL_VERSION >= 3.8) {
1328 1328
 				return 1;
1329 1329
 			}
1330 1330
 		}
@@ -1352,7 +1352,7 @@  discard block
 block discarded – undo
1352 1352
 		    
1353 1353
 		    // Check if a title exist for this line && if the title have subtotal
1354 1354
 		    $lineTitle = TSubtotal::getParentTitleOfLine($object, $i);
1355
-		    if(TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1355
+		    if (TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1356 1356
 		    {
1357 1357
 		        
1358 1358
 		        $this->resprints = ' ';
@@ -1366,36 +1366,36 @@  discard block
 block discarded – undo
1366 1366
 		return 0;
1367 1367
 	}
1368 1368
 	
1369
-	function pdf_getlineremisepercent($parameters=array(), &$object, &$action='') {
1370
-	    global $conf,$hideprices,$hookmanager;
1369
+	function pdf_getlineremisepercent($parameters = array(), &$object, &$action = '') {
1370
+	    global $conf, $hideprices, $hookmanager;
1371 1371
 
1372
-        if(is_array($parameters)) $i = & $parameters['i'];
1372
+        if (is_array($parameters)) $i = & $parameters['i'];
1373 1373
         else $i = (int) $parameters;
1374 1374
 
1375
-		if($this->isModSubtotalLine($parameters,$object) ) {
1375
+		if ($this->isModSubtotalLine($parameters, $object)) {
1376 1376
 			$this->resprints = ' ';
1377 1377
 
1378 1378
             $line = $object->lines[$i];
1379 1379
 
1380 1380
             // Affichage de la remise 
1381
-            if(TSubtotal::isSubtotal($line)) {
1381
+            if (TSubtotal::isSubtotal($line)) {
1382 1382
                 $parentTitle = TSubtotal::getParentTitleOfLine($object, $i);
1383 1383
 
1384
-                if(! empty($parentTitle->array_options['options_show_reduc'])) {
1384
+                if (!empty($parentTitle->array_options['options_show_reduc'])) {
1385 1385
                     $TTotal = TSubtotal::getTotalBlockFromTitle($object, $parentTitle);
1386
-                    $this->resprints = price($TTotal['total_ht'] / $TTotal['total_subprice']*100, 0, '', 1, 2, 2).'%';
1386
+                    $this->resprints = price($TTotal['total_ht'] / $TTotal['total_subprice'] * 100, 0, '', 1, 2, 2).'%';
1387 1387
                 }
1388 1388
             }
1389 1389
 		
1390
-			if((float)DOL_VERSION<=3.6) {
1390
+			if ((float) DOL_VERSION <= 3.6) {
1391 1391
 				return '';
1392 1392
 			}
1393
-			else if((float)DOL_VERSION>=3.8) {
1393
+			else if ((float) DOL_VERSION >= 3.8) {
1394 1394
 				return 1;
1395 1395
 			}
1396 1396
 		}
1397 1397
 		elseif (!empty($hideprices)
1398
-		        || (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1398
+		        || (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])))
1399 1399
 		        )
1400 1400
 		    {
1401 1401
 		        if (!empty($hideprices) || !in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
@@ -1408,24 +1408,24 @@  discard block
 block discarded – undo
1408 1408
 		return 0;
1409 1409
 	}
1410 1410
 	
1411
-	function pdf_getlineupwithtax($parameters=array(), &$object, &$action='') {
1412
-		global $conf,$hideprices;
1411
+	function pdf_getlineupwithtax($parameters = array(), &$object, &$action = '') {
1412
+		global $conf, $hideprices;
1413 1413
 		
1414
-		if($this->isModSubtotalLine($parameters,$object) ){
1414
+		if ($this->isModSubtotalLine($parameters, $object)) {
1415 1415
 			$this->resprints = ' ';
1416
-			if((float)DOL_VERSION<=3.6) {
1416
+			if ((float) DOL_VERSION <= 3.6) {
1417 1417
 				return '';
1418 1418
 			}
1419
-			else if((float)DOL_VERSION>=3.8) {
1419
+			else if ((float) DOL_VERSION >= 3.8) {
1420 1420
 				return 1;
1421 1421
 			}
1422 1422
 		}
1423 1423
 		
1424
-		if(is_array($parameters)) $i = & $parameters['i'];
1425
-		else $i = (int)$parameters;
1424
+		if (is_array($parameters)) $i = & $parameters['i'];
1425
+		else $i = (int) $parameters;
1426 1426
 			
1427 1427
 		if (!empty($hideprices)
1428
-				|| (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1428
+				|| (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])))
1429 1429
 		)
1430 1430
 		{
1431 1431
 			if (!empty($hideprices) || !in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
@@ -1438,22 +1438,22 @@  discard block
 block discarded – undo
1438 1438
 		return 0;
1439 1439
 	}
1440 1440
 	
1441
-	function pdf_getlinevatrate($parameters=array(), &$object, &$action='') {
1442
-	    global $conf,$hideprices,$hookmanager;
1441
+	function pdf_getlinevatrate($parameters = array(), &$object, &$action = '') {
1442
+	    global $conf, $hideprices, $hookmanager;
1443 1443
 	    
1444
-		if($this->isModSubtotalLine($parameters,$object) ){
1444
+		if ($this->isModSubtotalLine($parameters, $object)) {
1445 1445
 			$this->resprints = ' ';
1446 1446
 			
1447
-			if((float)DOL_VERSION<=3.6) {
1447
+			if ((float) DOL_VERSION <= 3.6) {
1448 1448
 				return '';
1449 1449
 			}
1450
-			else if((float)DOL_VERSION>=3.8) {
1450
+			else if ((float) DOL_VERSION >= 3.8) {
1451 1451
 				return 1;
1452 1452
 			}
1453 1453
 		}
1454 1454
 		
1455
-		if(is_array($parameters)) $i = & $parameters['i'];
1456
-		else $i = (int)$parameters;
1455
+		if (is_array($parameters)) $i = & $parameters['i'];
1456
+		else $i = (int) $parameters;
1457 1457
 		
1458 1458
 		if (empty($object->lines[$i])) return 0; // hideInnerLines => override $object->lines et Dolibarr ne nous permet pas de mettre à jour la variable qui conditionne la boucle sur les lignes (PR faite pour 6.0)
1459 1459
 
@@ -1480,7 +1480,7 @@  discard block
 block discarded – undo
1480 1480
 		    
1481 1481
 		    // Check if a title exist for this line && if the title have subtotal
1482 1482
 		    $lineTitle = TSubtotal::getParentTitleOfLine($object, $i);
1483
-		    if(TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1483
+		    if (TSubtotal::getParentTitleOfLine($object, $i) && TSubtotal::titleHasTotalLine($object, $lineTitle, true))
1484 1484
 		    {
1485 1485
 		        
1486 1486
 		        $this->resprints = ' ';
@@ -1494,23 +1494,23 @@  discard block
 block discarded – undo
1494 1494
 		return 0;
1495 1495
 	}
1496 1496
 		
1497
-	function pdf_getlineprogress($parameters=array(), &$object, &$action) {
1497
+	function pdf_getlineprogress($parameters = array(), &$object, &$action) {
1498 1498
 		global $conf;
1499 1499
 		
1500
-		if($this->isModSubtotalLine($parameters,$object) ){
1500
+		if ($this->isModSubtotalLine($parameters, $object)) {
1501 1501
 			$this->resprints = ' ';
1502
-			if((float)DOL_VERSION<=3.6) {
1502
+			if ((float) DOL_VERSION <= 3.6) {
1503 1503
 				return '';
1504 1504
 			}
1505
-			else if((float)DOL_VERSION>=3.8) {
1505
+			else if ((float) DOL_VERSION >= 3.8) {
1506 1506
 				return 1;
1507 1507
 			}
1508 1508
 		}
1509 1509
 		
1510
-		if(is_array($parameters)) $i = & $parameters['i'];
1511
-		else $i = (int)$parameters;
1510
+		if (is_array($parameters)) $i = & $parameters['i'];
1511
+		else $i = (int) $parameters;
1512 1512
 			
1513
-		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1513
+		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])))
1514 1514
 		{
1515 1515
 			if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1516 1516
 			{
@@ -1525,12 +1525,12 @@  discard block
 block discarded – undo
1525 1525
 	function add_numerotation(&$object) {
1526 1526
 		global $conf;
1527 1527
 		
1528
-		if(!empty($conf->global->SUBTOTAL_USE_NUMEROTATION)) {
1528
+		if (!empty($conf->global->SUBTOTAL_USE_NUMEROTATION)) {
1529 1529
 		
1530 1530
 			$TLevelTitre = array();
1531 1531
 			$prevlevel = 0;
1532 1532
 		
1533
-			foreach($object->lines as $k=>&$line) 
1533
+			foreach ($object->lines as $k=>&$line) 
1534 1534
 			{
1535 1535
 				if ($line->id > 0 && $this->isModSubtotalLine($k, $object) && $line->qty <= 10)
1536 1536
 				{
@@ -1544,12 +1544,12 @@  discard block
 block discarded – undo
1544 1544
 	}
1545 1545
 
1546 1546
 	// TODO ne gère pas encore la numération des lignes "Totaux"
1547
-	private function formatNumerotation(&$TLineTitle, $line_reference='', $level=1, $prefix_num=0)
1547
+	private function formatNumerotation(&$TLineTitle, $line_reference = '', $level = 1, $prefix_num = 0)
1548 1548
 	{
1549 1549
 		$TTitle = array();
1550 1550
 		
1551
-		$i=1;
1552
-		$j=0;
1551
+		$i = 1;
1552
+		$j = 0;
1553 1553
 		foreach ($TLineTitle as $k => &$line)
1554 1554
 		{
1555 1555
 			if (!empty($line_reference) && $line->rang <= $line_reference->rang) continue;
@@ -1559,7 +1559,7 @@  discard block
 block discarded – undo
1559 1559
 			{
1560 1560
 				$TTitle[$j]['numerotation'] = ($prefix_num == 0) ? $i : $prefix_num.'.'.$i;
1561 1561
 				//var_dump('Prefix == '.$prefix_num.' // '.$line->desc.' ==> numerotation == '.$TTitle[$j]['numerotation'].'   ###    '.$line->qty .'=='. $level);
1562
-				if (empty($line->label) && (float)DOL_VERSION < 6)
1562
+				if (empty($line->label) && (float) DOL_VERSION < 6)
1563 1563
 				{
1564 1564
 					$line->label = !empty($line->desc) ? $line->desc : $line->description;
1565 1565
 					$line->desc = $line->description = '';
@@ -1585,26 +1585,26 @@  discard block
 block discarded – undo
1585 1585
 	
1586 1586
 	function setDocTVA(&$pdf, &$object) {
1587 1587
 		
1588
-		$hidedetails = (int)GETPOST('hidedetails');
1588
+		$hidedetails = (int) GETPOST('hidedetails');
1589 1589
 		
1590
-		if(empty($hidedetails)) return false;
1590
+		if (empty($hidedetails)) return false;
1591 1591
 		
1592 1592
 		// TODO can't add VAT to document without lines... :-/
1593 1593
 		
1594 1594
 		return true;
1595 1595
 	}
1596 1596
 	
1597
-	function beforePDFCreation($parameters=array(), &$object, &$action)
1597
+	function beforePDFCreation($parameters = array(), &$object, &$action)
1598 1598
 	{
1599 1599
 		/**
1600 1600
 		 * @var $pdf    TCPDF
1601 1601
 		 */
1602
-		global $pdf,$conf, $langs;
1602
+		global $pdf, $conf, $langs;
1603 1603
 
1604 1604
 		// var_dump($object->lines);
1605 1605
 		dol_include_once('/subtotal/class/subtotal.class.php');
1606 1606
 
1607
-		foreach($parameters as $key=>$value) {
1607
+		foreach ($parameters as $key=>$value) {
1608 1608
 			${$key} = $value;
1609 1609
 		}
1610 1610
 		
@@ -1612,34 +1612,34 @@  discard block
 block discarded – undo
1612 1612
 		
1613 1613
 		$this->add_numerotation($object);	
1614 1614
 		
1615
-        foreach($object->lines as $k => &$l) {
1616
-            if(TSubtotal::isSubtotal($l)) {
1615
+        foreach ($object->lines as $k => &$l) {
1616
+            if (TSubtotal::isSubtotal($l)) {
1617 1617
                 $parentTitle = TSubtotal::getParentTitleOfLine($object, $k);
1618
-                if(! empty($parentTitle->id) && ! empty($parentTitle->array_options['options_show_total_ht'])) {
1619
-                    $l->remise_percent = 100;    // Affichage de la réduction sur la ligne de sous-total
1618
+                if (!empty($parentTitle->id) && !empty($parentTitle->array_options['options_show_total_ht'])) {
1619
+                    $l->remise_percent = 100; // Affichage de la réduction sur la ligne de sous-total
1620 1620
                 }
1621 1621
             }
1622 1622
         }
1623 1623
 
1624
-		$hideInnerLines = (int)GETPOST('hideInnerLines');
1625
-		$hidedetails = (int)GETPOST('hidedetails');
1624
+		$hideInnerLines = (int) GETPOST('hideInnerLines');
1625
+		$hidedetails = (int) GETPOST('hidedetails');
1626 1626
 
1627 1627
 		if ($hideInnerLines) { // si c une ligne de titre
1628
-	    	$fk_parent_line=0;
1629
-			$TLines =array();
1628
+	    	$fk_parent_line = 0;
1629
+			$TLines = array();
1630 1630
 		
1631
-			$original_count=count($object->lines);
1631
+			$original_count = count($object->lines);
1632 1632
 		    $TTvas = array(); // tableau de tva
1633 1633
 		    
1634
-			foreach($object->lines as $k=>&$line) 
1634
+			foreach ($object->lines as $k=>&$line) 
1635 1635
 			{
1636 1636
 			    
1637
-				if($line->product_type==9 && $line->rowid>0) 
1637
+				if ($line->product_type == 9 && $line->rowid > 0) 
1638 1638
 				{
1639 1639
 					$fk_parent_line = $line->rowid;
1640 1640
 					
1641 1641
 					// Fix tk7201 - si on cache le détail, la TVA est renseigné au niveau du sous-total, l'erreur c'est s'il y a plusieurs sous-totaux pour les même lignes, ça va faire la somme
1642
-					if(TSubtotal::isSubtotal($line)) 
1642
+					if (TSubtotal::isSubtotal($line)) 
1643 1643
 					{
1644 1644
 						/*$total = $this->getTotalLineFromObject($object, $line, '');
1645 1645
 						
@@ -1668,22 +1668,22 @@  discard block
 block discarded – undo
1668 1668
 			
1669 1669
 				if ($hideInnerLines)
1670 1670
 				{
1671
-				    if(!empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES))
1671
+				    if (!empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES))
1672 1672
 				    {
1673
-				        if($line->tva_tx != '0.000' && $line->product_type!=9){
1673
+				        if ($line->tva_tx != '0.000' && $line->product_type != 9) {
1674 1674
 				            
1675 1675
     				        // on remplit le tableau de tva pour substituer les lignes cachées
1676 1676
     				        $TTvas[$line->tva_tx]['total_tva'] += $line->total_tva;
1677 1677
     				        $TTvas[$line->tva_tx]['total_ht'] += $line->total_ht;
1678 1678
     				        $TTvas[$line->tva_tx]['total_ttc'] += $line->total_ttc; 
1679 1679
     				    }
1680
-    					if($line->product_type==9 && $line->rowid>0)
1680
+    					if ($line->product_type == 9 && $line->rowid > 0)
1681 1681
     					{
1682 1682
     					    //Cas où je doit cacher les produits et afficher uniquement les sous-totaux avec les titres
1683 1683
     					    // génère des lignes d'affichage des montants HT soumis à tva
1684 1684
     					    $nbtva = count($TTvas);
1685
-    					    if(!empty($nbtva)){
1686
-    					        foreach ($TTvas as $tx =>$val){
1685
+    					    if (!empty($nbtva)) {
1686
+    					        foreach ($TTvas as $tx =>$val) {
1687 1687
     					            $l = clone $line;
1688 1688
     					            $l->product_type = 1;
1689 1689
     					            $l->special_code = '';
@@ -1704,7 +1704,7 @@  discard block
 block discarded – undo
1704 1704
     					}
1705 1705
 				    } else {
1706 1706
 				        
1707
-				        if($line->product_type==9 && $line->rowid>0)
1707
+				        if ($line->product_type == 9 && $line->rowid > 0)
1708 1708
 				        {
1709 1709
 				            // ajoute la ligne de sous-total
1710 1710
 				            $TLines[] = $line; 
@@ -1732,9 +1732,9 @@  discard block
 block discarded – undo
1732 1732
 			
1733 1733
 			// cas incongru où il y aurait des produits en dessous du dernier sous-total
1734 1734
 			$nbtva = count($TTvas);
1735
-			if(!empty($nbtva) && $hideInnerLines && !empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES))
1735
+			if (!empty($nbtva) && $hideInnerLines && !empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES))
1736 1736
 			{
1737
-			    foreach ($TTvas as $tx =>$val){
1737
+			    foreach ($TTvas as $tx =>$val) {
1738 1738
 			        $l = clone $line;
1739 1739
 			        $l->product_type = 1;
1740 1740
 			        $l->special_code = '';
@@ -1751,11 +1751,11 @@  discard block
 block discarded – undo
1751 1751
 			}
1752 1752
 			
1753 1753
 			global $nblignes;
1754
-			$nblignes=count($TLines);
1754
+			$nblignes = count($TLines);
1755 1755
 
1756 1756
 			$object->lines = $TLines;
1757 1757
 			
1758
-			if($i>count($object->lines)) {
1758
+			if ($i > count($object->lines)) {
1759 1759
 				$this->resprints = '';
1760 1760
 				return 0;
1761 1761
 			}
@@ -1764,59 +1764,59 @@  discard block
 block discarded – undo
1764 1764
 		return 0;
1765 1765
 	}
1766 1766
 
1767
-	function pdf_writelinedesc($parameters=array(), &$object, &$action)
1767
+	function pdf_writelinedesc($parameters = array(), &$object, &$action)
1768 1768
 	{
1769 1769
 		/**
1770 1770
 		 * @var $pdf    TCPDF
1771 1771
 		 */
1772
-		global $pdf,$conf;
1772
+		global $pdf, $conf;
1773 1773
 
1774
-		foreach($parameters as $key=>$value) {
1774
+		foreach ($parameters as $key=>$value) {
1775 1775
 			${$key} = $value;
1776 1776
 		}
1777 1777
 		
1778
-		$hideInnerLines = (int)GETPOST('hideInnerLines');
1779
-		$hidedetails = (int)GETPOST('hidedetails');
1778
+		$hideInnerLines = (int) GETPOST('hideInnerLines');
1779
+		$hidedetails = (int) GETPOST('hidedetails');
1780 1780
 		
1781
-		if($this->isModSubtotalLine($parameters,$object) ){			
1781
+		if ($this->isModSubtotalLine($parameters, $object)) {			
1782 1782
 		
1783 1783
 				global $hideprices;
1784 1784
 				
1785
-				if(!empty($hideprices)) {
1786
-					foreach($object->lines as &$line) {
1787
-						if($line->fk_product_type!=9) $line->fk_parent_line = -1;	
1785
+				if (!empty($hideprices)) {
1786
+					foreach ($object->lines as &$line) {
1787
+						if ($line->fk_product_type != 9) $line->fk_parent_line = -1;	
1788 1788
 					}
1789 1789
 				}
1790 1790
 			
1791 1791
 				$line = &$object->lines[$i];
1792 1792
 				
1793
-				if($line->info_bits>0) { // PAGE BREAK
1793
+				if ($line->info_bits > 0) { // PAGE BREAK
1794 1794
 					$pdf->addPage();
1795 1795
 					$posy = $pdf->GetY();
1796 1796
 				}
1797 1797
 				
1798 1798
 				$label = $line->label;
1799
-				$description= !empty($line->desc) ? $outputlangs->convToOutputCharset($line->desc) : $outputlangs->convToOutputCharset($line->description);
1799
+				$description = !empty($line->desc) ? $outputlangs->convToOutputCharset($line->desc) : $outputlangs->convToOutputCharset($line->description);
1800 1800
 				
1801
-				if(empty($label)) {
1801
+				if (empty($label)) {
1802 1802
 					$label = $description;
1803
-					$description='';
1803
+					$description = '';
1804 1804
 				}
1805 1805
 				
1806
-				if($line->qty>90) {
1806
+				if ($line->qty > 90) {
1807 1807
 					
1808 1808
 					if ($conf->global->SUBTOTAL_USE_NEW_FORMAT)	$label .= ' '.$this->getTitle($object, $line);
1809 1809
 					
1810 1810
 					$pageBefore = $pdf->getPage();
1811
-					$this->pdf_add_total($pdf,$object, $line, $label, $description,$posx, $posy, $w, $h);
1811
+					$this->pdf_add_total($pdf, $object, $line, $label, $description, $posx, $posy, $w, $h);
1812 1812
 					$pageAfter = $pdf->getPage();	
1813 1813
 
1814
-					if($pageAfter>$pageBefore) {
1814
+					if ($pageAfter > $pageBefore) {
1815 1815
 						//print "ST $pageAfter>$pageBefore<br>";
1816 1816
 						$pdf->rollbackTransaction(true);	
1817
-						$pdf->addPage('','', true);
1817
+						$pdf->addPage('', '', true);
1818 1818
 						$posy = $pdf->GetY();
1819
-						$this->pdf_add_total($pdf,$object, $line, $label, $description,$posx, $posy, $w, $h);
1819
+						$this->pdf_add_total($pdf, $object, $line, $label, $description, $posx, $posy, $w, $h);
1820 1820
 						$posy = $pdf->GetY();
1821 1821
 						//print 'add ST'.$pdf->getPage().'<br />';
1822 1822
 					}
@@ -1827,7 +1827,7 @@  discard block
 block discarded – undo
1827 1827
 				else if ($line->qty < 10) {
1828 1828
 					$pageBefore = $pdf->getPage();
1829 1829
 
1830
-					$this->pdf_add_title($pdf,$object, $line, $label, $description,$posx, $posy, $w, $h); 
1830
+					$this->pdf_add_title($pdf, $object, $line, $label, $description, $posx, $posy, $w, $h); 
1831 1831
 					$pageAfter = $pdf->getPage();	
1832 1832
 
1833 1833
 					
@@ -1902,9 +1902,9 @@  discard block
 block discarded – undo
1902 1902
 	 * @param $hookmanager  HookManager
1903 1903
 	 * @return int
1904 1904
 	 */
1905
-	function printObjectLine ($parameters, &$object, &$action, $hookmanager){
1905
+	function printObjectLine($parameters, &$object, &$action, $hookmanager) {
1906 1906
 		
1907
-		global $conf,$langs,$user,$db,$bc;
1907
+		global $conf, $langs, $user, $db, $bc;
1908 1908
 		
1909 1909
 		$num = &$parameters['num'];
1910 1910
 		$line = &$parameters['line'];
@@ -1912,32 +1912,32 @@  discard block
 block discarded – undo
1912 1912
 		
1913 1913
 		$var = &$parameters['var'];
1914 1914
 
1915
-		$contexts = explode(':',$parameters['context']);
1915
+		$contexts = explode(':', $parameters['context']);
1916 1916
 
1917 1917
 		$createRight = $user->rights->{$object->element}->creer;
1918
-		if($object->element == 'facturerec' )
1918
+		if ($object->element == 'facturerec')
1919 1919
 		{
1920 1920
 			$object->statut = 0; // hack for facture rec
1921 1921
 			$createRight = $user->rights->facture->creer;
1922 1922
 		}
1923
-		elseif($object->element == 'order_supplier' )
1923
+		elseif ($object->element == 'order_supplier')
1924 1924
 		{
1925 1925
 		    $createRight = $user->rights->fournisseur->commande->creer;
1926 1926
 		}
1927
-		elseif($object->element == 'invoice_supplier' )
1927
+		elseif ($object->element == 'invoice_supplier')
1928 1928
 		{
1929 1929
 		    $createRight = $user->rights->fournisseur->facture->creer;
1930 1930
 		}
1931 1931
 		
1932
-		if($line->special_code!=$this->module_number || $line->product_type!=9) {
1932
+		if ($line->special_code != $this->module_number || $line->product_type != 9) {
1933 1933
 			null;
1934 1934
 		}	
1935
-		else if (in_array('invoicecard',$contexts) || in_array('invoicesuppliercard',$contexts) || in_array('propalcard',$contexts) || in_array('supplier_proposalcard',$contexts) || in_array('ordercard',$contexts) || in_array('ordersuppliercard',$contexts) || in_array('invoicereccard',$contexts)) 
1935
+		else if (in_array('invoicecard', $contexts) || in_array('invoicesuppliercard', $contexts) || in_array('propalcard', $contexts) || in_array('supplier_proposalcard', $contexts) || in_array('ordercard', $contexts) || in_array('ordersuppliercard', $contexts) || in_array('invoicereccard', $contexts)) 
1936 1936
         {
1937
-			if($object->element=='facture')$idvar = 'facid';
1938
-			else $idvar='id';
1937
+			if ($object->element == 'facture')$idvar = 'facid';
1938
+			else $idvar = 'id';
1939 1939
 			
1940
-			if((float)DOL_VERSION <= 3.4)
1940
+			if ((float) DOL_VERSION <= 3.4)
1941 1941
 			{
1942 1942
 				?>
1943 1943
 				<script type="text/javascript">
@@ -1961,22 +1961,22 @@  discard block
 block discarded – undo
1961 1961
 				<?php
1962 1962
 			}
1963 1963
 			
1964
-			if(empty($line->description)) $line->description = $line->desc;
1964
+			if (empty($line->description)) $line->description = $line->desc;
1965 1965
 			
1966 1966
 			$colspan = 5;
1967
-			if($object->element == 'facturerec' ) $colspan = 3;
1968
-			if($object->element == 'order_supplier') $colspan = 3;
1969
-			if($object->element == 'invoice_supplier') $colspan = 4;
1970
-			if($object->element == 'supplier_proposal') $colspan = 4;
1971
-			if(!empty($conf->multicurrency->enabled) && ((float) DOL_VERSION < 8.0 || $object->multicurrency_code != $conf->currency)) {
1967
+			if ($object->element == 'facturerec') $colspan = 3;
1968
+			if ($object->element == 'order_supplier') $colspan = 3;
1969
+			if ($object->element == 'invoice_supplier') $colspan = 4;
1970
+			if ($object->element == 'supplier_proposal') $colspan = 4;
1971
+			if (!empty($conf->multicurrency->enabled) && ((float) DOL_VERSION < 8.0 || $object->multicurrency_code != $conf->currency)) {
1972 1972
 				$colspan++; // Colonne PU Devise
1973 1973
 			}
1974
-			if($object->element == 'commande' && $object->statut < 3 && !empty($conf->shippableorder->enabled)) $colspan++;
1975
-			if(!empty($conf->margin->enabled)) $colspan++;
1976
-			if(!empty($conf->global->DISPLAY_MARGIN_RATES)) $colspan++;
1977
-			if(!empty($conf->global->DISPLAY_MARK_RATES)) $colspan++;
1978
-			if($object->element == 'facture' && !empty($conf->global->INVOICE_USE_SITUATION) && $object->type == Facture::TYPE_SITUATION) $colspan++;
1979
-			if(!empty($conf->global->PRODUCT_USE_UNITS)) $colspan++;
1974
+			if ($object->element == 'commande' && $object->statut < 3 && !empty($conf->shippableorder->enabled)) $colspan++;
1975
+			if (!empty($conf->margin->enabled)) $colspan++;
1976
+			if (!empty($conf->global->DISPLAY_MARGIN_RATES)) $colspan++;
1977
+			if (!empty($conf->global->DISPLAY_MARK_RATES)) $colspan++;
1978
+			if ($object->element == 'facture' && !empty($conf->global->INVOICE_USE_SITUATION) && $object->type == Facture::TYPE_SITUATION) $colspan++;
1979
+			if (!empty($conf->global->PRODUCT_USE_UNITS)) $colspan++;
1980 1980
 					
1981 1981
 			/* Titre */
1982 1982
 			//var_dump($line);
@@ -1986,39 +1986,39 @@  discard block
 block discarded – undo
1986 1986
             
1987 1987
 			
1988 1988
 			?>
1989
-			<tr <?php echo $bc[$var]; $var=!$var; echo $data; ?> rel="subtotal" id="row-<?php echo $line->id ?>" style="<?php
1989
+			<tr <?php echo $bc[$var]; $var = !$var; echo $data; ?> rel="subtotal" id="row-<?php echo $line->id ?>" style="<?php
1990 1990
 					if (!empty($conf->global->SUBTOTAL_USE_NEW_FORMAT))
1991 1991
 					{
1992
-						if($line->qty==99) print 'background:#adadcf';
1993
-						else if($line->qty==98) print 'background:#ddddff;';
1994
-						else if($line->qty<=97 && $line->qty>=91) print 'background:#eeeeff;';
1995
-						else if($line->qty==1) print 'background:#adadcf;';
1996
-						else if($line->qty==2) print 'background:#ddddff;';
1997
-						else if($line->qty==50) print '';
1992
+						if ($line->qty == 99) print 'background:#adadcf';
1993
+						else if ($line->qty == 98) print 'background:#ddddff;';
1994
+						else if ($line->qty <= 97 && $line->qty >= 91) print 'background:#eeeeff;';
1995
+						else if ($line->qty == 1) print 'background:#adadcf;';
1996
+						else if ($line->qty == 2) print 'background:#ddddff;';
1997
+						else if ($line->qty == 50) print '';
1998 1998
 						else print 'background:#eeeeff;';
1999 1999
 
2000 2000
 						//A compléter si on veux plus de nuances de couleurs avec les niveau 4,5,6,7,8 et 9
2001 2001
 					}
2002 2002
 					else 
2003 2003
 					{
2004
-						if($line->qty==99) print 'background:#ddffdd';
2005
-						else if($line->qty==98) print 'background:#ddddff;';
2006
-						else if($line->qty==2) print 'background:#eeeeff; ';
2007
-						else if($line->qty==50) print '';
2008
-						else print 'background:#eeffee;' ;
2004
+						if ($line->qty == 99) print 'background:#ddffdd';
2005
+						else if ($line->qty == 98) print 'background:#ddddff;';
2006
+						else if ($line->qty == 2) print 'background:#eeeeff; ';
2007
+						else if ($line->qty == 50) print '';
2008
+						else print 'background:#eeffee;';
2009 2009
 					}
2010 2010
 
2011 2011
 			?>;">
2012 2012
 
2013
-				<?php if(! empty($conf->global->MAIN_VIEW_LINE_NUMBER)) { ?>
2013
+				<?php if (!empty($conf->global->MAIN_VIEW_LINE_NUMBER)) { ?>
2014 2014
 				<td class="linecolnum"><?php echo $i + 1; ?></td>
2015 2015
 				<?php } ?>
2016 2016
 
2017
-				<td colspan="<?php echo $colspan; ?>" style="<?php TSubtotal::isFreeText($line) ? '' : 'font-weight:bold;'; ?>  <?php echo ($line->qty>90)?'text-align:right':'' ?> "><?php
2018
-					if($action=='editline' && GETPOST('lineid') == $line->id && TSubtotal::isModSubtotalLine($line) ) {
2017
+				<td colspan="<?php echo $colspan; ?>" style="<?php TSubtotal::isFreeText($line) ? '' : 'font-weight:bold;'; ?>  <?php echo ($line->qty > 90) ? 'text-align:right' : '' ?> "><?php
2018
+					if ($action == 'editline' && GETPOST('lineid') == $line->id && TSubtotal::isModSubtotalLine($line)) {
2019 2019
 
2020
-						$params=array('line'=>$line);
2021
-						$reshook=$hookmanager->executeHooks('formEditProductOptions',$params,$object,$action);
2020
+						$params = array('line'=>$line);
2021
+						$reshook = $hookmanager->executeHooks('formEditProductOptions', $params, $object, $action);
2022 2022
 						
2023 2023
 						echo '<div id="line_'.$line->id.'"></div>'; // Imitation Dolibarr
2024 2024
 						echo '<input type="hidden" value="'.$line->id.'" name="lineid">';
@@ -2026,7 +2026,7 @@  discard block
 block discarded – undo
2026 2026
 						echo '<input id="product_id" type="hidden" value="'.$line->fk_product.'" name="type">';
2027 2027
 						echo '<input id="special_code" type="hidden" value="'.$line->special_code.'" name="type">';
2028 2028
 
2029
-						$isFreeText=false;
2029
+						$isFreeText = false;
2030 2030
 						if (TSubtotal::isTitle($line))
2031 2031
 						{
2032 2032
 							$qty_displayed = $line->qty;
@@ -2048,13 +2048,13 @@  discard block
 block discarded – undo
2048 2048
 						    $line->description = '';
2049 2049
 						}
2050 2050
 						$newlabel = $line->label;
2051
-						if($line->label=='' && !$isFreeText) {
2052
-							if(TSubtotal::isSubtotal($line)) {
2051
+						if ($line->label == '' && !$isFreeText) {
2052
+							if (TSubtotal::isSubtotal($line)) {
2053 2053
 								$newlabel = $line->description.' '.$this->getTitle($object, $line);
2054
-								$line->description='';
2055
-							} elseif( (float)DOL_VERSION < 6 ) {
2056
-								$newlabel= $line->description;
2057
-								$line->description='';
2054
+								$line->description = '';
2055
+							} elseif ((float) DOL_VERSION < 6) {
2056
+								$newlabel = $line->description;
2057
+								$line->description = '';
2058 2058
 							}
2059 2059
 						}
2060 2060
 
@@ -2063,10 +2063,10 @@  discard block
 block discarded – undo
2063 2063
 						
2064 2064
 						if (!$isFreeText) echo '<input type="text" name="line-title" id-line="'.$line->id.'" value="'.$newlabel.'" size="80" '.$readonlyForSituation.'/>&nbsp;';
2065 2065
 						
2066
-						if (!empty($conf->global->SUBTOTAL_USE_NEW_FORMAT) && (TSubtotal::isTitle($line) || TSubtotal::isSubtotal($line)) )
2066
+						if (!empty($conf->global->SUBTOTAL_USE_NEW_FORMAT) && (TSubtotal::isTitle($line) || TSubtotal::isSubtotal($line)))
2067 2067
 						{
2068 2068
 							$select = '<select name="subtotal_level">';
2069
-							for ($j=1; $j<10; $j++)
2069
+							for ($j = 1; $j < 10; $j++)
2070 2070
 							{
2071 2071
 								if (!empty($readonlyForSituation)) {
2072 2072
 									if ($qty_displayed == $j) $select .= '<option selected="selected" value="'.$j.'">'.$langs->trans('Level').' '.$j.'</option>';
@@ -2080,7 +2080,7 @@  discard block
 block discarded – undo
2080 2080
 
2081 2081
 						echo '<div class="subtotal_underline" style="margin-left:24px; line-height: 25px;">';
2082 2082
                         echo '<div>';
2083
-                        echo '<input style="vertical-align:sub;"  type="checkbox" name="line-pagebreak" id="subtotal-pagebreak" value="8" '.(($line->info_bits > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2083
+                        echo '<input style="vertical-align:sub;"  type="checkbox" name="line-pagebreak" id="subtotal-pagebreak" value="8" '.(($line->info_bits > 0) ? 'checked="checked"' : '').' />&nbsp;';
2084 2084
                         echo '<label for="subtotal-pagebreak">'.$langs->trans('AddBreakPageBefore').'</label>';
2085 2085
                         echo '</div>';
2086 2086
 
@@ -2101,21 +2101,21 @@  discard block
 block discarded – undo
2101 2101
                                 echo '</div>';
2102 2102
                             }
2103 2103
                             echo '<div>';
2104
-                            echo '<input style="vertical-align:sub;"  type="checkbox" name="line-showTotalHT" id="subtotal-showTotalHT" value="9" '.(($line->array_options['options_show_total_ht'] > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2104
+                            echo '<input style="vertical-align:sub;"  type="checkbox" name="line-showTotalHT" id="subtotal-showTotalHT" value="9" '.(($line->array_options['options_show_total_ht'] > 0) ? 'checked="checked"' : '').' />&nbsp;';
2105 2105
                             echo '<label for="subtotal-showTotalHT">'.$langs->trans('ShowTotalHTOnSubtotalBlock').'</label>';
2106 2106
                             echo '</div>';
2107 2107
 
2108 2108
                             echo '<div>';
2109
-                            echo '<input style="vertical-align:sub;"  type="checkbox" name="line-showReduc" id="subtotal-showReduc" value="1" '.(($line->array_options['options_show_reduc'] > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2109
+                            echo '<input style="vertical-align:sub;"  type="checkbox" name="line-showReduc" id="subtotal-showReduc" value="1" '.(($line->array_options['options_show_reduc'] > 0) ? 'checked="checked"' : '').' />&nbsp;';
2110 2110
                             echo '<label for="subtotal-showReduc">'.$langs->trans('ShowReducOnSubtotalBlock').'</label>';
2111 2111
                             echo '</div>';
2112 2112
                         }
2113 2113
                         else if ($isFreeText) echo TSubtotal::getFreeTextHtml($line, (bool) $readonlyForSituation);
2114 2114
 						echo '</div>';
2115 2115
 
2116
-						if($line->qty<10) {
2116
+						if ($line->qty < 10) {
2117 2117
 							// WYSIWYG editor
2118
-							require_once DOL_DOCUMENT_ROOT . '/core/class/doleditor.class.php';
2118
+							require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
2119 2119
 							$nbrows = ROWS_2;
2120 2120
 							$cked_enabled = (!empty($conf->global->FCKEDITOR_ENABLE_DETAILS) ? $conf->global->FCKEDITOR_ENABLE_DETAILS : 0);
2121 2121
 							if (!empty($conf->global->MAIN_INPUT_DESC_HEIGHT)) {
@@ -2135,25 +2135,25 @@  discard block
 block discarded – undo
2135 2135
 
2136 2136
 						 if ($conf->global->SUBTOTAL_USE_NEW_FORMAT)
2137 2137
 						 {
2138
-							if(TSubtotal::isTitle($line) || TSubtotal::isSubtotal($line)) 
2138
+							if (TSubtotal::isTitle($line) || TSubtotal::isSubtotal($line)) 
2139 2139
 							{
2140
-								echo str_repeat('&nbsp;&nbsp;&nbsp;', $line->qty-1);
2140
+								echo str_repeat('&nbsp;&nbsp;&nbsp;', $line->qty - 1);
2141 2141
 								
2142 2142
 								if (TSubtotal::isTitle($line)) print img_picto('', 'subtotal@subtotal').'<span style="font-size:9px;margin-left:-3px;">'.$line->qty.'</span>&nbsp;&nbsp;';
2143
-								else print img_picto('', 'subtotal2@subtotal').'<span style="font-size:9px;margin-left:-1px;">'.(100-$line->qty).'</span>&nbsp;&nbsp;';
2143
+								else print img_picto('', 'subtotal2@subtotal').'<span style="font-size:9px;margin-left:-1px;">'.(100 - $line->qty).'</span>&nbsp;&nbsp;';
2144 2144
 							}
2145 2145
 						 }
2146 2146
 						 else 
2147 2147
 						 {
2148
-							if($line->qty<=1) print img_picto('', 'subtotal@subtotal');
2149
-							else if($line->qty==2) print img_picto('', 'subsubtotal@subtotal').'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'; 
2148
+							if ($line->qty <= 1) print img_picto('', 'subtotal@subtotal');
2149
+							else if ($line->qty == 2) print img_picto('', 'subsubtotal@subtotal').'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'; 
2150 2150
 						 }
2151 2151
 						 
2152 2152
 						 
2153 2153
 						 // Get display styles and apply them
2154 2154
 						 $titleStyleItalic = strpos($conf->global->SUBTOTAL_TITLE_STYLE, 'I') === false ? '' : ' font-style: italic;';
2155
-						 $titleStyleBold =  strpos($conf->global->SUBTOTAL_TITLE_STYLE, 'B') === false ? '' : ' font-weight:bold;';
2156
-						 $titleStyleUnderline =  strpos($conf->global->SUBTOTAL_TITLE_STYLE, 'U') === false ? '' : ' text-decoration: underline;';
2155
+						 $titleStyleBold = strpos($conf->global->SUBTOTAL_TITLE_STYLE, 'B') === false ? '' : ' font-weight:bold;';
2156
+						 $titleStyleUnderline = strpos($conf->global->SUBTOTAL_TITLE_STYLE, 'U') === false ? '' : ' text-decoration: underline;';
2157 2157
 						 
2158 2158
 						 if (empty($line->label)) {
2159 2159
 							if ($line->qty >= 91 && $line->qty <= 99 && $conf->global->SUBTOTAL_USE_NEW_FORMAT) print  $line->description.' '.$this->getTitle($object, $line);
@@ -2161,16 +2161,16 @@  discard block
 block discarded – undo
2161 2161
 						 } 
2162 2162
 						 else {
2163 2163
 
2164
-							if (! empty($conf->global->PRODUIT_DESC_IN_FORM) && !empty($line->description)) {
2164
+							if (!empty($conf->global->PRODUIT_DESC_IN_FORM) && !empty($line->description)) {
2165 2165
 								print '<span class="subtotal_label" style="'.$titleStyleItalic.$titleStyleBold.$titleStyleUnderline.'" >'.$line->label.'</span><br><div class="subtotal_desc">'.dol_htmlentitiesbr($line->description).'</div>';
2166 2166
 							}
2167
-							else{
2167
+							else {
2168 2168
 								print '<span class="subtotal_label classfortooltip '.$titleStyleItalic.$titleStyleBold.$titleStyleUnderline.'" title="'.$line->description.'">'.$line->label.'</span>';    
2169 2169
 							}
2170 2170
 
2171 2171
 						 } 
2172
-						if($line->qty>90) print ' : ';
2173
-						if($line->info_bits > 0) echo img_picto($langs->trans('Pagebreak'), 'pagebreak@subtotal');
2172
+						if ($line->qty > 90) print ' : ';
2173
+						if ($line->info_bits > 0) echo img_picto($langs->trans('Pagebreak'), 'pagebreak@subtotal');
2174 2174
 
2175 2175
 						 
2176 2176
 
@@ -2179,7 +2179,7 @@  discard block
 block discarded – undo
2179 2179
 			?></td>
2180 2180
 					 
2181 2181
 			<?php
2182
-				if($line->qty>90) {
2182
+				if ($line->qty > 90) {
2183 2183
 					/* Total */
2184 2184
 					$total_line = $this->getTotalLineFromObject($object, $line, '');
2185 2185
 					echo '<td class="linecolht nowrap" align="right" style="font-weight:bold;" rel="subtotal_total">'.price($total_line).'</td>';
@@ -2198,7 +2198,7 @@  discard block
 block discarded – undo
2198 2198
 				<?php
2199 2199
 				if ($action != 'selectlines') {
2200 2200
 				
2201
-					if($action=='editline' && GETPOST('lineid') == $line->id && TSubtotal::isModSubtotalLine($line) ) {
2201
+					if ($action == 'editline' && GETPOST('lineid') == $line->id && TSubtotal::isModSubtotalLine($line)) {
2202 2202
 						?>
2203 2203
 						<input id="savelinebutton" class="button" type="submit" name="save" value="<?php echo $langs->trans('Save') ?>" />
2204 2204
 						<br />
@@ -2214,13 +2214,13 @@  discard block
 block discarded – undo
2214 2214
 						<?php
2215 2215
 						
2216 2216
 					}
2217
-					else{
2218
-						if ($object->statut == 0  && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_DUPLICATE_BLOCK) && $object->element !== 'invoice_supplier')
2217
+					else {
2218
+						if ($object->statut == 0 && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_DUPLICATE_BLOCK) && $object->element !== 'invoice_supplier')
2219 2219
 						{
2220
-							if(TSubtotal::isTitle($line) && ($object->situation_counter == 1 || !$object->situation_cycle_ref) ) echo '<a href="'.$_SERVER['PHP_SELF'].'?'.$idvar.'='.$object->id.'&action=duplicate&lineid='.$line->id.'">'. img_picto($langs->trans('Duplicate'), 'duplicate@subtotal').'</a>';
2220
+							if (TSubtotal::isTitle($line) && ($object->situation_counter == 1 || !$object->situation_cycle_ref)) echo '<a href="'.$_SERVER['PHP_SELF'].'?'.$idvar.'='.$object->id.'&action=duplicate&lineid='.$line->id.'">'.img_picto($langs->trans('Duplicate'), 'duplicate@subtotal').'</a>';
2221 2221
 						}
2222 2222
 
2223
-						if ($object->statut == 0  && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_EDIT_BLOCK)) 
2223
+						if ($object->statut == 0 && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_EDIT_BLOCK)) 
2224 2224
 						{
2225 2225
 							echo '<a href="'.$_SERVER['PHP_SELF'].'?'.$idvar.'='.$object->id.'&action=editline&lineid='.$line->id.'">'.img_edit().'</a>';
2226 2226
 						}								
@@ -2235,7 +2235,7 @@  discard block
 block discarded – undo
2235 2235
 				<?php
2236 2236
 
2237 2237
 				if ($action != 'editline' && $action != 'selectlines') {
2238
-						if ($object->statut == 0  && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_REMOVE_BLOCK))
2238
+						if ($object->statut == 0 && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_REMOVE_BLOCK))
2239 2239
 						{
2240 2240
 
2241 2241
 							if ($object->situation_counter == 1 || !$object->situation_cycle_ref)
@@ -2243,12 +2243,12 @@  discard block
 block discarded – undo
2243 2243
 								echo '<a href="'.$_SERVER['PHP_SELF'].'?'.$idvar.'='.$object->id.'&action=ask_deleteline&lineid='.$line->id.'">'.img_delete().'</a>';
2244 2244
 							}
2245 2245
 
2246
-							if(TSubtotal::isTitle($line) && ($object->situation_counter == 1 || !$object->situation_cycle_ref) )
2246
+							if (TSubtotal::isTitle($line) && ($object->situation_counter == 1 || !$object->situation_cycle_ref))
2247 2247
 							{
2248 2248
 								if ((float) DOL_VERSION >= 8.0) {
2249 2249
 									$img_delete = img_delete($langs->trans('deleteWithAllLines'), ' class="pictodelete pictodeleteallline"');
2250 2250
 								} elseif ((float) DOL_VERSION >= 3.8) {
2251
-									$img_delete = img_picto($langs->trans('deleteWithAllLines'), 'delete_all.3.8@subtotal',' class="pictodelete" ');
2251
+									$img_delete = img_picto($langs->trans('deleteWithAllLines'), 'delete_all.3.8@subtotal', ' class="pictodelete" ');
2252 2252
 								} else {
2253 2253
 									$img_delete = img_picto($langs->trans('deleteWithAllLines'), 'delete_all@subtotal');
2254 2254
 								}
@@ -2258,7 +2258,7 @@  discard block
 block discarded – undo
2258 2258
 								/* Depuis la 8.0, les icônes "standard" utilisent FontAwesome et sont préconfigurées selon la clé de l'image
2259 2259
 								 * Impossible d'en customiser par exemple la couleur, même en utilisant img_picto() directement
2260 2260
 								 */
2261
-								if((float) DOL_VERSION >= 8.0) {
2261
+								if ((float) DOL_VERSION >= 8.0) {
2262 2262
 								?>
2263 2263
 								<script>
2264 2264
 									$(document).ready(function () {
@@ -2274,7 +2274,7 @@  discard block
 block discarded – undo
2274 2274
 			</td>
2275 2275
 			
2276 2276
 			<?php 
2277
-			if ($object->statut == 0  && $createRight && !empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && TSubtotal::isTitle($line) && $action != 'editline')
2277
+			if ($object->statut == 0 && $createRight && !empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && TSubtotal::isTitle($line) && $action != 'editline')
2278 2278
 			{
2279 2279
 				echo '<td class="subtotal_nc">';
2280 2280
 				echo '<input id="subtotal_nc-'.$line->id.'" class="subtotal_nc_chkbx" data-lineid="'.$line->id.'" type="checkbox" name="subtotal_nc" value="1" '.(!empty($line->array_options['options_subtotal_nc']) ? 'checked="checked"' : '').' />';
@@ -2285,11 +2285,11 @@  discard block
 block discarded – undo
2285 2285
 			<td align="center" class="linecolmove tdlineupdown">
2286 2286
 			</td>
2287 2287
 			<?php } else { ?>
2288
-			<td align="center"<?php echo ((empty($conf->browser->phone) && ($object->statut == 0  && $createRight ))?' class="tdlineupdown"':''); ?>></td>
2288
+			<td align="center"<?php echo ((empty($conf->browser->phone) && ($object->statut == 0 && $createRight)) ? ' class="tdlineupdown"' : ''); ?>></td>
2289 2289
 			<?php } ?>
2290 2290
 
2291
-			<?php  if($action == 'selectlines'){ // dolibarr 8 ?>
2292
-			<td class="linecolcheck" align="center"><input type="checkbox" class="linecheckbox" name="line_checkbox[<?php echo $i+1; ?>]" value="<?php echo $line->id; ?>" ></td>
2291
+			<?php  if ($action == 'selectlines') { // dolibarr 8 ?>
2292
+			<td class="linecolcheck" align="center"><input type="checkbox" class="linecheckbox" name="line_checkbox[<?php echo $i + 1; ?>]" value="<?php echo $line->id; ?>" ></td>
2293 2293
 			<?php } ?>
2294 2294
 
2295 2295
 			</tr>
@@ -2297,29 +2297,29 @@  discard block
 block discarded – undo
2297 2297
 			
2298 2298
 			
2299 2299
 			// Affichage des extrafields à la Dolibarr (car sinon non affiché sur les titres)
2300
-			if(TSubtotal::isTitle($line) && !empty($conf->global->SUBTOTAL_ALLOW_EXTRAFIELDS_ON_TITLE)) {
2300
+			if (TSubtotal::isTitle($line) && !empty($conf->global->SUBTOTAL_ALLOW_EXTRAFIELDS_ON_TITLE)) {
2301 2301
 				
2302
-				require_once DOL_DOCUMENT_ROOT . '/core/class/extrafields.class.php';
2302
+				require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
2303 2303
 				
2304 2304
 				// Extrafields
2305 2305
 				$extrafieldsline = new ExtraFields($db);
2306 2306
 				$extralabelsline = $extrafieldsline->fetch_name_optionals_label($object->table_element_line);
2307 2307
 				
2308
-				$colspan+=3; $mode = 'view';
2309
-				if($action === 'editline' && $line->rowid == GETPOST('lineid')) $mode = 'edit';
2308
+				$colspan += 3; $mode = 'view';
2309
+				if ($action === 'editline' && $line->rowid == GETPOST('lineid')) $mode = 'edit';
2310 2310
 				
2311 2311
 				$ex_element = $line->element;
2312 2312
 				$line->element = 'tr_extrafield_title '.$line->element; // Pour pouvoir manipuler ces tr
2313
-				print $line->showOptionals($extrafieldsline, $mode, array('style'=>' style="background:#eeffee;" ','colspan'=>$colspan));
2313
+				print $line->showOptionals($extrafieldsline, $mode, array('style'=>' style="background:#eeffee;" ', 'colspan'=>$colspan));
2314 2314
 				$isExtraSelected = false;
2315
-				foreach($line->array_options as $option) {
2316
-					if(!empty($option) && $option != "-1") {
2315
+				foreach ($line->array_options as $option) {
2316
+					if (!empty($option) && $option != "-1") {
2317 2317
 						$isExtraSelected = true;
2318 2318
 						break;
2319 2319
 					}
2320 2320
 				}
2321 2321
 				
2322
-				if($mode === 'edit') {
2322
+				if ($mode === 'edit') {
2323 2323
 					?>
2324 2324
 					<script>
2325 2325
 						$(document).ready(function(){
@@ -2327,7 +2327,7 @@  discard block
 block discarded – undo
2327 2327
 							var all_tr_extrafields = $("tr.tr_extrafield_title");
2328 2328
 							<?php 
2329 2329
 							// Si un extrafield est rempli alors on affiche directement les extrafields
2330
-							if(!$isExtraSelected) {
2330
+							if (!$isExtraSelected) {
2331 2331
 								echo 'all_tr_extrafields.hide();';
2332 2332
 								echo 'var trad = "'.$langs->trans('showExtrafields').'";';
2333 2333
 								echo 'var extra = 0;';
@@ -2373,20 +2373,20 @@  discard block
 block discarded – undo
2373 2373
 
2374 2374
 	
2375 2375
 	function addMoreActionsButtons($parameters, &$object, &$action, $hookmanager) {
2376
-		global $conf,$langs;
2376
+		global $conf, $langs;
2377 2377
 		 
2378 2378
 		if ($object->statut == 0 && !empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && $action != 'editline')
2379 2379
 		{
2380 2380
 		    
2381
-		    if($object->element == 'invoice_supplier' || $object->element == 'order_supplier')
2381
+		    if ($object->element == 'invoice_supplier' || $object->element == 'order_supplier')
2382 2382
 		    {
2383 2383
 		        foreach ($object->lines as $line)
2384 2384
 		        {
2385 2385
 		            // fetch optionals attributes and labels
2386 2386
 		            require_once(DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php');
2387
-		            $extrafields=new ExtraFields($this->db);
2388
-		            $extralabels=$extrafields->fetch_name_optionals_label($object->table_element_line,true);
2389
-		            $line->fetch_optionals($line->id,$extralabels);
2387
+		            $extrafields = new ExtraFields($this->db);
2388
+		            $extralabels = $extrafields->fetch_name_optionals_label($object->table_element_line, true);
2389
+		            $line->fetch_optionals($line->id, $extralabels);
2390 2390
 		        }
2391 2391
 		    }
2392 2392
 		    
@@ -2486,23 +2486,23 @@  discard block
 block discarded – undo
2486 2486
 	    $ThtmlData['data-qty']          = 0; //$line->qty;
2487 2487
 	    $ThtmlData['data-level']        = TSubtotal::getNiveau($line);
2488 2488
 	    
2489
-	    if(TSubtotal::isTitle($line)){
2489
+	    if (TSubtotal::isTitle($line)) {
2490 2490
 	        $ThtmlData['data-issubtotal'] = 'title';
2491
-	    }elseif(TSubtotal::isSubtotal($line)){
2491
+	    }elseif (TSubtotal::isSubtotal($line)) {
2492 2492
 	        $ThtmlData['data-issubtotal'] = 'subtotal';
2493 2493
 	    }
2494
-	    else{
2494
+	    else {
2495 2495
 	        $ThtmlData['data-issubtotal'] = 'freetext';
2496 2496
 	    }
2497 2497
 	    
2498 2498
 	    
2499 2499
 	    // Change or add data  from hooks
2500
-	    $parameters = array_replace($parameters , array(  'ThtmlData' => $ThtmlData )  );
2500
+	    $parameters = array_replace($parameters, array('ThtmlData' => $ThtmlData));
2501 2501
 	    
2502 2502
 	    // hook 
2503
-	    $reshook = $hookmanager->executeHooks('subtotalLineHtmlData',$parameters,$object,$action); // Note that $action and $object may have been modified by hook
2503
+	    $reshook = $hookmanager->executeHooks('subtotalLineHtmlData', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
2504 2504
 	    if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
2505
-	    if ($reshook>0)
2505
+	    if ($reshook > 0)
2506 2506
 	    {
2507 2507
 	        $ThtmlData = $hookmanager->resArray;
2508 2508
 	    }
@@ -2515,14 +2515,14 @@  discard block
 block discarded – undo
2515 2515
 	function implodeHtmlData($ThtmlData = array())
2516 2516
 	{
2517 2517
 	    $data = '';
2518
-	    foreach($ThtmlData as $k => $h )
2518
+	    foreach ($ThtmlData as $k => $h)
2519 2519
 	    {
2520
-	        if(is_array($h))
2520
+	        if (is_array($h))
2521 2521
 	        {
2522 2522
 	            $h = json_encode($h);
2523 2523
 	        }
2524 2524
 	        
2525
-	        $data .= $k . '="'.dol_htmlentities($h, ENT_QUOTES).'" ';
2525
+	        $data .= $k.'="'.dol_htmlentities($h, ENT_QUOTES).'" ';
2526 2526
 	    }
2527 2527
 	    
2528 2528
 	    return $data;
@@ -2530,26 +2530,26 @@  discard block
 block discarded – undo
2530 2530
 	
2531 2531
 	function _ajax_block_order_js($object)
2532 2532
 	{
2533
-	    global $conf,$tagidfortablednd,$filepath,$langs;
2533
+	    global $conf, $tagidfortablednd, $filepath, $langs;
2534 2534
 	    
2535 2535
 	    /*
2536 2536
 	     * this part of js is base on dolibarr htdocs/core/tpl/ajaxrow.tpl.php 
2537 2537
 	     * for compatibility reasons we don't use tableDnD but jquery sortable
2538 2538
 	     */
2539 2539
 	    
2540
-	    $id=$object->id;
2541
-	    $nboflines=(isset($object->lines)?count($object->lines):0);
2542
-	    $forcereloadpage=empty($conf->global->MAIN_FORCE_RELOAD_PAGE)?0:1;
2540
+	    $id = $object->id;
2541
+	    $nboflines = (isset($object->lines) ?count($object->lines) : 0);
2542
+	    $forcereloadpage = empty($conf->global->MAIN_FORCE_RELOAD_PAGE) ? 0 : 1;
2543 2543
 	    
2544
-	    $id=$object->id;
2545
-	    $fk_element=$object->fk_element;
2546
-	    $table_element_line=$object->table_element_line;
2547
-	    $nboflines=(isset($object->lines)?count($object->lines):(empty($nboflines)?0:$nboflines));
2548
-	    $tagidfortablednd=(empty($tagidfortablednd)?'tablelines':$tagidfortablednd);
2549
-	    $filepath=(empty($filepath)?'':$filepath);
2544
+	    $id = $object->id;
2545
+	    $fk_element = $object->fk_element;
2546
+	    $table_element_line = $object->table_element_line;
2547
+	    $nboflines = (isset($object->lines) ?count($object->lines) : (empty($nboflines) ? 0 : $nboflines));
2548
+	    $tagidfortablednd = (empty($tagidfortablednd) ? 'tablelines' : $tagidfortablednd);
2549
+	    $filepath = (empty($filepath) ? '' : $filepath);
2550 2550
 	    
2551 2551
 	    
2552
-	    if (GETPOST('action','aZ09') != 'editline' && $nboflines > 1)
2552
+	    if (GETPOST('action', 'aZ09') != 'editline' && $nboflines > 1)
2553 2553
 	    {
2554 2554
 	        
2555 2555
 	        ?>
@@ -2567,7 +2567,7 @@  discard block
 block discarded – undo
2567 2567
 				moveBlockCol.disableSelection(); // prevent selection
2568 2568
 <?php if ($object->statut == 0) { ?>
2569 2569
 				// apply some graphical stuff
2570
-				moveBlockCol.css("background-image",'url(<?php echo dol_buildpath('subtotal/img/grip_all.png',2);  ?>)');
2570
+				moveBlockCol.css("background-image",'url(<?php echo dol_buildpath('subtotal/img/grip_all.png', 2); ?>)');
2571 2571
 				moveBlockCol.css("background-repeat","no-repeat");
2572 2572
 				moveBlockCol.css("background-position","center center");
2573 2573
 				moveBlockCol.css("cursor","move");
Please login to merge, or discard this patch.
Braces   +387 added lines, -237 removed lines patch added patch discarded remove patch
@@ -45,7 +45,9 @@  discard block
 block discarded – undo
45 45
 				$value = '';
46 46
 				$sql = 'SELECT content FROM '.MAIN_DB_PREFIX.'c_subtotal_free_text WHERE rowid = '.GETPOST('rowid');
47 47
 				$resql = $this->db->query($sql);
48
-				if ($resql && ($obj = $this->db->fetch_object($resql))) $value = $obj->content;
48
+				if ($resql && ($obj = $this->db->fetch_object($resql))) {
49
+					$value = $obj->content;
50
+				}
49 51
 			}
50 52
 			
51 53
 			?>
@@ -129,8 +131,11 @@  discard block
 block discarded – undo
129 131
 			if ($object->statut == 0  && $createRight) {
130 132
 			
131 133
 
132
-				if($object->element=='facture')$idvar = 'facid';
133
-				else $idvar='id';
134
+				if($object->element=='facture') {
135
+					$idvar = 'facid';
136
+				} else {
137
+					$idvar='id';
138
+				}
134 139
 				
135 140
 				if(in_array($action, array('add_title_line', 'add_total_line', 'add_subtitle_line', 'add_subtotal_line', 'add_free_text')) )
136 141
 				{
@@ -138,10 +143,11 @@  discard block
 block discarded – undo
138 143
 					
139 144
 					if($action=='add_title_line') {
140 145
 						$title = GETPOST('title');
141
-						if(empty($title)) $title = $langs->trans('title');
146
+						if(empty($title)) {
147
+							$title = $langs->trans('title');
148
+						}
142 149
 						$qty = $level<1 ? 1 : $level ;
143
-					}
144
-					else if($action=='add_free_text') {
150
+					} else if($action=='add_free_text') {
145 151
 						$title = GETPOST('title');
146 152
 
147 153
 						if (empty($title)) {
@@ -153,29 +159,31 @@  discard block
 block discarded – undo
153 159
 								}
154 160
 							}
155 161
 						}
156
-						if(empty($title)) $title = $langs->trans('subtotalAddLineDescription');
162
+						if(empty($title)) {
163
+							$title = $langs->trans('subtotalAddLineDescription');
164
+						}
157 165
 						$qty = 50;
158
-					}
159
-					else if($action=='add_subtitle_line') {
166
+					} else if($action=='add_subtitle_line') {
160 167
 						$title = GETPOST('title');
161
-						if(empty($title)) $title = $langs->trans('subtitle');
168
+						if(empty($title)) {
169
+							$title = $langs->trans('subtitle');
170
+						}
162 171
 						$qty = 2;
163
-					}
164
-					else if($action=='add_subtotal_line') {
172
+					} else if($action=='add_subtotal_line') {
165 173
 						$title = $langs->trans('SubSubTotal');
166 174
 						$qty = 98;
167
-					}
168
-					else {
175
+					} else {
169 176
 						$title = GETPOST('title') ? GETPOST('title') : $langs->trans('SubTotal');
170 177
 						$qty = $level ? 100-$level : 99;
171 178
 					}
172 179
 					dol_include_once('/subtotal/class/subtotal.class.php');
173 180
 					
174
-					if (!empty($conf->global->SUBTOTAL_AUTO_ADD_SUBTOTAL_ON_ADDING_NEW_TITLE) && $qty < 10) TSubtotal::addSubtotalMissing($object, $qty);
181
+					if (!empty($conf->global->SUBTOTAL_AUTO_ADD_SUBTOTAL_ON_ADDING_NEW_TITLE) && $qty < 10) {
182
+						TSubtotal::addSubtotalMissing($object, $qty);
183
+					}
175 184
 					
176 185
 	    			TSubtotal::addSubTotalLine($object, $title, $qty);
177
-				}
178
-				else if($action==='ask_deleteallline') {
186
+				} else if($action==='ask_deleteallline') {
179 187
 						$form=new Form($db);
180 188
 						
181 189
 						$lineid = GETPOST('lineid','integer');
@@ -198,8 +206,7 @@  discard block
 block discarded – undo
198 206
 					$this->printNewFormat($object, $conf, $langs, $idvar);
199 207
 				}
200 208
 			}
201
-		}
202
-		elseif ((!empty($parameters['currentcontext']) && $parameters['currentcontext'] == 'orderstoinvoice') || in_array('orderstoinvoice',$contexts))
209
+		} elseif ((!empty($parameters['currentcontext']) && $parameters['currentcontext'] == 'orderstoinvoice') || in_array('orderstoinvoice',$contexts))
203 210
 		{
204 211
 			?>
205 212
 			<script type="text/javascript">
@@ -217,8 +224,13 @@  discard block
 block discarded – undo
217 224
      
218 225
 	function printNewFormat(&$object, &$conf, &$langs, $idvar)
219 226
 	{
220
-		if (empty($conf->global->SUBTOTAL_ALLOW_ADD_BLOCK)) return false;
221
-		if (!empty($object->situation_cycle_ref) && $object->situation_counter > 1) return false; // Si facture de situation
227
+		if (empty($conf->global->SUBTOTAL_ALLOW_ADD_BLOCK)) {
228
+			return false;
229
+		}
230
+		if (!empty($object->situation_cycle_ref) && $object->situation_counter > 1) {
231
+			return false;
232
+		}
233
+		// Si facture de situation
222 234
 		?>
223 235
 		 	<script type="text/javascript">
224 236
 				$(document).ready(function() {
@@ -504,8 +516,7 @@  discard block
 block discarded – undo
504 516
 				}
505 517
 				
506 518
 				
507
-			}	
508
-			else{
519
+			} else{
509 520
 				$substitutionarray['line_not_modsubtotal'] = true;
510 521
 				$substitutionarray['line_modsubtotal'] = 0;
511 522
 			}
@@ -563,8 +574,11 @@  discard block
 block discarded – undo
563 574
 		
564 575
 		$showBlockExtrafields = GETPOST('showBlockExtrafields');
565 576
 		
566
-		if($object->element=='facture') $idvar = 'facid';
567
-		else $idvar = 'id';
577
+		if($object->element=='facture') {
578
+			$idvar = 'facid';
579
+		} else {
580
+			$idvar = 'id';
581
+		}
568 582
 			
569 583
 		if ($action == 'updateligne' || $action == 'updateline')
570 584
 		{
@@ -594,8 +608,7 @@  discard block
 block discarded – undo
594 608
 				header('Location: '.$_SERVER['PHP_SELF'].'?'.$idvar.'='.$object->id);
595 609
 				exit; // Surtout ne pas laisser Dolibarr faire du traitement sur le updateligne sinon ça plante les données de la ligne
596 610
 			}
597
-		}
598
-		else if($action === 'builddoc') {
611
+		} else if($action === 'builddoc') {
599 612
 			
600 613
 			if (
601 614
 				in_array('invoicecard',explode(':',$parameters['context']))
@@ -610,33 +623,27 @@  discard block
 block discarded – undo
610 623
 					$sessname = 'subtotal_hideInnerLines_facture';	
611 624
 					$sessname2 = 'subtotal_hidedetails_facture';
612 625
 					$sessname3 = 'subtotal_hideprices_facture';
613
-				}
614
-				elseif(in_array('invoicesuppliercard',explode(':',$parameters['context']))) {
626
+				} elseif(in_array('invoicesuppliercard',explode(':',$parameters['context']))) {
615 627
 				    $sessname = 'subtotal_hideInnerLines_facture_fournisseur';
616 628
 				    $sessname2 = 'subtotal_hidedetails_facture_fournisseur';
617 629
 				    $sessname3 = 'subtotal_hideprices_facture_fournisseur';
618
-				}
619
-				elseif(in_array('propalcard',explode(':',$parameters['context']))) {
630
+				} elseif(in_array('propalcard',explode(':',$parameters['context']))) {
620 631
 					$sessname = 'subtotal_hideInnerLines_propal';
621 632
 					$sessname2 = 'subtotal_hidedetails_propal';	
622 633
 					$sessname3 = 'subtotal_hideprices_propal';
623
-				}
624
-				elseif(in_array('supplier_proposalcard',explode(':',$parameters['context']))) {
634
+				} elseif(in_array('supplier_proposalcard',explode(':',$parameters['context']))) {
625 635
 				    $sessname = 'subtotal_hideInnerLines_supplier_proposal';
626 636
 				    $sessname2 = 'subtotal_hidedetails_supplier_proposal';
627 637
 				    $sessname3 = 'subtotal_hideprices_supplier_proposal';
628
-				}
629
-				elseif(in_array('ordercard',explode(':',$parameters['context']))) {
638
+				} elseif(in_array('ordercard',explode(':',$parameters['context']))) {
630 639
 					$sessname = 'subtotal_hideInnerLines_commande';
631 640
 					$sessname2 = 'subtotal_hidedetails_commande';	
632 641
 					$sessname3 = 'subtotal_hideprices_commande';
633
-				}
634
-				elseif(in_array('ordersuppliercard',explode(':',$parameters['context']))) {
642
+				} elseif(in_array('ordersuppliercard',explode(':',$parameters['context']))) {
635 643
 				    $sessname = 'subtotal_hideInnerLines_commande_fournisseur';
636 644
 				    $sessname2 = 'subtotal_hidedetails_commande_fournisseur';
637 645
 				    $sessname3 = 'subtotal_hideprices_commande_fournisseur';
638
-				}
639
-				else {
646
+				} else {
640 647
 					$sessname = 'subtotal_hideInnerLines_unknown';
641 648
 					$sessname2 = 'subtotal_hidedetails_unknown';
642 649
 					$sessname3 = 'subtotal_hideprices_unknown';
@@ -645,15 +652,24 @@  discard block
 block discarded – undo
645 652
 				global $hideprices;
646 653
 				
647 654
 				$hideInnerLines = (int)GETPOST('hideInnerLines');
648
-				if(!empty($_SESSION[$sessname]) && !is_array($_SESSION[$sessname][$object->id]) ) $_SESSION[$sessname] = array(); // prevent old system
655
+				if(!empty($_SESSION[$sessname]) && !is_array($_SESSION[$sessname][$object->id]) ) {
656
+					$_SESSION[$sessname] = array();
657
+				}
658
+				// prevent old system
649 659
 				$_SESSION[$sessname][$object->id] = $hideInnerLines;		
650 660
 				
651 661
 				$hidedetails= (int)GETPOST('hidedetails');
652
-				if(!empty($_SESSION[$sessname2]) && !is_array($_SESSION[$sessname2][$object->id]) ) $_SESSION[$sessname2] = array(); // prevent old system
662
+				if(!empty($_SESSION[$sessname2]) && !is_array($_SESSION[$sessname2][$object->id]) ) {
663
+					$_SESSION[$sessname2] = array();
664
+				}
665
+				// prevent old system
653 666
 				$_SESSION[$sessname2][$object->id] = $hidedetails;
654 667
 				
655 668
 				$hideprices= (int)GETPOST('hideprices');
656
-				if(!empty($_SESSION[$sessname3]) && !is_array($_SESSION[$sessname3][$object->id]) ) $_SESSION[$sessname3] = array(); // prevent old system
669
+				if(!empty($_SESSION[$sessname3]) && !is_array($_SESSION[$sessname3][$object->id]) ) {
670
+					$_SESSION[$sessname3] = array();
671
+				}
672
+				// prevent old system
657 673
 				$_SESSION[$sessname3][$object->id] = $hideprices;
658 674
 				
659 675
 				foreach($object->lines as &$line) {
@@ -661,8 +677,7 @@  discard block
 block discarded – undo
661 677
 					    
662 678
                         if($line->qty>=90) {
663 679
                             $line->modsubtotal_total = 1;
664
-                        }
665
-                        else{
680
+                        } else{
666 681
                             $line->modsubtotal_title = 1;
667 682
                         }
668 683
                         
@@ -671,8 +686,7 @@  discard block
 block discarded – undo
671 686
 	        	}
672 687
 	        }
673 688
 			
674
-		}
675
-		else if($action === 'confirm_delete_all_lines' && GETPOST('confirm')=='yes') {
689
+		} else if($action === 'confirm_delete_all_lines' && GETPOST('confirm')=='yes') {
676 690
 			
677 691
 			$Tab = $this->getArrayOfLineForAGroup($object, GETPOST('lineid'));
678 692
 			
@@ -680,7 +694,9 @@  discard block
 block discarded – undo
680 694
 				/**
681 695
 				 * @var $object Facture
682 696
 				 */
683
-				if($object->element=='facture') $object->deleteline($idLine);
697
+				if($object->element=='facture') {
698
+					$object->deleteline($idLine);
699
+				}
684 700
 				/**
685 701
 				 * @var $object Facture fournisseur
686 702
 				 */
@@ -691,18 +707,25 @@  discard block
 block discarded – undo
691 707
 				/**
692 708
 				 * @var $object Propal
693 709
 				 */
694
-				else if($object->element=='propal') $object->deleteline($idLine);
710
+				else if($object->element=='propal') {
711
+					$object->deleteline($idLine);
712
+				}
695 713
 				/**
696 714
 				 * @var $object Propal Fournisseur
697 715
 				 */
698
-				else if($object->element=='supplier_proposal') $object->deleteline($idLine);
716
+				else if($object->element=='supplier_proposal') {
717
+					$object->deleteline($idLine);
718
+				}
699 719
 				/**
700 720
 				 * @var $object Commande
701 721
 				 */
702 722
 				else if($object->element=='commande') 
703 723
 				{
704
-					if ((float) DOL_VERSION >= 5.0) $object->deleteline($user, $idLine);
705
-					else $object->deleteline($idLine);
724
+					if ((float) DOL_VERSION >= 5.0) {
725
+						$object->deleteline($user, $idLine);
726
+					} else {
727
+						$object->deleteline($idLine);
728
+					}
706 729
 				}
707 730
 				/**
708 731
 				 * @var $object Commande fournisseur
@@ -714,21 +737,26 @@  discard block
 block discarded – undo
714 737
 				/**
715 738
 				 * @var $object Facturerec
716 739
 				 */
717
-				else if($object->element=='facturerec') $object->deleteline($idLine);
740
+				else if($object->element=='facturerec') {
741
+					$object->deleteline($idLine);
742
+				}
718 743
 			}
719 744
 			
720 745
 			header('location:?id='.$object->id);
721 746
 			exit;
722 747
 			
723
-		}
724
-		else if ($action == 'duplicate')
748
+		} else if ($action == 'duplicate')
725 749
 		{
726 750
 			$lineid = GETPOST('lineid', 'int');
727 751
 			$nbDuplicate = TSubtotal::duplicateLines($object, $lineid, true);
728 752
 			
729
-			if ($nbDuplicate > 0) setEventMessage($langs->trans('subtotal_duplicate_success', $nbDuplicate));
730
-			elseif ($nbDuplicate == 0) setEventMessage($langs->trans('subtotal_duplicate_lineid_not_found'), 'warnings');
731
-			else setEventMessage($langs->trans('subtotal_duplicate_error'), 'errors');
753
+			if ($nbDuplicate > 0) {
754
+				setEventMessage($langs->trans('subtotal_duplicate_success', $nbDuplicate));
755
+			} elseif ($nbDuplicate == 0) {
756
+				setEventMessage($langs->trans('subtotal_duplicate_lineid_not_found'), 'warnings');
757
+			} else {
758
+				setEventMessage($langs->trans('subtotal_duplicate_error'), 'errors');
759
+			}
732 760
 			
733 761
 			header('Location: ?id='.$object->id);
734 762
 			exit;
@@ -746,21 +774,26 @@  discard block
 block discarded – undo
746 774
 		global $conf;
747 775
 		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && !empty($object->table_element_line) && in_array($object->element, array('commande', 'facture', 'propal')))
748 776
 		{
749
-			if ($object->element == 'commande')
750
-				$obj = new OrderLine($object->db);
751
-			if ($object->element == 'propal')
752
-				$obj = new PropaleLigne($object->db);
753
-			if ($object->element == 'facture')
754
-				$obj = new FactureLigne($object->db);
777
+			if ($object->element == 'commande') {
778
+							$obj = new OrderLine($object->db);
779
+			}
780
+			if ($object->element == 'propal') {
781
+							$obj = new PropaleLigne($object->db);
782
+			}
783
+			if ($object->element == 'facture') {
784
+							$obj = new FactureLigne($object->db);
785
+			}
755 786
 			if (!empty($parameters['fk_element']))
756 787
 			{
757 788
 				
758 789
 				if($obj->fetch($parameters['fk_element'])){
759 790
 					$obj->id= $obj->rowid;
760
-					if (empty($obj->array_options))
761
-						$obj->fetch_optionals();
762
-					if (!empty($obj->array_options['options_subtotal_nc']))
763
-						return 1;
791
+					if (empty($obj->array_options)) {
792
+											$obj->fetch_optionals();
793
+					}
794
+					if (!empty($obj->array_options['options_subtotal_nc'])) {
795
+											return 1;
796
+					}
764 797
 				}
765 798
 			}
766 799
 		}
@@ -832,27 +865,33 @@  discard block
 block discarded – undo
832 865
 		$TTotal_tva = array();
833 866
 		
834 867
 		$sign=1;
835
-		if (isset($object->type) && $object->type == 2 && ! empty($conf->global->INVOICE_POSITIVE_CREDIT_NOTE)) $sign=-1;
868
+		if (isset($object->type) && $object->type == 2 && ! empty($conf->global->INVOICE_POSITIVE_CREDIT_NOTE)) {
869
+			$sign=-1;
870
+		}
836 871
 		
837
-		if (GETPOST('action') == 'builddoc') $builddoc = true;
838
-		else $builddoc = false;
872
+		if (GETPOST('action') == 'builddoc') {
873
+			$builddoc = true;
874
+		} else {
875
+			$builddoc = false;
876
+		}
839 877
 		
840 878
 		dol_include_once('/subtotal/class/subtotal.class.php');
841 879
 		foreach($object->lines as $l) {
842 880
 			//print $l->rang.'>='.$rang.' '.$total.'<br/>';
843 881
 			if($l->rang>=$rang) {
844 882
 				//echo 'return!<br>';
845
-				if (!$return_all) return $total;
846
-				else return array($total, $total_tva, $total_ttc, $TTotal_tva);
847
-			}
848
-			else if(TSubtotal::isTitle($l, 100 - $qty_line)) 
883
+				if (!$return_all) {
884
+					return $total;
885
+				} else {
886
+					return array($total, $total_tva, $total_ttc, $TTotal_tva);
887
+				}
888
+			} else if(TSubtotal::isTitle($l, 100 - $qty_line)) 
849 889
 		  	{
850 890
 				$total = 0;
851 891
 				$total_tva = 0;
852 892
 				$total_ttc = 0;
853 893
 				$TTotal_tva = array();
854
-			}
855
-			elseif(!TSubtotal::isTitle($l) && !TSubtotal::isSubtotal($l)) {
894
+			} elseif(!TSubtotal::isTitle($l) && !TSubtotal::isSubtotal($l)) {
856 895
 				
857 896
 				// TODO retirer le test avec $builddoc quand Dolibarr affichera le total progression sur la card et pas seulement dans le PDF
858 897
 				if ($builddoc && $object->element == 'facture' && $object->type==Facture::TYPE_SITUATION)
@@ -874,8 +913,7 @@  discard block
 block discarded – undo
874 913
 						$TTotal_tva[$l->tva_tx] += $sign * ($l->total_tva / ($l->situation_percent / 100)) * $progress;
875 914
 						$total_ttc += $sign * ($l->total_tva / ($l->total_ttc / 100)) * $progress;
876 915
 					}
877
-				}
878
-				else
916
+				} else
879 917
 				{
880 918
 					$total += $l->total_ht;
881 919
 					$total_tva += $l->total_tva;
@@ -885,8 +923,11 @@  discard block
 block discarded – undo
885 923
 			}
886 924
 			
887 925
 		}
888
-		if (!$return_all) return $total;
889
-		else return array($total, $total_tva, $total_ttc, $TTotal_tva);
926
+		if (!$return_all) {
927
+			return $total;
928
+		} else {
929
+			return array($total, $total_tva, $total_ttc, $TTotal_tva);
930
+		}
890 931
 	}
891 932
 
892 933
 	/**
@@ -928,15 +969,18 @@  discard block
 block discarded – undo
928 969
 		}
929 970
 		
930 971
 			
931
-		if($line->qty==99)
932
-			$pdf->SetFillColor(220,220,220);
933
-		elseif ($line->qty==98)
934
-			$pdf->SetFillColor(230,230,230);
935
-		else
936
-			$pdf->SetFillColor(240,240,240);
972
+		if($line->qty==99) {
973
+					$pdf->SetFillColor(220,220,220);
974
+		} elseif ($line->qty==98) {
975
+					$pdf->SetFillColor(230,230,230);
976
+		} else {
977
+					$pdf->SetFillColor(240,240,240);
978
+		}
937 979
 		
938 980
 		$style = 'B';
939
-		if (!empty($conf->global->SUBTOTAL_SUBTOTAL_STYLE)) $style = $conf->global->SUBTOTAL_SUBTOTAL_STYLE;
981
+		if (!empty($conf->global->SUBTOTAL_SUBTOTAL_STYLE)) {
982
+			$style = $conf->global->SUBTOTAL_SUBTOTAL_STYLE;
983
+		}
940 984
 		
941 985
 		$pdf->SetFont('', $style, 9);
942 986
 		
@@ -978,8 +1022,7 @@  discard block
 block discarded – undo
978 1022
 //					$line->total_tva
979 1023
 //					$line->total
980 1024
 //					$line->total_ttc
981
-				}
982
-				else
1025
+				} else
983 1026
 				{
984 1027
 					list($total, $total_tva, $total_ttc, $TTotal_tva) = $this->getTotalLineFromObject($object, $line, '', 1);
985 1028
 					$total_to_print = price($total);
@@ -992,11 +1035,14 @@  discard block
 block discarded – undo
992 1035
 			}
993 1036
 
994 1037
 			$pdf->SetXY($pdf->postotalht, $posy);
995
-			if($set_pagebreak_margin) $pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin);
1038
+			if($set_pagebreak_margin) {
1039
+				$pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin);
1040
+			}
996 1041
 			$pdf->MultiCell($pdf->page_largeur-$pdf->marge_droite-$pdf->postotalht, 3, $total_to_print, 0, 'R', 0);
997
-		}
998
-		else{
999
-			if($set_pagebreak_margin) $pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin);
1042
+		} else{
1043
+			if($set_pagebreak_margin) {
1044
+				$pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin);
1045
+			}
1000 1046
 		}
1001 1047
 		
1002 1048
 		$posy = $posy + $cell_height;
@@ -1028,25 +1074,40 @@  discard block
 block discarded – undo
1028 1074
 		
1029 1075
  
1030 1076
 		$style = ($line->qty==1) ? 'BU' : 'BUI';
1031
-		if (!empty($conf->global->SUBTOTAL_TITLE_STYLE)) $style = $conf->global->SUBTOTAL_TITLE_STYLE;
1077
+		if (!empty($conf->global->SUBTOTAL_TITLE_STYLE)) {
1078
+			$style = $conf->global->SUBTOTAL_TITLE_STYLE;
1079
+		}
1032 1080
 		
1033 1081
 		if($hideInnerLines) {
1034
-			if($line->qty==1)$pdf->SetFont('', $style, 9);
1035
-			else 
1082
+			if($line->qty==1) {
1083
+				$pdf->SetFont('', $style, 9);
1084
+			} else 
1036 1085
 			{
1037
-				if (!empty($conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES)) $style = $conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES;
1086
+				if (!empty($conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES)) {
1087
+					$style = $conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES;
1088
+				}
1038 1089
 				$pdf->SetFont('', $style, 9);
1039 1090
 			}
1040
-		}
1041
-		else {
1091
+		} else {
1042 1092
 
1043
-			if($line->qty==1)$pdf->SetFont('', $style, 9); //TODO if super utile
1044
-			else $pdf->SetFont('', $style, 9);
1093
+			if($line->qty==1) {
1094
+				$pdf->SetFont('', $style, 9);
1095
+			}
1096
+			//TODO if super utile
1097
+			else {
1098
+				$pdf->SetFont('', $style, 9);
1099
+			}
1045 1100
 			
1046 1101
 		}
1047 1102
 		
1048
-		if ($label === strip_tags($label) && $label === dol_html_entity_decode($label, ENT_QUOTES)) $pdf->MultiCell($w, $h, $label, 0, 'L'); // Pas de HTML dans la chaine
1049
-		else $pdf->writeHTMLCell($w, $h, $posx, $posy, $label, 0, 1, false, true, 'J',true); // et maintenant avec du HTML
1103
+		if ($label === strip_tags($label) && $label === dol_html_entity_decode($label, ENT_QUOTES)) {
1104
+			$pdf->MultiCell($w, $h, $label, 0, 'L');
1105
+		}
1106
+		// Pas de HTML dans la chaine
1107
+		else {
1108
+			$pdf->writeHTMLCell($w, $h, $posx, $posy, $label, 0, 1, false, true, 'J',true);
1109
+		}
1110
+		// et maintenant avec du HTML
1050 1111
 		
1051 1112
 		if($description && !$hidedesc) {
1052 1113
 			$posy = $pdf->GetY();
@@ -1070,8 +1131,7 @@  discard block
 block discarded – undo
1070 1131
 		
1071 1132
 		if(is_array($parameters)) {
1072 1133
 			$i = & $parameters['i'];	
1073
-		}
1074
-		else {
1134
+		} else {
1075 1135
 			$i = (int)$parameters;
1076 1136
 		}
1077 1137
 		
@@ -1093,17 +1153,14 @@  discard block
 block discarded – undo
1093 1153
 			
1094 1154
 			if((float)DOL_VERSION<=3.6) {
1095 1155
 				return '';
1096
-			}
1097
-			else if((float)DOL_VERSION>=3.8) {
1156
+			} else if((float)DOL_VERSION>=3.8) {
1098 1157
 				return 1;
1099 1158
 			}
1100 1159
 			
1101
-		}
1102
-		elseif(!empty($hideprices)) {
1160
+		} elseif(!empty($hideprices)) {
1103 1161
 			$this->resprints = $object->lines[$parameters['i']]->qty;
1104 1162
 			return 1;
1105
-		}
1106
-		elseif (!empty($conf->global->SUBTOTAL_IF_HIDE_PRICES_SHOW_QTY))
1163
+		} elseif (!empty($conf->global->SUBTOTAL_IF_HIDE_PRICES_SHOW_QTY))
1107 1164
 		{
1108 1165
 			$hideInnerLines = (int)GETPOST('hideInnerLines');
1109 1166
 			$hidedetails = (int)GETPOST('hidedetails');
@@ -1113,12 +1170,20 @@  discard block
 block discarded – undo
1113 1170
 			}
1114 1171
 		}
1115 1172
 		
1116
-		if(is_array($parameters)) $i = & $parameters['i'];
1117
-		else $i = (int)$parameters;
1173
+		if(is_array($parameters)) {
1174
+			$i = & $parameters['i'];
1175
+		} else {
1176
+			$i = (int)$parameters;
1177
+		}
1118 1178
 
1119
-		if (empty($object->lines[$i])) return 0; // hideInnerLines => override $object->lines et Dolibarr ne nous permet pas de mettre à jour la variable qui conditionne la boucle sur les lignes (PR faite pour 6.0)
1179
+		if (empty($object->lines[$i])) {
1180
+			return 0;
1181
+		}
1182
+		// hideInnerLines => override $object->lines et Dolibarr ne nous permet pas de mettre à jour la variable qui conditionne la boucle sur les lignes (PR faite pour 6.0)
1120 1183
 		
1121
-		if(empty($object->lines[$i]->array_options)) $object->lines[$i]->fetch_optionals();
1184
+		if(empty($object->lines[$i]->array_options)) {
1185
+			$object->lines[$i]->fetch_optionals();
1186
+		}
1122 1187
 
1123 1188
 		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1124 1189
 		{
@@ -1135,8 +1200,11 @@  discard block
 block discarded – undo
1135 1200
 	function pdf_getlinetotalexcltax($parameters=array(), &$object, &$action='') {
1136 1201
 	    global $conf, $hideprices, $hookmanager;
1137 1202
 		
1138
-		if(is_array($parameters)) $i = & $parameters['i'];
1139
-		else $i = (int)$parameters;
1203
+		if(is_array($parameters)) {
1204
+			$i = & $parameters['i'];
1205
+		} else {
1206
+			$i = (int)$parameters;
1207
+		}
1140 1208
 			
1141 1209
 		if($this->isModSubtotalLine($parameters,$object) ){
1142 1210
 			
@@ -1144,13 +1212,11 @@  discard block
 block discarded – undo
1144 1212
 			
1145 1213
 			if((float)DOL_VERSION<=3.6) {
1146 1214
 				return '';
1147
-			}
1148
-			else if((float)DOL_VERSION>=3.8) {
1215
+			} else if((float)DOL_VERSION>=3.8) {
1149 1216
 				return 1;
1150 1217
 			}
1151 1218
 			
1152
-		}
1153
-		elseif (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS))
1219
+		} elseif (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS))
1154 1220
 		{
1155 1221
 			if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC)))
1156 1222
 			{
@@ -1222,12 +1288,10 @@  discard block
 block discarded – undo
1222 1288
 			$this->error = $hookmanager->error;
1223 1289
 			$this->errors = $hookmanager->errors;
1224 1290
 			return -1;
1225
-		}
1226
-		elseif (empty($reshook))
1291
+		} elseif (empty($reshook))
1227 1292
 		{
1228 1293
 			$this->resprints .= $hookmanager->resprints;
1229
-		}
1230
-		else
1294
+		} else
1231 1295
 		{
1232 1296
 			$this->resprints = $hookmanager->resprints;
1233 1297
 
@@ -1250,14 +1314,16 @@  discard block
 block discarded – undo
1250 1314
 		
1251 1315
 			if((float)DOL_VERSION<=3.6) {
1252 1316
 				return '';
1253
-			}
1254
-			else if((float)DOL_VERSION>=3.8) {
1317
+			} else if((float)DOL_VERSION>=3.8) {
1255 1318
 				return 1;
1256 1319
 			}
1257 1320
 		}
1258 1321
 		
1259
-		if(is_array($parameters)) $i = & $parameters['i'];
1260
-		else $i = (int)$parameters;
1322
+		if(is_array($parameters)) {
1323
+			$i = & $parameters['i'];
1324
+		} else {
1325
+			$i = (int)$parameters;
1326
+		}
1261 1327
 		
1262 1328
 		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) ) 
1263 1329
 		{
@@ -1279,14 +1345,16 @@  discard block
 block discarded – undo
1279 1345
 		
1280 1346
 			if((float)DOL_VERSION<=3.6) {
1281 1347
 				return '';
1282
-			}
1283
-			else if((float)DOL_VERSION>=3.8) {
1348
+			} else if((float)DOL_VERSION>=3.8) {
1284 1349
 				return 1;
1285 1350
 			}
1286 1351
 		}
1287 1352
 		
1288
-		if(is_array($parameters)) $i = & $parameters['i'];
1289
-		else $i = (int)$parameters;
1353
+		if(is_array($parameters)) {
1354
+			$i = & $parameters['i'];
1355
+		} else {
1356
+			$i = (int)$parameters;
1357
+		}
1290 1358
 			
1291 1359
 		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1292 1360
 		{
@@ -1303,8 +1371,11 @@  discard block
 block discarded – undo
1303 1371
 	function pdf_getlineupexcltax($parameters=array(), &$object, &$action='') {
1304 1372
 	    global $conf,$hideprices,$hookmanager;
1305 1373
 
1306
-		if(is_array($parameters)) $i = & $parameters['i'];
1307
-		else $i = (int)$parameters;
1374
+		if(is_array($parameters)) {
1375
+			$i = & $parameters['i'];
1376
+		} else {
1377
+			$i = (int)$parameters;
1378
+		}
1308 1379
 
1309 1380
 		if($this->isModSubtotalLine($parameters,$object) ) {
1310 1381
 			$this->resprints = ' ';
@@ -1323,8 +1394,7 @@  discard block
 block discarded – undo
1323 1394
 		
1324 1395
 			if((float)DOL_VERSION<=3.6) {
1325 1396
 				return '';
1326
-			}
1327
-			else if((float)DOL_VERSION>=3.8) {
1397
+			} else if((float)DOL_VERSION>=3.8) {
1328 1398
 				return 1;
1329 1399
 			}
1330 1400
 		}
@@ -1369,8 +1439,11 @@  discard block
 block discarded – undo
1369 1439
 	function pdf_getlineremisepercent($parameters=array(), &$object, &$action='') {
1370 1440
 	    global $conf,$hideprices,$hookmanager;
1371 1441
 
1372
-        if(is_array($parameters)) $i = & $parameters['i'];
1373
-        else $i = (int) $parameters;
1442
+        if(is_array($parameters)) {
1443
+        	$i = & $parameters['i'];
1444
+        } else {
1445
+        	$i = (int) $parameters;
1446
+        }
1374 1447
 
1375 1448
 		if($this->isModSubtotalLine($parameters,$object) ) {
1376 1449
 			$this->resprints = ' ';
@@ -1389,12 +1462,10 @@  discard block
 block discarded – undo
1389 1462
 		
1390 1463
 			if((float)DOL_VERSION<=3.6) {
1391 1464
 				return '';
1392
-			}
1393
-			else if((float)DOL_VERSION>=3.8) {
1465
+			} else if((float)DOL_VERSION>=3.8) {
1394 1466
 				return 1;
1395 1467
 			}
1396
-		}
1397
-		elseif (!empty($hideprices)
1468
+		} elseif (!empty($hideprices)
1398 1469
 		        || (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1399 1470
 		        )
1400 1471
 		    {
@@ -1415,14 +1486,16 @@  discard block
 block discarded – undo
1415 1486
 			$this->resprints = ' ';
1416 1487
 			if((float)DOL_VERSION<=3.6) {
1417 1488
 				return '';
1418
-			}
1419
-			else if((float)DOL_VERSION>=3.8) {
1489
+			} else if((float)DOL_VERSION>=3.8) {
1420 1490
 				return 1;
1421 1491
 			}
1422 1492
 		}
1423 1493
 		
1424
-		if(is_array($parameters)) $i = & $parameters['i'];
1425
-		else $i = (int)$parameters;
1494
+		if(is_array($parameters)) {
1495
+			$i = & $parameters['i'];
1496
+		} else {
1497
+			$i = (int)$parameters;
1498
+		}
1426 1499
 			
1427 1500
 		if (!empty($hideprices)
1428 1501
 				|| (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
@@ -1446,16 +1519,21 @@  discard block
 block discarded – undo
1446 1519
 			
1447 1520
 			if((float)DOL_VERSION<=3.6) {
1448 1521
 				return '';
1449
-			}
1450
-			else if((float)DOL_VERSION>=3.8) {
1522
+			} else if((float)DOL_VERSION>=3.8) {
1451 1523
 				return 1;
1452 1524
 			}
1453 1525
 		}
1454 1526
 		
1455
-		if(is_array($parameters)) $i = & $parameters['i'];
1456
-		else $i = (int)$parameters;
1527
+		if(is_array($parameters)) {
1528
+			$i = & $parameters['i'];
1529
+		} else {
1530
+			$i = (int)$parameters;
1531
+		}
1457 1532
 		
1458
-		if (empty($object->lines[$i])) return 0; // hideInnerLines => override $object->lines et Dolibarr ne nous permet pas de mettre à jour la variable qui conditionne la boucle sur les lignes (PR faite pour 6.0)
1533
+		if (empty($object->lines[$i])) {
1534
+			return 0;
1535
+		}
1536
+		// hideInnerLines => override $object->lines et Dolibarr ne nous permet pas de mettre à jour la variable qui conditionne la boucle sur les lignes (PR faite pour 6.0)
1459 1537
 
1460 1538
 		$object->lines[$i]->fetch_optionals();
1461 1539
 		// Si la gestion C/NC est active et que je suis sur un ligne dont l'extrafield est coché
@@ -1501,14 +1579,16 @@  discard block
 block discarded – undo
1501 1579
 			$this->resprints = ' ';
1502 1580
 			if((float)DOL_VERSION<=3.6) {
1503 1581
 				return '';
1504
-			}
1505
-			else if((float)DOL_VERSION>=3.8) {
1582
+			} else if((float)DOL_VERSION>=3.8) {
1506 1583
 				return 1;
1507 1584
 			}
1508 1585
 		}
1509 1586
 		
1510
-		if(is_array($parameters)) $i = & $parameters['i'];
1511
-		else $i = (int)$parameters;
1587
+		if(is_array($parameters)) {
1588
+			$i = & $parameters['i'];
1589
+		} else {
1590
+			$i = (int)$parameters;
1591
+		}
1512 1592
 			
1513 1593
 		if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) )
1514 1594
 		{
@@ -1538,7 +1618,9 @@  discard block
 block discarded – undo
1538 1618
 				}
1539 1619
 			}
1540 1620
 			
1541
-			if (!empty($TLineTitle)) $TTitleNumeroted = $this->formatNumerotation($TLineTitle);
1621
+			if (!empty($TLineTitle)) {
1622
+				$TTitleNumeroted = $this->formatNumerotation($TLineTitle);
1623
+			}
1542 1624
 		}
1543 1625
 		
1544 1626
 	}
@@ -1552,8 +1634,12 @@  discard block
 block discarded – undo
1552 1634
 		$j=0;
1553 1635
 		foreach ($TLineTitle as $k => &$line)
1554 1636
 		{
1555
-			if (!empty($line_reference) && $line->rang <= $line_reference->rang) continue;
1556
-			if (!empty($line_reference) && $line->qty <= $line_reference->qty) break;
1637
+			if (!empty($line_reference) && $line->rang <= $line_reference->rang) {
1638
+				continue;
1639
+			}
1640
+			if (!empty($line_reference) && $line->qty <= $line_reference->qty) {
1641
+				break;
1642
+			}
1557 1643
 			
1558 1644
 			if ($line->qty == $level)
1559 1645
 			{
@@ -1587,7 +1673,9 @@  discard block
 block discarded – undo
1587 1673
 		
1588 1674
 		$hidedetails = (int)GETPOST('hidedetails');
1589 1675
 		
1590
-		if(empty($hidedetails)) return false;
1676
+		if(empty($hidedetails)) {
1677
+			return false;
1678
+		}
1591 1679
 		
1592 1680
 		// TODO can't add VAT to document without lines... :-/
1593 1681
 		
@@ -1648,7 +1736,9 @@  discard block
 block discarded – undo
1648 1736
 						*/
1649 1737
 						list($total, $total_tva, $total_ttc, $TTotal_tva) = $this->getTotalLineFromObject($object, $line, '', 1);
1650 1738
 						
1651
-						if (TSubtotal::getNiveau($line) == 1) $line->TTotal_tva = $TTotal_tva;
1739
+						if (TSubtotal::getNiveau($line) == 1) {
1740
+							$line->TTotal_tva = $TTotal_tva;
1741
+						}
1652 1742
 						$line->total_ht = $total;
1653 1743
 						$line->total_tva = $total_tva;
1654 1744
 						$line->total = $line->total_ht;
@@ -1712,8 +1802,7 @@  discard block
 block discarded – undo
1712 1802
 				    }
1713 1803
 				    
1714 1804
 					
1715
-				}
1716
-				elseif ($hidedetails)
1805
+				} elseif ($hidedetails)
1717 1806
 				{
1718 1807
 					$TLines[] = $line; //Cas où je cache uniquement les prix des produits	
1719 1808
 				}
@@ -1784,7 +1873,9 @@  discard block
 block discarded – undo
1784 1873
 				
1785 1874
 				if(!empty($hideprices)) {
1786 1875
 					foreach($object->lines as &$line) {
1787
-						if($line->fk_product_type!=9) $line->fk_parent_line = -1;	
1876
+						if($line->fk_product_type!=9) {
1877
+							$line->fk_parent_line = -1;
1878
+						}
1788 1879
 					}
1789 1880
 				}
1790 1881
 			
@@ -1805,7 +1896,9 @@  discard block
 block discarded – undo
1805 1896
 				
1806 1897
 				if($line->qty>90) {
1807 1898
 					
1808
-					if ($conf->global->SUBTOTAL_USE_NEW_FORMAT)	$label .= ' '.$this->getTitle($object, $line);
1899
+					if ($conf->global->SUBTOTAL_USE_NEW_FORMAT) {
1900
+						$label .= ' '.$this->getTitle($object, $line);
1901
+					}
1809 1902
 					
1810 1903
 					$pageBefore = $pdf->getPage();
1811 1904
 					$this->pdf_add_total($pdf,$object, $line, $label, $description,$posx, $posy, $w, $h);
@@ -1823,8 +1916,7 @@  discard block
 block discarded – undo
1823 1916
 				
1824 1917
 					$posy = $pdf->GetY();
1825 1918
 					return 1;
1826
-				}	
1827
-				else if ($line->qty < 10) {
1919
+				} else if ($line->qty < 10) {
1828 1920
 					$pageBefore = $pdf->getPage();
1829 1921
 
1830 1922
 					$this->pdf_add_title($pdf,$object, $line, $label, $description,$posx, $posy, $w, $h); 
@@ -1848,8 +1940,7 @@  discard block
 block discarded – undo
1848 1940
 //	if($line->rowid==47) exit;
1849 1941
 			
1850 1942
 			return 0;
1851
-		}
1852
-		elseif (empty($object->lines[$parameters['i']]))
1943
+		} elseif (empty($object->lines[$parameters['i']]))
1853 1944
 		{
1854 1945
 			$this->resprints = -1;
1855 1946
 		}
@@ -1882,7 +1973,9 @@  discard block
 block discarded – undo
1882 1973
 		
1883 1974
 		foreach ($object->lines as $line)
1884 1975
 		{
1885
-			if ($line->id == $currentLine->id) break;
1976
+			if ($line->id == $currentLine->id) {
1977
+				break;
1978
+			}
1886 1979
 			
1887 1980
 			$qty_search = 100 - $currentLine->qty;
1888 1981
 			
@@ -1919,23 +2012,23 @@  discard block
 block discarded – undo
1919 2012
 		{
1920 2013
 			$object->statut = 0; // hack for facture rec
1921 2014
 			$createRight = $user->rights->facture->creer;
1922
-		}
1923
-		elseif($object->element == 'order_supplier' )
2015
+		} elseif($object->element == 'order_supplier' )
1924 2016
 		{
1925 2017
 		    $createRight = $user->rights->fournisseur->commande->creer;
1926
-		}
1927
-		elseif($object->element == 'invoice_supplier' )
2018
+		} elseif($object->element == 'invoice_supplier' )
1928 2019
 		{
1929 2020
 		    $createRight = $user->rights->fournisseur->facture->creer;
1930 2021
 		}
1931 2022
 		
1932 2023
 		if($line->special_code!=$this->module_number || $line->product_type!=9) {
1933 2024
 			null;
1934
-		}	
1935
-		else if (in_array('invoicecard',$contexts) || in_array('invoicesuppliercard',$contexts) || in_array('propalcard',$contexts) || in_array('supplier_proposalcard',$contexts) || in_array('ordercard',$contexts) || in_array('ordersuppliercard',$contexts) || in_array('invoicereccard',$contexts)) 
2025
+		} else if (in_array('invoicecard',$contexts) || in_array('invoicesuppliercard',$contexts) || in_array('propalcard',$contexts) || in_array('supplier_proposalcard',$contexts) || in_array('ordercard',$contexts) || in_array('ordersuppliercard',$contexts) || in_array('invoicereccard',$contexts)) 
1936 2026
         {
1937
-			if($object->element=='facture')$idvar = 'facid';
1938
-			else $idvar='id';
2027
+			if($object->element=='facture') {
2028
+				$idvar = 'facid';
2029
+			} else {
2030
+				$idvar='id';
2031
+			}
1939 2032
 			
1940 2033
 			if((float)DOL_VERSION <= 3.4)
1941 2034
 			{
@@ -1961,22 +2054,44 @@  discard block
 block discarded – undo
1961 2054
 				<?php
1962 2055
 			}
1963 2056
 			
1964
-			if(empty($line->description)) $line->description = $line->desc;
2057
+			if(empty($line->description)) {
2058
+				$line->description = $line->desc;
2059
+			}
1965 2060
 			
1966 2061
 			$colspan = 5;
1967
-			if($object->element == 'facturerec' ) $colspan = 3;
1968
-			if($object->element == 'order_supplier') $colspan = 3;
1969
-			if($object->element == 'invoice_supplier') $colspan = 4;
1970
-			if($object->element == 'supplier_proposal') $colspan = 4;
2062
+			if($object->element == 'facturerec' ) {
2063
+				$colspan = 3;
2064
+			}
2065
+			if($object->element == 'order_supplier') {
2066
+				$colspan = 3;
2067
+			}
2068
+			if($object->element == 'invoice_supplier') {
2069
+				$colspan = 4;
2070
+			}
2071
+			if($object->element == 'supplier_proposal') {
2072
+				$colspan = 4;
2073
+			}
1971 2074
 			if(!empty($conf->multicurrency->enabled) && ((float) DOL_VERSION < 8.0 || $object->multicurrency_code != $conf->currency)) {
1972 2075
 				$colspan++; // Colonne PU Devise
1973 2076
 			}
1974
-			if($object->element == 'commande' && $object->statut < 3 && !empty($conf->shippableorder->enabled)) $colspan++;
1975
-			if(!empty($conf->margin->enabled)) $colspan++;
1976
-			if(!empty($conf->global->DISPLAY_MARGIN_RATES)) $colspan++;
1977
-			if(!empty($conf->global->DISPLAY_MARK_RATES)) $colspan++;
1978
-			if($object->element == 'facture' && !empty($conf->global->INVOICE_USE_SITUATION) && $object->type == Facture::TYPE_SITUATION) $colspan++;
1979
-			if(!empty($conf->global->PRODUCT_USE_UNITS)) $colspan++;
2077
+			if($object->element == 'commande' && $object->statut < 3 && !empty($conf->shippableorder->enabled)) {
2078
+				$colspan++;
2079
+			}
2080
+			if(!empty($conf->margin->enabled)) {
2081
+				$colspan++;
2082
+			}
2083
+			if(!empty($conf->global->DISPLAY_MARGIN_RATES)) {
2084
+				$colspan++;
2085
+			}
2086
+			if(!empty($conf->global->DISPLAY_MARK_RATES)) {
2087
+				$colspan++;
2088
+			}
2089
+			if($object->element == 'facture' && !empty($conf->global->INVOICE_USE_SITUATION) && $object->type == Facture::TYPE_SITUATION) {
2090
+				$colspan++;
2091
+			}
2092
+			if(!empty($conf->global->PRODUCT_USE_UNITS)) {
2093
+				$colspan++;
2094
+			}
1980 2095
 					
1981 2096
 			/* Titre */
1982 2097
 			//var_dump($line);
@@ -1989,23 +2104,36 @@  discard block
 block discarded – undo
1989 2104
 			<tr <?php echo $bc[$var]; $var=!$var; echo $data; ?> rel="subtotal" id="row-<?php echo $line->id ?>" style="<?php
1990 2105
 					if (!empty($conf->global->SUBTOTAL_USE_NEW_FORMAT))
1991 2106
 					{
1992
-						if($line->qty==99) print 'background:#adadcf';
1993
-						else if($line->qty==98) print 'background:#ddddff;';
1994
-						else if($line->qty<=97 && $line->qty>=91) print 'background:#eeeeff;';
1995
-						else if($line->qty==1) print 'background:#adadcf;';
1996
-						else if($line->qty==2) print 'background:#ddddff;';
1997
-						else if($line->qty==50) print '';
1998
-						else print 'background:#eeeeff;';
2107
+						if($line->qty==99) {
2108
+							print 'background:#adadcf';
2109
+						} else if($line->qty==98) {
2110
+							print 'background:#ddddff;';
2111
+						} else if($line->qty<=97 && $line->qty>=91) {
2112
+							print 'background:#eeeeff;';
2113
+						} else if($line->qty==1) {
2114
+							print 'background:#adadcf;';
2115
+						} else if($line->qty==2) {
2116
+							print 'background:#ddddff;';
2117
+						} else if($line->qty==50) {
2118
+							print '';
2119
+						} else {
2120
+							print 'background:#eeeeff;';
2121
+						}
1999 2122
 
2000 2123
 						//A compléter si on veux plus de nuances de couleurs avec les niveau 4,5,6,7,8 et 9
2001
-					}
2002
-					else 
2124
+					} else 
2003 2125
 					{
2004
-						if($line->qty==99) print 'background:#ddffdd';
2005
-						else if($line->qty==98) print 'background:#ddddff;';
2006
-						else if($line->qty==2) print 'background:#eeeeff; ';
2007
-						else if($line->qty==50) print '';
2008
-						else print 'background:#eeffee;' ;
2126
+						if($line->qty==99) {
2127
+							print 'background:#ddffdd';
2128
+						} else if($line->qty==98) {
2129
+							print 'background:#ddddff;';
2130
+						} else if($line->qty==2) {
2131
+							print 'background:#eeeeff; ';
2132
+						} else if($line->qty==50) {
2133
+							print '';
2134
+						} else {
2135
+							print 'background:#eeffee;' ;
2136
+						}
2009 2137
 					}
2010 2138
 
2011 2139
 			?>;">
@@ -2032,13 +2160,11 @@  discard block
 block discarded – undo
2032 2160
 							$qty_displayed = $line->qty;
2033 2161
 							print img_picto('', 'subsubtotal@subtotal').'<span style="font-size:9px;margin-left:-3px;color:#0075DE;">'.$qty_displayed.'</span>&nbsp;&nbsp;';
2034 2162
 							
2035
-						}
2036
-						else if (TSubtotal::isSubtotal($line))
2163
+						} else if (TSubtotal::isSubtotal($line))
2037 2164
 						{
2038 2165
 							$qty_displayed = 100 - $line->qty;
2039 2166
 							print img_picto('', 'subsubtotal2@subtotal').'<span style="font-size:9px;margin-left:-1px;color:#0075DE;">'.$qty_displayed.'</span>&nbsp;&nbsp;';
2040
-						}
2041
-						else
2167
+						} else
2042 2168
 						{
2043 2169
 							$isFreeText = true;
2044 2170
 						}
@@ -2059,9 +2185,13 @@  discard block
 block discarded – undo
2059 2185
 						}
2060 2186
 
2061 2187
 						$readonlyForSituation = '';
2062
-						if (!empty($object->situation_cycle_ref) && $object->situation_counter > 1) $readonlyForSituation = 'readonly';
2188
+						if (!empty($object->situation_cycle_ref) && $object->situation_counter > 1) {
2189
+							$readonlyForSituation = 'readonly';
2190
+						}
2063 2191
 						
2064
-						if (!$isFreeText) echo '<input type="text" name="line-title" id-line="'.$line->id.'" value="'.$newlabel.'" size="80" '.$readonlyForSituation.'/>&nbsp;';
2192
+						if (!$isFreeText) {
2193
+							echo '<input type="text" name="line-title" id-line="'.$line->id.'" value="'.$newlabel.'" size="80" '.$readonlyForSituation.'/>&nbsp;';
2194
+						}
2065 2195
 						
2066 2196
 						if (!empty($conf->global->SUBTOTAL_USE_NEW_FORMAT) && (TSubtotal::isTitle($line) || TSubtotal::isSubtotal($line)) )
2067 2197
 						{
@@ -2069,8 +2199,12 @@  discard block
 block discarded – undo
2069 2199
 							for ($j=1; $j<10; $j++)
2070 2200
 							{
2071 2201
 								if (!empty($readonlyForSituation)) {
2072
-									if ($qty_displayed == $j) $select .= '<option selected="selected" value="'.$j.'">'.$langs->trans('Level').' '.$j.'</option>';
2073
-								} else $select .= '<option '.($qty_displayed == $j ? 'selected="selected"' : '').' value="'.$j.'">'.$langs->trans('Level').' '.$j.'</option>';
2202
+									if ($qty_displayed == $j) {
2203
+										$select .= '<option selected="selected" value="'.$j.'">'.$langs->trans('Level').' '.$j.'</option>';
2204
+									}
2205
+								} else {
2206
+									$select .= '<option '.($qty_displayed == $j ? 'selected="selected"' : '').' value="'.$j.'">'.$langs->trans('Level').' '.$j.'</option>';
2207
+								}
2074 2208
 							}
2075 2209
 							$select .= '</select>&nbsp;';
2076 2210
 
@@ -2090,7 +2224,9 @@  discard block
 block discarded – undo
2090 2224
                             echo '<div>';
2091 2225
                             echo '<label for="subtotal_tva_tx">'.$form->textwithpicto($langs->trans('subtotal_apply_default_tva'), $langs->trans('subtotal_apply_default_tva_help')).'</label>';
2092 2226
                             echo '<select id="subtotal_tva_tx" name="subtotal_tva_tx" class="flat"><option selected="selected" value="">-</option>';
2093
-                            if (empty($readonlyForSituation)) echo str_replace('selected', '', $form->load_tva('subtotal_tva_tx', '', $parameters['seller'], $parameters['buyer'], 0, 0, '', true));
2227
+                            if (empty($readonlyForSituation)) {
2228
+                            	echo str_replace('selected', '', $form->load_tva('subtotal_tva_tx', '', $parameters['seller'], $parameters['buyer'], 0, 0, '', true));
2229
+                            }
2094 2230
                             echo '</select>';
2095 2231
                             echo '</div>';
2096 2232
 
@@ -2109,8 +2245,9 @@  discard block
 block discarded – undo
2109 2245
                             echo '<input style="vertical-align:sub;"  type="checkbox" name="line-showReduc" id="subtotal-showReduc" value="1" '.(($line->array_options['options_show_reduc'] > 0) ? 'checked="checked"' : '') .' />&nbsp;';
2110 2246
                             echo '<label for="subtotal-showReduc">'.$langs->trans('ShowReducOnSubtotalBlock').'</label>';
2111 2247
                             echo '</div>';
2248
+                        } else if ($isFreeText) {
2249
+                        	echo TSubtotal::getFreeTextHtml($line, (bool) $readonlyForSituation);
2112 2250
                         }
2113
-                        else if ($isFreeText) echo TSubtotal::getFreeTextHtml($line, (bool) $readonlyForSituation);
2114 2251
 						echo '</div>';
2115 2252
 
2116 2253
 						if($line->qty<10) {
@@ -2130,8 +2267,7 @@  discard block
 block discarded – undo
2130 2267
 							$doleditor->Create();
2131 2268
 						}
2132 2269
 						
2133
-					}
2134
-					else {
2270
+					} else {
2135 2271
 
2136 2272
 						 if ($conf->global->SUBTOTAL_USE_NEW_FORMAT)
2137 2273
 						 {
@@ -2139,14 +2275,19 @@  discard block
 block discarded – undo
2139 2275
 							{
2140 2276
 								echo str_repeat('&nbsp;&nbsp;&nbsp;', $line->qty-1);
2141 2277
 								
2142
-								if (TSubtotal::isTitle($line)) print img_picto('', 'subtotal@subtotal').'<span style="font-size:9px;margin-left:-3px;">'.$line->qty.'</span>&nbsp;&nbsp;';
2143
-								else print img_picto('', 'subtotal2@subtotal').'<span style="font-size:9px;margin-left:-1px;">'.(100-$line->qty).'</span>&nbsp;&nbsp;';
2278
+								if (TSubtotal::isTitle($line)) {
2279
+									print img_picto('', 'subtotal@subtotal').'<span style="font-size:9px;margin-left:-3px;">'.$line->qty.'</span>&nbsp;&nbsp;';
2280
+								} else {
2281
+									print img_picto('', 'subtotal2@subtotal').'<span style="font-size:9px;margin-left:-1px;">'.(100-$line->qty).'</span>&nbsp;&nbsp;';
2282
+								}
2144 2283
 							}
2145
-						 }
2146
-						 else 
2284
+						 } else 
2147 2285
 						 {
2148
-							if($line->qty<=1) print img_picto('', 'subtotal@subtotal');
2149
-							else if($line->qty==2) print img_picto('', 'subsubtotal@subtotal').'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'; 
2286
+							if($line->qty<=1) {
2287
+								print img_picto('', 'subtotal@subtotal');
2288
+							} else if($line->qty==2) {
2289
+								print img_picto('', 'subsubtotal@subtotal').'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
2290
+							}
2150 2291
 						 }
2151 2292
 						 
2152 2293
 						 
@@ -2156,21 +2297,26 @@  discard block
 block discarded – undo
2156 2297
 						 $titleStyleUnderline =  strpos($conf->global->SUBTOTAL_TITLE_STYLE, 'U') === false ? '' : ' text-decoration: underline;';
2157 2298
 						 
2158 2299
 						 if (empty($line->label)) {
2159
-							if ($line->qty >= 91 && $line->qty <= 99 && $conf->global->SUBTOTAL_USE_NEW_FORMAT) print  $line->description.' '.$this->getTitle($object, $line);
2160
-							else print  $line->description;
2161
-						 } 
2162
-						 else {
2300
+							if ($line->qty >= 91 && $line->qty <= 99 && $conf->global->SUBTOTAL_USE_NEW_FORMAT) {
2301
+								print  $line->description.' '.$this->getTitle($object, $line);
2302
+							} else {
2303
+								print  $line->description;
2304
+							}
2305
+						 } else {
2163 2306
 
2164 2307
 							if (! empty($conf->global->PRODUIT_DESC_IN_FORM) && !empty($line->description)) {
2165 2308
 								print '<span class="subtotal_label" style="'.$titleStyleItalic.$titleStyleBold.$titleStyleUnderline.'" >'.$line->label.'</span><br><div class="subtotal_desc">'.dol_htmlentitiesbr($line->description).'</div>';
2166
-							}
2167
-							else{
2309
+							} else{
2168 2310
 								print '<span class="subtotal_label classfortooltip '.$titleStyleItalic.$titleStyleBold.$titleStyleUnderline.'" title="'.$line->description.'">'.$line->label.'</span>';    
2169 2311
 							}
2170 2312
 
2171 2313
 						 } 
2172
-						if($line->qty>90) print ' : ';
2173
-						if($line->info_bits > 0) echo img_picto($langs->trans('Pagebreak'), 'pagebreak@subtotal');
2314
+						if($line->qty>90) {
2315
+							print ' : ';
2316
+						}
2317
+						if($line->info_bits > 0) {
2318
+							echo img_picto($langs->trans('Pagebreak'), 'pagebreak@subtotal');
2319
+						}
2174 2320
 
2175 2321
 						 
2176 2322
 
@@ -2213,11 +2359,12 @@  discard block
 block discarded – undo
2213 2359
 						</script>
2214 2360
 						<?php
2215 2361
 						
2216
-					}
2217
-					else{
2362
+					} else{
2218 2363
 						if ($object->statut == 0  && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_DUPLICATE_BLOCK) && $object->element !== 'invoice_supplier')
2219 2364
 						{
2220
-							if(TSubtotal::isTitle($line) && ($object->situation_counter == 1 || !$object->situation_cycle_ref) ) echo '<a href="'.$_SERVER['PHP_SELF'].'?'.$idvar.'='.$object->id.'&action=duplicate&lineid='.$line->id.'">'. img_picto($langs->trans('Duplicate'), 'duplicate@subtotal').'</a>';
2365
+							if(TSubtotal::isTitle($line) && ($object->situation_counter == 1 || !$object->situation_cycle_ref) ) {
2366
+								echo '<a href="'.$_SERVER['PHP_SELF'].'?'.$idvar.'='.$object->id.'&action=duplicate&lineid='.$line->id.'">'. img_picto($langs->trans('Duplicate'), 'duplicate@subtotal').'</a>';
2367
+							}
2221 2368
 						}
2222 2369
 
2223 2370
 						if ($object->statut == 0  && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_EDIT_BLOCK)) 
@@ -2306,7 +2453,9 @@  discard block
 block discarded – undo
2306 2453
 				$extralabelsline = $extrafieldsline->fetch_name_optionals_label($object->table_element_line);
2307 2454
 				
2308 2455
 				$colspan+=3; $mode = 'view';
2309
-				if($action === 'editline' && $line->rowid == GETPOST('lineid')) $mode = 'edit';
2456
+				if($action === 'editline' && $line->rowid == GETPOST('lineid')) {
2457
+					$mode = 'edit';
2458
+				}
2310 2459
 				
2311 2460
 				$ex_element = $line->element;
2312 2461
 				$line->element = 'tr_extrafield_title '.$line->element; // Pour pouvoir manipuler ces tr
@@ -2488,10 +2637,9 @@  discard block
 block discarded – undo
2488 2637
 	    
2489 2638
 	    if(TSubtotal::isTitle($line)){
2490 2639
 	        $ThtmlData['data-issubtotal'] = 'title';
2491
-	    }elseif(TSubtotal::isSubtotal($line)){
2640
+	    } elseif(TSubtotal::isSubtotal($line)){
2492 2641
 	        $ThtmlData['data-issubtotal'] = 'subtotal';
2493
-	    }
2494
-	    else{
2642
+	    } else{
2495 2643
 	        $ThtmlData['data-issubtotal'] = 'freetext';
2496 2644
 	    }
2497 2645
 	    
@@ -2501,7 +2649,9 @@  discard block
 block discarded – undo
2501 2649
 	    
2502 2650
 	    // hook 
2503 2651
 	    $reshook = $hookmanager->executeHooks('subtotalLineHtmlData',$parameters,$object,$action); // Note that $action and $object may have been modified by hook
2504
-	    if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
2652
+	    if ($reshook < 0) {
2653
+	    	setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
2654
+	    }
2505 2655
 	    if ($reshook>0)
2506 2656
 	    {
2507 2657
 	        $ThtmlData = $hookmanager->resArray;
Please login to merge, or discard this patch.
class/subtotal.class.php 2 patches
Spacing   +192 added lines, -192 removed lines patch added patch discarded remove patch
@@ -5,28 +5,28 @@  discard block
 block discarded – undo
5 5
 	
6 6
 	static $module_number = 104777;
7 7
 	
8
-	static function addSubTotalLine(&$object, $label, $qty, $rang=-1) {
8
+	static function addSubTotalLine(&$object, $label, $qty, $rang = -1) {
9 9
 		
10 10
 		$res = 0;
11 11
 		
12
-		if( (float)DOL_VERSION <= 3.4 ) {
12
+		if ((float) DOL_VERSION <= 3.4) {
13 13
 			/**
14 14
 			 * @var $object Facture
15 15
 			 */
16
-			if($object->element=='facture') $res =  $object->addline($object->id, $label, 0,$qty,0,0,0,0,0,'','',0,0,'','HT',0,9,-1, TSubtotal::$module_number);
16
+			if ($object->element == 'facture') $res = $object->addline($object->id, $label, 0, $qty, 0, 0, 0, 0, 0, '', '', 0, 0, '', 'HT', 0, 9, -1, TSubtotal::$module_number);
17 17
 			/**
18 18
 			 * @var $object Propal
19 19
 			 */
20
-			else if($object->element=='propal') $res =  $object->addline($object->id,$label, 0,$qty,0,0,0,0,0,'HT',0,0,9,-1, TSubtotal::$module_number);
20
+			else if ($object->element == 'propal') $res = $object->addline($object->id, $label, 0, $qty, 0, 0, 0, 0, 0, 'HT', 0, 0, 9, -1, TSubtotal::$module_number);
21 21
 			/**
22 22
 			 * @var $object Commande
23 23
 			 */
24
-			else if($object->element=='commande') $res =  $object->addline($object->id,$label, 0,$qty,0,0,0,0,0,0,0,'HT',0,'','',9,-1, TSubtotal::$module_number);
24
+			else if ($object->element == 'commande') $res = $object->addline($object->id, $label, 0, $qty, 0, 0, 0, 0, 0, 0, 0, 'HT', 0, '', '', 9, -1, TSubtotal::$module_number);
25 25
 
26 26
 		}
27 27
 		else {
28 28
 			$desc = '';
29
-			if ((float) DOL_VERSION < 6  || $qty==50) {
29
+			if ((float) DOL_VERSION < 6 || $qty == 50) {
30 30
 				$desc = $label;
31 31
 				$label = '';
32 32
 			}
@@ -34,40 +34,40 @@  discard block
 block discarded – undo
34 34
 			/**
35 35
 			 * @var $object Facture
36 36
 			 */
37
-			if($object->element=='facture') $res =  $object->addline($desc, 0,$qty,0,0,0,0,0,'','',0,0,'','HT',0,9,$rang, TSubtotal::$module_number, '', 0, 0, null, 0, $label);
37
+			if ($object->element == 'facture') $res = $object->addline($desc, 0, $qty, 0, 0, 0, 0, 0, '', '', 0, 0, '', 'HT', 0, 9, $rang, TSubtotal::$module_number, '', 0, 0, null, 0, $label);
38 38
 			/**
39 39
 			 * @var $object Facture fournisseur
40 40
 			 */
41
-			else if($object->element=='invoice_supplier') {
41
+			else if ($object->element == 'invoice_supplier') {
42 42
 			    $object->special_code = TSubtotal::$module_number;
43 43
 			    $rang = $object->line_max() + 1;
44
-			    if($qty==50) $res = $object->addline($desc,0,0,0,0,$qty,0,0,'','',0,0,'HT',9,$rang);
45
-			    else $res = $object->addline($label,0,0,0,0,$qty,0,0,'','',0,0,'HT',9,$rang);
44
+			    if ($qty == 50) $res = $object->addline($desc, 0, 0, 0, 0, $qty, 0, 0, '', '', 0, 0, 'HT', 9, $rang);
45
+			    else $res = $object->addline($label, 0, 0, 0, 0, $qty, 0, 0, '', '', 0, 0, 'HT', 9, $rang);
46 46
 			}
47 47
 			/**
48 48
 			 * @var $object Propal
49 49
 			 */
50
-			else if($object->element=='propal') $res = $object->addline($desc, 0,$qty,0,0,0,0,0,'HT',0,0,9,$rang, TSubtotal::$module_number, 0, 0, 0, $label);
50
+			else if ($object->element == 'propal') $res = $object->addline($desc, 0, $qty, 0, 0, 0, 0, 0, 'HT', 0, 0, 9, $rang, TSubtotal::$module_number, 0, 0, 0, $label);
51 51
 			/**
52 52
 			 * @var $object Propal Fournisseur
53 53
 			 */
54
-			else if($object->element=='supplier_proposal') $res = $object->addline($desc, 0,$qty,0,0,0,0,0,'HT',0,0,9,$rang, TSubtotal::$module_number, 0, 0, 0, $label);
54
+			else if ($object->element == 'supplier_proposal') $res = $object->addline($desc, 0, $qty, 0, 0, 0, 0, 0, 'HT', 0, 0, 9, $rang, TSubtotal::$module_number, 0, 0, 0, $label);
55 55
 			
56 56
 			/**
57 57
 			 * @var $object Commande
58 58
 			 */
59
-			else if($object->element=='commande') $res =  $object->addline($desc, 0,$qty,0,0,0,0,0,0,0,'HT',0,'','',9,$rang, TSubtotal::$module_number, 0, null, 0, $label);
59
+			else if ($object->element == 'commande') $res = $object->addline($desc, 0, $qty, 0, 0, 0, 0, 0, 0, 0, 'HT', 0, '', '', 9, $rang, TSubtotal::$module_number, 0, null, 0, $label);
60 60
 			/**
61 61
 			 * @var $object Commande fournisseur
62 62
 			 */
63
-			else if($object->element=='order_supplier') {
63
+			else if ($object->element == 'order_supplier') {
64 64
 			    $object->special_code = TSubtotal::$module_number;
65
-			    $res = $object->addline($label, 0,$qty,0,0,0,0,0,'',0,'HT', 0, 9);
65
+			    $res = $object->addline($label, 0, $qty, 0, 0, 0, 0, 0, '', 0, 'HT', 0, 9);
66 66
 			}
67 67
 			/**
68 68
 			 * @var $object Facturerec
69 69
 			 */
70
-			else if($object->element=='facturerec') $res =  $object->addline($desc, 0,$qty, 0, 0, 0, 0, 0, 'HT', 0, '', 0, 9, $rang, TSubtotal::$module_number,$label); 
70
+			else if ($object->element == 'facturerec') $res = $object->addline($desc, 0, $qty, 0, 0, 0, 0, 0, 'HT', 0, '', 0, 9, $rang, TSubtotal::$module_number, $label); 
71 71
 			
72 72
 		}
73 73
 	
@@ -78,20 +78,20 @@  discard block
 block discarded – undo
78 78
 
79 79
 	public static function generateDoc(&$object)
80 80
 	{
81
-		global $conf,$langs,$db;
81
+		global $conf, $langs, $db;
82 82
 		
83 83
 		if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE))
84 84
 		{
85
-			$hidedetails = (GETPOST('hidedetails', 'int') ? GETPOST('hidedetails', 'int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS) ? 1 : 0));
86
-			$hidedesc = (GETPOST('hidedesc', 'int') ? GETPOST('hidedesc', 'int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0));
87
-			$hideref = (GETPOST('hideref', 'int') ? GETPOST('hideref', 'int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0));
85
+			$hidedetails = (GETPOST('hidedetails', 'int') ? GETPOST('hidedetails', 'int') : (!empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS) ? 1 : 0));
86
+			$hidedesc = (GETPOST('hidedesc', 'int') ? GETPOST('hidedesc', 'int') : (!empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0));
87
+			$hideref = (GETPOST('hideref', 'int') ? GETPOST('hideref', 'int') : (!empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0));
88 88
 			
89 89
 			// Define output language
90 90
 			$outputlangs = $langs;
91 91
 			$newlang = GETPOST('lang_id', 'alpha');
92
-			if (! empty($conf->global->MAIN_MULTILANGS) && empty($newlang))
92
+			if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang))
93 93
 				$newlang = !empty($object->client) ? $object->client->default_lang : $object->thirdparty->default_lang;
94
-			if (! empty($newlang)) {
94
+			if (!empty($newlang)) {
95 95
 				$outputlangs = new Translate("", $conf);
96 96
 				$outputlangs->setDefaultLang($newlang);
97 97
 			}
@@ -105,7 +105,7 @@  discard block
 block discarded – undo
105 105
 			}
106 106
 			else
107 107
 			{
108
-				if ($object->element!= 'facturerec') $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
108
+				if ($object->element != 'facturerec') $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
109 109
 			}
110 110
 		}
111 111
 	}
@@ -117,11 +117,11 @@  discard block
 block discarded – undo
117 117
 	 * @param type $rang_start
118 118
 	 * @param type $move_to
119 119
 	 */
120
-	public static function updateRang(&$object, $rang_start, $move_to=1)
120
+	public static function updateRang(&$object, $rang_start, $move_to = 1)
121 121
 	{
122 122
 		if (!class_exists('GenericObject')) require_once DOL_DOCUMENT_ROOT.'/core/class/genericobject.class.php';
123 123
 		
124
-		$row=new GenericObject($object->db);
124
+		$row = new GenericObject($object->db);
125 125
 		$row->table_element_line = $object->table_element_line;
126 126
 		$row->fk_element = $object->fk_element;
127 127
 		$row->id = $object->id;
@@ -130,7 +130,7 @@  discard block
 block discarded – undo
130 130
 		{
131 131
 			if ($line->rang < $rang_start) continue;
132 132
 			
133
-			$row->updateRangOfLine($line->id, $line->rang+$move_to);
133
+			$row->updateRangOfLine($line->id, $line->rang + $move_to);
134 134
 		}
135 135
 	}
136 136
 	
@@ -159,7 +159,7 @@  discard block
 block discarded – undo
159 159
 			{
160 160
 				if ($rang_to_add != -1) self::updateRang($object, $rang_to_add);
161 161
 				
162
-				self::addSubTotalLine($object, $langs->trans('SubTotal'), 100-$title_niveau, $rang_to_add);
162
+				self::addSubTotalLine($object, $langs->trans('SubTotal'), 100 - $title_niveau, $rang_to_add);
163 163
 				
164 164
 				$object->lines[] = $object->line; // ajout de la ligne dans le tableau de ligne (Dolibarr ne le fait pas)
165 165
 				if ($rang_to_add != -1) 
@@ -171,14 +171,14 @@  discard block
 block discarded – undo
171 171
 		}
172 172
 	}
173 173
 	
174
-	public static function addTitle(&$object, $label, $level, $rang=-1)
174
+	public static function addTitle(&$object, $label, $level, $rang = -1)
175 175
 	{
176 176
 		self::addSubTotalLine($object, $label, $level, $rang);
177 177
 	}
178 178
 	
179
-	public static function addTotal(&$object, $label, $level, $rang=-1)
179
+	public static function addTotal(&$object, $label, $level, $rang = -1)
180 180
 	{
181
-		self::addSubTotalLine($object, $label, (100-$level), $rang);
181
+		self::addSubTotalLine($object, $label, (100 - $level), $rang);
182 182
 	}
183 183
 
184 184
 	/**
@@ -189,7 +189,7 @@  discard block
 block discarded – undo
189 189
 	 * 
190 190
 	 * @return array
191 191
 	 */
192
-	public static function getAllTitleWithoutTotalFromDocument(&$object, $get_block_total=false)
192
+	public static function getAllTitleWithoutTotalFromDocument(&$object, $get_block_total = false)
193 193
 	{
194 194
 		$TTitle = self::getAllTitleFromDocument($object, $get_block_total);
195 195
 		
@@ -210,7 +210,7 @@  discard block
 block discarded – undo
210 210
 	 * @param boolean								$return_rang_on_false	si true alors renvoi le rang où devrait ce trouver le sous-total
211 211
 	 * @return boolean
212 212
 	 */
213
-	public static function titleHasTotalLine(&$object, &$title_line, $strict_mode=false, $return_rang_on_false=false)
213
+	public static function titleHasTotalLine(&$object, &$title_line, $strict_mode = false, $return_rang_on_false = false)
214 214
 	{
215 215
 		if (empty($object->lines) || !is_array($object->lines)) return false;
216 216
 		
@@ -236,7 +236,7 @@  discard block
 block discarded – undo
236 236
 		return ($return_rang_on_false) ? -1 : false;
237 237
 	}
238 238
 	
239
-	public static function getAllTitleFromDocument(&$object, $get_block_total=false)
239
+	public static function getAllTitleFromDocument(&$object, $get_block_total = false)
240 240
 	{
241 241
 		$TRes = array();
242 242
 		if (!empty($object->lines))
@@ -357,19 +357,19 @@  discard block
 block discarded – undo
357 357
 		return false;
358 358
 	}
359 359
 	
360
-	public static function isTitle(&$line, $level=-1)
360
+	public static function isTitle(&$line, $level = -1)
361 361
 	{
362 362
 		$res = $line->special_code == self::$module_number && $line->product_type == 9 && $line->qty <= 9;
363
-		if($res && $level > -1) {
363
+		if ($res && $level > -1) {
364 364
 			return $line->qty == $level;
365 365
 		} else return $res;
366 366
 		
367 367
 	}
368 368
 	
369
-	public static function isSubtotal(&$line, $level=-1)
369
+	public static function isSubtotal(&$line, $level = -1)
370 370
 	{
371 371
 	    $res = $line->special_code == self::$module_number && $line->product_type == 9 && $line->qty >= 90;
372
-	    if($res && $level > -1) {
372
+	    if ($res && $level > -1) {
373 373
 	        return self::getNiveau($line) == $level;
374 374
 	    } else return $res;
375 375
 	}
@@ -384,43 +384,43 @@  discard block
 block discarded – undo
384 384
 		return self::isTitle($line) || self::isSubtotal($line) || self::isFreeText($line);
385 385
 	}
386 386
 
387
-	public static function getFreeTextHtml(&$line, $readonly=0)
387
+	public static function getFreeTextHtml(&$line, $readonly = 0)
388 388
 	{
389 389
 		global $conf;
390 390
 		
391 391
 		// Copie du fichier "objectline_edit.tpl.php"
392 392
 		// editeur wysiwyg
393 393
 		require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
394
-		$nbrows=ROWS_2;
395
-		if (! empty($conf->global->MAIN_INPUT_DESC_HEIGHT)) $nbrows=$conf->global->MAIN_INPUT_DESC_HEIGHT;
396
-		$enable=(isset($conf->global->FCKEDITOR_ENABLE_DETAILS)?$conf->global->FCKEDITOR_ENABLE_DETAILS:0);
397
-		$toolbarname='dolibarr_details';
398
-		if (! empty($conf->global->FCKEDITOR_ENABLE_DETAILS_FULL)) $toolbarname='dolibarr_notes';
399
-		$text = !empty($line->description)?$line->description:$line->label;
400
-		$doleditor=new DolEditor('line-description',$text,'',164,$toolbarname,'',false,true,$enable,$nbrows,'98%', $readonly);
394
+		$nbrows = ROWS_2;
395
+		if (!empty($conf->global->MAIN_INPUT_DESC_HEIGHT)) $nbrows = $conf->global->MAIN_INPUT_DESC_HEIGHT;
396
+		$enable = (isset($conf->global->FCKEDITOR_ENABLE_DETAILS) ? $conf->global->FCKEDITOR_ENABLE_DETAILS : 0);
397
+		$toolbarname = 'dolibarr_details';
398
+		if (!empty($conf->global->FCKEDITOR_ENABLE_DETAILS_FULL)) $toolbarname = 'dolibarr_notes';
399
+		$text = !empty($line->description) ? $line->description : $line->label;
400
+		$doleditor = new DolEditor('line-description', $text, '', 164, $toolbarname, '', false, true, $enable, $nbrows, '98%', $readonly);
401 401
 		return $doleditor->Create(1);
402 402
 	}
403 403
 	
404
-	public static function duplicateLines(&$object, $lineid, $withBlockLine=false)
404
+	public static function duplicateLines(&$object, $lineid, $withBlockLine = false)
405 405
 	{
406
-		global $db,$user,$conf;
406
+		global $db, $user, $conf;
407 407
 
408 408
 		$createRight = $user->rights->{$object->element}->creer;
409
-		if($object->element == 'facturerec' )
409
+		if ($object->element == 'facturerec')
410 410
 		{
411 411
 		    $object->statut = 0; // hack for facture rec
412 412
 		    $createRight = $user->rights->facture->creer;
413 413
 		}
414
-		elseif($object->element == 'order_supplier' )
414
+		elseif ($object->element == 'order_supplier')
415 415
 		{
416 416
 		    $createRight = $user->rights->fournisseur->commande->creer;
417 417
 		}
418
-		elseif($object->element == 'invoice_supplier' )
418
+		elseif ($object->element == 'invoice_supplier')
419 419
 		{
420 420
 		    $createRight = $user->rights->fournisseur->facture->creer;
421 421
 		}
422 422
 		
423
-		if ($object->statut == 0  && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_DUPLICATE_BLOCK))
423
+		if ($object->statut == 0 && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_DUPLICATE_BLOCK))
424 424
 		{
425 425
 			dol_include_once('/subtotal/lib/subtotal.lib.php');
426 426
 			
@@ -453,7 +453,7 @@  discard block
 block discarded – undo
453 453
 						case 'order_supplier':
454 454
 						    $object->line = $line;
455 455
 						    $object->line->fk_commande = $object->id;
456
-						    $object->line->rang = $object->line_max() +1;
456
+						    $object->line->rang = $object->line_max() + 1;
457 457
 						    $res = $object->line->insert(1);
458 458
 							break;
459 459
 							
@@ -493,7 +493,7 @@  discard block
 block discarded – undo
493 493
 					{
494 494
 						$object->line_from = $line;
495 495
 						// Call trigger
496
-						$result=$object->call_trigger('LINE_DUPLICATE',$user); // $object->line
496
+						$result = $object->call_trigger('LINE_DUPLICATE', $user); // $object->line
497 497
 						if ($result < 0)
498 498
 						{
499 499
 							$object->db->rollback();
@@ -523,7 +523,7 @@  discard block
 block discarded – undo
523 523
 		}
524 524
 	}
525 525
 	
526
-	public static function getLinesFromTitle(&$object, $key_trad, $level=1, $under_title='', $withBlockLine=false, $key_is_id=false)
526
+	public static function getLinesFromTitle(&$object, $key_trad, $level = 1, $under_title = '', $withBlockLine = false, $key_is_id = false)
527 527
 	{
528 528
 		global $langs;
529 529
 		
@@ -535,17 +535,17 @@  discard block
 block discarded – undo
535 535
 		
536 536
 		$TLine = array();
537 537
 		$add_line = false;
538
-		$under_title_found=false;
538
+		$under_title_found = false;
539 539
 		
540 540
 		foreach ($object->lines as $key => &$line)
541 541
 		{
542 542
 			if (!$under_title_found && !empty($TTitle_under_search))
543 543
 			{
544
-				if ($line->product_type == 9 && (in_array($line->desc, $TTitle_under_search) || in_array($line->label, $TTitle_under_search)) ) $under_title_found = true;
544
+				if ($line->product_type == 9 && (in_array($line->desc, $TTitle_under_search) || in_array($line->label, $TTitle_under_search))) $under_title_found = true;
545 545
 			}
546 546
 			else
547 547
 			{
548
-				if ( ($key_is_id && $line->id == $key_trad) || (!$key_is_id && $line->product_type == 9 && $line->qty == $level && (in_array($line->desc, $TTitle_search) || in_array($line->label, $TTitle_search) )))
548
+				if (($key_is_id && $line->id == $key_trad) || (!$key_is_id && $line->product_type == 9 && $line->qty == $level && (in_array($line->desc, $TTitle_search) || in_array($line->label, $TTitle_search))))
549 549
 				{
550 550
 					if ($key_is_id) $level = $line->qty;
551 551
 					
@@ -561,7 +561,7 @@  discard block
 block discarded – undo
561 561
 				
562 562
 				if ($add_line)
563 563
 				{
564
-					if (!$withBlockLine && (self::isTitle($line) || self::isSubtotal($line)) ) continue;
564
+					if (!$withBlockLine && (self::isTitle($line) || self::isSubtotal($line))) continue;
565 565
 					else $TLine[] = $line;
566 566
 				}
567 567
 			}
@@ -570,12 +570,12 @@  discard block
 block discarded – undo
570 570
 		return $TLine;
571 571
 	}
572 572
 	
573
-	public static function getLinesFromTitleId(&$object, $lineid, $withBlockLine=false)
573
+	public static function getLinesFromTitleId(&$object, $lineid, $withBlockLine = false)
574 574
 	{
575 575
 		return self::getLinesFromTitle($object, $lineid, '', '', $withBlockLine, true);
576 576
 	}
577 577
 	
578
-	public static function doUpdateLine(&$object, $rowid, $desc, $pu, $qty, $remise_percent, $date_start, $date_end, $txtva, $type, $txlocaltax1=0, $txlocaltax2=0, $price_base_type='HT', $info_bits=0, $fk_parent_line=0, $skip_update_total=0, $fk_fournprice=null, $pa_ht=0, $label='', $special_code=0, $array_options=0, $situation_percent=0, $fk_unit = null, $notrigger = 0)
578
+	public static function doUpdateLine(&$object, $rowid, $desc, $pu, $qty, $remise_percent, $date_start, $date_end, $txtva, $type, $txlocaltax1 = 0, $txlocaltax2 = 0, $price_base_type = 'HT', $info_bits = 0, $fk_parent_line = 0, $skip_update_total = 0, $fk_fournprice = null, $pa_ht = 0, $label = '', $special_code = 0, $array_options = 0, $situation_percent = 0, $fk_unit = null, $notrigger = 0)
579 579
 	{
580 580
 		$res = 0;
581 581
 		$object->db->begin();
@@ -587,7 +587,7 @@  discard block
 block discarded – undo
587 587
 		        break;
588 588
 		        
589 589
 		    case 'supplier_proposal':
590
-		        $res = $object->updateline($rowid, $pu, $qty, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, $desc, $price_base_type, $info_bits, $special_code, $fk_parent_line, $skip_update_total, $fk_fournprice, $pa_ht, $label, $type, $array_options,'', $fk_unit);
590
+		        $res = $object->updateline($rowid, $pu, $qty, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, $desc, $price_base_type, $info_bits, $special_code, $fk_parent_line, $skip_update_total, $fk_fournprice, $pa_ht, $label, $type, $array_options, '', $fk_unit);
591 591
 		        break;
592 592
 		        
593 593
 			case 'commande':
@@ -616,9 +616,9 @@  discard block
 block discarded – undo
616 616
 				$factureRecLine->fetch($rowid);
617 617
 				$factureRecLine->array_options = $array_options;
618 618
 				$factureRecLine->insertExtraFields();
619
-				$rang=$factureRecLine->rang;
619
+				$rang = $factureRecLine->rang;
620 620
 				
621
-				$fk_product=0; $fk_remise_except=''; $pu_ttc=0;	
621
+				$fk_product = 0; $fk_remise_except = ''; $pu_ttc = 0;	
622 622
 				$res = $object->updateline($rowid, $desc, $pu, $qty, $txtva, $txlocaltax1, $txlocaltax2, $fk_product, $remise_percent, $price_base_type, $info_bits, $fk_remise_except, $pu_ttc, $type, $rang, $special_code, $label, $fk_unit);
623 623
 				break;
624 624
 		}
@@ -634,7 +634,7 @@  discard block
 block discarded – undo
634 634
 		global $db, $object;
635 635
 		
636 636
 		$TTitle = array();
637
-		if(! empty($object->id) && in_array($object->element, array('propal', 'commande', 'facture'))) {}
637
+		if (!empty($object->id) && in_array($object->element, array('propal', 'commande', 'facture'))) {}
638 638
 		else {
639 639
 			if ($origin_line->element == 'propaldet')
640 640
 			{
@@ -714,7 +714,7 @@  discard block
 block discarded – undo
714 714
 	 */
715 715
 	public static function addRecapPage(&$parameters, &$origin_pdf)
716 716
 	{
717
-		global $user,$conf,$langs;
717
+		global $user, $conf, $langs;
718 718
 		
719 719
 		$origin_file = $parameters['file'];
720 720
 		$outputlangs = $parameters['outputlangs'];
@@ -730,21 +730,21 @@  discard block
 block discarded – undo
730 730
 		$objmarge->marge_droite = 10;
731 731
 		
732 732
 		$objectref = dol_sanitizeFileName($object->ref);
733
-		if ($object->element == 'propal') $dir = $conf->propal->dir_output . '/' . $objectref;
734
-		elseif ($object->element == 'commande') $dir = $conf->commande->dir_output . '/' . $objectref;
735
-		elseif ($object->element == 'facture') $dir = $conf->facture->dir_output . '/' . $objectref;
733
+		if ($object->element == 'propal') $dir = $conf->propal->dir_output.'/'.$objectref;
734
+		elseif ($object->element == 'commande') $dir = $conf->commande->dir_output.'/'.$objectref;
735
+		elseif ($object->element == 'facture') $dir = $conf->facture->dir_output.'/'.$objectref;
736 736
 		elseif ($object->element == 'facturerec') return; // no PDF for facturerec
737 737
 		else
738 738
 		{
739 739
 			setEventMessage($langs->trans('warning_subtotal_recap_object_element_unknown', $object->element), 'warnings');
740 740
 			return -1;
741 741
 		}
742
-		$file = $dir . '/' . $objectref . '_recap.pdf';
742
+		$file = $dir.'/'.$objectref.'_recap.pdf';
743 743
 
744 744
 //		$pdf=pdf_getInstance($origin_pdf->format);
745
-		$pdf=pdf_getInstance(array(210, 297)); // Format A4 Portrait
746
-		$default_font_size = pdf_getPDFFontSize($outputlangs);	// Must be after pdf_getInstance
747
-		$pdf->SetAutoPageBreak(1,0);
745
+		$pdf = pdf_getInstance(array(210, 297)); // Format A4 Portrait
746
+		$default_font_size = pdf_getPDFFontSize($outputlangs); // Must be after pdf_getInstance
747
+		$pdf->SetAutoPageBreak(1, 0);
748 748
 	             
749 749
 		if (class_exists('TCPDF'))
750 750
 		{
@@ -753,49 +753,49 @@  discard block
 block discarded – undo
753 753
 		}
754 754
 		$pdf->SetFont(pdf_getPDFFont($outputlangs));
755 755
 		// Set path to the background PDF File
756
-		if (empty($conf->global->MAIN_DISABLE_FPDI) && ! empty($conf->global->MAIN_ADD_PDF_BACKGROUND))
756
+		if (empty($conf->global->MAIN_DISABLE_FPDI) && !empty($conf->global->MAIN_ADD_PDF_BACKGROUND))
757 757
 		{
758 758
 			$pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND);
759 759
 			$tplidx = $pdf->importPage(1);
760 760
 		}
761 761
 
762 762
 		$pdf->Open();
763
-		$pagenb=0;
764
-		$pdf->SetDrawColor(128,128,128);
763
+		$pagenb = 0;
764
+		$pdf->SetDrawColor(128, 128, 128);
765 765
 
766 766
 		$pdf->SetTitle($outputlangs->convToOutputCharset($object->ref));
767 767
 		$pdf->SetSubject($outputlangs->transnoentities("subtotalRecap"));
768 768
 		$pdf->SetCreator("Dolibarr ".DOL_VERSION);
769 769
 		$pdf->SetAuthor($outputlangs->convToOutputCharset($user->getFullName($outputlangs)));
770 770
 		$pdf->SetKeyWords($outputlangs->convToOutputCharset($object->ref)." ".$outputlangs->transnoentities("subtotalRecap")." ".$outputlangs->convToOutputCharset($object->thirdparty->name));
771
-		if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false);
771
+		if (!empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false);
772 772
 
773
-		$pdf->SetMargins($objmarge->marge_gauche, $objmarge->marge_haute, $objmarge->marge_droite);   // Left, Top, Right
773
+		$pdf->SetMargins($objmarge->marge_gauche, $objmarge->marge_haute, $objmarge->marge_droite); // Left, Top, Right
774 774
 
775
-		$pagenb=0;
776
-		$pdf->SetDrawColor(128,128,128);
775
+		$pagenb = 0;
776
+		$pdf->SetDrawColor(128, 128, 128);
777 777
 
778 778
 			
779 779
 		// New page
780 780
 		$pdf->AddPage();
781
-		if (! empty($tplidx)) $pdf->useTemplate($tplidx);
781
+		if (!empty($tplidx)) $pdf->useTemplate($tplidx);
782 782
 		$pagenb++;
783 783
 		
784 784
 		
785 785
 		self::pagehead($objmarge, $pdf, $object, 1, $outputlangs);
786
-		$pdf->SetFont('','', $default_font_size - 1);
787
-		$pdf->MultiCell(0, 3, '');		// Set interline to 3
788
-		$pdf->SetTextColor(0,0,0);
786
+		$pdf->SetFont('', '', $default_font_size - 1);
787
+		$pdf->MultiCell(0, 3, ''); // Set interline to 3
788
+		$pdf->SetTextColor(0, 0, 0);
789 789
 		
790
-		$heightforinfotot = 25;	// Height reserved to output the info and total part
791
-		$heightforfooter = $objmarge->marge_basse + 8;	// Height reserved to output the footer (value include bottom margin)
790
+		$heightforinfotot = 25; // Height reserved to output the info and total part
791
+		$heightforfooter = $objmarge->marge_basse + 8; // Height reserved to output the footer (value include bottom margin)
792 792
 		
793 793
 		$posx_designation = 25;
794 794
 		$posx_options = 150;
795 795
 		$posx_montant = 170;
796 796
 		
797 797
 		$tab_top = 72;
798
-		$tab_top_newpage = (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)?72:20); // TODO à vérifier
798
+		$tab_top_newpage = (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD) ? 72 : 20); // TODO à vérifier
799 799
 		
800 800
 		$TTot = array('total_ht' => 0, 'total_ttc' => 0, 'TTotal_tva' => array());
801 801
 		
@@ -809,14 +809,14 @@  discard block
 block discarded – undo
809 809
 			$nexY = $tab_top + 10;
810 810
 			
811 811
 			$nblignes = count($TLine);
812
-			foreach($TLine as $i => &$line)
812
+			foreach ($TLine as $i => &$line)
813 813
 			{
814 814
 				$curY = $nexY;
815 815
 				
816 816
 				if (self::getNiveau($line) == 1) 
817 817
 				{
818
-					$pdf->SetFont('','B', $default_font_size - 1);   // Into loop to work with multipage
819
-					$curY+=2;
818
+					$pdf->SetFont('', 'B', $default_font_size - 1); // Into loop to work with multipage
819
+					$curY += 2;
820 820
 					
821 821
 					$TTot['total_ht'] += $line->total_ht;
822 822
 					$TTot['total_tva'] += $line->total_tva;
@@ -835,67 +835,67 @@  discard block
 block discarded – undo
835 835
 						$TTot['TTotal_tva_multicurrency'][$tx] += $amount;
836 836
 					}	
837 837
 				}
838
-				else $pdf->SetFont('','', $default_font_size - 1);   // Into loop to work with multipage
838
+				else $pdf->SetFont('', '', $default_font_size - 1); // Into loop to work with multipage
839 839
 				
840
-				$pdf->SetTextColor(0,0,0);
840
+				$pdf->SetTextColor(0, 0, 0);
841 841
 				
842 842
 				$pdf->setTopMargin($tab_top_newpage + 10);
843
-				$pdf->setPageOrientation('', 1, $heightforfooter+$heightforinfotot);	// The only function to edit the bottom margin of current page to set it.
844
-				$pageposbefore=$pdf->getPage();
843
+				$pdf->setPageOrientation('', 1, $heightforfooter + $heightforinfotot); // The only function to edit the bottom margin of current page to set it.
844
+				$pageposbefore = $pdf->getPage();
845 845
 				
846
-				$showpricebeforepagebreak=1;
846
+				$showpricebeforepagebreak = 1;
847 847
 				
848 848
 				$decalage = (self::getNiveau($line) - 1) * 2;
849 849
 				
850 850
 				// Print: Designation
851 851
 				$label = $line->label;
852
-				if( (float)DOL_VERSION < 6 ) {
852
+				if ((float) DOL_VERSION < 6) {
853 853
 					$label = !empty($line->label) ? $line->label : $line->desc;
854 854
 				}
855 855
 				
856 856
 				
857 857
 				$pdf->startTransaction();
858
-				$pdf->writeHTMLCell($posx_options-$posx_designation-$decalage, 3, $posx_designation+$decalage, $curY, $outputlangs->convToOutputCharset($label), 0, 1, false, true, 'J',true);
859
-				$pageposafter=$pdf->getPage();
858
+				$pdf->writeHTMLCell($posx_options - $posx_designation - $decalage, 3, $posx_designation + $decalage, $curY, $outputlangs->convToOutputCharset($label), 0, 1, false, true, 'J', true);
859
+				$pageposafter = $pdf->getPage();
860 860
 				if ($pageposafter > $pageposbefore)	// There is a pagebreak
861 861
 				{
862 862
 					$pdf->rollbackTransaction(true);
863
-					$pageposafter=$pageposbefore;
863
+					$pageposafter = $pageposbefore;
864 864
 					//print $pageposafter.'-'.$pageposbefore;exit;
865
-					$pdf->setPageOrientation('', 1, $heightforfooter);	// The only function to edit the bottom margin of current page to set it.
866
-					$pdf->writeHTMLCell($posx_options-$posx_designation-$decalage, 3, $posx_designation+$decalage, $curY, $outputlangs->convToOutputCharset($label), 0, 1, false, true, 'J',true);
865
+					$pdf->setPageOrientation('', 1, $heightforfooter); // The only function to edit the bottom margin of current page to set it.
866
+					$pdf->writeHTMLCell($posx_options - $posx_designation - $decalage, 3, $posx_designation + $decalage, $curY, $outputlangs->convToOutputCharset($label), 0, 1, false, true, 'J', true);
867 867
 
868
-					$pageposafter=$pdf->getPage();
869
-					$posyafter=$pdf->GetY();
868
+					$pageposafter = $pdf->getPage();
869
+					$posyafter = $pdf->GetY();
870 870
 					//var_dump($posyafter); var_dump(($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))); exit;
871
-					if ($posyafter > ($objmarge->page_hauteur - ($heightforfooter+$heightforinfotot)))	// There is no space left for total+free text
871
+					if ($posyafter > ($objmarge->page_hauteur - ($heightforfooter + $heightforinfotot)))	// There is no space left for total+free text
872 872
 					{
873
-						if ($i == ($nblignes-1))	// No more lines, and no space left to show total, so we create a new page
873
+						if ($i == ($nblignes - 1))	// No more lines, and no space left to show total, so we create a new page
874 874
 						{
875
-							$pdf->AddPage('','',true);
876
-							if (! empty($tplidx)) $pdf->useTemplate($tplidx);
875
+							$pdf->AddPage('', '', true);
876
+							if (!empty($tplidx)) $pdf->useTemplate($tplidx);
877 877
 							if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) self::pagehead($objmarge, $pdf, $object, 0, $outputlangs);
878
-							$pdf->setPage($pageposafter+1);
878
+							$pdf->setPage($pageposafter + 1);
879 879
 						}
880 880
 					}
881 881
 					else
882 882
 					{
883 883
 						// We found a page break
884
-						$showpricebeforepagebreak=0;
884
+						$showpricebeforepagebreak = 0;
885 885
 					}
886 886
 				}
887 887
 				else	// No pagebreak
888 888
 				{
889 889
 					$pdf->commitTransaction();
890 890
 				}
891
-				$posYAfterDescription=$pdf->GetY();
891
+				$posYAfterDescription = $pdf->GetY();
892 892
 
893 893
 				$nexY = $pdf->GetY();
894
-				$pageposafter=$pdf->getPage();
894
+				$pageposafter = $pdf->getPage();
895 895
 
896 896
 				$pdf->setPage($pageposbefore);
897 897
 				$pdf->setTopMargin($objmarge->marge_haute);
898
-				$pdf->setPageOrientation('', 1, 0);	// The only function to edit the bottom margin of current page to set it.
898
+				$pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it.
899 899
 
900 900
 				// We suppose that a too long description or photo were moved completely on next page
901 901
 				if ($pageposafter > $pageposbefore && empty($showpricebeforepagebreak)) {
@@ -908,14 +908,14 @@  discard block
 block discarded – undo
908 908
 				if (!empty($line->total_options))
909 909
 				{
910 910
 					$pdf->SetXY($posx_options, $curY);
911
-					$pdf->MultiCell($posx_montant-$posx_options-0.8, 3, price($line->total_options, 0, $outputlangs), 0, 'R', 0);
911
+					$pdf->MultiCell($posx_montant - $posx_options - 0.8, 3, price($line->total_options, 0, $outputlangs), 0, 'R', 0);
912 912
 				}
913 913
 				
914 914
 				// Print: Montant
915 915
 				$pdf->SetXY($posx_montant, $curY);
916
-				$pdf->MultiCell($objmarge->page_largeur-$objmarge->marge_droite-$posx_montant-0.8, 3, price($line->total_ht, 0, $outputlangs), 0, 'R', 0);
916
+				$pdf->MultiCell($objmarge->page_largeur - $objmarge->marge_droite - $posx_montant - 0.8, 3, price($line->total_ht, 0, $outputlangs), 0, 'R', 0);
917 917
 				
918
-				$nexY+=2;    // Passe espace entre les lignes
918
+				$nexY += 2; // Passe espace entre les lignes
919 919
 
920 920
 				// Detect if some page were added automatically and output _tableau for past pages
921 921
 				while ($pagenb < $pageposafter)
@@ -932,7 +932,7 @@  discard block
 block discarded – undo
932 932
 					
933 933
 					$pagenb++;
934 934
 					$pdf->setPage($pagenb);
935
-					$pdf->setPageOrientation('', 1, 0);	// The only function to edit the bottom margin of current page to set it.
935
+					$pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it.
936 936
 					if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) self::pagehead($objmarge, $pdf, $object, 0, $outputlangs);
937 937
 				}
938 938
 			}
@@ -942,19 +942,19 @@  discard block
 block discarded – undo
942 942
 		if ($pagenb == 1)
943 943
 		{
944 944
 			self::tableau($objmarge, $pdf, $posx_designation, $posx_options, $posx_montant, $tab_top, $objmarge->page_hauteur - $tab_top - $heightforinfotot - $heightforfooter, 0, $outputlangs, 0, 0, $object->multicurrency_code);
945
-			$bottomlasttab=$objmarge->page_hauteur - $heightforinfotot - $heightforfooter + 1;
945
+			$bottomlasttab = $objmarge->page_hauteur - $heightforinfotot - $heightforfooter + 1;
946 946
 		}
947 947
 		else
948 948
 		{
949 949
 			self::tableau($objmarge, $pdf, $posx_designation, $posx_options, $posx_montant, $tab_top_newpage, $objmarge->page_hauteur - $tab_top_newpage - $heightforinfotot - $heightforfooter, 0, $outputlangs, $hidetop, 0, $object->multicurrency_code);
950
-			$bottomlasttab=$objmarge->page_hauteur - $heightforinfotot - $heightforfooter + 1;
950
+			$bottomlasttab = $objmarge->page_hauteur - $heightforinfotot - $heightforfooter + 1;
951 951
 		}
952 952
 		
953 953
 		// Affiche zone totaux
954
-		$posy=self::tableau_tot($objmarge, $pdf, $object, $bottomlasttab, $outputlangs, $TTot);
954
+		$posy = self::tableau_tot($objmarge, $pdf, $object, $bottomlasttab, $outputlangs, $TTot);
955 955
 		
956 956
 		$pdf->Close();
957
-		$pdf->Output($file,'F');
957
+		$pdf->Output($file, 'F');
958 958
 		
959 959
 		$pagecount = self::concat($outputlangs, array($origin_file, $file), $origin_file);
960 960
 		
@@ -966,7 +966,7 @@  discard block
 block discarded – undo
966 966
 		$level = $line->qty; // TODO à améliorer
967 967
 		
968 968
 		$pdf->SetXY($objmarge->marge_gauche, $curY);
969
-		$pdf->MultiCell($posx_designation-$objmarge->marge_gauche-0.8, 5, $level, 0, 'L', 0);
969
+		$pdf->MultiCell($posx_designation - $objmarge->marge_gauche - 0.8, 5, $level, 0, 'L', 0);
970 970
 	}
971 971
 	
972 972
 	/**
@@ -980,50 +980,50 @@  discard block
 block discarded – undo
980 980
 	 */
981 981
 	private static function pagehead(&$objmarge, &$pdf, &$object, $showdetail, $outputlangs)
982 982
 	{
983
-		global $conf,$mysoc;
983
+		global $conf, $mysoc;
984 984
 
985 985
 		$default_font_size = pdf_getPDFFontSize($outputlangs);
986 986
 
987
-		pdf_pagehead($pdf,$outputlangs,$objmarge->page_hauteur);
987
+		pdf_pagehead($pdf, $outputlangs, $objmarge->page_hauteur);
988 988
 
989
-		$pdf->SetTextColor(0,0,60);
990
-		$pdf->SetFont('','B', $default_font_size + 3);
989
+		$pdf->SetTextColor(0, 0, 60);
990
+		$pdf->SetFont('', 'B', $default_font_size + 3);
991 991
 
992
-		$posy=$objmarge->marge_haute;
993
-		$posx=$objmarge->page_largeur-$objmarge->marge_droite-100;
992
+		$posy = $objmarge->marge_haute;
993
+		$posx = $objmarge->page_largeur - $objmarge->marge_droite - 100;
994 994
 		
995
-		$pdf->SetXY($objmarge->marge_gauche,$posy);
995
+		$pdf->SetXY($objmarge->marge_gauche, $posy);
996 996
 
997
-		$logo=$conf->mycompany->dir_output.'/logos/'.$mysoc->logo;
997
+		$logo = $conf->mycompany->dir_output.'/logos/'.$mysoc->logo;
998 998
 		if ($mysoc->logo)
999 999
 		{
1000 1000
 			if (is_readable($logo))
1001 1001
 			{
1002
-			    $height=pdf_getHeightForLogo($logo);
1003
-			    $pdf->Image($logo, $objmarge->marge_gauche, $posy, 0, $height);	// width=0 (auto)
1002
+			    $height = pdf_getHeightForLogo($logo);
1003
+			    $pdf->Image($logo, $objmarge->marge_gauche, $posy, 0, $height); // width=0 (auto)
1004 1004
 			}
1005 1005
 			else
1006 1006
 			{
1007
-				$pdf->SetTextColor(200,0,0);
1008
-				$pdf->SetFont('','B',$default_font_size - 2);
1009
-				$pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorLogoFileNotFound",$logo), 0, 'L');
1007
+				$pdf->SetTextColor(200, 0, 0);
1008
+				$pdf->SetFont('', 'B', $default_font_size - 2);
1009
+				$pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorLogoFileNotFound", $logo), 0, 'L');
1010 1010
 				$pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorGoToGlobalSetup"), 0, 'L');
1011 1011
 			}
1012 1012
 			
1013
-			$posy+=35;
1013
+			$posy += 35;
1014 1014
 		}
1015 1015
 		else
1016 1016
 		{
1017
-			$text=$mysoc->name;
1017
+			$text = $mysoc->name;
1018 1018
 			$pdf->MultiCell(100, 4, $outputlangs->convToOutputCharset($text), 0, 'L');
1019 1019
 			
1020
-			$posy+=15;
1020
+			$posy += 15;
1021 1021
 		}
1022 1022
 		
1023 1023
 		
1024
-		$pdf->SetTextColor(0,0,0);
1025
-		$pdf->SetFont('','B', $default_font_size + 2);
1026
-		$pdf->SetXY($objmarge->marge_gauche,$posy);
1024
+		$pdf->SetTextColor(0, 0, 0);
1025
+		$pdf->SetFont('', 'B', $default_font_size + 2);
1026
+		$pdf->SetXY($objmarge->marge_gauche, $posy);
1027 1027
 		
1028 1028
 		$key = 'subtotalPropalTitle';
1029 1029
 		if ($object->element == 'commande') $key = 'subtotalCommandeTitle';
@@ -1032,14 +1032,14 @@  discard block
 block discarded – undo
1032 1032
 		
1033 1033
 		$pdf->MultiCell(150, 4, $outputlangs->transnoentities($key, $object->ref, $object->thirdparty->name), '', 'L');
1034 1034
 		
1035
-		$pdf->SetFont('','', $default_font_size);
1036
-		$pdf->SetXY($objmarge->page_largeur-$objmarge->marge_droite-40,$posy);
1035
+		$pdf->SetFont('', '', $default_font_size);
1036
+		$pdf->SetXY($objmarge->page_largeur - $objmarge->marge_droite - 40, $posy);
1037 1037
 		$pdf->MultiCell(40, 4, dol_print_date($object->date, 'daytext'), '', 'R');
1038 1038
 		
1039 1039
 		$posy += 8;
1040 1040
 			
1041
-		$pdf->SetFont('','B', $default_font_size + 2);
1042
-		$pdf->SetXY($objmarge->marge_gauche,$posy);
1041
+		$pdf->SetFont('', 'B', $default_font_size + 2);
1042
+		$pdf->SetXY($objmarge->marge_gauche, $posy);
1043 1043
 		$pdf->MultiCell(70, 4, $outputlangs->transnoentities('subtotalRecapLot'), '', 'L');
1044 1044
 		
1045 1045
 	}
@@ -1057,44 +1057,44 @@  discard block
 block discarded – undo
1057 1057
 	 *   @param		string		$currency		Currency code
1058 1058
 	 *   @return	void
1059 1059
 	 */
1060
-	private static function tableau(&$objmarge, &$pdf, $posx_designation, $posx_options, $posx_montant, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop=0, $hidebottom=0, $currency='')
1060
+	private static function tableau(&$objmarge, &$pdf, $posx_designation, $posx_options, $posx_montant, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '')
1061 1061
 	{
1062 1062
 		global $conf;
1063 1063
 		
1064 1064
 		// Force to disable hidetop and hidebottom
1065
-		$hidebottom=0;
1066
-		if ($hidetop) $hidetop=-1;
1065
+		$hidebottom = 0;
1066
+		if ($hidetop) $hidetop = -1;
1067 1067
 
1068 1068
 		$currency = !empty($currency) ? $currency : $conf->currency;
1069 1069
 		$default_font_size = pdf_getPDFFontSize($outputlangs);
1070 1070
 
1071 1071
 		// Amount in (at tab_top - 1)
1072
-		$pdf->SetTextColor(0,0,0);
1073
-		$pdf->SetFont('','',$default_font_size);
1072
+		$pdf->SetTextColor(0, 0, 0);
1073
+		$pdf->SetFont('', '', $default_font_size);
1074 1074
 
1075 1075
 		if (empty($hidetop))
1076 1076
 		{
1077
-			$titre = $outputlangs->transnoentities("AmountInCurrency",$outputlangs->transnoentitiesnoconv("Currency".$currency));
1078
-			$pdf->SetXY($objmarge->page_largeur - $objmarge->marge_droite - ($pdf->GetStringWidth($titre) + 3), $tab_top-4.5);
1077
+			$titre = $outputlangs->transnoentities("AmountInCurrency", $outputlangs->transnoentitiesnoconv("Currency".$currency));
1078
+			$pdf->SetXY($objmarge->page_largeur - $objmarge->marge_droite - ($pdf->GetStringWidth($titre) + 3), $tab_top - 4.5);
1079 1079
 			$pdf->MultiCell(($pdf->GetStringWidth($titre) + 3), 2, $titre);
1080 1080
 			
1081
-			if (! empty($conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)) $pdf->Rect($objmarge->marge_gauche, $tab_top, $objmarge->page_largeur-$objmarge->marge_droite-$objmarge->marge_gauche, 8, 'F', null, explode(',',$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR));
1081
+			if (!empty($conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)) $pdf->Rect($objmarge->marge_gauche, $tab_top, $objmarge->page_largeur - $objmarge->marge_droite - $objmarge->marge_gauche, 8, 'F', null, explode(',', $conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR));
1082 1082
 			
1083 1083
 			
1084
-			$pdf->line($objmarge->marge_gauche, $tab_top, $objmarge->page_largeur-$objmarge->marge_droite, $tab_top);	// line prend une position y en 2eme param et 4eme param
1084
+			$pdf->line($objmarge->marge_gauche, $tab_top, $objmarge->page_largeur - $objmarge->marge_droite, $tab_top); // line prend une position y en 2eme param et 4eme param
1085 1085
 
1086
-			$pdf->SetXY($posx_designation, $tab_top+2);
1087
-			$pdf->MultiCell($posx_options - $posx_designation,2, $outputlangs->transnoentities("Designation"),'','L');
1088
-			$pdf->SetXY($posx_options, $tab_top+2);
1089
-			$pdf->MultiCell($posx_montant - $posx_options,2, $outputlangs->transnoentities("Options"),'','R');
1090
-			$pdf->SetXY($posx_montant, $tab_top+2);
1091
-			$pdf->MultiCell($objmarge->page_largeur - $objmarge->marge_droite - $posx_montant,2, $outputlangs->transnoentities("Amount"),'','R');
1086
+			$pdf->SetXY($posx_designation, $tab_top + 2);
1087
+			$pdf->MultiCell($posx_options - $posx_designation, 2, $outputlangs->transnoentities("Designation"), '', 'L');
1088
+			$pdf->SetXY($posx_options, $tab_top + 2);
1089
+			$pdf->MultiCell($posx_montant - $posx_options, 2, $outputlangs->transnoentities("Options"), '', 'R');
1090
+			$pdf->SetXY($posx_montant, $tab_top + 2);
1091
+			$pdf->MultiCell($objmarge->page_largeur - $objmarge->marge_droite - $posx_montant, 2, $outputlangs->transnoentities("Amount"), '', 'R');
1092 1092
 			
1093
-			$pdf->line($objmarge->marge_gauche, $tab_top+8, $objmarge->page_largeur-$objmarge->marge_droite, $tab_top+8);	// line prend une position y en 2eme param et 4eme param
1093
+			$pdf->line($objmarge->marge_gauche, $tab_top + 8, $objmarge->page_largeur - $objmarge->marge_droite, $tab_top + 8); // line prend une position y en 2eme param et 4eme param
1094 1094
 		}
1095 1095
 		else
1096 1096
 		{
1097
-			$pdf->line($objmarge->marge_gauche, $tab_top-2, $objmarge->page_largeur-$objmarge->marge_droite, $tab_top-2);	// line prend une position y en 2eme param et 4eme param
1097
+			$pdf->line($objmarge->marge_gauche, $tab_top - 2, $objmarge->page_largeur - $objmarge->marge_droite, $tab_top - 2); // line prend une position y en 2eme param et 4eme param
1098 1098
 		}
1099 1099
 		
1100 1100
 	}
@@ -1103,29 +1103,29 @@  discard block
 block discarded – undo
1103 1103
 	{
1104 1104
 		global $conf;
1105 1105
 		
1106
-		$pdf->line($objmarge->marge_gauche, $posy, $objmarge->page_largeur-$objmarge->marge_droite, $posy);	// line prend une position y en 2eme param et 4eme param
1106
+		$pdf->line($objmarge->marge_gauche, $posy, $objmarge->page_largeur - $objmarge->marge_droite, $posy); // line prend une position y en 2eme param et 4eme param
1107 1107
 		
1108 1108
 		$default_font_size = pdf_getPDFFontSize($outputlangs);
1109 1109
 		
1110
-		$tab2_top = $posy+2;
1110
+		$tab2_top = $posy + 2;
1111 1111
 		$tab2_hl = 4;
1112
-		$pdf->SetFont('','', $default_font_size - 1);
1112
+		$pdf->SetFont('', '', $default_font_size - 1);
1113 1113
 
1114 1114
 		// Tableau total
1115 1115
 		$col1x = 120; $col2x = 170;
1116 1116
 		if ($objmarge->page_largeur < 210) // To work with US executive format
1117 1117
 		{
1118
-			$col2x-=20;
1118
+			$col2x -= 20;
1119 1119
 		}
1120 1120
 		$largcol2 = ($objmarge->page_largeur - $objmarge->marge_droite - $col2x);
1121 1121
 
1122
-		$useborder=0;
1122
+		$useborder = 0;
1123 1123
 		$index = 0;
1124 1124
 
1125 1125
 		// Total HT
1126
-		$pdf->SetFillColor(255,255,255);
1126
+		$pdf->SetFillColor(255, 255, 255);
1127 1127
 		$pdf->SetXY($col1x, $tab2_top + 0);
1128
-		$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
1128
+		$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
1129 1129
 
1130 1130
 		// $total_ht = ($conf->multicurrency->enabled && $object->mylticurrency_tx != 1) ? $TTot['multicurrency_total_ht'] : $TTot['total_ht'];
1131 1131
 		$total_ht = $TTot['total_ht'];
@@ -1133,10 +1133,10 @@  discard block
 block discarded – undo
1133 1133
 		$pdf->MultiCell($largcol2, $tab2_hl, price($total_ht, 0, $outputlangs), 0, 'R', 1);
1134 1134
 
1135 1135
 		// Show VAT by rates and total
1136
-		$pdf->SetFillColor(248,248,248);
1136
+		$pdf->SetFillColor(248, 248, 248);
1137 1137
 		
1138
-		$atleastoneratenotnull=0;
1139
-		foreach($TTot['TTotal_tva'] as $tvakey => $tvaval)
1138
+		$atleastoneratenotnull = 0;
1139
+		foreach ($TTot['TTotal_tva'] as $tvakey => $tvaval)
1140 1140
 		{
1141 1141
 			if ($tvakey != 0)    // On affiche pas taux 0
1142 1142
 			{
@@ -1145,15 +1145,15 @@  discard block
 block discarded – undo
1145 1145
 				$index++;
1146 1146
 				$pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index);
1147 1147
 
1148
-				$tvacompl='';
1149
-				if (preg_match('/\*/',$tvakey))
1148
+				$tvacompl = '';
1149
+				if (preg_match('/\*/', $tvakey))
1150 1150
 				{
1151
-					$tvakey=str_replace('*','',$tvakey);
1151
+					$tvakey = str_replace('*', '', $tvakey);
1152 1152
 					$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
1153 1153
 				}
1154
-				$totalvat =$outputlangs->transnoentities("TotalVAT").' ';
1155
-				$totalvat.=vatrate($tvakey,1).$tvacompl;
1156
-				$pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1);
1154
+				$totalvat = $outputlangs->transnoentities("TotalVAT").' ';
1155
+				$totalvat .= vatrate($tvakey, 1).$tvacompl;
1156
+				$pdf->MultiCell($col2x - $col1x, $tab2_hl, $totalvat, 0, 'L', 1);
1157 1157
 
1158 1158
 				$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
1159 1159
 				$pdf->MultiCell($largcol2, $tab2_hl, price($tvaval, 0, $outputlangs), 0, 'R', 1);
@@ -1163,16 +1163,16 @@  discard block
 block discarded – undo
1163 1163
 		// Total TTC
1164 1164
 		$index++;
1165 1165
 		$pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index);
1166
-		$pdf->SetTextColor(0,0,60);
1167
-		$pdf->SetFillColor(224,224,224);
1168
-		$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1);
1166
+		$pdf->SetTextColor(0, 0, 60);
1167
+		$pdf->SetFillColor(224, 224, 224);
1168
+		$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1);
1169 1169
 
1170 1170
 		// $total_ttc = ($conf->multicurrency->enabled && $object->multiccurency_tx != 1) ? $TTot['multicurrency_total_ttc'] : $TTot['total_ttc'];
1171 1171
 		$total_ttc = $TTot['total_ttc'];
1172 1172
 		$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
1173 1173
 		$pdf->MultiCell($largcol2, $tab2_hl, price($total_ttc, 0, $outputlangs), $useborder, 'R', 1);
1174 1174
 
1175
-		$pdf->SetTextColor(0,0,0);
1175
+		$pdf->SetTextColor(0, 0, 0);
1176 1176
 				
1177 1177
 		$index++;
1178 1178
 		return ($tab2_top + ($tab2_hl * $index));
@@ -1191,22 +1191,22 @@  discard block
 block discarded – undo
1191 1191
 	 * @param	int		$hidebottom		Hide bottom
1192 1192
 	 * @return	void
1193 1193
 	 */
1194
-    private static function printRect($pdf, $x, $y, $l, $h, $hidetop=0, $hidebottom=0)
1194
+    private static function printRect($pdf, $x, $y, $l, $h, $hidetop = 0, $hidebottom = 0)
1195 1195
     {
1196
-	    if (empty($hidetop) || $hidetop==-1) $pdf->line($x, $y, $x+$l, $y);
1197
-	    $pdf->line($x+$l, $y, $x+$l, $y+$h);
1198
-	    if (empty($hidebottom)) $pdf->line($x+$l, $y+$h, $x, $y+$h);
1199
-	    $pdf->line($x, $y+$h, $x, $y);
1196
+	    if (empty($hidetop) || $hidetop == -1) $pdf->line($x, $y, $x + $l, $y);
1197
+	    $pdf->line($x + $l, $y, $x + $l, $y + $h);
1198
+	    if (empty($hidebottom)) $pdf->line($x + $l, $y + $h, $x, $y + $h);
1199
+	    $pdf->line($x, $y + $h, $x, $y);
1200 1200
     }
1201 1201
 	
1202 1202
 	
1203
-	public static function concat(&$outputlangs, $files, $fileoutput='')
1203
+	public static function concat(&$outputlangs, $files, $fileoutput = '')
1204 1204
 	{
1205 1205
 		global $conf;
1206 1206
 		
1207 1207
 		if (empty($fileoutput)) $fileoutput = $file[0];
1208 1208
 		
1209
-		$pdf=pdf_getInstance();
1209
+		$pdf = pdf_getInstance();
1210 1210
         if (class_exists('TCPDF'))
1211 1211
         {
1212 1212
             $pdf->setPrintHeader(false);
@@ -1214,10 +1214,10 @@  discard block
 block discarded – undo
1214 1214
         }
1215 1215
         $pdf->SetFont(pdf_getPDFFont($outputlangs));
1216 1216
 
1217
-        if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false);
1217
+        if (!empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false);
1218 1218
 
1219 1219
 		
1220
-		foreach($files as $file)
1220
+		foreach ($files as $file)
1221 1221
 		{
1222 1222
 			$pagecount = $pdf->setSourceFile($file);
1223 1223
 			for ($i = 1; $i <= $pagecount; $i++)
@@ -1229,8 +1229,8 @@  discard block
 block discarded – undo
1229 1229
 			}
1230 1230
 		}
1231 1231
 		
1232
-		$pdf->Output($fileoutput,'F');
1233
-		if (! empty($conf->global->MAIN_UMASK)) @chmod($file, octdec($conf->global->MAIN_UMASK));
1232
+		$pdf->Output($fileoutput, 'F');
1233
+		if (!empty($conf->global->MAIN_UMASK)) @chmod($file, octdec($conf->global->MAIN_UMASK));
1234 1234
 
1235 1235
 		return $pagecount;
1236 1236
 	}
@@ -1243,7 +1243,7 @@  discard block
 block discarded – undo
1243 1243
 	 */
1244 1244
 	public static function hasNcTitle(&$line)
1245 1245
 	{
1246
-		if(isset($line->has_nc_title)) return $line->has_nc_title;
1246
+		if (isset($line->has_nc_title)) return $line->has_nc_title;
1247 1247
 
1248 1248
 		$TTitle = self::getAllTitleFromLine($line);
1249 1249
 		foreach ($TTitle as &$line_title)
Please login to merge, or discard this patch.
Braces   +282 added lines, -137 removed lines patch added patch discarded remove patch
@@ -13,18 +13,23 @@  discard block
 block discarded – undo
13 13
 			/**
14 14
 			 * @var $object Facture
15 15
 			 */
16
-			if($object->element=='facture') $res =  $object->addline($object->id, $label, 0,$qty,0,0,0,0,0,'','',0,0,'','HT',0,9,-1, TSubtotal::$module_number);
16
+			if($object->element=='facture') {
17
+				$res =  $object->addline($object->id, $label, 0,$qty,0,0,0,0,0,'','',0,0,'','HT',0,9,-1, TSubtotal::$module_number);
18
+			}
17 19
 			/**
18 20
 			 * @var $object Propal
19 21
 			 */
20
-			else if($object->element=='propal') $res =  $object->addline($object->id,$label, 0,$qty,0,0,0,0,0,'HT',0,0,9,-1, TSubtotal::$module_number);
22
+			else if($object->element=='propal') {
23
+				$res =  $object->addline($object->id,$label, 0,$qty,0,0,0,0,0,'HT',0,0,9,-1, TSubtotal::$module_number);
24
+			}
21 25
 			/**
22 26
 			 * @var $object Commande
23 27
 			 */
24
-			else if($object->element=='commande') $res =  $object->addline($object->id,$label, 0,$qty,0,0,0,0,0,0,0,'HT',0,'','',9,-1, TSubtotal::$module_number);
28
+			else if($object->element=='commande') {
29
+				$res =  $object->addline($object->id,$label, 0,$qty,0,0,0,0,0,0,0,'HT',0,'','',9,-1, TSubtotal::$module_number);
30
+			}
25 31
 
26
-		}
27
-		else {
32
+		} else {
28 33
 			$desc = '';
29 34
 			if ((float) DOL_VERSION < 6  || $qty==50) {
30 35
 				$desc = $label;
@@ -34,29 +39,40 @@  discard block
 block discarded – undo
34 39
 			/**
35 40
 			 * @var $object Facture
36 41
 			 */
37
-			if($object->element=='facture') $res =  $object->addline($desc, 0,$qty,0,0,0,0,0,'','',0,0,'','HT',0,9,$rang, TSubtotal::$module_number, '', 0, 0, null, 0, $label);
42
+			if($object->element=='facture') {
43
+				$res =  $object->addline($desc, 0,$qty,0,0,0,0,0,'','',0,0,'','HT',0,9,$rang, TSubtotal::$module_number, '', 0, 0, null, 0, $label);
44
+			}
38 45
 			/**
39 46
 			 * @var $object Facture fournisseur
40 47
 			 */
41 48
 			else if($object->element=='invoice_supplier') {
42 49
 			    $object->special_code = TSubtotal::$module_number;
43 50
 			    $rang = $object->line_max() + 1;
44
-			    if($qty==50) $res = $object->addline($desc,0,0,0,0,$qty,0,0,'','',0,0,'HT',9,$rang);
45
-			    else $res = $object->addline($label,0,0,0,0,$qty,0,0,'','',0,0,'HT',9,$rang);
51
+			    if($qty==50) {
52
+			    	$res = $object->addline($desc,0,0,0,0,$qty,0,0,'','',0,0,'HT',9,$rang);
53
+			    } else {
54
+			    	$res = $object->addline($label,0,0,0,0,$qty,0,0,'','',0,0,'HT',9,$rang);
55
+			    }
46 56
 			}
47 57
 			/**
48 58
 			 * @var $object Propal
49 59
 			 */
50
-			else if($object->element=='propal') $res = $object->addline($desc, 0,$qty,0,0,0,0,0,'HT',0,0,9,$rang, TSubtotal::$module_number, 0, 0, 0, $label);
60
+			else if($object->element=='propal') {
61
+				$res = $object->addline($desc, 0,$qty,0,0,0,0,0,'HT',0,0,9,$rang, TSubtotal::$module_number, 0, 0, 0, $label);
62
+			}
51 63
 			/**
52 64
 			 * @var $object Propal Fournisseur
53 65
 			 */
54
-			else if($object->element=='supplier_proposal') $res = $object->addline($desc, 0,$qty,0,0,0,0,0,'HT',0,0,9,$rang, TSubtotal::$module_number, 0, 0, 0, $label);
66
+			else if($object->element=='supplier_proposal') {
67
+				$res = $object->addline($desc, 0,$qty,0,0,0,0,0,'HT',0,0,9,$rang, TSubtotal::$module_number, 0, 0, 0, $label);
68
+			}
55 69
 			
56 70
 			/**
57 71
 			 * @var $object Commande
58 72
 			 */
59
-			else if($object->element=='commande') $res =  $object->addline($desc, 0,$qty,0,0,0,0,0,0,0,'HT',0,'','',9,$rang, TSubtotal::$module_number, 0, null, 0, $label);
73
+			else if($object->element=='commande') {
74
+				$res =  $object->addline($desc, 0,$qty,0,0,0,0,0,0,0,'HT',0,'','',9,$rang, TSubtotal::$module_number, 0, null, 0, $label);
75
+			}
60 76
 			/**
61 77
 			 * @var $object Commande fournisseur
62 78
 			 */
@@ -67,7 +83,9 @@  discard block
 block discarded – undo
67 83
 			/**
68 84
 			 * @var $object Facturerec
69 85
 			 */
70
-			else if($object->element=='facturerec') $res =  $object->addline($desc, 0,$qty, 0, 0, 0, 0, 0, 'HT', 0, '', 0, 9, $rang, TSubtotal::$module_number,$label); 
86
+			else if($object->element=='facturerec') {
87
+				$res =  $object->addline($desc, 0,$qty, 0, 0, 0, 0, 0, 'HT', 0, '', 0, 9, $rang, TSubtotal::$module_number,$label);
88
+			}
71 89
 			
72 90
 		}
73 91
 	
@@ -89,8 +107,9 @@  discard block
 block discarded – undo
89 107
 			// Define output language
90 108
 			$outputlangs = $langs;
91 109
 			$newlang = GETPOST('lang_id', 'alpha');
92
-			if (! empty($conf->global->MAIN_MULTILANGS) && empty($newlang))
93
-				$newlang = !empty($object->client) ? $object->client->default_lang : $object->thirdparty->default_lang;
110
+			if (! empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
111
+							$newlang = !empty($object->client) ? $object->client->default_lang : $object->thirdparty->default_lang;
112
+			}
94 113
 			if (! empty($newlang)) {
95 114
 				$outputlangs = new Translate("", $conf);
96 115
 				$outputlangs->setDefaultLang($newlang);
@@ -99,13 +118,18 @@  discard block
 block discarded – undo
99 118
 			$ret = $object->fetch($object->id); // Reload to get new records
100 119
 			if ((float) DOL_VERSION <= 3.6)
101 120
 			{
102
-				if ($object->element == 'propal') propale_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
103
-				elseif ($object->element == 'commande') commande_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
104
-				elseif ($object->element == 'facture') facture_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
105
-			}
106
-			else
121
+				if ($object->element == 'propal') {
122
+					propale_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
123
+				} elseif ($object->element == 'commande') {
124
+					commande_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
125
+				} elseif ($object->element == 'facture') {
126
+					facture_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
127
+				}
128
+			} else
107 129
 			{
108
-				if ($object->element!= 'facturerec') $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
130
+				if ($object->element!= 'facturerec') {
131
+					$object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
132
+				}
109 133
 			}
110 134
 		}
111 135
 	}
@@ -119,7 +143,9 @@  discard block
 block discarded – undo
119 143
 	 */
120 144
 	public static function updateRang(&$object, $rang_start, $move_to=1)
121 145
 	{
122
-		if (!class_exists('GenericObject')) require_once DOL_DOCUMENT_ROOT.'/core/class/genericobject.class.php';
146
+		if (!class_exists('GenericObject')) {
147
+			require_once DOL_DOCUMENT_ROOT.'/core/class/genericobject.class.php';
148
+		}
123 149
 		
124 150
 		$row=new GenericObject($object->db);
125 151
 		$row->table_element_line = $object->table_element_line;
@@ -128,7 +154,9 @@  discard block
 block discarded – undo
128 154
 		
129 155
 		foreach ($object->lines as &$line)
130 156
 		{
131
-			if ($line->rang < $rang_start) continue;
157
+			if ($line->rang < $rang_start) {
158
+				continue;
159
+			}
132 160
 			
133 161
 			$row->updateRangOfLine($line->id, $line->rang+$move_to);
134 162
 		}
@@ -151,21 +179,28 @@  discard block
 block discarded – undo
151 179
 		foreach ($TTitle_reverse as $k => $title_line)
152 180
 		{
153 181
 			$title_niveau = self::getNiveau($title_line);
154
-			if ($title_niveau < $level_new_title) break;
182
+			if ($title_niveau < $level_new_title) {
183
+				break;
184
+			}
155 185
 			
156 186
 			$rang_to_add = self::titleHasTotalLine($object, $title_line, true, true);
157 187
 			
158 188
 			if (is_numeric($rang_to_add)) 
159 189
 			{
160
-				if ($rang_to_add != -1) self::updateRang($object, $rang_to_add);
190
+				if ($rang_to_add != -1) {
191
+					self::updateRang($object, $rang_to_add);
192
+				}
161 193
 				
162 194
 				self::addSubTotalLine($object, $langs->trans('SubTotal'), 100-$title_niveau, $rang_to_add);
163 195
 				
164 196
 				$object->lines[] = $object->line; // ajout de la ligne dans le tableau de ligne (Dolibarr ne le fait pas)
165 197
 				if ($rang_to_add != -1) 
166 198
 				{
167
-					if (method_exists($object, 'fetch_lines')) $object->fetch_lines();
168
-					else $object->fetch($object->id);
199
+					if (method_exists($object, 'fetch_lines')) {
200
+						$object->fetch_lines();
201
+					} else {
202
+						$object->fetch($object->id);
203
+					}
169 204
 				}
170 205
 			}
171 206
 		}
@@ -195,7 +230,9 @@  discard block
 block discarded – undo
195 230
 		
196 231
 		foreach ($TTitle as $k => $title_line)
197 232
 		{
198
-			if (self::titleHasTotalLine($object, $title_line)) unset($TTitle[$k]);
233
+			if (self::titleHasTotalLine($object, $title_line)) {
234
+				unset($TTitle[$k]);
235
+			}
199 236
 		}
200 237
 		
201 238
 		return $TTitle;
@@ -212,23 +249,41 @@  discard block
 block discarded – undo
212 249
 	 */
213 250
 	public static function titleHasTotalLine(&$object, &$title_line, $strict_mode=false, $return_rang_on_false=false)
214 251
 	{
215
-		if (empty($object->lines) || !is_array($object->lines)) return false;
252
+		if (empty($object->lines) || !is_array($object->lines)) {
253
+			return false;
254
+		}
216 255
 		
217 256
 		$title_niveau = self::getNiveau($title_line);
218 257
 		foreach ($object->lines as &$line)
219 258
 		{
220
-			if ($line->rang <= $title_line->rang) continue;
221
-			if (self::isTitle($line) && self::getNiveau($line) <= $title_niveau) return false; // Oups on croise un titre d'un niveau inférieur ou égale (exemple : je croise un titre niveau 2 alors que je suis sur un titre de niveau 3) pas lieu de continuer car un nouveau bloc commence
222
-			if (!self::isSubtotal($line)) continue;
259
+			if ($line->rang <= $title_line->rang) {
260
+				continue;
261
+			}
262
+			if (self::isTitle($line) && self::getNiveau($line) <= $title_niveau) {
263
+				return false;
264
+			}
265
+			// Oups on croise un titre d'un niveau inférieur ou égale (exemple : je croise un titre niveau 2 alors que je suis sur un titre de niveau 3) pas lieu de continuer car un nouveau bloc commence
266
+			if (!self::isSubtotal($line)) {
267
+				continue;
268
+			}
223 269
 			
224 270
 			$subtotal_niveau = self::getNiveau($line);
225 271
 			
226 272
 			// Comparaison du niveau de la ligne de sous-total avec celui du titre
227
-			if ($subtotal_niveau == $title_niveau) return true; // niveau égale => Ok mon titre a un sous-total
228
-			elseif ($subtotal_niveau < $title_niveau) // niveau inférieur trouvé (exemple : sous-total de niveau 1 contre mon titre de niveau 3)
273
+			if ($subtotal_niveau == $title_niveau) {
274
+				return true;
275
+			}
276
+			// niveau égale => Ok mon titre a un sous-total
277
+			elseif ($subtotal_niveau < $title_niveau) {
278
+				// niveau inférieur trouvé (exemple : sous-total de niveau 1 contre mon titre de niveau 3)
229 279
 			{
230
-				if ($strict_mode) return ($return_rang_on_false) ? $line->rang : false; // mode strict niveau pas égale donc faux
231
-				else return true; // mode libre => OK je considère que mon titre à un sous-total
280
+				if ($strict_mode) return ($return_rang_on_false) ? $line->rang : false;
281
+			}
282
+			// mode strict niveau pas égale donc faux
283
+				else {
284
+					return true;
285
+				}
286
+				// mode libre => OK je considère que mon titre à un sous-total
232 287
 			}
233 288
 		}
234 289
 		
@@ -276,16 +331,19 @@  discard block
 block discarded – undo
276 331
 		
277 332
 		foreach ($object->lines as &$l)
278 333
 		{
279
-			if ($l->rang <= $line->rang) continue;
280
-			elseif (self::isSubtotal($l) && self::getNiveau($l) == $line->qty) break;
281
-			elseif (self::isModSubtotalLine($l)) continue;
334
+			if ($l->rang <= $line->rang) {
335
+				continue;
336
+			} elseif (self::isSubtotal($l) && self::getNiveau($l) == $line->qty) {
337
+				break;
338
+			} elseif (self::isModSubtotalLine($l)) {
339
+				continue;
340
+			}
282 341
 			
283 342
 			if (!empty($l->array_options['options_subtotal_nc']))
284 343
 			{
285 344
 				$tabprice = calcul_price_total($l->qty, $l->subprice, $l->remise_percent, $l->tva_tx, $l->localtax1_tx, $l->localtax2_tx, 0, 'HT', $l->info_bits, $l->product_type);
286 345
 				$TTot['total_options'] += $tabprice[0]; // total ht
287
-			}
288
-			else
346
+			} else
289 347
 			{
290 348
 				$TTot['total_pa_ht'] += $l->pa_ht * $l->qty;
291 349
 				$TTot['total_subprice'] += $l->subprice * $l->qty;
@@ -305,29 +363,41 @@  discard block
 block discarded – undo
305 363
 
306 364
 	public static function getOrderIdFromLineId(&$db, $fk_commandedet)
307 365
 	{
308
-		if (empty($fk_commandedet)) return false;
366
+		if (empty($fk_commandedet)) {
367
+			return false;
368
+		}
309 369
 		
310 370
 		$sql = 'SELECT fk_commande FROM '.MAIN_DB_PREFIX.'commandedet WHERE rowid = '.$fk_commandedet;
311 371
 		$resql = $db->query($sql);
312 372
 		
313
-		if ($resql && ($row = $db->fetch_object($resql))) return $row->fk_commande;
314
-		else return false;
373
+		if ($resql && ($row = $db->fetch_object($resql))) {
374
+			return $row->fk_commande;
375
+		} else {
376
+			return false;
377
+		}
315 378
 	}
316 379
 	
317 380
 	public static function getLastLineOrderId(&$db, $fk_commande)
318 381
 	{
319
-		if (empty($fk_commande)) return false;
382
+		if (empty($fk_commande)) {
383
+			return false;
384
+		}
320 385
 		
321 386
 		$sql = 'SELECT rowid FROM '.MAIN_DB_PREFIX.'commandedet WHERE fk_commande = '.$fk_commande.' ORDER BY rang DESC LIMIT 1';
322 387
 		$resql = $db->query($sql);
323 388
 		
324
-		if ($resql && ($row = $db->fetch_object($resql))) return $row->rowid;
325
-		else return false;
389
+		if ($resql && ($row = $db->fetch_object($resql))) {
390
+			return $row->rowid;
391
+		} else {
392
+			return false;
393
+		}
326 394
 	}
327 395
 	
328 396
 	public static function getParentTitleOfLine(&$object, $i)
329 397
 	{
330
-		if ($i <= 0) return false;
398
+		if ($i <= 0) {
399
+			return false;
400
+		}
331 401
 		
332 402
 		$skip_title = 0;
333 403
 		// Je parcours les lignes précédentes
@@ -346,8 +416,7 @@  discard block
 block discarded – undo
346 416
 				//@INFO J'ai ma ligne titre qui contient ma ligne, par contre je check pas s'il y a un sous-total
347 417
 				return $line;
348 418
 				break;
349
-			}
350
-			elseif ($line->product_type == 9 && $line->qty >= 90 && $line->qty <= 99)
419
+			} elseif ($line->product_type == 9 && $line->qty >= 90 && $line->qty <= 99)
351 420
 			{
352 421
 				// Il s'agit d'un sous-total, ça veut dire que le prochain titre théoriquement doit être ignorer (je travail avec un incrément au cas ou je croise plusieurs sous-totaux)
353 422
 				$skip_title++;
@@ -362,7 +431,9 @@  discard block
 block discarded – undo
362 431
 		$res = $line->special_code == self::$module_number && $line->product_type == 9 && $line->qty <= 9;
363 432
 		if($res && $level > -1) {
364 433
 			return $line->qty == $level;
365
-		} else return $res;
434
+		} else {
435
+			return $res;
436
+		}
366 437
 		
367 438
 	}
368 439
 	
@@ -371,7 +442,9 @@  discard block
 block discarded – undo
371 442
 	    $res = $line->special_code == self::$module_number && $line->product_type == 9 && $line->qty >= 90;
372 443
 	    if($res && $level > -1) {
373 444
 	        return self::getNiveau($line) == $level;
374
-	    } else return $res;
445
+	    } else {
446
+	    	return $res;
447
+	    }
375 448
 	}
376 449
 	
377 450
 	public static function isFreeText(&$line)
@@ -392,10 +465,14 @@  discard block
 block discarded – undo
392 465
 		// editeur wysiwyg
393 466
 		require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
394 467
 		$nbrows=ROWS_2;
395
-		if (! empty($conf->global->MAIN_INPUT_DESC_HEIGHT)) $nbrows=$conf->global->MAIN_INPUT_DESC_HEIGHT;
468
+		if (! empty($conf->global->MAIN_INPUT_DESC_HEIGHT)) {
469
+			$nbrows=$conf->global->MAIN_INPUT_DESC_HEIGHT;
470
+		}
396 471
 		$enable=(isset($conf->global->FCKEDITOR_ENABLE_DETAILS)?$conf->global->FCKEDITOR_ENABLE_DETAILS:0);
397 472
 		$toolbarname='dolibarr_details';
398
-		if (! empty($conf->global->FCKEDITOR_ENABLE_DETAILS_FULL)) $toolbarname='dolibarr_notes';
473
+		if (! empty($conf->global->FCKEDITOR_ENABLE_DETAILS_FULL)) {
474
+			$toolbarname='dolibarr_notes';
475
+		}
399 476
 		$text = !empty($line->description)?$line->description:$line->label;
400 477
 		$doleditor=new DolEditor('line-description',$text,'',164,$toolbarname,'',false,true,$enable,$nbrows,'98%', $readonly);
401 478
 		return $doleditor->Create(1);
@@ -410,12 +487,10 @@  discard block
 block discarded – undo
410 487
 		{
411 488
 		    $object->statut = 0; // hack for facture rec
412 489
 		    $createRight = $user->rights->facture->creer;
413
-		}
414
-		elseif($object->element == 'order_supplier' )
490
+		} elseif($object->element == 'order_supplier' )
415 491
 		{
416 492
 		    $createRight = $user->rights->fournisseur->commande->creer;
417
-		}
418
-		elseif($object->element == 'invoice_supplier' )
493
+		} elseif($object->element == 'invoice_supplier' )
419 494
 		{
420 495
 		    $createRight = $user->rights->fournisseur->facture->creer;
421 496
 		}
@@ -488,8 +563,9 @@  discard block
 block discarded – undo
488 563
 
489 564
 					$TLineAdded[] = $object->line;
490 565
 					// Error from addline
491
-					if ($res <= 0) break;
492
-					else
566
+					if ($res <= 0) {
567
+						break;
568
+					} else
493 569
 					{
494 570
 						$object->line_from = $line;
495 571
 						// Call trigger
@@ -511,8 +587,7 @@  discard block
 block discarded – undo
511 587
 					    _updateLineNC($object->element, $object->id, $line->id, $line->array_options['options_subtotal_nc']);
512 588
 					}
513 589
 					return count($TLineAdded);
514
-				}
515
-				else
590
+				} else
516 591
 				{
517 592
 					$object->db->rollback();
518 593
 					return -1;
@@ -528,10 +603,14 @@  discard block
 block discarded – undo
528 603
 		global $langs;
529 604
 		
530 605
 		// Besoin de comparer sur les 2 formes d'écriture
531
-		if (!$key_is_id) $TTitle_search = array($langs->trans($key_trad), $langs->transnoentitiesnoconv($key_trad));
606
+		if (!$key_is_id) {
607
+			$TTitle_search = array($langs->trans($key_trad), $langs->transnoentitiesnoconv($key_trad));
608
+		}
532 609
 		
533 610
 		$TTitle_under_search = array();
534
-		if (!empty($under_title)) $TTitle_under_search = array($langs->trans($under_title), $langs->transnoentitiesnoconv($under_title));
611
+		if (!empty($under_title)) {
612
+			$TTitle_under_search = array($langs->trans($under_title), $langs->transnoentitiesnoconv($under_title));
613
+		}
535 614
 		
536 615
 		$TLine = array();
537 616
 		$add_line = false;
@@ -541,28 +620,37 @@  discard block
 block discarded – undo
541 620
 		{
542 621
 			if (!$under_title_found && !empty($TTitle_under_search))
543 622
 			{
544
-				if ($line->product_type == 9 && (in_array($line->desc, $TTitle_under_search) || in_array($line->label, $TTitle_under_search)) ) $under_title_found = true;
545
-			}
546
-			else
623
+				if ($line->product_type == 9 && (in_array($line->desc, $TTitle_under_search) || in_array($line->label, $TTitle_under_search)) ) {
624
+					$under_title_found = true;
625
+				}
626
+			} else
547 627
 			{
548 628
 				if ( ($key_is_id && $line->id == $key_trad) || (!$key_is_id && $line->product_type == 9 && $line->qty == $level && (in_array($line->desc, $TTitle_search) || in_array($line->label, $TTitle_search) )))
549 629
 				{
550
-					if ($key_is_id) $level = $line->qty;
630
+					if ($key_is_id) {
631
+						$level = $line->qty;
632
+					}
551 633
 					
552 634
 					$add_line = true;
553
-					if ($withBlockLine) $TLine[] = $line;
635
+					if ($withBlockLine) {
636
+						$TLine[] = $line;
637
+					}
554 638
 					continue;
555
-				}
556
-				elseif ($add_line && TSubtotal::isModSubtotalLine($line) && TSubtotal::getNiveau($line) == $level) // Si on tombe sur un sous-total, il faut que ce soit un du même niveau que le titre
639
+				} elseif ($add_line && TSubtotal::isModSubtotalLine($line) && TSubtotal::getNiveau($line) == $level) {
640
+					// Si on tombe sur un sous-total, il faut que ce soit un du même niveau que le titre
557 641
 				{
558 642
 					if ($withBlockLine) $TLine[] = $line;
643
+				}
559 644
 					break;
560 645
 				}
561 646
 				
562 647
 				if ($add_line)
563 648
 				{
564
-					if (!$withBlockLine && (self::isTitle($line) || self::isSubtotal($line)) ) continue;
565
-					else $TLine[] = $line;
649
+					if (!$withBlockLine && (self::isTitle($line) || self::isSubtotal($line)) ) {
650
+						continue;
651
+					} else {
652
+						$TLine[] = $line;
653
+					}
566 654
 				}
567 655
 			}
568 656
 		}
@@ -596,7 +684,9 @@  discard block
 block discarded – undo
596 684
 				
597 685
 			case 'order_supplier':
598 686
 			    $object->special_code = SELF::$module_number;
599
-			    if (empty($desc)) $desc = $label;
687
+			    if (empty($desc)) {
688
+			    	$desc = $label;
689
+			    }
600 690
 			    $res = $object->updateline($rowid, $desc, $pu, $qty, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, $price_base_type, $info_bits, $type, 0, $date_start, $date_end, $array_options, $fk_unit);
601 691
 			    break;
602 692
 			
@@ -606,7 +696,9 @@  discard block
 block discarded – undo
606 696
 				
607 697
 			case 'invoice_supplier':
608 698
 			    $object->special_code = SELF::$module_number;
609
-			    if (empty($desc)) $desc = $label;
699
+			    if (empty($desc)) {
700
+			    	$desc = $label;
701
+			    }
610 702
 			    $res = $object->updateline($rowid, $desc, $pu, $txtva, $txlocaltax1, $txlocaltax2, $qty, 0, $price_base_type, $info_bits, $type, $remise_percent, 0, $date_start, $date_end, $array_options, $fk_unit);
611 703
 			    break;
612 704
 				
@@ -623,8 +715,11 @@  discard block
 block discarded – undo
623 715
 				break;
624 716
 		}
625 717
 		
626
-		if ($res <= 0) $object->db->rollback();
627
-		else $object->db->commit();
718
+		if ($res <= 0) {
719
+			$object->db->rollback();
720
+		} else {
721
+			$object->db->commit();
722
+		}
628 723
 		
629 724
 		return $res;
630 725
 	}
@@ -634,24 +729,20 @@  discard block
 block discarded – undo
634 729
 		global $db, $object;
635 730
 		
636 731
 		$TTitle = array();
637
-		if(! empty($object->id) && in_array($object->element, array('propal', 'commande', 'facture'))) {}
638
-		else {
732
+		if(! empty($object->id) && in_array($object->element, array('propal', 'commande', 'facture'))) {} else {
639 733
 			if ($origin_line->element == 'propaldet')
640 734
 			{
641 735
 				$object = new Propal($db);
642 736
 				$object->fetch($origin_line->fk_propal);
643
-			}
644
-			else if ($origin_line->element == 'commandedet')
737
+			} else if ($origin_line->element == 'commandedet')
645 738
 			{
646 739
 				$object = new Commande($db);
647 740
 				$object->fetch($origin_line->fk_commande);
648
-			}
649
-			else if ($origin_line->element == 'facturedet')
741
+			} else if ($origin_line->element == 'facturedet')
650 742
 			{
651 743
 				$object = new Facture($db);
652 744
 				$object->fetch($origin_line->fk_facture);
653
-			}
654
-			else
745
+			} else
655 746
 			{
656 747
 				return $TTitle;
657 748
 			}
@@ -661,8 +752,11 @@  discard block
 block discarded – undo
661 752
 		$i = 0;
662 753
 		foreach ($object->lines as &$line)
663 754
 		{
664
-			if ($origin_line->id == $line->id) break;
665
-			else $i++;
755
+			if ($origin_line->id == $line->id) {
756
+				break;
757
+			} else {
758
+				$i++;
759
+			}
666 760
 		}
667 761
 		
668 762
 		$i--; // Skip la ligne d'origine
@@ -677,35 +771,43 @@  discard block
 block discarded – undo
677 771
 				if (self::isSubtotal($object->lines[$y]))
678 772
 				{
679 773
 					$next_title_lvl_to_skip = self::getNiveau($object->lines[$y]);
680
-				}
681
-				elseif (self::isTitle($object->lines[$y]))
774
+				} elseif (self::isTitle($object->lines[$y]))
682 775
 				{
683 776
 					if ($object->lines[$y]->qty == $next_title_lvl_to_skip)
684 777
 					{
685 778
 						$next_title_lvl_to_skip = 0;
686 779
 						continue;
687
-					}
688
-					else
780
+					} else
689 781
 					{
690
-						if (empty($object->lines[$y]->array_options)) $object->lines[$y]->fetch_optionals();
782
+						if (empty($object->lines[$y]->array_options)) {
783
+							$object->lines[$y]->fetch_optionals();
784
+						}
691 785
 						$TTitle[$object->lines[$y]->id] = $object->lines[$y];
692 786
 						
693
-						if ($object->lines[$y]->qty == 1) break;
787
+						if ($object->lines[$y]->qty == 1) {
788
+							break;
789
+						}
694 790
 					}
695 791
 				}
696 792
 			}
697 793
 		}
698 794
 		
699
-		if ($reverse) $TTitle = array_reverse($TTitle, true);
795
+		if ($reverse) {
796
+			$TTitle = array_reverse($TTitle, true);
797
+		}
700 798
 		
701 799
 		return $TTitle;
702 800
 	}
703 801
 	
704 802
 	public static function getNiveau(&$line)
705 803
 	{
706
-		if (self::isTitle($line)) return $line->qty;
707
-		elseif (self::isSubtotal($line)) return 100 - $line->qty;
708
-		else return 0;
804
+		if (self::isTitle($line)) {
805
+			return $line->qty;
806
+		} elseif (self::isSubtotal($line)) {
807
+			return 100 - $line->qty;
808
+		} else {
809
+			return 0;
810
+		}
709 811
 	}
710 812
 	
711 813
 	/**
@@ -730,10 +832,16 @@  discard block
 block discarded – undo
730 832
 		$objmarge->marge_droite = 10;
731 833
 		
732 834
 		$objectref = dol_sanitizeFileName($object->ref);
733
-		if ($object->element == 'propal') $dir = $conf->propal->dir_output . '/' . $objectref;
734
-		elseif ($object->element == 'commande') $dir = $conf->commande->dir_output . '/' . $objectref;
735
-		elseif ($object->element == 'facture') $dir = $conf->facture->dir_output . '/' . $objectref;
736
-		elseif ($object->element == 'facturerec') return; // no PDF for facturerec
835
+		if ($object->element == 'propal') {
836
+			$dir = $conf->propal->dir_output . '/' . $objectref;
837
+		} elseif ($object->element == 'commande') {
838
+			$dir = $conf->commande->dir_output . '/' . $objectref;
839
+		} elseif ($object->element == 'facture') {
840
+			$dir = $conf->facture->dir_output . '/' . $objectref;
841
+		} elseif ($object->element == 'facturerec') {
842
+			return;
843
+		}
844
+		// no PDF for facturerec
737 845
 		else
738 846
 		{
739 847
 			setEventMessage($langs->trans('warning_subtotal_recap_object_element_unknown', $object->element), 'warnings');
@@ -768,7 +876,9 @@  discard block
 block discarded – undo
768 876
 		$pdf->SetCreator("Dolibarr ".DOL_VERSION);
769 877
 		$pdf->SetAuthor($outputlangs->convToOutputCharset($user->getFullName($outputlangs)));
770 878
 		$pdf->SetKeyWords($outputlangs->convToOutputCharset($object->ref)." ".$outputlangs->transnoentities("subtotalRecap")." ".$outputlangs->convToOutputCharset($object->thirdparty->name));
771
-		if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false);
879
+		if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) {
880
+			$pdf->SetCompression(false);
881
+		}
772 882
 
773 883
 		$pdf->SetMargins($objmarge->marge_gauche, $objmarge->marge_haute, $objmarge->marge_droite);   // Left, Top, Right
774 884
 
@@ -778,7 +888,9 @@  discard block
 block discarded – undo
778 888
 			
779 889
 		// New page
780 890
 		$pdf->AddPage();
781
-		if (! empty($tplidx)) $pdf->useTemplate($tplidx);
891
+		if (! empty($tplidx)) {
892
+			$pdf->useTemplate($tplidx);
893
+		}
782 894
 		$pagenb++;
783 895
 		
784 896
 		
@@ -834,8 +946,10 @@  discard block
 block discarded – undo
834 946
 					{
835 947
 						$TTot['TTotal_tva_multicurrency'][$tx] += $amount;
836 948
 					}	
949
+				} else {
950
+					$pdf->SetFont('','', $default_font_size - 1);
837 951
 				}
838
-				else $pdf->SetFont('','', $default_font_size - 1);   // Into loop to work with multipage
952
+				// Into loop to work with multipage
839 953
 				
840 954
 				$pdf->SetTextColor(0,0,0);
841 955
 				
@@ -857,9 +971,11 @@  discard block
 block discarded – undo
857 971
 				$pdf->startTransaction();
858 972
 				$pdf->writeHTMLCell($posx_options-$posx_designation-$decalage, 3, $posx_designation+$decalage, $curY, $outputlangs->convToOutputCharset($label), 0, 1, false, true, 'J',true);
859 973
 				$pageposafter=$pdf->getPage();
860
-				if ($pageposafter > $pageposbefore)	// There is a pagebreak
974
+				if ($pageposafter > $pageposbefore) {
975
+					// There is a pagebreak
861 976
 				{
862 977
 					$pdf->rollbackTransaction(true);
978
+				}
863 979
 					$pageposafter=$pageposbefore;
864 980
 					//print $pageposafter.'-'.$pageposbefore;exit;
865 981
 					$pdf->setPageOrientation('', 1, $heightforfooter);	// The only function to edit the bottom margin of current page to set it.
@@ -868,23 +984,27 @@  discard block
 block discarded – undo
868 984
 					$pageposafter=$pdf->getPage();
869 985
 					$posyafter=$pdf->GetY();
870 986
 					//var_dump($posyafter); var_dump(($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))); exit;
871
-					if ($posyafter > ($objmarge->page_hauteur - ($heightforfooter+$heightforinfotot)))	// There is no space left for total+free text
987
+					if ($posyafter > ($objmarge->page_hauteur - ($heightforfooter+$heightforinfotot))) {
988
+						// There is no space left for total+free text
872 989
 					{
873 990
 						if ($i == ($nblignes-1))	// No more lines, and no space left to show total, so we create a new page
874 991
 						{
875 992
 							$pdf->AddPage('','',true);
876
-							if (! empty($tplidx)) $pdf->useTemplate($tplidx);
877
-							if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) self::pagehead($objmarge, $pdf, $object, 0, $outputlangs);
993
+					}
994
+							if (! empty($tplidx)) {
995
+								$pdf->useTemplate($tplidx);
996
+							}
997
+							if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) {
998
+								self::pagehead($objmarge, $pdf, $object, 0, $outputlangs);
999
+							}
878 1000
 							$pdf->setPage($pageposafter+1);
879 1001
 						}
880
-					}
881
-					else
1002
+					} else
882 1003
 					{
883 1004
 						// We found a page break
884 1005
 						$showpricebeforepagebreak=0;
885 1006
 					}
886
-				}
887
-				else	// No pagebreak
1007
+				} else	// No pagebreak
888 1008
 				{
889 1009
 					$pdf->commitTransaction();
890 1010
 				}
@@ -924,8 +1044,7 @@  discard block
 block discarded – undo
924 1044
 					if ($pagenb == 1)
925 1045
 					{
926 1046
 						self::tableau($objmarge, $pdf, $posx_designation, $posx_options, $posx_montant, $tab_top, $objmarge->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1, $object->multicurrency_code);
927
-					}
928
-					else
1047
+					} else
929 1048
 					{
930 1049
 						self::tableau($objmarge, $pdf, $posx_designation, $posx_options, $posx_montant, $tab_top_newpage, $objmarge->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, $hidetop, 1, $object->multicurrency_code);
931 1050
 					}
@@ -933,7 +1052,9 @@  discard block
 block discarded – undo
933 1052
 					$pagenb++;
934 1053
 					$pdf->setPage($pagenb);
935 1054
 					$pdf->setPageOrientation('', 1, 0);	// The only function to edit the bottom margin of current page to set it.
936
-					if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) self::pagehead($objmarge, $pdf, $object, 0, $outputlangs);
1055
+					if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) {
1056
+						self::pagehead($objmarge, $pdf, $object, 0, $outputlangs);
1057
+					}
937 1058
 				}
938 1059
 			}
939 1060
 		}
@@ -943,8 +1064,7 @@  discard block
 block discarded – undo
943 1064
 		{
944 1065
 			self::tableau($objmarge, $pdf, $posx_designation, $posx_options, $posx_montant, $tab_top, $objmarge->page_hauteur - $tab_top - $heightforinfotot - $heightforfooter, 0, $outputlangs, 0, 0, $object->multicurrency_code);
945 1066
 			$bottomlasttab=$objmarge->page_hauteur - $heightforinfotot - $heightforfooter + 1;
946
-		}
947
-		else
1067
+		} else
948 1068
 		{
949 1069
 			self::tableau($objmarge, $pdf, $posx_designation, $posx_options, $posx_montant, $tab_top_newpage, $objmarge->page_hauteur - $tab_top_newpage - $heightforinfotot - $heightforfooter, 0, $outputlangs, $hidetop, 0, $object->multicurrency_code);
950 1070
 			$bottomlasttab=$objmarge->page_hauteur - $heightforinfotot - $heightforfooter + 1;
@@ -958,7 +1078,9 @@  discard block
 block discarded – undo
958 1078
 		
959 1079
 		$pagecount = self::concat($outputlangs, array($origin_file, $file), $origin_file);
960 1080
 		
961
-		if (empty($conf->global->SUBTOTAL_KEEP_RECAP_FILE)) unlink($file);
1081
+		if (empty($conf->global->SUBTOTAL_KEEP_RECAP_FILE)) {
1082
+			unlink($file);
1083
+		}
962 1084
 	}
963 1085
 	
964 1086
 	private static function printLevel($objmarge, $pdf, $line, $curY, $posx_designation)
@@ -1001,8 +1123,7 @@  discard block
 block discarded – undo
1001 1123
 			{
1002 1124
 			    $height=pdf_getHeightForLogo($logo);
1003 1125
 			    $pdf->Image($logo, $objmarge->marge_gauche, $posy, 0, $height);	// width=0 (auto)
1004
-			}
1005
-			else
1126
+			} else
1006 1127
 			{
1007 1128
 				$pdf->SetTextColor(200,0,0);
1008 1129
 				$pdf->SetFont('','B',$default_font_size - 2);
@@ -1011,8 +1132,7 @@  discard block
 block discarded – undo
1011 1132
 			}
1012 1133
 			
1013 1134
 			$posy+=35;
1014
-		}
1015
-		else
1135
+		} else
1016 1136
 		{
1017 1137
 			$text=$mysoc->name;
1018 1138
 			$pdf->MultiCell(100, 4, $outputlangs->convToOutputCharset($text), 0, 'L');
@@ -1026,9 +1146,13 @@  discard block
 block discarded – undo
1026 1146
 		$pdf->SetXY($objmarge->marge_gauche,$posy);
1027 1147
 		
1028 1148
 		$key = 'subtotalPropalTitle';
1029
-		if ($object->element == 'commande') $key = 'subtotalCommandeTitle';
1030
-		elseif ($object->element == 'facture') $key = 'subtotalInvoiceTitle';
1031
-		elseif ($object->element == 'facturerec') $key = 'subtotalInvoiceTitle';
1149
+		if ($object->element == 'commande') {
1150
+			$key = 'subtotalCommandeTitle';
1151
+		} elseif ($object->element == 'facture') {
1152
+			$key = 'subtotalInvoiceTitle';
1153
+		} elseif ($object->element == 'facturerec') {
1154
+			$key = 'subtotalInvoiceTitle';
1155
+		}
1032 1156
 		
1033 1157
 		$pdf->MultiCell(150, 4, $outputlangs->transnoentities($key, $object->ref, $object->thirdparty->name), '', 'L');
1034 1158
 		
@@ -1063,7 +1187,9 @@  discard block
 block discarded – undo
1063 1187
 		
1064 1188
 		// Force to disable hidetop and hidebottom
1065 1189
 		$hidebottom=0;
1066
-		if ($hidetop) $hidetop=-1;
1190
+		if ($hidetop) {
1191
+			$hidetop=-1;
1192
+		}
1067 1193
 
1068 1194
 		$currency = !empty($currency) ? $currency : $conf->currency;
1069 1195
 		$default_font_size = pdf_getPDFFontSize($outputlangs);
@@ -1078,7 +1204,9 @@  discard block
 block discarded – undo
1078 1204
 			$pdf->SetXY($objmarge->page_largeur - $objmarge->marge_droite - ($pdf->GetStringWidth($titre) + 3), $tab_top-4.5);
1079 1205
 			$pdf->MultiCell(($pdf->GetStringWidth($titre) + 3), 2, $titre);
1080 1206
 			
1081
-			if (! empty($conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)) $pdf->Rect($objmarge->marge_gauche, $tab_top, $objmarge->page_largeur-$objmarge->marge_droite-$objmarge->marge_gauche, 8, 'F', null, explode(',',$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR));
1207
+			if (! empty($conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)) {
1208
+				$pdf->Rect($objmarge->marge_gauche, $tab_top, $objmarge->page_largeur-$objmarge->marge_droite-$objmarge->marge_gauche, 8, 'F', null, explode(',',$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR));
1209
+			}
1082 1210
 			
1083 1211
 			
1084 1212
 			$pdf->line($objmarge->marge_gauche, $tab_top, $objmarge->page_largeur-$objmarge->marge_droite, $tab_top);	// line prend une position y en 2eme param et 4eme param
@@ -1091,8 +1219,7 @@  discard block
 block discarded – undo
1091 1219
 			$pdf->MultiCell($objmarge->page_largeur - $objmarge->marge_droite - $posx_montant,2, $outputlangs->transnoentities("Amount"),'','R');
1092 1220
 			
1093 1221
 			$pdf->line($objmarge->marge_gauche, $tab_top+8, $objmarge->page_largeur-$objmarge->marge_droite, $tab_top+8);	// line prend une position y en 2eme param et 4eme param
1094
-		}
1095
-		else
1222
+		} else
1096 1223
 		{
1097 1224
 			$pdf->line($objmarge->marge_gauche, $tab_top-2, $objmarge->page_largeur-$objmarge->marge_droite, $tab_top-2);	// line prend une position y en 2eme param et 4eme param
1098 1225
 		}
@@ -1113,10 +1240,12 @@  discard block
 block discarded – undo
1113 1240
 
1114 1241
 		// Tableau total
1115 1242
 		$col1x = 120; $col2x = 170;
1116
-		if ($objmarge->page_largeur < 210) // To work with US executive format
1243
+		if ($objmarge->page_largeur < 210) {
1244
+			// To work with US executive format
1117 1245
 		{
1118 1246
 			$col2x-=20;
1119 1247
 		}
1248
+		}
1120 1249
 		$largcol2 = ($objmarge->page_largeur - $objmarge->marge_droite - $col2x);
1121 1250
 
1122 1251
 		$useborder=0;
@@ -1138,9 +1267,11 @@  discard block
 block discarded – undo
1138 1267
 		$atleastoneratenotnull=0;
1139 1268
 		foreach($TTot['TTotal_tva'] as $tvakey => $tvaval)
1140 1269
 		{
1141
-			if ($tvakey != 0)    // On affiche pas taux 0
1270
+			if ($tvakey != 0) {
1271
+				// On affiche pas taux 0
1142 1272
 			{
1143 1273
 				$atleastoneratenotnull++;
1274
+			}
1144 1275
 
1145 1276
 				$index++;
1146 1277
 				$pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index);
@@ -1193,9 +1324,13 @@  discard block
 block discarded – undo
1193 1324
 	 */
1194 1325
     private static function printRect($pdf, $x, $y, $l, $h, $hidetop=0, $hidebottom=0)
1195 1326
     {
1196
-	    if (empty($hidetop) || $hidetop==-1) $pdf->line($x, $y, $x+$l, $y);
1327
+	    if (empty($hidetop) || $hidetop==-1) {
1328
+	    	$pdf->line($x, $y, $x+$l, $y);
1329
+	    }
1197 1330
 	    $pdf->line($x+$l, $y, $x+$l, $y+$h);
1198
-	    if (empty($hidebottom)) $pdf->line($x+$l, $y+$h, $x, $y+$h);
1331
+	    if (empty($hidebottom)) {
1332
+	    	$pdf->line($x+$l, $y+$h, $x, $y+$h);
1333
+	    }
1199 1334
 	    $pdf->line($x, $y+$h, $x, $y);
1200 1335
     }
1201 1336
 	
@@ -1204,7 +1339,9 @@  discard block
 block discarded – undo
1204 1339
 	{
1205 1340
 		global $conf;
1206 1341
 		
1207
-		if (empty($fileoutput)) $fileoutput = $file[0];
1342
+		if (empty($fileoutput)) {
1343
+			$fileoutput = $file[0];
1344
+		}
1208 1345
 		
1209 1346
 		$pdf=pdf_getInstance();
1210 1347
         if (class_exists('TCPDF'))
@@ -1214,7 +1351,9 @@  discard block
 block discarded – undo
1214 1351
         }
1215 1352
         $pdf->SetFont(pdf_getPDFFont($outputlangs));
1216 1353
 
1217
-        if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false);
1354
+        if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) {
1355
+        	$pdf->SetCompression(false);
1356
+        }
1218 1357
 
1219 1358
 		
1220 1359
 		foreach($files as $file)
@@ -1230,7 +1369,9 @@  discard block
 block discarded – undo
1230 1369
 		}
1231 1370
 		
1232 1371
 		$pdf->Output($fileoutput,'F');
1233
-		if (! empty($conf->global->MAIN_UMASK)) @chmod($file, octdec($conf->global->MAIN_UMASK));
1372
+		if (! empty($conf->global->MAIN_UMASK)) {
1373
+			@chmod($file, octdec($conf->global->MAIN_UMASK));
1374
+		}
1234 1375
 
1235 1376
 		return $pagecount;
1236 1377
 	}
@@ -1243,7 +1384,9 @@  discard block
 block discarded – undo
1243 1384
 	 */
1244 1385
 	public static function hasNcTitle(&$line)
1245 1386
 	{
1246
-		if(isset($line->has_nc_title)) return $line->has_nc_title;
1387
+		if(isset($line->has_nc_title)) {
1388
+			return $line->has_nc_title;
1389
+		}
1247 1390
 
1248 1391
 		$TTitle = self::getAllTitleFromLine($line);
1249 1392
 		foreach ($TTitle as &$line_title)
@@ -1268,7 +1411,9 @@  discard block
 block discarded – undo
1268 1411
 	public static function getTitleLabel($line)
1269 1412
 	{
1270 1413
 		$title = $line->label;
1271
-		if (empty($title)) $title = !empty($line->description) ? $line->description : $line->desc;
1414
+		if (empty($title)) {
1415
+			$title = !empty($line->description) ? $line->description : $line->desc;
1416
+		}
1272 1417
 		return $title;
1273 1418
 	}
1274 1419
 }
Please login to merge, or discard this patch.
core/modules/modSubtotal.class.php 2 patches
Indentation   +399 added lines, -399 removed lines patch added patch discarded remove patch
@@ -31,182 +31,182 @@  discard block
 block discarded – undo
31 31
 class modSubtotal extends DolibarrModules
32 32
 {
33 33
 
34
-    /**
35
-     * 	Constructor. Define names, constants, directories, boxes, permissions
36
-     *
37
-     * 	@param	DoliDB		$db	Database handler
38
-     */
34
+	/**
35
+	 * 	Constructor. Define names, constants, directories, boxes, permissions
36
+	 *
37
+	 * 	@param	DoliDB		$db	Database handler
38
+	 */
39 39
      
40
-    public function __construct($db)
41
-    {
42
-        global $langs, $conf;
40
+	public function __construct($db)
41
+	{
42
+		global $langs, $conf;
43 43
 
44
-        $this->db = $db;
44
+		$this->db = $db;
45 45
 
46 46
 		$this->editor_name = 'ATM-Consulting';
47
-        // Id for module (must be unique).
48
-        // Use a free id here
49
-        // (See in Home -> System information -> Dolibarr for list of used modules id).
50
-        $this->numero = 104777; // 104000 to 104999 for ATM CONSULTING
51
-        // Key text used to identify module (for permissions, menus, etc...)
52
-        $this->rights_class = 'subtotal';
47
+		// Id for module (must be unique).
48
+		// Use a free id here
49
+		// (See in Home -> System information -> Dolibarr for list of used modules id).
50
+		$this->numero = 104777; // 104000 to 104999 for ATM CONSULTING
51
+		// Key text used to identify module (for permissions, menus, etc...)
52
+		$this->rights_class = 'subtotal';
53 53
 
54
-        // Family can be 'crm','financial','hr','projects','products','ecm','technic','other'
55
-        // It is used to group modules in module setup page
56
-        $this->family = "technic";
57
-        // Module label (no space allowed)
58
-        // used if translation string 'ModuleXXXName' not found
59
-        // (where XXX is value of numeric property 'numero' of module)
60
-        $this->name = preg_replace('/^mod/i', '', get_class($this));
61
-        // Module description
62
-        // used if translation string 'ModuleXXXDesc' not found
63
-        // (where XXX is value of numeric property 'numero' of module)
64
-        $this->description = "Module permettant l'ajout de sous-totaux et sous-totaux intermédiaires et le déplacement d'une ligne aisée de l'un dans l'autre";
65
-        // Possible values for version are: 'development', 'experimental' or version
66
-        $this->version = '3.1.6';
67
-        // Key used in llx_const table to save module status enabled/disabled
68
-        // (where MYMODULE is value of property name of module in uppercase)
69
-        $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name);
70
-        // Where to store the module in setup page
71
-        // (0=common,1=interface,2=others,3=very specific)
72
-        $this->special = 2;
73
-        // Name of image file used for this module.
74
-        // If file is in theme/yourtheme/img directory under name object_pictovalue.png
75
-        // use this->picto='pictovalue'
76
-        // If file is in module/img directory under name object_pictovalue.png
77
-        // use this->picto='pictovalue@module'
78
-        $this->picto = 'subtotal@subtotal'; // mypicto@titre
79
-        // Defined all module parts (triggers, login, substitutions, menus, css, etc...)
80
-        // for default path (eg: /titre/core/xxxxx) (0=disable, 1=enable)
81
-        // for specific path of parts (eg: /titre/core/modules/barcode)
82
-        // for specific css file (eg: /titre/css/titre.css.php)
83
-        $this->module_parts = array(
84
-            // Set this to 1 if module has its own trigger directory
85
-            'triggers' => 1,
86
-            // Set this to 1 if module has its own login method directory
87
-            //'login' => 0,
88
-            // Set this to 1 if module has its own substitution function file
89
-            //'substitutions' => 0,
90
-            // Set this to 1 if module has its own menus handler directory
91
-            //'menus' => 0,
92
-            // Set this to 1 if module has its own barcode directory
93
-            //'barcode' => 0,
94
-            // Set this to 1 if module has its own models directory
95
-            'models' => 1,
96
-            // Set this to relative path of css if module has its own css file
97
-            //'css' => '/titre/css/mycss.css.php',
98
-            // Set here all hooks context managed by module
99
-            'hooks' => array(
100
-                'invoicecard'
101
-                ,'invoicesuppliercard'
102
-                ,'propalcard'
103
-                ,'supplier_proposalcard'
104
-                ,'ordercard'
105
-                ,'ordersuppliercard'
106
-                ,'odtgeneration'
107
-                ,'orderstoinvoice'
108
-                ,'admin'
109
-                ,'invoicereccard'
110
-                ,'consumptionthirdparty'
111
-            )
112
-            // Set here all workflow context managed by module
113
-            //'workflow' => array('order' => array('WORKFLOW_ORDER_AUTOCREATE_INVOICE'))
114
-        );
54
+		// Family can be 'crm','financial','hr','projects','products','ecm','technic','other'
55
+		// It is used to group modules in module setup page
56
+		$this->family = "technic";
57
+		// Module label (no space allowed)
58
+		// used if translation string 'ModuleXXXName' not found
59
+		// (where XXX is value of numeric property 'numero' of module)
60
+		$this->name = preg_replace('/^mod/i', '', get_class($this));
61
+		// Module description
62
+		// used if translation string 'ModuleXXXDesc' not found
63
+		// (where XXX is value of numeric property 'numero' of module)
64
+		$this->description = "Module permettant l'ajout de sous-totaux et sous-totaux intermédiaires et le déplacement d'une ligne aisée de l'un dans l'autre";
65
+		// Possible values for version are: 'development', 'experimental' or version
66
+		$this->version = '3.1.6';
67
+		// Key used in llx_const table to save module status enabled/disabled
68
+		// (where MYMODULE is value of property name of module in uppercase)
69
+		$this->const_name = 'MAIN_MODULE_' . strtoupper($this->name);
70
+		// Where to store the module in setup page
71
+		// (0=common,1=interface,2=others,3=very specific)
72
+		$this->special = 2;
73
+		// Name of image file used for this module.
74
+		// If file is in theme/yourtheme/img directory under name object_pictovalue.png
75
+		// use this->picto='pictovalue'
76
+		// If file is in module/img directory under name object_pictovalue.png
77
+		// use this->picto='pictovalue@module'
78
+		$this->picto = 'subtotal@subtotal'; // mypicto@titre
79
+		// Defined all module parts (triggers, login, substitutions, menus, css, etc...)
80
+		// for default path (eg: /titre/core/xxxxx) (0=disable, 1=enable)
81
+		// for specific path of parts (eg: /titre/core/modules/barcode)
82
+		// for specific css file (eg: /titre/css/titre.css.php)
83
+		$this->module_parts = array(
84
+			// Set this to 1 if module has its own trigger directory
85
+			'triggers' => 1,
86
+			// Set this to 1 if module has its own login method directory
87
+			//'login' => 0,
88
+			// Set this to 1 if module has its own substitution function file
89
+			//'substitutions' => 0,
90
+			// Set this to 1 if module has its own menus handler directory
91
+			//'menus' => 0,
92
+			// Set this to 1 if module has its own barcode directory
93
+			//'barcode' => 0,
94
+			// Set this to 1 if module has its own models directory
95
+			'models' => 1,
96
+			// Set this to relative path of css if module has its own css file
97
+			//'css' => '/titre/css/mycss.css.php',
98
+			// Set here all hooks context managed by module
99
+			'hooks' => array(
100
+				'invoicecard'
101
+				,'invoicesuppliercard'
102
+				,'propalcard'
103
+				,'supplier_proposalcard'
104
+				,'ordercard'
105
+				,'ordersuppliercard'
106
+				,'odtgeneration'
107
+				,'orderstoinvoice'
108
+				,'admin'
109
+				,'invoicereccard'
110
+				,'consumptionthirdparty'
111
+			)
112
+			// Set here all workflow context managed by module
113
+			//'workflow' => array('order' => array('WORKFLOW_ORDER_AUTOCREATE_INVOICE'))
114
+		);
115 115
 
116
-        // Data directories to create when module is enabled.
117
-        // Example: this->dirs = array("/titre/temp");
118
-        $this->dirs = array();
116
+		// Data directories to create when module is enabled.
117
+		// Example: this->dirs = array("/titre/temp");
118
+		$this->dirs = array();
119 119
 
120
-        // Config pages. Put here list of php pages
121
-        // stored into titre/admin directory, used to setup module.
122
-        $this->config_page_url = array("subtotal_setup.php@subtotal");
120
+		// Config pages. Put here list of php pages
121
+		// stored into titre/admin directory, used to setup module.
122
+		$this->config_page_url = array("subtotal_setup.php@subtotal");
123 123
 
124
-        // Dependencies
125
-        // List of modules id that must be enabled if this module is enabled
126
-        $this->depends = array();
124
+		// Dependencies
125
+		// List of modules id that must be enabled if this module is enabled
126
+		$this->depends = array();
127 127
 
128 128
 		$this->conflictwith=array('modMilestone');
129
-        // List of modules id to disable if this one is disabled
130
-        $this->requiredby = array();
131
-        // Minimum version of PHP required by module
132
-        $this->phpmin = array(5, 3);
133
-        // Minimum version of Dolibarr required by module
134
-        $this->need_dolibarr_version = array(3, 2);
135
-        $this->langfiles = array("subtotal@subtotal"); // langfiles@titre
136
-        // Constants
137
-        // List of particular constants to add when module is enabled
138
-        // (key, 'chaine', value, desc, visible, 'current' or 'allentities', deleteonunactive)
139
-        // Example:
140
-        $this->const = array(
141
-            	0=>array(
142
-            		'SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES',
143
-            		'chaine',
144
-            		'I',
145
-            		'Définit le style (B : gras, I : Italique, U : Souligné) des sous titres lorsque le détail des lignes et des ensembles est caché',
146
-            		1
147
-            	)
129
+		// List of modules id to disable if this one is disabled
130
+		$this->requiredby = array();
131
+		// Minimum version of PHP required by module
132
+		$this->phpmin = array(5, 3);
133
+		// Minimum version of Dolibarr required by module
134
+		$this->need_dolibarr_version = array(3, 2);
135
+		$this->langfiles = array("subtotal@subtotal"); // langfiles@titre
136
+		// Constants
137
+		// List of particular constants to add when module is enabled
138
+		// (key, 'chaine', value, desc, visible, 'current' or 'allentities', deleteonunactive)
139
+		// Example:
140
+		$this->const = array(
141
+				0=>array(
142
+					'SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES',
143
+					'chaine',
144
+					'I',
145
+					'Définit le style (B : gras, I : Italique, U : Souligné) des sous titres lorsque le détail des lignes et des ensembles est caché',
146
+					1
147
+				)
148 148
 				,1=>array('SUBTOTAL_ALLOW_ADD_BLOCK', 'chaine', '1', 'Permet l\'ajout de titres et sous-totaux')
149 149
 				,2=>array('SUBTOTAL_ALLOW_EDIT_BLOCK', 'chaine', '1', 'Permet de modifier titres et sous-totaux')
150 150
 				,3=>array('SUBTOTAL_ALLOW_REMOVE_BLOCK', 'chaine', '1', 'Permet de supprimer les titres et sous-totaux')
151 151
 				,4=>array('SUBTOTAL_TITLE_STYLE', 'chaine', 'BU')
152 152
 				,5=>array('SUBTOTAL_SUBTOTAL_STYLE', 'chaine', 'B')
153
-            //	1=>array(
154
-            //		'MYMODULE_MYNEWCONST2',
155
-            //		'chaine',
156
-            //		'myvalue',
157
-            //		'This is another constant to add',
158
-            //		0
159
-            //	)
160
-        );
153
+			//	1=>array(
154
+			//		'MYMODULE_MYNEWCONST2',
155
+			//		'chaine',
156
+			//		'myvalue',
157
+			//		'This is another constant to add',
158
+			//		0
159
+			//	)
160
+		);
161 161
 		
162 162
 
163 163
 
164 164
 
165
-        // Array to add new pages in new tabs
166
-        // Example:
167
-        $this->tabs = array(
168
-            //	// To add a new tab identified by code tabname1
169
-            //	'objecttype:+tabname1:Title1:langfile@titre:$user->rights->titre->read:/titre/mynewtab1.php?id=__ID__',
170
-            //	// To add another new tab identified by code tabname2
171
-            //	'objecttype:+tabname2:Title2:langfile@titre:$user->rights->othermodule->read:/titre/mynewtab2.php?id=__ID__',
172
-            //	// To remove an existing tab identified by code tabname
173
-            //	'objecttype:-tabname'
174
-        );
175
-        // where objecttype can be
176
-        // 'thirdparty'			to add a tab in third party view
177
-        // 'intervention'		to add a tab in intervention view
178
-        // 'order_supplier'		to add a tab in supplier order view
179
-        // 'invoice_supplier'	to add a tab in supplier invoice view
180
-        // 'invoice'			to add a tab in customer invoice view
181
-        // 'order'				to add a tab in customer order view
182
-        // 'product'			to add a tab in product view
183
-        // 'stock'				to add a tab in stock view
184
-        // 'propal'				to add a tab in propal view
185
-        // 'member'				to add a tab in fundation member view
186
-        // 'contract'			to add a tab in contract view
187
-        // 'user'				to add a tab in user view
188
-        // 'group'				to add a tab in group view
189
-        // 'contact'			to add a tab in contact view
190
-        // 'categories_x'		to add a tab in category view
191
-        // (replace 'x' by type of category (0=product, 1=supplier, 2=customer, 3=member)
192
-        // Dictionnaries
193
-        if (! isset($conf->subtotal->enabled)) {
194
-            $conf->subtotal=new stdClass();
195
-            $conf->subtotal->enabled = 0;
196
-        }
197
-        $this->dictionaries = array(
165
+		// Array to add new pages in new tabs
166
+		// Example:
167
+		$this->tabs = array(
168
+			//	// To add a new tab identified by code tabname1
169
+			//	'objecttype:+tabname1:Title1:langfile@titre:$user->rights->titre->read:/titre/mynewtab1.php?id=__ID__',
170
+			//	// To add another new tab identified by code tabname2
171
+			//	'objecttype:+tabname2:Title2:langfile@titre:$user->rights->othermodule->read:/titre/mynewtab2.php?id=__ID__',
172
+			//	// To remove an existing tab identified by code tabname
173
+			//	'objecttype:-tabname'
174
+		);
175
+		// where objecttype can be
176
+		// 'thirdparty'			to add a tab in third party view
177
+		// 'intervention'		to add a tab in intervention view
178
+		// 'order_supplier'		to add a tab in supplier order view
179
+		// 'invoice_supplier'	to add a tab in supplier invoice view
180
+		// 'invoice'			to add a tab in customer invoice view
181
+		// 'order'				to add a tab in customer order view
182
+		// 'product'			to add a tab in product view
183
+		// 'stock'				to add a tab in stock view
184
+		// 'propal'				to add a tab in propal view
185
+		// 'member'				to add a tab in fundation member view
186
+		// 'contract'			to add a tab in contract view
187
+		// 'user'				to add a tab in user view
188
+		// 'group'				to add a tab in group view
189
+		// 'contact'			to add a tab in contact view
190
+		// 'categories_x'		to add a tab in category view
191
+		// (replace 'x' by type of category (0=product, 1=supplier, 2=customer, 3=member)
192
+		// Dictionnaries
193
+		if (! isset($conf->subtotal->enabled)) {
194
+			$conf->subtotal=new stdClass();
195
+			$conf->subtotal->enabled = 0;
196
+		}
197
+		$this->dictionaries = array(
198 198
 			'langs'=>'subtotal@subtotal',
199
-            'tabname'=>array(MAIN_DB_PREFIX.'c_subtotal_free_text'),		// List of tables we want to see into dictonnary editor
200
-            'tablib'=>array($langs->trans('subtotalFreeLineDictionary')),													// Label of tables
201
-            'tabsql'=>array('SELECT f.rowid as rowid, f.label, f.content, f.entity, f.active FROM '.MAIN_DB_PREFIX.'c_subtotal_free_text as f WHERE f.entity='.$conf->entity),	// Request to select fields
202
-            'tabsqlsort'=>array('label ASC'),																					// Sort order
203
-            'tabfield'=>array('label,content'),							// List of fields (result of select to show dictionary)
204
-            'tabfieldvalue'=>array('label,content'),						// List of fields (list of fields to edit a record)
205
-            'tabfieldinsert'=>array('label,content,entity'),					// List of fields (list of fields for insert)
206
-            'tabrowid'=>array('rowid'),											// Name of columns with primary key (try to always name it 'rowid')
207
-            'tabcond'=>array($conf->subtotal->enabled)	
199
+			'tabname'=>array(MAIN_DB_PREFIX.'c_subtotal_free_text'),		// List of tables we want to see into dictonnary editor
200
+			'tablib'=>array($langs->trans('subtotalFreeLineDictionary')),													// Label of tables
201
+			'tabsql'=>array('SELECT f.rowid as rowid, f.label, f.content, f.entity, f.active FROM '.MAIN_DB_PREFIX.'c_subtotal_free_text as f WHERE f.entity='.$conf->entity),	// Request to select fields
202
+			'tabsqlsort'=>array('label ASC'),																					// Sort order
203
+			'tabfield'=>array('label,content'),							// List of fields (result of select to show dictionary)
204
+			'tabfieldvalue'=>array('label,content'),						// List of fields (list of fields to edit a record)
205
+			'tabfieldinsert'=>array('label,content,entity'),					// List of fields (list of fields for insert)
206
+			'tabrowid'=>array('rowid'),											// Name of columns with primary key (try to always name it 'rowid')
207
+			'tabcond'=>array($conf->subtotal->enabled)	
208 208
 		);
209
-        /* Example:
209
+		/* Example:
210 210
           // This is to avoid warnings
211 211
           if (! isset($conf->titre->enabled)) $conf->titre->enabled=0;
212 212
           $this->dictionnaries=array(
@@ -247,223 +247,223 @@  discard block
 block discarded – undo
247 247
           );
248 248
          */
249 249
 
250
-        // Boxes
251
-        // Add here list of php file(s) stored in core/boxes that contains class to show a box.
252
-        $this->boxes = array(); // Boxes list
250
+		// Boxes
251
+		// Add here list of php file(s) stored in core/boxes that contains class to show a box.
252
+		$this->boxes = array(); // Boxes list
253 253
        
254
-        /*
254
+		/*
255 255
           $this->boxes[$r][1] = "myboxb.php";
256 256
           $r++;
257 257
          */
258 258
 
259
-        // Permissions
260
-        $this->rights = array(); // Permission array used by this module
261
-        $r = 0;
259
+		// Permissions
260
+		$this->rights = array(); // Permission array used by this module
261
+		$r = 0;
262 262
 
263
-        // Add here list of permission defined by
264
-        // an id, a label, a boolean and two constant strings.
265
-        // Example:
266
-        //// Permission id (must not be already used)
267
-        //$this->rights[$r][0] = 2000;
268
-        //// Permission label
269
-        //$this->rights[$r][1] = 'Permision label';
270
-        //// Permission by default for new user (0/1)
271
-        //$this->rights[$r][3] = 1;
272
-        //// In php code, permission will be checked by test
273
-        //// if ($user->rights->permkey->level1->level2)
274
-        //$this->rights[$r][4] = 'level1';
275
-        //// In php code, permission will be checked by test
276
-        //// if ($user->rights->permkey->level1->level2)
277
-        //$this->rights[$r][5] = 'level2';
278
-        //$r++;
279
-        // Main menu entries
280
-        $this->menus = array(); // List of menus to add
281
-        $r = 0;
263
+		// Add here list of permission defined by
264
+		// an id, a label, a boolean and two constant strings.
265
+		// Example:
266
+		//// Permission id (must not be already used)
267
+		//$this->rights[$r][0] = 2000;
268
+		//// Permission label
269
+		//$this->rights[$r][1] = 'Permision label';
270
+		//// Permission by default for new user (0/1)
271
+		//$this->rights[$r][3] = 1;
272
+		//// In php code, permission will be checked by test
273
+		//// if ($user->rights->permkey->level1->level2)
274
+		//$this->rights[$r][4] = 'level1';
275
+		//// In php code, permission will be checked by test
276
+		//// if ($user->rights->permkey->level1->level2)
277
+		//$this->rights[$r][5] = 'level2';
278
+		//$r++;
279
+		// Main menu entries
280
+		$this->menus = array(); // List of menus to add
281
+		$r = 0;
282 282
 
283
-        // Add here entries to declare new menus
284
-        //
285
-        // Example to declare a new Top Menu entry and its Left menu entry:
286
-        //$this->menu[$r]=array(
287
-        //	// Put 0 if this is a top menu
288
-        //	'fk_menu'=>0,
289
-        //	// This is a Top menu entry
290
-        //	'type'=>'top',
291
-        //	'titre'=>'titre top menu',
292
-        //	'mainmenu'=>'titre',
293
-        //	'leftmenu'=>'titre',
294
-        //	'url'=>'/titre/pagetop.php',
295
-        //	// Lang file to use (without .lang) by module.
296
-        //	// File must be in langs/code_CODE/ directory.
297
-        //	'langs'=>'mylangfile',
298
-        //	'position'=>100,
299
-        //	// Define condition to show or hide menu entry.
300
-        //	// Use '$conf->titre->enabled' if entry must be visible if module is enabled.
301
-        //	'enabled'=>'$conf->titre->enabled',
302
-        //	// Use 'perms'=>'$user->rights->titre->level1->level2'
303
-        //	// if you want your menu with a permission rules
304
-        //	'perms'=>'1',
305
-        //	'target'=>'',
306
-        //	// 0=Menu for internal users, 1=external users, 2=both
307
-        //	'user'=>2
308
-        //);
309
-        //$r++;
310
-        //$this->menu[$r]=array(
311
-        //	// Use r=value where r is index key used for the parent menu entry
312
-        //	// (higher parent must be a top menu entry)
313
-        //	'fk_menu'=>'r=0',
314
-        //	// This is a Left menu entry
315
-        //	'type'=>'left',
316
-        //	'titre'=>'titre left menu',
317
-        //	'mainmenu'=>'titre',
318
-        //	'leftmenu'=>'titre',
319
-        //	'url'=>'/titre/pagelevel1.php',
320
-        //	// Lang file to use (without .lang) by module.
321
-        //	// File must be in langs/code_CODE/ directory.
322
-        //	'langs'=>'mylangfile',
323
-        //	'position'=>100,
324
-        //	// Define condition to show or hide menu entry.
325
-        //	// Use '$conf->titre->enabled' if entry must be visible if module is enabled.
326
-        //	'enabled'=>'$conf->titre->enabled',
327
-        //	// Use 'perms'=>'$user->rights->titre->level1->level2'
328
-        //	// if you want your menu with a permission rules
329
-        //	'perms'=>'1',
330
-        //	'target'=>'',
331
-        //	// 0=Menu for internal users, 1=external users, 2=both
332
-        //	'user'=>2
333
-        //);
334
-        //$r++;
335
-        //
336
-        // Example to declare a Left Menu entry into an existing Top menu entry:
337
-        //$this->menu[$r]=array(
338
-        //	// Use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy'
339
-        //	'fk_menu'=>'fk_mainmenu=mainmenucode',
340
-        //	// This is a Left menu entry
341
-        //	'type'=>'left',
342
-        //	'titre'=>'titre left menu',
343
-        //	'mainmenu'=>'mainmenucode',
344
-        //	'leftmenu'=>'titre',
345
-        //	'url'=>'/titre/pagelevel2.php',
346
-        //	// Lang file to use (without .lang) by module.
347
-        //	// File must be in langs/code_CODE/ directory.
348
-        //	'langs'=>'mylangfile',
349
-        //	'position'=>100,
350
-        //	// Define condition to show or hide menu entry.
351
-        //	// Use '$conf->titre->enabled' if entry must be visible if module is enabled.
352
-        //	// Use '$leftmenu==\'system\'' to show if leftmenu system is selected.
353
-        //	'enabled'=>'$conf->titre->enabled',
354
-        //	// Use 'perms'=>'$user->rights->titre->level1->level2'
355
-        //	// if you want your menu with a permission rules
356
-        //	'perms'=>'1',
357
-        //	'target'=>'',
358
-        //	// 0=Menu for internal users, 1=external users, 2=both
359
-        //	'user'=>2
360
-        //);
361
-        //$r++;
362
-        // Exports
363
-        $r = 1;
283
+		// Add here entries to declare new menus
284
+		//
285
+		// Example to declare a new Top Menu entry and its Left menu entry:
286
+		//$this->menu[$r]=array(
287
+		//	// Put 0 if this is a top menu
288
+		//	'fk_menu'=>0,
289
+		//	// This is a Top menu entry
290
+		//	'type'=>'top',
291
+		//	'titre'=>'titre top menu',
292
+		//	'mainmenu'=>'titre',
293
+		//	'leftmenu'=>'titre',
294
+		//	'url'=>'/titre/pagetop.php',
295
+		//	// Lang file to use (without .lang) by module.
296
+		//	// File must be in langs/code_CODE/ directory.
297
+		//	'langs'=>'mylangfile',
298
+		//	'position'=>100,
299
+		//	// Define condition to show or hide menu entry.
300
+		//	// Use '$conf->titre->enabled' if entry must be visible if module is enabled.
301
+		//	'enabled'=>'$conf->titre->enabled',
302
+		//	// Use 'perms'=>'$user->rights->titre->level1->level2'
303
+		//	// if you want your menu with a permission rules
304
+		//	'perms'=>'1',
305
+		//	'target'=>'',
306
+		//	// 0=Menu for internal users, 1=external users, 2=both
307
+		//	'user'=>2
308
+		//);
309
+		//$r++;
310
+		//$this->menu[$r]=array(
311
+		//	// Use r=value where r is index key used for the parent menu entry
312
+		//	// (higher parent must be a top menu entry)
313
+		//	'fk_menu'=>'r=0',
314
+		//	// This is a Left menu entry
315
+		//	'type'=>'left',
316
+		//	'titre'=>'titre left menu',
317
+		//	'mainmenu'=>'titre',
318
+		//	'leftmenu'=>'titre',
319
+		//	'url'=>'/titre/pagelevel1.php',
320
+		//	// Lang file to use (without .lang) by module.
321
+		//	// File must be in langs/code_CODE/ directory.
322
+		//	'langs'=>'mylangfile',
323
+		//	'position'=>100,
324
+		//	// Define condition to show or hide menu entry.
325
+		//	// Use '$conf->titre->enabled' if entry must be visible if module is enabled.
326
+		//	'enabled'=>'$conf->titre->enabled',
327
+		//	// Use 'perms'=>'$user->rights->titre->level1->level2'
328
+		//	// if you want your menu with a permission rules
329
+		//	'perms'=>'1',
330
+		//	'target'=>'',
331
+		//	// 0=Menu for internal users, 1=external users, 2=both
332
+		//	'user'=>2
333
+		//);
334
+		//$r++;
335
+		//
336
+		// Example to declare a Left Menu entry into an existing Top menu entry:
337
+		//$this->menu[$r]=array(
338
+		//	// Use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy'
339
+		//	'fk_menu'=>'fk_mainmenu=mainmenucode',
340
+		//	// This is a Left menu entry
341
+		//	'type'=>'left',
342
+		//	'titre'=>'titre left menu',
343
+		//	'mainmenu'=>'mainmenucode',
344
+		//	'leftmenu'=>'titre',
345
+		//	'url'=>'/titre/pagelevel2.php',
346
+		//	// Lang file to use (without .lang) by module.
347
+		//	// File must be in langs/code_CODE/ directory.
348
+		//	'langs'=>'mylangfile',
349
+		//	'position'=>100,
350
+		//	// Define condition to show or hide menu entry.
351
+		//	// Use '$conf->titre->enabled' if entry must be visible if module is enabled.
352
+		//	// Use '$leftmenu==\'system\'' to show if leftmenu system is selected.
353
+		//	'enabled'=>'$conf->titre->enabled',
354
+		//	// Use 'perms'=>'$user->rights->titre->level1->level2'
355
+		//	// if you want your menu with a permission rules
356
+		//	'perms'=>'1',
357
+		//	'target'=>'',
358
+		//	// 0=Menu for internal users, 1=external users, 2=both
359
+		//	'user'=>2
360
+		//);
361
+		//$r++;
362
+		// Exports
363
+		$r = 1;
364 364
 
365
-        // Example:
366
-        //$this->export_code[$r]=$this->rights_class.'_'.$r;
367
-        //// Translation key (used only if key ExportDataset_xxx_z not found)
368
-        //$this->export_label[$r]='CustomersInvoicesAndInvoiceLines';
369
-        //// Condition to show export in list (ie: '$user->id==3').
370
-        //// Set to 1 to always show when module is enabled.
371
-        //$this->export_enabled[$r]='1';
372
-        //$this->export_permission[$r]=array(array("facture","facture","export"));
373
-        //$this->export_fields_array[$r]=array(
374
-        //	's.rowid'=>"IdCompany",
375
-        //	's.nom'=>'CompanyName',
376
-        //	's.address'=>'Address',
377
-        //	's.cp'=>'Zip',
378
-        //	's.ville'=>'Town',
379
-        //	's.fk_pays'=>'Country',
380
-        //	's.tel'=>'Phone',
381
-        //	's.siren'=>'ProfId1',
382
-        //	's.siret'=>'ProfId2',
383
-        //	's.ape'=>'ProfId3',
384
-        //	's.idprof4'=>'ProfId4',
385
-        //	's.code_compta'=>'CustomerAccountancyCode',
386
-        //	's.code_compta_fournisseur'=>'SupplierAccountancyCode',
387
-        //	'f.rowid'=>"InvoiceId",
388
-        //	'f.facnumber'=>"InvoiceRef",
389
-        //	'f.datec'=>"InvoiceDateCreation",
390
-        //	'f.datef'=>"DateInvoice",
391
-        //	'f.total'=>"TotalHT",
392
-        //	'f.total_ttc'=>"TotalTTC",
393
-        //	'f.tva'=>"TotalVAT",
394
-        //	'f.paye'=>"InvoicePaid",
395
-        //	'f.fk_statut'=>'InvoiceStatus',
396
-        //	'f.note'=>"InvoiceNote",
397
-        //	'fd.rowid'=>'LineId',
398
-        //	'fd.description'=>"LineDescription",
399
-        //	'fd.price'=>"LineUnitPrice",
400
-        //	'fd.tva_tx'=>"LineVATRate",
401
-        //	'fd.qty'=>"LineQty",
402
-        //	'fd.total_ht'=>"LineTotalHT",
403
-        //	'fd.total_tva'=>"LineTotalTVA",
404
-        //	'fd.total_ttc'=>"LineTotalTTC",
405
-        //	'fd.date_start'=>"DateStart",
406
-        //	'fd.date_end'=>"DateEnd",
407
-        //	'fd.fk_product'=>'ProductId',
408
-        //	'p.ref'=>'ProductRef'
409
-        //);
410
-        //$this->export_entities_array[$r]=array('s.rowid'=>"company",
411
-        //	's.nom'=>'company',
412
-        //	's.address'=>'company',
413
-        //	's.cp'=>'company',
414
-        //	's.ville'=>'company',
415
-        //	's.fk_pays'=>'company',
416
-        //	's.tel'=>'company',
417
-        //	's.siren'=>'company',
418
-        //	's.siret'=>'company',
419
-        //	's.ape'=>'company',
420
-        //	's.idprof4'=>'company',
421
-        //	's.code_compta'=>'company',
422
-        //	's.code_compta_fournisseur'=>'company',
423
-        //	'f.rowid'=>"invoice",
424
-        //	'f.facnumber'=>"invoice",
425
-        //	'f.datec'=>"invoice",
426
-        //	'f.datef'=>"invoice",
427
-        //	'f.total'=>"invoice",
428
-        //	'f.total_ttc'=>"invoice",
429
-        //	'f.tva'=>"invoice",
430
-        //	'f.paye'=>"invoice",
431
-        //	'f.fk_statut'=>'invoice',
432
-        //	'f.note'=>"invoice",
433
-        //	'fd.rowid'=>'invoice_line',
434
-        //	'fd.description'=>"invoice_line",
435
-        //	'fd.price'=>"invoice_line",
436
-        //	'fd.total_ht'=>"invoice_line",
437
-        //	'fd.total_tva'=>"invoice_line",
438
-        //	'fd.total_ttc'=>"invoice_line",
439
-        //	'fd.tva_tx'=>"invoice_line",
440
-        //	'fd.qty'=>"invoice_line",
441
-        //	'fd.date_start'=>"invoice_line",
442
-        //	'fd.date_end'=>"invoice_line",
443
-        //	'fd.fk_product'=>'product',
444
-        //	'p.ref'=>'product'
445
-        //);
446
-        //$this->export_sql_start[$r] = 'SELECT DISTINCT ';
447
-        //$this->export_sql_end[$r] = ' FROM (' . MAIN_DB_PREFIX . 'facture as f, '
448
-        //	. MAIN_DB_PREFIX . 'facturedet as fd, ' . MAIN_DB_PREFIX . 'societe as s)';
449
-        //$this->export_sql_end[$r] .= ' LEFT JOIN ' . MAIN_DB_PREFIX
450
-        //	. 'product as p on (fd.fk_product = p.rowid)';
451
-        //$this->export_sql_end[$r] .= ' WHERE f.fk_soc = s.rowid '
452
-        //	. 'AND f.rowid = fd.fk_facture';
453
-        //$r++;
454
-    }
365
+		// Example:
366
+		//$this->export_code[$r]=$this->rights_class.'_'.$r;
367
+		//// Translation key (used only if key ExportDataset_xxx_z not found)
368
+		//$this->export_label[$r]='CustomersInvoicesAndInvoiceLines';
369
+		//// Condition to show export in list (ie: '$user->id==3').
370
+		//// Set to 1 to always show when module is enabled.
371
+		//$this->export_enabled[$r]='1';
372
+		//$this->export_permission[$r]=array(array("facture","facture","export"));
373
+		//$this->export_fields_array[$r]=array(
374
+		//	's.rowid'=>"IdCompany",
375
+		//	's.nom'=>'CompanyName',
376
+		//	's.address'=>'Address',
377
+		//	's.cp'=>'Zip',
378
+		//	's.ville'=>'Town',
379
+		//	's.fk_pays'=>'Country',
380
+		//	's.tel'=>'Phone',
381
+		//	's.siren'=>'ProfId1',
382
+		//	's.siret'=>'ProfId2',
383
+		//	's.ape'=>'ProfId3',
384
+		//	's.idprof4'=>'ProfId4',
385
+		//	's.code_compta'=>'CustomerAccountancyCode',
386
+		//	's.code_compta_fournisseur'=>'SupplierAccountancyCode',
387
+		//	'f.rowid'=>"InvoiceId",
388
+		//	'f.facnumber'=>"InvoiceRef",
389
+		//	'f.datec'=>"InvoiceDateCreation",
390
+		//	'f.datef'=>"DateInvoice",
391
+		//	'f.total'=>"TotalHT",
392
+		//	'f.total_ttc'=>"TotalTTC",
393
+		//	'f.tva'=>"TotalVAT",
394
+		//	'f.paye'=>"InvoicePaid",
395
+		//	'f.fk_statut'=>'InvoiceStatus',
396
+		//	'f.note'=>"InvoiceNote",
397
+		//	'fd.rowid'=>'LineId',
398
+		//	'fd.description'=>"LineDescription",
399
+		//	'fd.price'=>"LineUnitPrice",
400
+		//	'fd.tva_tx'=>"LineVATRate",
401
+		//	'fd.qty'=>"LineQty",
402
+		//	'fd.total_ht'=>"LineTotalHT",
403
+		//	'fd.total_tva'=>"LineTotalTVA",
404
+		//	'fd.total_ttc'=>"LineTotalTTC",
405
+		//	'fd.date_start'=>"DateStart",
406
+		//	'fd.date_end'=>"DateEnd",
407
+		//	'fd.fk_product'=>'ProductId',
408
+		//	'p.ref'=>'ProductRef'
409
+		//);
410
+		//$this->export_entities_array[$r]=array('s.rowid'=>"company",
411
+		//	's.nom'=>'company',
412
+		//	's.address'=>'company',
413
+		//	's.cp'=>'company',
414
+		//	's.ville'=>'company',
415
+		//	's.fk_pays'=>'company',
416
+		//	's.tel'=>'company',
417
+		//	's.siren'=>'company',
418
+		//	's.siret'=>'company',
419
+		//	's.ape'=>'company',
420
+		//	's.idprof4'=>'company',
421
+		//	's.code_compta'=>'company',
422
+		//	's.code_compta_fournisseur'=>'company',
423
+		//	'f.rowid'=>"invoice",
424
+		//	'f.facnumber'=>"invoice",
425
+		//	'f.datec'=>"invoice",
426
+		//	'f.datef'=>"invoice",
427
+		//	'f.total'=>"invoice",
428
+		//	'f.total_ttc'=>"invoice",
429
+		//	'f.tva'=>"invoice",
430
+		//	'f.paye'=>"invoice",
431
+		//	'f.fk_statut'=>'invoice',
432
+		//	'f.note'=>"invoice",
433
+		//	'fd.rowid'=>'invoice_line',
434
+		//	'fd.description'=>"invoice_line",
435
+		//	'fd.price'=>"invoice_line",
436
+		//	'fd.total_ht'=>"invoice_line",
437
+		//	'fd.total_tva'=>"invoice_line",
438
+		//	'fd.total_ttc'=>"invoice_line",
439
+		//	'fd.tva_tx'=>"invoice_line",
440
+		//	'fd.qty'=>"invoice_line",
441
+		//	'fd.date_start'=>"invoice_line",
442
+		//	'fd.date_end'=>"invoice_line",
443
+		//	'fd.fk_product'=>'product',
444
+		//	'p.ref'=>'product'
445
+		//);
446
+		//$this->export_sql_start[$r] = 'SELECT DISTINCT ';
447
+		//$this->export_sql_end[$r] = ' FROM (' . MAIN_DB_PREFIX . 'facture as f, '
448
+		//	. MAIN_DB_PREFIX . 'facturedet as fd, ' . MAIN_DB_PREFIX . 'societe as s)';
449
+		//$this->export_sql_end[$r] .= ' LEFT JOIN ' . MAIN_DB_PREFIX
450
+		//	. 'product as p on (fd.fk_product = p.rowid)';
451
+		//$this->export_sql_end[$r] .= ' WHERE f.fk_soc = s.rowid '
452
+		//	. 'AND f.rowid = fd.fk_facture';
453
+		//$r++;
454
+	}
455 455
 
456
-    /**
457
-     * Function called when module is enabled.
458
-     * The init function add constants, boxes, permissions and menus
459
-     * (defined in constructor) into Dolibarr database.
460
-     * It also creates data directories
461
-     *
462
-     * 	@param		string	$options	Options when enabling module ('', 'noboxes')
463
-     * 	@return		int					1 if OK, 0 if KO
464
-     */
465
-    public function init($options = '')
466
-    {
456
+	/**
457
+	 * Function called when module is enabled.
458
+	 * The init function add constants, boxes, permissions and menus
459
+	 * (defined in constructor) into Dolibarr database.
460
+	 * It also creates data directories
461
+	 *
462
+	 * 	@param		string	$options	Options when enabling module ('', 'noboxes')
463
+	 * 	@return		int					1 if OK, 0 if KO
464
+	 */
465
+	public function init($options = '')
466
+	{
467 467
 	  	global $conf, $db;
468 468
 		
469 469
 		
@@ -471,46 +471,46 @@  discard block
 block discarded – undo
471 471
 			exit("Attention, ce module rentre ne conflit avec le module Jalon/Milestones. Merci de le désactiver auparavant.");
472 472
 		}
473 473
       */
474
-	    $sql = array();
474
+		$sql = array();
475 475
 
476
-        $result = $this->loadTables();
477
-        dol_include_once('/core/class/extrafields.class.php');
476
+		$result = $this->loadTables();
477
+		dol_include_once('/core/class/extrafields.class.php');
478 478
 	
479
-        $extra = new ExtraFields($db); // propaldet, commandedet, facturedet
480
-        $TElementType = array('propaldet', 'commandedet', 'facturedet', 'supplier_proposaldet', 'commande_fournisseurdet', 'facture_fourn_det');
481
-        foreach($TElementType as $element_type) {
482
-            $extra->addExtraField('show_total_ht', 'Afficher le Total HT sur le sous-total', 'int', 0, 10, $element_type, 0, 0, '', unserialize('a:1:{s:7:"options";a:1:{s:0:"";N;}}'), 0, '', 0, 1);
483
-            $extra->addExtraField('show_reduc', 'Afficher la réduction sur le sous-total', 'int', 0, 10, $element_type, 0, 0, '', unserialize('a:1:{s:7:"options";a:1:{s:0:"";N;}}'), 0, '', 0, 1);
484
-        }
479
+		$extra = new ExtraFields($db); // propaldet, commandedet, facturedet
480
+		$TElementType = array('propaldet', 'commandedet', 'facturedet', 'supplier_proposaldet', 'commande_fournisseurdet', 'facture_fourn_det');
481
+		foreach($TElementType as $element_type) {
482
+			$extra->addExtraField('show_total_ht', 'Afficher le Total HT sur le sous-total', 'int', 0, 10, $element_type, 0, 0, '', unserialize('a:1:{s:7:"options";a:1:{s:0:"";N;}}'), 0, '', 0, 1);
483
+			$extra->addExtraField('show_reduc', 'Afficher la réduction sur le sous-total', 'int', 0, 10, $element_type, 0, 0, '', unserialize('a:1:{s:7:"options";a:1:{s:0:"";N;}}'), 0, '', 0, 1);
484
+		}
485 485
 		
486
-        return $this->_init($sql, $options);
487
-    }
486
+		return $this->_init($sql, $options);
487
+	}
488 488
 
489
-    /**
490
-     * Function called when module is disabled.
491
-     * Remove from database constants, boxes and permissions from Dolibarr database.
492
-     * Data directories are not deleted
493
-     *
494
-     * 	@param		string	$options	Options when enabling module ('', 'noboxes')
495
-     * 	@return		int					1 if OK, 0 if KO
496
-     */
497
-    public function remove($options = '')
498
-    {
499
-        $sql = array();
489
+	/**
490
+	 * Function called when module is disabled.
491
+	 * Remove from database constants, boxes and permissions from Dolibarr database.
492
+	 * Data directories are not deleted
493
+	 *
494
+	 * 	@param		string	$options	Options when enabling module ('', 'noboxes')
495
+	 * 	@return		int					1 if OK, 0 if KO
496
+	 */
497
+	public function remove($options = '')
498
+	{
499
+		$sql = array();
500 500
 
501
-        return $this->_remove($sql, $options);
502
-    }
501
+		return $this->_remove($sql, $options);
502
+	}
503 503
 
504
-    /**
505
-     * Create tables, keys and data required by module
506
-     * Files llx_table1.sql, llx_table1.key.sql llx_data.sql with create table, create keys
507
-     * and create data commands must be stored in directory /titre/sql/
508
-     * This function is called by this->init
509
-     *
510
-     * 	@return		int		<=0 if KO, >0 if OK
511
-     */
512
-    private function loadTables()
513
-    {
514
-        return $this->_load_tables('/subtotal/sql/');
515
-    }
504
+	/**
505
+	 * Create tables, keys and data required by module
506
+	 * Files llx_table1.sql, llx_table1.key.sql llx_data.sql with create table, create keys
507
+	 * and create data commands must be stored in directory /titre/sql/
508
+	 * This function is called by this->init
509
+	 *
510
+	 * 	@return		int		<=0 if KO, >0 if OK
511
+	 */
512
+	private function loadTables()
513
+	{
514
+		return $this->_load_tables('/subtotal/sql/');
515
+	}
516 516
 }
Please login to merge, or discard this patch.
Spacing   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -23,7 +23,7 @@  discard block
 block discarded – undo
23 23
  * 	\ingroup	titre
24 24
  * 	\brief		Description and activation file for module titre
25 25
  */
26
-include_once DOL_DOCUMENT_ROOT . "/core/modules/DolibarrModules.class.php";
26
+include_once DOL_DOCUMENT_ROOT."/core/modules/DolibarrModules.class.php";
27 27
 
28 28
 /**
29 29
  * Description and activation class for module titre
@@ -66,7 +66,7 @@  discard block
 block discarded – undo
66 66
         $this->version = '3.1.6';
67 67
         // Key used in llx_const table to save module status enabled/disabled
68 68
         // (where MYMODULE is value of property name of module in uppercase)
69
-        $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name);
69
+        $this->const_name = 'MAIN_MODULE_'.strtoupper($this->name);
70 70
         // Where to store the module in setup page
71 71
         // (0=common,1=interface,2=others,3=very specific)
72 72
         $this->special = 2;
@@ -125,7 +125,7 @@  discard block
 block discarded – undo
125 125
         // List of modules id that must be enabled if this module is enabled
126 126
         $this->depends = array();
127 127
 
128
-		$this->conflictwith=array('modMilestone');
128
+		$this->conflictwith = array('modMilestone');
129 129
         // List of modules id to disable if this one is disabled
130 130
         $this->requiredby = array();
131 131
         // Minimum version of PHP required by module
@@ -190,20 +190,20 @@  discard block
 block discarded – undo
190 190
         // 'categories_x'		to add a tab in category view
191 191
         // (replace 'x' by type of category (0=product, 1=supplier, 2=customer, 3=member)
192 192
         // Dictionnaries
193
-        if (! isset($conf->subtotal->enabled)) {
194
-            $conf->subtotal=new stdClass();
193
+        if (!isset($conf->subtotal->enabled)) {
194
+            $conf->subtotal = new stdClass();
195 195
             $conf->subtotal->enabled = 0;
196 196
         }
197 197
         $this->dictionaries = array(
198 198
 			'langs'=>'subtotal@subtotal',
199
-            'tabname'=>array(MAIN_DB_PREFIX.'c_subtotal_free_text'),		// List of tables we want to see into dictonnary editor
200
-            'tablib'=>array($langs->trans('subtotalFreeLineDictionary')),													// Label of tables
201
-            'tabsql'=>array('SELECT f.rowid as rowid, f.label, f.content, f.entity, f.active FROM '.MAIN_DB_PREFIX.'c_subtotal_free_text as f WHERE f.entity='.$conf->entity),	// Request to select fields
202
-            'tabsqlsort'=>array('label ASC'),																					// Sort order
203
-            'tabfield'=>array('label,content'),							// List of fields (result of select to show dictionary)
204
-            'tabfieldvalue'=>array('label,content'),						// List of fields (list of fields to edit a record)
205
-            'tabfieldinsert'=>array('label,content,entity'),					// List of fields (list of fields for insert)
206
-            'tabrowid'=>array('rowid'),											// Name of columns with primary key (try to always name it 'rowid')
199
+            'tabname'=>array(MAIN_DB_PREFIX.'c_subtotal_free_text'), // List of tables we want to see into dictonnary editor
200
+            'tablib'=>array($langs->trans('subtotalFreeLineDictionary')), // Label of tables
201
+            'tabsql'=>array('SELECT f.rowid as rowid, f.label, f.content, f.entity, f.active FROM '.MAIN_DB_PREFIX.'c_subtotal_free_text as f WHERE f.entity='.$conf->entity), // Request to select fields
202
+            'tabsqlsort'=>array('label ASC'), // Sort order
203
+            'tabfield'=>array('label,content'), // List of fields (result of select to show dictionary)
204
+            'tabfieldvalue'=>array('label,content'), // List of fields (list of fields to edit a record)
205
+            'tabfieldinsert'=>array('label,content,entity'), // List of fields (list of fields for insert)
206
+            'tabrowid'=>array('rowid'), // Name of columns with primary key (try to always name it 'rowid')
207 207
             'tabcond'=>array($conf->subtotal->enabled)	
208 208
 		);
209 209
         /* Example:
@@ -478,7 +478,7 @@  discard block
 block discarded – undo
478 478
 	
479 479
         $extra = new ExtraFields($db); // propaldet, commandedet, facturedet
480 480
         $TElementType = array('propaldet', 'commandedet', 'facturedet', 'supplier_proposaldet', 'commande_fournisseurdet', 'facture_fourn_det');
481
-        foreach($TElementType as $element_type) {
481
+        foreach ($TElementType as $element_type) {
482 482
             $extra->addExtraField('show_total_ht', 'Afficher le Total HT sur le sous-total', 'int', 0, 10, $element_type, 0, 0, '', unserialize('a:1:{s:7:"options";a:1:{s:0:"";N;}}'), 0, '', 0, 1);
483 483
             $extra->addExtraField('show_reduc', 'Afficher la réduction sur le sous-total', 'int', 0, 10, $element_type, 0, 0, '', unserialize('a:1:{s:7:"options";a:1:{s:0:"";N;}}'), 0, '', 0, 1);
484 484
         }
Please login to merge, or discard this patch.