21require
'../../../../main.inc.php';
31if ($user->socid > 0) {
36require_once DOL_DOCUMENT_ROOT .
'/admin/tools/ui/class/documentation.class.php';
39$langs->load(
'uxdocumentation');
45$documentation->docHeader(
'Icons', [], [
'admin/tools/ui/css/doc-icons.css'],
GETPOST(
'hidenavmenu'));
49$documentation->view = array(
'Components',
'Icons');
53$displayMode =
GETPOST(
'displayMode') ==
'kanban' ?
'kanban' :
'icon-only';
54$revertDisplayMode = $displayMode ==
'kanban' ?
'icon-only' :
'kanban';
55$revertDisplayName = $displayMode ==
'kanban' ? $langs->trans(
'ViewList') : $langs->trans(
'ViewKanban');
56$switchDisplayLink =
dol_buildpath($documentation->baseUrl .
'/components/icons.php', 1) .
'?displayMode=' . $revertDisplayMode;
57$switchDisplayLinkIcon = $displayMode ==
'kanban' ?
'fa fa-th' :
'fa fa-th-list';
61 $documentation->showSidebar();
65<div
class=
"doc-wrapper<?php print GETPOST('hidenavmenu') ? "-bis
" : ""; ?>">
69 $documentation->showBreadCrumb();
73 <div
class=
"doc-content-wrapper">
75 <h1
class=
"documentation-title"><?php echo $langs->trans(
'DocIconsTitle'); ?></h1>
76 <p
class=
"documentation-text"><?php echo $langs->trans(
'DocIconsMainDescription'); ?></p>
79 <?php $documentation->showSummary(); ?>
83 <!-- List of usage font awesome icon -->
84 <div
class=
"documentation-section" id=
"img-picto-section-list">
88 $iconFileName =
'shims.json';
89 $iconFilePath = DOL_DOCUMENT_ROOT .
'/theme/common/fontawesome-5/metadata';
91 $fontAwesomeIconRaw = file_get_contents($iconFilePath.
'/' .$iconFileName);
92 if ($fontAwesomeIconRaw ===
false) {
93 dol_print_error($db,
'Error missing file '. $iconFilePath .
'/' . $iconFileName);
96 $fontAwesomeIcons = json_decode($fontAwesomeIconRaw);
97 if ($fontAwesomeIcons ===
null) {
98 dol_print_error($db,
'Error decoding '. $iconFilePath .
'/' . $iconFileName);
102 <h2
class=
"documentation-title"><?php echo $langs->trans(
'DocIconsListImgPicto'); ?></h2>
105 <?php print $form->getSearchFilterToolInput(
106 '.documentation-img-picto-icon-list .info-box, .documentation-img-picto-icon-list .doc-icon-list-item',
107 'search-tools-input',
110 'data-no-item-target' =>
'#img-picto-section-list .search-tool-no-results',
117 if ($mode !=
'no-btn') {
118 print
dolGetButtonTitle($revertDisplayName,
'', $switchDisplayLinkIcon, $switchDisplayLink.
'#img-picto-section-list',
'', 1, [
'forcenohideoftext'=>1]);
123 <div
class=
"documentation-example">
124 <div
class=
"documentation-img-picto-icon-list">
126 $arrayofdolibarriconkey = getImgPictoNameList();
128 foreach ($arrayofdolibarriconkey as $iconName) {
129 $labelAlt =
'Text on title tag for tooltip';
131 if ($displayMode ==
'kanban') {
132 $iconCode =
img_picto($iconName, $iconName);
133 print
'<div class="info-box ">
134 <span class="info-box-icon bg-infobox-expensereport">
137 <div class="info-box-content">
138 <div class="info-box-title" >'. $iconName .
'</div>
139 <div class="info-box-lines">
140 <div class="info-box-line spanoverflow nowrap">
141 <div class="inline-block nowraponall">
142 <div class="documentation-code"><pre>'.
dol_htmlentities(
'img_picto(\''.$labelAlt.
'\', \
''.$iconName.
'\')
').'</pre></div>
145 </div><!-- /.info-box-lines -->
146 </div><!-- /.info-box-content -->
149 $tooltip = '<u>
'.$langs->trans("DocCodeForMenuOrModuleBuilder").':</u><br>
'.$iconName;
150 $tooltip .= '<br><br><u>
'.$langs->trans("DocExampleForPHPCode").':</u><br>
img_picto(\
''.$labelAlt.
'\', \
''.$iconName.
'\')
';
151 $iconCode = img_picto($tooltip, $iconName, '', 0, 0, 0, '', 'classfortooltip
');
152 print '<span
class=
"doc-icon-list-item">
'.$iconCode;
153 print '<span
class=
"doc-icon-hidden-name-for-search">
'.$iconName.'</span></span>
';
159 <div class="search-tool-no-results center hidden-search-result" ><?php print $langs->trans('NoResults
') ?></div>
168 <!-- List of usage font awesome icon -->
169 <div class="documentation-section" id="icon-section-list">
173 $iconFileName = 'shims.json
';
174 $iconFilePath = DOL_DOCUMENT_ROOT . '/theme/common/fontawesome-5/metadata
';
176 $fontAwesomeIconRaw = file_get_contents($iconFilePath. '/
' .$iconFileName);
177 if ($fontAwesomeIconRaw === false) {
178 dol_print_error($db, 'Error missing file
'. $iconFilePath . '/
' . $iconFileName);
181 $fontAwesomeIcons = json_decode($fontAwesomeIconRaw);
182 if ($fontAwesomeIcons === null) {
183 dol_print_error($db, 'Error decoding
'. $iconFilePath . '/
' . $iconFileName);
187 <h2 class="documentation-title"><?php echo $langs->trans('DocIconsListFontAwesome
'); ?></h2>
188 <?php /* <p class="documentation-text"><?php echo $langs->trans('DocDocIconsListDescription
'); ?></p>*/ ?>
190 <?php print $form->getSearchFilterToolInput('.documentation-fontawesome-icon-list .
info-box, .documentation-fontawesome-icon-list .doc-icon-list-item
',
191 'search-tools-input
',
194 'data-no-item-target
' => '#icon-section-list .search-tool-no-results
',
201 if ($mode != 'no-btn
') {
202 print dolGetButtonTitle($revertDisplayName, '', $switchDisplayLinkIcon, $switchDisplayLink.'#icon-section-list
', '', 1, ['forcenohideoftext
'=>1]);
207 <div class="documentation-example">
208 <div class="documentation-fontawesome-icon-list">
210 $alreadyDisplay = [];
211 if ($fontAwesomeIcons && is_array($fontAwesomeIcons)) {
212 foreach ($fontAwesomeIcons as $iconData) {
213 $class= $iconData[1]??'fa
';
214 if (!empty($iconData[2])) {
215 $class.= ' fa-
'.$iconData[2];
217 $class.= ' fa-
'.$iconData[0];
220 if (in_array($class, $alreadyDisplay)) {
224 $alreadyDisplay[] = $class;
225 $iconCode = '<span
class=
"'.$class.'" ></span>
';
227 if ($displayMode == 'kanban
') {
228 print '<div
class=
"info-box ">
229 <span
class=
"info-box-icon bg-infobox-expensereport">
232 <div
class=
"info-box-content">
233 <div
class=
"info-box-title" >
' . ($iconData[2] ?? ($iconData[0] ?? '')) . '</div>
234 <div
class=
"info-box-lines">
235 <div
class=
"info-box-line spanoverflow nowrap">
236 <div
class=
"inline-block nowraponall">
237 <div
class=
"documentation-code"><pre>
' . dol_htmlentities($iconCode) . '</pre></div>
240 </div><!-- /.info-box-lines -->
241 </div><!-- /.info-box-content -->
244 $tooltip = '<u>
'.$langs->trans("DocCodeForMenuOrModuleBuilder").':</u><br>
'.$class;
245 print '<span
class=
"doc-icon-list-item classfortooltip" title=
"'.dol_escape_htmltag($tooltip).'">
'.$iconCode.'<span
class=
"doc-icon-hidden-name-for-search">
'.$class.'</span></span>
';
252 <div class="search-tool-no-results center hidden-search-result" ><?php print $langs->trans('NoResults
') ?></div>
260// Output close body + html
261$documentation->docFooter();
270function getImgPictoNameList()
272 return array_merge(array_keys(getImgPictoConv()), array(
273 // Reduce this list to picto that are not already into getImgPictoConv()
279 '1downarrow_selected
',
280 '1leftarrow_selected
',
281 '1rightarrow_selected
',
283 'accounting_account
',
347 'chevron-
double-left
',
348 'chevron-
double-right
',
349 'chevron-
double-down
',
350 'chevron-
double-top
',
368 'external-link-square-alt
',
403 'knowledgemanagement
',
415 'long-arrow-alt-right
',
521 'recruitmentcandidature
',
522 'recruitmentjobposition
',
Class to manage UI documentation.
info($id)
Load info of user object.
print $langs trans("Ref").' m titre as m m statut as status
Or an array listing all the potential status of the object: array: int of the status => translated la...
print $script_file $mode $langs defaultlang(is_numeric($duration_value) ? " delay=". $duration_value :"").(is_numeric($duration_value2) ? " after cd cd cd description as p label as s rowid as s nom as s email
Sender: Who sends the email ("Sender" has sent emails on behalf of "From").
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)
dolGetButtonTitle($label, $helpText='', $iconClass='fa fa-file', $url='', $id='', $status=1, $params=array())
Function dolGetButtonTitle : this kind of buttons are used in title in list.
dol_htmlentities($string, $flags=ENT_QUOTES|ENT_SUBSTITUTE, $encoding='UTF-8', $double_encode=false)
Replace htmlentities functions.
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...
div refaddress div address
$conf db user
Active Directory does not allow anonymous connections.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.