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