@@ -75,8 +75,11 @@ discard block |
||
75 | 75 | if ($object->statut == 0 && $createRight) { |
76 | 76 | |
77 | 77 | |
78 | - if($object->element=='facture')$idvar = 'facid'; |
|
79 | - else $idvar='id'; |
|
78 | + if($object->element=='facture') { |
|
79 | + $idvar = 'facid'; |
|
80 | + } else { |
|
81 | + $idvar='id'; |
|
82 | + } |
|
80 | 83 | |
81 | 84 | if(in_array($action, array('add_title_line', 'add_total_line', 'add_subtitle_line', 'add_subtotal_line', 'add_free_text')) ) |
82 | 85 | { |
@@ -84,10 +87,11 @@ discard block |
||
84 | 87 | |
85 | 88 | if($action=='add_title_line') { |
86 | 89 | $title = GETPOST('title'); |
87 | - if(empty($title)) $title = $langs->trans('title'); |
|
90 | + if(empty($title)) { |
|
91 | + $title = $langs->trans('title'); |
|
92 | + } |
|
88 | 93 | $qty = $level<1 ? 1 : $level ; |
89 | - } |
|
90 | - else if($action=='add_free_text') { |
|
94 | + } else if($action=='add_free_text') { |
|
91 | 95 | $title = GETPOST('title'); |
92 | 96 | |
93 | 97 | if (empty($title)) { |
@@ -99,29 +103,31 @@ discard block |
||
99 | 103 | } |
100 | 104 | } |
101 | 105 | } |
102 | - if(empty($title)) $title = $langs->trans('subtotalAddLineDescription'); |
|
106 | + if(empty($title)) { |
|
107 | + $title = $langs->trans('subtotalAddLineDescription'); |
|
108 | + } |
|
103 | 109 | $qty = 50; |
104 | - } |
|
105 | - else if($action=='add_subtitle_line') { |
|
110 | + } else if($action=='add_subtitle_line') { |
|
106 | 111 | $title = GETPOST('title'); |
107 | - if(empty($title)) $title = $langs->trans('subtitle'); |
|
112 | + if(empty($title)) { |
|
113 | + $title = $langs->trans('subtitle'); |
|
114 | + } |
|
108 | 115 | $qty = 2; |
109 | - } |
|
110 | - else if($action=='add_subtotal_line') { |
|
116 | + } else if($action=='add_subtotal_line') { |
|
111 | 117 | $title = $langs->trans('SubSubTotal'); |
112 | 118 | $qty = 98; |
113 | - } |
|
114 | - else { |
|
119 | + } else { |
|
115 | 120 | $title = GETPOST('title') ? GETPOST('title') : $langs->trans('SubTotal'); |
116 | 121 | $qty = $level ? 100-$level : 99; |
117 | 122 | } |
118 | 123 | dol_include_once('/subtotal/class/subtotal.class.php'); |
119 | 124 | |
120 | - if (!empty($conf->global->SUBTOTAL_AUTO_ADD_SUBTOTAL_ON_ADDING_NEW_TITLE) && $qty < 10) TSubtotal::addSubtotalMissing($object, $qty); |
|
125 | + if (!empty($conf->global->SUBTOTAL_AUTO_ADD_SUBTOTAL_ON_ADDING_NEW_TITLE) && $qty < 10) { |
|
126 | + TSubtotal::addSubtotalMissing($object, $qty); |
|
127 | + } |
|
121 | 128 | |
122 | 129 | TSubtotal::addSubTotalLine($object, $title, $qty); |
123 | - } |
|
124 | - else if($action==='ask_deleteallline') { |
|
130 | + } else if($action==='ask_deleteallline') { |
|
125 | 131 | $form=new Form($db); |
126 | 132 | |
127 | 133 | $lineid = GETPOST('lineid','integer'); |
@@ -144,8 +150,7 @@ discard block |
||
144 | 150 | $this->printNewFormat($object, $conf, $langs, $idvar); |
145 | 151 | } |
146 | 152 | } |
147 | - } |
|
148 | - elseif ((!empty($parameters['currentcontext']) && $parameters['currentcontext'] == 'orderstoinvoice') || in_array('orderstoinvoice',$contexts)) |
|
153 | + } elseif ((!empty($parameters['currentcontext']) && $parameters['currentcontext'] == 'orderstoinvoice') || in_array('orderstoinvoice',$contexts)) |
|
149 | 154 | { |
150 | 155 | ?> |
151 | 156 | <script type="text/javascript"> |
@@ -163,8 +168,13 @@ discard block |
||
163 | 168 | |
164 | 169 | function printNewFormat(&$object, &$conf, &$langs, $idvar) |
165 | 170 | { |
166 | - if (empty($conf->global->SUBTOTAL_ALLOW_ADD_BLOCK)) return false; |
|
167 | - if (!empty($object->situation_cycle_ref) && $object->situation_counter > 1) return false; // Si facture de situation |
|
171 | + if (empty($conf->global->SUBTOTAL_ALLOW_ADD_BLOCK)) { |
|
172 | + return false; |
|
173 | + } |
|
174 | + if (!empty($object->situation_cycle_ref) && $object->situation_counter > 1) { |
|
175 | + return false; |
|
176 | + } |
|
177 | + // Si facture de situation |
|
168 | 178 | ?> |
169 | 179 | <script type="text/javascript"> |
170 | 180 | $(document).ready(function() { |
@@ -449,8 +459,7 @@ discard block |
||
449 | 459 | } |
450 | 460 | |
451 | 461 | |
452 | - } |
|
453 | - else{ |
|
462 | + } else{ |
|
454 | 463 | $substitutionarray['line_not_modsubtotal'] = true; |
455 | 464 | $substitutionarray['line_modsubtotal'] = 0; |
456 | 465 | } |
@@ -508,8 +517,11 @@ discard block |
||
508 | 517 | |
509 | 518 | $showBlockExtrafields = GETPOST('showBlockExtrafields'); |
510 | 519 | |
511 | - if($object->element=='facture') $idvar = 'facid'; |
|
512 | - else $idvar = 'id'; |
|
520 | + if($object->element=='facture') { |
|
521 | + $idvar = 'facid'; |
|
522 | + } else { |
|
523 | + $idvar = 'id'; |
|
524 | + } |
|
513 | 525 | |
514 | 526 | if ($action == 'updateligne' || $action == 'updateline') |
515 | 527 | { |
@@ -539,8 +551,7 @@ discard block |
||
539 | 551 | header('Location: '.$_SERVER['PHP_SELF'].'?'.$idvar.'='.$object->id); |
540 | 552 | exit; // Surtout ne pas laisser Dolibarr faire du traitement sur le updateligne sinon ça plante les données de la ligne |
541 | 553 | } |
542 | - } |
|
543 | - else if($action === 'builddoc') { |
|
554 | + } else if($action === 'builddoc') { |
|
544 | 555 | |
545 | 556 | if ( |
546 | 557 | in_array('invoicecard',explode(':',$parameters['context'])) |
@@ -555,33 +566,27 @@ discard block |
||
555 | 566 | $sessname = 'subtotal_hideInnerLines_facture'; |
556 | 567 | $sessname2 = 'subtotal_hidedetails_facture'; |
557 | 568 | $sessname3 = 'subtotal_hideprices_facture'; |
558 | - } |
|
559 | - elseif(in_array('invoicesuppliercard',explode(':',$parameters['context']))) { |
|
569 | + } elseif(in_array('invoicesuppliercard',explode(':',$parameters['context']))) { |
|
560 | 570 | $sessname = 'subtotal_hideInnerLines_facture_fournisseur'; |
561 | 571 | $sessname2 = 'subtotal_hidedetails_facture_fournisseur'; |
562 | 572 | $sessname3 = 'subtotal_hideprices_facture_fournisseur'; |
563 | - } |
|
564 | - elseif(in_array('propalcard',explode(':',$parameters['context']))) { |
|
573 | + } elseif(in_array('propalcard',explode(':',$parameters['context']))) { |
|
565 | 574 | $sessname = 'subtotal_hideInnerLines_propal'; |
566 | 575 | $sessname2 = 'subtotal_hidedetails_propal'; |
567 | 576 | $sessname3 = 'subtotal_hideprices_propal'; |
568 | - } |
|
569 | - elseif(in_array('supplier_proposalcard',explode(':',$parameters['context']))) { |
|
577 | + } elseif(in_array('supplier_proposalcard',explode(':',$parameters['context']))) { |
|
570 | 578 | $sessname = 'subtotal_hideInnerLines_supplier_proposal'; |
571 | 579 | $sessname2 = 'subtotal_hidedetails_supplier_proposal'; |
572 | 580 | $sessname3 = 'subtotal_hideprices_supplier_proposal'; |
573 | - } |
|
574 | - elseif(in_array('ordercard',explode(':',$parameters['context']))) { |
|
581 | + } elseif(in_array('ordercard',explode(':',$parameters['context']))) { |
|
575 | 582 | $sessname = 'subtotal_hideInnerLines_commande'; |
576 | 583 | $sessname2 = 'subtotal_hidedetails_commande'; |
577 | 584 | $sessname3 = 'subtotal_hideprices_commande'; |
578 | - } |
|
579 | - elseif(in_array('ordersuppliercard',explode(':',$parameters['context']))) { |
|
585 | + } elseif(in_array('ordersuppliercard',explode(':',$parameters['context']))) { |
|
580 | 586 | $sessname = 'subtotal_hideInnerLines_commande_fournisseur'; |
581 | 587 | $sessname2 = 'subtotal_hidedetails_commande_fournisseur'; |
582 | 588 | $sessname3 = 'subtotal_hideprices_commande_fournisseur'; |
583 | - } |
|
584 | - else { |
|
589 | + } else { |
|
585 | 590 | $sessname = 'subtotal_hideInnerLines_unknown'; |
586 | 591 | $sessname2 = 'subtotal_hidedetails_unknown'; |
587 | 592 | $sessname3 = 'subtotal_hideprices_unknown'; |
@@ -603,8 +608,7 @@ discard block |
||
603 | 608 | |
604 | 609 | if($line->qty>=90) { |
605 | 610 | $line->modsubtotal_total = 1; |
606 | - } |
|
607 | - else{ |
|
611 | + } else{ |
|
608 | 612 | $line->modsubtotal_title = 1; |
609 | 613 | } |
610 | 614 | |
@@ -613,8 +617,7 @@ discard block |
||
613 | 617 | } |
614 | 618 | } |
615 | 619 | |
616 | - } |
|
617 | - else if($action === 'confirm_delete_all_lines' && GETPOST('confirm')=='yes') { |
|
620 | + } else if($action === 'confirm_delete_all_lines' && GETPOST('confirm')=='yes') { |
|
618 | 621 | |
619 | 622 | $Tab = $this->getArrayOfLineForAGroup($object, GETPOST('lineid')); |
620 | 623 | |
@@ -622,7 +625,9 @@ discard block |
||
622 | 625 | /** |
623 | 626 | * @var $object Facture |
624 | 627 | */ |
625 | - if($object->element=='facture') $object->deleteline($idLine); |
|
628 | + if($object->element=='facture') { |
|
629 | + $object->deleteline($idLine); |
|
630 | + } |
|
626 | 631 | /** |
627 | 632 | * @var $object Facture fournisseur |
628 | 633 | */ |
@@ -633,18 +638,25 @@ discard block |
||
633 | 638 | /** |
634 | 639 | * @var $object Propal |
635 | 640 | */ |
636 | - else if($object->element=='propal') $object->deleteline($idLine); |
|
641 | + else if($object->element=='propal') { |
|
642 | + $object->deleteline($idLine); |
|
643 | + } |
|
637 | 644 | /** |
638 | 645 | * @var $object Propal Fournisseur |
639 | 646 | */ |
640 | - else if($object->element=='supplier_proposal') $object->deleteline($idLine); |
|
647 | + else if($object->element=='supplier_proposal') { |
|
648 | + $object->deleteline($idLine); |
|
649 | + } |
|
641 | 650 | /** |
642 | 651 | * @var $object Commande |
643 | 652 | */ |
644 | 653 | else if($object->element=='commande') |
645 | 654 | { |
646 | - if ((float) DOL_VERSION >= 5.0) $object->deleteline($user, $idLine); |
|
647 | - else $object->deleteline($idLine); |
|
655 | + if ((float) DOL_VERSION >= 5.0) { |
|
656 | + $object->deleteline($user, $idLine); |
|
657 | + } else { |
|
658 | + $object->deleteline($idLine); |
|
659 | + } |
|
648 | 660 | } |
649 | 661 | /** |
650 | 662 | * @var $object Commande fournisseur |
@@ -656,21 +668,26 @@ discard block |
||
656 | 668 | /** |
657 | 669 | * @var $object Facturerec |
658 | 670 | */ |
659 | - else if($object->element=='facturerec') $object->deleteline($idLine); |
|
671 | + else if($object->element=='facturerec') { |
|
672 | + $object->deleteline($idLine); |
|
673 | + } |
|
660 | 674 | } |
661 | 675 | |
662 | 676 | header('location:?id='.$object->id); |
663 | 677 | exit; |
664 | 678 | |
665 | - } |
|
666 | - else if ($action == 'duplicate') |
|
679 | + } else if ($action == 'duplicate') |
|
667 | 680 | { |
668 | 681 | $lineid = GETPOST('lineid', 'int'); |
669 | 682 | $nbDuplicate = TSubtotal::duplicateLines($object, $lineid, true); |
670 | 683 | |
671 | - if ($nbDuplicate > 0) setEventMessage($langs->trans('subtotal_duplicate_success', $nbDuplicate)); |
|
672 | - elseif ($nbDuplicate == 0) setEventMessage($langs->trans('subtotal_duplicate_lineid_not_found'), 'warnings'); |
|
673 | - else setEventMessage($langs->trans('subtotal_duplicate_error'), 'errors'); |
|
684 | + if ($nbDuplicate > 0) { |
|
685 | + setEventMessage($langs->trans('subtotal_duplicate_success', $nbDuplicate)); |
|
686 | + } elseif ($nbDuplicate == 0) { |
|
687 | + setEventMessage($langs->trans('subtotal_duplicate_lineid_not_found'), 'warnings'); |
|
688 | + } else { |
|
689 | + setEventMessage($langs->trans('subtotal_duplicate_error'), 'errors'); |
|
690 | + } |
|
674 | 691 | |
675 | 692 | header('Location: ?id='.$object->id); |
676 | 693 | exit; |
@@ -750,17 +767,18 @@ discard block |
||
750 | 767 | //print $l->rang.'>='.$rang.' '.$total.'<br/>'; |
751 | 768 | if($l->rang>=$rang) { |
752 | 769 | //echo 'return!<br>'; |
753 | - if (!$return_all) return $total; |
|
754 | - else return array($total, $total_tva, $total_ttc, $TTotal_tva); |
|
755 | - } |
|
756 | - else if(TSubtotal::isTitle($l, 100 - $qty_line)) |
|
770 | + if (!$return_all) { |
|
771 | + return $total; |
|
772 | + } else { |
|
773 | + return array($total, $total_tva, $total_ttc, $TTotal_tva); |
|
774 | + } |
|
775 | + } else if(TSubtotal::isTitle($l, 100 - $qty_line)) |
|
757 | 776 | { |
758 | 777 | $total = 0; |
759 | 778 | $total_tva = 0; |
760 | 779 | $total_ttc = 0; |
761 | 780 | $TTotal_tva = array(); |
762 | - } |
|
763 | - elseif(!TSubtotal::isTitle($l) && !TSubtotal::isSubtotal($l)) { |
|
781 | + } elseif(!TSubtotal::isTitle($l) && !TSubtotal::isSubtotal($l)) { |
|
764 | 782 | $total += $l->total_ht; |
765 | 783 | $total_tva += $l->total_tva; |
766 | 784 | $TTotal_tva[$l->tva_tx] += $l->total_tva; |
@@ -768,8 +786,11 @@ discard block |
||
768 | 786 | } |
769 | 787 | |
770 | 788 | } |
771 | - if (!$return_all) return $total; |
|
772 | - else return array($total, $total_tva, $total_ttc, $TTotal_tva); |
|
789 | + if (!$return_all) { |
|
790 | + return $total; |
|
791 | + } else { |
|
792 | + return array($total, $total_tva, $total_ttc, $TTotal_tva); |
|
793 | + } |
|
773 | 794 | } |
774 | 795 | |
775 | 796 | /* |
@@ -837,15 +858,18 @@ discard block |
||
837 | 858 | } |
838 | 859 | |
839 | 860 | |
840 | - if($line->qty==99) |
|
841 | - $pdf->SetFillColor(220,220,220); |
|
842 | - elseif ($line->qty==98) |
|
843 | - $pdf->SetFillColor(230,230,230); |
|
844 | - else |
|
845 | - $pdf->SetFillColor(240,240,240); |
|
861 | + if($line->qty==99) { |
|
862 | + $pdf->SetFillColor(220,220,220); |
|
863 | + } elseif ($line->qty==98) { |
|
864 | + $pdf->SetFillColor(230,230,230); |
|
865 | + } else { |
|
866 | + $pdf->SetFillColor(240,240,240); |
|
867 | + } |
|
846 | 868 | |
847 | 869 | $style = 'B'; |
848 | - if (!empty($conf->global->SUBTOTAL_SUBTOTAL_STYLE)) $style = $conf->global->SUBTOTAL_SUBTOTAL_STYLE; |
|
870 | + if (!empty($conf->global->SUBTOTAL_SUBTOTAL_STYLE)) { |
|
871 | + $style = $conf->global->SUBTOTAL_SUBTOTAL_STYLE; |
|
872 | + } |
|
849 | 873 | |
850 | 874 | $pdf->SetFont('', $style, 9); |
851 | 875 | |
@@ -884,8 +908,7 @@ discard block |
||
884 | 908 | // $line->total_tva |
885 | 909 | // $line->total |
886 | 910 | // $line->total_ttc |
887 | - } |
|
888 | - else |
|
911 | + } else |
|
889 | 912 | { |
890 | 913 | list($total, $total_tva, $total_ttc, $TTotal_tva) = $this->getTotalLineFromObject($object, $line, '', 1); |
891 | 914 | if(get_class($object) == 'Facture' && $object->type==Facture::TYPE_SITUATION){//Facture de situation |
@@ -902,11 +925,14 @@ discard block |
||
902 | 925 | } |
903 | 926 | |
904 | 927 | $pdf->SetXY($pdf->postotalht, $posy); |
905 | - if($set_pagebreak_margin) $pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin); |
|
928 | + if($set_pagebreak_margin) { |
|
929 | + $pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin); |
|
930 | + } |
|
906 | 931 | $pdf->MultiCell($pdf->page_largeur-$pdf->marge_droite-$pdf->postotalht, 3, $total_to_print, 0, 'R', 0); |
907 | - } |
|
908 | - else{ |
|
909 | - if($set_pagebreak_margin) $pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin); |
|
932 | + } else{ |
|
933 | + if($set_pagebreak_margin) { |
|
934 | + $pdf->SetAutoPageBreak( $pageBreakOriginalValue , $bMargin); |
|
935 | + } |
|
910 | 936 | } |
911 | 937 | |
912 | 938 | $posy = $posy + $cell_height; |
@@ -938,25 +964,40 @@ discard block |
||
938 | 964 | |
939 | 965 | |
940 | 966 | $style = ($line->qty==1) ? 'BU' : 'BUI'; |
941 | - if (!empty($conf->global->SUBTOTAL_TITLE_STYLE)) $style = $conf->global->SUBTOTAL_TITLE_STYLE; |
|
967 | + if (!empty($conf->global->SUBTOTAL_TITLE_STYLE)) { |
|
968 | + $style = $conf->global->SUBTOTAL_TITLE_STYLE; |
|
969 | + } |
|
942 | 970 | |
943 | 971 | if($hideInnerLines) { |
944 | - if($line->qty==1)$pdf->SetFont('', $style, 9); |
|
945 | - else |
|
972 | + if($line->qty==1) { |
|
973 | + $pdf->SetFont('', $style, 9); |
|
974 | + } else |
|
946 | 975 | { |
947 | - if (!empty($conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES)) $style = $conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES; |
|
976 | + if (!empty($conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES)) { |
|
977 | + $style = $conf->global->SUBTOTAL_STYLE_TITRES_SI_LIGNES_CACHEES; |
|
978 | + } |
|
948 | 979 | $pdf->SetFont('', $style, 9); |
949 | 980 | } |
950 | - } |
|
951 | - else { |
|
981 | + } else { |
|
952 | 982 | |
953 | - if($line->qty==1)$pdf->SetFont('', $style, 9); //TODO if super utile |
|
954 | - else $pdf->SetFont('', $style, 9); |
|
983 | + if($line->qty==1) { |
|
984 | + $pdf->SetFont('', $style, 9); |
|
985 | + } |
|
986 | + //TODO if super utile |
|
987 | + else { |
|
988 | + $pdf->SetFont('', $style, 9); |
|
989 | + } |
|
955 | 990 | |
956 | 991 | } |
957 | 992 | |
958 | - 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 |
|
959 | - else $pdf->writeHTMLCell($w, $h, $posx, $posy, $label, 0, 1, false, true, 'J',true); // et maintenant avec du HTML |
|
993 | + if ($label === strip_tags($label) && $label === dol_html_entity_decode($label, ENT_QUOTES)) { |
|
994 | + $pdf->MultiCell($w, $h, $label, 0, 'L'); |
|
995 | + } |
|
996 | + // Pas de HTML dans la chaine |
|
997 | + else { |
|
998 | + $pdf->writeHTMLCell($w, $h, $posx, $posy, $label, 0, 1, false, true, 'J',true); |
|
999 | + } |
|
1000 | + // et maintenant avec du HTML |
|
960 | 1001 | |
961 | 1002 | if($description && !$hidedesc) { |
962 | 1003 | $posy = $pdf->GetY(); |
@@ -980,8 +1021,7 @@ discard block |
||
980 | 1021 | |
981 | 1022 | if(is_array($parameters)) { |
982 | 1023 | $i = & $parameters['i']; |
983 | - } |
|
984 | - else { |
|
1024 | + } else { |
|
985 | 1025 | $i = (int)$parameters; |
986 | 1026 | } |
987 | 1027 | |
@@ -1003,17 +1043,14 @@ discard block |
||
1003 | 1043 | |
1004 | 1044 | if((float)DOL_VERSION<=3.6) { |
1005 | 1045 | return ''; |
1006 | - } |
|
1007 | - else if((float)DOL_VERSION>=3.8) { |
|
1046 | + } else if((float)DOL_VERSION>=3.8) { |
|
1008 | 1047 | return 1; |
1009 | 1048 | } |
1010 | 1049 | |
1011 | - } |
|
1012 | - elseif(!empty($hideprices)) { |
|
1050 | + } elseif(!empty($hideprices)) { |
|
1013 | 1051 | $this->resprints = $object->lines[$parameters['i']]->qty; |
1014 | 1052 | return 1; |
1015 | - } |
|
1016 | - elseif (!empty($conf->global->SUBTOTAL_IF_HIDE_PRICES_SHOW_QTY)) |
|
1053 | + } elseif (!empty($conf->global->SUBTOTAL_IF_HIDE_PRICES_SHOW_QTY)) |
|
1017 | 1054 | { |
1018 | 1055 | $hideInnerLines = (int)GETPOST('hideInnerLines'); |
1019 | 1056 | $hidedetails = (int)GETPOST('hidedetails'); |
@@ -1023,10 +1060,16 @@ discard block |
||
1023 | 1060 | } |
1024 | 1061 | } |
1025 | 1062 | |
1026 | - if(is_array($parameters)) $i = & $parameters['i']; |
|
1027 | - else $i = (int)$parameters; |
|
1063 | + if(is_array($parameters)) { |
|
1064 | + $i = & $parameters['i']; |
|
1065 | + } else { |
|
1066 | + $i = (int)$parameters; |
|
1067 | + } |
|
1028 | 1068 | |
1029 | - 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) |
|
1069 | + if (empty($object->lines[$i])) { |
|
1070 | + return 0; |
|
1071 | + } |
|
1072 | + // 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) |
|
1030 | 1073 | |
1031 | 1074 | $object->lines[$i]->fetch_optionals(); |
1032 | 1075 | if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) ) |
@@ -1050,16 +1093,17 @@ discard block |
||
1050 | 1093 | |
1051 | 1094 | if((float)DOL_VERSION<=3.6) { |
1052 | 1095 | return ''; |
1053 | - } |
|
1054 | - else if((float)DOL_VERSION>=3.8) { |
|
1096 | + } else if((float)DOL_VERSION>=3.8) { |
|
1055 | 1097 | return 1; |
1056 | 1098 | } |
1057 | 1099 | |
1058 | - } |
|
1059 | - elseif (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS)) |
|
1100 | + } elseif (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS)) |
|
1060 | 1101 | { |
1061 | - if(is_array($parameters)) $i = & $parameters['i']; |
|
1062 | - else $i = (int)$parameters; |
|
1102 | + if(is_array($parameters)) { |
|
1103 | + $i = & $parameters['i']; |
|
1104 | + } else { |
|
1105 | + $i = (int)$parameters; |
|
1106 | + } |
|
1063 | 1107 | |
1064 | 1108 | if (!in_array(__FUNCTION__, explode(',', $conf->global->SUBTOTAL_TFIELD_TO_KEEP_WITH_NC))) |
1065 | 1109 | { |
@@ -1081,8 +1125,11 @@ discard block |
||
1081 | 1125 | } |
1082 | 1126 | } |
1083 | 1127 | if ((int)GETPOST('hideInnerLines') && !empty($conf->global->SUBTOTAL_REPLACE_WITH_VAT_IF_HIDE_INNERLINES)){ |
1084 | - if(is_array($parameters)) $i = & $parameters['i']; |
|
1085 | - else $i = (int)$parameters; |
|
1128 | + if(is_array($parameters)) { |
|
1129 | + $i = & $parameters['i']; |
|
1130 | + } else { |
|
1131 | + $i = (int)$parameters; |
|
1132 | + } |
|
1086 | 1133 | $this->resprints = price($object->lines[$i]->total_ht); |
1087 | 1134 | } |
1088 | 1135 | if (!empty($hideprices) |
@@ -1108,14 +1155,16 @@ discard block |
||
1108 | 1155 | |
1109 | 1156 | if((float)DOL_VERSION<=3.6) { |
1110 | 1157 | return ''; |
1111 | - } |
|
1112 | - else if((float)DOL_VERSION>=3.8) { |
|
1158 | + } else if((float)DOL_VERSION>=3.8) { |
|
1113 | 1159 | return 1; |
1114 | 1160 | } |
1115 | 1161 | } |
1116 | 1162 | |
1117 | - if(is_array($parameters)) $i = & $parameters['i']; |
|
1118 | - else $i = (int)$parameters; |
|
1163 | + if(is_array($parameters)) { |
|
1164 | + $i = & $parameters['i']; |
|
1165 | + } else { |
|
1166 | + $i = (int)$parameters; |
|
1167 | + } |
|
1119 | 1168 | |
1120 | 1169 | if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) ) |
1121 | 1170 | { |
@@ -1137,14 +1186,16 @@ discard block |
||
1137 | 1186 | |
1138 | 1187 | if((float)DOL_VERSION<=3.6) { |
1139 | 1188 | return ''; |
1140 | - } |
|
1141 | - else if((float)DOL_VERSION>=3.8) { |
|
1189 | + } else if((float)DOL_VERSION>=3.8) { |
|
1142 | 1190 | return 1; |
1143 | 1191 | } |
1144 | 1192 | } |
1145 | 1193 | |
1146 | - if(is_array($parameters)) $i = & $parameters['i']; |
|
1147 | - else $i = (int)$parameters; |
|
1194 | + if(is_array($parameters)) { |
|
1195 | + $i = & $parameters['i']; |
|
1196 | + } else { |
|
1197 | + $i = (int)$parameters; |
|
1198 | + } |
|
1148 | 1199 | |
1149 | 1200 | if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) ) |
1150 | 1201 | { |
@@ -1166,13 +1217,15 @@ discard block |
||
1166 | 1217 | |
1167 | 1218 | if((float)DOL_VERSION<=3.6) { |
1168 | 1219 | return ''; |
1169 | - } |
|
1170 | - else if((float)DOL_VERSION>=3.8) { |
|
1220 | + } else if((float)DOL_VERSION>=3.8) { |
|
1171 | 1221 | return 1; |
1172 | 1222 | } |
1173 | 1223 | } |
1174 | - if(is_array($parameters)) $i = & $parameters['i']; |
|
1175 | - else $i = (int)$parameters; |
|
1224 | + if(is_array($parameters)) { |
|
1225 | + $i = & $parameters['i']; |
|
1226 | + } else { |
|
1227 | + $i = (int)$parameters; |
|
1228 | + } |
|
1176 | 1229 | |
1177 | 1230 | if (!empty($hideprices) |
1178 | 1231 | || (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) ) |
@@ -1195,14 +1248,16 @@ discard block |
||
1195 | 1248 | $this->resprints = ' '; |
1196 | 1249 | if((float)DOL_VERSION<=3.6) { |
1197 | 1250 | return ''; |
1198 | - } |
|
1199 | - else if((float)DOL_VERSION>=3.8) { |
|
1251 | + } else if((float)DOL_VERSION>=3.8) { |
|
1200 | 1252 | return 1; |
1201 | 1253 | } |
1202 | 1254 | } |
1203 | 1255 | |
1204 | - if(is_array($parameters)) $i = & $parameters['i']; |
|
1205 | - else $i = (int)$parameters; |
|
1256 | + if(is_array($parameters)) { |
|
1257 | + $i = & $parameters['i']; |
|
1258 | + } else { |
|
1259 | + $i = (int)$parameters; |
|
1260 | + } |
|
1206 | 1261 | |
1207 | 1262 | if (!empty($hideprices) |
1208 | 1263 | || (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) ) |
@@ -1226,16 +1281,21 @@ discard block |
||
1226 | 1281 | |
1227 | 1282 | if((float)DOL_VERSION<=3.6) { |
1228 | 1283 | return ''; |
1229 | - } |
|
1230 | - else if((float)DOL_VERSION>=3.8) { |
|
1284 | + } else if((float)DOL_VERSION>=3.8) { |
|
1231 | 1285 | return 1; |
1232 | 1286 | } |
1233 | 1287 | } |
1234 | 1288 | |
1235 | - if(is_array($parameters)) $i = & $parameters['i']; |
|
1236 | - else $i = (int)$parameters; |
|
1289 | + if(is_array($parameters)) { |
|
1290 | + $i = & $parameters['i']; |
|
1291 | + } else { |
|
1292 | + $i = (int)$parameters; |
|
1293 | + } |
|
1237 | 1294 | |
1238 | - 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) |
|
1295 | + if (empty($object->lines[$i])) { |
|
1296 | + return 0; |
|
1297 | + } |
|
1298 | + // 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) |
|
1239 | 1299 | |
1240 | 1300 | $object->lines[$i]->fetch_optionals(); |
1241 | 1301 | if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) ) |
@@ -1257,14 +1317,16 @@ discard block |
||
1257 | 1317 | $this->resprints = ' '; |
1258 | 1318 | if((float)DOL_VERSION<=3.6) { |
1259 | 1319 | return ''; |
1260 | - } |
|
1261 | - else if((float)DOL_VERSION>=3.8) { |
|
1320 | + } else if((float)DOL_VERSION>=3.8) { |
|
1262 | 1321 | return 1; |
1263 | 1322 | } |
1264 | 1323 | } |
1265 | 1324 | |
1266 | - if(is_array($parameters)) $i = & $parameters['i']; |
|
1267 | - else $i = (int)$parameters; |
|
1325 | + if(is_array($parameters)) { |
|
1326 | + $i = & $parameters['i']; |
|
1327 | + } else { |
|
1328 | + $i = (int)$parameters; |
|
1329 | + } |
|
1268 | 1330 | |
1269 | 1331 | if (!empty($conf->global->SUBTOTAL_MANAGE_COMPRIS_NONCOMPRIS) && (!empty($object->lines[$i]->array_options['options_subtotal_nc']) || TSubtotal::hasNcTitle($object->lines[$i])) ) |
1270 | 1332 | { |
@@ -1294,7 +1356,9 @@ discard block |
||
1294 | 1356 | } |
1295 | 1357 | } |
1296 | 1358 | |
1297 | - if (!empty($TLineTitle)) $TTitleNumeroted = $this->formatNumerotation($TLineTitle); |
|
1359 | + if (!empty($TLineTitle)) { |
|
1360 | + $TTitleNumeroted = $this->formatNumerotation($TLineTitle); |
|
1361 | + } |
|
1298 | 1362 | } |
1299 | 1363 | |
1300 | 1364 | } |
@@ -1308,8 +1372,12 @@ discard block |
||
1308 | 1372 | $j=0; |
1309 | 1373 | foreach ($TLineTitle as $k => &$line) |
1310 | 1374 | { |
1311 | - if (!empty($line_reference) && $line->rang <= $line_reference->rang) continue; |
|
1312 | - if (!empty($line_reference) && $line->qty <= $line_reference->qty) break; |
|
1375 | + if (!empty($line_reference) && $line->rang <= $line_reference->rang) { |
|
1376 | + continue; |
|
1377 | + } |
|
1378 | + if (!empty($line_reference) && $line->qty <= $line_reference->qty) { |
|
1379 | + break; |
|
1380 | + } |
|
1313 | 1381 | |
1314 | 1382 | if ($line->qty == $level) |
1315 | 1383 | { |
@@ -1343,7 +1411,9 @@ discard block |
||
1343 | 1411 | |
1344 | 1412 | $hidedetails = (int)GETPOST('hidedetails'); |
1345 | 1413 | |
1346 | - if(empty($hidedetails)) return false; |
|
1414 | + if(empty($hidedetails)) { |
|
1415 | + return false; |
|
1416 | + } |
|
1347 | 1417 | |
1348 | 1418 | // TODO can't add VAT to document without lines... :-/ |
1349 | 1419 | |
@@ -1396,7 +1466,9 @@ discard block |
||
1396 | 1466 | */ |
1397 | 1467 | list($total, $total_tva, $total_ttc, $TTotal_tva) = $this->getTotalLineFromObject($object, $line, '', 1); |
1398 | 1468 | |
1399 | - if (TSubtotal::getNiveau($line) == 1) $line->TTotal_tva = $TTotal_tva; |
|
1469 | + if (TSubtotal::getNiveau($line) == 1) { |
|
1470 | + $line->TTotal_tva = $TTotal_tva; |
|
1471 | + } |
|
1400 | 1472 | $line->total_ht = $total; |
1401 | 1473 | $line->total_tva = $total_tva; |
1402 | 1474 | $line->total = $line->total_ht; |
@@ -1451,8 +1523,7 @@ discard block |
||
1451 | 1523 | } |
1452 | 1524 | |
1453 | 1525 | |
1454 | - } |
|
1455 | - elseif ($hidedetails) |
|
1526 | + } elseif ($hidedetails) |
|
1456 | 1527 | { |
1457 | 1528 | $TLines[] = $line; //Cas où je cache uniquement les prix des produits |
1458 | 1529 | } |
@@ -1523,7 +1594,9 @@ discard block |
||
1523 | 1594 | |
1524 | 1595 | if(!empty($hideprices)) { |
1525 | 1596 | foreach($object->lines as &$line) { |
1526 | - if($line->fk_product_type!=9) $line->fk_parent_line = -1; |
|
1597 | + if($line->fk_product_type!=9) { |
|
1598 | + $line->fk_parent_line = -1; |
|
1599 | + } |
|
1527 | 1600 | } |
1528 | 1601 | } |
1529 | 1602 | |
@@ -1544,7 +1617,9 @@ discard block |
||
1544 | 1617 | |
1545 | 1618 | if($line->qty>90) { |
1546 | 1619 | |
1547 | - if ($conf->global->SUBTOTAL_USE_NEW_FORMAT) $label .= ' '.$this->getTitle($object, $line); |
|
1620 | + if ($conf->global->SUBTOTAL_USE_NEW_FORMAT) { |
|
1621 | + $label .= ' '.$this->getTitle($object, $line); |
|
1622 | + } |
|
1548 | 1623 | |
1549 | 1624 | $pageBefore = $pdf->getPage(); |
1550 | 1625 | $this->pdf_add_total($pdf,$object, $line, $label, $description,$posx, $posy, $w, $h); |
@@ -1562,8 +1637,7 @@ discard block |
||
1562 | 1637 | |
1563 | 1638 | $posy = $pdf->GetY(); |
1564 | 1639 | return 1; |
1565 | - } |
|
1566 | - else if ($line->qty < 10) { |
|
1640 | + } else if ($line->qty < 10) { |
|
1567 | 1641 | $pageBefore = $pdf->getPage(); |
1568 | 1642 | |
1569 | 1643 | $this->pdf_add_title($pdf,$object, $line, $label, $description,$posx, $posy, $w, $h); |
@@ -1587,8 +1661,7 @@ discard block |
||
1587 | 1661 | // if($line->rowid==47) exit; |
1588 | 1662 | |
1589 | 1663 | return 0; |
1590 | - } |
|
1591 | - elseif (empty($object->lines[$parameters['i']])) |
|
1664 | + } elseif (empty($object->lines[$parameters['i']])) |
|
1592 | 1665 | { |
1593 | 1666 | $this->resprints = -1; |
1594 | 1667 | } |
@@ -1621,7 +1694,9 @@ discard block |
||
1621 | 1694 | |
1622 | 1695 | foreach ($object->lines as $line) |
1623 | 1696 | { |
1624 | - if ($line->id == $currentLine->id) break; |
|
1697 | + if ($line->id == $currentLine->id) { |
|
1698 | + break; |
|
1699 | + } |
|
1625 | 1700 | |
1626 | 1701 | $qty_search = 100 - $currentLine->qty; |
1627 | 1702 | |
@@ -1658,23 +1733,23 @@ discard block |
||
1658 | 1733 | { |
1659 | 1734 | $object->statut = 0; // hack for facture rec |
1660 | 1735 | $createRight = $user->rights->facture->creer; |
1661 | - } |
|
1662 | - elseif($object->element == 'order_supplier' ) |
|
1736 | + } elseif($object->element == 'order_supplier' ) |
|
1663 | 1737 | { |
1664 | 1738 | $createRight = $user->rights->fournisseur->commande->creer; |
1665 | - } |
|
1666 | - elseif($object->element == 'invoice_supplier' ) |
|
1739 | + } elseif($object->element == 'invoice_supplier' ) |
|
1667 | 1740 | { |
1668 | 1741 | $createRight = $user->rights->fournisseur->facture->creer; |
1669 | 1742 | } |
1670 | 1743 | |
1671 | 1744 | if($line->special_code!=$this->module_number || $line->product_type!=9) { |
1672 | 1745 | null; |
1673 | - } |
|
1674 | - 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)) |
|
1746 | + } 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)) |
|
1675 | 1747 | { |
1676 | - if($object->element=='facture')$idvar = 'facid'; |
|
1677 | - else $idvar='id'; |
|
1748 | + if($object->element=='facture') { |
|
1749 | + $idvar = 'facid'; |
|
1750 | + } else { |
|
1751 | + $idvar='id'; |
|
1752 | + } |
|
1678 | 1753 | |
1679 | 1754 | if((float)DOL_VERSION <= 3.4) |
1680 | 1755 | { |
@@ -1700,20 +1775,44 @@ discard block |
||
1700 | 1775 | <?php |
1701 | 1776 | } |
1702 | 1777 | |
1703 | - if(empty($line->description)) $line->description = $line->desc; |
|
1778 | + if(empty($line->description)) { |
|
1779 | + $line->description = $line->desc; |
|
1780 | + } |
|
1704 | 1781 | |
1705 | 1782 | $colspan = 5; |
1706 | - if($object->element == 'facturerec' ) $colspan = 3; |
|
1707 | - if($object->element == 'order_supplier') $colspan = 3; |
|
1708 | - if($object->element == 'invoice_supplier') $colspan = 4; |
|
1709 | - if($object->element == 'supplier_proposal') $colspan = 4; |
|
1710 | - if(!empty($conf->multicurrency->enabled)) $colspan+=2; |
|
1711 | - if($object->element == 'commande' && $object->statut < 3 && !empty($conf->shippableorder->enabled)) $colspan++; |
|
1712 | - if(!empty($conf->margin->enabled)) $colspan++; |
|
1713 | - if(!empty($conf->global->DISPLAY_MARGIN_RATES)) $colspan++; |
|
1714 | - if(!empty($conf->global->DISPLAY_MARK_RATES)) $colspan++; |
|
1715 | - if($object->element == 'facture' && !empty($conf->global->INVOICE_USE_SITUATION) && $object->type == Facture::TYPE_SITUATION) $colspan++; |
|
1716 | - if(!empty($conf->global->PRODUCT_USE_UNITS)) $colspan++; |
|
1783 | + if($object->element == 'facturerec' ) { |
|
1784 | + $colspan = 3; |
|
1785 | + } |
|
1786 | + if($object->element == 'order_supplier') { |
|
1787 | + $colspan = 3; |
|
1788 | + } |
|
1789 | + if($object->element == 'invoice_supplier') { |
|
1790 | + $colspan = 4; |
|
1791 | + } |
|
1792 | + if($object->element == 'supplier_proposal') { |
|
1793 | + $colspan = 4; |
|
1794 | + } |
|
1795 | + if(!empty($conf->multicurrency->enabled)) { |
|
1796 | + $colspan+=2; |
|
1797 | + } |
|
1798 | + if($object->element == 'commande' && $object->statut < 3 && !empty($conf->shippableorder->enabled)) { |
|
1799 | + $colspan++; |
|
1800 | + } |
|
1801 | + if(!empty($conf->margin->enabled)) { |
|
1802 | + $colspan++; |
|
1803 | + } |
|
1804 | + if(!empty($conf->global->DISPLAY_MARGIN_RATES)) { |
|
1805 | + $colspan++; |
|
1806 | + } |
|
1807 | + if(!empty($conf->global->DISPLAY_MARK_RATES)) { |
|
1808 | + $colspan++; |
|
1809 | + } |
|
1810 | + if($object->element == 'facture' && !empty($conf->global->INVOICE_USE_SITUATION) && $object->type == Facture::TYPE_SITUATION) { |
|
1811 | + $colspan++; |
|
1812 | + } |
|
1813 | + if(!empty($conf->global->PRODUCT_USE_UNITS)) { |
|
1814 | + $colspan++; |
|
1815 | + } |
|
1717 | 1816 | |
1718 | 1817 | /* Titre */ |
1719 | 1818 | //var_dump($line); |
@@ -1726,23 +1825,36 @@ discard block |
||
1726 | 1825 | <tr <?php echo $bc[$var]; $var=!$var; echo $data; ?> rel="subtotal" id="row-<?php echo $line->id ?>" style="<?php |
1727 | 1826 | if (!empty($conf->global->SUBTOTAL_USE_NEW_FORMAT)) |
1728 | 1827 | { |
1729 | - if($line->qty==99) print 'background:#adadcf'; |
|
1730 | - else if($line->qty==98) print 'background:#ddddff;'; |
|
1731 | - else if($line->qty<=97 && $line->qty>=91) print 'background:#eeeeff;'; |
|
1732 | - else if($line->qty==1) print 'background:#adadcf;'; |
|
1733 | - else if($line->qty==2) print 'background:#ddddff;'; |
|
1734 | - else if($line->qty==50) print ''; |
|
1735 | - else print 'background:#eeeeff;'; |
|
1828 | + if($line->qty==99) { |
|
1829 | + print 'background:#adadcf'; |
|
1830 | + } else if($line->qty==98) { |
|
1831 | + print 'background:#ddddff;'; |
|
1832 | + } else if($line->qty<=97 && $line->qty>=91) { |
|
1833 | + print 'background:#eeeeff;'; |
|
1834 | + } else if($line->qty==1) { |
|
1835 | + print 'background:#adadcf;'; |
|
1836 | + } else if($line->qty==2) { |
|
1837 | + print 'background:#ddddff;'; |
|
1838 | + } else if($line->qty==50) { |
|
1839 | + print ''; |
|
1840 | + } else { |
|
1841 | + print 'background:#eeeeff;'; |
|
1842 | + } |
|
1736 | 1843 | |
1737 | 1844 | //A compléter si on veux plus de nuances de couleurs avec les niveau 4,5,6,7,8 et 9 |
1738 | - } |
|
1739 | - else |
|
1845 | + } else |
|
1740 | 1846 | { |
1741 | - if($line->qty==99) print 'background:#ddffdd'; |
|
1742 | - else if($line->qty==98) print 'background:#ddddff;'; |
|
1743 | - else if($line->qty==2) print 'background:#eeeeff; '; |
|
1744 | - else if($line->qty==50) print ''; |
|
1745 | - else print 'background:#eeffee;' ; |
|
1847 | + if($line->qty==99) { |
|
1848 | + print 'background:#ddffdd'; |
|
1849 | + } else if($line->qty==98) { |
|
1850 | + print 'background:#ddddff;'; |
|
1851 | + } else if($line->qty==2) { |
|
1852 | + print 'background:#eeeeff; '; |
|
1853 | + } else if($line->qty==50) { |
|
1854 | + print ''; |
|
1855 | + } else { |
|
1856 | + print 'background:#eeffee;' ; |
|
1857 | + } |
|
1746 | 1858 | } |
1747 | 1859 | |
1748 | 1860 | ?>;"> |
@@ -1765,13 +1877,11 @@ discard block |
||
1765 | 1877 | $qty_displayed = $line->qty; |
1766 | 1878 | print img_picto('', 'subsubtotal@subtotal').'<span style="font-size:9px;margin-left:-3px;color:#0075DE;">'.$qty_displayed.'</span> '; |
1767 | 1879 | |
1768 | - } |
|
1769 | - else if (TSubtotal::isSubtotal($line)) |
|
1880 | + } else if (TSubtotal::isSubtotal($line)) |
|
1770 | 1881 | { |
1771 | 1882 | $qty_displayed = 100 - $line->qty; |
1772 | 1883 | print img_picto('', 'subsubtotal2@subtotal').'<span style="font-size:9px;margin-left:-1px;color:#0075DE;">'.$qty_displayed.'</span> '; |
1773 | - } |
|
1774 | - else |
|
1884 | + } else |
|
1775 | 1885 | { |
1776 | 1886 | $isFreeText = true; |
1777 | 1887 | } |
@@ -1792,9 +1902,13 @@ discard block |
||
1792 | 1902 | } |
1793 | 1903 | |
1794 | 1904 | $readonlyForSituation = ''; |
1795 | - if (!empty($object->situation_cycle_ref) && $object->situation_counter > 1) $readonlyForSituation = 'readonly'; |
|
1905 | + if (!empty($object->situation_cycle_ref) && $object->situation_counter > 1) { |
|
1906 | + $readonlyForSituation = 'readonly'; |
|
1907 | + } |
|
1796 | 1908 | |
1797 | - if (!$isFreeText) echo '<input type="text" name="line-title" id-line="'.$line->id.'" value="'.$newlabel.'" size="80" '.$readonlyForSituation.'/> '; |
|
1909 | + if (!$isFreeText) { |
|
1910 | + echo '<input type="text" name="line-title" id-line="'.$line->id.'" value="'.$newlabel.'" size="80" '.$readonlyForSituation.'/> '; |
|
1911 | + } |
|
1798 | 1912 | |
1799 | 1913 | if (!empty($conf->global->SUBTOTAL_USE_NEW_FORMAT) && (TSubtotal::isTitle($line) || TSubtotal::isSubtotal($line)) ) |
1800 | 1914 | { |
@@ -1802,8 +1916,12 @@ discard block |
||
1802 | 1916 | for ($j=1; $j<10; $j++) |
1803 | 1917 | { |
1804 | 1918 | if (!empty($readonlyForSituation)) { |
1805 | - if ($qty_displayed == $j) $select .= '<option selected="selected" value="'.$j.'">'.$langs->trans('Level').' '.$j.'</option>'; |
|
1806 | - } else $select .= '<option '.($qty_displayed == $j ? 'selected="selected"' : '').' value="'.$j.'">'.$langs->trans('Level').' '.$j.'</option>'; |
|
1919 | + if ($qty_displayed == $j) { |
|
1920 | + $select .= '<option selected="selected" value="'.$j.'">'.$langs->trans('Level').' '.$j.'</option>'; |
|
1921 | + } |
|
1922 | + } else { |
|
1923 | + $select .= '<option '.($qty_displayed == $j ? 'selected="selected"' : '').' value="'.$j.'">'.$langs->trans('Level').' '.$j.'</option>'; |
|
1924 | + } |
|
1807 | 1925 | } |
1808 | 1926 | $select .= '</select> '; |
1809 | 1927 | |
@@ -1819,15 +1937,18 @@ discard block |
||
1819 | 1937 | $form = new Form($db); |
1820 | 1938 | echo '<label for="subtotal_tva_tx">'.$form->textwithpicto($langs->trans('subtotal_apply_default_tva'), $langs->trans('subtotal_apply_default_tva_help')).'</label>'; |
1821 | 1939 | echo '<select id="subtotal_tva_tx" name="subtotal_tva_tx" class="flat"><option selected="selected" value="">-</option>'; |
1822 | - if (empty($readonlyForSituation)) echo str_replace('selected', '', $form->load_tva('subtotal_tva_tx', '', $parameters['seller'], $parameters['buyer'], 0, 0, '', true)); |
|
1940 | + if (empty($readonlyForSituation)) { |
|
1941 | + echo str_replace('selected', '', $form->load_tva('subtotal_tva_tx', '', $parameters['seller'], $parameters['buyer'], 0, 0, '', true)); |
|
1942 | + } |
|
1823 | 1943 | echo '</select> '; |
1824 | 1944 | |
1825 | 1945 | if (!empty($conf->global->INVOICE_USE_SITUATION) && $object->element == 'facture' && $object->type == Facture::TYPE_SITUATION) |
1826 | 1946 | { |
1827 | 1947 | echo '<label for="subtotal_progress">'.$langs->trans('subtotal_apply_progress').'</label> <input id="subtotal_progress" name="subtotal_progress" value="" size="1" />%'; |
1828 | 1948 | } |
1949 | + } else if ($isFreeText) { |
|
1950 | + echo TSubtotal::getFreeTextHtml($line, (bool) $readonlyForSituation); |
|
1829 | 1951 | } |
1830 | - else if ($isFreeText) echo TSubtotal::getFreeTextHtml($line, (bool) $readonlyForSituation); |
|
1831 | 1952 | echo '</div>'; |
1832 | 1953 | |
1833 | 1954 | if($line->qty<10) { |
@@ -1847,8 +1968,7 @@ discard block |
||
1847 | 1968 | $doleditor->Create(); |
1848 | 1969 | } |
1849 | 1970 | |
1850 | - } |
|
1851 | - else { |
|
1971 | + } else { |
|
1852 | 1972 | |
1853 | 1973 | if ($conf->global->SUBTOTAL_USE_NEW_FORMAT) |
1854 | 1974 | { |
@@ -1856,14 +1976,19 @@ discard block |
||
1856 | 1976 | { |
1857 | 1977 | echo str_repeat(' ', $line->qty-1); |
1858 | 1978 | |
1859 | - if (TSubtotal::isTitle($line)) print img_picto('', 'subtotal@subtotal').'<span style="font-size:9px;margin-left:-3px;">'.$line->qty.'</span> '; |
|
1860 | - else print img_picto('', 'subtotal2@subtotal').'<span style="font-size:9px;margin-left:-1px;">'.(100-$line->qty).'</span> '; |
|
1979 | + if (TSubtotal::isTitle($line)) { |
|
1980 | + print img_picto('', 'subtotal@subtotal').'<span style="font-size:9px;margin-left:-3px;">'.$line->qty.'</span> '; |
|
1981 | + } else { |
|
1982 | + print img_picto('', 'subtotal2@subtotal').'<span style="font-size:9px;margin-left:-1px;">'.(100-$line->qty).'</span> '; |
|
1983 | + } |
|
1861 | 1984 | } |
1862 | - } |
|
1863 | - else |
|
1985 | + } else |
|
1864 | 1986 | { |
1865 | - if($line->qty<=1) print img_picto('', 'subtotal@subtotal'); |
|
1866 | - else if($line->qty==2) print img_picto('', 'subsubtotal@subtotal').' '; |
|
1987 | + if($line->qty<=1) { |
|
1988 | + print img_picto('', 'subtotal@subtotal'); |
|
1989 | + } else if($line->qty==2) { |
|
1990 | + print img_picto('', 'subsubtotal@subtotal').' '; |
|
1991 | + } |
|
1867 | 1992 | } |
1868 | 1993 | |
1869 | 1994 | |
@@ -1873,21 +1998,26 @@ discard block |
||
1873 | 1998 | $titleStyleUnderline = strpos($conf->global->SUBTOTAL_TITLE_STYLE, 'U') === false ? '' : ' text-decoration: underline;'; |
1874 | 1999 | |
1875 | 2000 | if (empty($line->label)) { |
1876 | - if ($line->qty >= 91 && $line->qty <= 99 && $conf->global->SUBTOTAL_USE_NEW_FORMAT) print $line->description.' '.$this->getTitle($object, $line); |
|
1877 | - else print $line->description; |
|
1878 | - } |
|
1879 | - else { |
|
2001 | + if ($line->qty >= 91 && $line->qty <= 99 && $conf->global->SUBTOTAL_USE_NEW_FORMAT) { |
|
2002 | + print $line->description.' '.$this->getTitle($object, $line); |
|
2003 | + } else { |
|
2004 | + print $line->description; |
|
2005 | + } |
|
2006 | + } else { |
|
1880 | 2007 | |
1881 | 2008 | if (! empty($conf->global->PRODUIT_DESC_IN_FORM) && !empty($line->description)) { |
1882 | 2009 | print '<span class="subtotal_label" style="'.$titleStyleItalic.$titleStyleBold.$titleStyleUnderline.'" >'.$line->label.'</span><br><div class="subtotal_desc">'.dol_htmlentitiesbr($line->description).'</div>'; |
1883 | - } |
|
1884 | - else{ |
|
2010 | + } else{ |
|
1885 | 2011 | print '<span class="subtotal_label classfortooltip '.$titleStyleItalic.$titleStyleBold.$titleStyleUnderline.'" title="'.$line->description.'">'.$line->label.'</span>'; |
1886 | 2012 | } |
1887 | 2013 | |
1888 | 2014 | } |
1889 | - if($line->qty>90) print ' : '; |
|
1890 | - if($line->info_bits > 0) echo img_picto($langs->trans('Pagebreak'), 'pagebreak@subtotal'); |
|
2015 | + if($line->qty>90) { |
|
2016 | + print ' : '; |
|
2017 | + } |
|
2018 | + if($line->info_bits > 0) { |
|
2019 | + echo img_picto($langs->trans('Pagebreak'), 'pagebreak@subtotal'); |
|
2020 | + } |
|
1891 | 2021 | |
1892 | 2022 | |
1893 | 2023 | |
@@ -1924,11 +2054,12 @@ discard block |
||
1924 | 2054 | </script> |
1925 | 2055 | <?php |
1926 | 2056 | |
1927 | - } |
|
1928 | - else{ |
|
2057 | + } else{ |
|
1929 | 2058 | if ($object->statut == 0 && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_DUPLICATE_BLOCK) && $object->element !== 'invoice_supplier') |
1930 | 2059 | { |
1931 | - 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>'; |
|
2060 | + if(TSubtotal::isTitle($line) && ($object->situation_counter == 1 || !$object->situation_cycle_ref) ) { |
|
2061 | + echo '<a href="'.$_SERVER['PHP_SELF'].'?'.$idvar.'='.$object->id.'&action=duplicate&lineid='.$line->id.'">'. img_picto($langs->trans('Duplicate'), 'duplicate@subtotal').'</a>'; |
|
2062 | + } |
|
1932 | 2063 | } |
1933 | 2064 | |
1934 | 2065 | if ($object->statut == 0 && $createRight && !empty($conf->global->SUBTOTAL_ALLOW_EDIT_BLOCK)) |
@@ -1997,7 +2128,9 @@ discard block |
||
1997 | 2128 | $extralabelsline = $extrafieldsline->fetch_name_optionals_label($object->table_element_line); |
1998 | 2129 | |
1999 | 2130 | $colspan+=3; $mode = 'view'; |
2000 | - if($action === 'editline' && $line->rowid == GETPOST('lineid')) $mode = 'edit'; |
|
2131 | + if($action === 'editline' && $line->rowid == GETPOST('lineid')) { |
|
2132 | + $mode = 'edit'; |
|
2133 | + } |
|
2001 | 2134 | |
2002 | 2135 | $ex_element = $line->element; |
2003 | 2136 | $line->element = 'tr_extrafield_title '.$line->element; // Pour pouvoir manipuler ces tr |
@@ -2166,10 +2299,9 @@ discard block |
||
2166 | 2299 | |
2167 | 2300 | if(TSubtotal::isTitle($line)){ |
2168 | 2301 | $ThtmlData['data-issubtotal'] = 'title'; |
2169 | - }elseif(TSubtotal::isSubtotal($line)){ |
|
2302 | + } elseif(TSubtotal::isSubtotal($line)){ |
|
2170 | 2303 | $ThtmlData['data-issubtotal'] = 'subtotal'; |
2171 | - } |
|
2172 | - else{ |
|
2304 | + } else{ |
|
2173 | 2305 | $ThtmlData['data-issubtotal'] = 'freetext'; |
2174 | 2306 | } |
2175 | 2307 | |
@@ -2179,7 +2311,9 @@ discard block |
||
2179 | 2311 | |
2180 | 2312 | // hook |
2181 | 2313 | $reshook = $hookmanager->executeHooks('subtotalLineHtmlData',$parameters,$object,$action); // Note that $action and $object may have been modified by hook |
2182 | - if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); |
|
2314 | + if ($reshook < 0) { |
|
2315 | + setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); |
|
2316 | + } |
|
2183 | 2317 | if ($reshook>0) |
2184 | 2318 | { |
2185 | 2319 | $ThtmlData = $hookmanager->resArray; |
@@ -13,18 +13,23 @@ discard block |
||
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,7 +39,9 @@ discard block |
||
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 | */ |
@@ -46,16 +53,22 @@ discard block |
||
46 | 53 | /** |
47 | 54 | * @var $object Propal |
48 | 55 | */ |
49 | - 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); |
|
56 | + else if($object->element=='propal') { |
|
57 | + $res = $object->addline($desc, 0,$qty,0,0,0,0,0,'HT',0,0,9,$rang, TSubtotal::$module_number, 0, 0, 0, $label); |
|
58 | + } |
|
50 | 59 | /** |
51 | 60 | * @var $object Propal Fournisseur |
52 | 61 | */ |
53 | - 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); |
|
62 | + else if($object->element=='supplier_proposal') { |
|
63 | + $res = $object->addline($desc, 0,$qty,0,0,0,0,0,'HT',0,0,9,$rang, TSubtotal::$module_number, 0, 0, 0, $label); |
|
64 | + } |
|
54 | 65 | |
55 | 66 | /** |
56 | 67 | * @var $object Commande |
57 | 68 | */ |
58 | - 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); |
|
69 | + else if($object->element=='commande') { |
|
70 | + $res = $object->addline($desc, 0,$qty,0,0,0,0,0,0,0,'HT',0,'','',9,$rang, TSubtotal::$module_number, 0, null, 0, $label); |
|
71 | + } |
|
59 | 72 | /** |
60 | 73 | * @var $object Commande fournisseur |
61 | 74 | */ |
@@ -66,7 +79,9 @@ discard block |
||
66 | 79 | /** |
67 | 80 | * @var $object Facturerec |
68 | 81 | */ |
69 | - 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); |
|
82 | + else if($object->element=='facturerec') { |
|
83 | + $res = $object->addline($desc, 0,$qty, 0, 0, 0, 0, 0, 'HT', 0, '', 0, 9, $rang, TSubtotal::$module_number,$label); |
|
84 | + } |
|
70 | 85 | |
71 | 86 | } |
72 | 87 | |
@@ -88,8 +103,9 @@ discard block |
||
88 | 103 | // Define output language |
89 | 104 | $outputlangs = $langs; |
90 | 105 | $newlang = GETPOST('lang_id', 'alpha'); |
91 | - if (! empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) |
|
92 | - $newlang = !empty($object->client) ? $object->client->default_lang : $object->thirdparty->default_lang; |
|
106 | + if (! empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) { |
|
107 | + $newlang = !empty($object->client) ? $object->client->default_lang : $object->thirdparty->default_lang; |
|
108 | + } |
|
93 | 109 | if (! empty($newlang)) { |
94 | 110 | $outputlangs = new Translate("", $conf); |
95 | 111 | $outputlangs->setDefaultLang($newlang); |
@@ -98,13 +114,18 @@ discard block |
||
98 | 114 | $ret = $object->fetch($object->id); // Reload to get new records |
99 | 115 | if ((float) DOL_VERSION <= 3.6) |
100 | 116 | { |
101 | - if ($object->element == 'propal') propale_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); |
|
102 | - elseif ($object->element == 'commande') commande_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); |
|
103 | - elseif ($object->element == 'facture') facture_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); |
|
104 | - } |
|
105 | - else |
|
117 | + if ($object->element == 'propal') { |
|
118 | + propale_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); |
|
119 | + } elseif ($object->element == 'commande') { |
|
120 | + commande_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); |
|
121 | + } elseif ($object->element == 'facture') { |
|
122 | + facture_pdf_create($db, $object, $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); |
|
123 | + } |
|
124 | + } else |
|
106 | 125 | { |
107 | - if ($object->element!= 'facturerec') $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); |
|
126 | + if ($object->element!= 'facturerec') { |
|
127 | + $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); |
|
128 | + } |
|
108 | 129 | } |
109 | 130 | } |
110 | 131 | } |
@@ -118,7 +139,9 @@ discard block |
||
118 | 139 | */ |
119 | 140 | public static function updateRang(&$object, $rang_start, $move_to=1) |
120 | 141 | { |
121 | - if (!class_exists('GenericObject')) require_once DOL_DOCUMENT_ROOT.'/core/class/genericobject.class.php'; |
|
142 | + if (!class_exists('GenericObject')) { |
|
143 | + require_once DOL_DOCUMENT_ROOT.'/core/class/genericobject.class.php'; |
|
144 | + } |
|
122 | 145 | |
123 | 146 | $row=new GenericObject($object->db); |
124 | 147 | $row->table_element_line = $object->table_element_line; |
@@ -127,7 +150,9 @@ discard block |
||
127 | 150 | |
128 | 151 | foreach ($object->lines as &$line) |
129 | 152 | { |
130 | - if ($line->rang < $rang_start) continue; |
|
153 | + if ($line->rang < $rang_start) { |
|
154 | + continue; |
|
155 | + } |
|
131 | 156 | |
132 | 157 | $row->updateRangOfLine($line->id, $line->rang+$move_to); |
133 | 158 | } |
@@ -150,21 +175,28 @@ discard block |
||
150 | 175 | foreach ($TTitle_reverse as $k => $title_line) |
151 | 176 | { |
152 | 177 | $title_niveau = self::getNiveau($title_line); |
153 | - if ($title_niveau < $level_new_title) break; |
|
178 | + if ($title_niveau < $level_new_title) { |
|
179 | + break; |
|
180 | + } |
|
154 | 181 | |
155 | 182 | $rang_to_add = self::titleHasTotalLine($object, $title_line, true, true); |
156 | 183 | |
157 | 184 | if (is_numeric($rang_to_add)) |
158 | 185 | { |
159 | - if ($rang_to_add != -1) self::updateRang($object, $rang_to_add); |
|
186 | + if ($rang_to_add != -1) { |
|
187 | + self::updateRang($object, $rang_to_add); |
|
188 | + } |
|
160 | 189 | |
161 | 190 | self::addSubTotalLine($object, $langs->trans('SubTotal'), 100-$title_niveau, $rang_to_add); |
162 | 191 | |
163 | 192 | $object->lines[] = $object->line; // ajout de la ligne dans le tableau de ligne (Dolibarr ne le fait pas) |
164 | 193 | if ($rang_to_add != -1) |
165 | 194 | { |
166 | - if (method_exists($object, 'fetch_lines')) $object->fetch_lines(); |
|
167 | - else $object->fetch($object->id); |
|
195 | + if (method_exists($object, 'fetch_lines')) { |
|
196 | + $object->fetch_lines(); |
|
197 | + } else { |
|
198 | + $object->fetch($object->id); |
|
199 | + } |
|
168 | 200 | } |
169 | 201 | } |
170 | 202 | } |
@@ -194,7 +226,9 @@ discard block |
||
194 | 226 | |
195 | 227 | foreach ($TTitle as $k => $title_line) |
196 | 228 | { |
197 | - if (self::titleHasTotalLine($object, $title_line)) unset($TTitle[$k]); |
|
229 | + if (self::titleHasTotalLine($object, $title_line)) { |
|
230 | + unset($TTitle[$k]); |
|
231 | + } |
|
198 | 232 | } |
199 | 233 | |
200 | 234 | return $TTitle; |
@@ -211,23 +245,41 @@ discard block |
||
211 | 245 | */ |
212 | 246 | public static function titleHasTotalLine(&$object, &$title_line, $strict_mode=false, $return_rang_on_false=false) |
213 | 247 | { |
214 | - if (empty($object->lines) || !is_array($object->lines)) return false; |
|
248 | + if (empty($object->lines) || !is_array($object->lines)) { |
|
249 | + return false; |
|
250 | + } |
|
215 | 251 | |
216 | 252 | $title_niveau = self::getNiveau($title_line); |
217 | 253 | foreach ($object->lines as &$line) |
218 | 254 | { |
219 | - if ($line->rang <= $title_line->rang) continue; |
|
220 | - 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 |
|
221 | - if (!self::isSubtotal($line)) continue; |
|
255 | + if ($line->rang <= $title_line->rang) { |
|
256 | + continue; |
|
257 | + } |
|
258 | + if (self::isTitle($line) && self::getNiveau($line) <= $title_niveau) { |
|
259 | + return false; |
|
260 | + } |
|
261 | + // 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 |
|
262 | + if (!self::isSubtotal($line)) { |
|
263 | + continue; |
|
264 | + } |
|
222 | 265 | |
223 | 266 | $subtotal_niveau = self::getNiveau($line); |
224 | 267 | |
225 | 268 | // Comparaison du niveau de la ligne de sous-total avec celui du titre |
226 | - if ($subtotal_niveau == $title_niveau) return true; // niveau égale => Ok mon titre a un sous-total |
|
227 | - elseif ($subtotal_niveau < $title_niveau) // niveau inférieur trouvé (exemple : sous-total de niveau 1 contre mon titre de niveau 3) |
|
269 | + if ($subtotal_niveau == $title_niveau) { |
|
270 | + return true; |
|
271 | + } |
|
272 | + // niveau égale => Ok mon titre a un sous-total |
|
273 | + elseif ($subtotal_niveau < $title_niveau) { |
|
274 | + // niveau inférieur trouvé (exemple : sous-total de niveau 1 contre mon titre de niveau 3) |
|
228 | 275 | { |
229 | - if ($strict_mode) return ($return_rang_on_false) ? $line->rang : false; // mode strict niveau pas égale donc faux |
|
230 | - else return true; // mode libre => OK je considère que mon titre à un sous-total |
|
276 | + if ($strict_mode) return ($return_rang_on_false) ? $line->rang : false; |
|
277 | + } |
|
278 | + // mode strict niveau pas égale donc faux |
|
279 | + else { |
|
280 | + return true; |
|
281 | + } |
|
282 | + // mode libre => OK je considère que mon titre à un sous-total |
|
231 | 283 | } |
232 | 284 | } |
233 | 285 | |
@@ -275,16 +327,19 @@ discard block |
||
275 | 327 | |
276 | 328 | foreach ($object->lines as &$l) |
277 | 329 | { |
278 | - if ($l->rang <= $line->rang) continue; |
|
279 | - elseif (self::isSubtotal($l) && self::getNiveau($l) == $line->qty) break; |
|
280 | - elseif (self::isModSubtotalLine($l)) continue; |
|
330 | + if ($l->rang <= $line->rang) { |
|
331 | + continue; |
|
332 | + } elseif (self::isSubtotal($l) && self::getNiveau($l) == $line->qty) { |
|
333 | + break; |
|
334 | + } elseif (self::isModSubtotalLine($l)) { |
|
335 | + continue; |
|
336 | + } |
|
281 | 337 | |
282 | 338 | if (!empty($l->array_options['options_subtotal_nc'])) |
283 | 339 | { |
284 | 340 | $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); |
285 | 341 | $TTot['total_options'] += $tabprice[0]; // total ht |
286 | - } |
|
287 | - else |
|
342 | + } else |
|
288 | 343 | { |
289 | 344 | $TTot['total_pa_ht'] += $l->pa_ht * $l->qty; |
290 | 345 | $TTot['total_ht'] += $l->total_ht; |
@@ -303,29 +358,41 @@ discard block |
||
303 | 358 | |
304 | 359 | public static function getOrderIdFromLineId(&$db, $fk_commandedet) |
305 | 360 | { |
306 | - if (empty($fk_commandedet)) return false; |
|
361 | + if (empty($fk_commandedet)) { |
|
362 | + return false; |
|
363 | + } |
|
307 | 364 | |
308 | 365 | $sql = 'SELECT fk_commande FROM '.MAIN_DB_PREFIX.'commandedet WHERE rowid = '.$fk_commandedet; |
309 | 366 | $resql = $db->query($sql); |
310 | 367 | |
311 | - if ($resql && ($row = $db->fetch_object($resql))) return $row->fk_commande; |
|
312 | - else return false; |
|
368 | + if ($resql && ($row = $db->fetch_object($resql))) { |
|
369 | + return $row->fk_commande; |
|
370 | + } else { |
|
371 | + return false; |
|
372 | + } |
|
313 | 373 | } |
314 | 374 | |
315 | 375 | public static function getLastLineOrderId(&$db, $fk_commande) |
316 | 376 | { |
317 | - if (empty($fk_commande)) return false; |
|
377 | + if (empty($fk_commande)) { |
|
378 | + return false; |
|
379 | + } |
|
318 | 380 | |
319 | 381 | $sql = 'SELECT rowid FROM '.MAIN_DB_PREFIX.'commandedet WHERE fk_commande = '.$fk_commande.' ORDER BY rang DESC LIMIT 1'; |
320 | 382 | $resql = $db->query($sql); |
321 | 383 | |
322 | - if ($resql && ($row = $db->fetch_object($resql))) return $row->rowid; |
|
323 | - else return false; |
|
384 | + if ($resql && ($row = $db->fetch_object($resql))) { |
|
385 | + return $row->rowid; |
|
386 | + } else { |
|
387 | + return false; |
|
388 | + } |
|
324 | 389 | } |
325 | 390 | |
326 | 391 | public static function getParentTitleOfLine(&$object, $i) |
327 | 392 | { |
328 | - if ($i <= 0) return false; |
|
393 | + if ($i <= 0) { |
|
394 | + return false; |
|
395 | + } |
|
329 | 396 | |
330 | 397 | $skip_title = 0; |
331 | 398 | // Je parcours les lignes précédentes |
@@ -344,8 +411,7 @@ discard block |
||
344 | 411 | //@INFO J'ai ma ligne titre qui contient ma ligne, par contre je check pas s'il y a un sous-total |
345 | 412 | return $line; |
346 | 413 | break; |
347 | - } |
|
348 | - elseif ($line->product_type == 9 && $line->qty >= 90 && $line->qty <= 99) |
|
414 | + } elseif ($line->product_type == 9 && $line->qty >= 90 && $line->qty <= 99) |
|
349 | 415 | { |
350 | 416 | // 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) |
351 | 417 | $skip_title++; |
@@ -360,7 +426,9 @@ discard block |
||
360 | 426 | $res = $line->special_code == self::$module_number && $line->product_type == 9 && $line->qty <= 9; |
361 | 427 | if($res && $level > -1) { |
362 | 428 | return $line->qty == $level; |
363 | - } else return $res; |
|
429 | + } else { |
|
430 | + return $res; |
|
431 | + } |
|
364 | 432 | |
365 | 433 | } |
366 | 434 | |
@@ -387,10 +455,14 @@ discard block |
||
387 | 455 | // editeur wysiwyg |
388 | 456 | require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; |
389 | 457 | $nbrows=ROWS_2; |
390 | - if (! empty($conf->global->MAIN_INPUT_DESC_HEIGHT)) $nbrows=$conf->global->MAIN_INPUT_DESC_HEIGHT; |
|
458 | + if (! empty($conf->global->MAIN_INPUT_DESC_HEIGHT)) { |
|
459 | + $nbrows=$conf->global->MAIN_INPUT_DESC_HEIGHT; |
|
460 | + } |
|
391 | 461 | $enable=(isset($conf->global->FCKEDITOR_ENABLE_DETAILS)?$conf->global->FCKEDITOR_ENABLE_DETAILS:0); |
392 | 462 | $toolbarname='dolibarr_details'; |
393 | - if (! empty($conf->global->FCKEDITOR_ENABLE_DETAILS_FULL)) $toolbarname='dolibarr_notes'; |
|
463 | + if (! empty($conf->global->FCKEDITOR_ENABLE_DETAILS_FULL)) { |
|
464 | + $toolbarname='dolibarr_notes'; |
|
465 | + } |
|
394 | 466 | $text = !empty($line->description)?$line->description:$line->label; |
395 | 467 | $doleditor=new DolEditor('line-description',$text,'',164,$toolbarname,'',false,true,$enable,$nbrows,'98%', $readonly); |
396 | 468 | return $doleditor->Create(1); |
@@ -405,12 +477,10 @@ discard block |
||
405 | 477 | { |
406 | 478 | $object->statut = 0; // hack for facture rec |
407 | 479 | $createRight = $user->rights->facture->creer; |
408 | - } |
|
409 | - elseif($object->element == 'order_supplier' ) |
|
480 | + } elseif($object->element == 'order_supplier' ) |
|
410 | 481 | { |
411 | 482 | $createRight = $user->rights->fournisseur->commande->creer; |
412 | - } |
|
413 | - elseif($object->element == 'invoice_supplier' ) |
|
483 | + } elseif($object->element == 'invoice_supplier' ) |
|
414 | 484 | { |
415 | 485 | $createRight = $user->rights->fournisseur->facture->creer; |
416 | 486 | } |
@@ -483,8 +553,9 @@ discard block |
||
483 | 553 | |
484 | 554 | $TLineAdded[] = $object->line; |
485 | 555 | // Error from addline |
486 | - if ($res <= 0) break; |
|
487 | - else |
|
556 | + if ($res <= 0) { |
|
557 | + break; |
|
558 | + } else |
|
488 | 559 | { |
489 | 560 | $object->line_from = $line; |
490 | 561 | // Call trigger |
@@ -506,8 +577,7 @@ discard block |
||
506 | 577 | _updateLineNC($object->element, $object->id, $line->id, $line->array_options['options_subtotal_nc']); |
507 | 578 | } |
508 | 579 | return count($TLineAdded); |
509 | - } |
|
510 | - else |
|
580 | + } else |
|
511 | 581 | { |
512 | 582 | $object->db->rollback(); |
513 | 583 | return -1; |
@@ -523,10 +593,14 @@ discard block |
||
523 | 593 | global $langs; |
524 | 594 | |
525 | 595 | // Besoin de comparer sur les 2 formes d'écriture |
526 | - if (!$key_is_id) $TTitle_search = array($langs->trans($key_trad), $langs->transnoentitiesnoconv($key_trad)); |
|
596 | + if (!$key_is_id) { |
|
597 | + $TTitle_search = array($langs->trans($key_trad), $langs->transnoentitiesnoconv($key_trad)); |
|
598 | + } |
|
527 | 599 | |
528 | 600 | $TTitle_under_search = array(); |
529 | - if (!empty($under_title)) $TTitle_under_search = array($langs->trans($under_title), $langs->transnoentitiesnoconv($under_title)); |
|
601 | + if (!empty($under_title)) { |
|
602 | + $TTitle_under_search = array($langs->trans($under_title), $langs->transnoentitiesnoconv($under_title)); |
|
603 | + } |
|
530 | 604 | |
531 | 605 | $TLine = array(); |
532 | 606 | $add_line = false; |
@@ -536,28 +610,37 @@ discard block |
||
536 | 610 | { |
537 | 611 | if (!$under_title_found && !empty($TTitle_under_search)) |
538 | 612 | { |
539 | - if ($line->product_type == 9 && (in_array($line->desc, $TTitle_under_search) || in_array($line->label, $TTitle_under_search)) ) $under_title_found = true; |
|
540 | - } |
|
541 | - else |
|
613 | + if ($line->product_type == 9 && (in_array($line->desc, $TTitle_under_search) || in_array($line->label, $TTitle_under_search)) ) { |
|
614 | + $under_title_found = true; |
|
615 | + } |
|
616 | + } else |
|
542 | 617 | { |
543 | 618 | 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) ))) |
544 | 619 | { |
545 | - if ($key_is_id) $level = $line->qty; |
|
620 | + if ($key_is_id) { |
|
621 | + $level = $line->qty; |
|
622 | + } |
|
546 | 623 | |
547 | 624 | $add_line = true; |
548 | - if ($withBlockLine) $TLine[] = $line; |
|
625 | + if ($withBlockLine) { |
|
626 | + $TLine[] = $line; |
|
627 | + } |
|
549 | 628 | continue; |
550 | - } |
|
551 | - elseif ($add_line && $line->product_type == 9 && (100 - $line->qty == $level) ) // Si on tombe sur un sous-total, il faut que ce soit un du même niveau que le titre |
|
629 | + } elseif ($add_line && $line->product_type == 9 && (100 - $line->qty == $level) ) { |
|
630 | + // Si on tombe sur un sous-total, il faut que ce soit un du même niveau que le titre |
|
552 | 631 | { |
553 | 632 | if ($withBlockLine) $TLine[] = $line; |
633 | + } |
|
554 | 634 | break; |
555 | 635 | } |
556 | 636 | |
557 | 637 | if ($add_line) |
558 | 638 | { |
559 | - if (!$withBlockLine && (self::isTitle($line) || self::isSubtotal($line)) ) continue; |
|
560 | - else $TLine[] = $line; |
|
639 | + if (!$withBlockLine && (self::isTitle($line) || self::isSubtotal($line)) ) { |
|
640 | + continue; |
|
641 | + } else { |
|
642 | + $TLine[] = $line; |
|
643 | + } |
|
561 | 644 | } |
562 | 645 | } |
563 | 646 | } |
@@ -591,7 +674,9 @@ discard block |
||
591 | 674 | |
592 | 675 | case 'order_supplier': |
593 | 676 | $object->special_code = SELF::$module_number; |
594 | - if (empty($desc)) $desc = $label; |
|
677 | + if (empty($desc)) { |
|
678 | + $desc = $label; |
|
679 | + } |
|
595 | 680 | $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); |
596 | 681 | break; |
597 | 682 | |
@@ -601,7 +686,9 @@ discard block |
||
601 | 686 | |
602 | 687 | case 'invoice_supplier': |
603 | 688 | $object->special_code = SELF::$module_number; |
604 | - if (empty($desc)) $desc = $label; |
|
689 | + if (empty($desc)) { |
|
690 | + $desc = $label; |
|
691 | + } |
|
605 | 692 | $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); |
606 | 693 | break; |
607 | 694 | |
@@ -618,8 +705,11 @@ discard block |
||
618 | 705 | break; |
619 | 706 | } |
620 | 707 | |
621 | - if ($res <= 0) $object->db->rollback(); |
|
622 | - else $object->db->commit(); |
|
708 | + if ($res <= 0) { |
|
709 | + $object->db->rollback(); |
|
710 | + } else { |
|
711 | + $object->db->commit(); |
|
712 | + } |
|
623 | 713 | |
624 | 714 | return $res; |
625 | 715 | } |
@@ -629,24 +719,20 @@ discard block |
||
629 | 719 | global $db, $object; |
630 | 720 | |
631 | 721 | $TTitle = array(); |
632 | - if(! empty($object->id) && in_array($object->element, array('propal', 'commande', 'facture'))) {} |
|
633 | - else { |
|
722 | + if(! empty($object->id) && in_array($object->element, array('propal', 'commande', 'facture'))) {} else { |
|
634 | 723 | if ($origin_line->element == 'propaldet') |
635 | 724 | { |
636 | 725 | $object = new Propal($db); |
637 | 726 | $object->fetch($origin_line->fk_propal); |
638 | - } |
|
639 | - else if ($origin_line->element == 'commandedet') |
|
727 | + } else if ($origin_line->element == 'commandedet') |
|
640 | 728 | { |
641 | 729 | $object = new Commande($db); |
642 | 730 | $object->fetch($origin_line->fk_commande); |
643 | - } |
|
644 | - else if ($origin_line->element == 'facturedet') |
|
731 | + } else if ($origin_line->element == 'facturedet') |
|
645 | 732 | { |
646 | 733 | $object = new Facture($db); |
647 | 734 | $object->fetch($origin_line->fk_facture); |
648 | - } |
|
649 | - else |
|
735 | + } else |
|
650 | 736 | { |
651 | 737 | return $TTitle; |
652 | 738 | } |
@@ -656,8 +742,11 @@ discard block |
||
656 | 742 | $i = 0; |
657 | 743 | foreach ($object->lines as &$line) |
658 | 744 | { |
659 | - if ($origin_line->id == $line->id) break; |
|
660 | - else $i++; |
|
745 | + if ($origin_line->id == $line->id) { |
|
746 | + break; |
|
747 | + } else { |
|
748 | + $i++; |
|
749 | + } |
|
661 | 750 | } |
662 | 751 | |
663 | 752 | $i--; // Skip la ligne d'origine |
@@ -672,35 +761,43 @@ discard block |
||
672 | 761 | if (self::isSubtotal($object->lines[$y])) |
673 | 762 | { |
674 | 763 | $next_title_lvl_to_skip = self::getNiveau($object->lines[$y]); |
675 | - } |
|
676 | - elseif (self::isTitle($object->lines[$y])) |
|
764 | + } elseif (self::isTitle($object->lines[$y])) |
|
677 | 765 | { |
678 | 766 | if ($object->lines[$y]->qty == $next_title_lvl_to_skip) |
679 | 767 | { |
680 | 768 | $next_title_lvl_to_skip = 0; |
681 | 769 | continue; |
682 | - } |
|
683 | - else |
|
770 | + } else |
|
684 | 771 | { |
685 | - if (empty($object->lines[$y]->array_options)) $object->lines[$y]->fetch_optionals(); |
|
772 | + if (empty($object->lines[$y]->array_options)) { |
|
773 | + $object->lines[$y]->fetch_optionals(); |
|
774 | + } |
|
686 | 775 | $TTitle[$object->lines[$y]->id] = $object->lines[$y]; |
687 | 776 | |
688 | - if ($object->lines[$y]->qty == 1) break; |
|
777 | + if ($object->lines[$y]->qty == 1) { |
|
778 | + break; |
|
779 | + } |
|
689 | 780 | } |
690 | 781 | } |
691 | 782 | } |
692 | 783 | } |
693 | 784 | |
694 | - if ($reverse) $TTitle = array_reverse($TTitle, true); |
|
785 | + if ($reverse) { |
|
786 | + $TTitle = array_reverse($TTitle, true); |
|
787 | + } |
|
695 | 788 | |
696 | 789 | return $TTitle; |
697 | 790 | } |
698 | 791 | |
699 | 792 | public static function getNiveau(&$line) |
700 | 793 | { |
701 | - if (self::isTitle($line)) return $line->qty; |
|
702 | - elseif (self::isSubtotal($line)) return 100 - $line->qty; |
|
703 | - else return 0; |
|
794 | + if (self::isTitle($line)) { |
|
795 | + return $line->qty; |
|
796 | + } elseif (self::isSubtotal($line)) { |
|
797 | + return 100 - $line->qty; |
|
798 | + } else { |
|
799 | + return 0; |
|
800 | + } |
|
704 | 801 | } |
705 | 802 | |
706 | 803 | /** |
@@ -725,10 +822,16 @@ discard block |
||
725 | 822 | $objmarge->marge_droite = 10; |
726 | 823 | |
727 | 824 | $objectref = dol_sanitizeFileName($object->ref); |
728 | - if ($object->element == 'propal') $dir = $conf->propal->dir_output . '/' . $objectref; |
|
729 | - elseif ($object->element == 'commande') $dir = $conf->commande->dir_output . '/' . $objectref; |
|
730 | - elseif ($object->element == 'facture') $dir = $conf->facture->dir_output . '/' . $objectref; |
|
731 | - elseif ($object->element == 'facturerec') return; // no PDF for facturerec |
|
825 | + if ($object->element == 'propal') { |
|
826 | + $dir = $conf->propal->dir_output . '/' . $objectref; |
|
827 | + } elseif ($object->element == 'commande') { |
|
828 | + $dir = $conf->commande->dir_output . '/' . $objectref; |
|
829 | + } elseif ($object->element == 'facture') { |
|
830 | + $dir = $conf->facture->dir_output . '/' . $objectref; |
|
831 | + } elseif ($object->element == 'facturerec') { |
|
832 | + return; |
|
833 | + } |
|
834 | + // no PDF for facturerec |
|
732 | 835 | else |
733 | 836 | { |
734 | 837 | setEventMessage($langs->trans('warning_subtotal_recap_object_element_unknown', $object->element), 'warnings'); |
@@ -763,7 +866,9 @@ discard block |
||
763 | 866 | $pdf->SetCreator("Dolibarr ".DOL_VERSION); |
764 | 867 | $pdf->SetAuthor($outputlangs->convToOutputCharset($user->getFullName($outputlangs))); |
765 | 868 | $pdf->SetKeyWords($outputlangs->convToOutputCharset($object->ref)." ".$outputlangs->transnoentities("subtotalRecap")." ".$outputlangs->convToOutputCharset($object->thirdparty->name)); |
766 | - if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false); |
|
869 | + if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) { |
|
870 | + $pdf->SetCompression(false); |
|
871 | + } |
|
767 | 872 | |
768 | 873 | $pdf->SetMargins($objmarge->marge_gauche, $objmarge->marge_haute, $objmarge->marge_droite); // Left, Top, Right |
769 | 874 | |
@@ -773,7 +878,9 @@ discard block |
||
773 | 878 | |
774 | 879 | // New page |
775 | 880 | $pdf->AddPage(); |
776 | - if (! empty($tplidx)) $pdf->useTemplate($tplidx); |
|
881 | + if (! empty($tplidx)) { |
|
882 | + $pdf->useTemplate($tplidx); |
|
883 | + } |
|
777 | 884 | $pagenb++; |
778 | 885 | |
779 | 886 | |
@@ -829,8 +936,10 @@ discard block |
||
829 | 936 | { |
830 | 937 | $TTot['TTotal_tva_multicurrency'][$tx] += $amount; |
831 | 938 | } |
939 | + } else { |
|
940 | + $pdf->SetFont('','', $default_font_size - 1); |
|
832 | 941 | } |
833 | - else $pdf->SetFont('','', $default_font_size - 1); // Into loop to work with multipage |
|
942 | + // Into loop to work with multipage |
|
834 | 943 | |
835 | 944 | $pdf->SetTextColor(0,0,0); |
836 | 945 | |
@@ -852,9 +961,11 @@ discard block |
||
852 | 961 | $pdf->startTransaction(); |
853 | 962 | $pdf->writeHTMLCell($posx_options-$posx_designation-$decalage, 3, $posx_designation+$decalage, $curY, $outputlangs->convToOutputCharset($label), 0, 1, false, true, 'J',true); |
854 | 963 | $pageposafter=$pdf->getPage(); |
855 | - if ($pageposafter > $pageposbefore) // There is a pagebreak |
|
964 | + if ($pageposafter > $pageposbefore) { |
|
965 | + // There is a pagebreak |
|
856 | 966 | { |
857 | 967 | $pdf->rollbackTransaction(true); |
968 | + } |
|
858 | 969 | $pageposafter=$pageposbefore; |
859 | 970 | //print $pageposafter.'-'.$pageposbefore;exit; |
860 | 971 | $pdf->setPageOrientation('', 1, $heightforfooter); // The only function to edit the bottom margin of current page to set it. |
@@ -863,23 +974,27 @@ discard block |
||
863 | 974 | $pageposafter=$pdf->getPage(); |
864 | 975 | $posyafter=$pdf->GetY(); |
865 | 976 | //var_dump($posyafter); var_dump(($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))); exit; |
866 | - if ($posyafter > ($objmarge->page_hauteur - ($heightforfooter+$heightforinfotot))) // There is no space left for total+free text |
|
977 | + if ($posyafter > ($objmarge->page_hauteur - ($heightforfooter+$heightforinfotot))) { |
|
978 | + // There is no space left for total+free text |
|
867 | 979 | { |
868 | 980 | if ($i == ($nblignes-1)) // No more lines, and no space left to show total, so we create a new page |
869 | 981 | { |
870 | 982 | $pdf->AddPage('','',true); |
871 | - if (! empty($tplidx)) $pdf->useTemplate($tplidx); |
|
872 | - if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) self::pagehead($objmarge, $pdf, $object, 0, $outputlangs); |
|
983 | + } |
|
984 | + if (! empty($tplidx)) { |
|
985 | + $pdf->useTemplate($tplidx); |
|
986 | + } |
|
987 | + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) { |
|
988 | + self::pagehead($objmarge, $pdf, $object, 0, $outputlangs); |
|
989 | + } |
|
873 | 990 | $pdf->setPage($pageposafter+1); |
874 | 991 | } |
875 | - } |
|
876 | - else |
|
992 | + } else |
|
877 | 993 | { |
878 | 994 | // We found a page break |
879 | 995 | $showpricebeforepagebreak=0; |
880 | 996 | } |
881 | - } |
|
882 | - else // No pagebreak |
|
997 | + } else // No pagebreak |
|
883 | 998 | { |
884 | 999 | $pdf->commitTransaction(); |
885 | 1000 | } |
@@ -919,8 +1034,7 @@ discard block |
||
919 | 1034 | if ($pagenb == 1) |
920 | 1035 | { |
921 | 1036 | 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); |
922 | - } |
|
923 | - else |
|
1037 | + } else |
|
924 | 1038 | { |
925 | 1039 | 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); |
926 | 1040 | } |
@@ -928,7 +1042,9 @@ discard block |
||
928 | 1042 | $pagenb++; |
929 | 1043 | $pdf->setPage($pagenb); |
930 | 1044 | $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. |
931 | - if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) self::pagehead($objmarge, $pdf, $object, 0, $outputlangs); |
|
1045 | + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) { |
|
1046 | + self::pagehead($objmarge, $pdf, $object, 0, $outputlangs); |
|
1047 | + } |
|
932 | 1048 | } |
933 | 1049 | } |
934 | 1050 | } |
@@ -938,8 +1054,7 @@ discard block |
||
938 | 1054 | { |
939 | 1055 | 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); |
940 | 1056 | $bottomlasttab=$objmarge->page_hauteur - $heightforinfotot - $heightforfooter + 1; |
941 | - } |
|
942 | - else |
|
1057 | + } else |
|
943 | 1058 | { |
944 | 1059 | 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); |
945 | 1060 | $bottomlasttab=$objmarge->page_hauteur - $heightforinfotot - $heightforfooter + 1; |
@@ -953,7 +1068,9 @@ discard block |
||
953 | 1068 | |
954 | 1069 | $pagecount = self::concat($outputlangs, array($origin_file, $file), $origin_file); |
955 | 1070 | |
956 | - if (empty($conf->global->SUBTOTAL_KEEP_RECAP_FILE)) unlink($file); |
|
1071 | + if (empty($conf->global->SUBTOTAL_KEEP_RECAP_FILE)) { |
|
1072 | + unlink($file); |
|
1073 | + } |
|
957 | 1074 | } |
958 | 1075 | |
959 | 1076 | private static function printLevel($objmarge, $pdf, $line, $curY, $posx_designation) |
@@ -996,8 +1113,7 @@ discard block |
||
996 | 1113 | { |
997 | 1114 | $height=pdf_getHeightForLogo($logo); |
998 | 1115 | $pdf->Image($logo, $objmarge->marge_gauche, $posy, 0, $height); // width=0 (auto) |
999 | - } |
|
1000 | - else |
|
1116 | + } else |
|
1001 | 1117 | { |
1002 | 1118 | $pdf->SetTextColor(200,0,0); |
1003 | 1119 | $pdf->SetFont('','B',$default_font_size - 2); |
@@ -1006,8 +1122,7 @@ discard block |
||
1006 | 1122 | } |
1007 | 1123 | |
1008 | 1124 | $posy+=35; |
1009 | - } |
|
1010 | - else |
|
1125 | + } else |
|
1011 | 1126 | { |
1012 | 1127 | $text=$mysoc->name; |
1013 | 1128 | $pdf->MultiCell(100, 4, $outputlangs->convToOutputCharset($text), 0, 'L'); |
@@ -1021,9 +1136,13 @@ discard block |
||
1021 | 1136 | $pdf->SetXY($objmarge->marge_gauche,$posy); |
1022 | 1137 | |
1023 | 1138 | $key = 'subtotalPropalTitle'; |
1024 | - if ($object->element == 'commande') $key = 'subtotalCommandeTitle'; |
|
1025 | - elseif ($object->element == 'facture') $key = 'subtotalInvoiceTitle'; |
|
1026 | - elseif ($object->element == 'facturerec') $key = 'subtotalInvoiceTitle'; |
|
1139 | + if ($object->element == 'commande') { |
|
1140 | + $key = 'subtotalCommandeTitle'; |
|
1141 | + } elseif ($object->element == 'facture') { |
|
1142 | + $key = 'subtotalInvoiceTitle'; |
|
1143 | + } elseif ($object->element == 'facturerec') { |
|
1144 | + $key = 'subtotalInvoiceTitle'; |
|
1145 | + } |
|
1027 | 1146 | |
1028 | 1147 | $pdf->MultiCell(150, 4, $outputlangs->transnoentities($key, $object->ref, $object->thirdparty->name), '', 'L'); |
1029 | 1148 | |
@@ -1058,7 +1177,9 @@ discard block |
||
1058 | 1177 | |
1059 | 1178 | // Force to disable hidetop and hidebottom |
1060 | 1179 | $hidebottom=0; |
1061 | - if ($hidetop) $hidetop=-1; |
|
1180 | + if ($hidetop) { |
|
1181 | + $hidetop=-1; |
|
1182 | + } |
|
1062 | 1183 | |
1063 | 1184 | $currency = !empty($currency) ? $currency : $conf->currency; |
1064 | 1185 | $default_font_size = pdf_getPDFFontSize($outputlangs); |
@@ -1073,7 +1194,9 @@ discard block |
||
1073 | 1194 | $pdf->SetXY($objmarge->page_largeur - $objmarge->marge_droite - ($pdf->GetStringWidth($titre) + 3), $tab_top-4.5); |
1074 | 1195 | $pdf->MultiCell(($pdf->GetStringWidth($titre) + 3), 2, $titre); |
1075 | 1196 | |
1076 | - 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)); |
|
1197 | + if (! empty($conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)) { |
|
1198 | + $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)); |
|
1199 | + } |
|
1077 | 1200 | |
1078 | 1201 | |
1079 | 1202 | $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 |
@@ -1086,8 +1209,7 @@ discard block |
||
1086 | 1209 | $pdf->MultiCell($objmarge->page_largeur - $objmarge->marge_droite - $posx_montant,2, $outputlangs->transnoentities("Amount"),'','R'); |
1087 | 1210 | |
1088 | 1211 | $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 |
1089 | - } |
|
1090 | - else |
|
1212 | + } else |
|
1091 | 1213 | { |
1092 | 1214 | $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 |
1093 | 1215 | } |
@@ -1108,10 +1230,12 @@ discard block |
||
1108 | 1230 | |
1109 | 1231 | // Tableau total |
1110 | 1232 | $col1x = 120; $col2x = 170; |
1111 | - if ($objmarge->page_largeur < 210) // To work with US executive format |
|
1233 | + if ($objmarge->page_largeur < 210) { |
|
1234 | + // To work with US executive format |
|
1112 | 1235 | { |
1113 | 1236 | $col2x-=20; |
1114 | 1237 | } |
1238 | + } |
|
1115 | 1239 | $largcol2 = ($objmarge->page_largeur - $objmarge->marge_droite - $col2x); |
1116 | 1240 | |
1117 | 1241 | $useborder=0; |
@@ -1133,9 +1257,11 @@ discard block |
||
1133 | 1257 | $atleastoneratenotnull=0; |
1134 | 1258 | foreach($TTot['TTotal_tva'] as $tvakey => $tvaval) |
1135 | 1259 | { |
1136 | - if ($tvakey != 0) // On affiche pas taux 0 |
|
1260 | + if ($tvakey != 0) { |
|
1261 | + // On affiche pas taux 0 |
|
1137 | 1262 | { |
1138 | 1263 | $atleastoneratenotnull++; |
1264 | + } |
|
1139 | 1265 | |
1140 | 1266 | $index++; |
1141 | 1267 | $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); |
@@ -1188,9 +1314,13 @@ discard block |
||
1188 | 1314 | */ |
1189 | 1315 | private static function printRect($pdf, $x, $y, $l, $h, $hidetop=0, $hidebottom=0) |
1190 | 1316 | { |
1191 | - if (empty($hidetop) || $hidetop==-1) $pdf->line($x, $y, $x+$l, $y); |
|
1317 | + if (empty($hidetop) || $hidetop==-1) { |
|
1318 | + $pdf->line($x, $y, $x+$l, $y); |
|
1319 | + } |
|
1192 | 1320 | $pdf->line($x+$l, $y, $x+$l, $y+$h); |
1193 | - if (empty($hidebottom)) $pdf->line($x+$l, $y+$h, $x, $y+$h); |
|
1321 | + if (empty($hidebottom)) { |
|
1322 | + $pdf->line($x+$l, $y+$h, $x, $y+$h); |
|
1323 | + } |
|
1194 | 1324 | $pdf->line($x, $y+$h, $x, $y); |
1195 | 1325 | } |
1196 | 1326 | |
@@ -1199,7 +1329,9 @@ discard block |
||
1199 | 1329 | { |
1200 | 1330 | global $conf; |
1201 | 1331 | |
1202 | - if (empty($fileoutput)) $fileoutput = $file[0]; |
|
1332 | + if (empty($fileoutput)) { |
|
1333 | + $fileoutput = $file[0]; |
|
1334 | + } |
|
1203 | 1335 | |
1204 | 1336 | $pdf=pdf_getInstance(); |
1205 | 1337 | if (class_exists('TCPDF')) |
@@ -1209,7 +1341,9 @@ discard block |
||
1209 | 1341 | } |
1210 | 1342 | $pdf->SetFont(pdf_getPDFFont($outputlangs)); |
1211 | 1343 | |
1212 | - if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false); |
|
1344 | + if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) { |
|
1345 | + $pdf->SetCompression(false); |
|
1346 | + } |
|
1213 | 1347 | |
1214 | 1348 | |
1215 | 1349 | foreach($files as $file) |
@@ -1225,7 +1359,9 @@ discard block |
||
1225 | 1359 | } |
1226 | 1360 | |
1227 | 1361 | $pdf->Output($fileoutput,'F'); |
1228 | - if (! empty($conf->global->MAIN_UMASK)) @chmod($file, octdec($conf->global->MAIN_UMASK)); |
|
1362 | + if (! empty($conf->global->MAIN_UMASK)) { |
|
1363 | + @chmod($file, octdec($conf->global->MAIN_UMASK)); |
|
1364 | + } |
|
1229 | 1365 | |
1230 | 1366 | return $pagecount; |
1231 | 1367 | } |
@@ -1238,7 +1374,9 @@ discard block |
||
1238 | 1374 | */ |
1239 | 1375 | public static function hasNcTitle(&$line) |
1240 | 1376 | { |
1241 | - if(isset($line->has_nc_title)) return $line->has_nc_title; |
|
1377 | + if(isset($line->has_nc_title)) { |
|
1378 | + return $line->has_nc_title; |
|
1379 | + } |
|
1242 | 1380 | |
1243 | 1381 | $TTitle = self::getAllTitleFromLine($line); |
1244 | 1382 | foreach ($TTitle as &$line_title) |
@@ -1263,7 +1401,9 @@ discard block |
||
1263 | 1401 | public static function getTitleLabel($line) |
1264 | 1402 | { |
1265 | 1403 | $title = $line->label; |
1266 | - if (empty($title)) $title = !empty($line->description) ? $line->description : $line->desc; |
|
1404 | + if (empty($title)) { |
|
1405 | + $title = !empty($line->description) ? $line->description : $line->desc; |
|
1406 | + } |
|
1267 | 1407 | return $title; |
1268 | 1408 | } |
1269 | 1409 | } |
@@ -54,7 +54,9 @@ discard block |
||
54 | 54 | dol_include_once('/subtotal/class/subtotal.class.php'); |
55 | 55 | $TTitle = TSubtotal::getAllTitleFromDocument($object); |
56 | 56 | $html = ''; |
57 | - if ($showLabel) $html.= '<label for="under_title">'.$langs->trans('subtotalLabelForUnderTitle').'</label>'; |
|
57 | + if ($showLabel) { |
|
58 | + $html.= '<label for="under_title">'.$langs->trans('subtotalLabelForUnderTitle').'</label>'; |
|
59 | + } |
|
58 | 60 | $html.= '<select onChange="$(\'select[name=under_title]\').val(this.value);" name="under_title" class="under_title minwidth200"><option value="-1"></option>'; |
59 | 61 | |
60 | 62 | $nbsp = ' '; |
@@ -95,7 +97,9 @@ discard block |
||
95 | 97 | $TFreeText = getTFreeText(); |
96 | 98 | $html = '<label for="free_text">'.$langs->trans('subtotalLabelForFreeText').'</label>'; |
97 | 99 | $html.= '<select onChange="getTFreeText($(this));" name="free_text" class="minwidth200">'; |
98 | - if ($withEmpty) $html.= '<option value=""></option>'; |
|
100 | + if ($withEmpty) { |
|
101 | + $html.= '<option value=""></option>'; |
|
102 | + } |
|
99 | 103 | |
100 | 104 | $TFreeTextContents = array(); |
101 | 105 | foreach ($TFreeText as $id => $tab) |
@@ -134,8 +138,13 @@ discard block |
||
134 | 138 | $level = GETPOST('subtotal_level', 'int'); |
135 | 139 | if (!empty($level)) |
136 | 140 | { |
137 | - if ($line->qty > 90) $line->qty = 100 - $level; // Si on edit une ligne sous-total |
|
138 | - else $line->qty = $level; |
|
141 | + if ($line->qty > 90) { |
|
142 | + $line->qty = 100 - $level; |
|
143 | + } |
|
144 | + // Si on edit une ligne sous-total |
|
145 | + else { |
|
146 | + $line->qty = $level; |
|
147 | + } |
|
139 | 148 | } |
140 | 149 | |
141 | 150 | $res = TSubtotal::doUpdateLine($object, $line->id, $description, 0, $line->qty, 0, '', '', 0, 9, 0, 0, 'HT', $pagebreak, 0, 1, null, 0, $label, TSubtotal::$module_number, $line->array_options); |
@@ -162,13 +171,18 @@ discard block |
||
162 | 171 | { |
163 | 172 | $subtotal_tva_tx = $subtotal_tva_tx_init; // ré-init car la variable peut évoluer |
164 | 173 | |
165 | - if (!empty($showBlockExtrafields)) $line->array_options = $array_options; |
|
166 | - if ($subtotal_tva_tx == '') $subtotal_tva_tx = $line->tva_tx; |
|
174 | + if (!empty($showBlockExtrafields)) { |
|
175 | + $line->array_options = $array_options; |
|
176 | + } |
|
177 | + if ($subtotal_tva_tx == '') { |
|
178 | + $subtotal_tva_tx = $line->tva_tx; |
|
179 | + } |
|
167 | 180 | if ($object->element == 'facture' && !empty($conf->global->INVOICE_USE_SITUATION) && $object->type == Facture::TYPE_SITUATION) |
168 | 181 | { |
169 | 182 | $subtotal_progress = $subtotal_progress_init; |
170 | - if ($subtotal_progress == '') $subtotal_progress = $line->situation_percent; |
|
171 | - else |
|
183 | + if ($subtotal_progress == '') { |
|
184 | + $subtotal_progress = $line->situation_percent; |
|
185 | + } else |
|
172 | 186 | { |
173 | 187 | $prev_percent = $line->get_prev_progress($object->id); |
174 | 188 | if ($subtotal_progress < $prev_percent) |
@@ -181,14 +195,21 @@ discard block |
||
181 | 195 | |
182 | 196 | $res = TSubtotal::doUpdateLine($object, $line->id, $line->desc, $line->subprice, $line->qty, $line->remise_percent, $line->date_start, $line->date_end, $subtotal_tva_tx, $line->product_type, $line->localtax1_tx, $line->localtax2_tx, 'HT', $line->info_bits, $line->fk_parent_line, $line->skip_update_total, $line->fk_fournprice, $line->pa_ht, $line->label, $line->special_code, $line->array_options, $subtotal_progress, $line->fk_unit); |
183 | 197 | |
184 | - if ($res > 0) $success_updated_line++; |
|
185 | - else $error_updated_line++; |
|
198 | + if ($res > 0) { |
|
199 | + $success_updated_line++; |
|
200 | + } else { |
|
201 | + $error_updated_line++; |
|
202 | + } |
|
186 | 203 | } |
187 | 204 | } |
188 | 205 | |
189 | - if ($nb_progress_not_updated > 0) setEventMessage($langs->trans('subtotal_nb_progress_not_updated', $nb_progress_not_updated), 'warnings'); |
|
206 | + if ($nb_progress_not_updated > 0) { |
|
207 | + setEventMessage($langs->trans('subtotal_nb_progress_not_updated', $nb_progress_not_updated), 'warnings'); |
|
208 | + } |
|
190 | 209 | |
191 | - if ($success_updated_line > 0) setEventMessage($langs->trans('subtotal_success_updated_line', $success_updated_line)); |
|
210 | + if ($success_updated_line > 0) { |
|
211 | + setEventMessage($langs->trans('subtotal_success_updated_line', $success_updated_line)); |
|
212 | + } |
|
192 | 213 | if ($error_updated_line > 0) |
193 | 214 | { |
194 | 215 | setEventMessage($langs->trans('subtotal_error_updated_line', $error_updated_line), 'errors'); |
@@ -229,15 +250,16 @@ discard block |
||
229 | 250 | global $db,$langs,$tmp_object_nc; |
230 | 251 | |
231 | 252 | $error = 0; |
232 | - if (empty($element)) $error++; |
|
253 | + if (empty($element)) { |
|
254 | + $error++; |
|
255 | + } |
|
233 | 256 | |
234 | 257 | if (!$error) |
235 | 258 | { |
236 | 259 | if (!empty($tmp_object_nc) && $tmp_object_nc->element == $element && $tmp_object_nc->id == $elementid) |
237 | 260 | { |
238 | 261 | $object = $tmp_object_nc; |
239 | - } |
|
240 | - else |
|
262 | + } else |
|
241 | 263 | { |
242 | 264 | $classname = ucfirst($element); |
243 | 265 | |
@@ -257,8 +279,11 @@ discard block |
||
257 | 279 | |
258 | 280 | $object = new $classname($db); // Propal | Commande | Facture |
259 | 281 | $res = $object->fetch($elementid); |
260 | - if ($res < 0) $error++; |
|
261 | - else $tmp_object_nc = $object; |
|
282 | + if ($res < 0) { |
|
283 | + $error++; |
|
284 | + } else { |
|
285 | + $tmp_object_nc = $object; |
|
286 | + } |
|
262 | 287 | } |
263 | 288 | } |
264 | 289 | |
@@ -286,21 +311,21 @@ discard block |
||
286 | 311 | $res = doUpdate($object, $line_block, $subtotal_nc); |
287 | 312 | } |
288 | 313 | } |
289 | - } |
|
290 | - else |
|
314 | + } else |
|
291 | 315 | { |
292 | 316 | $res = doUpdate($object, $line, $subtotal_nc); |
293 | 317 | } |
294 | 318 | |
295 | 319 | $res = $object->update_price(1); |
296 | - if ($res <= 0) $error++; |
|
320 | + if ($res <= 0) { |
|
321 | + $error++; |
|
322 | + } |
|
297 | 323 | |
298 | 324 | if (!$error) |
299 | 325 | { |
300 | 326 | setEventMessage($langs->trans('subtotal_update_nc_success')); |
301 | 327 | $db->commit(); |
302 | - } |
|
303 | - else |
|
328 | + } else |
|
304 | 329 | { |
305 | 330 | setEventMessage($langs->trans('subtotal_update_nc_error'), 'errors'); |
306 | 331 | $db->rollback(); |
@@ -313,7 +338,9 @@ discard block |
||
313 | 338 | { |
314 | 339 | global $user; |
315 | 340 | |
316 | - if (TSubtotal::isFreeText($line) || TSubtotal::isSubtotal($line)) return 1; |
|
341 | + if (TSubtotal::isFreeText($line) || TSubtotal::isSubtotal($line)) { |
|
342 | + return 1; |
|
343 | + } |
|
317 | 344 | // Update extrafield et total |
318 | 345 | if(! empty($subtotal_nc)) { |
319 | 346 | $line->total_ht = $line->total_tva = $line->total_ttc = $line->total_localtax1 = $line->total_localtax2 = |
@@ -322,8 +349,7 @@ discard block |
||
322 | 349 | $line->array_options['options_subtotal_nc'] = 1; |
323 | 350 | |
324 | 351 | $res = $line->update($user); |
325 | - } |
|
326 | - else { |
|
352 | + } else { |
|
327 | 353 | $line->array_options['options_subtotal_nc'] = 0; |
328 | 354 | $res = TSubtotal::doUpdateLine($object, $line->id, $line->desc, $line->subprice, $line->qty, $line->remise_percent, $line->date_start, $line->date_end, $line->tva_tx, $line->product_type, $line->localtax1_tx, $line->localtax2_tx, 'HT', $line->info_bits, $line->fk_parent_line, $line->skip_update_total, $line->fk_fournprice, $line->pa_ht, $line->label, $line->special_code, $line->array_options, $line->situation_percent, $line->fk_unit); |
329 | 355 | } |