dolibarr  13.0.2
advtarget.tpl.php
1 <?php
2 /*
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 3 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program. If not, see <https://www.gnu.org/licenses/>.
16  */
17 
18 if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
19  require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
20 }
21 
22 print '<script>
23  $(document).ready(function() {
24 
25  // Click Function
26  $(":button[name=addcontact]").click(function() {
27  $(":hidden[name=action]").val("add");
28  $("#find_customer").submit();
29  });
30 
31  $(":button[name=loadfilter]").click(function() {
32  $(":hidden[name=action]").val("loadfilter");
33  $("#find_customer").submit();
34  });
35 
36  $(":button[name=deletefilter]").click(function() {
37  $(":hidden[name=action]").val("deletefilter");
38  $("#find_customer").submit();
39  });
40 
41  $(":button[name=savefilter]").click(function() {
42  $(":hidden[name=action]").val("savefilter");
43  $("#find_customer").submit();
44  });
45 
46  $(":button[name=createfilter]").click(function() {
47  $(":hidden[name=action]").val("createfilter");
48  $("#find_customer").submit();
49  });
50  });
51 </script>';
52 
53 
54 print load_fiche_titre($langs->trans("AdvTgtTitle"));
55 
56 print '<div class="tabBar">'."\n";
57 print '<form name="find_customer" id="find_customer" action="'.$_SERVER['PHP_SELF'].'?id='.$id.'" method="POST">'."\n";
58 print '<input type="hidden" name="token" value="'.newToken().'">'."\n";
59 print '<input type="hidden" name="action" value="">'."\n";
60 print '<table class="border centpercent">'."\n";
61 
62 print '<tr>'."\n";
63 print '<td colspan="3" class="right">'."\n";
64 
65 print '<input type="button" name="addcontact" id="addcontact" value="'.$langs->trans('AdvTgtAddContact').'" class="button"/>'."\n";
66 
67 print '</td>'."\n";
68 print '</tr>'."\n";
69 
70 print '<tr><td>'.$langs->trans('AdvTgtNameTemplate').'</td><td class="valignmiddle">';
71 if (!empty($template_id)) {
72  $default_template = $template_id;
73 } else {
74  $default_template = $advTarget->id;
75 }
76 print $formadvtargetemaling->selectAdvtargetemailingTemplate('template_id', $default_template, 0, $advTarget->type_element, 'valignmiddle');
77 print '<input type="button" name="loadfilter" id="loadfilter" value="'.$langs->trans('AdvTgtLoadFilter').'" class="button"/>';
78 print '<input type="button" name="deletefilter" id="deletefilter" value="'.$langs->trans('AdvTgtDeleteFilter').'" class="button"/>';
79 print '<input type="button" name="savefilter" id="savefilter" value="'.$langs->trans('AdvTgtSaveFilter').'" class="button"/>';
80 print '</td><td>'."\n";
81 print '</td></tr>'."\n";
82 
83 print '<tr><td>'.$langs->trans('AdvTgtOrCreateNewFilter').'</td><td>';
84 print '<input type="text" name="template_name" id="template_name" value=""/>';
85 print '<input type="button" name="createfilter" id="createfilter" value="'.$langs->trans('AdvTgtCreateFilter').'" class="button"/>';
86 print '</td><td>'."\n";
87 print '</td></tr>'."\n";
88 
89 print '<tr><td>'.$langs->trans('AdvTgtTypeOfIncude').'</td><td>';
90 print $form->selectarray('type_of_target', $advTarget->select_target_type, $array_query['type_of_target']);
91 print '</td><td>'."\n";
92 print $form->textwithpicto('', $langs->trans("AdvTgtTypeOfIncudeHelp"), 1, 'help');
93 print '</td></tr>'."\n";
94 
95 // Customer name
96 print '<tr><td>'.$langs->trans('ThirdPartyName');
97 if (!empty($array_query['cust_name'])) {
98  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
99 }
100 print '</td><td><input type="text" name="cust_name" value="'.$array_query['cust_name'].'"/></td><td>'."\n";
101 print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
102 print '</td></tr>'."\n";
103 
104 // Code Client
105 print '<tr><td>'.$langs->trans('CustomerCode');
106 if (!empty($array_query['cust_code'])) {
107  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
108 }
109 print '</td><td><input type="text" name="cust_code" value="'.$array_query['cust_code'].'"/></td><td>'."\n";
110 print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
111 print '</td></tr>'."\n";
112 
113 // Address Client
114 print '<tr><td>'.$langs->trans('Address');
115 if (!empty($array_query['cust_adress'])) {
116  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
117 }
118 print '</td><td><input type="text" name="cust_adress" value="'.$array_query['cust_adress'].'"/></td><td>'."\n";
119 print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
120 print '</td></tr>'."\n";
121 
122 // Zip Client
123 print '<tr><td>'.$langs->trans('Zip');
124 if (!empty($array_query['cust_zip'])) {
125  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
126 }
127 print '</td><td><input type="text" name="cust_zip" value="'.$array_query['cust_zip'].'"/></td><td>'."\n";
128 print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
129 print '</td></tr>'."\n";
130 
131 // City Client
132 print '<tr><td>'.$langs->trans('Town');
133 if (!empty($array_query['cust_city'])) {
134  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
135 }
136 print '</td><td><input type="text" name="cust_city" value="'.$array_query['cust_city'].'"/></td><td>'."\n";
137 print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
138 print '</td></tr>'."\n";
139 
140 // Customer Country
141 print '<tr><td>'.$langs->trans("Country");
142 if (!empty($array_query['cust_country'])) {
143  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
144 }
145 print '</td><td>'."\n";
146 print $formadvtargetemaling->multiselectCountry('cust_country', $array_query['cust_country']);
147 print '</td><td>'."\n";
148 print '</td></tr>'."\n";
149 
150 // State Customer
151 print '<tr><td>'.$langs->trans('Status').' '.$langs->trans('ThirdParty');
152 if (!empty($array_query['cust_status'])) {
153  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
154 }
155 print '</td><td>';
156 print $formadvtargetemaling->advMultiselectarray(
157  'cust_status', array(
158  '0' => $langs->trans('ActivityCeased'),
159  '1' => $langs->trans('InActivity')
160  ),
161  $array_query['cust_status']
162 );
163 print '</td><td>'."\n";
164 print '</td></tr>'."\n";
165 
166 // Mother Company
167 print '<tr><td>'.$langs->trans("Maison mère");
168 if (!empty($array_query['cust_mothercompany'])) {
169  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
170 }
171 print '</td><td>'."\n";
172 print '<input type="text" name="cust_mothercompany" value="'.$array_query['cust_mothercompany'].'"/>';
173 print '</td><td>'."\n";
174 print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
175 print '</td></tr>'."\n";
176 
177 // Prospect/Customer
178 $selected = $array_query['cust_typecust'];
179 print '<tr><td>'.$langs->trans('ProspectCustomer').' '.$langs->trans('ThirdParty');
180 if (!empty($array_query['cust_typecust'])) {
181  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
182 }
183 print '</td><td>';
184 $options_array = array(
185  2 => $langs->trans('Prospect'),
186  3 => $langs->trans('ProspectCustomer'),
187  1 => $langs->trans('Customer'),
188  0 => $langs->trans('NorProspectNorCustomer')
189 );
190 print $formadvtargetemaling->advMultiselectarray('cust_typecust', $options_array, $array_query['cust_typecust']);
191 print '</td><td>'."\n";
192 print '</td></tr>'."\n";
193 
194 // Prospection status
195 print '<tr><td>'.$langs->trans('ProspectLevel');
196 if (!empty($array_query['cust_prospect_status'])) {
197  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
198 }
199 print '</td><td>';
200 print $formadvtargetemaling->multiselectProspectionStatus($array_query['cust_prospect_status'], 'cust_prospect_status', 1);
201 print '</td><td>'."\n";
202 print '</td></tr>'."\n";
203 
204 // Prospection comm status
205 print '<tr><td>'.$langs->trans('StatusProsp');
206 if (!empty($array_query['cust_comm_status'])) {
207  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
208 }
209 print '</td><td>';
210 print $formadvtargetemaling->advMultiselectarray('cust_comm_status', $advTarget->type_statuscommprospect, $array_query['cust_comm_status']);
211 print '</td><td>'."\n";
212 print '</td></tr>'."\n";
213 
214 // Customer Type
215 print '<tr><td>'.$langs->trans("ThirdPartyType");
216 if (!empty($array_query['cust_typeent'])) {
217  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
218 }
219 print '</td><td>'."\n";
220 print $formadvtargetemaling->advMultiselectarray('cust_typeent', $formcompany->typent_array(0, " AND id <> 0"), $array_query['cust_typeent']);
221 print '</td><td>'."\n";
222 print '</td></tr>'."\n";
223 
224 // Staff number
225 print '<td>'.$langs->trans("Staff");
226 if (!empty($array_query['cust_effectif_id'])) {
227  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
228 }
229 print '</td><td>';
230 print $formadvtargetemaling->advMultiselectarray("cust_effectif_id", $formcompany->effectif_array(0, " AND id <> 0"), $array_query['cust_effectif_id']);
231 print '</td><td>'."\n";
232 print '</td></tr>'."\n";
233 
234 // Sales manager
235 print '<tr><td>'.$langs->trans("SalesRepresentatives");
236 if (!empty($array_query['cust_saleman'])) {
237  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
238 }
239 print '</td><td>'."\n";
240 print $formadvtargetemaling->multiselectselectSalesRepresentatives('cust_saleman', $array_query['cust_saleman'], $user);
241 print '</td><td>'."\n";
242 print '</td></tr>'."\n";
243 
244 // Customer Default Langauge
245 if (!empty($conf->global->MAIN_MULTILANGS)) {
246  print '<tr><td>'.$langs->trans("DefaultLang");
247  if (!empty($array_query['cust_language'])) {
248  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
249  }
250  print '</td><td>'."\n";
251  print $formadvtargetemaling->multiselectselectLanguage('cust_language', $array_query['cust_language']);
252  print '</td><td>'."\n";
253  print '</td></tr>'."\n";
254 }
255 
256 if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
257  // Customer Categories
258  print '<tr><td>'.$langs->trans("CustomersCategoryShort");
259  if (!empty($array_query['cust_categ'])) {
260  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
261  }
262  print '</td><td>'."\n";
263  $cate_arbo = $form->select_all_categories(Categorie::TYPE_CUSTOMER, null, 'parent', null, null, 1);
264  print $form->multiselectarray('cust_categ', $cate_arbo, GETPOST('cust_categ', 'array'), null, null, null, null, "90%");
265  print '</td><td>'."\n";
266  print '</td></tr>'."\n";
267 }
268 
269 // Standard Extrafield feature
270 if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) {
271  $socstatic = new Societe($db);
272  $elementtype = $socstatic->table_element;
273  // fetch optionals attributes and labels
274  dol_include_once('/core/class/extrafields.class.php');
275  $extrafields = new ExtraFields($db);
276  $extrafields->fetch_name_optionals_label($elementtype);
277  foreach ($extrafields->attributes[$elementtype]['label'] as $key => $val) {
278  if ($key != 'ts_nameextra' && $key != 'ts_payeur') {
279  print '<tr><td>'.$extrafields->attributes[$elementtype]['label'][$key];
280  if (!empty($array_query['options_'.$key]) || (is_array($array_query['options_'.$key]) && count($array_query['options_'.$key]) > 0)) {
281  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
282  }
283  print '</td><td>';
284  if (($extrafields->attributes[$elementtype]['type'][$key] == 'varchar') || ($extrafields->attributes[$elementtype]['type'][$key] == 'text')) {
285  print '<input type="text" name="options_'.$key.'"/></td><td>'."\n";
286  print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
287  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'int') || ($extrafields->attributes[$elementtype]['type'][$key] == 'double')) {
288  print $langs->trans("AdvTgtMinVal").'<input type="text" name="options'.$key.'_min"/>';
289  print $langs->trans("AdvTgtMaxVal").'<input type="text" name="options'.$key.'_max"/>';
290  print '</td><td>'."\n";
291  print $form->textwithpicto('', $langs->trans("AdvTgtSearchIntHelp"), 1, 'help');
292  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'date') || ($extrafields->attributes[$elementtype]['type'][$key] == 'datetime')) {
293  print '<table class="nobordernopadding"><tr>';
294  print '<td>'.$langs->trans("AdvTgtStartDt").'</td><td>';
295  print $form->selectDate('', 'options_'.$key.'_st_dt');
296  print '</td><td>'.$langs->trans("AdvTgtEndDt").'</td><td>';
297  print $form->selectDate('', 'options_'.$key.'_end_dt');
298  print '</td></tr></table>';
299 
300  print '</td><td>'."\n";
301  print $form->textwithpicto('', $langs->trans("AdvTgtSearchDtHelp"), 1, 'help');
302  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'boolean')) {
303  print $form->selectarray(
304  'options_'.$key,
305  array(
306  '' => '',
307  '1' => $langs->trans('Yes'),
308  '0' => $langs->trans('No')
309  ),
310  $array_query['options_'.$key]
311  );
312  print '</td><td>'."\n";
313  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'select')) {
314  print $formadvtargetemaling->advMultiselectarray('options_'.$key, $extrafields->attributes[$key]['param']['options'], $array_query['options_'.$key]);
315  print '</td><td>'."\n";
316  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'sellist')) {
317  print $formadvtargetemaling->advMultiselectarraySelllist('options_'.$key, $extrafields->attributes[$key]['param']['options'], $array_query['options_'.$key]);
318  print '</td><td>'."\n";
319  } else {
320  print '<table class="nobordernopadding"><tr>';
321  print '<td></td><td>';
322  if (is_array($array_query['options_'.$key])) {
323  print $extrafields->showInputField($key, implode(',', $array_query['options_'.$key]));
324  } else {
325  print $extrafields->showInputField($key, $array_query['options_'.$key]);
326  }
327  print '</td></tr></table>';
328 
329  print '</td><td>'."\n";
330  }
331  print '</td></tr>'."\n";
332  }
333  }
334 } else {
335  $std_soc = new Societe($db);
336  $action_search = 'query';
337 
338  // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
339  include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php';
340  $hookmanager = new HookManager($db);
341  $hookmanager->initHooks(array('thirdpartycard'));
342 
343  $parameters = array();
344  if (!empty($advTarget->id)) {
345  $parameters = array('array_query' => $advTarget->filtervalue);
346  }
347  // Other attributes
348  $reshook = $hookmanager->executeHooks('formObjectOptions', $parameters, $std_soc, $action_search);
349  print $hookmanager->resPrint;
350 }
351 
352 // State Contact
353 print '<tr><td>'.$langs->trans('Status').' '.$langs->trans('Contact');
354 if (!empty($array_query['contact_status'])) {
355  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
356 }
357 print '</td><td>';
358 print $formadvtargetemaling->advMultiselectarray(
359  'contact_status',
360  array(
361  '0' => $langs->trans('ActivityCeased'),
362  '1' => $langs->trans('InActivity')
363  ),
364  $array_query['contact_status']
365 );
366 print '</td><td>'."\n";
367 print $form->textwithpicto('', $langs->trans("AdvTgtContactHelp"), 1, 'help');
368 print '</td></tr>'."\n";
369 
370 // Civility
371 print '<tr><td width="15%">'.$langs->trans("UserTitle");
372 if (!empty($array_query['contact_civility'])) {
373  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
374 }
375 print '</td><td>';
376 print $formadvtargetemaling->multiselectCivility('contact_civility', $array_query['contact_civility']);
377 print '</td></tr>';
378 
379 // contact name
380 print '<tr><td>'.$langs->trans('Contact').' '.$langs->trans('Lastname');
381 if (!empty($array_query['contact_lastname'])) {
382  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
383 }
384 print '</td><td><input type="text" name="contact_lastname" value="'.$array_query['contact_lastname'].'"/></td><td>'."\n";
385 print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
386 print '</td></tr>'."\n";
387 print '<tr><td>'.$langs->trans('Contact').' '.$langs->trans('Firstname');
388 if (!empty($array_query['contact_firstname'])) {
389  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
390 }
391 print '</td><td><input type="text" name="contact_firstname" value="'.$array_query['contact_firstname'].'"/></td><td>'."\n";
392 print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
393 print '</td></tr>'."\n";
394 
395 // Contact Country
396 print '<tr><td>'.$langs->trans('Contact').' '.$langs->trans("Country");
397 if (!empty($array_query['contact_country'])) {
398  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
399 }
400 print '</td><td>'."\n";
401 print $formadvtargetemaling->multiselectCountry('contact_country', $array_query['contact_country']);
402 print '</td><td>'."\n";
403 print '</td></tr>'."\n";
404 
405 // Never send mass mailing
406 print '<tr><td>'.$langs->trans('Contact').' '.$langs->trans("No_Email");
407 if (!empty($array_query['contact_no_email'])) {
408  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
409 }
410 print '</td><td>'."\n";
411 print $form->selectarray(
412  'contact_no_email',
413  array(
414  '' => '',
415  '1' => $langs->trans('Yes'),
416  '0' => $langs->trans('No')
417  ),
418  $array_query['contact_no_email']
419 );
420 print '</td><td>'."\n";
421 print '</td></tr>'."\n";
422 
423 // Contact Date Create
424 print '<tr><td>'.$langs->trans('Contact').' '.$langs->trans("DateCreation");
425 if (!empty($array_query['contact_create_st_dt'])) {
426  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
427 }
428 print '</td><td>'."\n";
429 print '<table class="nobordernopadding"><tr>';
430 print '<td>'.$langs->trans("AdvTgtStartDt").'</td><td>';
431 print $form->selectDate($array_query['contact_create_st_dt'], 'contact_create_st_dt', 0, 0, 1, 'find_customer', 1, 1);
432 print '</td><td>'.$langs->trans("AdvTgtEndDt").'</td><td>';
433 print $form->selectDate($array_query['contact_create_end_dt'], 'contact_create_end_dt', 0, 0, 1, 'find_customer', 1, 1);
434 print '</td></tr></table>';
435 print '</td><td>'."\n";
436 print '</td></tr>'."\n";
437 
438 // Contact update Create
439 print '<tr><td>'.$langs->trans('Contact').' '.$langs->trans("DateLastModification");
440 if (!empty($array_query['contact_update_st_dt'])) {
441  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
442 }
443 print '</td><td>'."\n";
444 print '<table class="nobordernopadding"><tr>';
445 print '<td>'.$langs->trans("AdvTgtStartDt").'</td><td>';
446 print $form->selectDate($array_query['contact_update_st_dt'], 'contact_update_st_dt', 0, 0, 1, 'find_customer', 1, 1);
447 print '</td><td>'.$langs->trans("AdvTgtEndDt").'</td><td>';
448 print $form->selectDate($array_query['contact_update_end_dt'], 'contact_update_end_dt', 0, 0, 1, 'find_customer', 1, 1);
449 print '</td></tr></table>';
450 print '</td><td>'."\n";
451 print '</td></tr>'."\n";
452 
453 if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
454  // Customer Categories
455  print '<tr><td>'.$langs->trans("ContactCategoriesShort");
456  if (!empty($array_query['contact_categ'])) {
457  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
458  }
459  print '</td><td>'."\n";
460  $cate_arbo = $form->select_all_categories(Categorie::TYPE_CONTACT, null, 'parent', null, null, 1);
461  print $form->multiselectarray('contact_categ', $cate_arbo, GETPOST('contact_categ', 'array'), null, null, null, null, "90%");
462  print '</td><td>'."\n";
463  print '</td></tr>'."\n";
464 }
465 
466 // Standard Extrafield feature
467 if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) {
468  $contactstatic = new Contact($db);
469  $elementype = $contactstatic->table_element;
470  // fetch optionals attributes and labels
471  dol_include_once('/core/class/extrafields.class.php');
472  $extrafields = new ExtraFields($db);
473  $extrafields->fetch_name_optionals_label($elementype);
474  if (!empty($extrafields->attributes[$elementtype]['type'])) {
475  foreach ($extrafields->attributes[$elementtype]['type'] as $key => &$value) {
476  if ($value == 'radio')
477  $value = 'select';
478  }
479  }
480  if (!empty($extrafields->attributes[$elementtype]['label'])) {
481  foreach ($extrafields->attributes[$elementtype]['label'] as $key => $val) {
482  print '<tr><td>'.$extrafields->attributes[$elementtype]['label'][$key];
483  if ($array_query['options_'.$key.'_cnct'] != '' || (is_array($array_query['options_'.$key.'_cnct']) && count($array_query['options_'.$key.'_cnct']) > 0)) {
484  print img_picto($langs->trans('AdvTgtUse'), 'ok.png@advtargetemailing');
485  }
486  print '</td><td>';
487  if (($extrafields->attributes[$elementtype]['type'][$key] == 'varchar') || ($extrafields->attributes[$elementtype]['type'][$key] == 'text')) {
488  print '<input type="text" name="options_'.$key.'_cnct"/></td><td>'."\n";
489  print $form->textwithpicto('', $langs->trans("AdvTgtSearchTextHelp"), 1, 'help');
490  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'int') || ($extrafields->attributes[$elementtype]['type'][$key] == 'double')) {
491  print $langs->trans("AdvTgtMinVal").'<input type="text" name="options_'.$key.'_min_cnct"/>';
492  print $langs->trans("AdvTgtMaxVal").'<input type="text" name="options_'.$key.'_max_cnct"/>';
493  print '</td><td>'."\n";
494  print $form->textwithpicto('', $langs->trans("AdvTgtSearchIntHelp"), 1, 'help');
495  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'date') || ($extrafields->attributes[$elementtype]['type'][$key] == 'datetime')) {
496  print '<table class="nobordernopadding"><tr>';
497  print '<td>'.$langs->trans("AdvTgtStartDt").'</td><td>';
498  print $form->selectDate('', 'options_'.$key.'_st_dt_cnct');
499  print '</td><td>'.$langs->trans("AdvTgtEndDt").'</td><td>';
500  print $form->selectDate('', 'options_'.$key.'_end_dt_cnct');
501  print '</td></tr></table>';
502  print '</td><td>'."\n";
503  print $form->textwithpicto('', $langs->trans("AdvTgtSearchDtHelp"), 1, 'help');
504  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'boolean')) {
505  print $form->selectarray(
506  'options_'.$key.'_cnct',
507  array(
508  '' => '',
509  '1' => $langs->trans('Yes'),
510  '0' => $langs->trans('No')
511  ),
512  $array_query['options_'.$key.'_cnct']
513  );
514  print '</td><td>'."\n";
515  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'select')) {
516  print $formadvtargetemaling->advMultiselectarray('options_'.$key.'_cnct', $extrafields->attributes[$key]['param']['options'], $array_query['options_'.$key.'_cnct']);
517  print '</td><td>'."\n";
518  } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'sellist')) {
519  print $formadvtargetemaling->advMultiselectarraySelllist('options_'.$key.'_cnct', $extrafields->attributes[$key]['param']['options'], $array_query['options_'.$key.'_cnct']);
520  print '</td><td>'."\n";
521  } else {
522  if (is_array($array_query['options_'.$key.'_cnct'])) {
523  print $extrafields->showInputField($key, implode(',', $array_query['options_'.$key.'_cnct']), '', '_cnct');
524  } else {
525  print $extrafields->showInputField($key, $array_query['options_'.$key.'_cnct'], '', '_cnct');
526  }
527  print '</td><td>'."\n";
528  }
529  print '</td></tr>'."\n";
530  }
531  }
532 }
533 print '<tr>'."\n";
534 print '<td colspan="3" class="right">'."\n";
535 print '<input type="button" name="addcontact" id="addcontact" value="'.$langs->trans('AdvTgtAddContact').'" class="butAction"/>'."\n";
536 print '</td>'."\n";
537 print '</tr>'."\n";
538 print '</table>'."\n";
539 print '</form>'."\n";
540 print '</div>'."\n";
541 print '<form action="'.$_SERVER['PHP_SELF'].'?action=clear&id='.$object->id.'" method="POST">';
542 print '<input type="hidden" name="token" value="'.newToken().'">';
543 print load_fiche_titre($langs->trans("ToClearAllRecipientsClickHere"));
544 print '<table class="noborder centpercent">';
545 print '<tr class="liste_titre">';
546 print '<td class="liste_titre right"><input type="submit" class="button" value="'.$langs->trans("TargetsReset").'"></td>';
547 print '</tr>';
548 print '</table>';
549 print '</form>';
550 print '<br>';
if(!function_exists('dol_getprefix')) dol_include_once($relpath, $classname= '')
Make an include_once using default root and alternate root if it fails.
GETPOST($paramname, $check= 'alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
Class to manage contact/addresses.
Class to manage standard extra fields.
Class to manage hooks.
Class to manage third parties objects (customers, suppliers, prospects...)
load_fiche_titre($titre, $morehtmlright= '', $picto= 'generic', $pictoisfullpath=0, $id= '', $morecssontable= '', $morehtmlcenter= '')
Load a title with picto.
img_picto($titlealt, $picto, $moreatt= '', $pictoisfullpath=false, $srconly=0, $notitle=0, $alt= '', $morecss= '', $marginleftonlyshort=2)
Show picto whatever it&#39;s its name (generic function)
print
Draft customers invoices.
Definition: index.php:89