24 if (!defined(
'NOLOGIN')) {
27 if (!defined(
'NOCSRFCHECK')) {
28 define(
"NOCSRFCHECK", 1);
30 if (!defined(
'NOIPCHECK')) {
31 define(
'NOIPCHECK',
'1');
33 if (!defined(
'NOBROWSERNOTIF')) {
34 define(
'NOBROWSERNOTIF',
'1');
36 if (!defined(
'NOIPCHECK')) {
37 define(
'NOIPCHECK',
'1');
43 $entity = (!empty($_GET[
'entity']) ? (int) $_GET[
'entity'] : (!empty($_POST[
'entity']) ? (int) $_POST[
'entity'] : 1));
44 if (is_numeric($entity)) {
45 define(
"DOLENTITY", $entity);
49 require
'../../main.inc.php';
50 require_once DOL_DOCUMENT_ROOT.
'/core/lib/company.lib.php';
51 require_once DOL_DOCUMENT_ROOT.
'/core/class/extrafields.class.php';
52 require_once DOL_DOCUMENT_ROOT.
'/eventorganization/class/conferenceorbooth.class.php';
53 require_once DOL_DOCUMENT_ROOT.
'/projet/class/project.class.php';
54 require_once DOL_DOCUMENT_ROOT.
'/contact/class/contact.class.php';
55 require_once DOL_DOCUMENT_ROOT.
'/categories/class/categorie.class.php';
56 require_once DOL_DOCUMENT_ROOT.
'/compta/facture/class/facture.class.php';
57 require_once DOL_DOCUMENT_ROOT.
'/compta/facture/class/paymentterm.class.php';
58 require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formcompany.class.php';
59 require_once DOL_DOCUMENT_ROOT.
'/core/lib/date.lib.php';
61 global $dolibarr_main_url_root;
67 $backtopage =
GETPOST(
'backtopage',
'alpha');
68 $action =
GETPOST(
'action',
'aZ09');
70 $eventtype =
GETPOST(
"eventtype");
80 $resultproject = $project->fetch($id);
81 if ($resultproject < 0) {
83 $errmsg .= $project->error;
87 $securekeyreceived =
GETPOST(
'securekey',
'alpha');
88 $securekeytocompare =
dol_hash($conf->global->EVENTORGANIZATION_SECUREKEY.
'conferenceorbooth'.$id,
'md5');
90 if ($securekeytocompare != $securekeyreceived) {
91 print $langs->trans(
'MissingOrBadSecureKey');
96 $langs->loadLangs(array(
"main",
"companies",
"install",
"other",
"eventorganization"));
99 $hookmanager->initHooks(array(
'publicnewmembercard',
'globalcard'));
103 $user->loadDefaultValues();
106 $arrayofconfboothtype = $cactioncomm->liste_array(
'',
'id',
'', 0,
"module='booth@eventorganization'");
109 if (empty($conf->eventorganization->enabled)) {
125 function llxHeaderVierge($title, $head =
"", $disablejs = 0, $disablehead = 0, $arrayofjs =
'', $arrayofcss =
'')
127 global $user, $conf, $langs, $mysoc;
129 top_htmlhead($head, $title, $disablejs, $disablehead, $arrayofjs, $arrayofcss);
131 print
'<body id="mainbody" class="publicnewmemberform">';
134 $urllogo = DOL_URL_ROOT.
'/theme/common/login_logo.png';
136 if (!empty($mysoc->logo_small) && is_readable($conf->mycompany->dir_output.
'/logos/thumbs/'.$mysoc->logo_small)) {
137 $urllogo = DOL_URL_ROOT.
'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode(
'logos/thumbs/'.$mysoc->logo_small);
138 } elseif (!empty($mysoc->logo) && is_readable($conf->mycompany->dir_output.
'/logos/'.$mysoc->logo)) {
139 $urllogo = DOL_URL_ROOT.
'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode(
'logos/'.$mysoc->logo);
140 } elseif (is_readable(DOL_DOCUMENT_ROOT.
'/theme/dolibarr_logo.svg')) {
141 $urllogo = DOL_URL_ROOT.
'/theme/dolibarr_logo.svg';
144 print
'<div class="center">';
148 print
'<div class="backgreypublicpayment">';
149 print
'<div class="logopublicpayment">';
150 print
'<img id="dolpaymentlogo" src="'.$urllogo.
'"';
153 if (empty($conf->global->MAIN_HIDE_POWERED_BY)) {
154 print
'<div class="poweredbypublicpayment opacitymedium right"><a class="poweredbyhref" href="https://www.dolibarr.org?utm_medium=website&utm_source=poweredby" target="dolibarr" rel="noopener">'.$langs->trans(
"PoweredBy").
'<br><img class="poweredbyimg" src="'.DOL_URL_ROOT.
'/theme/dolibarr_logo.svg" width="80px"></a></div>';
159 if (!empty($conf->global->PROJECT_IMAGE_PUBLIC_SUGGEST_BOOTH)) {
160 print
'<div class="backimagepublicsuggestbooth">';
161 print
'<img id="idPROJECT_IMAGE_PUBLIC_SUGGEST_BOOTH" src="'.$conf->global->PROJECT_IMAGE_PUBLIC_SUGGEST_BOOTH.
'">';
167 print
'<div class="divmainbodylarge">';
191 $parameters = array();
193 $reshook = $hookmanager->executeHooks(
'doActions', $parameters, $project, $action);
199 if (empty($reshook) && $action ==
'add') {
208 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Name")).
"<br>\n";
212 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Email")).
"<br>\n";
214 if (!
GETPOST(
"country_id") && !empty(floatval($project->price_booth))) {
216 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Country")).
"<br>\n";
220 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Societe")).
"<br>\n";
224 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Label")).
"<br>\n";
228 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Note")).
"<br>\n";
232 $langs->load(
"errors");
233 $errmsg .= $langs->trans(
"ErrorBadEMail",
GETPOST(
"email")).
"<br>\n";
238 $thirdparty =
new Societe($db);
239 $resultfetchthirdparty = $thirdparty->fetch(
'', $societe);
241 if ($resultfetchthirdparty < 0) {
244 $errmsg .= $thirdparty->error;
245 $errors = array_merge($errors, $thirdparty->errors);
246 } elseif ($resultfetchthirdparty == 0) {
248 $genericcompanyname =
'Unknown company';
250 if (!empty($societe)) {
251 $thirdparty->name = $societe;
253 $thirdparty->name = $genericcompanyname;
255 $thirdparty->address =
GETPOST(
"address");
256 $thirdparty->zip =
GETPOST(
"zipcode");
257 $thirdparty->town =
GETPOST(
"town");
258 $thirdparty->client = $thirdparty::PROSPECT;
259 $thirdparty->fournisseur = 0;
260 $thirdparty->country_id =
GETPOST(
"country_id",
'int');
261 $thirdparty->state_id =
GETPOST(
"state_id",
'int');
262 $thirdparty->email = ($emailcompany ? $emailcompany : $email);
265 $module = (!empty($conf->global->SOCIETE_CODECLIENT_ADDON) ? $conf->global->SOCIETE_CODECLIENT_ADDON :
'mod_codeclient_leopard');
266 if (substr($module, 0, 15) ==
'mod_codeclient_' && substr($module, -3) ==
'php') {
267 $module = substr($module, 0,
dol_strlen($module) - 4);
269 $dirsociete = array_merge(array(
'/core/modules/societe/'), $conf->modules_parts[
'societe']);
270 foreach ($dirsociete as $dirroot) {
276 $modCodeClient =
new $module($db);
278 if (empty($tmpcode) && !empty($modCodeClient->code_auto)) {
279 $tmpcode = $modCodeClient->getNextValue($thirdparty, 0);
281 $thirdparty->code_client = $tmpcode;
282 $readythirdparty = $thirdparty->create($user);
283 if ($readythirdparty <0) {
285 $errmsg .= $thirdparty->error;
286 $errors = array_merge($errors, $thirdparty->errors);
288 $thirdparty->country_code =
getCountry($thirdparty->country_id, 2, $db, $langs);
289 $thirdparty->country =
getCountry($thirdparty->country_code, 0, $db, $langs);
295 $resultcontact = $contact->fetch(
'',
'',
'', $email);
296 if ($resultcontact<=0) {
298 $contact->socid = $thirdparty->id;
299 $contact->lastname = (string)
GETPOST(
"lastname",
'alpha');
300 $contact->firstname = (string)
GETPOST(
"firstname",
'alpha');
301 $contact->address = (string)
GETPOST(
"address",
'alpha');
302 $contact->zip = (string)
GETPOST(
"zipcode",
'alpha');
303 $contact->town = (string)
GETPOST(
"town",
'alpha');
304 $contact->country_id = (int)
GETPOST(
"country_id",
'int');
305 $contact->state_id = (int)
GETPOST(
"state_id",
'int');
306 $contact->email = $email;
307 $contact->statut = 1;
309 $resultcreatecontact = $contact->create($user);
310 if ($resultcreatecontact<0) {
312 $errmsg .= $contact->error;
321 $resultcategory = $category->fetch($conf->global->EVENTORGANIZATION_CATEG_THIRDPARTY_BOOTH);
323 if ($resultcategory<=0) {
325 $errmsg .= $category->error;
327 $resultsetcategory = $thirdparty->setCategoriesCommon(array($category->id), CATEGORIE::TYPE_CUSTOMER,
false);
328 if ($resultsetcategory < 0) {
330 $errmsg .= $thirdparty->error;
332 $thirdparty->fournisseur = 1;
335 $module = (!empty($conf->global->SOCIETE_CODECLIENT_ADDON) ? $conf->global->SOCIETE_CODECLIENT_ADDON :
'mod_codeclient_leopard');
336 if (substr($module, 0, 15) ==
'mod_codeclient_' && substr($module, -3) ==
'php') {
337 $module = substr($module, 0,
dol_strlen($module) - 4);
339 $dirsociete = array_merge(array(
'/core/modules/societe/'), $conf->modules_parts[
'societe']);
340 foreach ($dirsociete as $dirroot) {
346 $modCodeFournisseur =
new $module;
347 if (empty($tmpcode) && !empty($modCodeFournisseur->code_auto)) {
348 $tmpcode = $modCodeFournisseur->getNextValue($thirdparty, 1);
350 $thirdparty->code_fournisseur = $tmpcode;
352 $res = $thirdparty->update(0, $user, 1, 1, 1);
364 $conforbooth->label = $label;
365 $conforbooth->fk_soc = $thirdparty->id;
366 $conforbooth->fk_project = $project->id;
367 $conforbooth->note = $note;
368 $conforbooth->fk_action = $eventtype;
369 $conforbooth->datep = $datestart;
370 $conforbooth->datep2 = $dateend;
371 $conforbooth->datec =
dol_now();
375 $nb_post_max =
getDolGlobalInt(
"MAIN_SECURITY_MAX_POST_ON_PUBLIC_PAGES_BY_IP_ADDRESS", 200);
381 if ($nb_post_max > 0) {
382 $sql =
"SELECT COUNT(ref) as nb_confs";
383 $sql .=
" FROM ".MAIN_DB_PREFIX.
"actioncomm";
384 $sql .=
" WHERE ip = '".$db->escape($conforbooth->ip).
"'";
385 $sql .=
" AND datec > '".$db->idate($minmonthpost).
"'";
386 $resql = $db->query($sql);
388 $num = $db->num_rows(
$resql);
392 $obj = $db->fetch_object(
$resql);
393 $nb_post_ip = $obj->nb_confs;
398 $resultconforbooth = 0;
400 if ($nb_post_max > 0 && $nb_post_ip >= $nb_post_max) {
402 $errmsg .= $langs->trans(
"AlreadyTooMuchPostOnThisIPAdress");
403 array_push($conforbooth->errors, $langs->trans(
"AlreadyTooMuchPostOnThisIPAdress"));
406 $resultconforbooth = $conforbooth->create($user);
408 if ($resultconforbooth<=0) {
410 $errmsg .= $conforbooth->error;
413 $resultaddcontact = $conforbooth->add_contact($contact->id,
'RESPONSIBLE');
414 if ($resultaddcontact<0) {
416 $errmsg .= $conforbooth->error;
419 if (!empty(floatval($project->price_booth))) {
420 $productforinvoicerow =
new Product($db);
421 $resultprod = $productforinvoicerow->fetch($conf->global->SERVICE_BOOTH_LOCATION);
422 if ($resultprod < 0) {
424 $errmsg .= $productforinvoicerow->error;
428 $facture->socid = $thirdparty->id;
431 $facture->cond_reglement_id = $contact->cond_reglement_id;
432 $facture->fk_project = $project->id;
434 if (empty($facture->cond_reglement_id)) {
435 $paymenttermstatic =
new PaymentTerm($contact->db);
436 $facture->cond_reglement_id = $paymenttermstatic->getDefaultId();
437 if (empty($facture->cond_reglement_id)) {
439 $contact->error =
'ErrorNoPaymentTermRECEPFound';
440 $contact->errors[] = $contact->error;
443 $resultfacture = $facture->create($user);
444 if ($resultfacture <= 0) {
445 $contact->error = $facture->error;
446 $contact->errors = $facture->errors;
450 $facture->add_object_linked($conforbooth->element, $conforbooth->id);
456 $vattouse =
get_default_tva($mysoc, $thirdparty, $productforinvoicerow->id);
457 $result = $facture->addline($langs->trans(
"BoothLocationFee", $conforbooth->label,
dol_print_date($conforbooth->datep,
'%d/%m/%y %H:%M:%S'),
dol_print_date($conforbooth->datep2,
'%d/%m/%y %H:%M:%S')), floatval($project->price_booth), 1, $vattouse, 0, 0, $productforinvoicerow->id, 0,
dol_now(),
'', 0, 0,
'',
'HT', 0, 1);
459 $contact->error = $facture->error;
460 $contact->errors = $facture->errors;
481 $conforbooth->status = ConferenceOrBooth::STATUS_SUGGESTED;
482 $conforbooth->update($user);
493 require_once DOL_DOCUMENT_ROOT.
'/core/class/CMailFile.class.php';
494 include_once DOL_DOCUMENT_ROOT.
'/core/class/html.formmail.class.php';
498 $outputlangs->setDefaultLang(empty($thirdparty->default_lang) ? $mysoc->default_lang : $thirdparty->default_lang);
500 $outputlangs->loadLangs(array(
"main",
"members",
"eventorganization"));
502 $arraydefaultmessage =
null;
505 if (!empty($labeltouse)) {
506 $arraydefaultmessage = $formmail->getEMailTemplate($db,
'conferenceorbooth', $user, $outputlangs, $labeltouse, 1,
'');
509 if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) {
510 $subject = $arraydefaultmessage->topic;
511 $msg = $arraydefaultmessage->content;
520 $sendto = $thirdparty->email;
521 $from = $conf->global->MAILING_EMAIL_FROM;
522 $urlback = $_SERVER[
"REQUEST_URI"];
523 $trackid =
'proj'.$project->id;
527 $mailfile =
new CMailFile($subjecttosend, $sendto, $from, $texttosend, array(), array(), array(),
'',
'', 0, $ishtml,
'',
'', $trackid);
529 $result = $mailfile->sendfile();
531 dol_syslog(
"EMail sent to ".$sendto, LOG_DEBUG, 0,
'_payment');
533 dol_syslog(
"Failed to send EMail to ".$sendto, LOG_ERR, 0,
'_payment');
536 $securekeyurl =
dol_hash($conf->global->EVENTORGANIZATION_SECUREKEY.
'conferenceorbooth'.$id, 2);
537 $redirection = $dolibarr_main_url_root.
'/public/eventorganization/subscriptionok.php?id='.$id.
'&securekey='.$securekeyurl;
538 Header(
"Location: ".$redirection);
556 print
'<div align="center">';
557 print
'<div id="divsubscribe">';
562 print
'<div class="center subscriptionformbanner subbanner justify margintoponly paddingtop marginbottomonly padingbottom">';
563 print
load_fiche_titre($langs->trans(
"NewSuggestionOfBooth"),
'',
'', 0, 0,
'center');
565 print
'<span class="opacitymedium">'.$langs->trans(
"EvntOrgRegistrationWelcomeMessage").
'</span>';
568 print
'<span class="eventlabel large">'.dol_escape_htmltag($project->title .
' '. $project->label).
'</span><br>';
573 print
'<div class="justify subscriptionformhelptext">';
575 if ($project->date_start_event || $project->date_end_event) {
576 print
'<br><span class="fa fa-calendar pictofixedwidth opacitymedium"></span>';
578 if ($project->date_start_event) {
580 $tmparray =
dol_getdate($project->date_start_event,
false,
'');
581 if ($tmparray[
'hours'] || $tmparray[
'minutes'] || $tmparray[
'minutes']) {
586 if ($project->date_start_event && $project->date_end_event) {
589 if ($project->date_end_event) {
591 $tmparray =
dol_getdate($project->date_end_event,
false,
'');
592 if ($tmparray[
'hours'] || $tmparray[
'minutes'] || $tmparray[
'minutes']) {
597 if ($project->date_start_event || $project->date_end_event) {
600 if ($project->location) {
601 print
'<span class="fa fa-map-marked-alt pictofixedwidth opacitymedium"></span>'.dol_escape_htmltag($project->location).
'<br>';
603 if ($project->note_public) {
604 print
'<br><span class="opacitymedium">'.dol_htmlentitiesbr($project->note_public).
'</span><br>';
615 print
'<form action="'.$_SERVER[
"PHP_SELF"].
'" method="POST" name="newmember">'.
"\n";
616 print
'<input type="hidden" name="token" value="'.newToken().
'" / >';
617 print
'<input type="hidden" name="entity" value="'.$entity.
'" />';
618 print
'<input type="hidden" name="action" value="add" />';
619 print
'<input type="hidden" name="id" value="'.$id.
'" />';
620 print
'<input type="hidden" name="securekey" value="'.$securekeyreceived.
'" />';
623 print
'<br><span class="opacitymedium">'.$langs->trans(
"FieldsWithAreMandatory",
'*').
'</span><br>';
628 print
'<script type="text/javascript">
629 jQuery(document).ready(function () {
630 jQuery(document).ready(function () {
631 jQuery("#selectcountry_id").change(function() {
632 document.newmember.action.value="create";
633 document.newmember.submit();
639 print
'<table class="border" summary="form to subscribe" id="tablesubscribe">'.
"\n";
642 print
'<tr><td><label for="lastname">'.$langs->trans(
"Lastname").
'<span style="color: red">*</span></label></td>';
643 print
'<td colspan="3"><input name="lastname" id="lastname" type="text" class="maxwidth100onsmartphone" maxlength="80" value="'.dol_escape_htmltag(
GETPOST(
"lastname",
'alpha') ?
GETPOST(
"lastname",
'alpha') : $object->lastname).
'" autofocus="autofocus"></td>';
646 print
'<tr><td>'.$langs->trans(
"Email").
'<span style="color: red">*</span></td><td><input type="text" name="email" maxlength="255" class="minwidth150" value="'.
dol_escape_htmltag(
GETPOST(
'email')).
'"></td></tr>'.
"\n";
648 print
'<tr id="trcompany" class="trcompany"><td>'.$langs->trans(
"Company").
'<span style="color: red">*</span>';
649 print
' </td><td><input type="text" name="societe" class="minwidth150" value="'.dol_escape_htmltag(
GETPOST(
'societe')).
'"></td></tr>'.
"\n";
651 print
'<tr><td>'.$langs->trans(
"Address").
'</td><td>'.
"\n";
652 print
'<textarea name="address" id="address" wrap="soft" class="quatrevingtpercent" rows="'.ROWS_3.
'">'.
dol_escape_htmltag(
GETPOST(
'address',
'restricthtml'), 0, 1).
'</textarea></td></tr>'.
"\n";
654 print
'<tr><td>'.$langs->trans(
'Zip').
' / '.$langs->trans(
'Town').
'</td><td>';
655 print $formcompany->select_ziptown(
GETPOST(
'zipcode'),
'zipcode', array(
'town',
'selectcountry_id',
'state_id'), 6, 1);
657 print $formcompany->select_ziptown(
GETPOST(
'town'),
'town', array(
'zipcode',
'selectcountry_id',
'state_id'), 0, 1);
660 print
'<tr><td>'.$langs->trans(
'Country');
661 print
'<span class="star">*</span>';
663 $country_id =
GETPOST(
'country_id');
664 if (!$country_id && !empty($conf->global->MEMBER_NEWFORM_FORCECOUNTRYCODE)) {
665 $country_id =
getCountry($conf->global->MEMBER_NEWFORM_FORCECOUNTRYCODE, 2, $db, $langs);
667 if (!$country_id && !empty($conf->geoipmaxmind->enabled)) {
671 $new_country_id =
getCountry($country_code, 3, $db, $langs);
673 if ($new_country_id) {
674 $country_id = $new_country_id;
678 $country_code =
getCountry($country_id, 2, $db, $langs);
679 print
$form->select_country($country_id,
'country_id');
682 if (empty($conf->global->SOCIETE_DISABLE_STATE)) {
683 print
'<tr><td>'.$langs->trans(
'State').
'</td><td>';
685 print $formcompany->select_state(
GETPOST(
"state_id"), $country_code);
692 print
'<tr><td>'.$langs->trans(
"Format").
'<span style="color: red">*</span></td>'.
"\n";
693 print
'<td>'.Form::selectarray(
'eventtype', $arrayofconfboothtype, $eventtype, 1).
'</td>';
695 print
'<tr><td>'.$langs->trans(
"LabelOfBooth").
'<span style="color: red">*</span></td>'.
"\n";
696 print
'</td><td><input type="text" name="label" class="minwidth150" value="'.dol_escape_htmltag(
GETPOST(
'label')).
'"></td></tr>'.
"\n";
698 print
'<tr><td>'.$langs->trans(
"Description").
'<span style="color: red">*</span></td>'.
"\n";
699 print
'<td><textarea name="note" id="note" wrap="soft" class="quatrevingtpercent" rows="'.ROWS_3.
'">'.
dol_escape_htmltag(
GETPOST(
'note',
'restricthtml'), 0, 1).
'</textarea></td></tr>'.
"\n";
707 print
'<div class="center">';
709 print
'<input type="submit" value="'.$langs->trans(
"SuggestBooth").
'" name="suggestbooth" id="suggestbooth" class="button">';
716 print
'</div></div>';
Class to manage different types of events.
Class to send emails (with attachments or not) Usage: $mailfile = new CMailFile($subject,...
Class to manage categories.
Class for ConferenceOrBooth.
Class to manage invoices.
const TYPE_STANDARD
Standard invoice.
Class to manage payment terms records in dictionary.
Class to manage products or services.
Class to manage projects.
Class to manage third parties objects (customers, suppliers, prospects...)
Class to manage translations.
getCountry($searchkey, $withcode='', $dbtouse=0, $outputlangs='', $entconv=1, $searchlabel='')
Return country label, code or id from an id, code or label.
if(isModEnabled('facture') &&!empty($user->rights->facture->lire)) if((isModEnabled('fournisseur') &&empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->hasRight("fournisseur", "facture", "lire"))||(isModEnabled('supplier_invoice') && $user->hasRight("supplier_invoice", "lire"))) if(isModEnabled('don') &&!empty($user->rights->don->lire)) if(isModEnabled('tax') &&!empty($user->rights->tax->charges->lire)) if(isModEnabled('facture') &&isModEnabled('commande') && $user->hasRight("commande", "lire") &&empty($conf->global->WORKFLOW_DISABLE_CREATE_INVOICE_FROM_ORDER)) $resql
Social contributions to pay.
if($cancel &&! $id) if($action=='add' &&! $cancel) if($action=='delete') if($id) $form
Actions.
dol_time_plus_duree($time, $duration_value, $duration_unit, $ruleforendofmonth=0)
Add a delay to a date.
dol_mktime($hour, $minute, $second, $month, $day, $year, $gm='auto', $check=1)
Return a timestamp date built from detailed informations (by default a local PHP server timestamp) Re...
load_fiche_titre($titre, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limittoshow=0, $moretabssuffix='')
Show tabs of a record.
dol_escape_htmltag($stringtoescape, $keepb=0, $keepn=0, $noescapetags='', $escapeonlyhtmltags=0)
Returns text escaped for inclusion in HTML alt or title tags, or into values of HTML input fields.
dol_user_country()
Return country code for current user.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='')
Set event messages in dol_events session object.
printCommonFooter($zone='private')
Print common footer : conf->global->MAIN_HTML_FOOTER js for switch of menu hider js for conf->global-...
dol_strlen($string, $stringencoding='UTF-8')
Make a strlen call.
dol_print_date($time, $format='', $tzoutput='auto', $outputlangs='', $encodetooutput=false)
Output date in a string format according to outputlangs (or langs if not defined).
if(!function_exists('dol_getprefix')) dol_include_once($relpath, $classname='')
Make an include_once using default root and alternate root if it fails.
dol_now($mode='auto')
Return date for now.
getDolGlobalInt($key, $default=0)
Return dolibarr global constant int value.
complete_substitutions_array(&$substitutionarray, $outputlangs, $object=null, $parameters=null, $callfunc="completesubstitutionarray")
Complete the $substitutionarray with more entries coming from external module that had set the "subst...
make_substitutions($text, $substitutionarray, $outputlangs=null, $converttextinhtmlifnecessary=0)
Make substitution into a text string, replacing keys with vals from $substitutionarray (oldval=>newva...
dol_textishtml($msg, $option=0)
Return if a text is a html content.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
setEventMessage($mesgs, $style='mesgs')
Set event message in dol_events session object.
if(!function_exists('utf8_encode')) if(!function_exists('utf8_decode')) getDolGlobalString($key, $default='')
Return dolibarr global constant string value.
getCommonSubstitutionArray($outputlangs, $onlykey=0, $exclude=null, $object=null)
Return array of possible common substitutions.
isValidEmail($address, $acceptsupervisorkey=0, $acceptuserkey=0)
Return true if email syntax is ok.
getUserRemoteIP()
Return the IP of remote user.
get_default_tva(Societe $thirdparty_seller, Societe $thirdparty_buyer, $idprod=0, $idprodfournprice=0)
Function that return vat rate of a product line (according to seller, buyer and product vat rate) VAT...
dol_htmloutput_errors($mesgstring='', $mesgarray=array(), $keepembedded=0)
Print formated error messages to output (Used to show messages on html output).
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='', $logcontext=null)
Write log message into outputs.
dol_getdate($timestamp, $fast=false, $forcetimezone='')
Return an array with locale date info.
top_htmlhead($head, $title='', $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='', $disableforlogin=0, $disablenofollow=0, $disablenoindex=0)
Ouput html header of a page.
httponly_accessforbidden($message=1, $http_response_code=403, $stringalreadysanitized=0)
Show a message to say access is forbidden and stop program.
dol_hash($chain, $type='0')
Returns a hash (non reversible encryption) of a string.
if(empty($conf->eventorganization->enabled)) llxHeaderVierge($title, $head="", $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='')
Show header for new member.
llxFooterVierge()
Show footer for new member.