38 require
'../main.inc.php';
39 require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formadmin.class.php';
40 require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formcompany.class.php';
41 require_once DOL_DOCUMENT_ROOT.
'/core/lib/admin.lib.php';
42 require_once DOL_DOCUMENT_ROOT.
'/core/lib/functions2.lib.php';
43 require_once DOL_DOCUMENT_ROOT.
'/core/class/doleditor.class.php';
44 require_once DOL_DOCUMENT_ROOT.
'/core/lib/accounting.lib.php';
45 require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formaccounting.class.php';
48 $langs->loadLangs(array(
"errors",
"admin",
"main",
"companies",
"resource",
"holiday",
"accountancy",
"hrm",
"orders",
"contracts",
"projects",
"propal",
"bills",
"interventions",
"ticket"));
50 $action =
GETPOST(
'action',
'alpha') ?
GETPOST(
'action',
'alpha') :
'view';
51 $confirm =
GETPOST(
'confirm',
'alpha');
53 $rowid =
GETPOST(
'rowid',
'alpha');
54 $entity =
GETPOST(
'entity',
'int');
55 $code =
GETPOST(
'code',
'alpha');
57 $allowed = $user->admin;
58 if ($id == 7 && $user->hasRight(
'accounting',
'chartofaccount')) {
61 if ($id == 10 && $user->hasRight(
'accounting',
'chartofaccount')) {
64 if ($id == 17 && $user->hasRight(
'accounting',
'chartofaccount')) {
71 $acts = array(); $actl = array();
72 $acts[0] =
"activate";
74 $actl[0] =
img_picto($langs->trans(
"Disabled"),
'switch_off',
'class="size15x"');
75 $actl[1] =
img_picto($langs->trans(
"Activated"),
'switch_on',
'class="size15x"');
77 $listoffset =
GETPOST(
'listoffset');
78 $listlimit =
GETPOST(
'listlimit') > 0 ?
GETPOST(
'listlimit') : 1000;
81 $sortfield =
GETPOST(
'sortfield',
'aZ09comma');
82 $sortorder =
GETPOST(
'sortorder',
'aZ09comma');
84 if (empty($page) || $page == -1) {
87 $offset = $listlimit * $page;
88 $pageprev = $page - 1;
89 $pagenext = $page + 1;
91 $search_country_id =
GETPOST(
'search_country_id',
'int');
92 if (!
GETPOSTISSET(
'search_country_id') && $search_country_id ==
'' && ($id == 2 || $id == 3 || $id == 10)) {
93 $search_country_id = $mysoc->country_id;
95 $search_code =
GETPOST(
'search_code',
'alpha');
98 $hookmanager->initHooks(array(
'admin',
'dictionaryadmin'));
104 $taborder = array(9, 15, 30, 0, 4, 3, 2, 0, 1, 8, 19, 16, 39, 27, 40, 38, 0, 5, 11, 0, 6, 24, 0, 29, 0, 33, 34, 32, 28, 17, 35, 36, 0, 10, 23, 12, 13, 7, 0, 14, 0, 22, 20, 18, 21, 41, 0, 37, 42, 0, 43, 0, 25, 0, 44, 0);
108 $tabname[1] =
"c_forme_juridique";
109 $tabname[2] =
"c_departements";
110 $tabname[3] =
"c_regions";
111 $tabname[4] =
"c_country";
112 $tabname[5] =
"c_civility";
113 $tabname[6] =
"c_actioncomm";
114 $tabname[7] =
"c_chargesociales";
115 $tabname[8] =
"c_typent";
116 $tabname[9] =
"c_currencies";
117 $tabname[10] =
"c_tva";
118 $tabname[11] =
"c_type_contact";
119 $tabname[12] =
"c_payment_term";
120 $tabname[13] =
"c_paiement";
121 $tabname[14] =
"c_ecotaxe";
122 $tabname[15] =
"c_paper_format";
123 $tabname[16] =
"c_prospectlevel";
124 $tabname[17] =
"c_type_fees";
125 $tabname[18] =
"c_shipment_mode";
126 $tabname[19] =
"c_effectif";
127 $tabname[20] =
"c_input_method";
128 $tabname[21] =
"c_availability";
129 $tabname[22] =
"c_input_reason";
130 $tabname[23] =
"c_revenuestamp";
131 $tabname[24] =
"c_type_resource";
132 $tabname[25] =
"c_type_container";
134 $tabname[27] =
"c_stcomm";
135 $tabname[28] =
"c_holiday_types";
136 $tabname[29] =
"c_lead_status";
137 $tabname[30] =
"c_format_cards";
139 $tabname[32] =
"c_hrm_public_holiday";
140 $tabname[33] =
"c_hrm_department";
141 $tabname[34] =
"c_hrm_function";
142 $tabname[35] =
"c_exp_tax_cat";
143 $tabname[36] =
"c_exp_tax_range";
144 $tabname[37] =
"c_units";
145 $tabname[38] =
"c_socialnetworks";
146 $tabname[39] =
"c_prospectcontactlevel";
147 $tabname[40] =
"c_stcommcontact";
148 $tabname[41] =
"c_transport_mode";
149 $tabname[42] =
"c_product_nature";
150 $tabname[43] =
"c_productbatch_qcstatus";
151 $tabname[44] =
"c_asset_disposal_type";
155 $tablib[1] =
"DictionaryCompanyJuridicalType";
156 $tablib[2] =
"DictionaryCanton";
157 $tablib[3] =
"DictionaryRegion";
158 $tablib[4] =
"DictionaryCountry";
159 $tablib[5] =
"DictionaryCivility";
160 $tablib[6] =
"DictionaryActions";
161 $tablib[7] =
"DictionarySocialContributions";
162 $tablib[8] =
"DictionaryCompanyType";
163 $tablib[9] =
"DictionaryCurrency";
164 $tablib[10] =
"DictionaryVAT";
165 $tablib[11] =
"DictionaryTypeContact";
166 $tablib[12] =
"DictionaryPaymentConditions";
167 $tablib[13] =
"DictionaryPaymentModes";
168 $tablib[14] =
"DictionaryEcotaxe";
169 $tablib[15] =
"DictionaryPaperFormat";
170 $tablib[16] =
"DictionaryProspectLevel";
171 $tablib[17] =
"DictionaryFees";
172 $tablib[18] =
"DictionarySendingMethods";
173 $tablib[19] =
"DictionaryStaff";
174 $tablib[20] =
"DictionaryOrderMethods";
175 $tablib[21] =
"DictionaryAvailability";
176 $tablib[22] =
"DictionarySource";
177 $tablib[23] =
"DictionaryRevenueStamp";
178 $tablib[24] =
"DictionaryResourceType";
179 $tablib[25] =
"DictionaryTypeOfContainer";
181 $tablib[27] =
"DictionaryProspectStatus";
182 $tablib[28] =
"DictionaryHolidayTypes";
183 $tablib[29] =
"DictionaryOpportunityStatus";
184 $tablib[30] =
"DictionaryFormatCards";
186 $tablib[32] =
"DictionaryPublicHolidays";
187 $tablib[33] =
"DictionaryDepartment";
188 $tablib[34] =
"DictionaryFunction";
189 $tablib[35] =
"DictionaryExpenseTaxCat";
190 $tablib[36] =
"DictionaryExpenseTaxRange";
191 $tablib[37] =
"DictionaryMeasuringUnits";
192 $tablib[38] =
"DictionarySocialNetworks";
193 $tablib[39] =
"DictionaryProspectContactLevel";
194 $tablib[40] =
"DictionaryProspectContactStatus";
195 $tablib[41] =
"DictionaryTransportMode";
196 $tablib[42] =
"DictionaryProductNature";
197 $tablib[43] =
"DictionaryBatchStatus";
198 $tablib[44] =
"DictionaryAssetDisposalType";
202 $tabsql[1] =
"SELECT f.rowid as rowid, f.code, f.libelle, c.code as country_code, c.label as country, f.active FROM ".MAIN_DB_PREFIX.
"c_forme_juridique as f, ".MAIN_DB_PREFIX.
"c_country as c WHERE f.fk_pays=c.rowid";
203 $tabsql[2] =
"SELECT d.rowid as rowid, d.code_departement as code, d.nom as libelle, d.fk_region as region_id, r.nom as region, c.code as country_code, c.label as country, d.active FROM ".MAIN_DB_PREFIX.
"c_departements as d, ".MAIN_DB_PREFIX.
"c_regions as r, ".MAIN_DB_PREFIX.
"c_country as c WHERE d.fk_region=r.code_region and r.fk_pays=c.rowid and r.active=1 and c.active=1";
204 $tabsql[3] =
"SELECT r.rowid as rowid, r.code_region as state_code, r.nom as libelle, r.fk_pays as country_id, c.code as country_code, c.label as country, r.active FROM ".MAIN_DB_PREFIX.
"c_regions as r, ".MAIN_DB_PREFIX.
"c_country as c WHERE r.fk_pays=c.rowid and c.active=1";
205 $tabsql[4] =
"SELECT c.rowid as rowid, c.code, c.label, c.active, c.favorite, c.eec FROM ".MAIN_DB_PREFIX.
"c_country AS c";
206 $tabsql[5] =
"SELECT c.rowid as rowid, c.code as code, c.label, c.active FROM ".MAIN_DB_PREFIX.
"c_civility AS c";
207 $tabsql[6] =
"SELECT a.id as rowid, a.code as code, a.libelle AS libelle, a.type, a.active, a.module, a.color, a.position FROM ".MAIN_DB_PREFIX.
"c_actioncomm AS a";
208 $tabsql[7] =
"SELECT a.id as rowid, a.code as code, a.libelle AS libelle, a.accountancy_code as accountancy_code, c.code as country_code, c.label as country, a.fk_pays as country_id, a.active FROM ".MAIN_DB_PREFIX.
"c_chargesociales AS a, ".MAIN_DB_PREFIX.
"c_country as c WHERE a.fk_pays=c.rowid and c.active=1";
209 $tabsql[8] =
"SELECT t.id as rowid, t.code as code, t.libelle, t.fk_country as country_id, c.code as country_code, c.label as country, t.position, t.active FROM ".MAIN_DB_PREFIX.
"c_typent as t LEFT JOIN ".MAIN_DB_PREFIX.
"c_country as c ON t.fk_country=c.rowid";
210 $tabsql[9] =
"SELECT c.code_iso as code, c.label, c.unicode, c.active FROM ".MAIN_DB_PREFIX.
"c_currencies AS c";
211 $tabsql[10] =
"SELECT t.rowid, t.code, t.taux, t.localtax1_type, t.localtax1, t.localtax2_type, t.localtax2, c.label as country, c.code as country_code, t.fk_pays as country_id, t.recuperableonly, t.note, t.active, t.accountancy_code_sell, t.accountancy_code_buy FROM ".MAIN_DB_PREFIX.
"c_tva as t, ".MAIN_DB_PREFIX.
"c_country as c WHERE t.fk_pays=c.rowid";
212 $tabsql[11] =
"SELECT t.rowid as rowid, t.element, t.source, t.code, t.libelle, t.position, t.active FROM ".MAIN_DB_PREFIX.
"c_type_contact AS t";
213 $tabsql[12] =
"SELECT c.rowid as rowid, c.code, c.libelle, c.libelle_facture, c.deposit_percent, c.nbjour, c.type_cdr, c.decalage, c.active, c.sortorder, c.entity FROM ".MAIN_DB_PREFIX.
"c_payment_term AS c WHERE c.entity = ".
getEntity($tabname[12]);
214 $tabsql[13] =
"SELECT c.id as rowid, c.code, c.libelle, c.type, c.active, c.entity FROM ".MAIN_DB_PREFIX.
"c_paiement AS c WHERE c.entity = ".
getEntity($tabname[13]);
215 $tabsql[14] =
"SELECT e.rowid as rowid, e.code as code, e.label, e.price, e.organization, e.fk_pays as country_id, c.code as country_code, c.label as country, e.active FROM ".MAIN_DB_PREFIX.
"c_ecotaxe AS e, ".MAIN_DB_PREFIX.
"c_country as c WHERE e.fk_pays=c.rowid and c.active=1";
216 $tabsql[15] =
"SELECT rowid as rowid, code, label as libelle, width, height, unit, active FROM ".MAIN_DB_PREFIX.
"c_paper_format";
217 $tabsql[16] =
"SELECT code, label as libelle, sortorder, active FROM ".MAIN_DB_PREFIX.
"c_prospectlevel";
218 $tabsql[17] =
"SELECT id as rowid, code, label, accountancy_code, active FROM ".MAIN_DB_PREFIX.
"c_type_fees";
219 $tabsql[18] =
"SELECT rowid as rowid, code, libelle, tracking, active FROM ".MAIN_DB_PREFIX.
"c_shipment_mode";
220 $tabsql[19] =
"SELECT id as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX.
"c_effectif";
221 $tabsql[20] =
"SELECT rowid as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX.
"c_input_method";
222 $tabsql[21] =
"SELECT c.rowid as rowid, c.code, c.label, c.type_duration, c.qty, c.active, c.position FROM ".MAIN_DB_PREFIX.
"c_availability AS c";
223 $tabsql[22] =
"SELECT rowid as rowid, code, label, active FROM ".MAIN_DB_PREFIX.
"c_input_reason";
224 $tabsql[23] =
"SELECT t.rowid as rowid, t.taux, t.revenuestamp_type, c.label as country, c.code as country_code, t.fk_pays as country_id, t.note, t.active, t.accountancy_code_sell, t.accountancy_code_buy FROM ".MAIN_DB_PREFIX.
"c_revenuestamp as t, ".MAIN_DB_PREFIX.
"c_country as c WHERE t.fk_pays=c.rowid";
225 $tabsql[24] =
"SELECT rowid as rowid, code, label, active FROM ".MAIN_DB_PREFIX.
"c_type_resource";
226 $tabsql[25] =
"SELECT rowid as rowid, code, label, active, module FROM ".MAIN_DB_PREFIX.
"c_type_container as t WHERE t.entity = ".
getEntity($tabname[25]);
228 $tabsql[27] =
"SELECT id as rowid, code, libelle, picto, active FROM ".MAIN_DB_PREFIX.
"c_stcomm";
229 $tabsql[28] =
"SELECT h.rowid as rowid, h.code, h.label, h.affect, h.delay, h.newbymonth, h.fk_country as country_id, c.code as country_code, c.label as country, h.block_if_negative, h.sortorder, h.active FROM ".MAIN_DB_PREFIX.
"c_holiday_types as h LEFT JOIN ".MAIN_DB_PREFIX.
"c_country as c ON h.fk_country=c.rowid";
230 $tabsql[29] =
"SELECT rowid as rowid, code, label, percent, position, active FROM ".MAIN_DB_PREFIX.
"c_lead_status";
231 $tabsql[30] =
"SELECT rowid, code, name, paper_size, orientation, metric, leftmargin, topmargin, nx, ny, spacex, spacey, width, height, font_size, custom_x, custom_y, active FROM ".MAIN_DB_PREFIX.
"c_format_cards";
233 $tabsql[32] =
"SELECT a.id as rowid, a.entity, a.code, a.fk_country as country_id, c.code as country_code, c.label as country, a.dayrule, a.day, a.month, a.year, a.active FROM ".MAIN_DB_PREFIX.
"c_hrm_public_holiday as a LEFT JOIN ".MAIN_DB_PREFIX.
"c_country as c ON a.fk_country=c.rowid AND c.active=1";
234 $tabsql[33] =
"SELECT rowid, pos, code, label, active FROM ".MAIN_DB_PREFIX.
"c_hrm_department";
235 $tabsql[34] =
"SELECT rowid, pos, code, label, c_level, active FROM ".MAIN_DB_PREFIX.
"c_hrm_function";
236 $tabsql[35] =
"SELECT c.rowid, c.label, c.active, c.entity FROM ".MAIN_DB_PREFIX.
"c_exp_tax_cat c";
237 $tabsql[36] =
"SELECT r.rowid, r.fk_c_exp_tax_cat, r.range_ik, r.active, r.entity FROM ".MAIN_DB_PREFIX.
"c_exp_tax_range r";
238 $tabsql[37] =
"SELECT r.rowid, r.code, r.sortorder, r.label, r.short_label, r.unit_type, r.scale, r.active FROM ".MAIN_DB_PREFIX.
"c_units r";
239 $tabsql[38] =
"SELECT s.rowid, s.entity, s.code, s.label, s.url, s.icon, s.active FROM ".MAIN_DB_PREFIX.
"c_socialnetworks as s WHERE s.entity = ".
getEntity($tabname[38]);
240 $tabsql[39] =
"SELECT code, label as libelle, sortorder, active FROM ".MAIN_DB_PREFIX.
"c_prospectcontactlevel";
241 $tabsql[40] =
"SELECT id as rowid, code, libelle, picto, active FROM ".MAIN_DB_PREFIX.
"c_stcommcontact";
242 $tabsql[41] =
"SELECT rowid as rowid, code, label, active FROM ".MAIN_DB_PREFIX.
"c_transport_mode";
243 $tabsql[42] =
"SELECT rowid as rowid, code, label, active FROM ".MAIN_DB_PREFIX.
"c_product_nature";
244 $tabsql[43] =
"SELECT rowid, code, label, active FROM ".MAIN_DB_PREFIX.
"c_productbatch_qcstatus";
245 $tabsql[44] =
"SELECT rowid, code, label, active FROM ".MAIN_DB_PREFIX.
"c_asset_disposal_type";
248 $tabsqlsort = array();
249 $tabsqlsort[1] =
"country ASC, code ASC";
250 $tabsqlsort[2] =
"country ASC, code ASC";
251 $tabsqlsort[3] =
"country ASC, code ASC";
252 $tabsqlsort[4] =
"code ASC";
253 $tabsqlsort[5] =
"label ASC";
254 $tabsqlsort[6] =
"a.type ASC, a.module ASC, a.position ASC, a.code ASC";
255 $tabsqlsort[7] =
"c.label ASC, a.code ASC, a.libelle ASC";
256 $tabsqlsort[8] =
"country DESC,".(!empty($conf->global->SOCIETE_SORT_ON_TYPEENT) ?
' t.position ASC,' :
'').
" libelle ASC";
257 $tabsqlsort[9] =
"label ASC";
258 $tabsqlsort[10] =
"country ASC, code ASC, taux ASC, recuperableonly ASC, localtax1 ASC, localtax2 ASC";
259 $tabsqlsort[11] =
"t.element ASC, t.source ASC, t.position ASC, t.code ASC";
260 $tabsqlsort[12] =
"sortorder ASC, code ASC";
261 $tabsqlsort[13] =
"code ASC";
262 $tabsqlsort[14] =
"country ASC, e.organization ASC, code ASC";
263 $tabsqlsort[15] =
"rowid ASC";
264 $tabsqlsort[16] =
"sortorder ASC";
265 $tabsqlsort[17] =
"code ASC";
266 $tabsqlsort[18] =
"code ASC, libelle ASC";
267 $tabsqlsort[19] =
"id ASC";
268 $tabsqlsort[20] =
"code ASC, libelle ASC";
269 $tabsqlsort[21] =
"position ASC, type_duration ASC, qty ASC";
270 $tabsqlsort[22] =
"code ASC, label ASC";
271 $tabsqlsort[23] =
"country ASC, taux ASC";
272 $tabsqlsort[24] =
"code ASC, label ASC";
273 $tabsqlsort[25] =
"t.module ASC, t.code ASC, t.label ASC";
275 $tabsqlsort[27] =
"code ASC";
276 $tabsqlsort[28] =
"sortorder ASC, country ASC, code ASC";
277 $tabsqlsort[29] =
"position ASC";
278 $tabsqlsort[30] =
"code ASC";
280 $tabsqlsort[32] =
"country, year ASC, month ASC, day ASC";
281 $tabsqlsort[33] =
"code ASC";
282 $tabsqlsort[34] =
"code ASC";
283 $tabsqlsort[35] =
"c.label ASC";
284 $tabsqlsort[36] =
"r.fk_c_exp_tax_cat ASC, r.range_ik ASC";
285 $tabsqlsort[37] =
"sortorder ASC";
286 $tabsqlsort[38] =
"rowid, code ASC";
287 $tabsqlsort[39] =
"sortorder ASC";
288 $tabsqlsort[40] =
"code ASC";
289 $tabsqlsort[41] =
"code ASC";
290 $tabsqlsort[42] =
"code ASC";
291 $tabsqlsort[43] =
"code ASC";
292 $tabsqlsort[44] =
"code ASC";
296 $tabfield[1] =
"code,libelle,country";
297 $tabfield[2] =
"code,libelle,region_id,region,country";
298 $tabfield[3] =
"code,libelle,country_id,country";
299 $tabfield[4] =
"code,label";
300 $tabfield[5] =
"code,label";
301 $tabfield[6] =
"code,libelle,type,color,position";
302 $tabfield[7] =
"code,libelle,country,accountancy_code";
303 $tabfield[8] =
"code,libelle,country_id,country".(!empty($conf->global->SOCIETE_SORT_ON_TYPEENT) ?
',position' :
'');
304 $tabfield[9] =
"code,label,unicode";
305 $tabfield[10] =
"country_id,country,code,taux,localtax1_type,localtax1,localtax2_type,localtax2,recuperableonly,accountancy_code_sell,accountancy_code_buy,note";
306 $tabfield[11] =
"element,source,code,libelle,position";
307 $tabfield[12] =
"code,libelle,libelle_facture,deposit_percent,nbjour,type_cdr,decalage,sortorder,entity";
308 $tabfield[13] =
"code,libelle,type,entity";
309 $tabfield[14] =
"code,label,price,organization,country";
310 $tabfield[15] =
"code,libelle,width,height,unit";
311 $tabfield[16] =
"code,libelle,sortorder";
312 $tabfield[17] =
"code,label,accountancy_code";
313 $tabfield[18] =
"code,libelle,tracking";
314 $tabfield[19] =
"code,libelle";
315 $tabfield[20] =
"code,libelle";
316 $tabfield[21] =
"code,label,qty,type_duration,position";
317 $tabfield[22] =
"code,label";
318 $tabfield[23] =
"country_id,country,taux,revenuestamp_type,accountancy_code_sell,accountancy_code_buy,note";
319 $tabfield[24] =
"code,label";
320 $tabfield[25] =
"code,label";
322 $tabfield[27] =
"code,libelle,picto";
323 $tabfield[28] =
"code,label,affect,delay,newbymonth,country_id,country,block_if_negative,sortorder";
324 $tabfield[29] =
"code,label,percent,position";
325 $tabfield[30] =
"code,name,paper_size,orientation,metric,leftmargin,topmargin,nx,ny,spacex,spacey,width,height,font_size,custom_x,custom_y";
327 $tabfield[32] =
"code,dayrule,year,month,day,country_id,country";
328 $tabfield[33] =
"code,label";
329 $tabfield[34] =
"code,label";
330 $tabfield[35] =
"label";
331 $tabfield[36] =
"range_ik,fk_c_exp_tax_cat";
332 $tabfield[37] =
"code,label,short_label,unit_type,scale,sortorder";
333 $tabfield[38] =
"code,label,url,icon,entity";
334 $tabfield[39] =
"code,libelle,sortorder";
335 $tabfield[40] =
"code,libelle,picto";
336 $tabfield[41] =
"code,label";
337 $tabfield[42] =
"code,label";
338 $tabfield[43] =
"code,label";
339 $tabfield[44] =
"code,label";
342 $tabfieldvalue = array();
343 $tabfieldvalue[1] =
"code,libelle,country";
344 $tabfieldvalue[2] =
"code,libelle,region";
345 $tabfieldvalue[3] =
"code,libelle,country";
346 $tabfieldvalue[4] =
"code,label";
347 $tabfieldvalue[5] =
"code,label";
348 $tabfieldvalue[6] =
"code,libelle,type,color,position";
349 $tabfieldvalue[7] =
"code,libelle,country,accountancy_code";
350 $tabfieldvalue[8] =
"code,libelle,country".(!empty($conf->global->SOCIETE_SORT_ON_TYPEENT) ?
',position' :
'');
351 $tabfieldvalue[9] =
"code,label,unicode";
352 $tabfieldvalue[10] =
"country,code,taux,localtax1_type,localtax1,localtax2_type,localtax2,recuperableonly,accountancy_code_sell,accountancy_code_buy,note";
353 $tabfieldvalue[11] =
"element,source,code,libelle,position";
354 $tabfieldvalue[12] =
"code,libelle,libelle_facture,deposit_percent,nbjour,type_cdr,decalage,sortorder";
355 $tabfieldvalue[13] =
"code,libelle,type";
356 $tabfieldvalue[14] =
"code,label,price,organization,country";
357 $tabfieldvalue[15] =
"code,libelle,width,height,unit";
358 $tabfieldvalue[16] =
"code,libelle,sortorder";
359 $tabfieldvalue[17] =
"code,label,accountancy_code";
360 $tabfieldvalue[18] =
"code,libelle,tracking";
361 $tabfieldvalue[19] =
"code,libelle";
362 $tabfieldvalue[20] =
"code,libelle";
363 $tabfieldvalue[21] =
"code,label,qty,type_duration,position";
364 $tabfieldvalue[22] =
"code,label";
365 $tabfieldvalue[23] =
"country,taux,revenuestamp_type,accountancy_code_sell,accountancy_code_buy,note";
366 $tabfieldvalue[24] =
"code,label";
367 $tabfieldvalue[25] =
"code,label";
369 $tabfieldvalue[27] =
"code,libelle,picto";
370 $tabfieldvalue[28] =
"code,label,affect,delay,newbymonth,country,block_if_negative,sortorder";
371 $tabfieldvalue[29] =
"code,label,percent,position";
372 $tabfieldvalue[30] =
"code,name,paper_size,orientation,metric,leftmargin,topmargin,nx,ny,spacex,spacey,width,height,font_size,custom_x,custom_y";
374 $tabfieldvalue[32] =
"code,dayrule,day,month,year,country";
375 $tabfieldvalue[33] =
"code,label";
376 $tabfieldvalue[34] =
"code,label";
377 $tabfieldvalue[35] =
"label";
378 $tabfieldvalue[36] =
"range_ik,fk_c_exp_tax_cat";
379 $tabfieldvalue[37] =
"code,label,short_label,unit_type,scale,sortorder";
380 $tabfieldvalue[38] =
"code,label,url,icon";
381 $tabfieldvalue[39] =
"code,libelle,sortorder";
382 $tabfieldvalue[40] =
"code,libelle,picto";
383 $tabfieldvalue[41] =
"code,label";
384 $tabfieldvalue[42] =
"code,label";
385 $tabfieldvalue[43] =
"code,label";
386 $tabfieldvalue[44] =
"code,label";
389 $tabfieldinsert = array();
390 $tabfieldinsert[1] =
"code,libelle,fk_pays";
391 $tabfieldinsert[2] =
"code_departement,nom,fk_region";
392 $tabfieldinsert[3] =
"code_region,nom,fk_pays";
393 $tabfieldinsert[4] =
"code,label";
394 $tabfieldinsert[5] =
"code,label";
395 $tabfieldinsert[6] =
"code,libelle,type,color,position";
396 $tabfieldinsert[7] =
"code,libelle,fk_pays,accountancy_code";
397 $tabfieldinsert[8] =
"code,libelle,fk_country".(!empty($conf->global->SOCIETE_SORT_ON_TYPEENT) ?
',position' :
'');
398 $tabfieldinsert[9] =
"code_iso,label,unicode";
399 $tabfieldinsert[10] =
"fk_pays,code,taux,localtax1_type,localtax1,localtax2_type,localtax2,recuperableonly,accountancy_code_sell,accountancy_code_buy,note";
400 $tabfieldinsert[11] =
"element,source,code,libelle,position";
401 $tabfieldinsert[12] =
"code,libelle,libelle_facture,deposit_percent,nbjour,type_cdr,decalage,sortorder,entity";
402 $tabfieldinsert[13] =
"code,libelle,type,entity";
403 $tabfieldinsert[14] =
"code,label,price,organization,fk_pays";
404 $tabfieldinsert[15] =
"code,label,width,height,unit";
405 $tabfieldinsert[16] =
"code,label,sortorder";
406 $tabfieldinsert[17] =
"code,label,accountancy_code";
407 $tabfieldinsert[18] =
"code,libelle,tracking";
408 $tabfieldinsert[19] =
"code,libelle";
409 $tabfieldinsert[20] =
"code,libelle";
410 $tabfieldinsert[21] =
"code,label,qty,type_duration,position";
411 $tabfieldinsert[22] =
"code,label";
412 $tabfieldinsert[23] =
"fk_pays,taux,revenuestamp_type,accountancy_code_sell,accountancy_code_buy,note";
413 $tabfieldinsert[24] =
"code,label";
414 $tabfieldinsert[25] =
"code,label";
416 $tabfieldinsert[27] =
"code,libelle,picto";
417 $tabfieldinsert[28] =
"code,label,affect,delay,newbymonth,fk_country,block_if_negative,sortorder";
418 $tabfieldinsert[29] =
"code,label,percent,position";
419 $tabfieldinsert[30] =
"code,name,paper_size,orientation,metric,leftmargin,topmargin,nx,ny,spacex,spacey,width,height,font_size,custom_x,custom_y";
422 $tabfieldinsert[32] =
"code,dayrule,day,month,year,fk_country";
423 $tabfieldinsert[33] =
"code,label";
424 $tabfieldinsert[34] =
"code,label";
425 $tabfieldinsert[35] =
"label";
426 $tabfieldinsert[36] =
"range_ik,fk_c_exp_tax_cat";
427 $tabfieldinsert[37] =
"code,label,short_label,unit_type,scale,sortorder";
428 $tabfieldinsert[38] =
"code,label,url,icon,entity";
429 $tabfieldinsert[39] =
"code,label,sortorder";
430 $tabfieldinsert[40] =
"code,libelle,picto";
431 $tabfieldinsert[41] =
"code,label";
432 $tabfieldinsert[42] =
"code,label";
433 $tabfieldinsert[43] =
"code,label";
434 $tabfieldinsert[44] =
"code,label";
443 $tabrowid[4] =
"rowid";
444 $tabrowid[5] =
"rowid";
448 $tabrowid[9] =
"code_iso";
450 $tabrowid[11] =
"rowid";
452 $tabrowid[13] =
"id";
455 $tabrowid[16] =
"code";
456 $tabrowid[17] =
"id";
457 $tabrowid[18] =
"rowid";
458 $tabrowid[19] =
"id";
460 $tabrowid[21] =
"rowid";
461 $tabrowid[22] =
"rowid";
466 $tabrowid[27] =
"id";
471 $tabrowid[32] =
"id";
472 $tabrowid[33] =
"rowid";
473 $tabrowid[34] =
"rowid";
478 $tabrowid[39] =
"code";
479 $tabrowid[40] =
"id";
481 $tabrowid[42] =
"rowid";
482 $tabrowid[43] =
"rowid";
483 $tabrowid[44] =
"rowid";
500 $tabcond[14] = (
isModEnabled(
"product") && (
isModEnabled(
'ecotax') || !empty($conf->global->MAIN_SHOW_ECOTAX_DICTIONNARY)));
502 $tabcond[16] = (
isModEnabled(
"societe") && empty($conf->global->SOCIETE_DISABLE_PROSPECTS));
506 $tabcond[20] = (
isModEnabled(
"fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) ||
isModEnabled(
"supplier_order");
521 $tabcond[35] =
isModEnabled(
'expensereport') && !empty($conf->global->MAIN_USE_EXPENSE_IK);
522 $tabcond[36] =
isModEnabled(
'expensereport') && !empty($conf->global->MAIN_USE_EXPENSE_IK);
525 $tabcond[39] = (
isModEnabled(
"societe") && empty($conf->global->SOCIETE_DISABLE_PROSPECTS) && !empty($conf->global->THIRDPARTY_ENABLE_PROSPECTION_ON_ALTERNATIVE_ADRESSES));
526 $tabcond[40] = (
isModEnabled(
"societe") && !empty($conf->global->THIRDPARTY_ENABLE_PROSPECTION_ON_ALTERNATIVE_ADRESSES));
536 $tabcomplete = array(
537 'c_forme_juridique'=>array(
'picto'=>
'company',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
538 'c_departements'=>array(
'picto'=>
'state',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
539 'c_regions'=>array(
'picto'=>
'region',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
540 'c_country'=>array(
'picto'=>
'country',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
541 'c_civility'=>array(
'picto'=>
'contact',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
542 'c_actioncomm'=>array(
'picto'=>
'action',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'color'=>$langs->trans(
"ColorFormat"),
'position'=>$langs->trans(
"PositionIntoComboList"))),
543 'c_chargesociales'=>array(
'picto'=>
'bill',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
544 'c_typent'=>array(
'picto'=>
'company',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'position'=>$langs->trans(
"PositionIntoComboList"))),
545 'c_currencies'=>array(
'picto'=>
'multicurrency',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'unicode'=>$langs->trans(
"UnicodeCurrency"))),
546 'c_tva'=>array(
'picto'=>
'bill',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'taux'=>$langs->trans(
"SellTaxRate"),
'recuperableonly'=>$langs->trans(
"RecuperableOnly"),
'localtax1_type'=>$langs->trans(
"LocalTaxDesc"),
'localtax2_type'=>$langs->trans(
"LocalTaxDesc"))),
547 'c_type_contact'=>array(
'picto'=>
'contact',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'position'=>$langs->trans(
"PositionIntoComboList"))),
548 'c_payment_term'=>array(
'picto'=>
'bill',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'type_cdr'=>$langs->trans(
"TypeCdr", $langs->transnoentitiesnoconv(
"NbOfDays"), $langs->transnoentitiesnoconv(
"Offset"), $langs->transnoentitiesnoconv(
"NbOfDays"), $langs->transnoentitiesnoconv(
"Offset")))),
549 'c_paiement'=>array(
'picto'=>
'bill',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
550 'c_ecotaxe'=>array(
'picto'=>
'bill',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
551 'c_paper_format'=>array(
'picto'=>
'generic',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
552 'c_prospectlevel'=>array(
'picto'=>
'company',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
553 'c_type_fees'=>array(
'picto'=>
'trip',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
554 'c_shipment_mode'=>array(
'picto'=>
'shipment',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'tracking'=>$langs->trans(
"UrlTrackingDesc"))),
555 'c_effectif'=>array(
'picto'=>
'company',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
556 'c_input_method'=>array(
'picto'=>
'order',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
557 'c_input_reason'=>array(
'picto'=>
'order',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'position'=>$langs->trans(
"PositionIntoComboList"))),
558 'c_availability'=>array(
'picto'=>
'shipment',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
559 'c_revenuestamp'=>array(
'picto'=>
'bill',
'help'=>array(
'revenuestamp_type'=>$langs->trans(
'FixedOrPercent'))),
560 'c_type_resource'=>array(
'picto'=>
'resource',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
561 'c_type_container'=>array(
'picto'=>
'website',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
562 'c_stcomm'=>array(
'picto'=>
'company',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'picto'=>$langs->trans(
"PictoHelp"))),
563 'c_holiday_types'=>array(
'picto'=>
'holiday',
'help'=>array(
'affect'=>$langs->trans(
"FollowedByACounter"),
'delay'=>$langs->trans(
"MinimumNoticePeriod"),
'newbymonth'=>$langs->trans(
"NbAddedAutomatically"))),
564 'c_lead_status'=>array(
'picto'=>
'project',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'percent'=>$langs->trans(
"OpportunityPercent"),
'position'=>$langs->trans(
"PositionIntoComboList"))),
565 'c_format_cards'=>array(
'picto'=>
'generic',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'name'=>$langs->trans(
"LabelName"),
'paper_size'=>$langs->trans(
"LabelPaperSize"))),
566 'c_hrm_public_holiday'=>array(
'picto'=>
'holiday',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'dayrule'=>
"Keep empty for a date defined with month and day (most common case).<br>Use a keyword like 'easter', 'eastermonday', ... for a date predefined by complex rules.",
'country'=>$langs->trans(
"CountryIfSpecificToOneCountry"),
'year'=>$langs->trans(
"ZeroMeansEveryYear"))),
567 'c_hrm_department'=>array(
'picto'=>
'hrm',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
568 'c_hrm_function'=>array(
'picto'=>
'hrm',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
569 'c_exp_tax_cat'=>array(
'picto'=>
'expensereport',
'help'=>array()),
570 'c_exp_tax_range'=>array(
'picto'=>
'expensereport',
'help'=>array(
'range_ik'=>$langs->trans(
'PrevRangeToThisRange'))),
571 'c_units'=>array(
'picto'=>
'product',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'unit_type' => $langs->trans(
'Measuringtype_durationDesc'),
'scale' => $langs->trans(
'MeasuringScaleDesc'))),
572 'c_socialnetworks'=>array(
'picto'=>
'share-alt',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'url' => $langs->trans(
'UrlSocialNetworksDesc'),
'icon' => $langs->trans(
'FafaIconSocialNetworksDesc'))),
573 'c_prospectcontactlevel'=>array(
'picto'=>
'company',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
574 'c_stcommcontact'=>array(
'picto'=>
'company',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"),
'picto'=>$langs->trans(
"PictoHelp"))),
575 'c_transport_mode'=>array(
'picto'=>
'incoterm',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
576 'c_product_nature'=>array(
'picto'=>
'product',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
577 'c_productbatch_qcstatus'=>array(
'picto'=>
'lot',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
578 'c_asset_disposal_type'=>array(
'picto'=>
'asset',
'help'=>array(
'code'=>$langs->trans(
"EnterAnyCode"))),
583 complete_dictionary_with_modules($taborder, $tabname, $tablib, $tabsql, $tabsqlsort, $tabfield, $tabfieldvalue, $tabfieldinsert, $tabrowid, $tabcond, $tabhelp, $tabcomplete);
587 foreach ($tabcomplete as $key => $value) {
590 if (!isset($tabcond[$i])) {
593 $tabcomplete[$key][
'id'] = $i;
594 $tabcomplete[$key][
'cond'] = $tabcond[$i];
595 $tabcomplete[$key][
'rowid'] = $tabrowid[$i];
596 $tabcomplete[$key][
'fieldinsert'] = $tabfieldinsert[$i];
597 $tabcomplete[$key][
'fieldvalue'] = $tabfieldvalue[$i];
598 $tabcomplete[$key][
'lib'] = $tablib[$i];
599 $tabcomplete[$key][
'sql'] = $tabsql[$i];
600 $tabcomplete[$key][
'sqlsort'] = $tabsqlsort[$i];
601 $tabcomplete[$key][
'field'] = $tabfield[$i];
606 $arrayofkeys = array_keys($tabcomplete);
607 $keytable = $arrayofkeys[$id - 1];
611 if (empty($sortfield)) {
612 $tmp1 = explode(
',', empty($tabcomplete[$keytable][
'sqlsort']) ?
'' : $tabcomplete[$keytable][
'sqlsort']);
613 $tmp2 = explode(
' ', $tmp1[0]);
614 $sortfield = preg_replace(
'/^.*\./',
'', $tmp2[0]);
615 $sortorder = (!empty($tmp2[1]) ? $tmp2[1] :
'');
621 $elementList = array();
622 $sourceList = array();
624 $elementList = array(
626 'agenda' =>
img_picto(
'',
'action',
'class="pictofixedwidth"').$langs->trans(
'Agenda'),
627 'dolresource' =>
img_picto(
'',
'resource',
'class="pictofixedwidth"').$langs->trans(
'Resource'),
628 'societe' =>
img_picto(
'',
'company',
'class="pictofixedwidth"').$langs->trans(
'ThirdParty'),
634 'project' =>
img_picto(
'',
'project',
'class="pictofixedwidth"').$langs->trans(
'Project'),
635 'project_task' =>
img_picto(
'',
'projecttask',
'class="pictofixedwidth"').$langs->trans(
'Task'),
636 'propal' =>
img_picto(
'',
'propal',
'class="pictofixedwidth"').$langs->trans(
'Proposal'),
637 'commande' =>
img_picto(
'',
'order',
'class="pictofixedwidth"').$langs->trans(
'Order'),
638 'facture' =>
img_picto(
'',
'bill',
'class="pictofixedwidth"').$langs->trans(
'Bill'),
639 'fichinter' =>
img_picto(
'',
'intervention',
'class="pictofixedwidth"').$langs->trans(
'InterventionCard'),
640 'contrat' =>
img_picto(
'',
'contract',
'class="pictofixedwidth"').$langs->trans(
'Contract'),
641 'ticket' =>
img_picto(
'',
'ticket',
'class="pictofixedwidth"').$langs->trans(
'Ticket'),
642 'supplier_proposal' =>
img_picto(
'',
'supplier_proposal',
'class="pictofixedwidth"').$langs->trans(
'SupplierProposal'),
643 'order_supplier' =>
img_picto(
'',
'supplier_order',
'class="pictofixedwidth"').$langs->trans(
'SupplierOrder'),
644 'invoice_supplier' =>
img_picto(
'',
'supplier_invoice',
'class="pictofixedwidth"').$langs->trans(
'SupplierBill'),
646 if (!empty($conf->global->MAIN_FEATURES_LEVEL) && $conf->global->MAIN_FEATURES_LEVEL >= 2) {
647 $elementList[
'conferenceorbooth'] =
img_picto(
'',
'eventorganization',
'class="pictofixedwidth"').$langs->trans(
'ConferenceOrBooth');
654 'internal' => $langs->trans(
'Internal'),
655 'external' => $langs->trans(
'External')
660 $localtax_typeList = array(
661 "0" => $langs->trans(
"No"),
662 "1" => $langs->trans(
"Yes").
' ('.$langs->trans(
"Type").
" 1)",
663 "2" => $langs->trans(
"Yes").
' ('.$langs->trans(
"Type").
" 2)",
664 "3" => $langs->trans(
"Yes").
' ('.$langs->trans(
"Type").
" 3)",
665 "4" => $langs->trans(
"Yes").
' ('.$langs->trans(
"Type").
" 4)",
666 "5" => $langs->trans(
"Yes").
' ('.$langs->trans(
"Type").
" 5)",
667 "6" => $langs->trans(
"Yes").
' ('.$langs->trans(
"Type").
" 6)"
675 $object =
new stdClass();
680 'confirm' =>$confirm,
682 'taborder' =>$taborder,
683 'tabname' =>$tabname,
686 'tabsqlsort' =>$tabsqlsort,
687 'tabfield' =>$tabfield,
688 'tabfieldvalue' =>$tabfieldvalue,
689 'tabfieldinsert'=>$tabfieldinsert,
690 'tabrowid' =>$tabrowid,
691 'tabcond' =>$tabcond,
692 'tabhelp' =>$tabhelp,
693 'tabcomplete' =>$tabcomplete
695 $reshook = $hookmanager->executeHooks(
'doActions', $parameters, $object, $action);
700 if (
GETPOST(
'button_removefilter',
'alpha') ||
GETPOST(
'button_removefilter.x',
'alpha') ||
GETPOST(
'button_removefilter_x',
'alpha')) {
701 $search_country_id =
'';
705 if (empty($reshook)) {
708 $listfield = explode(
',', str_replace(
' ',
'', $tabfield[$id]));
709 $listfieldinsert = explode(
',', $tabfieldinsert[$id]);
710 $listfieldmodify = explode(
',', $tabfieldinsert[$id]);
711 $listfieldvalue = explode(
',', $tabfieldvalue[$id]);
715 foreach ($listfield as $f => $value) {
717 if ($value ==
'country_id' && in_array($tablib[$id], array(
'DictionaryPublicHolidays',
'DictionaryVAT',
'DictionaryRegion',
'DictionaryCompanyType',
'DictionaryHolidayTypes',
'DictionaryRevenueStamp',
'DictionaryAccountancysystem',
'DictionaryAccountancyCategory'))) {
720 if ($value ==
'country' && in_array($tablib[$id], array(
'DictionaryPublicHolidays',
'DictionaryCanton',
'DictionaryCompanyType',
'DictionaryHolidayTypes',
'DictionaryRevenueStamp'))) {
724 if ($value ==
'localtax1' && !
GETPOST(
'localtax1_type')) {
727 if ($value ==
'localtax2' && !
GETPOST(
'localtax2_type')) {
730 if ($value ==
'color' && !
GETPOST(
'color')) {
733 if ($value ==
'formula' && !
GETPOST(
'formula')) {
736 if ($value ==
'dayrule' && !
GETPOST(
'dayrule')) {
739 if ($value ==
'sortorder') {
743 && (!in_array($value, array(
'decalage',
'module',
'accountancy_code',
'accountancy_code_sell',
'accountancy_code_buy',
'tracking',
'picto',
'deposit_percent'))
744 && ($id != 10 || ($value !=
'code' && $value !=
'note'))
748 $fieldnamekey = $value;
750 if ($fieldnamekey ==
'libelle' || ($fieldnamekey ==
'label')) {
751 $fieldnamekey =
'Label';
753 if ($fieldnamekey ==
'libelle_facture') {
754 $fieldnamekey =
'LabelOnDocuments';
756 if ($fieldnamekey ==
'deposit_percent') {
757 $fieldnamekey =
'DepositPercent';
759 if ($fieldnamekey ==
'nbjour') {
760 $fieldnamekey =
'NbOfDays';
762 if ($fieldnamekey ==
'decalage') {
763 $fieldnamekey =
'Offset';
765 if ($fieldnamekey ==
'module') {
766 $fieldnamekey =
'Module';
768 if ($fieldnamekey ==
'code') {
769 $fieldnamekey =
'Code';
771 if ($fieldnamekey ==
'note') {
772 $fieldnamekey =
'Note';
774 if ($fieldnamekey ==
'taux') {
775 $fieldnamekey =
'Rate';
777 if ($fieldnamekey ==
'type') {
778 $fieldnamekey =
'Type';
780 if ($fieldnamekey ==
'position') {
781 $fieldnamekey =
'Position';
783 if ($fieldnamekey ==
'unicode') {
784 $fieldnamekey =
'Unicode';
786 if ($fieldnamekey ==
'deductible') {
787 $fieldnamekey =
'Deductible';
789 if ($fieldnamekey ==
'sortorder') {
790 $fieldnamekey =
'SortOrder';
792 if ($fieldnamekey ==
'category_type') {
793 $fieldnamekey =
'Calculated';
795 if ($fieldnamekey ==
'revenuestamp_type') {
796 $fieldnamekey =
'TypeOfRevenueStamp';
798 if ($fieldnamekey ==
'use_default') {
799 $fieldnamekey =
'UseByDefault';
802 setEventMessages($langs->transnoentities(
"ErrorFieldRequired", $langs->transnoentities($fieldnamekey)),
null,
'errors');
806 if (
GETPOST(
'actionadd') && $tabname[$id] ==
"c_actioncomm" &&
GETPOSTISSET(
"type") && in_array(
GETPOST(
"type"), array(
'system',
'systemauto'))) {
808 setEventMessages($langs->transnoentities(
'ErrorReservedTypeSystemSystemAuto'),
null,
'errors');
813 setEventMessages($langs->transnoentities(
'ErrorCodeCantContainZero'),
null,
'errors');
817 if (in_array($tablib[$id], array(
'DictionaryCompanyType',
'DictionaryHolidayTypes'))) {
818 $_POST[
"country"] =
'';
821 setEventMessages($langs->transnoentities(
"ErrorFieldRequired", $langs->transnoentities(
"Country")),
null,
'errors');
824 if (($id == 3 || $id == 42) && !is_numeric(
GETPOST(
"code"))) {
826 setEventMessages($langs->transnoentities(
"ErrorFieldMustBeANumeric", $langs->transnoentities(
"Code")),
null,
'errors');
831 $_POST[
"localtax1"] =
'0';
834 $_POST[
"localtax2"] =
'0';
836 if (
GETPOST(
"accountancy_code") <= 0) {
837 $_POST[
"accountancy_code"] =
'';
839 if (
GETPOST(
"accountancy_code_sell") <= 0) {
840 $_POST[
"accountancy_code_sell"] =
'';
842 if (
GETPOST(
"accountancy_code_buy") <= 0) {
843 $_POST[
"accountancy_code_buy"] =
'';
846 $_POST[
"code"] = preg_replace(
'/[^a-zA-Z0-9_\-\+]/',
'',
GETPOST(
"code"));
849 $tablename = $tabname[$id];
850 $tablename = preg_replace(
'/^'.preg_quote(MAIN_DB_PREFIX,
'/').
'/',
'', $tablename);
853 if ($ok &&
GETPOST(
'actionadd')) {
854 if ($tabrowid[$id]) {
857 $sql =
"SELECT MAX(".$tabrowid[$id].
") as newid FROM ".MAIN_DB_PREFIX.$tablename;
858 $result = $db->query($sql);
860 $obj = $db->fetch_object($result);
861 $newid = ($obj->newid + 1);
868 $sql =
"INSERT INTO ".MAIN_DB_PREFIX.$tablename.
" (";
870 if ($tabrowid[$id] && !in_array($tabrowid[$id], $listfieldinsert)) {
871 $sql .= $tabrowid[$id].
",";
873 $sql .= $tabfieldinsert[$id];
878 if ($tabrowid[$id] && !in_array($tabrowid[$id], $listfieldinsert)) {
882 foreach ($listfieldinsert as $f => $value) {
883 $keycode = $listfieldvalue[$i];
884 if (empty($keycode)) {
888 if ($value ==
'price' || preg_match(
'/^amount/i', $value)) {
890 } elseif ($value ==
'taux' || $value ==
'localtax1') {
892 } elseif ($value ==
'entity') {
893 $_POST[$keycode] =
getEntity($tablename);
900 if ($keycode ==
'sortorder') {
901 $sql .= (int)
GETPOST(
'position',
'int');
902 } elseif (
GETPOST($keycode) ==
'' && !($keycode ==
'code' && $id == 10)) {
904 } elseif ($keycode ==
'content') {
905 $sql .=
"'".$db->escape(
GETPOST($keycode,
'restricthtml')).
"'";
906 } elseif (in_array($keycode, array(
'joinfile',
'private',
'pos',
'position',
'scale',
'use_default'))) {
907 $sql .= (int)
GETPOST($keycode,
'int');
909 $sql .=
"'".$db->escape(
GETPOST($keycode,
'alphanohtml')).
"'";
917 $resql = $db->query($sql);
919 setEventMessages($langs->transnoentities(
"RecordCreatedSuccessfully"),
null,
'mesgs');
922 if ($id == 10 &&
GETPOST(
'country',
'int') > 0) {
923 $search_country_id =
GETPOST(
'country',
'int');
925 $_POST = array(
'id'=>$id);
927 if ($db->errno() ==
'DB_ERROR_RECORD_ALREADY_EXISTS') {
928 setEventMessages($langs->transnoentities(
"ErrorRecordAlreadyExists"),
null,
'errors');
936 if ($ok &&
GETPOST(
'actionmodify')) {
937 if ($tabrowid[$id]) {
938 $rowidcol = $tabrowid[$id];
944 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET ";
946 if ($tabrowid[$id] && !in_array($tabrowid[$id], $listfieldmodify)) {
947 $sql .= $tabrowid[$id].
"=";
948 $sql .=
"'".$db->escape($rowid).
"', ";
951 foreach ($listfieldmodify as $field) {
952 $keycode = $listfieldvalue[$i];
953 if (empty($keycode)) {
957 if ($field ==
'price' || preg_match(
'/^amount/i', $field)) {
959 } elseif ($field ==
'taux' || $field ==
'localtax1') {
961 } elseif ($field ==
'entity') {
962 $_POST[$keycode] =
getEntity($tablename);
969 if ($listfieldvalue[$i] ==
'sortorder') {
970 $sql .= (int)
GETPOST(
'position',
'int');
971 } elseif (
GETPOST($keycode) ==
'' && !($keycode ==
'code' && $id == 10)) {
973 } elseif ($keycode ==
'content') {
974 $sql .=
"'".$db->escape(
GETPOST($keycode,
'restricthtml')).
"'";
975 } elseif (in_array($keycode, array(
'joinfile',
'private',
'pos',
'position',
'scale',
'use_default'))) {
976 $sql .= (int)
GETPOST($keycode,
'int');
978 $sql .=
"'".$db->escape(
GETPOST($keycode,
'alphanohtml')).
"'";
983 if (in_array($rowidcol, array(
'code',
'code_iso'))) {
984 $sql .=
" WHERE ".$rowidcol.
" = '".$db->escape($rowid).
"'";
986 $sql .=
" WHERE ".$rowidcol.
" = ".((int) $rowid);
988 if (in_array(
'entity', $listfieldmodify)) {
989 $sql .=
" AND entity = ".((int)
getEntity($tablename, 0));
994 $resql = $db->query($sql);
1001 if ($action ==
'confirm_delete' && $confirm ==
'yes') {
1002 if ($tabrowid[$id]) {
1003 $rowidcol = $tabrowid[$id];
1005 $rowidcol =
"rowid";
1008 $tablename = $tabname[$id];
1009 $tablename = preg_replace(
'/^'.preg_quote(MAIN_DB_PREFIX,
'/').
'/',
'', $tablename);
1011 $sql =
"DELETE FROM ".MAIN_DB_PREFIX.$tablename.
" WHERE ".$rowidcol.
" = '".$db->escape($rowid).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1014 $result = $db->query($sql);
1016 if ($db->errno() ==
'DB_ERROR_CHILD_EXISTS') {
1017 setEventMessages($langs->transnoentities(
"ErrorRecordIsUsedByChild"),
null,
'errors');
1025 if ($action == $acts[0]) {
1026 if ($tabrowid[$id]) {
1027 $rowidcol = $tabrowid[$id];
1029 $rowidcol =
"rowid";
1032 $tablename = $tabname[$id];
1033 $tablename = preg_replace(
'/^'.preg_quote(MAIN_DB_PREFIX,
'/').
'/',
'', $tablename);
1036 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET active = 1 WHERE ".$rowidcol.
" = '".$db->escape($rowid).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1038 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET active = 1 WHERE code = '".$db->escape(
dol_escape_htmltag($code)).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1041 $result = $db->query($sql);
1048 if ($action == $acts[1]) {
1049 if ($tabrowid[$id]) {
1050 $rowidcol = $tabrowid[$id];
1052 $rowidcol =
"rowid";
1055 $tablename = $tabname[$id];
1056 $tablename = preg_replace(
'/^'.preg_quote(MAIN_DB_PREFIX,
'/').
'/',
'', $tablename);
1059 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET active = 0 WHERE ".$rowidcol.
" = '".$db->escape($rowid).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1061 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET active = 0 WHERE code = '".$db->escape(
dol_escape_htmltag($code)).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1064 $result = $db->query($sql);
1071 if ($action ==
'activate_favorite') {
1072 if ($tabrowid[$id]) {
1073 $rowidcol = $tabrowid[$id];
1075 $rowidcol =
"rowid";
1078 $tablename = $tabname[$id];
1079 $tablename = preg_replace(
'/^'.preg_quote(MAIN_DB_PREFIX,
'/').
'/',
'', $tablename);
1082 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET favorite = 1 WHERE ".$rowidcol.
" = '".$db->escape($rowid).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1084 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET favorite = 1 WHERE code = '".$db->escape(
dol_escape_htmltag($code)).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1087 $result = $db->query($sql);
1094 if ($action ==
'disable_favorite') {
1095 if ($tabrowid[$id]) {
1096 $rowidcol = $tabrowid[$id];
1098 $rowidcol =
"rowid";
1101 $tablename = $tabname[$id];
1102 $tablename = preg_replace(
'/^'.preg_quote(MAIN_DB_PREFIX,
'/').
'/',
'', $tablename);
1105 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET favorite = 0 WHERE ".$rowidcol.
" = '".$db->escape($rowid).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1107 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET favorite = 0 WHERE code = '".$db->escape(
dol_escape_htmltag($code)).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1110 $result = $db->query($sql);
1117 if ($action ==
'activate_eec') {
1118 if ($tabrowid[$id]) {
1119 $rowidcol = $tabrowid[$id];
1121 $rowidcol =
"rowid";
1124 $tablename = $tabname[$id];
1125 $tablename = preg_replace(
'/^'.preg_quote(MAIN_DB_PREFIX,
'/').
'/',
'', $tablename);
1128 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET eec = 1 WHERE ".$rowidcol.
" = '".$db->escape($rowid).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1130 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET eec = 1 WHERE code = '".$db->escape(
dol_escape_htmltag($code)).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1133 $result = $db->query($sql);
1140 if ($action ==
'disable_eec') {
1141 if ($tabrowid[$id]) {
1142 $rowidcol = $tabrowid[$id];
1144 $rowidcol =
"rowid";
1147 $tablename = $tabname[$id];
1148 $tablename = preg_replace(
'/^'.preg_quote(MAIN_DB_PREFIX,
'/').
'/',
'', $tablename);
1151 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET eec = 0 WHERE ".$rowidcol.
" = '".$db->escape($rowid).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1153 $sql =
"UPDATE ".MAIN_DB_PREFIX.$tablename.
" SET eec = 0 WHERE code = '".$db->escape(
dol_escape_htmltag($code)).
"'".($entity !=
'' ?
" AND entity = ".(int) $entity :
'');
1156 $result = $db->query($sql);
1171 $title = $langs->trans(
"DictionarySetup");
1177 $title .=
' - '.$langs->trans($tablib[$id]);
1178 $linkback =
'<a href="'.$_SERVER[
'PHP_SELF'].
'">'.$langs->trans(
"BackToDictionaryList").
'</a>';
1180 $titlepicto =
'title_setup';
1181 if ($id == 10 &&
GETPOST(
'from') ==
'accountancy') {
1182 $title = $langs->trans(
"MenuVatAccounts");
1183 $titlepicto =
'accountancy';
1185 if ($id == 7 &&
GETPOST(
'from') ==
'accountancy') {
1186 $title = $langs->trans(
"MenuTaxAccounts");
1187 $titlepicto =
'accountancy';
1193 print
'<span class="opacitymedium">'.$langs->trans(
"DictionaryDesc");
1194 print
" ".$langs->trans(
"OnlyActiveElementsAreShown").
"<br>\n";
1195 print
'</span><br>';
1199 $param =
'&id='.urlencode($id);
1200 if ($search_country_id > 0) {
1201 $param .=
'&search_country_id='.urlencode($search_country_id);
1203 if ($search_code !=
'') {
1204 $param .=
'&search_code='.urlencode($search_code);
1206 if ($entity !=
'') {
1207 $param .=
'&entity='.(int) $entity;
1209 $paramwithsearch = $param;
1211 $paramwithsearch .=
'&sortorder='.urlencode($sortorder);
1214 $paramwithsearch .=
'&sortfield='.urlencode($sortfield);
1217 $paramwithsearch .=
'&from='.urlencode(
GETPOST(
'from',
'alpha'));
1222 if ($action ==
'delete') {
1223 print
$form->formconfirm($_SERVER[
"PHP_SELF"].
'?'.($page ?
'page='.$page.
'&' :
'').
'rowid='.urlencode($rowid).
'&code='.urlencode($code).$paramwithsearch, $langs->trans(
'DeleteLine'), $langs->trans(
'ConfirmDeleteLine'),
'confirm_delete',
'', 0, 1);
1232 $sql = $tabsql[$id];
1234 if (!preg_match(
'/ WHERE /', $sql)) {
1235 $sql .=
" WHERE 1 = 1";
1237 if ($search_country_id > 0) {
1238 $sql .=
" AND c.rowid = ".((int) $search_country_id);
1240 if ($search_code !=
'' && $id == 9) {
1242 } elseif ($search_code !=
'' && $id == 28) {
1244 } elseif ($search_code !=
'' && ($id == 7 || $id == 32)) {
1246 } elseif ($search_code !=
'' && $id == 3) {
1248 } elseif ($search_code !=
'' && ($id == 8 || $id == 10)) {
1250 } elseif ($search_code !=
'' && $id == 1) {
1252 } elseif ($search_code !=
'' && $id == 2) {
1254 } elseif ($search_code !=
'' && $id == 14) {
1256 } elseif ($search_code !=
'' && $id != 9) {
1262 if ($sortfield ==
'country') {
1263 $sortfield =
'country_code';
1265 $sql .= $db->order($sortfield, $sortorder);
1268 $tabsqlsort[$id] = preg_replace(
'/([a-z]+\.)?'.$sortfield.
' '.$sortorder.
',/i',
'', $tabsqlsort[$id]);
1269 $tabsqlsort[$id] = preg_replace(
'/([a-z]+\.)?'.$sortfield.
',/i',
'', $tabsqlsort[$id]);
1271 $sql .=
" ORDER BY ";
1273 $sql .= $tabsqlsort[$id];
1274 $sql .= $db->plimit($listlimit + 1, $offset);
1277 if (empty($tabfield[$id])) {
1278 dol_print_error($db,
'The table with id '.$id.
' has no array tabfield defined');
1281 $fieldlist = explode(
',', $tabfield[$id]);
1283 print
'<form action="'.$_SERVER[
'PHP_SELF'].
'?id='.$id.
'" method="POST">';
1284 print
'<input type="hidden" name="token" value="'.newToken().
'">';
1285 print
'<input type="hidden" name="from" value="'.dol_escape_htmltag(
GETPOST(
'from',
'alpha')).
'">';
1287 if ($id == 10 && empty($conf->global->FACTURE_TVAOPTION)) {
1288 print
info_admin($langs->trans(
"VATIsUsedIsOff", $langs->transnoentities(
"Setup"), $langs->transnoentities(
"CompanyFoundation")));
1293 if ($tabname[$id]) {
1296 $fieldlist = explode(
',', $tabfield[$id]);
1298 print
'<div class="div-table-responsive-no-min">';
1299 print
'<table class="noborder centpercent">';
1302 print
'<!-- line title to add new entry -->';
1303 $tdsoffields =
'<tr class="liste_titre">';
1304 foreach ($fieldlist as $field => $value) {
1305 if ($value ==
'entity') {
1311 $valuetoshow = ucfirst($value);
1312 $valuetoshow = $langs->trans($valuetoshow);
1315 if ($value ==
'pos') {
1316 $valuetoshow = $langs->trans(
"Position"); $class =
'right';
1318 if ($value ==
'source') {
1319 $valuetoshow = $langs->trans(
"Contact");
1321 if ($value ==
'price') {
1322 $valuetoshow = $langs->trans(
"PriceUHT");
1324 if ($value ==
'taux') {
1325 if ($tabname[$id] !=
"c_revenuestamp") {
1326 $valuetoshow = $langs->trans(
"Rate");
1328 $valuetoshow = $langs->trans(
"Amount");
1332 if ($value ==
'localtax1_type') {
1333 $valuetoshow = $langs->trans(
"UseLocalTax").
" 2"; $class =
"center"; $sortable = 0;
1335 if ($value ==
'localtax1') {
1336 $valuetoshow = $langs->trans(
"RateOfTaxN",
'2'); $class =
"center";
1338 if ($value ==
'localtax2_type') {
1339 $valuetoshow = $langs->trans(
"UseLocalTax").
" 3"; $class =
"center"; $sortable = 0;
1341 if ($value ==
'localtax2') {
1342 $valuetoshow = $langs->trans(
"RateOfTaxN",
'3'); $class =
"center";
1344 if ($value ==
'organization') {
1345 $valuetoshow = $langs->trans(
"Organization");
1347 if ($value ==
'lang') {
1348 $valuetoshow = $langs->trans(
"Language");
1350 if ($value ==
'type') {
1351 if ($tabname[$id] ==
"c_paiement") {
1352 $valuetoshow =
$form->textwithtooltip($langs->trans(
"Type"), $langs->trans(
"TypePaymentDesc"), 2, 1,
img_help(1,
''));
1354 $valuetoshow = $langs->trans(
"Type");
1357 if ($value ==
'code') {
1358 $valuetoshow = $langs->trans(
"Code"); $class =
'maxwidth100';
1360 if ($value ==
'libelle' || $value ==
'label') {
1361 $valuetoshow =
$form->textwithtooltip($langs->trans(
"Label"), $langs->trans(
"LabelUsedByDefault"), 2, 1,
img_help(1,
''));
1363 if ($value ==
'libelle_facture') {
1364 $valuetoshow =
$form->textwithtooltip($langs->trans(
"LabelOnDocuments"), $langs->trans(
"LabelUsedByDefault"), 2, 1,
img_help(1,
''));
1366 if ($value ==
'deposit_percent') {
1367 $valuetoshow = $langs->trans(
'DepositPercent');
1370 if ($value ==
'country') {
1371 if (in_array(
'region_id', $fieldlist)) {
1372 print
'<td> </td>';
continue;
1374 $valuetoshow = $langs->trans(
"Country");
1376 if ($value ==
'recuperableonly') {
1377 $valuetoshow = $langs->trans(
"NPR"); $class =
"center";
1379 if ($value ==
'nbjour') {
1380 $valuetoshow = $langs->trans(
"NbOfDays");
1383 if ($value ==
'type_cdr') {
1384 $valuetoshow = $langs->trans(
"AtEndOfMonth"); $class =
"center";
1386 if ($value ==
'decalage') {
1387 $valuetoshow = $langs->trans(
"Offset");
1390 if ($value ==
'width' || $value ==
'nx') {
1391 $valuetoshow = $langs->trans(
"Width");
1393 if ($value ==
'height' || $value ==
'ny') {
1394 $valuetoshow = $langs->trans(
"Height");
1396 if ($value ==
'unit' || $value ==
'metric') {
1397 $valuetoshow = $langs->trans(
"MeasuringUnit");
1399 if ($value ==
'region_id' || $value ==
'country_id') {
1402 if ($value ==
'accountancy_code') {
1403 $valuetoshow = $langs->trans(
"AccountancyCode");
1405 if ($value ==
'accountancy_code_sell') {
1406 $valuetoshow = $langs->trans(
"AccountancyCodeSell");
1408 if ($value ==
'accountancy_code_buy') {
1409 $valuetoshow = $langs->trans(
"AccountancyCodeBuy");
1411 if ($value ==
'pcg_version' || $value ==
'fk_pcg_version') {
1412 $valuetoshow = $langs->trans(
"Pcg_version");
1414 if ($value ==
'account_parent') {
1415 $valuetoshow = $langs->trans(
"Accountparent");
1417 if ($value ==
'pcg_type') {
1418 $valuetoshow = $langs->trans(
"Pcg_type");
1420 if ($value ==
'pcg_subtype') {
1421 $valuetoshow = $langs->trans(
"Pcg_subtype");
1423 if ($value ==
'sortorder') {
1424 $valuetoshow = $langs->trans(
"SortOrder");
1427 if ($value ==
'short_label') {
1428 $valuetoshow = $langs->trans(
"ShortLabel");
1430 if ($value ==
'fk_parent') {
1431 $valuetoshow = $langs->trans(
"ParentID"); $class =
'center';
1433 if ($value ==
'range_account') {
1434 $valuetoshow = $langs->trans(
"Range");
1436 if ($value ==
'sens') {
1437 $valuetoshow = $langs->trans(
"Sens");
1439 if ($value ==
'category_type') {
1440 $valuetoshow = $langs->trans(
"Calculated");
1442 if ($value ==
'formula') {
1443 $valuetoshow = $langs->trans(
"Formula");
1445 if ($value ==
'paper_size') {
1446 $valuetoshow = $langs->trans(
"PaperSize");
1448 if ($value ==
'orientation') {
1449 $valuetoshow = $langs->trans(
"Orientation");
1451 if ($value ==
'leftmargin') {
1452 $valuetoshow = $langs->trans(
"LeftMargin");
1454 if ($value ==
'topmargin') {
1455 $valuetoshow = $langs->trans(
"TopMargin");
1457 if ($value ==
'spacex') {
1458 $valuetoshow = $langs->trans(
"SpaceX");
1460 if ($value ==
'spacey') {
1461 $valuetoshow = $langs->trans(
"SpaceY");
1463 if ($value ==
'font_size') {
1464 $valuetoshow = $langs->trans(
"FontSize");
1466 if ($value ==
'custom_x') {
1467 $valuetoshow = $langs->trans(
"CustomX");
1469 if ($value ==
'custom_y') {
1470 $valuetoshow = $langs->trans(
"CustomY");
1472 if ($value ==
'percent') {
1473 $valuetoshow = $langs->trans(
"Percentage");
1475 if ($value ==
'affect') {
1476 $valuetoshow = $langs->trans(
"WithCounter");
1478 if ($value ==
'delay') {
1479 $valuetoshow = $langs->trans(
"NoticePeriod");
1481 if ($value ==
'newbymonth') {
1482 $valuetoshow = $langs->trans(
"NewByMonth");
1484 if ($value ==
'fk_tva') {
1485 $valuetoshow = $langs->trans(
"VAT");
1487 if ($value ==
'range_ik') {
1488 $valuetoshow = $langs->trans(
"RangeIk");
1490 if ($value ==
'fk_c_exp_tax_cat') {
1491 $valuetoshow = $langs->trans(
"CarCategory");
1493 if ($value ==
'revenuestamp_type') {
1494 $valuetoshow = $langs->trans(
'TypeOfRevenueStamp');
1496 if ($value ==
'use_default') {
1497 $valuetoshow = $langs->trans(
'Default'); $class =
'center';
1499 if ($value ==
'unit_type') {
1500 $valuetoshow = $langs->trans(
'TypeOfUnit');
1502 if ($value ==
'public' && $tablib[$id] ==
'TicketDictCategory') {
1503 $valuetoshow = $langs->trans(
'TicketGroupIsPublic'); $class =
'center';
1505 if ($value ==
'block_if_negative') {
1506 $valuetoshow = $langs->trans(
'BlockHolidayIfNegative');
1508 if ($value ==
'type_duration') {
1509 $valuetoshow = $langs->trans(
'Unit');
1513 if ($value ==
'region_id') {
1514 $valuetoshow =
' '; $showfield = 1;
1516 if ($value ==
'region') {
1517 $valuetoshow = $langs->trans(
"Country").
'/'.$langs->trans(
"Region"); $showfield = 1;
1521 if ($valuetoshow !=
'') {
1522 $tooltiphelp = (isset($tabcomplete[$tabname[$id]][
'help'][$value]) ? $tabcomplete[$tabname[$id]][
'help'][$value] :
'');
1524 $tdsoffields .=
'<th'.($class ?
' class="'.$class.
'"' :
'').
'>';
1525 if ($tooltiphelp && preg_match(
'/^http(s*):/i', $tooltiphelp)) {
1526 $tdsoffields .=
'<a href="'.$tooltiphelp.
'" target="_blank">'.$valuetoshow.
' '.
img_help(1, $valuetoshow).
'</a>';
1527 } elseif ($tooltiphelp) {
1528 $tdsoffields .=
$form->textwithpicto($valuetoshow, $tooltiphelp);
1530 $tdsoffields .= $valuetoshow;
1532 $tdsoffields .=
'</th>';
1537 $tdsoffields .=
'<th></th>';
1538 $tdsoffields .=
'<th></th>';
1540 $tdsoffields .=
'<th>';
1541 $tdsoffields .=
'<input type="hidden" name="id" value="'.$id.
'">';
1542 if (!is_null($withentity)) {
1543 $tdsoffields .=
'<input type="hidden" name="entity" value="'.$withentity.
'">';
1545 $tdsoffields .=
'</th>';
1546 $tdsoffields .=
'<th style="min-width: 26px;"></th>';
1547 $tdsoffields .=
'<th style="min-width: 26px;"></th>';
1548 $tdsoffields .=
'</tr>';
1554 print
'<!-- line input to add new entry -->';
1555 print
'<tr class="oddeven nodrag nodrop nohover">';
1557 $obj =
new stdClass();
1560 foreach ($fieldlist as $key => $val) {
1567 $tmpaction =
'create';
1568 $parameters = array(
'fieldlist'=>$fieldlist,
'tabname'=>$tabname[$id]);
1569 $reshook = $hookmanager->executeHooks(
'createDictionaryFieldlist', $parameters, $obj, $tmpaction);
1570 $error = $hookmanager->error; $errors = $hookmanager->errors;
1573 unset($fieldlist[2]);
1576 if (empty($reshook)) {
1577 fieldList($fieldlist, $obj, $tabname[$id],
'add');
1584 print
'<td colspan="3" class="center">';
1585 if ($action !=
'edit') {
1586 print
'<input type="submit" class="button button-add" name="actionadd" value="'.$langs->trans(
"Add").
'">';
1602 print
'<form action="'.$_SERVER[
'PHP_SELF'].
'?id='.$id.
'" method="POST">';
1603 print
'<input type="hidden" name="token" value="'.newToken().
'">';
1604 print
'<input type="hidden" name="from" value="'.dol_escape_htmltag(
GETPOST(
'from',
'alpha')).
'">';
1609 $resql = $db->query($sql);
1611 $num = $db->num_rows(
$resql);
1615 if ($num > $listlimit || $page) {
1616 print_fleche_navigation($page, $_SERVER[
"PHP_SELF"], $paramwithsearch, ($num > $listlimit),
'<li class="pagination"><span>'.$langs->trans(
"Page").
' '.($page + 1).
'</span></li>');
1617 print
'<div class="clearboth"></div>';
1620 print
'<div class="div-table-responsive">';
1621 print
'<table class="noborder centpercent">';
1624 print
'<!-- line title to search record -->'.
"\n";
1625 print
'<tr class="liste_titre_filter">';
1627 foreach ($fieldlist as $field => $value) {
1628 if ($value ==
'entity') {
1634 if ($value ==
'region_id' || $value ==
'country_id') {
1639 if ($value ==
'country') {
1640 print
'<td class="liste_titre">';
1641 print
$form->select_country($search_country_id,
'search_country_id',
'', 28,
'minwidth100 maxwidth150 maxwidthonsmartphone');
1644 } elseif ($value ==
'code') {
1645 print
'<td class="liste_titre">';
1646 print
'<input type="text" class="maxwidth100" name="search_code" value="'.dol_escape_htmltag($search_code).
'">';
1650 print
'<td class="liste_titre">';
1659 print
'<td class="liste_titre"></td>';
1660 print
'<td class="liste_titre right" colspan="2">';
1662 $searchpicto =
$form->showFilterAndCheckAddButtons(0);
1669 print
'<!-- line title of record -->'.
"\n";
1670 print
'<tr class="liste_titre">';
1671 foreach ($fieldlist as $field => $value) {
1672 if ($value ==
'entity') {
1676 if (in_array($value, array(
'label',
'libelle',
'libelle_facture')) && empty($tabcomplete[$tabname[$id]][
'help'][$value])) {
1677 if (!is_array($tabcomplete[$tabname[$id]][
'help'])) {
1678 $tabcomplete[$tabname[$id]][
'help'] = array();
1680 $tabcomplete[$tabname[$id]][
'help'][$value] = $langs->trans(
'LabelUsedByDefault');
1688 $valuetoshow = ucfirst($value);
1689 $valuetoshow = $langs->trans($valuetoshow);
1692 if ($value ==
'source') {
1693 $valuetoshow = $langs->trans(
"Contact");
1695 if ($value ==
'price') {
1696 $valuetoshow = $langs->trans(
"PriceUHT");
1698 if ($value ==
'taux') {
1699 if ($tabname[$id] !=
"c_revenuestamp") {
1700 $valuetoshow = $langs->trans(
"Rate");
1702 $valuetoshow = $langs->trans(
"Amount");
1704 $cssprefix =
'center ';
1707 if ($value ==
'localtax1_type') {
1708 $valuetoshow = $langs->trans(
"UseLocalTax").
" 2"; $cssprefix =
"center "; $sortable = 0;
1710 if ($value ==
'localtax1') {
1711 $valuetoshow = $langs->trans(
"RateOfTaxN",
'2'); $cssprefix =
"center "; $sortable = 0;
1713 if ($value ==
'localtax2_type') {
1714 $valuetoshow = $langs->trans(
"UseLocalTax").
" 3"; $cssprefix =
"center "; $sortable = 0;
1716 if ($value ==
'localtax2') {
1717 $valuetoshow = $langs->trans(
"RateOfTaxN",
'3'); $cssprefix =
"center "; $sortable = 0;
1719 if ($value ==
'organization') {
1720 $valuetoshow = $langs->trans(
"Organization");
1722 if ($value ==
'lang') {
1723 $valuetoshow = $langs->trans(
"Language");
1725 if ($value ==
'type') {
1726 $valuetoshow = $langs->trans(
"Type");
1728 if ($value ==
'code') {
1729 $valuetoshow = $langs->trans(
"Code");
1731 if (in_array($value, array(
'pos',
'position'))) {
1732 $valuetoshow = $langs->trans(
"Position"); $cssprefix =
'right ';
1734 if ($value ==
'libelle' || $value ==
'label') {
1735 $valuetoshow = $langs->trans(
"Label");
1737 if ($value ==
'libelle_facture') {
1738 $valuetoshow = $langs->trans(
"LabelOnDocuments");
1740 if ($value ==
'deposit_percent') {
1741 $valuetoshow = $langs->trans(
'DepositPercent');
1742 $cssprefix =
'right ';
1744 if ($value ==
'country') {
1745 $valuetoshow = $langs->trans(
"Country");
1747 if ($value ==
'recuperableonly') {
1748 $valuetoshow = $langs->trans(
"NPR"); $cssprefix =
"center ";
1750 if ($value ==
'nbjour') {
1751 $valuetoshow = $langs->trans(
"NbOfDays");
1752 $cssprefix =
'right ';
1754 if ($value ==
'type_cdr') {
1755 $valuetoshow = $langs->trans(
"AtEndOfMonth"); $cssprefix =
"center ";
1757 if ($value ==
'decalage') {
1758 $valuetoshow = $langs->trans(
"Offset");
1759 $cssprefix =
'right ';
1761 if ($value ==
'width' || $value ==
'nx') {
1762 $valuetoshow = $langs->trans(
"Width");
1764 if ($value ==
'height' || $value ==
'ny') {
1765 $valuetoshow = $langs->trans(
"Height");
1767 if ($value ==
'unit' || $value ==
'metric') {
1768 $valuetoshow = $langs->trans(
"MeasuringUnit");
1770 if ($value ==
'accountancy_code') {
1771 $valuetoshow = $langs->trans(
"AccountancyCode");
1773 if ($value ==
'accountancy_code_sell') {
1774 $valuetoshow = $langs->trans(
"AccountancyCodeSell"); $sortable = 0;
1776 if ($value ==
'accountancy_code_buy') {
1777 $valuetoshow = $langs->trans(
"AccountancyCodeBuy"); $sortable = 0;
1779 if ($value ==
'fk_pcg_version') {
1780 $valuetoshow = $langs->trans(
"Pcg_version");
1782 if ($value ==
'account_parent') {
1783 $valuetoshow = $langs->trans(
"Accountsparent");
1785 if ($value ==
'pcg_type') {
1786 $valuetoshow = $langs->trans(
"Pcg_type");
1788 if ($value ==
'pcg_subtype') {
1789 $valuetoshow = $langs->trans(
"Pcg_subtype");
1791 if ($value ==
'sortorder') {
1792 $valuetoshow = $langs->trans(
"SortOrder");
1793 $cssprefix =
'center ';
1795 if ($value ==
'short_label') {
1796 $valuetoshow = $langs->trans(
"ShortLabel");
1798 if ($value ==
'fk_parent') {
1799 $valuetoshow = $langs->trans(
"ParentID"); $cssprefix =
'center ';
1801 if ($value ==
'range_account') {
1802 $valuetoshow = $langs->trans(
"Range");
1804 if ($value ==
'sens') {
1805 $valuetoshow = $langs->trans(
"Sens");
1807 if ($value ==
'category_type') {
1808 $valuetoshow = $langs->trans(
"Calculated");
1810 if ($value ==
'formula') {
1811 $valuetoshow = $langs->trans(
"Formula");
1813 if ($value ==
'paper_size') {
1814 $valuetoshow = $langs->trans(
"PaperSize");
1816 if ($value ==
'orientation') {
1817 $valuetoshow = $langs->trans(
"Orientation");
1819 if ($value ==
'leftmargin') {
1820 $valuetoshow = $langs->trans(
"LeftMargin");
1822 if ($value ==
'topmargin') {
1823 $valuetoshow = $langs->trans(
"TopMargin");
1825 if ($value ==
'spacex') {
1826 $valuetoshow = $langs->trans(
"SpaceX");
1828 if ($value ==
'spacey') {
1829 $valuetoshow = $langs->trans(
"SpaceY");
1831 if ($value ==
'font_size') {
1832 $valuetoshow = $langs->trans(
"FontSize");
1834 if ($value ==
'custom_x') {
1835 $valuetoshow = $langs->trans(
"CustomX");
1837 if ($value ==
'custom_y') {
1838 $valuetoshow = $langs->trans(
"CustomY");
1840 if ($value ==
'percent') {
1841 $valuetoshow = $langs->trans(
"Percentage");
1843 if ($value ==
'affect') {
1844 $valuetoshow = $langs->trans(
"WithCounter");
1846 if ($value ==
'delay') {
1847 $valuetoshow = $langs->trans(
"NoticePeriod");
1849 if ($value ==
'newbymonth') {
1850 $valuetoshow = $langs->trans(
"NewByMonth");
1852 if ($value ==
'fk_tva') {
1853 $valuetoshow = $langs->trans(
"VAT");
1855 if ($value ==
'range_ik') {
1856 $valuetoshow = $langs->trans(
"RangeIk");
1858 if ($value ==
'fk_c_exp_tax_cat') {
1859 $valuetoshow = $langs->trans(
"CarCategory");
1861 if ($value ==
'revenuestamp_type') {
1862 $valuetoshow = $langs->trans(
'TypeOfRevenueStamp');
1864 if ($value ==
'use_default') {
1865 $valuetoshow = $langs->trans(
'Default'); $cssprefix =
'center ';
1867 if ($value ==
'unit_type') {
1868 $valuetoshow = $langs->trans(
'TypeOfUnit');
1870 if ($value ==
'public' && $tablib[$id] ==
'TicketDictCategory') {
1871 $valuetoshow = $langs->trans(
'TicketGroupIsPublic'); $cssprefix =
'center ';
1873 if ($value ==
'block_if_negative') {
1874 $valuetoshow = $langs->trans(
'BlockHolidayIfNegative');
1876 if ($value ==
'type_duration') {
1877 $valuetoshow = $langs->trans(
'Unit');
1880 if ($value ==
'region_id' || $value ==
'country_id') {
1886 $tooltiphelp = (isset($tabcomplete[$tabname[$id]][
'help'][$value]) ? $tabcomplete[$tabname[$id]][
'help'][$value] :
'');
1888 if ($tooltiphelp && preg_match(
'/^http(s*):/i', $tooltiphelp)) {
1889 $newvaluetoshow =
'<a href="'.$tooltiphelp.
'" target="_blank">'.$valuetoshow.
' '.
img_help(1, $valuetoshow).
'</a>';
1890 } elseif ($tooltiphelp) {
1891 $newvaluetoshow =
$form->textwithpicto($valuetoshow, $tooltiphelp);
1893 $newvaluetoshow = $valuetoshow;
1896 print
getTitleFieldOfList($newvaluetoshow, 0, $_SERVER[
"PHP_SELF"], ($sortable ? $value :
''), ($page ?
'page='.$page.
'&' :
''), $param,
'', $sortfield, $sortorder, $cssprefix);
1901 print
getTitleFieldOfList($langs->trans(
"InEEC"), 0, $_SERVER[
"PHP_SELF"],
"eec", ($page ?
'page='.$page.
'&' :
''), $param,
'align="center"', $sortfield, $sortorder,
'', 0, $langs->trans(
"CountryIsInEEC"));
1902 print
getTitleFieldOfList($langs->trans(
"Favorite"), 0, $_SERVER[
"PHP_SELF"],
"favorite", ($page ?
'page='.$page.
'&' :
''), $param,
'align="center"', $sortfield, $sortorder);
1905 print
getTitleFieldOfList($langs->trans(
"Status"), 0, $_SERVER[
"PHP_SELF"],
"active", ($page ?
'page='.$page.
'&' :
''), $param,
'align="center"', $sortfield, $sortorder);
1913 $obj = $db->fetch_object(
$resql);
1915 print
'<tr class="oddeven" id="rowid-'.(empty($obj->rowid) ?
'' : $obj->rowid).
'">';
1916 if ($action ==
'edit' && ($rowid == (!empty($obj->rowid) ? $obj->rowid : $obj->code))) {
1917 $tmpaction =
'edit';
1918 $parameters = array(
'fieldlist'=>$fieldlist,
'tabname'=>$tabname[$id]);
1919 $reshook = $hookmanager->executeHooks(
'editDictionaryFieldlist', $parameters, $obj, $tmpaction);
1920 $error = $hookmanager->error; $errors = $hookmanager->errors;
1923 if (empty($reshook)) {
1924 $withentity =
fieldList($fieldlist, $obj, $tabname[$id],
'edit');
1927 print
'<td colspan="3" class="center">';
1928 print
'<div name="'.(!empty($obj->rowid) ? $obj->rowid : $obj->code).
'"></div>';
1929 print
'<input type="hidden" name="page" value="'.dol_escape_htmltag($page).
'">';
1930 print
'<input type="hidden" name="rowid" value="'.dol_escape_htmltag($rowid).
'">';
1931 if (!is_null($withentity)) {
1932 print
'<input type="hidden" name="entity" value="'.$withentity.
'">';
1934 print
'<input type="submit" class="button button-edit small" name="actionmodify" value="'.$langs->trans(
"Modify").
'">';
1935 print
'<input type="submit" class="button button-cancel small" name="actioncancel" value="'.$langs->trans(
"Cancel").
'">';
1938 $tmpaction =
'view';
1939 $parameters = array(
'fieldlist'=>$fieldlist,
'tabname'=>$tabname[$id]);
1940 $reshook = $hookmanager->executeHooks(
'viewDictionaryFieldlist', $parameters, $obj, $tmpaction);
1942 $error = $hookmanager->error; $errors = $hookmanager->errors;
1944 if (empty($reshook)) {
1947 foreach ($fieldlist as $field => $value) {
1951 $valuetoshow = empty($obj->{$value}) ?
'' : $obj->{$value};
1954 if ($value ==
'entity') {
1955 $withentity = $valuetoshow;
1959 if ($value ==
'element') {
1960 $valuetoshow = isset($elementList[$valuetoshow]) ? $elementList[$valuetoshow] : $valuetoshow;
1961 } elseif ($value ==
'source') {
1962 $valuetoshow = isset($sourceList[$valuetoshow]) ? $sourceList[$valuetoshow] : $valuetoshow;
1963 } elseif ($valuetoshow ==
'all') {
1964 $valuetoshow = $langs->trans(
'All');
1965 } elseif ($value ==
'country') {
1966 if (empty($obj->country_code)) {
1969 $key = $langs->trans(
"Country".strtoupper($obj->country_code));
1970 $valuetoshow = ($key !=
"Country".strtoupper($obj->country_code) ? $obj->country_code.
" - ".$key : $obj->country);
1972 } elseif ($value ==
'recuperableonly' || $value ==
'deductible' || $value ==
'category_type') {
1973 $valuetoshow =
yn($valuetoshow ? 1 : 0);
1975 } elseif ($value ==
'type_cdr') {
1976 if (empty($valuetoshow)) {
1977 $valuetoshow = $langs->trans(
'None');
1978 } elseif ($valuetoshow == 1) {
1979 $valuetoshow = $langs->trans(
'AtEndOfMonth');
1980 } elseif ($valuetoshow == 2) {
1981 $valuetoshow = $langs->trans(
'CurrentNext');
1984 } elseif ($value ==
'price' || preg_match(
'/^amount/i', $value)) {
1985 $valuetoshow =
price($valuetoshow);
1987 if ($value ==
'private') {
1988 $valuetoshow =
yn($valuetoshow);
1989 } elseif ($value ==
'libelle_facture') {
1990 $langs->load(
"bills");
1991 $key = $langs->trans(
"PaymentCondition".strtoupper($obj->code));
1992 $valuetoshow = ($obj->code && $key !=
"PaymentCondition".strtoupper($obj->code) ? $key : $obj->{$value});
1993 $valuetoshow = nl2br($valuetoshow);
1994 } elseif ($value ==
'label' && $tabname[$id] ==
'c_country') {
1995 $key = $langs->trans(
"Country".strtoupper($obj->code));
1996 $valuetoshow = ($obj->code && $key !=
"Country".strtoupper($obj->code) ? $key : $obj->{$value});
1997 } elseif ($value ==
'label' && $tabname[$id] ==
'c_availability') {
1998 $langs->load(
"propal");
1999 $key = $langs->trans(
"AvailabilityType".strtoupper($obj->code));
2000 $valuetoshow = ($obj->code && $key !=
"AvailabilityType".strtoupper($obj->code) ? $key : $obj->{$value});
2001 } elseif ($value ==
'libelle' && $tabname[$id] ==
'c_actioncomm') {
2002 $key = $langs->trans(
"Action".strtoupper($obj->code));
2003 $valuetoshow = ($obj->code && $key !=
"Action".strtoupper($obj->code) ? $key : $obj->{$value});
2004 } elseif (!empty($obj->code_iso) && $value ==
'label' && $tabname[$id] ==
'c_currencies') {
2005 $key = $langs->trans(
"Currency".strtoupper($obj->code_iso));
2006 $valuetoshow = ($obj->code_iso && $key !=
"Currency".strtoupper($obj->code_iso) ? $key : $obj->{$value});
2007 } elseif ($value ==
'libelle' && $tabname[$id] ==
'c_typent') {
2008 $key = $langs->trans(strtoupper($obj->code));
2009 $valuetoshow = ($key != strtoupper($obj->code) ? $key : $obj->{$value});
2010 } elseif ($value ==
'libelle' && $tabname[$id] ==
'c_prospectlevel') {
2011 $key = $langs->trans(strtoupper($obj->code));
2012 $valuetoshow = ($key != strtoupper($obj->code) ? $key : $obj->{$value});
2013 } elseif ($value ==
'label' && $tabname[$id] ==
'c_civility') {
2014 $key = $langs->trans(
"Civility".strtoupper($obj->code));
2015 $valuetoshow = ($obj->code && $key !=
"Civility".strtoupper($obj->code) ? $key : $obj->{$value});
2016 } elseif ($value ==
'libelle' && $tabname[$id] ==
'c_type_contact') {
2017 $langs->load(
'agenda');
2018 $key = $langs->trans(
"TypeContact_".$obj->element.
"_".$obj->source.
"_".strtoupper($obj->code));
2019 $valuetoshow = ($obj->code && $key !=
"TypeContact_".$obj->element.
"_".$obj->source.
"_".strtoupper($obj->code) ? $key : $obj->{$value});
2020 } elseif ($value ==
'libelle' && $tabname[$id] ==
'c_payment_term') {
2021 $langs->load(
"bills");
2022 $key = $langs->trans(
"PaymentConditionShort".strtoupper($obj->code));
2023 $valuetoshow = ($obj->code && $key !=
"PaymentConditionShort".strtoupper($obj->code) ? $key : $obj->{$value});
2024 } elseif ($value ==
'libelle' && $tabname[$id] ==
'c_paiement') {
2025 $langs->load(
"bills");
2026 $key = $langs->trans(
"PaymentType".strtoupper($obj->code));
2027 $valuetoshow = ($obj->code && $key !=
"PaymentType".strtoupper($obj->code) ? $key : $obj->{$value});
2028 } elseif ($value ==
'type' && $tabname[$id] ==
'c_paiement') {
2029 $payment_type_list = array(0=>$langs->trans(
'PaymentTypeCustomer'), 1=>$langs->trans(
'PaymentTypeSupplier'), 2=>$langs->trans(
'PaymentTypeBoth'));
2030 $valuetoshow = $payment_type_list[$valuetoshow];
2031 } elseif ($value ==
'label' && $tabname[$id] ==
'c_input_reason') {
2032 $key = $langs->trans(
"DemandReasonType".strtoupper($obj->code));
2033 $valuetoshow = ($obj->code && $key !=
"DemandReasonType".strtoupper($obj->code) ? $key : $obj->{$value});
2034 } elseif ($value ==
'libelle' && $tabname[$id] ==
'c_input_method') {
2035 $langs->load(
"orders");
2036 $key = $langs->trans($obj->code);
2037 $valuetoshow = ($obj->code && $key != $obj->code) ? $key : $obj->{$value};
2038 } elseif ($value ==
'libelle' && $tabname[$id] ==
'c_shipment_mode') {
2039 $langs->load(
"sendings");
2040 $key = $langs->trans(
"SendingMethod".strtoupper($obj->code));
2041 $valuetoshow = ($obj->code && $key !=
"SendingMethod".strtoupper($obj->code) ? $key : $obj->{$value});
2042 } elseif ($value ==
'libelle' && $tabname[$id] ==
'c_paper_format') {
2043 $key = $langs->trans(
'PaperFormat'.strtoupper($obj->code));
2044 $valuetoshow = ($obj->code && $key !=
'PaperFormat'.strtoupper($obj->code) ? $key : $obj->{$value});
2045 } elseif ($value ==
'label' && $tabname[$id] ==
'c_type_fees') {
2046 $langs->load(
'trips');
2047 $key = $langs->trans(strtoupper($obj->code));
2048 $valuetoshow = ($obj->code && $key != strtoupper($obj->code) ? $key : $obj->{$value});
2049 } elseif ($value ==
'region_id' || $value ==
'country_id') {
2051 } elseif ($value ==
'unicode') {
2052 $valuetoshow = $langs->getCurrencySymbol($obj->code, 1);
2053 } elseif ($value ==
'label' && $tabname[
GETPOST(
"id",
'int')] ==
'c_units') {
2054 $langs->load(
"products");
2055 $valuetoshow = $langs->trans($obj->{$value});
2056 } elseif ($value ==
'short_label' && $tabname[
GETPOST(
"id",
'int')] ==
'c_units') {
2057 $langs->load(
"products");
2058 $valuetoshow = $langs->trans($obj->{$value});
2059 } elseif (($value ==
'unit') && ($tabname[$id] ==
'c_paper_format')) {
2060 $key = $langs->trans(
'SizeUnit'.strtolower($obj->unit));
2061 $valuetoshow = ($obj->code && $key !=
'SizeUnit'.strtolower($obj->unit) ? $key : $obj->{$value});
2062 } elseif ($value ==
'localtax1' || $value ==
'localtax2') {
2064 } elseif ($value ==
'localtax1_type') {
2065 if ($obj->localtax1 != 0) {
2066 $valuetoshow = $localtax_typeList[$valuetoshow];
2071 } elseif ($value ==
'localtax2_type') {
2072 if ($obj->localtax2 != 0) {
2073 $valuetoshow = $localtax_typeList[$valuetoshow];
2078 } elseif ($value ==
'taux') {
2079 $valuetoshow =
price($valuetoshow, 0, $langs, 0, 0);
2081 } elseif (in_array($value, array(
'recuperableonly'))) {
2083 } elseif ($value ==
'accountancy_code' || $value ==
'accountancy_code_sell' || $value ==
'accountancy_code_buy') {
2085 require_once DOL_DOCUMENT_ROOT.
'/accountancy/class/accountingaccount.class.php';
2087 $tmpaccountingaccount->fetch(0, $valuetoshow, 1);
2088 $titletoshow = $langs->transnoentitiesnoconv(
"Pcgtype").
': '.$tmpaccountingaccount->pcg_type;
2091 } elseif ($value ==
'fk_tva') {
2092 foreach (
$form->cache_vatrates as $key => $Tab) {
2093 if (
$form->cache_vatrates[$key][
'rowid'] == $valuetoshow) {
2094 $valuetoshow =
$form->cache_vatrates[$key][
'label'];
2098 } elseif ($value ==
'fk_c_exp_tax_cat') {
2099 $tmpid = $valuetoshow;
2101 $valuetoshow = $langs->trans($valuetoshow ? $valuetoshow : $tmpid);
2102 } elseif ($tabname[$id] ==
'c_exp_tax_cat') {
2103 $valuetoshow = $langs->trans($valuetoshow);
2104 } elseif ($value ==
'label' && $tabname[$id] ==
'c_units') {
2105 $langs->load(
'other');
2106 $key = $langs->trans($obj->label);
2107 $valuetoshow = ($obj->label && $key != strtoupper($obj->label) ? $key : $obj->{$value});
2108 } elseif ($value ==
'code' && $id == 3) {
2109 $valuetoshow = $obj->state_code;
2110 } elseif ($value ==
'label' && $tabname[$id] ==
'c_product_nature') {
2111 $langs->load(
"products");
2112 $valuetoshow = $langs->trans($obj->{$value});
2113 } elseif ($fieldlist[$field] ==
'label' && $tabname[$id] ==
'c_productbatch_qcstatus') {
2114 $langs->load(
"productbatch");
2115 $valuetoshow = $langs->trans($obj->{$value});
2116 } elseif ($value ==
'block_if_negative') {
2117 $valuetoshow =
yn($obj->{$value});
2118 } elseif ($value ==
'icon') {
2119 $valuetoshow = $obj->{$value}.
" ".
img_picto(
"", $obj->{$value});
2120 } elseif ($value ==
'type_duration') {
2121 $TDurationTypes = array(
'y'=>$langs->trans(
'Years'),
'm'=>$langs->trans(
'Month'),
'w'=>$langs->trans(
'Weeks'),
'd'=>$langs->trans(
'Days'),
'h'=>$langs->trans(
'Hours'),
'i'=>$langs->trans(
'Minutes'));
2122 $valuetoshow =$TDurationTypes[$obj->{$value}];
2124 $class .= ($class ?
' ' :
'').
'tddict';
2125 if ($value ==
'note' && $id == 10) {
2126 $class .=
' tdoverflowmax200';
2128 if ($value ==
'tracking') {
2129 $class .=
' tdoverflowauto';
2131 if (in_array($value, array(
'nbjour',
'decalage',
'pos',
'position',
'deposit_percent'))) {
2134 if (in_array($value, array(
'localtax1_type',
'localtax2_type'))) {
2135 $class .=
' nowraponall';
2137 if (in_array($value, array(
'use_default',
'fk_parent',
'sortorder'))) {
2138 $class .=
' center';
2140 if ($value ==
'public') {
2141 $class .=
' center';
2145 print
'<!-- '. $value .
' --><td class="'.$class.
'"'.($titletoshow ?
' title="'.dol_escape_htmltag($titletoshow).
'"' :
'').
'>'.$valuetoshow.
'</td>';
2155 if (isset($obj->code) && $id != 10 && $id != 42) {
2156 if (($obj->code ==
'0' || $obj->code ==
'' || preg_match(
'/unknown/i', $obj->code))) {
2157 $iserasable = 0; $canbedisabled = 0;
2158 } elseif ($obj->code ==
'RECEP') {
2159 $iserasable = 0; $canbedisabled = 0;
2160 } elseif ($obj->code ==
'EF0') {
2161 $iserasable = 0; $canbedisabled = 0;
2164 if ($id == 25 && in_array($obj->code, array(
'banner',
'blogpost',
'other',
'page'))) {
2165 $iserasable = 0; $canbedisabled = 0;
2166 if (in_array($obj->code, array(
'banner'))) {
2170 if (isset($obj->type) && in_array($obj->type, array(
'system',
'systemauto'))) {
2173 if (in_array(empty($obj->code) ?
'' : $obj->code, array(
'AC_OTH',
'AC_OTH_AUTO')) || in_array(empty($obj->type) ?
'' : $obj->type, array(
'systemauto'))) {
2174 $canbedisabled = 0; $canbedisabled = 0;
2176 $canbemodified = $iserasable;
2178 if (!empty($obj->code) && $obj->code ==
'RECEP') {
2181 if ($tabname[$id] ==
"c_actioncomm") {
2186 $rowidcol = $tabrowid[$id];
2188 if (empty($rowidcol) || in_array($id, array(6, 7, 8, 13, 17, 19, 27, 32))) {
2189 $rowidcol =
'rowid';
2191 $url = $_SERVER[
"PHP_SELF"].
'?'.($page ?
'page='.$page.
'&' :
'').
'sortfield='.$sortfield.
'&sortorder='.$sortorder.
'&rowid='.(isset($obj->{$rowidcol}) ? $obj->{$rowidcol} : (!empty($obj->code) ? urlencode($obj->code) :
'')).
'&code='.(!empty($obj->
code) ?urlencode($obj->
code) :
'');
2192 if (!empty($param)) {
2195 if (!is_null($withentity)) {
2196 $url .=
'&entity='.$withentity;
2203 print
'<td class="nowrap center">';
2206 print
'<a class="reposition" href="'.$url.
'action='.$acts[$obj->eec].
'_eec&token='.
newToken().
'">'.$actl[$obj->eec].
'</a>';
2208 print
'<span class="opacitymedium">'.$langs->trans(
"AlwaysActive").
'</span>';
2211 print
'<td class="nowrap center">';
2214 print
'<a class="reposition" href="'.$url.
'action='.$acts[$obj->favorite].
'_favorite&token='.
newToken().
'">'.$actl[$obj->favorite].
'</a>';
2216 print
'<span class="opacitymedium">'.$langs->trans(
"AlwaysActive").
'</span>';
2222 print
'<td class="nowrap center">';
2223 if ($canbedisabled) {
2224 print
'<a class="reposition" href="'.$url.
'action='.$acts[$obj->active].
'&token='.
newToken().
'">'.$actl[$obj->active].
'</a>';
2226 if (in_array($obj->code, array(
'AC_OTH',
'AC_OTH_AUTO'))) {
2227 print $langs->trans(
"AlwaysActive");
2228 } elseif (isset($obj->type) && in_array($obj->type, array(
'systemauto')) && empty($obj->active)) {
2229 print $langs->trans(
"Deprecated");
2230 } elseif (isset($obj->type) && in_array($obj->type, array(
'system')) && !empty($obj->active) && $obj->code !=
'AC_OTH') {
2231 print $langs->trans(
"UsedOnlyWithTypeOption");
2233 print
'<span class="opacitymedium">'.$langs->trans(
"AlwaysActive").
'</span>';
2239 if ($canbemodified) {
2240 print
'<td align="center"><a class="reposition editfielda" href="'.$url.
'action=edit&token='.
newToken().
'">'.
img_edit().
'</a></td>';
2242 print
'<td> </td>';
2247 print
'<td class="center">';
2249 print
'<a class="reposition" href="'.$url.
'action=delete&token='.
newToken().
'">'.
img_delete().
'</a>';
2254 print
'<td> </td>';
2275 $lastlineisempty =
false;
2277 print
'<div class="div-table-responsive-no-min">';
2278 print
'<table class="noborder centpercent">';
2279 print
'<tr class="liste_titre">';
2280 print
'<td>'.$langs->trans(
"Dictionary").
'</td>';
2282 print
'<td class="hideonsmartphone"></td>';
2285 $showemptyline =
'';
2286 foreach ($taborder as $i) {
2287 if (isset($tabname[$i]) && empty($tabcond[$i])) {
2292 if ($showemptyline) {
2293 print
'<tr class="oddeven"><td></td><td></td><td class="hideonsmartphone"></td></tr>';
2298 $value = $tabname[$i];
2299 print
'<tr class="oddeven"><td class="minwidth200">';
2300 if (!empty($tabcond[$i])) {
2301 $tabnamenoprefix = preg_replace(
'/'.MAIN_DB_PREFIX.
'/',
'', $tabname[$i]);
2302 print
'<a href="'.$_SERVER[
"PHP_SELF"].
'?id='.$i.
'">';
2303 if (!empty($tabcomplete[$tabnamenoprefix][
'picto'])) {
2304 print
img_picto(
'', $tabcomplete[$tabnamenoprefix][
'picto'],
'class="pictofixedwidth paddingrightonly"');
2306 print $langs->trans($tablib[$i]);
2309 print $langs->trans($tablib[$i]);
2313 print
'<a class="editfielda" href="'.$_SERVER[
"PHP_SELF"].
'?id='.$i.
'">';
2317 print
'<td class="right hideonsmartphone">';
2318 print
$form->textwithpicto(
'', $langs->trans(
"Table").
': '.MAIN_DB_PREFIX.$tabname[$i]);
2321 $lastlineisempty =
false;
2323 if (!$lastlineisempty) {
2325 $lastlineisempty =
true;
2349 function fieldList($fieldlist, $obj =
'', $tabname =
'', $context =
'')
2351 global $conf, $langs, $db, $mysoc;
2354 global $elementList, $sourceList, $localtax_typeList;
2362 foreach ($fieldlist as $field => $value) {
2363 if ($value ==
'entity') {
2364 $withentity = $obj->{$value};
2368 if (in_array($value, array(
'code',
'libelle',
'type')) && $tabname ==
"c_actioncomm" && in_array($obj->type, array(
'system',
'systemauto'))) {
2369 $hidden = (!empty($obj->{$value}) ? $obj->{$value}:
'');
2371 print
'<input type="hidden" name="'. $value .
'" value="'.$hidden.
'">';
2372 print $langs->trans($hidden);
2374 } elseif ($value ==
'country') {
2375 if (in_array(
'region_id', $fieldlist)) {
2381 $fieldname =
'country';
2382 print
$form->select_country((!empty($obj->country_code) ? $obj->country_code : (!empty($obj->country) ? $obj->country :
'')), $fieldname,
'', 28,
'minwidth100 maxwidth150 maxwidthonsmartphone');
2384 } elseif ($value ==
'country_id') {
2385 if (!in_array(
'country', $fieldlist)) {
2386 $country_id = (!empty($obj->{$value}) ? $obj->{$value} : 0);
2387 print
'<td class="tdoverflowmax100">';
2388 print
'<input type="hidden" name="'. $value .
'" value="'.$country_id.
'">';
2391 } elseif ($value ==
'region') {
2393 $formcompany->select_region($region_id,
'region');
2395 } elseif ($value ==
'region_id') {
2396 $region_id = (!empty($obj->{$value}) ? $obj->{$value}:0);
2398 print
'<input type="hidden" name="'. $value .
'" value="'.$region_id.
'">';
2400 } elseif ($value ==
'lang') {
2402 print $formadmin->select_language($conf->global->MAIN_LANG_DEFAULT,
'lang');
2404 } elseif (in_array($value, array(
'element',
'source'))) {
2405 $tmparray = array();
2406 if ($value ==
'element') {
2407 $tmparray = $elementList;
2409 $tmparray = $sourceList;
2412 print
$form->selectarray($value, $tmparray, (!empty($obj->{$value}) ? $obj->{$value}:
''), 0, 0, 0,
'', 0, 0, 0,
'',
'maxwidth250');
2414 } elseif (in_array($value, array(
'public',
'use_default'))) {
2416 print
'<td class="center">';
2417 print
$form->selectyesno($value, (!empty($obj->{$value}) ? $obj->{$value}:
''), 1);
2419 } elseif ($value ==
'private') {
2422 print
$form->selectyesno(
"private", (!empty($obj->{$value}) ? $obj->{$value}:
''));
2424 } elseif ($value ==
'type' && $tabname ==
"c_actioncomm") {
2425 $type = (!empty($obj->type) ? $obj->type :
'user');
2427 print $type.
'<input type="hidden" name="type" value="'.$type.
'">';
2429 } elseif ($value ==
'type' && $tabname ==
'c_paiement') {
2431 $select_list = array(0=>$langs->trans(
'PaymentTypeCustomer'), 1=>$langs->trans(
'PaymentTypeSupplier'), 2=>$langs->trans(
'PaymentTypeBoth'));
2432 print
$form->selectarray($value, $select_list, (!empty($obj->{$value}) ? $obj->{$value}:
'2'));
2434 } elseif ($value ==
'recuperableonly' || $value ==
'type_cdr' || $value ==
'deductible' || $value ==
'category_type') {
2435 if ($value ==
'type_cdr') {
2436 print
'<td class="center">';
2440 if ($value ==
'type_cdr') {
2441 print
$form->selectarray($value, array(0=>$langs->trans(
'None'), 1=>$langs->trans(
'AtEndOfMonth'), 2=>$langs->trans(
'CurrentNext')), (!empty($obj->{$value}) ? $obj->{$value}:
''));
2443 print
$form->selectyesno($value, (!empty($obj->{$value}) ? $obj->{$value}:
''), 1);
2446 } elseif (in_array($value, array(
'nbjour',
'decalage',
'taux',
'localtax1',
'localtax2'))) {
2448 if (in_array($value, array(
'taux',
'localtax1',
'localtax2'))) {
2451 print
'<td class="'.$class.
'">';
2452 print
'<input type="text" class="flat" value="'.(isset($obj->{$value}) ? $obj->{$value} :
'').
'" size="3" name="'. $value .
'">';
2454 } elseif (in_array($value, array(
'libelle_facture'))) {
2459 if ($tabname ==
'c_payment_term') {
2460 $langs->load(
"bills");
2461 $transkey =
"PaymentCondition".strtoupper($obj->code);
2462 if ($langs->trans($transkey) != $transkey) {
2464 print
$form->textwithpicto($langs->trans($transkey), $langs->trans(
"GoIntoTranslationMenuToChangeThis"));
2468 print
'<textarea cols="30" rows="'.ROWS_2.
'" class="flat" name="'. $value .
'">'.(!empty($obj->{$value}) ? $obj->{$value}:
'').
'</textarea>';
2470 print
'<input type="hidden" name="'. $value .
'" value="'.$transkey.
'">';
2473 } elseif ($value ==
'price' || preg_match(
'/^amount/i', $value)) {
2474 print
'<td><input type="text" class="flat minwidth75" value="'.price((!empty($obj->{$value}) ? $obj->{$value}:
'')).
'" name="'. $value .
'"></td>';
2475 } elseif ($value ==
'code' && isset($obj->{$value})) {
2476 print
'<td><input type="text" class="flat minwidth75 maxwidth100" value="'.(!empty($obj->{$value}) ? $obj->{$value}:
'').
'" name="'. $value .
'"></td>';
2477 } elseif ($value ==
'unit') {
2480 'mm' => $langs->trans(
'SizeUnitmm'),
2481 'cm' => $langs->trans(
'SizeUnitcm'),
2482 'point' => $langs->trans(
'SizeUnitpoint'),
2483 'inch' => $langs->trans(
'SizeUnitinch')
2485 print
$form->selectarray(
'unit', $units, (!empty($obj->{$value}) ? $obj->{$value}:
''), 0, 0, 0);
2487 } elseif ($value ==
'localtax1_type' || $value ==
'localtax2_type') {
2489 print
'<td class="center">';
2490 print
$form->selectarray($value, $localtax_typeList, (!empty($obj->{$value}) ? $obj->{$value}:
''));
2492 } elseif ($value ==
'accountancy_code' || $value ==
'accountancy_code_sell' || $value ==
'accountancy_code_buy') {
2495 $fieldname = $value;
2496 $accountancy_account = (!empty($obj->$fieldname) ? $obj->$fieldname : 0);
2497 print $formaccounting->select_account($accountancy_account,
'.'. $value, 1,
'', 1, 1,
'maxwidth200 maxwidthonsmartphone');
2499 $fieldname = $value;
2500 print
'<input type="text" size="10" class="flat" value="'.(isset($obj->$fieldname) ? $obj->$fieldname :
'').
'" name="'. $value .
'">';
2503 } elseif ($value ==
'fk_tva') {
2505 print
$form->load_tva(
'fk_tva', $obj->taux, $mysoc,
new Societe($db), 0, 0,
'',
false, -1);
2507 } elseif ($value ==
'fk_c_exp_tax_cat') {
2509 print
$form->selectExpenseCategories($obj->fk_c_exp_tax_cat);
2511 } elseif ($value ==
'fk_range') {
2513 print
$form->selectExpenseRanges($obj->fk_range);
2515 } elseif ($value ==
'block_if_negative') {
2517 print
$form->selectyesno(
"block_if_negative", (empty($obj->block_if_negative) ?
'' : $obj->block_if_negative), 1);
2519 } elseif ($value ==
'type_duration') {
2521 print
$form->selectTypeDuration(
'', (empty($obj->type_duration) ?
'' : $obj->type_duration), array(
'i',
'h'));
2524 $fieldValue = isset($obj->{$value}) ? $obj->{$value}:
'';
2525 $classtd =
''; $class =
'';
2527 if ($value ==
'sortorder') {
2528 $fieldlist[$field] =
'position';
2531 if ($fieldlist[$field] ==
'code') {
2532 $class =
'maxwidth100';
2534 if (in_array($fieldlist[$field], array(
'deposit_percent'))) {
2535 $classtd =
'right'; $class =
'maxwidth50 right';
2537 if (in_array($fieldlist[$field], array(
'pos',
'position'))) {
2538 $classtd =
'right'; $class =
'maxwidth50 right';
2540 if (in_array($fieldlist[$field], array(
'dayrule',
'day',
'month',
'year',
'use_default',
'affect',
'delay',
'public',
'sortorder',
'sens',
'category_type',
'fk_parent'))) {
2541 $class =
'maxwidth50 center';
2543 if (in_array($fieldlist[$field], array(
'use_default',
'public',
'fk_parent'))) {
2544 $classtd =
'center';
2546 if (in_array($fieldlist[$field], array(
'libelle',
'label',
'tracking'))) {
2547 $class =
'quatrevingtpercent';
2550 if ($fieldlist[$field] ==
'fk_parent') {
2551 if (empty($fieldValue)) {
2558 if (in_array($fieldlist[$field], array(
'libelle',
'label'))) {
2560 case 'c_accounting_category':
2562 case 'c_email_senderprofile':
2563 case 'c_forme_juridique':
2564 case 'c_holiday_types':
2565 case 'c_payment_term':
2566 case 'c_transport_mode':
2567 $maxlength =
' maxlength="255"';
2569 case 'c_email_templates':
2570 $maxlength =
' maxlength="180"';
2572 case 'c_socialnetworks':
2573 $maxlength =
' maxlength="150"';
2576 $maxlength =
' maxlength="128"';
2580 print
'<td class="'.$classtd.
'">';
2583 if (in_array($fieldlist[$field], array(
'label',
'libelle'))) {
2585 if ($tabname ==
'c_civility' && !empty($obj->code)) {
2586 $transkey =
"Civility".strtoupper($obj->code);
2588 if ($tabname ==
'c_payment_term' && !empty($obj->code)) {
2589 $langs->load(
"bills");
2590 $transkey =
"PaymentConditionShort".strtoupper($obj->code);
2592 if ($transkey && $langs->trans($transkey) != $transkey) {
2594 print
$form->textwithpicto($langs->trans($transkey), $langs->trans(
"GoIntoTranslationMenuToChangeThis"));
2598 print
'<input type="text" class="flat'.($class ?
' '.$class :
'').
'"'.($maxlength ?
' '.$maxlength :
'').
' value="'.
dol_escape_htmltag($fieldValue).
'" name="'.$fieldlist[$field].
'">';
2600 print
'<input type="hidden" name="'.$fieldlist[$field].
'" value="'.$transkey.
'">';
length_accountg($account)
Return General accounting account with defined length (used for product and miscellaneous)
complete_dictionary_with_modules(&$taborder, &$tabname, &$tablib, &$tabsql, &$tabsqlsort, &$tabfield, &$tabfieldvalue, &$tabfieldinsert, &$tabrowid, &$tabcond, &$tabhelp, &$tabcomplete)
Add external modules to list of dictionaries.
complete_elementList_with_modules(&$elementList)
Search external modules to complete the list of contact element.
if(!defined('NOREQUIRESOC')) if(!defined('NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined('NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined('NOREQUIREAJAX')) llxHeader()
Empty header.
Class to manage accounting accounts.
Class to manage third parties objects (customers, suppliers, prospects...)
if(isModEnabled('facture') &&!empty($user->rights->facture->lire)) if((isModEnabled('fournisseur') &&empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->hasRight("fournisseur", "facture", "lire"))||(isModEnabled('supplier_invoice') && $user->hasRight("supplier_invoice", "lire"))) if(isModEnabled('don') &&!empty($user->rights->don->lire)) if(isModEnabled('tax') &&!empty($user->rights->tax->charges->lire)) if(isModEnabled('facture') &&isModEnabled('commande') && $user->hasRight("commande", "lire") &&empty($conf->global->WORKFLOW_DISABLE_CREATE_INVOICE_FROM_ORDER)) $resql
Social contributions to pay.
if($cancel &&! $id) if($action=='add' &&! $cancel) if($action=='delete') if($id) $form
Actions.
fieldList($fieldlist, $obj='', $tabname='', $context='')
Show fields in insert/edit mode.
load_fiche_titre($titre, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
img_help($usehelpcursor=1, $usealttitle=1)
Show help logo with cursor "?".
img_delete($titlealt='default', $other='class="pictodelete"', $morecss='')
Show delete logo.
dol_escape_htmltag($stringtoescape, $keepb=0, $keepn=0, $noescapetags='', $escapeonlyhtmltags=0)
Returns text escaped for inclusion in HTML alt or title tags, or into values of HTML input fields.
yn($yesno, $case=1, $color=0)
Return yes or no in current language.
price2num($amount, $rounding='', $option=0)
Function that return a number with universal decimal format (decimal separator is '.
dol_print_error($db='', $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
natural_search($fields, $value, $mode=0, $nofirstand=0)
Generate natural SQL search string for a criteria (this criteria can be tested on one or several fiel...
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='')
Set event messages in dol_events session object.
price($amount, $form=0, $outlangs='', $trunc=1, $rounding=-1, $forcerounding=-1, $currency_code='')
Function to format a value into an amount for visual output Function used into PDF and HTML pages.
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=false, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2)
Show picto whatever it's its name (generic function)
newToken()
Return the value of token currently saved into session with name 'newtoken'.
print_fleche_navigation($page, $file, $options='', $nextpage=0, $betweenarrows='', $afterarrows='', $limit=-1, $totalnboflines=0, $hideselectlimit=0, $beforearrows='')
Function to show navigation arrows into lists.
getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="", $prefix="", $disablesortlink=0, $tooltip='', $forcenowrapcolumntitle=0)
Get title line of an array.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
info_admin($text, $infoonimgalt=0, $nodiv=0, $admin='1', $morecss='hideonsmartphone', $textfordropdown='')
Show information for admin users or standard users.
GETPOSTISSET($paramname)
Return true if we are in a context of submitting the parameter $paramname from a POST of a form.
isModEnabled($module)
Is Dolibarr module enabled.
img_edit($titlealt='default', $float=0, $other='')
Show logo editer/modifier fiche.
getDictionaryValue($tablename, $field, $id, $checkentity=false, $rowidfield='rowid')
Return the value of a filed into a dictionary for the record $id.
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='', $logcontext=null)
Write log message into outputs.
getEntity($element, $shared=1, $currentobject=null)
Get list of entity id to use.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.
print *****$script_file(".$version.") pid code
! Closing after partial payment: discount_vat, badcustomer or badsupplier, bankcharge,...