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