dolibarr 22.0.5
conferenceorbooth_contact.php
Go to the documentation of this file.
1<?php
2/* Copyright (C) 2007-2017 Laurent Destailleur <eldy@users.sourceforge.net>
3 * Copyright (C) 2021 Florian HENRY <florian.henry@scopen.fr>
4 * Copyright (C) 2024 Alexandre Spangaro <alexandre@inovea-conseil.com>
5 * Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
6 * Copyright (C) 2025 MDW <mdeweerd@users.noreply.github.com>
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 3 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program. If not, see <https://www.gnu.org/licenses/>.
20 */
21
29// Load Dolibarr environment
30require '../main.inc.php';
31
32require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
33require_once DOL_DOCUMENT_ROOT.'/core/lib/project.lib.php';
34require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
35require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
36require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorbooth.class.php';
37require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
38require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
39
40
51// Load translation files required by the page
52$langs->loadLangs(array('companies', 'eventorganization', 'mails', 'others', 'projects'));
53
54// Variables GET
55$id = GETPOSTINT('id');
56$ref = GETPOST('ref', 'alpha');
57$lineid = GETPOSTINT('lineid');
58$socid = GETPOSTINT('socid');
59
60$action = GETPOST('action', 'aZ09');
61$confirm = GETPOST('confirm', 'alpha');
62$cancel = GETPOST('cancel');
63$contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : 'conferenceorboothcard'; // To manage different context of search
64$backtopage = GETPOST('backtopage', 'alpha');
65$backtopageforcancel = GETPOST('backtopageforcancel', 'alpha');
66
67$withproject = GETPOSTINT('withproject');
68
69
70// Initialize a technical objects
71$object = new ConferenceOrBooth($db);
72$extrafields = new ExtraFields($db);
73$projectstatic = new Project($db);
74$diroutputmassaction = $conf->eventorganization->dir_output.'/temp/massgeneration/'.$user->id;
75$hookmanager->initHooks(array('conferenceorboothcontact', 'globalcard')); // Note that conf->hooks_modules contains array
76
77// Fetch optionals attributes and labels
78$extrafields->fetch_name_optionals_label($object->table_element);
79
80$search_array_options = $extrafields->getOptionalsFromPost($object->table_element, '', 'search_');
81
82// Load object
83include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be 'include', not 'include_once'.
84
85// Security check
86if ($user->socid > 0) {
88}
89
90$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
91$result = restrictedArea($user, 'eventorganization', $object->id, '', '', 'fk_soc', 'rowid', $isdraft);
92
93$permissiontoread = $user->hasRight('eventorganization', 'read');
94$permissiontoadd = $user->hasRight('eventorganization', 'write'); // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
95$permissiontodelete = $user->hasRight('eventorganization', 'delete') || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);
96$permissionnote = $user->hasRight('eventorganization', 'write'); // Used by the include of actions_setnotes.inc.php
97$permissiondellink = $user->hasRight('eventorganization', 'write'); // Used by the include of actions_dellink.inc.php
98$upload_dir = $conf->eventorganization->multidir_output[isset($object->entity) ? $object->entity : 1];
99
100// Security check
101if ($user->socid > 0) {
103}
104$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
105$result = restrictedArea($user, 'eventorganization', $object->id, '', '', 'fk_soc', 'rowid', $isdraft);
106
107if (!$permissiontoread) {
109}
110
111
112/*
113 * Actions
114 */
115
116$parameters = array();
117$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
118if ($reshook < 0) {
119 setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
120}
121
122if ($action == 'addcontact' && $permissiontoadd) { // Add a new contact
123 $contactid = (GETPOST('userid') ? GETPOSTINT('userid') : GETPOSTINT('contactid'));
124 $typeid = (GETPOST('typecontact') ? GETPOST('typecontact') : GETPOST('type'));
125 $result = $object->add_contact($contactid, $typeid, GETPOST("source", 'aZ09'));
126
127 if ($result >= 0) {
128 header("Location: ".$_SERVER['PHP_SELF']."?id=".((int) $object->id).(!empty($withproject) ? '&withproject=1' : ''));
129 exit;
130 } else {
131 if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') {
132 $langs->load("errors");
133 setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors');
134 } else {
135 setEventMessages($object->error, $object->errors, 'errors');
136 }
137 }
138} elseif ($action == 'swapstatut' && $permissiontoadd) {
139 // Toggle the status of a contact
140 $result = $object->swapContactStatus(GETPOSTINT('ligne'));
141} elseif ($action == 'deletecontact' && $permissiondellink) {
142 // Deletes a contact
143 $result = $object->delete_contact($lineid);
144
145 if ($result >= 0) {
146 header("Location: ".$_SERVER['PHP_SELF']."?id=".((int) $object->id).(!empty($withproject) ? '&withproject=1' : ''));
147 exit;
148 } else {
149 dol_print_error($db);
150 }
151}
152
153
154/*
155 * View
156 */
157
158$form = new Form($db);
159$formcompany = new FormCompany($db);
160$contactstatic = new Contact($db);
161$userstatic = new User($db);
162
163$title = $langs->trans('ConferenceOrBooth')." - ".$langs->trans('ContactsAddresses');
164$help_url = 'EN:Module_Event_Organization';
165
166llxHeader('', $title, $help_url, '', 0, 0, '', '', '', 'mod-eventorganization page-card_contact');
167
168
169/* *************************************************************************** */
170/* */
171/* View and edit mode */
172/* */
173/* *************************************************************************** */
174
175$result = $projectstatic->fetch($object->fk_project);
176if (getDolGlobalString('PROJECT_ALLOW_COMMENT_ON_PROJECT') && method_exists($projectstatic, 'fetchComments') && empty($projectstatic->comments)) {
177 $projectstatic->fetchComments();
178}
179if (!empty($projectstatic->socid)) {
180 $projectstatic->fetch_thirdparty();
181}
182$withProjectUrl = '';
183$object->project = clone $projectstatic;
184
185if (!empty($withproject)) {
186 // Tabs for project
187 $tab = 'eventorganisation';
188 $withProjectUrl = "&withproject=1";
189 $head = project_prepare_head($projectstatic);
190 print dol_get_fiche_head($head, $tab, $langs->trans("Project"), -1, ($projectstatic->public ? 'projectpub' : 'project'), 0, '', '');
191
192 $param = ($mode == 'mine' ? '&mode=mine' : '');
193
194 // Project card
195
196 $linkback = '<a href="'.DOL_URL_ROOT.'/projet/list.php?restore_lastsearch_values=1">'.$langs->trans("BackToList").'</a>';
197
198 $morehtmlref = '<div class="refidno">';
199 // Title
200 $morehtmlref .= $projectstatic->title;
201 // Thirdparty
202 if (isset($projectstatic->thirdparty->id) && $projectstatic->thirdparty->id > 0) {
203 $morehtmlref .= '<br>'.$projectstatic->thirdparty->getNomUrl(1, 'project');
204 }
205 $morehtmlref .= '</div>';
206
207 // Define a complementary filter for search of next/prev ref.
208 if (!$user->hasRight('project', 'all', 'lire')) {
209 $objectsListId = $projectstatic->getProjectsAuthorizedForUser($user, 0, 0);
210 $projectstatic->next_prev_filter = "rowid:IN:".$db->sanitize(count($objectsListId) ? implode(',', array_keys($objectsListId)) : '0');
211 }
212
213 dol_banner_tab($projectstatic, 'project_ref', $linkback, 1, 'ref', 'ref', $morehtmlref);
214
215 print '<div class="fichecenter">';
216 print '<div class="fichehalfleft">';
217 print '<div class="underbanner clearboth"></div>';
218
219 print '<table class="border tableforfield centpercent">';
220
221 // Usage
222 if (getDolGlobalString('PROJECT_USE_OPPORTUNITIES') || !getDolGlobalString('PROJECT_HIDE_TASKS') || isModEnabled('eventorganization')) {
223 print '<tr><td class="tdtop">';
224 print $langs->trans("Usage");
225 print '</td>';
226 print '<td>';
227 if (getDolGlobalString('PROJECT_USE_OPPORTUNITIES')) {
228 print '<input type="checkbox" disabled name="usage_opportunity"'.(GETPOSTISSET('usage_opportunity') ? (GETPOST('usage_opportunity', 'alpha') != '' ? ' checked="checked"' : '') : ($projectstatic->usage_opportunity ? ' checked="checked"' : '')).'"> ';
229 $htmltext = $langs->trans("ProjectFollowOpportunity");
230 print $form->textwithpicto($langs->trans("ProjectFollowOpportunity"), $htmltext);
231 print '<br>';
232 }
233 if (!getDolGlobalString('PROJECT_HIDE_TASKS')) {
234 print '<input type="checkbox" disabled name="usage_task"'.(GETPOSTISSET('usage_task') ? (GETPOST('usage_task', 'alpha') != '' ? ' checked="checked"' : '') : ($projectstatic->usage_task ? ' checked="checked"' : '')).'"> ';
235 $htmltext = $langs->trans("ProjectFollowTasks");
236 print $form->textwithpicto($langs->trans("ProjectFollowTasks"), $htmltext);
237 print '<br>';
238 }
239 if (!getDolGlobalString('PROJECT_HIDE_TASKS') && getDolGlobalString('PROJECT_BILL_TIME_SPENT')) {
240 print '<input type="checkbox" disabled name="usage_bill_time"'.(GETPOSTISSET('usage_bill_time') ? (GETPOST('usage_bill_time', 'alpha') != '' ? ' checked="checked"' : '') : ($projectstatic->usage_bill_time ? ' checked="checked"' : '')).'"> ';
241 $htmltext = $langs->trans("ProjectBillTimeDescription");
242 print $form->textwithpicto($langs->trans("BillTime"), $htmltext);
243 print '<br>';
244 }
245 if (isModEnabled('eventorganization')) {
246 print '<input type="checkbox" disabled name="usage_organize_event"'.(GETPOSTISSET('usage_organize_event') ? (GETPOST('usage_organize_event', 'alpha') != '' ? ' checked="checked"' : '') : ($projectstatic->usage_organize_event ? ' checked="checked"' : '')).'"> ';
247 $htmltext = $langs->trans("EventOrganizationDescriptionLong");
248 print $form->textwithpicto($langs->trans("ManageOrganizeEvent"), $htmltext);
249 }
250 print '</td></tr>';
251 }
252
253 // Visibility
254 print '<tr><td class="titlefield">'.$langs->trans("Visibility").'</td><td>';
255 if ($projectstatic->public) {
256 print $langs->trans('SharedProject');
257 } else {
258 print $langs->trans('PrivateProject');
259 }
260 print '</td></tr>';
261
262 // Date start - end
263 print '<tr><td>'.$langs->trans("DateStart").' - '.$langs->trans("DateEnd").'</td><td>';
264 $start = dol_print_date($projectstatic->date_start, 'day');
265 print($start ? $start : '?');
266 $end = dol_print_date($projectstatic->date_end, 'day');
267 print ' - ';
268 print($end ? $end : '?');
269 if ($projectstatic->hasDelay()) {
270 print img_warning("Late");
271 }
272 print '</td></tr>';
273
274 // Budget
275 print '<tr><td>'.$langs->trans("Budget").'</td><td>';
276 if (strcmp($projectstatic->budget_amount, '')) {
277 print price($projectstatic->budget_amount, 0, $langs, 1, 0, 0, $conf->currency);
278 }
279 print '</td></tr>';
280
281 // Other attributes
282 $cols = 2;
283 $objectconf = $object;
284 $object = $projectstatic;
285 include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_view.tpl.php';
286 $object = $objectconf;
287
288 print '</table>';
289
290 print '</div>';
291
292 print '<div class="fichehalfright">';
293 print '<div class="underbanner clearboth"></div>';
294
295 print '<table class="border tableforfield centpercent">';
296
297 // Description
298 print '<td class="tdtop">'.$langs->trans("Description").'</td><td>';
299 print nl2br($projectstatic->description);
300 print '</td></tr>';
301
302 // Categories
303 if (isModEnabled('category')) {
304 print '<tr><td class="valignmiddle">'.$langs->trans("Categories").'</td><td>';
305 print $form->showCategories($projectstatic->id, Categorie::TYPE_PROJECT, 1);
306 print "</td></tr>";
307 }
308
309 print '<tr><td>';
310 $typeofdata = 'checkbox:'.($projectstatic->accept_conference_suggestions ? ' checked="checked"' : '');
311 $htmltext = $langs->trans("AllowUnknownPeopleSuggestConfHelp");
312 print $form->editfieldkey('AllowUnknownPeopleSuggestConf', 'accept_conference_suggestions', '', $projectstatic, 0, $typeofdata, '', 0, 0, 'projectid', $htmltext);
313 print '</td><td>';
314 print $form->editfieldval('AllowUnknownPeopleSuggestConf', 'accept_conference_suggestions', '1', $projectstatic, 0, $typeofdata, '', null, null, '', 0, '', 'projectid');
315 print "</td></tr>";
316
317 print '<tr><td>';
318 $typeofdata = 'checkbox:'.($projectstatic->accept_booth_suggestions ? ' checked="checked"' : '');
319 $htmltext = $langs->trans("AllowUnknownPeopleSuggestBoothHelp");
320 print $form->editfieldkey('AllowUnknownPeopleSuggestBooth', 'accept_booth_suggestions', '', $projectstatic, 0, $typeofdata, '', 0, 0, 'projectid', $htmltext);
321 print '</td><td>';
322 print $form->editfieldval('AllowUnknownPeopleSuggestBooth', 'accept_booth_suggestions', '1', $projectstatic, 0, $typeofdata, '', null, null, '', 0, '', 'projectid');
323 print "</td></tr>";
324
325 print '<tr><td>';
326 print $form->editfieldkey($form->textwithpicto($langs->trans('PriceOfBooth'), $langs->trans("PriceOfBoothHelp")), 'price_booth', '', $projectstatic, 0, 'amount', '', 0, 0, 'projectid');
327 print '</td><td>';
328 print $form->editfieldval($form->textwithpicto($langs->trans('PriceOfBooth'), $langs->trans("PriceOfBoothHelp")), 'price_booth', $projectstatic->price_booth, $projectstatic, 0, 'amount', '', null, null, '', 0, '', 'projectid');
329 print "</td></tr>";
330
331 print '<tr><td>';
332 print $form->editfieldkey($form->textwithpicto($langs->trans('PriceOfRegistration'), $langs->trans("PriceOfRegistrationHelp")), 'price_registration', '', $projectstatic, 0, 'amount', '', 0, 0, 'projectid');
333 print '</td><td>';
334 print $form->editfieldval($form->textwithpicto($langs->trans('PriceOfRegistration'), $langs->trans("PriceOfRegistrationHelp")), 'price_registration', $projectstatic->price_registration, $projectstatic, 0, 'amount', '', null, null, '', 0, '', 'projectid');
335 print "</td></tr>";
336
337 print '<tr><td valign="middle">'.$langs->trans("EventOrganizationICSLink").'</td><td>';
338 // Define $urlwithroot
339 $urlwithouturlroot = preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root));
340 $urlwithroot = $urlwithouturlroot.DOL_URL_ROOT;
341
342 // Show message
343 $message = '<a target="_blank" rel="noopener noreferrer" href="'.$urlwithroot.'/public/agenda/agendaexport.php?format=ical'.($conf->entity > 1 ? "&entity=".$conf->entity : "");
344 $message .= '&exportkey='.urlencode(getDolGlobalString('MAIN_AGENDA_XCAL_EXPORTKEY', '...'));
345 $message .= "&project=".$projectstatic->id.'&module='.urlencode('@eventorganization').'&status='.ConferenceOrBooth::STATUS_CONFIRMED.'">'.$langs->trans('DownloadICSLink').img_picto('', 'download', 'class="paddingleft"').'</a>';
346 print $message;
347 print "</td></tr>";
348
349 // Link to the submit vote/register page
350 print '<tr><td>';
351 //print '<span class="opacitymedium">';
352 print $form->textwithpicto($langs->trans("SuggestOrVoteForConfOrBooth"), $langs->trans("EvntOrgRegistrationHelpMessage"));
353 //print '</span>';
354 print '</td><td>';
355 $linksuggest = $dolibarr_main_url_root.'/public/project/index.php?id='.((int) $projectstatic->id);
356 $encodedsecurekey = dol_hash(getDolGlobalString('EVENTORGANIZATION_SECUREKEY').'conferenceorbooth'.((int) $projectstatic->id), 'md5');
357 $linksuggest .= '&securekey='.urlencode($encodedsecurekey);
358 //print '<div class="urllink">';
359 //print '<input type="text" value="'.$linksuggest.'" id="linkregister" class="quatrevingtpercent paddingrightonly">';
360 print '<div class="tdoverflowmax200 inline-block valignmiddle"><a target="_blank" href="'.$linksuggest.'" class="quatrevingtpercent">'.$linksuggest.'</a></div>';
361 print '<a target="_blank" rel="noopener noreferrer" href="'.$linksuggest.'">'.img_picto('', 'globe').'</a>';
362 //print '</div>';
363 //print ajax_autoselect("linkregister");
364 print '</td></tr>';
365
366 // Link to the subscribe
367 print '<tr><td>';
368 //print '<span class="opacitymedium">';
369 print $langs->trans("PublicAttendeeSubscriptionGlobalPage");
370 //print '</span>';
371 print '</td><td>';
372 $link_subscription = $dolibarr_main_url_root.'/public/eventorganization/attendee_new.php?id='.((int) $projectstatic->id).'&type=global';
373 $encodedsecurekey = dol_hash(getDolGlobalString('EVENTORGANIZATION_SECUREKEY').'conferenceorbooth'.((int) $projectstatic->id), 'md5');
374 $link_subscription .= '&securekey='.urlencode($encodedsecurekey);
375 //print '<div class="urllink">';
376 //print '<input type="text" value="'.$linkregister.'" id="linkregister" class="quatrevingtpercent paddingrightonly">';
377 print '<div class="tdoverflowmax200 inline-block valignmiddle"><a target="_blank" href="'.$link_subscription.'" class="quatrevingtpercent">'.$link_subscription.'</a></div>';
378 print '<a target="_blank" rel="noopener noreferrer" rel="noopener noreferrer" href="'.$link_subscription.'">'.img_picto('', 'globe').'</a>';
379 //print '</div>';
380 //print ajax_autoselect("linkregister");
381 print '</td></tr>';
382
383 print '</table>';
384
385 print '</div>';
386 print '</div>';
387
388 print '<div class="clearboth"></div>';
389
390 print dol_get_fiche_end();
391
392 print '<br>';
393}
394
395if ($object->id) {
396 /*
397 * Show tabs
398 */
399 $head = conferenceorboothPrepareHead($object, $withproject);
400
401 print dol_get_fiche_head($head, 'contact', $langs->trans("ConferenceOrBooth"), -1, $object->picto);
402
403 $linkback = '<a href="'.dol_buildpath('/eventorganization/conferenceorbooth_list.php', 1).'?restore_lastsearch_values=1'.(!empty($socid) ? '&socid='.$socid : '').'">'.$langs->trans("BackToList").'</a>';
404
405 $morehtmlref = '<div class="refidno">';
406 /*
407 // Ref customer
408 $morehtmlref.=$form->editfieldkey("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', 0, 1);
409 $morehtmlref.=$form->editfieldval("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', null, null, '', 1);
410 // Thirdparty
411 $morehtmlref.='<br>'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
412 // Project
413 if (isModEnabled('project'))
414 {
415 $langs->load("projects");
416 $morehtmlref.='<br>'.$langs->trans('Project') . ' ';
417 if ($permissiontoadd)
418 {
419 if ($action != 'classify')
420 //$morehtmlref.='<a class="editfielda" href="' . $_SERVER['PHP_SELF'] . '?action=classify&token='.newToken().'&id=' . $object->id . '">' . img_edit($langs->transnoentitiesnoconv('SetProject')) . '</a> : ';
421 $morehtmlref.=' : ';
422 if ($action == 'classify') {
423 //$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1);
424 $morehtmlref.='<form method="post" action="'.$_SERVER['PHP_SELF'].'?id='.$object->id.'">';
425 $morehtmlref.='<input type="hidden" name="action" value="classin">';
426 $morehtmlref.='<input type="hidden" name="token" value="'.newToken().'">';
427 $morehtmlref.=$formproject->select_projects($object->socid, $object->fk_project, 'projectid', $maxlength, 0, 1, 0, 1, 0, 0, '', 1);
428 $morehtmlref.='<input type="submit" class="button valignmiddle" value="'.$langs->trans("Modify").'">';
429 $morehtmlref.='</form>';
430 } else {
431 $morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
432 }
433 } else {
434 if (!empty($object->fk_project)) {
435 $proj = new Project($db);
436 $proj->fetch($object->fk_project);
437 $morehtmlref .= ': '.$proj->getNomUrl();
438 } else {
439 $morehtmlref .= '';
440 }
441 }
442 }*/
443 $morehtmlref .= '</div>';
444
445 dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref, '', 0, '', '', 1);
446
447 print dol_get_fiche_end();
448
449 print '<br>';
450
451 // Contacts lines (modules that overwrite templates must declare this into descriptor)
452 $dirtpls = array_merge($conf->modules_parts['tpl'], array('/core/tpl'));
453 foreach ($dirtpls as $reldir) {
454 $res = @include dol_buildpath($reldir.'/contacts.tpl.php');
455 if ($res) {
456 break;
457 }
458 }
459}
460
461// End of page
462llxFooter();
463$db->close();
$id
Support class for third parties, contacts, members, users or resources.
Definition account.php:48
if( $user->socid > 0) if(! $user->hasRight('accounting', 'chartofaccount')) $object
Definition card.php:67
global $dolibarr_main_url_root
llxFooter($comment='', $zone='private', $disabledoutputofmessages=0)
Empty footer.
Definition wrapper.php:91
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader($head='', $title='', $help_url='', $target='', $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='', $morequerystring='', $morecssonbody='', $replacemainareaby='', $disablenofollow=0, $disablenoindex=0)
Empty header.
Definition wrapper.php:73
Class for ConferenceOrBooth.
Class to manage contact/addresses.
Class to manage standard extra fields.
Class to build HTML component for third parties management Only common components are here.
Class to manage generation of HTML components Only common components must be here.
Class to manage projects.
Class to manage Dolibarr users.
conferenceorboothPrepareHead($object, $with_project=0)
Prepare array of tabs for ConferenceOrBooth.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0, $attop=0)
Set event messages in dol_events session object.
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=0, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2, $allowothertags=array())
Show picto whatever it's its name (generic function)
img_warning($titlealt='default', $moreatt='', $morecss='pictowarning')
Show warning logo.
GETPOSTINT($paramname, $method=0)
Return the value of a $_GET or $_POST supervariable, converted into integer.
dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limittoshow=0, $moretabssuffix='', $dragdropfile=0, $morecssdiv='')
Show tabs of a record.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
price($amount, $form=0, $outlangs='', $trunc=1, $rounding=-1, $forcerounding=-1, $currency_code='')
Function to format a value into an amount for visual output Function used into PDF and HTML pages.
dol_print_date($time, $format='', $tzoutput='auto', $outputlangs=null, $encodetooutput=false)
Output date in a string format according to outputlangs (or langs if not defined).
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
dol_buildpath($path, $type=0, $returnemptyifnotfound=0)
Return path of url or filesystem.
dol_print_error($db=null, $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
getDolGlobalString($key, $default='')
Return a Dolibarr global constant string value.
global $conf
The following vars must be defined: $type2label $form $conf, $lang, The following vars may also be de...
Definition member.php:79
project_prepare_head(Project $project, $moreparam='')
Prepare array with list of tabs.
dol_hash($chain, $type='0', $nosalt=0, $mode=0)
Returns a hash (non reversible encryption) of a string.
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.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.