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');
41 $entity = (!empty($_GET[
'entity']) ? (int) $_GET[
'entity'] : (!empty($_POST[
'entity']) ? (int) $_POST[
'entity'] : 1));
42 if (is_numeric($entity)) {
43 define(
"DOLENTITY", $entity);
47 require
'../../main.inc.php';
48 require_once DOL_DOCUMENT_ROOT.
'/core/lib/company.lib.php';
49 require_once DOL_DOCUMENT_ROOT.
'/core/class/extrafields.class.php';
50 require_once DOL_DOCUMENT_ROOT.
'/eventorganization/class/conferenceorbooth.class.php';
51 require_once DOL_DOCUMENT_ROOT.
'/projet/class/project.class.php';
52 require_once DOL_DOCUMENT_ROOT.
'/contact/class/contact.class.php';
53 require_once DOL_DOCUMENT_ROOT.
'/categories/class/categorie.class.php';
54 require_once DOL_DOCUMENT_ROOT.
'/compta/facture/class/facture.class.php';
55 require_once DOL_DOCUMENT_ROOT.
'/compta/facture/class/paymentterm.class.php';
56 require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formcompany.class.php';
57 require_once DOL_DOCUMENT_ROOT.
'/core/lib/date.lib.php';
59 global $dolibarr_main_url_root;
65 $backtopage =
GETPOST(
'backtopage',
'alpha');
66 $action =
GETPOST(
'action',
'aZ09');
68 $eventtype =
GETPOST(
"eventtype");
78 $resultproject = $project->fetch($id);
79 if ($resultproject < 0) {
81 $errmsg .= $project->error;
85 $securekeyreceived =
GETPOST(
'securekey',
'alpha');
86 $securekeytocompare =
dol_hash($conf->global->EVENTORGANIZATION_SECUREKEY.
'conferenceorbooth'.$id,
'md5');
88 if ($securekeytocompare != $securekeyreceived) {
89 print $langs->trans(
'MissingOrBadSecureKey');
94 $langs->loadLangs(array(
"main",
"companies",
"install",
"other",
"eventorganization"));
97 $hookmanager->initHooks(array(
'publicnewmembercard',
'globalcard'));
101 $user->loadDefaultValues();
104 $arrayofconfboothtype = $cactioncomm->liste_array(
'',
'id',
'', 0,
"module='booth@eventorganization'");
107 if (empty($conf->eventorganization->enabled)) {
123 function llxHeaderVierge($title, $head =
"", $disablejs = 0, $disablehead = 0, $arrayofjs =
'', $arrayofcss =
'')
125 global $user, $conf, $langs, $mysoc;
127 top_htmlhead($head, $title, $disablejs, $disablehead, $arrayofjs, $arrayofcss);
129 print
'<body id="mainbody" class="publicnewmemberform">';
132 $urllogo = DOL_URL_ROOT.
'/theme/common/login_logo.png';
134 if (!empty($mysoc->logo_small) && is_readable($conf->mycompany->dir_output.
'/logos/thumbs/'.$mysoc->logo_small)) {
135 $urllogo = DOL_URL_ROOT.
'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode(
'logos/thumbs/'.$mysoc->logo_small);
136 } elseif (!empty($mysoc->logo) && is_readable($conf->mycompany->dir_output.
'/logos/'.$mysoc->logo)) {
137 $urllogo = DOL_URL_ROOT.
'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode(
'logos/'.$mysoc->logo);
138 } elseif (is_readable(DOL_DOCUMENT_ROOT.
'/theme/dolibarr_logo.svg')) {
139 $urllogo = DOL_URL_ROOT.
'/theme/dolibarr_logo.svg';
142 print
'<div class="center">';
146 print
'<div class="backgreypublicpayment">';
147 print
'<div class="logopublicpayment">';
148 print
'<img id="dolpaymentlogo" src="'.$urllogo.
'"';
151 if (empty($conf->global->MAIN_HIDE_POWERED_BY)) {
152 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>';
157 if (!empty($conf->global->PROJECT_IMAGE_PUBLIC_SUGGEST_BOOTH)) {
158 print
'<div class="backimagepublicsuggestbooth">';
159 print
'<img id="idPROJECT_IMAGE_PUBLIC_SUGGEST_BOOTH" src="'.$conf->global->PROJECT_IMAGE_PUBLIC_SUGGEST_BOOTH.
'">';
165 print
'<div class="divmainbodylarge">';
189 $parameters = array();
191 $reshook = $hookmanager->executeHooks(
'doActions', $parameters, $project, $action);
197 if (empty($reshook) && $action ==
'add') {
206 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Name")).
"<br>\n";
210 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Email")).
"<br>\n";
212 if (!
GETPOST(
"country_id") && !empty(floatval($project->price_booth))) {
214 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Country")).
"<br>\n";
218 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Societe")).
"<br>\n";
222 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Label")).
"<br>\n";
226 $errmsg .= $langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Note")).
"<br>\n";
230 $langs->load(
"errors");
231 $errmsg .= $langs->trans(
"ErrorBadEMail",
GETPOST(
"email")).
"<br>\n";
236 $thirdparty =
new Societe($db);
237 $resultfetchthirdparty = $thirdparty->fetch(
'', $societe);
239 if ($resultfetchthirdparty < 0) {
242 $errmsg .= $thirdparty->error;
243 $errors = array_merge($errors, $thirdparty->errors);
244 } elseif ($resultfetchthirdparty == 0) {
246 $genericcompanyname =
'Unknown company';
248 if (!empty($societe)) {
249 $thirdparty->name = $societe;
251 $thirdparty->name = $genericcompanyname;
253 $thirdparty->address =
GETPOST(
"address");
254 $thirdparty->zip =
GETPOST(
"zipcode");
255 $thirdparty->town =
GETPOST(
"town");
256 $thirdparty->client = $thirdparty::PROSPECT;
257 $thirdparty->fournisseur = 0;
258 $thirdparty->country_id =
GETPOST(
"country_id",
'int');
259 $thirdparty->state_id =
GETPOST(
"state_id",
'int');
260 $thirdparty->email = ($emailcompany ? $emailcompany : $email);
263 $module = (!empty($conf->global->SOCIETE_CODECLIENT_ADDON) ? $conf->global->SOCIETE_CODECLIENT_ADDON :
'mod_codeclient_leopard');
264 if (substr($module, 0, 15) ==
'mod_codeclient_' && substr($module, -3) ==
'php') {
265 $module = substr($module, 0,
dol_strlen($module) - 4);
267 $dirsociete = array_merge(array(
'/core/modules/societe/'), $conf->modules_parts[
'societe']);
268 foreach ($dirsociete as $dirroot) {
274 $modCodeClient =
new $module($db);
276 if (empty($tmpcode) && !empty($modCodeClient->code_auto)) {
277 $tmpcode = $modCodeClient->getNextValue($thirdparty, 0);
279 $thirdparty->code_client = $tmpcode;
280 $readythirdparty = $thirdparty->create($user);
281 if ($readythirdparty <0) {
283 $errmsg .= $thirdparty->error;
284 $errors = array_merge($errors, $thirdparty->errors);
286 $thirdparty->country_code =
getCountry($thirdparty->country_id, 2, $db, $langs);
287 $thirdparty->country =
getCountry($thirdparty->country_code, 0, $db, $langs);
293 $resultcontact = $contact->fetch(
'',
'',
'', $email);
294 if ($resultcontact<=0) {
296 $contact->socid = $thirdparty->id;
297 $contact->lastname = (string)
GETPOST(
"lastname",
'alpha');
298 $contact->firstname = (string)
GETPOST(
"firstname",
'alpha');
299 $contact->address = (string)
GETPOST(
"address",
'alpha');
300 $contact->zip = (string)
GETPOST(
"zipcode",
'alpha');
301 $contact->town = (string)
GETPOST(
"town",
'alpha');
302 $contact->country_id = (int)
GETPOST(
"country_id",
'int');
303 $contact->state_id = (int)
GETPOST(
"state_id",
'int');
304 $contact->email = $email;
305 $contact->statut = 1;
307 $resultcreatecontact = $contact->create($user);
308 if ($resultcreatecontact<0) {
310 $errmsg .= $contact->error;
319 $resultcategory = $category->fetch($conf->global->EVENTORGANIZATION_CATEG_THIRDPARTY_BOOTH);
321 if ($resultcategory<=0) {
323 $errmsg .= $category->error;
325 $resultsetcategory = $thirdparty->setCategoriesCommon(array($category->id), Categorie::TYPE_CUSTOMER,
false);
326 if ($resultsetcategory < 0) {
328 $errmsg .= $thirdparty->error;
330 $thirdparty->fournisseur = 1;
333 $module = (!empty($conf->global->SOCIETE_CODECLIENT_ADDON) ? $conf->global->SOCIETE_CODECLIENT_ADDON :
'mod_codeclient_leopard');
334 if (substr($module, 0, 15) ==
'mod_codeclient_' && substr($module, -3) ==
'php') {
335 $module = substr($module, 0,
dol_strlen($module) - 4);
337 $dirsociete = array_merge(array(
'/core/modules/societe/'), $conf->modules_parts[
'societe']);
338 foreach ($dirsociete as $dirroot) {
344 $modCodeFournisseur =
new $module;
345 if (empty($tmpcode) && !empty($modCodeFournisseur->code_auto)) {
346 $tmpcode = $modCodeFournisseur->getNextValue($thirdparty, 1);
348 $thirdparty->code_fournisseur = $tmpcode;
350 $res = $thirdparty->update(0, $user, 1, 1, 1);
362 $conforbooth->label = $label;
363 $conforbooth->fk_soc = $thirdparty->id;
364 $conforbooth->fk_project = $project->id;
365 $conforbooth->note = $note;
366 $conforbooth->fk_action = $eventtype;
367 $conforbooth->datep = $datestart;
368 $conforbooth->datep2 = $dateend;
369 $conforbooth->datec =
dol_now();
373 $nb_post_max =
getDolGlobalInt(
"MAIN_SECURITY_MAX_POST_ON_PUBLIC_PAGES_BY_IP_ADDRESS", 200);
379 if ($nb_post_max > 0) {
380 $sql =
"SELECT COUNT(ref) as nb_confs";
381 $sql .=
" FROM ".MAIN_DB_PREFIX.
"actioncomm";
382 $sql .=
" WHERE ip = '".$db->escape($conforbooth->ip).
"'";
383 $sql .=
" AND datec > '".$db->idate($minmonthpost).
"'";
384 $resql = $db->query(
$sql);
386 $num = $db->num_rows($resql);
390 $obj = $db->fetch_object($resql);
391 $nb_post_ip = $obj->nb_confs;
396 $resultconforbooth = 0;
398 if ($nb_post_max > 0 && $nb_post_ip >= $nb_post_max) {
400 $errmsg .= $langs->trans(
"AlreadyTooMuchPostOnThisIPAdress");
401 array_push($conforbooth->errors, $langs->trans(
"AlreadyTooMuchPostOnThisIPAdress"));
404 $resultconforbooth = $conforbooth->create($user);
406 if ($resultconforbooth<=0) {
408 $errmsg .= $conforbooth->error;
411 $resultaddcontact = $conforbooth->add_contact($contact->id,
'RESPONSIBLE');
412 if ($resultaddcontact<0) {
414 $errmsg .= $conforbooth->error;
417 if (!empty(floatval($project->price_booth))) {
418 $productforinvoicerow =
new Product($db);
419 $resultprod = $productforinvoicerow->fetch($conf->global->SERVICE_BOOTH_LOCATION);
420 if ($resultprod < 0) {
422 $errmsg .= $productforinvoicerow->error;
426 $facture->socid = $thirdparty->id;
429 $facture->cond_reglement_id = $contact->cond_reglement_id;
430 $facture->fk_project = $project->id;
432 if (empty($facture->cond_reglement_id)) {
433 $paymenttermstatic =
new PaymentTerm($contact->db);
434 $facture->cond_reglement_id = $paymenttermstatic->getDefaultId();
435 if (empty($facture->cond_reglement_id)) {
437 $contact->error =
'ErrorNoPaymentTermRECEPFound';
438 $contact->errors[] = $contact->error;
441 $resultfacture = $facture->create($user);
442 if ($resultfacture <= 0) {
443 $contact->error = $facture->error;
444 $contact->errors = $facture->errors;
448 $facture->add_object_linked($conforbooth->element, $conforbooth->id);
454 $vattouse =
get_default_tva($mysoc, $thirdparty, $productforinvoicerow->id);
455 $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);
457 $contact->error = $facture->error;
458 $contact->errors = $facture->errors;
479 $conforbooth->status = ConferenceOrBooth::STATUS_SUGGESTED;
480 $conforbooth->update($user);
491 require_once DOL_DOCUMENT_ROOT.
'/core/class/CMailFile.class.php';
492 include_once DOL_DOCUMENT_ROOT.
'/core/class/html.formmail.class.php';
496 $outputlangs->setDefaultLang(empty($thirdparty->default_lang) ? $mysoc->default_lang : $thirdparty->default_lang);
498 $outputlangs->loadLangs(array(
"main",
"members",
"eventorganization"));
500 $arraydefaultmessage =
null;
503 if (!empty($labeltouse)) {
504 $arraydefaultmessage = $formmail->getEMailTemplate($db,
'conferenceorbooth', $user, $outputlangs, $labeltouse, 1,
'');
507 if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) {
508 $subject = $arraydefaultmessage->topic;
509 $msg = $arraydefaultmessage->content;
518 $sendto = $thirdparty->email;
519 $from = $conf->global->MAILING_EMAIL_FROM;
520 $urlback = $_SERVER[
"REQUEST_URI"];
521 $trackid =
'proj'.$project->id;
525 $mailfile =
new CMailFile($subjecttosend, $sendto, $from, $texttosend, array(), array(), array(),
'',
'', 0, $ishtml,
'',
'', $trackid);
527 $result = $mailfile->sendfile();
529 dol_syslog(
"EMail sent to ".$sendto, LOG_DEBUG, 0,
'_payment');
531 dol_syslog(
"Failed to send EMail to ".$sendto, LOG_ERR, 0,
'_payment');
534 $securekeyurl =
dol_hash($conf->global->EVENTORGANIZATION_SECUREKEY.
'conferenceorbooth'.$id, 2);
535 $redirection = $dolibarr_main_url_root.
'/public/eventorganization/subscriptionok.php?id='.$id.
'&securekey='.$securekeyurl;
536 Header(
"Location: ".$redirection);
554 print
'<div align="center">';
555 print
'<div id="divsubscribe">';
560 print
'<div class="center subscriptionformbanner subbanner justify margintoponly paddingtop marginbottomonly padingbottom">';
561 print
load_fiche_titre($langs->trans(
"NewSuggestionOfBooth"),
'',
'', 0, 0,
'center');
563 print
'<span class="opacitymedium">'.$langs->trans(
"EvntOrgRegistrationWelcomeMessage").
'</span>';
566 print
'<span class="eventlabel large">'.dol_escape_htmltag($project->title .
' '. $project->label).
'</span><br>';
571 print
'<div class="justify subscriptionformhelptext">';
573 if ($project->date_start_event || $project->date_end_event) {
574 print
'<br><span class="fa fa-calendar pictofixedwidth opacitymedium"></span>';
576 if ($project->date_start_event) {
578 $tmparray =
dol_getdate($project->date_start_event,
false,
'');
579 if ($tmparray[
'hours'] || $tmparray[
'minutes'] || $tmparray[
'minutes']) {
584 if ($project->date_start_event && $project->date_end_event) {
587 if ($project->date_end_event) {
589 $tmparray =
dol_getdate($project->date_end_event,
false,
'');
590 if ($tmparray[
'hours'] || $tmparray[
'minutes'] || $tmparray[
'minutes']) {
595 if ($project->date_start_event || $project->date_end_event) {
598 if ($project->location) {
599 print
'<span class="fa fa-map-marked-alt pictofixedwidth opacitymedium"></span>'.dol_escape_htmltag($project->location).
'<br>';
601 if ($project->note_public) {
602 print
'<br><span class="opacitymedium">'.dol_htmlentitiesbr($project->note_public).
'</span><br>';
613 print
'<form action="'.$_SERVER[
"PHP_SELF"].
'" method="POST" name="newmember">'.
"\n";
614 print
'<input type="hidden" name="token" value="'.newToken().
'" / >';
615 print
'<input type="hidden" name="entity" value="'.$entity.
'" />';
616 print
'<input type="hidden" name="action" value="add" />';
617 print
'<input type="hidden" name="id" value="'.$id.
'" />';
618 print
'<input type="hidden" name="securekey" value="'.$securekeyreceived.
'" />';
621 print
'<br><span class="opacitymedium">'.$langs->trans(
"FieldsWithAreMandatory",
'*').
'</span><br>';
626 print
'<script type="text/javascript">
627 jQuery(document).ready(function () {
628 jQuery(document).ready(function () {
629 jQuery("#selectcountry_id").change(function() {
630 document.newmember.action.value="create";
631 document.newmember.submit();
637 print
'<table class="border" summary="form to subscribe" id="tablesubscribe">'.
"\n";
640 print
'<tr><td><label for="lastname">'.$langs->trans(
"Lastname").
'<span class="star">*</span></label></td>';
641 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>';
644 print
'<tr><td>'.$langs->trans(
"Email").
'<span class="star">*</span></td><td><input type="text" name="email" maxlength="255" class="minwidth150" value="'.
dol_escape_htmltag(
GETPOST(
'email')).
'"></td></tr>'.
"\n";
646 print
'<tr id="trcompany" class="trcompany"><td>'.$langs->trans(
"Company").
'<span class="star">*</span>';
647 print
' </td><td><input type="text" name="societe" class="minwidth150" value="'.dol_escape_htmltag(
GETPOST(
'societe')).
'"></td></tr>'.
"\n";
649 print
'<tr><td>'.$langs->trans(
"Address").
'</td><td>'.
"\n";
650 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";
652 print
'<tr><td>'.$langs->trans(
'Zip').
' / '.$langs->trans(
'Town').
'</td><td>';
653 print $formcompany->select_ziptown(
GETPOST(
'zipcode'),
'zipcode', array(
'town',
'selectcountry_id',
'state_id'), 6, 1);
655 print $formcompany->select_ziptown(
GETPOST(
'town'),
'town', array(
'zipcode',
'selectcountry_id',
'state_id'), 0, 1);
658 print
'<tr><td>'.$langs->trans(
'Country');
659 print
'<span class="star">*</span>';
661 $country_id =
GETPOST(
'country_id');
662 if (!$country_id && !empty($conf->global->MEMBER_NEWFORM_FORCECOUNTRYCODE)) {
663 $country_id =
getCountry($conf->global->MEMBER_NEWFORM_FORCECOUNTRYCODE, 2, $db, $langs);
665 if (!$country_id && !empty($conf->geoipmaxmind->enabled)) {
669 $new_country_id =
getCountry($country_code, 3, $db, $langs);
671 if ($new_country_id) {
672 $country_id = $new_country_id;
676 $country_code =
getCountry($country_id, 2, $db, $langs);
677 print
$form->select_country($country_id,
'country_id');
680 if (empty($conf->global->SOCIETE_DISABLE_STATE)) {
681 print
'<tr><td>'.$langs->trans(
'State').
'</td><td>';
683 print $formcompany->select_state(
GETPOST(
"state_id"), $country_code);
690 print
'<tr><td>'.$langs->trans(
"Format").
'<span class="star">*</span></td>'.
"\n";
691 print
'<td>'.Form::selectarray(
'eventtype', $arrayofconfboothtype, $eventtype, 1).
'</td>';
693 print
'<tr><td>'.$langs->trans(
"LabelOfBooth").
'<span class="star">*</span></td>'.
"\n";
694 print
'</td><td><input type="text" name="label" class="minwidth150" value="'.dol_escape_htmltag(
GETPOST(
'label')).
'"></td></tr>'.
"\n";
696 print
'<tr><td>'.$langs->trans(
"Description").
'<span class="star">*</span></td>'.
"\n";
697 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";
705 print
'<div class="center">';
707 print
'<input type="submit" value="'.$langs->trans(
"SuggestBooth").
'" name="suggestbooth" id="suggestbooth" class="button">';
714 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') && $user->hasRight('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') && $user->hasRight('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)) $sql
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='', $dragdropfile=0)
Show tabs of a record.
dol_user_country()
Return country code for current user.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
setEventMessage($mesgs, $style='mesgs', $noduplicate=0)
Set event message 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.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0)
Set event messages in dol_events session object.
getCommonSubstitutionArray($outputlangs, $onlykey=0, $exclude=null, $object=null, $include=null)
Return array of possible common substitutions.
isValidEmail($address, $acceptsupervisorkey=0, $acceptuserkey=0)
Return true if email syntax is ok.
getDolGlobalString($key, $default='')
Return dolibarr global constant string value.
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.
dol_escape_htmltag($stringtoescape, $keepb=0, $keepn=0, $noescapetags='', $escapeonlyhtmltags=0, $cleanalsojavascript=0)
Returns text escaped for inclusion in HTML alt or title or value tags, or into values of HTML input f...
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.