41require_once
'../main.inc.php';
42include_once DOL_DOCUMENT_ROOT.
'/contact/class/contact.class.php';
43require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formother.class.php';
44require_once DOL_DOCUMENT_ROOT.
'/core/lib/company.lib.php';
45require_once DOL_DOCUMENT_ROOT.
'/core/lib/functions2.lib.php';
46require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formcompany.class.php';
47require_once DOL_DOCUMENT_ROOT.
'/societe/class/client.class.php';
48if (isModEnabled(
'category')) {
49 require_once DOL_DOCUMENT_ROOT.
'/categories/class/categorie.class.php';
50 require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formcategory.class.php';
54$langs->loadLangs(array(
"companies",
"commercial",
"customers",
"suppliers",
"bills",
"compta",
"categories",
"cashdesk"));
58$action =
GETPOST(
'action',
'aZ09');
59$massaction =
GETPOST(
'massaction',
'alpha');
61$confirm =
GETPOST(
'confirm',
'alpha');
62$toselect =
GETPOST(
'toselect',
'array');
63$contextpage =
GETPOST(
'contextpage',
'aZ') ?
GETPOST(
'contextpage',
'aZ') :
'thirdpartylist';
64$optioncss =
GETPOST(
'optioncss',
'alpha');
65if ($contextpage ==
'poslist') {
68$mode =
GETPOST(
"mode",
'alpha');
71$search_all = trim(
GETPOST(
'search_all',
'alphanohtml') ?
GETPOST(
'search_all',
'alphanohtml') :
GETPOST(
'sall',
'alphanohtml'));
72$search_cti = preg_replace(
'/^0+/',
'', preg_replace(
'/[^0-9]/',
'',
GETPOST(
'search_cti',
'alphanohtml')));
74$search_id =
GETPOST(
"search_id",
'int');
75$search_nom = trim(
GETPOST(
"search_nom",
'restricthtml'));
76$search_alias = trim(
GETPOST(
"search_alias",
'restricthtml'));
77$search_nom_only = trim(
GETPOST(
"search_nom_only",
'restricthtml'));
78$search_barcode = trim(
GETPOST(
"search_barcode",
'alpha'));
79$search_customer_code = trim(
GETPOST(
'search_customer_code',
'alpha'));
80$search_supplier_code = trim(
GETPOST(
'search_supplier_code',
'alpha'));
81$search_account_customer_code = trim(
GETPOST(
'search_account_customer_code',
'alpha'));
82$search_account_supplier_code = trim(
GETPOST(
'search_account_supplier_code',
'alpha'));
83$search_address = trim(
GETPOST(
'search_address',
'alpha'));
84$search_zip = trim(
GETPOST(
"search_zip",
'alpha'));
85$search_town = trim(
GETPOST(
"search_town",
'alpha'));
86$search_state = trim(
GETPOST(
"search_state",
'alpha'));
87$search_region = trim(
GETPOST(
"search_region",
'alpha'));
88$search_email = trim(
GETPOST(
'search_email',
'alpha'));
89$search_phone = trim(
GETPOST(
'search_phone',
'alpha'));
90$search_phone_mobile = trim(
GETPOST(
'search_phone_mobile',
'alpha'));
91$search_fax = trim(
GETPOST(
'search_fax',
'alpha'));
92$search_url = trim(
GETPOST(
'search_url',
'alpha'));
93$search_idprof1 = trim(
GETPOST(
'search_idprof1',
'alpha'));
94$search_idprof2 = trim(
GETPOST(
'search_idprof2',
'alpha'));
95$search_idprof3 = trim(
GETPOST(
'search_idprof3',
'alpha'));
96$search_idprof4 = trim(
GETPOST(
'search_idprof4',
'alpha'));
97$search_idprof5 = trim(
GETPOST(
'search_idprof5',
'alpha'));
98$search_idprof6 = trim(
GETPOST(
'search_idprof6',
'alpha'));
99$search_vat = trim(
GETPOST(
'search_vat',
'alpha'));
101$search_categ_cus =
GETPOSTINT(
"search_categ_cus");
102$search_categ_sup =
GETPOSTINT(
"search_categ_sup");
103$searchCategoryCustomerOperator =
GETPOSTINT(
'search_category_customer_operator');
104$searchCategorySupplierOperator =
GETPOSTINT(
'search_category_supplier_operator');
105if (GETPOSTISSET(
'formfilteraction')) {
106 $searchCategoryCustomerOperator =
GETPOST(
'search_category_customer_operator');
107 $searchCategorySupplierOperator =
GETPOST(
'search_category_supplier_operator');
109 $searchCategoryCustomerOperator =
getDolGlobalString(
'MAIN_SEARCH_CAT_OR_BY_DEFAULT');
110 $searchCategorySupplierOperator =
getDolGlobalString(
'MAIN_SEARCH_CAT_OR_BY_DEFAULT');
112$searchCategoryCustomerList =
GETPOST(
'search_category_customer_list',
'array');
113if (!empty($search_categ_cus) && empty($searchCategoryCustomerList)) {
114 $searchCategoryCustomerList = array($search_categ_cus);
116$searchCategorySupplierList =
GETPOST(
'search_category_supplier_list',
'array');
117if (!empty($search_categ_sup) && empty($searchCategorySupplierList)) {
118 $searchCategorySupplierList = array($search_categ_sup);
120$search_country =
GETPOST(
"search_country",
'aZ09');
121$search_type_thirdparty =
GETPOST(
"search_type_thirdparty",
'intcomma');
122$search_price_level =
GETPOST(
'search_price_level',
'int');
123$search_staff =
GETPOST(
"search_staff",
'int');
124$search_legalform =
GETPOST(
"search_legalform",
'int');
125$search_status =
GETPOST(
"search_status",
'intcomma');
126$search_type =
GETPOST(
'search_type',
'alpha');
127$search_level =
GETPOST(
"search_level",
"array:alpha");
128$search_stcomm =
GETPOST(
'search_stcomm',
"array:int");
129$search_import_key = trim(
GETPOST(
"search_import_key",
"alpha"));
130$search_parent_name = trim(
GETPOST(
'search_parent_name',
'alpha'));
132$search_date_creation_startmonth =
GETPOSTINT(
'search_date_creation_startmonth');
133$search_date_creation_startyear =
GETPOSTINT(
'search_date_creation_startyear');
134$search_date_creation_startday =
GETPOSTINT(
'search_date_creation_startday');
135$search_date_creation_start =
dol_mktime(0, 0, 0, $search_date_creation_startmonth, $search_date_creation_startday, $search_date_creation_startyear);
136$search_date_creation_endmonth =
GETPOSTINT(
'search_date_creation_endmonth');
137$search_date_creation_endyear =
GETPOSTINT(
'search_date_creation_endyear');
138$search_date_creation_endday =
GETPOSTINT(
'search_date_creation_endday');
139$search_date_creation_end =
dol_mktime(23, 59, 59, $search_date_creation_endmonth, $search_date_creation_endday, $search_date_creation_endyear);
141$search_date_modif_startmonth =
GETPOSTINT(
'search_date_modif_startmonth');
142$search_date_modif_startyear =
GETPOSTINT(
'search_date_modif_startyear');
143$search_date_modif_startday =
GETPOSTINT(
'search_date_modif_startday');
144$search_date_modif_start =
dol_mktime(0, 0, 0, $search_date_modif_startmonth, $search_date_modif_startday, $search_date_modif_startyear);
145$search_date_modif_endmonth =
GETPOSTINT(
'search_date_modif_endmonth');
146$search_date_modif_endyear =
GETPOSTINT(
'search_date_modif_endyear');
147$search_date_modif_endday =
GETPOSTINT(
'search_date_modif_endday');
148$search_date_modif_end =
dol_mktime(23, 59, 59, $search_date_modif_endmonth, $search_date_modif_endday, $search_date_modif_endyear);
150$type =
GETPOST(
'type',
'alpha');
151$place =
GETPOST(
'place',
'aZ09') ?
GETPOST(
'place',
'aZ09') :
'0';
153$diroutputmassaction = $conf->societe->dir_output.
'/temp/massgeneration/'.$user->id;
157$sortfield =
GETPOST(
'sortfield',
'aZ09comma');
158$sortorder =
GETPOST(
'sortorder',
'aZ09comma');
164 $sortfield =
"s.nom";
166if (empty($page) || $page < 0 ||
GETPOST(
'button_search',
'alpha') ||
GETPOST(
'button_removefilter',
'alpha')) {
170$offset = $limit * $page;
171$pageprev = $page - 1;
172$pagenext = $page + 1;
175 if (empty($contextpage) || $contextpage ==
'thirdpartylist') {
176 $contextpage =
'customerlist';
178 if ($search_type ==
'') {
179 $search_type =
'1,3';
183 if (empty($contextpage) || $contextpage ==
'thirdpartylist') {
184 $contextpage =
'prospectlist';
186 if ($search_type ==
'') {
187 $search_type =
'2,3';
191 if (empty($contextpage) || $contextpage ==
'poslist') {
192 $contextpage =
'poslist';
194 if ($search_type ==
'') {
195 $search_type =
'1,2,3';
199 if (empty($contextpage) || $contextpage ==
'thirdpartylist') {
200 $contextpage =
'supplierlist';
202 if ($search_type ==
'') {
209$hookmanager->initHooks(array($contextpage,
'thirdpartylist'));
212$extrafields->fetch_name_optionals_label(
$object->table_element);
214$search_array_options = $extrafields->getOptionalsFromPost(
$object->table_element,
'',
'search_');
217$fieldstosearchall = array(
218 's.nom' =>
"ThirdPartyName",
219 's.name_alias' =>
"AliasNameShort",
220 's.code_client' =>
"CustomerCode",
221 's.code_fournisseur' =>
"SupplierCode",
222 's.code_compta' =>
"CustomerAccountancyCodeShort",
223 's.code_compta_fournisseur' =>
"SupplierAccountancyCodeShort",
226 's.email' =>
"EMail",
228 's.tva_intra' =>
"VATIntra",
229 's.siren' =>
"ProfId1",
230 's.siret' =>
"ProfId2",
231 's.ape' =>
"ProfId3",
232 's.phone' =>
"Phone",
233 's.phone_mobile' =>
"PhoneMobile",
236if (($tmp = $langs->transnoentities(
"ProfId4".$mysoc->country_code)) && $tmp !=
"ProfId4".$mysoc->country_code && $tmp !=
'-') {
237 $fieldstosearchall[
's.idprof4'] =
'ProfId4';
239if (($tmp = $langs->transnoentities(
"ProfId5".$mysoc->country_code)) && $tmp !=
"ProfId5".$mysoc->country_code && $tmp !=
'-') {
240 $fieldstosearchall[
's.idprof5'] =
'ProfId5';
242if (($tmp = $langs->transnoentities(
"ProfId6".$mysoc->country_code)) && $tmp !=
"ProfId6".$mysoc->country_code && $tmp !=
'-') {
243 $fieldstosearchall[
's.idprof6'] =
'ProfId6';
245if (isModEnabled(
'barcode')) {
246 $fieldstosearchall[
's.barcode'] =
'Gencod';
255$checkedcustomercode = (in_array($contextpage, array(
'thirdpartylist',
'customerlist',
'prospectlist',
'poslist')) ? 1 : 0);
256$checkedsuppliercode = (in_array($contextpage, array(
'supplierlist')) ? 1 : 0);
257$checkedcustomeraccountcode = (in_array($contextpage, array(
'customerlist')) ? 1 : 0);
258$checkedsupplieraccountcode = (in_array($contextpage, array(
'supplierlist')) ? 1 : 0);
259$checkedtypetiers = 1;
269$checkprospectlevel = (in_array($contextpage, array(
'prospectlist')) ? 1 : 0);
270$checkstcomm = (in_array($contextpage, array(
'prospectlist')) ? 1 : 0);
272 's.rowid' => array(
'label' =>
"TechnicalID",
'position' => 1,
'checked' => -1,
'enabled' => 1),
273 's.nom' => array(
'label' =>
"ThirdPartyName",
'position' => 2,
'checked' => 1),
274 's.name_alias' => array(
'label' =>
"AliasNameShort",
'position' => 3,
'checked' => 1),
275 's.barcode' => array(
'label' =>
"Gencod",
'position' => 5,
'checked' => 1,
'enabled' => (isModEnabled(
'barcode'))),
276 's.code_client' => array(
'label' =>
"CustomerCodeShort",
'position' => 10,
'checked' => $checkedcustomercode),
277 's.code_fournisseur' => array(
'label' =>
"SupplierCodeShort",
'position' => 11,
'checked' => $checkedsuppliercode,
'enabled' => (isModEnabled(
"supplier_order") || isModEnabled(
"supplier_invoice"))),
278 's.code_compta' => array(
'label' =>
"CustomerAccountancyCodeShort",
'position' => 13,
'checked' => $checkedcustomeraccountcode),
279 's.code_compta_fournisseur' => array(
'label' =>
"SupplierAccountancyCodeShort",
'position' => 14,
'checked' => $checkedsupplieraccountcode,
'enabled' => (isModEnabled(
"supplier_order") || isModEnabled(
"supplier_invoice"))),
280 's.address' => array(
'label' =>
"Address",
'position' => 19,
'checked' => 0),
281 's.zip' => array(
'label' =>
"Zip",
'position' => 20,
'checked' => 1),
282 's.town' => array(
'label' =>
"Town",
'position' => 21,
'checked' => 0),
283 'state.nom' => array(
'label' =>
"State",
'position' => 22,
'checked' => 0),
284 'region.nom' => array(
'label' =>
"Region",
'position' => 23,
'checked' => 0),
285 'country.code_iso' => array(
'label' =>
"Country",
'position' => 24,
'checked' => 0),
286 's.email' => array(
'label' =>
"Email",
'position' => 25,
'checked' => 0),
287 's.url' => array(
'label' =>
"Url",
'position' => 26,
'checked' => 0),
288 's.phone' => array(
'label' =>
"Phone",
'position' => 27,
'checked' => 1),
289 's.fax' => array(
'label' =>
"Fax",
'position' => 28,
'checked' => 0),
290 'typent.code' => array(
'label' =>
"ThirdPartyType",
'position' => 29,
'checked' => $checkedtypetiers),
291 'staff.code' => array(
'label' =>
"Workforce",
'position' => 31,
'checked' => 0),
292 'legalform.code' => array(
'label' =>
'JuridicalStatus',
'position'=>32,
'checked' => 0),
293 's.phone_mobile' => array(
'label' =>
"PhoneMobile",
'position' => 35,
'checked' => 0),
294 's.siren' => array(
'label' =>
"ProfId1Short",
'position' => 40,
'checked' => $checkedprofid1),
295 's.siret' => array(
'label' =>
"ProfId2Short",
'position' => 41,
'checked' => $checkedprofid2),
296 's.ape' => array(
'label' =>
"ProfId3Short",
'position' => 42,
'checked' => $checkedprofid3),
297 's.idprof4' => array(
'label' =>
"ProfId4Short",
'position' => 43,
'checked' => $checkedprofid4),
298 's.idprof5' => array(
'label' =>
"ProfId5Short",
'position' => 44,
'checked' => $checkedprofid5),
299 's.idprof6' => array(
'label' =>
"ProfId6Short",
'position' => 45,
'checked' => $checkedprofid6),
300 's.tva_intra' => array(
'label' =>
"VATIntraShort",
'position' => 50,
'checked' => 0),
301 'customerorsupplier' => array(
'label' =>
'NatureOfThirdParty',
'position' => 61,
'checked' => 1),
302 's.fk_prospectlevel' => array(
'label' =>
"ProspectLevel",
'position' => 62,
'checked' => $checkprospectlevel),
303 's.fk_stcomm' => array(
'label' =>
"StatusProsp",
'position' => 63,
'checked' => $checkstcomm),
304 's2.nom' => array(
'label' =>
'ParentCompany',
'position' => 64,
'checked' => 0),
305 's.datec' => array(
'label' =>
"DateCreation",
'checked' => 0,
'position' => 500),
306 's.tms' => array(
'label' =>
"DateModificationShort",
'checked' => 0,
'position' => 500),
307 's.status' => array(
'label' =>
"Status",
'checked' => 1,
'position' => 1000),
308 's.import_key' => array(
'label' =>
"ImportId",
'checked' => 0,
'position' => 1100),
311 $arrayfields[
's.price_level'] = array(
'label' =>
"PriceLevel",
'position' => 30,
'checked' => 0);
315$arrayfields[
'sales.representative'] = array(
'label' => $langs->trans(
"SalesRepresentatives"),
'checked' => 1,
'position' => 12);
318include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_list_array_fields.tpl.php';
322'@phan-var-force array<string,array{label:string,checked?:int<0,1>,position?:int,help?:string}> $arrayfields';
327 $socid = $user->socid;
336if ($action ==
"change" && $user->hasRight(
'takepos',
'run')) {
340 $sql =
"SELECT rowid FROM ".MAIN_DB_PREFIX.
"facture where ref='(PROV-POS".$_SESSION[
"takeposterminal"].
"-".$place.
")' AND entity IN (".
getEntity(
'invoice').
")";
341 $result = $db->query($sql);
342 $num_lines = $db->num_rows($result);
343 if ($num_lines == 0) {
344 require_once DOL_DOCUMENT_ROOT.
'/compta/facture/class/facture.class.php';
346 $constforthirdpartyid =
'CASHDESK_ID_THIRDPARTY'.$_SESSION[
"takeposterminal"];
349 $invoice->module_source =
'takepos';
350 $invoice->pos_source = $_SESSION[
"takeposterminal"];
351 $placeid = $invoice->create($user);
352 $sql =
"UPDATE ".MAIN_DB_PREFIX.
"facture set ref='(PROV-POS".$_SESSION[
"takeposterminal"].
"-".$place.
")' where rowid = ".((int) $placeid);
356 $sql =
"UPDATE ".MAIN_DB_PREFIX.
"facture set fk_soc=".((int) $idcustomer).
" where ref='(PROV-POS".$_SESSION[
"takeposterminal"].
"-".$place.
")'";
357 $resql = $db->query($sql); ?>
359 console.log(
"Reload page invoice.php with place=<?php print $place; ?>");
360 parent.$(
"#poslines").load(
"invoice.php?place=<?php print $place; ?>",
function() {
362 <?php
if (!$resql) { ?>
363 alert(
'Error failed to update customer on draft invoice.');
365 parent.$.colorbox.close();
372if (
GETPOST(
'cancel',
'alpha')) {
376if (!
GETPOST(
'confirmmassaction',
'alpha') && $massaction !=
'presend' && $massaction !=
'confirm_presend') {
380$parameters = array(
'arrayfields' => &$arrayfields);
381$reshook = $hookmanager->executeHooks(
'doActions', $parameters, $object, $action);
386if (empty($reshook)) {
388 include DOL_DOCUMENT_ROOT.
'/core/actions_changeselectedfields.inc.php';
391 if (
GETPOST(
'button_removefilter_x',
'alpha') ||
GETPOST(
'button_removefilter.x',
'alpha') ||
GETPOST(
'button_removefilter',
'alpha')) {
395 $search_categ_cus = 0;
396 $search_categ_sup = 0;
397 $searchCategoryCustomerOperator = 0;
398 $searchCategorySupplierOperator = 0;
399 $searchCategoryCustomerList = array();
400 $searchCategorySupplierList = array();
402 $search_barcode =
"";
403 $search_customer_code =
'';
404 $search_supplier_code =
'';
405 $search_account_customer_code =
'';
406 $search_account_supplier_code =
'';
407 $search_address =
'';
412 $search_country =
'';
415 $search_phone_mobile =
'';
418 $search_idprof1 =
'';
419 $search_idprof2 =
'';
420 $search_idprof3 =
'';
421 $search_idprof4 =
'';
422 $search_idprof5 =
'';
423 $search_idprof6 =
'';
426 $search_price_level =
'';
427 $search_type_thirdparty =
'';
429 $search_legalform =
'';
430 $search_date_creation_startmonth =
"";
431 $search_date_creation_startyear =
"";
432 $search_date_creation_startday =
"";
433 $search_date_creation_start =
"";
434 $search_date_creation_endmonth =
"";
435 $search_date_creation_endyear =
"";
436 $search_date_creation_endday =
"";
437 $search_date_creation_end =
"";
438 $search_date_modif_startmonth =
"";
439 $search_date_modif_startyear =
"";
440 $search_date_modif_startday =
"";
441 $search_date_modif_start =
"";
442 $search_date_modif_endmonth =
"";
443 $search_date_modif_endyear =
"";
444 $search_date_modif_endday =
"";
445 $search_date_modif_end =
"";
449 $search_parent_name =
'';
450 $search_import_key =
'';
454 $search_array_options = array();
458 $objectclass =
'Societe';
459 $objectlabel =
'ThirdParty';
460 $permissiontoread = $user->hasRight(
'societe',
'lire');
461 $permissiontodelete = $user->hasRight(
'societe',
'supprimer');
462 $permissiontoadd = $user->hasRight(
"societe",
"creer");
463 $uploaddir = $conf->societe->dir_output;
464 include DOL_DOCUMENT_ROOT.
'/core/actions_massactions.inc.php';
466 if ($action ==
'setstcomm') {
479if ($search_status ==
'' && empty($search_all)) {
498$form =
new Form($db);
500$companystatic =
new Societe($db);
501$companyparent =
new Societe($db);
503$prospectstatic =
new Client($db);
504$prospectstatic->client = 2;
505$prospectstatic->loadCacheOfProspStatus();
509$title = $langs->trans(
"ThirdParties");
510if ($type ==
'c' && (empty($search_type) || ($search_type ==
'1,3'))) {
511 $title = $langs->trans(
"Customers");
513if ($type ==
'p' && (empty($search_type) || ($search_type ==
'2,3'))) {
514 $title = $langs->trans(
"Prospects");
516if ($type ==
'f' && (empty($search_type) || ($search_type ==
'4'))) {
517 $title = $langs->trans(
"Suppliers");
519$help_url =
'EN:Module_Third_Parties|FR:Module_Tiers|ES:Empresas';
524$sql =
"SELECT code, label, sortorder";
525$sql .=
" FROM ".MAIN_DB_PREFIX.
"c_prospectlevel";
526$sql .=
" WHERE active > 0";
527$sql .=
" ORDER BY sortorder";
528$resql = $db->query($sql);
530 while ($obj = $db->fetch_object($resql)) {
532 $level = $langs->trans($obj->code);
533 if ($level == $obj->code) {
534 $level = $langs->trans($obj->label);
536 $tab_level[$obj->code] = $level;
544$sql =
"SELECT s.rowid, s.nom as name, s.name_alias, s.barcode, s.address, s.town, s.zip, s.datec, s.code_client, s.code_fournisseur, s.logo,";
546$sql .=
" st.libelle as stcomm, st.picto as stcomm_picto, s.fk_stcomm as stcomm_id, s.fk_prospectlevel, s.prefix_comm, s.client, s.fournisseur, s.canvas, s.status as status,";
547$sql .=
" s.email, s.phone, s.phone_mobile, s.fax, s.url, s.siren as idprof1, s.siret as idprof2, s.ape as idprof3, s.idprof4 as idprof4, s.idprof5 as idprof5, s.idprof6 as idprof6, s.tva_intra, s.fk_pays,";
548$sql .=
" s.tms as date_modification, s.datec as date_creation, s.import_key,";
549$sql .=
" s.code_compta, s.code_compta_fournisseur, s.parent as fk_parent,s.price_level,";
550$sql .=
" s2.nom as name2,";
551$sql .=
" typent.code as typent_code,";
552$sql .=
" staff.code as staff_code,";
553$sql .=
" s.fk_forme_juridique as legalform_code,";
554$sql .=
" country.code as country_code, country.label as country_label,";
555$sql .=
" state.code_departement as state_code, state.nom as state_name,";
556$sql .=
" region.code_region as region_code, region.nom as region_name";
558if (!empty($extrafields->attributes[
$object->table_element][
'label'])) {
559 foreach ($extrafields->attributes[
$object->table_element][
'label'] as $key => $val) {
560 $sql .= ($extrafields->attributes[
$object->table_element][
'type'][$key] !=
'separate' ?
", ef.".$key.
" as options_".$key :
'');
564$parameters = array();
565$reshook = $hookmanager->executeHooks(
'printFieldListSelect', $parameters, $object, $action);
566$sql .= $hookmanager->resPrint;
567$sql = preg_replace(
'/,\s*$/',
'', $sql);
572$sql .=
" FROM ".MAIN_DB_PREFIX.
"societe as s";
573$sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.
"societe as s2 ON s.parent = s2.rowid";
574if (!empty($extrafields->attributes[
$object->table_element][
'label']) && is_array($extrafields->attributes[
$object->table_element][
'label']) && count($extrafields->attributes[
$object->table_element][
'label'])) {
575 $sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.$object->table_element.
"_extrafields as ef on (s.rowid = ef.fk_object)";
578$sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.
"c_country as country on (country.rowid = s.fk_pays)";
579$sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.
"c_typent as typent on (typent.id = s.fk_typent)";
580$sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.
"c_effectif as staff on (staff.id = s.fk_effectif)";
582$sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.
"c_departements as state on (state.rowid = s.fk_departement)";
583$sql .=
" LEFT JOIN ".MAIN_DB_PREFIX.
"c_regions as region on (region.code_region = state.fk_region)";
584$sql .=
' LEFT JOIN '.MAIN_DB_PREFIX.
"c_stcomm as st ON s.fk_stcomm = st.id";
586$parameters = array();
587$reshook = $hookmanager->executeHooks(
'printFieldListFrom', $parameters, $object, $action);
588$sql .= $hookmanager->resPrint;
589$sql .=
" WHERE s.entity IN (".getEntity(
'societe').
")";
590if (!$user->hasRight(
'fournisseur',
'lire')) {
591 $sql .=
" AND (s.fournisseur <> 1 OR s.client <> 0)";
594if ($search_sale && $search_sale !=
'-1') {
595 if ($search_sale == -2) {
596 $sql .=
" AND NOT EXISTS (SELECT sc.fk_soc FROM ".MAIN_DB_PREFIX.
"societe_commerciaux as sc WHERE sc.fk_soc = s.rowid)";
597 } elseif ($search_sale > 0) {
598 $sql .=
" AND EXISTS (SELECT sc.fk_soc FROM ".MAIN_DB_PREFIX.
"societe_commerciaux as sc WHERE sc.fk_soc = s.rowid AND sc.fk_user = ".((int) $search_sale).
")";
603if (!empty($searchCategoryCustomerList)) {
604 $searchCategoryCustomerSqlList = array();
605 $listofcategoryid =
'';
606 foreach ($searchCategoryCustomerList as $searchCategoryCustomer) {
607 if (intval($searchCategoryCustomer) == -2) {
608 $searchCategoryCustomerSqlList[] =
"NOT EXISTS (SELECT ck.fk_soc FROM ".MAIN_DB_PREFIX.
"categorie_societe as ck WHERE s.rowid = ck.fk_soc)";
609 } elseif (intval($searchCategoryCustomer) > 0) {
610 if ($searchCategoryCustomerOperator == 0) {
611 $searchCategoryCustomerSqlList[] =
" EXISTS (SELECT ck.fk_soc FROM ".MAIN_DB_PREFIX.
"categorie_societe as ck WHERE s.rowid = ck.fk_soc AND ck.fk_categorie = ".((int) $searchCategoryCustomer).
")";
613 $listofcategoryid .= ($listofcategoryid ?
', ' :
'') .((
int) $searchCategoryCustomer);
617 if ($listofcategoryid) {
618 $searchCategoryCustomerSqlList[] =
" EXISTS (SELECT ck.fk_soc FROM ".MAIN_DB_PREFIX.
"categorie_societe as ck WHERE s.rowid = ck.fk_soc AND ck.fk_categorie IN (".$db->sanitize($listofcategoryid).
"))";
620 if ($searchCategoryCustomerOperator == 1) {
621 if (!empty($searchCategoryCustomerSqlList)) {
622 $sql .=
" AND (".implode(
' OR ', $searchCategoryCustomerSqlList).
")";
625 if (!empty($searchCategoryCustomerSqlList)) {
626 $sql .=
" AND (".implode(
' AND ', $searchCategoryCustomerSqlList).
")";
632if (!empty($searchCategorySupplierList)) {
633 $searchCategorySupplierSqlList = array();
634 $listofcategoryid =
'';
635 foreach ($searchCategorySupplierList as $searchCategorySupplier) {
636 if (intval($searchCategorySupplier) == -2) {
637 $searchCategorySupplierSqlList[] =
"NOT EXISTS (SELECT ck.fk_soc FROM ".MAIN_DB_PREFIX.
"categorie_fournisseur as ck WHERE s.rowid = ck.fk_soc)";
638 } elseif (intval($searchCategorySupplier) > 0) {
639 if ($searchCategorySupplierOperator == 0) {
640 $searchCategorySupplierSqlList[] =
" EXISTS (SELECT ck.fk_soc FROM ".MAIN_DB_PREFIX.
"categorie_fournisseur as ck WHERE s.rowid = ck.fk_soc AND ck.fk_categorie = ".((int) $searchCategorySupplier).
")";
642 $listofcategoryid .= ($listofcategoryid ?
', ' :
'') .((
int) $searchCategorySupplier);
646 if ($listofcategoryid) {
647 $searchCategorySupplierSqlList[] =
" EXISTS (SELECT ck.fk_soc FROM ".MAIN_DB_PREFIX.
"categorie_fournisseur as ck WHERE s.rowid = ck.fk_soc AND ck.fk_categorie IN (".$db->sanitize($listofcategoryid).
"))";
649 if ($searchCategorySupplierOperator == 1) {
650 if (!empty($searchCategorySupplierSqlList)) {
651 $sql .=
" AND (".implode(
' OR ', $searchCategorySupplierSqlList).
")";
654 if (!empty($searchCategorySupplierSqlList)) {
655 $sql .=
" AND (".implode(
' AND ', $searchCategorySupplierSqlList).
")";
660 $sql .=
natural_search(array_keys($fieldstosearchall), $search_all);
662if (strlen($search_cti)) {
668if (empty($arrayfields[
's.name_alias'][
'checked']) && $search_nom) {
669 $sql .=
natural_search(array(
"s.nom",
"s.name_alias"), $search_nom);
679if ($search_nom_only) {
682if ($search_customer_code) {
685if ($search_supplier_code) {
686 $sql .=
natural_search(
"s.code_fournisseur", $search_supplier_code);
688if ($search_account_customer_code) {
689 $sql .=
natural_search(
"s.code_compta", $search_account_customer_code);
691if ($search_account_supplier_code) {
692 $sql .=
natural_search(
"s.code_compta_fournisseur", $search_account_supplier_code);
694if ($search_address) {
697if (strlen($search_zip)) {
709if ($search_country && $search_country !=
'-1') {
710 $sql .=
" AND s.fk_pays IN (".$db->sanitize($search_country).
')';
715if (strlen($search_phone)) {
718if (strlen($search_phone_mobile)) {
721if (strlen($search_fax)) {
727if (strlen($search_idprof1)) {
730if (strlen($search_idprof2)) {
733if (strlen($search_idprof3)) {
736if (strlen($search_idprof4)) {
739if (strlen($search_idprof5)) {
742if (strlen($search_idprof6)) {
745if (strlen($search_vat)) {
749if ($search_type > 0 && in_array($search_type, array(
'1,3',
'1,2,3',
'2,3'))) {
750 $sql .=
" AND s.client IN (".$db->sanitize($search_type).
")";
752if ($search_type > 0 && in_array($search_type, array(
'4'))) {
753 $sql .=
" AND s.fournisseur = 1";
755if ($search_type ==
'0') {
756 $sql .=
" AND s.client = 0 AND s.fournisseur = 0";
758if ($search_status !=
'' && $search_status >= 0) {
761if (isModEnabled(
'barcode') && $search_barcode) {
764if ($search_price_level && $search_price_level !=
'-1') {
767if ($search_type_thirdparty && $search_type_thirdparty > 0) {
768 $sql .=
natural_search(
"s.fk_typent", $search_type_thirdparty, 2);
770if (!empty($search_staff) && $search_staff !=
'-1') {
773if (!empty($search_legalform) && $search_legalform !=
'-1') {
774 $sql .=
natural_search(
"s.fk_forme_juridique", $search_legalform, 2);
776if ($search_parent_name) {
780 $sql .=
natural_search(
"s.fk_prospectlevel", implode(
',', $search_level), 3);
783 $sql .=
natural_search(
"s.fk_stcomm", implode(
',', $search_stcomm), 2);
785if ($search_import_key) {
788if ($search_date_creation_start) {
789 $sql .=
" AND s.datec >= '".$db->idate($search_date_creation_start).
"'";
791if ($search_date_creation_end) {
792 $sql .=
" AND s.datec <= '".$db->idate($search_date_creation_end).
"'";
795if ($search_date_modif_start) {
796 $sql .=
" AND s.tms >= '".$db->idate($search_date_modif_start).
"'";
798if ($search_date_modif_end) {
799 $sql .=
" AND s.tms <= '".$db->idate($search_date_modif_end).
"'";
803include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_list_search_sql.tpl.php';
805$parameters = array(
'socid' => $socid);
806$reshook = $hookmanager->executeHooks(
'printFieldListWhere', $parameters, $object, $action);
807if (empty($reshook)) {
809 $sql .=
" AND s.rowid = ".((int) $socid);
812$sql .= $hookmanager->resPrint;
815$parameters = array(
'fieldstosearchall' => $fieldstosearchall);
816$reshook = $hookmanager->executeHooks(
'printFieldListGroupBy', $parameters, $object, $action);
817$sql .= $hookmanager->resPrint;
820$nbtotalofrecords =
'';
823 $sqlforcount = preg_replace(
'/^'.preg_quote($sqlfields,
'/').
'/',
'SELECT COUNT(*) as nbtotalofrecords', $sql);
824 $sqlforcount = preg_replace(
'/GROUP BY .*$/',
'', $sqlforcount);
825 $resql = $db->query($sqlforcount);
827 $objforcount = $db->fetch_object($resql);
828 $nbtotalofrecords = $objforcount->nbtotalofrecords;
833 if (($page * $limit) > $nbtotalofrecords) {
841$sql .= $db->order($sortfield, $sortorder);
843 $sql .= $db->plimit($limit + 1, $offset);
846$resql = $db->query($sql);
852$num = $db->num_rows($resql);
856if ($num == 1 &&
getDolGlobalString(
'MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE') && ($search_all !=
'' || $search_cti !=
'') && $action !=
'list') {
857 $obj = $db->fetch_object($resql);
859 if (
getDolGlobalString(
'SOCIETE_ON_SEARCH_AND_LIST_GO_ON_CUSTOMER_OR_SUPPLIER_CARD')) {
860 if ($obj->client > 0) {
861 header(
"Location: ".DOL_URL_ROOT.
'/comm/card.php?socid='.$id);
864 if ($obj->fournisseur > 0) {
865 header(
"Location: ".DOL_URL_ROOT.
'/fourn/card.php?socid='.$id);
870 header(
"Location: ".DOL_URL_ROOT.
'/societe/card.php?socid='.$id);
878foreach ($searchCategoryCustomerList as $searchCategoryCustomer) {
879 $paramsCat .=
"&search_category_customer_list[]=".urlencode($searchCategoryCustomer);
881foreach ($searchCategorySupplierList as $searchCategorySupplier) {
882 $paramsCat .=
"&search_category_supplier_list[]=".urlencode($searchCategorySupplier);
885llxHeader(
'', $title, $help_url,
'', 0, 0, array(), array(), $paramsCat,
'bodyforlist');
888$arrayofselected = is_array($toselect) ? $toselect : array();
892 $param .=
'&mode='.urlencode($mode);
894if (!empty($contextpage) && $contextpage != $_SERVER[
"PHP_SELF"]) {
895 $param .=
'&contextpage='.urlencode($contextpage);
897if ($limit > 0 && $limit != $conf->liste_limit) {
898 $param .=
'&limit='.((int) $limit);
900if ($optioncss !=
'') {
901 $param .=
'&optioncss='.urlencode($optioncss);
903if ($search_all !=
'') {
904 $param =
"&search_all=".urlencode($search_all);
906if ($search_categ_cus > 0) {
907 $param .=
'&search_categ_cus='.urlencode((
string) ($search_categ_cus));
909if ($search_categ_sup > 0) {
910 $param .=
'&search_categ_sup='.urlencode((
string) ($search_categ_sup));
912if ($searchCategoryCustomerOperator == 1) {
913 $param .=
"&search_category_customer_operator=".urlencode((
string) ($searchCategoryCustomerOperator));
915if ($searchCategorySupplierOperator == 1) {
916 $param .=
"&search_category_supplier_operator=".urlencode((
string) ($searchCategorySupplierOperator));
918foreach ($searchCategoryCustomerList as $searchCategoryCustomer) {
919 $param .=
"&search_category_customer_list[]=".urlencode($searchCategoryCustomer);
921foreach ($searchCategorySupplierList as $searchCategorySupplier) {
922 $param .=
"&search_category_supplier_list[]=".urlencode($searchCategorySupplier);
924if ($search_sale > 0) {
925 $param .=
'&search_sale='.((int) $search_sale);
928 $param .=
"&search_id=".((int) $search_id);
930if ($search_nom !=
'') {
931 $param .=
"&search_nom=".urlencode($search_nom);
933if ($search_alias !=
'') {
934 $param .=
"&search_alias=".urlencode($search_alias);
936if ($search_address !=
'') {
937 $param .=
'&search_address='.urlencode($search_address);
939if ($search_zip !=
'') {
940 $param .=
"&search_zip=".urlencode($search_zip);
942if ($search_town !=
'') {
943 $param .=
"&search_town=".urlencode($search_town);
945if ($search_phone !=
'') {
946 $param .=
"&search_phone=".urlencode($search_phone);
948if ($search_phone_mobile !=
'') {
949 $param .=
"&search_phone_mobile=".urlencode($search_phone_mobile);
951if ($search_fax !=
'') {
952 $param .=
"&search_fax=".urlencode($search_fax);
954if ($search_email !=
'') {
955 $param .=
"&search_email=".urlencode($search_email);
957if ($search_url !=
'') {
958 $param .=
"&search_url=".urlencode($search_url);
960if ($search_state !=
'') {
961 $param .=
"&search_state=".urlencode($search_state);
963if ($search_region !=
'') {
964 $param .=
"&search_region=".urlencode($search_region);
966if ($search_country !=
'') {
967 $param .=
"&search_country=".urlencode($search_country);
969if ($search_customer_code !=
'') {
970 $param .=
"&search_customer_code=".urlencode($search_customer_code);
972if ($search_supplier_code !=
'') {
973 $param .=
"&search_supplier_code=".urlencode($search_supplier_code);
975if ($search_account_customer_code !=
'') {
976 $param .=
"&search_account_customer_code=".urlencode($search_account_customer_code);
978if ($search_account_supplier_code !=
'') {
979 $param .=
"&search_account_supplier_code=".urlencode($search_account_supplier_code);
981if ($search_barcode !=
'') {
982 $param .=
"&search_barcode=".urlencode($search_barcode);
984if ($search_idprof1 !=
'') {
985 $param .=
'&search_idprof1='.urlencode($search_idprof1);
987if ($search_idprof2 !=
'') {
988 $param .=
'&search_idprof2='.urlencode($search_idprof2);
990if ($search_idprof3 !=
'') {
991 $param .=
'&search_idprof3='.urlencode($search_idprof3);
993if ($search_idprof4 !=
'') {
994 $param .=
'&search_idprof4='.urlencode($search_idprof4);
996if ($search_idprof5 !=
'') {
997 $param .=
'&search_idprof5='.urlencode($search_idprof5);
999if ($search_idprof6 !=
'') {
1000 $param .=
'&search_idprof6='.urlencode($search_idprof6);
1002if ($search_vat !=
'') {
1003 $param .=
'&search_vat='.urlencode($search_vat);
1005if ($search_price_level !=
'') {
1006 $param .=
'&search_price_level='.urlencode($search_price_level);
1008if ($search_type_thirdparty !=
'' && $search_type_thirdparty > 0) {
1009 $param .=
'&search_type_thirdparty='.urlencode((
string) ($search_type_thirdparty));
1011if ($search_type !=
'') {
1012 $param .=
'&search_type='.urlencode($search_type);
1014if ($search_status !=
'') {
1015 $param .=
'&search_status='.urlencode((
string) ($search_status));
1017if (is_array($search_level) && count($search_level)) {
1018 foreach ($search_level as $slevel) {
1019 $param .=
'&search_level[]='.urlencode($slevel);
1022if (is_array($search_stcomm) && count($search_stcomm)) {
1023 foreach ($search_stcomm as $slevel) {
1024 $param .=
'&search_stcomm[]='.urlencode($slevel);
1027if ($search_parent_name !=
'') {
1028 $param .=
'&search_parent_name='.urlencode($search_parent_name);
1030if ($search_import_key !=
'') {
1031 $param .=
'&search_import_key='.urlencode($search_import_key);
1034 $param .=
'&type='.urlencode($type);
1036if ($search_date_creation_startmonth) {
1037 $param .=
'&search_date_creation_startmonth='.urlencode((
string) ($search_date_creation_startmonth));
1039if ($search_date_creation_startyear) {
1040 $param .=
'&search_date_creation_startyear='.urlencode((
string) ($search_date_creation_startyear));
1042if ($search_date_creation_startday) {
1043 $param .=
'&search_date_creation_startday='.urlencode((
string) ($search_date_creation_startday));
1045if ($search_date_creation_start) {
1046 $param .=
'&search_date_creation_start='.urlencode($search_date_creation_start);
1048if ($search_date_creation_endmonth) {
1049 $param .=
'&search_date_creation_endmonth='.urlencode((
string) ($search_date_creation_endmonth));
1051if ($search_date_creation_endyear) {
1052 $param .=
'&search_date_creation_endyear='.urlencode((
string) ($search_date_creation_endyear));
1054if ($search_date_creation_endday) {
1055 $param .=
'&search_date_creation_endday='.urlencode((
string) ($search_date_creation_endday));
1057if ($search_date_creation_end) {
1058 $param .=
'&search_date_creation_end='.urlencode($search_date_creation_end);
1060if ($search_date_modif_startmonth) {
1061 $param .=
'&search_date_modif_startmonth='.urlencode((
string) ($search_date_modif_startmonth));
1063if ($search_date_modif_startyear) {
1064 $param .=
'&search_date_modif_startyear='.urlencode((
string) ($search_date_modif_startyear));
1066if ($search_date_modif_startday) {
1067 $param .=
'&search_date_modif_startday='.urlencode((
string) ($search_date_modif_startday));
1069if ($search_date_modif_start) {
1070 $param .=
'&search_date_modif_start='.urlencode($search_date_modif_start);
1072if ($search_date_modif_endmonth) {
1073 $param .=
'&search_date_modif_endmonth='.urlencode((
string) ($search_date_modif_endmonth));
1075if ($search_date_modif_endyear) {
1076 $param .=
'&search_date_modif_endyear='.urlencode((
string) ($search_date_modif_endyear));
1078if ($search_date_modif_endday) {
1079 $param .=
'&search_date_modif_endday='.urlencode((
string) ($search_date_modif_endday));
1081if ($search_date_modif_end) {
1082 $param .=
'&search_date_modif_end=' . urlencode($search_date_modif_end);
1086include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_list_search_param.tpl.php';
1088$parameters = array(
'param' => &$param);
1089$reshook = $hookmanager->executeHooks(
'printFieldListSearchParam', $parameters, $object, $action);
1090$param .= $hookmanager->resPrint;
1098$arrayofmassactions = array(
1099 'presend' =>
img_picto(
'',
'email',
'class="pictofixedwidth"').$langs->trans(
"SendByMail"),
1103if (isModEnabled(
'category') && $user->hasRight(
"societe",
"creer")) {
1104 $arrayofmassactions[
'preaffecttag'] =
img_picto(
'',
'category',
'class="pictofixedwidth"').$langs->trans(
"AffectTag");
1106if ($user->hasRight(
"societe",
"creer")) {
1107 $arrayofmassactions[
'preenable'] =
img_picto(
'',
'stop-circle',
'class="pictofixedwidth"').$langs->trans(
"SetToStatus",
$object->LibStatut($object::STATUS_INACTIVITY));
1109if ($user->hasRight(
"societe",
"creer")) {
1110 $arrayofmassactions[
'predisable'] =
img_picto(
'',
'stop-circle',
'class="pictofixedwidth"').$langs->trans(
"SetToStatus",
$object->LibStatut($object::STATUS_CEASED));
1112if ($user->hasRight(
"societe",
"creer")) {
1113 $arrayofmassactions[
'presetcommercial'] =
img_picto(
'',
'user',
'class="pictofixedwidth"').$langs->trans(
"AllocateCommercial");
1114 $arrayofmassactions[
'unsetcommercial'] =
img_picto(
'',
'user',
'class="pictofixedwidth"').$langs->trans(
"UnallocateCommercial");
1117if ($user->hasRight(
'societe',
'supprimer')) {
1118 $arrayofmassactions[
'predelete'] =
img_picto(
'',
'delete',
'class="pictofixedwidth"').$langs->trans(
"Delete");
1120if (
GETPOSTINT(
'nomassaction') || in_array($massaction, array(
'presend',
'predelete',
'preaffecttag',
'preenable',
'preclose'))) {
1121 $arrayofmassactions = array();
1123$massactionbutton = $form->selectMassAction(
'', $arrayofmassactions);
1126$label =
'MenuNewThirdParty';
1129 $typefilter =
'&type='.$type;
1131 $label =
'MenuNewProspect';
1134 $label =
'MenuNewCustomer';
1137 $label =
'NewSupplier';
1147if ($contextpage !=
'poslist') {
1148 $url = DOL_URL_ROOT.
'/societe/card.php?action=create'.$typefilter;
1149 if (!empty($socid)) {
1150 $url .=
'&socid='.$socid;
1152 $newcardbutton =
'';
1153 $newcardbutton .=
dolGetButtonTitle($langs->trans(
'ViewList'),
'',
'fa fa-bars imgforviewmode', $_SERVER[
"PHP_SELF"].
'?mode=common'.preg_replace(
'/(&|\?)*mode=[^&]+/',
'', $param),
'', ((empty($mode) || $mode ==
'common') ? 2 : 1), array(
'morecss' =>
'reposition'));
1154 $newcardbutton .=
dolGetButtonTitle($langs->trans(
'ViewKanban'),
'',
'fa fa-th-list imgforviewmode', $_SERVER[
"PHP_SELF"].
'?mode=kanban'.preg_replace(
'/(&|\?)*mode=[^&]+/',
'', $param),
'', ($mode ==
'kanban' ? 2 : 1), array(
'morecss' =>
'reposition'));
1155 $newcardbutton .=
dolGetButtonTitle($langs->trans($label),
'',
'fa fa-plus-circle', $url,
'', $user->hasRight(
'societe',
'creer'));
1156} elseif ($user->hasRight(
'societe',
'creer')) {
1157 $url = DOL_URL_ROOT.
'/societe/card.php?action=create&type=t&contextpage=poslist&optioncss=print&backtopage='.urlencode($_SERVER[
"PHP_SELF"].
'?type=t&contextpage=poslist&nomassaction=1&optioncss=print&place='.$place);
1158 $label =
'MenuNewCustomer';
1159 $newcardbutton =
dolGetButtonTitle($langs->trans($label),
'',
'fa fa-plus-circle', $url);
1162print
'<form method="POST" id="searchFormList" action="'.$_SERVER[
"PHP_SELF"].
'" name="formfilter" autocomplete="off">'.
"\n";
1163if ($optioncss !=
'') {
1164 print
'<input type="hidden" name="optioncss" value="'.$optioncss.
'">';
1166print
'<input type="hidden" name="token" value="'.newToken().
'">';
1167print
'<input type="hidden" name="formfilteraction" id="formfilteraction" value="list">';
1168print
'<input type="hidden" name="action" value="list">';
1169print
'<input type="hidden" name="sortfield" value="'.$sortfield.
'">';
1170print
'<input type="hidden" name="sortorder" value="'.$sortorder.
'">';
1172print
'<input type="hidden" name="contextpage" value="'.$contextpage.
'">';
1173if (!empty($place)) {
1174 print
'<input type="hidden" name="place" value="'.$place.
'">';
1176print
'<input type="hidden" name="page_y" value="">';
1177print
'<input type="hidden" name="mode" value="'.$mode.
'">';
1178if (empty($arrayfields[
'customerorsupplier'][
'checked'])) {
1179 print
'<input type="hidden" name="type" value="'.$type.
'">';
1181if (!empty($place)) {
1182 print
'<input type="hidden" name="place" value="'.$place.
'">';
1185print_barre_liste($title, $page, $_SERVER[
"PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords,
'building', 0, $newcardbutton,
'', $limit, 0, 0, 1);
1187$langs->load(
"other");
1188$textprofid = array();
1189foreach (array(1, 2, 3, 4, 5, 6) as $key) {
1190 $label = $langs->transnoentities(
"ProfId".$key.$mysoc->country_code);
1191 $textprofid[$key] =
'';
1192 if ($label !=
"ProfId".$key.$mysoc->country_code) {
1193 if (preg_match(
'/\((.*)\)/i', $label, $reg)) {
1197 $textprofid[$key] = $langs->trans(
"ProfIdShortDesc", $key, $mysoc->country_code, $label);
1202$topicmail =
"Information";
1203$modelmail =
"thirdparty";
1205$trackid =
'thi'.$object->id;
1206include DOL_DOCUMENT_ROOT.
'/core/tpl/massactions_pre.tpl.php';
1220 foreach ($fieldstosearchall as $key => $val) {
1221 $fieldstosearchall[$key] = $langs->trans($val);
1222 $setupstring .= $key.
"=".$val.
";";
1224 print
'<!-- Search done like if SOCIETE_QUICKSEARCH_ON_FIELDS = '.$setupstring.
' -->'.
"\n";
1225 print
'<div class="divsearchfieldfilter">'.$langs->trans(
"FilterOnInto", $search_all).implode(
', ', $fieldstosearchall).
'</div>';
1231if (empty($type) || $type ==
'c' || $type ==
'p') {
1232 if (isModEnabled(
'category') && $user->hasRight(
'categorie',
'read')) {
1234 $moreforfilter .= $formcategory->getFilterBox(Categorie::TYPE_CUSTOMER, $searchCategoryCustomerList,
'minwidth300', $searchCategoryCustomerOperator ? $searchCategoryCustomerOperator : 0, 1, 1, $langs->transnoentities(
"CustomersProspectsCategoriesShort"));
1239if (empty($type) || $type ==
'f') {
1240 if (isModEnabled(
"fournisseur") && isModEnabled(
'category') && $user->hasRight(
'categorie',
'read')) {
1242 $moreforfilter .= $formcategory->getFilterBox(Categorie::TYPE_SUPPLIER, $searchCategorySupplierList,
'minwidth300', $searchCategorySupplierOperator ? $searchCategorySupplierOperator : 0, 1, 1, $langs->transnoentities(
"SuppliersCategoriesShort"));
1247if ($user->hasRight(
"societe",
"client",
"voir") || $socid) {
1248 $moreforfilter .=
'<div class="divsearchfield">';
1249 $tmptitle = $langs->trans(
'SalesRepresentatives');
1250 $moreforfilter .=
img_picto($tmptitle,
'user',
'class="pictofixedwidth"');
1251 $moreforfilter .= $formother->select_salesrepresentatives($search_sale,
'search_sale', $user, 0, $langs->trans(
'SalesRepresentatives'), ($conf->dol_optimize_smallscreen ?
'maxwidth200' :
'maxwidth300'), 1);
1252 $moreforfilter .=
'</div>';
1254if (!empty($moreforfilter)) {
1255 print
'<div class="liste_titre liste_titre_bydiv centpercent">';
1256 print $moreforfilter;
1257 $parameters = array(
'type' => $type);
1258 $reshook = $hookmanager->executeHooks(
'printFieldPreListTitle', $parameters, $object, $action);
1259 print $hookmanager->resPrint;
1263$varpage = empty($contextpage) ? $_SERVER[
"PHP_SELF"] : $contextpage;
1264$htmlofselectarray = $form->multiSelectArrayWithCheckbox(
'selectedfields', $arrayfields, $varpage,
getDolGlobalString(
'MAIN_CHECKBOX_LEFT_COLUMN'));
1265$selectedfields = ($mode !=
'kanban' ? $htmlofselectarray :
'');
1266$selectedfields .= ((count($arrayofmassactions) && $contextpage !=
'poslist') ? $form->showCheckAddButtons(
'checkforselect', 1) :
'');
1268print
'<div class="div-table-responsive">';
1269print
'<table class="tagtable nobottomiftotal liste'.($moreforfilter ?
" listwithfilterbefore" :
"").
'">'.
"\n";
1273print
'<tr class="liste_titre_filter">';
1276 print
'<td class="liste_titre maxwidthsearch center actioncolumn">';
1277 $searchpicto = $form->showFilterButtons(
'left');
1281if (!empty($arrayfields[
's.rowid'][
'checked'])) {
1282 print
'<td class="liste_titre" data-key="id">';
1283 print
'<input class="flat searchstring" type="text" name="search_id" size="1" value="'.dol_escape_htmltag($search_id).
'">';
1286if (!empty($arrayfields[
's.nom'][
'checked'])) {
1287 print
'<td class="liste_titre" data-key="ref">';
1288 if (!empty($search_nom_only) && empty($search_nom)) {
1289 $search_nom = $search_nom_only;
1291 print
'<input class="flat searchstring maxwidth75imp" type="text" name="search_nom" value="'.dol_escape_htmltag($search_nom).
'">';
1294if (!empty($arrayfields[
's.name_alias'][
'checked'])) {
1295 print
'<td class="liste_titre">';
1296 print
'<input class="flat searchstring maxwidth75imp" type="text" name="search_alias" value="'.dol_escape_htmltag($search_alias).
'">';
1300if (!empty($arrayfields[
's.barcode'][
'checked'])) {
1301 print
'<td class="liste_titre">';
1302 print
'<input class="flat searchstring maxwidth75imp" type="text" name="search_barcode" value="'.dol_escape_htmltag($search_barcode).
'">';
1306if (!empty($arrayfields[
's.code_client'][
'checked'])) {
1307 print
'<td class="liste_titre">';
1308 print
'<input class="flat searchstring maxwidth75imp" type="text" name="search_customer_code" value="'.dol_escape_htmltag($search_customer_code).
'">';
1312if (!empty($arrayfields[
's.code_fournisseur'][
'checked'])) {
1313 print
'<td class="liste_titre">';
1314 print
'<input class="flat searchstring maxwidth75imp" type="text" name="search_supplier_code" value="'.dol_escape_htmltag($search_supplier_code).
'">';
1318if (!empty($arrayfields[
's.code_compta'][
'checked'])) {
1319 print
'<td class="liste_titre">';
1320 print
'<input class="flat searchstring maxwidth75imp" type="text" name="search_account_customer_code" value="'.dol_escape_htmltag($search_account_customer_code).
'">';
1324if (!empty($arrayfields[
's.code_compta_fournisseur'][
'checked'])) {
1325 print
'<td class="liste_titre">';
1326 print
'<input class="flat maxwidth75imp" type="text" name="search_account_supplier_code" value="'.dol_escape_htmltag($search_account_supplier_code).
'">';
1330if (!empty($arrayfields[
's.address'][
'checked'])) {
1331 print
'<td class="liste_titre">';
1332 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_address" value="'.dol_escape_htmltag($search_address).
'">';
1336if (!empty($arrayfields[
'sales.representative'][
'checked'])) {
1337 print
'<td class="liste_titre">';
1341if (!empty($arrayfields[
's.zip'][
'checked'])) {
1342 print
'<td class="liste_titre">';
1343 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_zip" value="'.dol_escape_htmltag($search_zip).
'">';
1347if (!empty($arrayfields[
's.town'][
'checked'])) {
1348 print
'<td class="liste_titre">';
1349 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_town" value="'.dol_escape_htmltag($search_town).
'">';
1353if (!empty($arrayfields[
'state.nom'][
'checked'])) {
1354 print
'<td class="liste_titre">';
1355 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_state" value="'.dol_escape_htmltag($search_state).
'">';
1359if (!empty($arrayfields[
'region.nom'][
'checked'])) {
1360 print
'<td class="liste_titre">';
1361 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_region" value="'.dol_escape_htmltag($search_region).
'">';
1365if (!empty($arrayfields[
'country.code_iso'][
'checked'])) {
1366 print
'<td class="liste_titre center">';
1367 print $form->select_country($search_country,
'search_country',
'', 0,
'minwidth100imp maxwidth100');
1371if (!empty($arrayfields[
'typent.code'][
'checked'])) {
1372 print
'<td class="liste_titre maxwidthonsmartphone center">';
1374 print $form->selectarray(
"search_type_thirdparty", $formcompany->typent_array(0), $search_type_thirdparty, 1, 0, 0,
'', 0, 0, 0, (!
getDolGlobalString(
'SOCIETE_SORT_ON_TYPEENT') ?
'ASC' : $conf->global->SOCIETE_SORT_ON_TYPEENT),
'minwidth50 maxwidth125', 1);
1378if (!empty($arrayfields[
's.price_level'][
'checked'])) {
1379 print
'<td class="liste_titre">';
1380 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_price_level" value="'.dol_escape_htmltag($search_price_level).
'">';
1384if (!empty($arrayfields[
'staff.code'][
'checked'])) {
1385 print
'<td class="liste_titre maxwidthonsmartphone center">';
1386 print $form->selectarray(
"search_staff", $formcompany->effectif_array(0), $search_staff, 0, 0, 0,
'', 0, 0, 0,
'ASC',
'maxwidth100', 1);
1390if (!empty($arrayfields[
'legalform.code'][
'checked'])) {
1391 print
'<td class="liste_titre maxwidthonsmartphone center">';
1395if (!empty($arrayfields[
's.email'][
'checked'])) {
1397 print
'<td class="liste_titre">';
1398 print
'<input class="flat searchemail maxwidth50imp" type="text" name="search_email" value="'.dol_escape_htmltag($search_email).
'">';
1401if (!empty($arrayfields[
's.phone'][
'checked'])) {
1403 print
'<td class="liste_titre">';
1404 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_phone" value="'.dol_escape_htmltag($search_phone).
'">';
1407if (!empty($arrayfields[
's.phone_mobile'][
'checked'])) {
1409 print
'<td class="liste_titre">';
1410 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_phone_mobile" value="'.dol_escape_htmltag($search_phone_mobile).
'">';
1413if (!empty($arrayfields[
's.fax'][
'checked'])) {
1415 print
'<td class="liste_titre">';
1416 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_fax" value="'.dol_escape_htmltag($search_fax).
'">';
1419if (!empty($arrayfields[
's.url'][
'checked'])) {
1421 print
'<td class="liste_titre">';
1422 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_url" value="'.dol_escape_htmltag($search_url).
'">';
1425if (!empty($arrayfields[
's.siren'][
'checked'])) {
1427 print
'<td class="liste_titre">';
1428 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_idprof1" value="'.dol_escape_htmltag($search_idprof1).
'">';
1431if (!empty($arrayfields[
's.siret'][
'checked'])) {
1433 print
'<td class="liste_titre">';
1434 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_idprof2" value="'.dol_escape_htmltag($search_idprof2).
'">';
1437if (!empty($arrayfields[
's.ape'][
'checked'])) {
1439 print
'<td class="liste_titre">';
1440 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_idprof3" value="'.dol_escape_htmltag($search_idprof3).
'">';
1443if (!empty($arrayfields[
's.idprof4'][
'checked'])) {
1445 print
'<td class="liste_titre">';
1446 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_idprof4" value="'.dol_escape_htmltag($search_idprof4).
'">';
1449if (!empty($arrayfields[
's.idprof5'][
'checked'])) {
1451 print
'<td class="liste_titre">';
1452 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_idprof5" value="'.dol_escape_htmltag($search_idprof5).
'">';
1455if (!empty($arrayfields[
's.idprof6'][
'checked'])) {
1457 print
'<td class="liste_titre">';
1458 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_idprof6" value="'.dol_escape_htmltag($search_idprof6).
'">';
1461if (!empty($arrayfields[
's.tva_intra'][
'checked'])) {
1463 print
'<td class="liste_titre">';
1464 print
'<input class="flat searchstring maxwidth50imp" type="text" name="search_vat" value="'.dol_escape_htmltag($search_vat).
'">';
1469if (!empty($arrayfields[
'customerorsupplier'][
'checked'])) {
1470 print
'<td class="liste_titre maxwidthonsmartphone center">';
1472 print
'<input type="hidden" name="type" value="'.$type.
'">';
1474 print $formcompany->selectProspectCustomerType($search_type,
'search_type',
'search_type',
'list');
1478if (!empty($arrayfields[
's.fk_prospectlevel'][
'checked'])) {
1479 print
'<td class="liste_titre center">';
1480 print $form->multiselectarray(
'search_level', $tab_level, $search_level, 0, 0,
'width75', 0, 0,
'',
'',
'', 2);
1484if (!empty($arrayfields[
's.fk_stcomm'][
'checked'])) {
1485 print
'<td class="liste_titre maxwidthonsmartphone center">';
1486 $arraystcomm = array();
1487 foreach ($prospectstatic->cacheprospectstatus as $key => $val) {
1488 $arraystcomm[$val[
'id']] = ($langs->trans(
"StatusProspect".$val[
'id']) !=
"StatusProspect".$val[
'id'] ? $langs->trans(
"StatusProspect".$val[
'id']) : $val[
'label']);
1491 print $form->multiselectarray(
'search_stcomm', $arraystcomm, $search_stcomm, 0, 0,
'width100', 0, 0,
'',
'',
'', 2);
1494if (!empty($arrayfields[
's2.nom'][
'checked'])) {
1495 print
'<td class="liste_titre center">';
1496 print
'<input class="flat searchstring maxwidth75imp" type="text" name="search_parent_name" value="'.dol_escape_htmltag($search_parent_name).
'">';
1500include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_list_search_input.tpl.php';
1503$parameters = array(
'arrayfields' => $arrayfields);
1504$reshook = $hookmanager->executeHooks(
'printFieldListOption', $parameters, $object, $action);
1505print $hookmanager->resPrint;
1507if (!empty($arrayfields[
's.datec'][
'checked'])) {
1508 print
'<td class="liste_titre center nowraponall">';
1509 print
'<div class="nowrapfordate">';
1510 print $form->selectDate($search_date_creation_start ? $search_date_creation_start : -1,
'search_date_creation_start', 0, 0, 1,
'', 1, 0, 0,
'',
'',
'',
'', 1,
'', $langs->trans(
'From'));
1512 print
'<div class="nowrapfordate">';
1513 print $form->selectDate($search_date_creation_end ? $search_date_creation_end : -1,
'search_date_creation_end', 0, 0, 1,
'', 1, 0, 0,
'',
'',
'',
'', 1,
'', $langs->trans(
'to'));
1518if (!empty($arrayfields[
's.tms'][
'checked'])) {
1519 print
'<td class="liste_titre center nowraponall">';
1520 print
'<div class="nowrapfordate">';
1521 print $form->selectDate($search_date_modif_start ? $search_date_modif_start : -1,
'search_date_modif_start', 0, 0, 1,
'', 1, 0, 0,
'',
'',
'',
'', 1,
'', $langs->trans(
'From'));
1523 print
'<div class="nowrapfordate">';
1524 print $form->selectDate($search_date_modif_end ? $search_date_modif_end : -1,
'search_date_modif_end', 0, 0, 1,
'', 1, 0, 0,
'',
'',
'',
'', 1,
'', $langs->trans(
'to'));
1529if (!empty($arrayfields[
's.status'][
'checked'])) {
1530 print
'<td class="liste_titre center minwidth75imp parentonrightofpage">';
1531 print $form->selectarray(
'search_status', array(
'0' => $langs->trans(
'ActivityCeased'),
'1' => $langs->trans(
'InActivity')), $search_status, 1, 0, 0,
'', 0, 0, 0,
'',
'search_status width100 onrightofpage', 1);
1534if (!empty($arrayfields[
's.import_key'][
'checked'])) {
1535 print
'<td class="liste_titre center">';
1536 print
'<input class="flat searchstring maxwidth50" type="text" name="search_import_key" value="'.dol_escape_htmltag($search_import_key).
'">';
1541 print
'<td class="liste_titre center maxwidthsearch actioncolumn">';
1542 $searchpicto = $form->showFilterButtons();
1549$totalarray = array();
1550$totalarray[
'nbfield'] = 0;
1554print
'<tr class="liste_titre">';
1557 print
getTitleFieldOfList($selectedfields, 0, $_SERVER[
"PHP_SELF"],
'',
'',
'',
'', $sortfield, $sortorder,
'center maxwidthsearch ').
"\n";
1558 $totalarray[
'nbfield']++;
1560if (!empty($arrayfields[
's.rowid'][
'checked'])) {
1561 print_liste_field_titre($arrayfields[
's.rowid'][
'label'], $_SERVER[
"PHP_SELF"],
"s.rowid",
"", $param,
' data-key="id"', $sortfield, $sortorder,
'');
1562 $totalarray[
'nbfield']++;
1564if (!empty($arrayfields[
's.nom'][
'checked'])) {
1565 print_liste_field_titre($arrayfields[
's.nom'][
'label'], $_SERVER[
"PHP_SELF"],
"s.nom",
"", $param,
' data-key="ref"', $sortfield, $sortorder,
' ');
1566 $totalarray[
'nbfield']++;
1568if (!empty($arrayfields[
's.name_alias'][
'checked'])) {
1569 print_liste_field_titre($arrayfields[
's.name_alias'][
'label'], $_SERVER[
"PHP_SELF"],
"s.name_alias",
"", $param,
"", $sortfield, $sortorder);
1570 $totalarray[
'nbfield']++;
1572if (!empty($arrayfields[
's.barcode'][
'checked'])) {
1573 print_liste_field_titre($arrayfields[
's.barcode'][
'label'], $_SERVER[
"PHP_SELF"],
"s.barcode", $param,
'',
'', $sortfield, $sortorder);
1574 $totalarray[
'nbfield']++;
1576if (!empty($arrayfields[
's.code_client'][
'checked'])) {
1577 print_liste_field_titre($arrayfields[
's.code_client'][
'label'], $_SERVER[
"PHP_SELF"],
"s.code_client",
"", $param,
'', $sortfield, $sortorder);
1578 $totalarray[
'nbfield']++;
1580if (!empty($arrayfields[
's.code_fournisseur'][
'checked'])) {
1581 print_liste_field_titre($arrayfields[
's.code_fournisseur'][
'label'], $_SERVER[
"PHP_SELF"],
"s.code_fournisseur",
"", $param,
'', $sortfield, $sortorder);
1582 $totalarray[
'nbfield']++;
1584if (!empty($arrayfields[
's.code_compta'][
'checked'])) {
1585 print_liste_field_titre($arrayfields[
's.code_compta'][
'label'], $_SERVER[
"PHP_SELF"],
"s.code_compta",
"", $param,
'', $sortfield, $sortorder);
1586 $totalarray[
'nbfield']++;
1588if (!empty($arrayfields[
's.code_compta_fournisseur'][
'checked'])) {
1589 print_liste_field_titre($arrayfields[
's.code_compta_fournisseur'][
'label'], $_SERVER[
"PHP_SELF"],
"s.code_compta_fournisseur",
"", $param,
'', $sortfield, $sortorder);
1590 $totalarray[
'nbfield']++;
1592if (!empty($arrayfields[
's.address'][
'checked'])) {
1593 print_liste_field_titre($arrayfields[
's.address'][
'label'], $_SERVER[
'PHP_SELF'],
's.address',
'', $param,
'', $sortfield, $sortorder);
1594 $totalarray[
'nbfield']++;
1596if (!empty($arrayfields[
'sales.representative'][
'checked'])) {
1597 print_liste_field_titre($arrayfields[
'sales.representative'][
'label'], $_SERVER[
'PHP_SELF'],
'',
'', $param,
'', $sortfield, $sortorder);
1598 $totalarray[
'nbfield']++;
1600if (!empty($arrayfields[
's.zip'][
'checked'])) {
1601 print_liste_field_titre($arrayfields[
's.zip'][
'label'], $_SERVER[
"PHP_SELF"],
"s.zip",
"", $param,
'', $sortfield, $sortorder);
1602 $totalarray[
'nbfield']++;
1604if (!empty($arrayfields[
's.town'][
'checked'])) {
1605 print_liste_field_titre($arrayfields[
's.town'][
'label'], $_SERVER[
"PHP_SELF"],
"s.town",
"", $param,
'', $sortfield, $sortorder);
1606 $totalarray[
'nbfield']++;
1608if (!empty($arrayfields[
'state.nom'][
'checked'])) {
1609 print_liste_field_titre($arrayfields[
'state.nom'][
'label'], $_SERVER[
"PHP_SELF"],
"state.nom",
"", $param,
'', $sortfield, $sortorder);
1610 $totalarray[
'nbfield']++;
1612if (!empty($arrayfields[
'region.nom'][
'checked'])) {
1613 print_liste_field_titre($arrayfields[
'region.nom'][
'label'], $_SERVER[
"PHP_SELF"],
"region.nom",
"", $param,
'', $sortfield, $sortorder);
1614 $totalarray[
'nbfield']++;
1616if (!empty($arrayfields[
'country.code_iso'][
'checked'])) {
1617 print_liste_field_titre($arrayfields[
'country.code_iso'][
'label'], $_SERVER[
"PHP_SELF"],
"country.code_iso",
"", $param,
'', $sortfield, $sortorder,
'center ');
1618 $totalarray[
'nbfield']++;
1620if (!empty($arrayfields[
'typent.code'][
'checked'])) {
1621 print_liste_field_titre($arrayfields[
'typent.code'][
'label'], $_SERVER[
"PHP_SELF"],
"typent.code",
"", $param,
"", $sortfield, $sortorder,
'center ');
1622 $totalarray[
'nbfield']++;
1624if (!empty($arrayfields[
'staff.code'][
'checked'])) {
1625 print_liste_field_titre($arrayfields[
'staff.code'][
'label'], $_SERVER[
"PHP_SELF"],
"staff.code",
"", $param,
'', $sortfield, $sortorder,
'center ');
1626 $totalarray[
'nbfield']++;
1628if (!empty($arrayfields[
'legalform.code'][
'checked'])) {
1630 print_liste_field_titre($arrayfields[
'legalform.code'][
'label'], $_SERVER[
"PHP_SELF"],
"legalform_code",
"", $param,
'', $sortfield, $sortorder);
1631 $totalarray[
'nbfield']++;
1633if (!empty($arrayfields[
's.price_level'][
'checked'])) {
1634 print_liste_field_titre($arrayfields[
's.price_level'][
'label'], $_SERVER[
"PHP_SELF"],
"s.price_level",
"", $param,
'', $sortfield, $sortorder);
1635 $totalarray[
'nbfield']++;
1637if (!empty($arrayfields[
's.email'][
'checked'])) {
1638 print_liste_field_titre($arrayfields[
's.email'][
'label'], $_SERVER[
"PHP_SELF"],
"s.email",
"", $param,
'', $sortfield, $sortorder);
1639 $totalarray[
'nbfield']++;
1641if (!empty($arrayfields[
's.phone'][
'checked'])) {
1642 print_liste_field_titre($arrayfields[
's.phone'][
'label'], $_SERVER[
"PHP_SELF"],
"s.phone",
"", $param,
'', $sortfield, $sortorder);
1643 $totalarray[
'nbfield']++;
1645if (!empty($arrayfields[
's.phone_mobile'][
'checked'])) {
1646 print_liste_field_titre($arrayfields[
's.phone_mobile'][
'label'], $_SERVER[
"PHP_SELF"],
"s.phone_mobile",
"", $param,
'', $sortfield, $sortorder);
1647 $totalarray[
'nbfield']++;
1649if (!empty($arrayfields[
's.fax'][
'checked'])) {
1650 print_liste_field_titre($arrayfields[
's.fax'][
'label'], $_SERVER[
"PHP_SELF"],
"s.fax",
"", $param,
'', $sortfield, $sortorder);
1651 $totalarray[
'nbfield']++;
1653if (!empty($arrayfields[
's.url'][
'checked'])) {
1654 print_liste_field_titre($arrayfields[
's.url'][
'label'], $_SERVER[
"PHP_SELF"],
"s.url",
"", $param,
'', $sortfield, $sortorder);
1655 $totalarray[
'nbfield']++;
1657if (!empty($arrayfields[
's.siren'][
'checked'])) {
1658 print_liste_field_titre($form->textwithpicto($langs->trans(
"ProfId1Short"), $textprofid[1], 1, 0), $_SERVER[
"PHP_SELF"],
"s.siren",
"", $param,
'', $sortfield, $sortorder,
'nowrap ');
1659 $totalarray[
'nbfield']++;
1661if (!empty($arrayfields[
's.siret'][
'checked'])) {
1662 print_liste_field_titre($form->textwithpicto($langs->trans(
"ProfId2Short"), $textprofid[2], 1, 0), $_SERVER[
"PHP_SELF"],
"s.siret",
"", $param,
'', $sortfield, $sortorder,
'nowrap ');
1663 $totalarray[
'nbfield']++;
1665if (!empty($arrayfields[
's.ape'][
'checked'])) {
1666 print_liste_field_titre($form->textwithpicto($langs->trans(
"ProfId3Short"), $textprofid[3], 1, 0), $_SERVER[
"PHP_SELF"],
"s.ape",
"", $param,
'', $sortfield, $sortorder,
'nowrap ');
1667 $totalarray[
'nbfield']++;
1669if (!empty($arrayfields[
's.idprof4'][
'checked'])) {
1670 print_liste_field_titre($form->textwithpicto($langs->trans(
"ProfId4Short"), $textprofid[4], 1, 0), $_SERVER[
"PHP_SELF"],
"s.idprof4",
"", $param,
'', $sortfield, $sortorder,
'nowrap ');
1671 $totalarray[
'nbfield']++;
1673if (!empty($arrayfields[
's.idprof5'][
'checked'])) {
1674 print_liste_field_titre($form->textwithpicto($langs->trans(
"ProfId5Short"), $textprofid[5], 1, 0), $_SERVER[
"PHP_SELF"],
"s.idprof5",
"", $param,
'', $sortfield, $sortorder,
'nowrap ');
1675 $totalarray[
'nbfield']++;
1677if (!empty($arrayfields[
's.idprof6'][
'checked'])) {
1678 print_liste_field_titre($form->textwithpicto($langs->trans(
"ProfId6Short"), $textprofid[6], 1, 0), $_SERVER[
"PHP_SELF"],
"s.idprof6",
"", $param,
'', $sortfield, $sortorder,
'nowrap ');
1679 $totalarray[
'nbfield']++;
1681if (!empty($arrayfields[
's.tva_intra'][
'checked'])) {
1682 print_liste_field_titre($arrayfields[
's.tva_intra'][
'label'], $_SERVER[
"PHP_SELF"],
"s.tva_intra",
"", $param,
'', $sortfield, $sortorder,
'nowrap ');
1683 $totalarray[
'nbfield']++;
1685if (!empty($arrayfields[
'customerorsupplier'][
'checked'])) {
1686 print_liste_field_titre($arrayfields[
'customerorsupplier'][
'label'], $_SERVER[
'PHP_SELF'],
'',
'', $param,
'', $sortfield, $sortorder,
'center ');
1687 $totalarray[
'nbfield']++;
1689if (!empty($arrayfields[
's.fk_prospectlevel'][
'checked'])) {
1690 print_liste_field_titre($arrayfields[
's.fk_prospectlevel'][
'label'], $_SERVER[
"PHP_SELF"],
"s.fk_prospectlevel",
"", $param,
'', $sortfield, $sortorder,
'center ');
1691 $totalarray[
'nbfield']++;
1693if (!empty($arrayfields[
's.fk_stcomm'][
'checked'])) {
1694 print_liste_field_titre($arrayfields[
's.fk_stcomm'][
'label'], $_SERVER[
"PHP_SELF"],
"s.fk_stcomm",
"", $param,
'', $sortfield, $sortorder,
'center ');
1695 $totalarray[
'nbfield']++;
1697if (!empty($arrayfields[
's2.nom'][
'checked'])) {
1698 print_liste_field_titre($arrayfields[
's2.nom'][
'label'], $_SERVER[
"PHP_SELF"],
"s2.nom",
"", $param,
'', $sortfield, $sortorder,
'center ');
1699 $totalarray[
'nbfield']++;
1702include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_list_search_title.tpl.php';
1704$parameters = array(
'arrayfields' => $arrayfields,
'param' => $param,
'sortfield' => $sortfield,
'sortorder' => $sortorder);
1705$reshook = $hookmanager->executeHooks(
'printFieldListTitle', $parameters, $object, $action);
1706print $hookmanager->resPrint;
1707if (!empty($arrayfields[
's.datec'][
'checked'])) {
1708 print_liste_field_titre($arrayfields[
's.datec'][
'label'], $_SERVER[
"PHP_SELF"],
"s.datec",
"", $param,
'', $sortfield, $sortorder,
'center nowrap ');
1709 $totalarray[
'nbfield']++;
1711if (!empty($arrayfields[
's.tms'][
'checked'])) {
1712 print_liste_field_titre($arrayfields[
's.tms'][
'label'], $_SERVER[
"PHP_SELF"],
"s.tms",
"", $param,
'', $sortfield, $sortorder,
'center nowrap ');
1713 $totalarray[
'nbfield']++;
1715if (!empty($arrayfields[
's.status'][
'checked'])) {
1716 print_liste_field_titre($arrayfields[
's.status'][
'label'], $_SERVER[
"PHP_SELF"],
"s.status",
"", $param,
'', $sortfield, $sortorder,
'center ');
1717 $totalarray[
'nbfield']++;
1719if (!empty($arrayfields[
's.import_key'][
'checked'])) {
1720 print_liste_field_titre($arrayfields[
's.import_key'][
'label'], $_SERVER[
"PHP_SELF"],
"s.import_key",
"", $param,
'', $sortfield, $sortorder,
'center ');
1721 $totalarray[
'nbfield']++;
1725 print
getTitleFieldOfList($selectedfields, 0, $_SERVER[
"PHP_SELF"],
'',
'',
'',
'', $sortfield, $sortorder,
'center maxwidthsearch ').
"\n";
1726 $totalarray[
'nbfield']++;
1734$savnbfield = $totalarray[
'nbfield'];
1735$totalarray = array();
1736$totalarray[
'nbfield'] = 0;
1737$imaxinloop = ($limit ? min($num, $limit) : $num);
1738while ($i < $imaxinloop) {
1739 $obj = $db->fetch_object($resql);
1744 $parameters = array(
'staticdata' => $obj);
1747 $reshook = $hookmanager->executeHooks(
'loadStaticObject', $parameters, $companystatic, $action);
1748 if (empty($reshook)) {
1749 $companystatic->id = $obj->rowid;
1750 $companystatic->name = $obj->name;
1751 $companystatic->name_alias = $obj->name_alias;
1752 $companystatic->logo = $obj->logo;
1753 $companystatic->barcode = $obj->barcode;
1754 $companystatic->canvas = $obj->canvas;
1755 $companystatic->client = $obj->client;
1756 $companystatic->status = $obj->status;
1757 $companystatic->email = $obj->email;
1758 $companystatic->address = $obj->address;
1759 $companystatic->zip = $obj->zip;
1760 $companystatic->town = $obj->town;
1761 $companystatic->fournisseur = $obj->fournisseur;
1762 $companystatic->code_client = $obj->code_client;
1763 $companystatic->code_fournisseur = $obj->code_fournisseur;
1764 $companystatic->tva_intra = $obj->tva_intra;
1765 $companystatic->country_code = $obj->country_code;
1767 $companystatic->code_compta_client = $obj->code_compta;
1768 $companystatic->code_compta_fournisseur = $obj->code_compta_fournisseur;
1770 $companystatic->fk_prospectlevel = $obj->fk_prospectlevel;
1771 $companystatic->parent = $obj->fk_parent;
1772 $companystatic->entity = $obj->entity;
1777 if ($mode ==
'kanban') {
1779 print
'<tr class="trkanban"><td colspan="'.$savnbfield.
'">';
1780 print
'<div class="box-flex-container kanban">';
1783 print $companystatic->getKanbanView(
'', array(
'selected' => in_array($obj->rowid, $arrayofselected)));
1784 if ($i == ($imaxinloop - 1)) {
1791 print
'<tr data-rowid="'.$companystatic->id.
'" class="oddeven"';
1792 if ($contextpage ==
'poslist') {
1793 print
' onclick="location.href=\'list.php?action=change&contextpage=poslist&idcustomer='.$obj->rowid.
'&place='.urlencode($place).
'\'"';
1797 // Action column (Show the massaction button only when this page is not opend from the Extended POS)
1798 if (getDolGlobalString('MAIN_CHECKBOX_LEFT_COLUMN')) {
1799 print '<td class="nowrap center actioncolumn
">';
1800 if (($massactionbutton || $massaction) && $contextpage != 'poslist') { // If we are in select mode (massactionbutton defined) or if we have already selected and sent an action ($massaction) defined
1802 if (in_array($obj->rowid, $arrayofselected)) {
1805 print '<input id="cb
'.$obj->rowid.'" class="flat checkforselect
" type="checkbox
" name="toselect[]
" value="'.$obj->rowid.'"'.($selected ? ' checked="checked
"' : '').'>';
1809 $totalarray['nbfield']++;
1812 if (!empty($arrayfields['s.rowid']['checked'])) {
1813 print '<td class="tdoverflowmax50
" data-key="id">';
1814 print dol_escape_htmltag($obj->rowid);
1817 $totalarray['nbfield']++;
1820 if (!empty($arrayfields['s.nom']['checked'])) {
1821 print '<td'.(getDolGlobalString('MAIN_SOCIETE_SHOW_COMPLETE_NAME') ? '' : ' class="tdoverflowmax200
"').' data-key="ref">';
1822 if ($contextpage == 'poslist') {
1823 print dol_escape_htmltag($companystatic->name);
1825 print $companystatic->getNomUrl(1, '', 100, 0, 1, empty($arrayfields['s.name_alias']['checked']) ? 0 : 1);
1829 $totalarray['nbfield']++;
1832 if (!empty($arrayfields['s.name_alias']['checked'])) {
1833 print '<td class="tdoverflowmax150
" title="'.dol_escape_htmltag($companystatic->name_alias).'">';
1834 print dol_escape_htmltag($companystatic->name_alias);
1837 $totalarray['nbfield']++;
1841 if (!empty($arrayfields['s.barcode']['checked'])) {
1842 print '<td class="tdoverflowmax150
" title="'.dol_escape_htmltag($companystatic->barcode).'">'.dol_escape_htmltag($companystatic->barcode).'</td>';
1844 $totalarray['nbfield']++;
1848 if (!empty($arrayfields['s.code_client']['checked'])) {
1849 print '<td class="nowraponall
">'.dol_escape_htmltag($companystatic->code_client).'</td>';
1851 $totalarray['nbfield']++;
1855 if (!empty($arrayfields['s.code_fournisseur']['checked'])) {
1856 print '<td class="nowraponall
">'.dol_escape_htmltag($companystatic->code_fournisseur).'</td>';
1858 $totalarray['nbfield']++;
1861 // Account customer code
1862 if (!empty($arrayfields['s.code_compta']['checked'])) {
1863 print '<td>'.dol_escape_htmltag($companystatic->code_compta_client).'</td>';
1865 $totalarray['nbfield']++;
1868 // Account supplier code
1869 if (!empty($arrayfields['s.code_compta_fournisseur']['checked'])) {
1870 print '<td>'.dol_escape_htmltag($companystatic->code_compta_fournisseur).'</td>';
1872 $totalarray['nbfield']++;
1876 if (!empty($arrayfields['s.address']['checked'])) {
1877 print '<td class="tdoverflowmax250
" title="'.dol_escape_htmltag($companystatic->address).'">'.dol_escape_htmltag($companystatic->address).'</td>';
1879 $totalarray['nbfield']++;
1882 // Sales Representative
1883 if (!empty($arrayfields['sales.representative']['checked'])) {
1884 print '<td class="nowraponall tdoverflowmax200
">';
1885 $listsalesrepresentatives = $companystatic->getSalesRepresentatives($user);
1886 $nbofsalesrepresentative = count($listsalesrepresentatives);
1887 if ($nbofsalesrepresentative > 6) {
1888 // We print only number
1889 print $nbofsalesrepresentative;
1890 } elseif ($nbofsalesrepresentative > 0) {
1891 $userstatic = new User($db);
1893 foreach ($listsalesrepresentatives as $val) {
1894 $userstatic->id = $val['id'];
1895 $userstatic->lastname = $val['lastname'];
1896 $userstatic->firstname = $val['firstname'];
1897 $userstatic->email = $val['email'];
1898 $userstatic->entity = $val['entity'];
1899 $userstatic->photo = $val['photo'];
1900 $userstatic->login = $val['login'];
1901 $userstatic->office_phone = $val['office_phone'];
1902 $userstatic->office_fax = $val['office_fax'];
1903 $userstatic->user_mobile = $val['user_mobile'];
1904 $userstatic->job = $val['job'];
1905 $userstatic->gender = $val['gender'];
1906 $userstatic->statut = $val['statut'];
1907 print ($nbofsalesrepresentative < 2) ? $userstatic->getNomUrl(-1, '', 0, 0, 12) : $userstatic->getNomUrl(-2);
1909 if ($j < $nbofsalesrepresentative) {
1918 $totalarray['nbfield']++;
1922 if (!empty($arrayfields['s.zip']['checked'])) {
1923 print "<td>
".dol_escape_htmltag($companystatic->zip)."</td>\n
";
1925 $totalarray['nbfield']++;
1929 if (!empty($arrayfields['s.town']['checked'])) {
1930 print '<td class="tdoverflowmax150
" title="'.dol_escape_htmltag($companystatic->town).'">'.dol_escape_htmltag($companystatic->town)."</td>\n
";
1932 $totalarray['nbfield']++;
1936 if (!empty($arrayfields['state.nom']['checked'])) {
1937 print "<td>
".dol_escape_htmltag($obj->state_name)."</td>\n
";
1939 $totalarray['nbfield']++;
1943 if (!empty($arrayfields['region.nom']['checked'])) {
1944 print "<td>
".dol_escape_htmltag($obj->region_name)."</td>\n
";
1946 $totalarray['nbfield']++;
1950 if (!empty($arrayfields['country.code_iso']['checked'])) {
1951 print '<td class="center tdoverflowmax100
">';
1952 $labelcountry = ($companystatic->country_code && ($langs->trans("Country
".$companystatic->country_code) != "Country
".$companystatic->country_code)) ? $langs->trans("Country
".$companystatic->country_code) : $obj->country_label;
1953 print $labelcountry;
1956 $totalarray['nbfield']++;
1960 if (!empty($arrayfields['typent.code']['checked'])) {
1961 if (!isset($typenArray) || !is_array($typenArray) || count($typenArray) == 0) {
1962 $typenArray = $formcompany->typent_array(1);
1964 $labeltypeofcompany = empty($typenArray[$obj->typent_code]) ? '' : $typenArray[$obj->typent_code];
1966 print '<td class="center tdoverflowmax125
" title="'.dol_escape_htmltag($labeltypeofcompany).'">';
1967 print dol_escape_htmltag($labeltypeofcompany);
1970 $totalarray['nbfield']++;
1974 if (!empty($arrayfields['s.price_level']['checked'])) {
1975 print '<td class="center
">'.$obj->price_level."</td>\n
";
1977 $totalarray['nbfield']++;
1981 if (!empty($arrayfields['staff.code']['checked'])) {
1982 print '<td class="center
">';
1983 if (!empty($obj->staff_code)) {
1984 if (empty($conf->cache['staffArray'])) {
1985 $conf->cache['staffArray'] = $formcompany->effectif_array(1);
1987 print $conf->cache['staffArray'][$obj->staff_code];
1991 $totalarray['nbfield']++;
1995 if (!empty($arrayfields['legalform.code']['checked'])) {
1997 if (!empty($obj->legalform_code)) {
1998 if (empty($conf->cache['legalformArray'][$obj->legalform_code])) {
1999 $conf->cache['legalformArray'][$obj->legalform_code] = getFormeJuridiqueLabel($obj->legalform_code);
2001 $labeltoshow = $conf->cache['legalformArray'][$obj->legalform_code];
2003 print '<td class="center tdoverflowmax100
" title="'.dol_escape_htmltag($labeltoshow).'">';
2004 print dol_escape_htmltag($labeltoshow);
2007 $totalarray['nbfield']++;
2011 if (!empty($arrayfields['s.email']['checked'])) {
2012 print '<td class="tdoverflowmax150
">'.dol_print_email($obj->email, $obj->rowid, $obj->rowid, 1, 0, 0, 1)."</td>\n
";
2014 $totalarray['nbfield']++;
2017 if (!empty($arrayfields['s.phone']['checked'])) {
2018 print '<td class="nowraponall
">'.dol_print_phone($obj->phone, $companystatic->country_code, 0, $obj->rowid, 'AC_TEL', ' ', 'phone')."</td>\n
";
2020 $totalarray['nbfield']++;
2023 if (!empty($arrayfields['s.phone_mobile']['checked'])) {
2024 print '<td class="nowraponall
">'.dol_print_phone($obj->phone_mobile, $companystatic->country_code, 0, $obj->rowid, 'AC_TEL', ' ', 'phone_mobile')."</td>\n
";
2026 $totalarray['nbfield']++;
2029 if (!empty($arrayfields['s.fax']['checked'])) {
2030 print '<td class="nowraponall
">'.dol_print_phone($obj->fax, $companystatic->country_code, 0, $obj->rowid, 'AC_TEL', ' ', 'fax')."</td>\n
";
2032 $totalarray['nbfield']++;
2035 if (!empty($arrayfields['s.url']['checked'])) {
2036 print "<td>
".dol_print_url($obj->url, '', '', 1)."</td>\n
";
2038 $totalarray['nbfield']++;
2041 if (!empty($arrayfields['s.siren']['checked'])) {
2042 print "<td>
".$obj->idprof1."</td>\n
";
2044 $totalarray['nbfield']++;
2047 if (!empty($arrayfields['s.siret']['checked'])) {
2048 print "<td>
".$obj->idprof2."</td>\n
";
2050 $totalarray['nbfield']++;
2053 if (!empty($arrayfields['s.ape']['checked'])) {
2054 print "<td>
".$obj->idprof3."</td>\n
";
2056 $totalarray['nbfield']++;
2059 if (!empty($arrayfields['s.idprof4']['checked'])) {
2060 print "<td>
".$obj->idprof4."</td>\n
";
2062 $totalarray['nbfield']++;
2065 if (!empty($arrayfields['s.idprof5']['checked'])) {
2066 print "<td>
".$obj->idprof5."</td>\n
";
2068 $totalarray['nbfield']++;
2071 if (!empty($arrayfields['s.idprof6']['checked'])) {
2072 print "<td>
".$obj->idprof6."</td>\n
";
2074 $totalarray['nbfield']++;
2078 if (!empty($arrayfields['s.tva_intra']['checked'])) {
2079 print '<td class="tdoverflowmax125
" title="'.dol_escape_htmltag($companystatic->tva_intra).'">';
2080 if ($companystatic->tva_intra && !isValidVATID($companystatic)) {
2081 print img_warning("BadVATNumber
", '', 'pictofixedwidth');
2083 print $companystatic->tva_intra;
2086 $totalarray['nbfield']++;
2090 if (!empty($arrayfields['customerorsupplier']['checked'])) {
2091 print '<td class="center
">';
2092 print $companystatic->getTypeUrl(1);
2095 $totalarray['nbfield']++;
2099 if (!empty($arrayfields['s.fk_prospectlevel']['checked'])) {
2100 print '<td class="center nowraponall
">';
2101 print $companystatic->getLibProspLevel();
2104 $totalarray['nbfield']++;
2108 if (!empty($arrayfields['s.fk_stcomm']['checked'])) {
2109 print '<td class="center nowraponall
">';
2111 $prospectid = $obj->rowid;
2112 $statusprospect = $obj->stcomm_id;
2114 $formcompany->selectProspectStatus('status_prospect', $prospectstatic, $statusprospect, $prospectid);
2118 $totalarray['nbfield']++;
2122 if (!empty($arrayfields['s2.nom']['checked'])) {
2123 print '<td class="center tdoverflowmax100
">';
2124 if ($companystatic->parent > 0) {
2125 $companyparent->fetch($companystatic->parent);
2126 print $companyparent->getNomUrl(1);
2130 $totalarray['nbfield']++;
2134 include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_print_fields.tpl.php';
2136 $parameters = array('arrayfields' => $arrayfields, 'obj' => $obj, 'i' => $i, 'totalarray' => &$totalarray);
2137 $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
2138 print $hookmanager->resPrint;
2140 if (!empty($arrayfields['s.datec']['checked'])) {
2141 print '<td class="center nowraponall
">';
2142 print dol_print_date($db->jdate($obj->date_creation), 'dayhour', 'tzuser');
2145 $totalarray['nbfield']++;
2148 // Date modification
2149 if (!empty($arrayfields['s.tms']['checked'])) {
2150 print '<td class="center nowraponall
">';
2151 print dol_print_date($db->jdate($obj->date_modification), 'dayhour', 'tzuser');
2154 $totalarray['nbfield']++;
2158 if (!empty($arrayfields['s.status']['checked'])) {
2159 print '<td class="center nowraponall
">'.$companystatic->getLibStatut(5).'</td>';
2161 $totalarray['nbfield']++;
2165 if (!empty($arrayfields['s.import_key']['checked'])) {
2166 print '<td class="tdoverflowmax125
" title="'.dol_escape_htmltag($obj->import_key).'">';
2167 print dol_escape_htmltag($obj->import_key);
2170 $totalarray['nbfield']++;
2173 // Action column (Show the massaction button only when this page is not opend from the Extended POS)
2174 if (!getDolGlobalString('MAIN_CHECKBOX_LEFT_COLUMN')) {
2175 print '<td class="nowrap center actioncolumn
">';
2176 if (($massactionbutton || $massaction) && $contextpage != 'poslist') { // If we are in select mode (massactionbutton defined) or if we have already selected and sent an action ($massaction) defined
2178 if (in_array($obj->rowid, $arrayofselected)) {
2181 print '<input id="cb
'.$obj->rowid.'" class="flat checkforselect
" type="checkbox
" name="toselect[]
" value="'.$obj->rowid.'"'.($selected ? ' checked="checked
"' : '').'>';
2185 $totalarray['nbfield']++;
2195include DOL_DOCUMENT_ROOT.'/core/tpl/list_print_total.tpl.php';
2197// If no record found
2200 foreach ($arrayfields as $key => $val) {
2201 if (!empty($val['checked'])) {
2205 print '<tr><td colspan="'.$colspan.'"><span class="opacitymedium
">'.$langs->trans("NoRecordFound
").'</span></td></tr>';
2210$parameters = array('arrayfields' => $arrayfields, 'sql' => $sql);
2211$reshook = $hookmanager->executeHooks('printFieldListFooter', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
2212print $hookmanager->resPrint;
2214print '</table>'."\n
";
2217// Line that calls the select_status function by passing it js as the 5th parameter in order to activate the js script
2218$formcompany->selectProspectStatus('status_prospect', $prospectstatic, null, null, "js
");
2220print '</form>'."\n
";
if( $user->socid > 0) if(! $user->hasRight('accounting', 'chartofaccount')) $object
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader()
Empty header.
Class to manage customers or prospects.
Class to manage invoices.
Class to manage third parties objects (customers, suppliers, prospects...)
dol_mktime($hour, $minute, $second, $month, $day, $year, $gm='auto', $check=1)
Return a timestamp date built from detailed information (by default a local PHP server timestamp) Rep...
dolExplodeIntoArray($string, $delimiter=';', $kv='=')
Split a string with 2 keys into key array.
img_warning($titlealt='default', $moreatt='', $morecss='pictowarning')
Show warning logo.
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=0, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2)
Show picto whatever it's its name (generic function)
GETPOSTINT($paramname, $method=0)
Return the value of a $_GET or $_POST supervariable, converted into integer.
dolGetButtonTitle($label, $helpText='', $iconClass='fa fa-file', $url='', $id='', $status=1, $params=array())
Function dolGetButtonTitle : this kind of buttons are used in title in list.
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...
dol_now($mode='auto')
Return date for now.
getDolGlobalInt($key, $default=0)
Return a Dolibarr global constant int value.
dol_getIdFromCode($db, $key, $tablename, $fieldkey='code', $fieldid='id', $entityfilter=0, $filters='')
Return an id or code from a code or id.
dol_sort_array(&$array, $index, $order='asc', $natsort=0, $case_sensitive=0, $keepindex=0)
Advanced sort array by the value of a given key, which produces ascending (default) or descending out...
print_liste_field_titre($name, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="", $prefix="", $tooltip="", $forcenowrapcolumntitle=0)
Show title line of an array.
getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="", $prefix="", $disablesortlink=0, $tooltip='', $forcenowrapcolumntitle=0)
Get title line of an array.
print_barre_liste($title, $page, $file, $options='', $sortfield='', $sortorder='', $morehtmlcenter='', $num=-1, $totalnboflines='', $picto='generic', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limit=-1, $hideselectlimit=0, $hidenavigation=0, $pagenavastextinput=0, $morehtmlrightbeforearrow='')
Print a title with navigation controls for pagination.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0)
Set event messages in dol_events session object.
dol_print_error($db=null, $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
get_htmloutput_mesg($mesgstring='', $mesgarray=[], $style='ok', $keepembedded=0)
Get formatted messages to output (Used to show messages on html output).
getDolGlobalString($key, $default='')
Return dolibarr global constant string value.
getEntity($element, $shared=1, $currentobject=null)
Get list of entity id to use.
restrictedArea(User $user, $features, $object=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $isdraft=0, $mode=0)
Check permissions of a user to show a page and an object.