/** * Show left menu bar * * @param array $menu_array_before Table of menu entries to show before entries of menu handler * @param string $helppagename Name of wiki page for help ('' by default). * Syntax is: For a wiki page: EN:EnglishPage|FR:FrenchPage|ES:SpanishPage * For other external page: http://server/url * @param string $moresearchform Search Form Permanent Supplemental * @param array $menu_array_after Table of menu entries to show after entries of menu handler * @param int $leftmenuwithoutmainarea Must be set to 1. 0 by default for backward compatibility with old modules. * @param string $title Title of web page * @return void */ function left_menu($menu_array_before, $helppagename = '', $moresearchform = '', $menu_array_after = '', $leftmenuwithoutmainarea = 0, $title = '') { global $user, $conf, $langs, $db; global $hookmanager, $menumanager; $searchform = ''; $bookmarks = ''; if (empty($conf->dol_hide_leftmenu)) { // Instantiate hooks of thirdparty module $hookmanager->initHooks(array('searchform', 'leftblock')); if (empty($conf->dol_use_jmobile) && !empty($conf->use_javascript_ajax) && !empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) { print "\n" . '<!-- Begin left layout -->' . "\n" . '<div class="ui-layout-west">' . "\n"; } else { print "\n" . '<!-- Begin id-left -->' . "\n" . '<div class="side-nav"><div id="id-left">' . "\n"; } print "\n"; // Define $searchform if ((!empty($conf->societe->enabled) && (empty($conf->global->SOCIETE_DISABLE_PROSPECTS) || empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) || !empty($conf->fournisseur->enabled)) && !empty($conf->global->MAIN_SEARCHFORM_SOCIETE) && $user->rights->societe->lire) { $langs->load("companies"); $searchform .= printSearchForm(DOL_URL_ROOT . '/societe/list.php', DOL_URL_ROOT . '/societe/list.php', $langs->trans("ThirdParties"), 'soc', 'socname', 'T', 'searchleftt', img_object('', 'company')); } if (!empty($conf->societe->enabled) && !empty($conf->global->MAIN_SEARCHFORM_CONTACT) && $user->rights->societe->lire) { $langs->load("companies"); $searchform .= printSearchForm(DOL_URL_ROOT . '/contact/list.php', DOL_URL_ROOT . '/contact/list.php', $langs->trans("Contacts"), 'contact', 'contactname', '', 'searchleftc', img_object('', 'contact')); } if ((!empty($conf->product->enabled) && $user->rights->produit->lire || !empty($conf->service->enabled) && $user->rights->service->lire) && !empty($conf->global->MAIN_SEARCHFORM_PRODUITSERVICE)) { $langs->load("products"); $searchform .= printSearchForm(DOL_URL_ROOT . '/product/list.php', DOL_URL_ROOT . '/product/list.php', $langs->trans("Products") . "/" . $langs->trans("Services"), 'products', 'sall', 'P', 'searchleftp', img_object('', 'product')); } if ((!empty($conf->product->enabled) && $user->rights->produit->lire || !empty($conf->service->enabled) && $user->rights->service->lire) && !empty($conf->fournisseur->enabled) && !empty($conf->global->MAIN_SEARCHFORM_PRODUITSERVICE_SUPPLIER)) { $langs->load("products"); $searchform .= printSearchForm(DOL_URL_ROOT . '/fourn/product/list.php', DOL_URL_ROOT . '/fourn/product/list.php', $langs->trans("SupplierRef"), 'products', 'srefsupplier', '', 'searchlefts', img_object('', 'product')); } if (!empty($conf->adherent->enabled) && !empty($conf->global->MAIN_SEARCHFORM_ADHERENT) && $user->rights->adherent->lire) { $langs->load("members"); $searchform .= printSearchForm(DOL_URL_ROOT . '/adherents/list.php', DOL_URL_ROOT . '/adherents/list.php', $langs->trans("Members"), 'member', 'sall', 'M', 'searchleftm', img_object('', 'user')); } if (!empty($conf->projet->enabled) && !empty($conf->global->MAIN_SEARCHFORM_PROJECT) && $user->rights->projet->lire) { $langs->load("members"); $searchform .= printSearchForm(DOL_URL_ROOT . '/projet/list.php', DOL_URL_ROOT . '/projet/list.php', $langs->trans("Projects"), 'project', 'search_all', 'M', 'searchleftproj', img_object('', 'projectpub')); } // Execute hook printSearchForm $parameters = array(); $reshook = $hookmanager->executeHooks('printSearchForm', $parameters); // Note that $action and $object may have been modified by some hooks if (empty($reshook)) { $searchform .= $hookmanager->resPrint; } else { $searchform = $hookmanager->resPrint; } // Define $bookmarks if (!empty($conf->bookmark->enabled) && $user->rights->bookmark->lire) { include_once DOL_DOCUMENT_ROOT . '/bookmarks/bookmarks.lib.php'; $langs->load("bookmarks"); $bookmarks = printBookmarksList($db, $langs); } // Left column print '<!-- Begin left menu -->' . "\n"; print '<div class="vmenu">' . "\n\n"; $menumanager->menu_array = $menu_array_before; $menumanager->menu_array_after = $menu_array_after; $menumanager->showmenu('left'); // output menu_array and menu found in database // Show other forms if ($searchform) { print "\n"; print "<!-- Begin SearchForm -->\n"; print '<div id="blockvmenusearch" class="blockvmenusearch">' . "\n"; print $searchform; print '</div>' . "\n"; print "<!-- End SearchForm -->\n"; } // More search form if ($moresearchform) { print $moresearchform; } // Bookmarks if ($bookmarks) { print "\n"; print "<!-- Begin Bookmarks -->\n"; print '<div id="blockvmenubookmarks" class="blockvmenubookmarks">' . "\n"; print $bookmarks; print '</div>' . "\n"; print "<!-- End Bookmarks -->\n"; } print "\n"; print "<!-- Begin Help Block-->\n"; print '<div id="blockvmenuhelp" class="blockvmenuhelp">' . "\n"; //Dolibarr version $doliurl = 'http://www.dolibarr.org'; //local communities if (preg_match('/fr/i', $langs->defaultlang)) { $doliurl = 'http://www.dolibarr.fr'; } if (preg_match('/es/i', $langs->defaultlang)) { $doliurl = 'http://www.dolibarr.es'; } if (preg_match('/de/i', $langs->defaultlang)) { $doliurl = 'http://www.dolibarr.de'; } if (preg_match('/it/i', $langs->defaultlang)) { $doliurl = 'http://www.dolibarr.it'; } if (preg_match('/gr/i', $langs->defaultlang)) { $doliurl = 'http://www.dolibarr.gr'; } $appli = 'Dolibarr'; if (!empty($conf->global->MAIN_APPLICATION_TITLE)) { $appli = $conf->global->MAIN_APPLICATION_TITLE; $doliurl = ''; if (preg_match('/\\d\\.\\d/', $appli)) { if (!preg_match('/' . preg_quote(DOL_VERSION) . '/', $appli)) { $appli .= " (" . DOL_VERSION . ")"; } // If new title contains a version that is different than core } else { $appli .= " " . DOL_VERSION; } } else { $appli .= " " . DOL_VERSION; } print '<div id="blockvmenuhelpapp" class="blockvmenuhelp">'; if ($doliurl) { print '<a class="help" target="_blank" href="' . $doliurl . '">'; } print $appli; if ($doliurl) { print '</a>'; } print '</div>' . "\n"; // Link to Dolibarr wiki pages if ($helppagename && empty($conf->global->MAIN_HELP_DISABLELINK)) { $langs->load("help"); $helpbaseurl = ''; $helppage = ''; $mode = ''; // Get helpbaseurl, helppage and mode from helppagename and langs $arrayres = getHelpParamFor($helppagename, $langs); $helpbaseurl = $arrayres['helpbaseurl']; $helppage = $arrayres['helppage']; $mode = $arrayres['mode']; // Link to help pages if ($helpbaseurl && $helppage) { print '<div id="blockvmenuhelpwiki" class="blockvmenuhelp">'; print '<a class="help" target="_blank" title="' . $langs->trans($mode == 'wiki' ? 'GoToWikiHelpPage' : 'GoToHelpPage'); if ($mode == 'wiki') { print ' - ' . $langs->trans("PageWiki") . ' "' . dol_escape_htmltag(strtr($helppage, '_', ' ')) . '"'; } print '" href="'; if ($mode == 'wiki') { print sprintf($helpbaseurl, urlencode(html_entity_decode($helppage))); } else { print sprintf($helpbaseurl, $helppage); } print '">'; print img_picto('', 'helpdoc') . ' '; print $langs->trans($mode == 'wiki' ? 'OnlineHelp' : 'Help'); //if ($mode == 'wiki') print ' ('.dol_trunc(strtr($helppage,'_',' '),8).')'; print '</a>'; print '</div>' . "\n"; } } // Link to bugtrack if (!empty($conf->global->MAIN_BUGTRACK_ENABLELINK)) { require_once DOL_DOCUMENT_ROOT . '/core/lib/functions2.lib.php'; $bugbaseurl = 'https://github.com/Dolibarr/dolibarr/issues/new'; $bugbaseurl .= '?title='; $bugbaseurl .= urlencode("Bug: "); $bugbaseurl .= '&body='; $bugbaseurl .= urlencode("# Environment\n"); $bugbaseurl .= urlencode("- **Version**: " . DOL_VERSION . "\n"); $bugbaseurl .= urlencode("- **OS**: " . php_uname('s') . "\n"); $bugbaseurl .= urlencode("- **Web server**: " . $_SERVER["SERVER_SOFTWARE"] . "\n"); $bugbaseurl .= urlencode("- **PHP**: " . php_sapi_name() . ' ' . phpversion() . "\n"); $bugbaseurl .= urlencode("- **Database**: " . $db::LABEL . ' ' . $db->getVersion() . "\n"); $bugbaseurl .= urlencode("- **URL**: " . $_SERVER["REQUEST_URI"] . "\n"); $bugbaseurl .= urlencode("\n"); $bugbaseurl .= urlencode("# Report\n"); print '<p id="blockvmenuhelpbugreport" class="blockvmenuhelp">'; print '<a class="help" target="_blank" href="' . $bugbaseurl . '">' . $langs->trans("FindBug") . '</a>'; print '</p>'; } print "</div>\n"; print "<!-- End Help Block-->\n"; print "\n"; print "</div>\n"; print "<!-- End left menu -->\n"; print "\n"; // Execute hook printLeftBlock $parameters = array(); $reshook = $hookmanager->executeHooks('printLeftBlock', $parameters); // Note that $action and $object may have been modified by some hooks print $hookmanager->resPrint; if (empty($conf->dol_use_jmobile) && !empty($conf->use_javascript_ajax) && !empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) { print '</div> <!-- End left layout -->' . "\n"; } else { print '</div></div> <!-- end id-left -->'; } // End div id="id-left" } print "\n"; print '<!-- Begin right area -->' . "\n"; if (empty($leftmenuwithoutmainarea)) { main_area($title); } }
/** * Show left menu bar * * @param array $menu_array_before Table of menu entries to show before entries of menu handler. This param is deprectaed and must be provided to ''. * @param string $helppagename Name of wiki page for help ('' by default). * Syntax is: For a wiki page: EN:EnglishPage|FR:FrenchPage|ES:SpanishPage * For other external page: http://server/url * @param string $notused Deprecated. Used in past to add content into left menu. Hooks can be used now. * @param array $menu_array_after Table of menu entries to show after entries of menu handler * @param int $leftmenuwithoutmainarea Must be set to 1. 0 by default for backward compatibility with old modules. * @param string $title Title of web page * @param string $acceptdelayedhtml 1 if caller request to have html delayed content not returned but saved into global $delayedhtmlcontent (so caller can show it at end of page to avoid flash FOUC effect) * @return void */ function left_menu($menu_array_before, $helppagename='', $notused='', $menu_array_after='', $leftmenuwithoutmainarea=0, $title='', $acceptdelayedhtml=0) { global $user, $conf, $langs, $db, $form; global $hookmanager, $menumanager; $searchform=''; $bookmarks=''; if (! empty($menu_array_before)) dol_syslog("Deprecated parameter menu_array_before was used when calling main::left_menu function. Menu entries of module should now be defined into module descriptor and not provided when calling left_menu.", LOG_WARNING); if (empty($conf->dol_hide_leftmenu)) { // Instantiate hooks of thirdparty module $hookmanager->initHooks(array('searchform','leftblock')); if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print "\n".'<!-- Begin left layout -->'."\n".'<div class="ui-layout-west">'."\n"; else print "\n".'<!-- Begin id-left -->'."\n".'<div class="side-nav"><div id="id-left">'."\n"; print "\n"; if ($conf->use_javascript_ajax && $conf->browser->layout != 'phone') { if (! is_object($form)) $form=new Form($db); $selected=-1; $searchform.=$form->selectArrayAjax('searchselectcombo', DOL_URL_ROOT.'/core/ajax/selectsearchbox.php', $selected, '', '', 0, 1, 'vmenusearchselectcombo', 1, $langs->trans("Search"), 1); } else { // Define $searchform if ((( ! empty($conf->societe->enabled) && (empty($conf->global->SOCIETE_DISABLE_PROSPECTS) || empty($conf->global->SOCIETE_DISABLE_CUSTOMERS))) || ! empty($conf->fournisseur->enabled)) && $user->rights->societe->lire) { $langs->load("companies"); $searchform.=printSearchForm(DOL_URL_ROOT.'/societe/list.php', DOL_URL_ROOT.'/societe/list.php', $langs->trans("ThirdParties"), 'soc', 'sall', 'T', 'searchleftt', img_object('','company')); } if (! empty($conf->societe->enabled) && $user->rights->societe->lire) { $langs->load("companies"); $searchform.=printSearchForm(DOL_URL_ROOT.'/contact/list.php', DOL_URL_ROOT.'/contact/list.php', $langs->trans("Contacts"), 'contact', 'sall', 'A', 'searchleftc', img_object('','contact')); } if (((! empty($conf->product->enabled) && $user->rights->produit->lire) || (! empty($conf->service->enabled) && $user->rights->service->lire)) ) { $langs->load("products"); $searchform.=printSearchForm(DOL_URL_ROOT.'/product/list.php', DOL_URL_ROOT.'/product/list.php', $langs->trans("Products")."/".$langs->trans("Services"), 'products', 'sall', 'P', 'searchleftp', img_object('','product')); } if (! empty($conf->projet->enabled) && $user->rights->projet->lire) { $langs->load("projects"); $searchform.=printSearchForm(DOL_URL_ROOT.'/projet/list.php', DOL_URL_ROOT.'/projet/list.php', $langs->trans("Projects"), 'project', 'search_all', 'Q', 'searchleftproj', img_object('','projectpub')); } if (! empty($conf->adherent->enabled) && $user->rights->adherent->lire) { $langs->load("members"); $searchform.=printSearchForm(DOL_URL_ROOT.'/adherents/list.php', DOL_URL_ROOT.'/adherents/list.php', $langs->trans("Members"), 'member', 'sall', 'M', 'searchleftm', img_object('','user')); } if (! empty($conf->user->enabled) && $user->rights->user->user->lire) { $langs->load("users"); $searchform.=printSearchForm(DOL_URL_ROOT.'/user/list.php', DOL_URL_ROOT.'/user/list.php', $langs->trans("Users"), 'user', 'sall', 'M', 'searchleftuser', img_object('','user')); } } // Execute hook printSearchForm $parameters=array('searchform'=>$searchform); $reshook=$hookmanager->executeHooks('printSearchForm',$parameters); // Note that $action and $object may have been modified by some hooks if (empty($reshook)) { $searchform.=$hookmanager->resPrint; } else $searchform=$hookmanager->resPrint; if ($conf->use_javascript_ajax && $conf->browser->layout == 'phone') { $searchform='<div class="blockvmenuimpair blockvmenusearchphone"><div id="divsearchforms1"><a href="#" alt="'.dol_escape_htmltag($langs->trans("ShowSearchFields")).'">'.$langs->trans("Search").'...</a></div><div id="divsearchforms2" style="display: none">'.$searchform.'</div>'; $searchform.='<script type="text/javascript"> jQuery(document).ready(function () { jQuery("#divsearchforms1").click(function(){ jQuery("#divsearchforms2").toggle(); }); }); </script>' . "\n"; $searchform.='</div>'; } // Define $bookmarks if (! empty($conf->bookmark->enabled) && $user->rights->bookmark->lire) { include_once (DOL_DOCUMENT_ROOT.'/bookmarks/bookmarks.lib.php'); $langs->load("bookmarks"); $bookmarks=printBookmarksList($db, $langs); } // Left column print '<!-- Begin left menu -->'."\n"; print '<div class="vmenu">'."\n\n"; // Show left menu with other forms $menumanager->menu_array = $menu_array_before; $menumanager->menu_array_after = $menu_array_after; $menumanager->showmenu('left', array('searchform'=>$searchform, 'bookmarks'=>$bookmarks)); // output menu_array and menu found in database // Dolibarr version + help + bug report link print "\n"; print "<!-- Begin Help Block-->\n"; print '<div id="blockvmenuhelp" class="blockvmenuhelp">'."\n"; // Version $doliurl='http://www.dolibarr.org'; //local communities if (preg_match('/fr/i',$langs->defaultlang)) $doliurl='http://www.dolibarr.fr'; if (preg_match('/es/i',$langs->defaultlang)) $doliurl='http://www.dolibarr.es'; if (preg_match('/de/i',$langs->defaultlang)) $doliurl='http://www.dolibarr.de'; if (preg_match('/it/i',$langs->defaultlang)) $doliurl='http://www.dolibarr.it'; if (preg_match('/gr/i',$langs->defaultlang)) $doliurl='http://www.dolibarr.gr'; $appli=constant('DOL_APPLICATION_TITLE'); if (! empty($conf->global->MAIN_APPLICATION_TITLE)) { $appli=$conf->global->MAIN_APPLICATION_TITLE; $doliurl=''; if (preg_match('/\d\.\d/', $appli)) { if (! preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli.=" (".DOL_VERSION.")"; // If new title contains a version that is different than core } else $appli.=" ".DOL_VERSION; } else $appli.=" ".DOL_VERSION; print '<div id="blockvmenuhelpapp" class="blockvmenuhelp">'; if ($doliurl) print '<a class="help" target="_blank" href="'.$doliurl.'">'; print $appli; if ($doliurl) print '</a>'; print '</div>'."\n"; // Link to bugtrack if (! empty($conf->global->MAIN_BUGTRACK_ENABLELINK)) { require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; $bugbaseurl = 'https://github.com/Dolibarr/dolibarr/issues/new'; $bugbaseurl.= '?title='; $bugbaseurl.= urlencode("Bug: "); $bugbaseurl.= '&body='; $bugbaseurl.= urlencode("# Environment\n"); $bugbaseurl.= urlencode("- **Version**: " . DOL_VERSION . "\n"); $bugbaseurl.= urlencode("- **OS**: " . php_uname('s') . "\n"); $bugbaseurl.= urlencode("- **Web server**: " . $_SERVER["SERVER_SOFTWARE"] . "\n"); $bugbaseurl.= urlencode("- **PHP**: " . php_sapi_name() . ' ' . phpversion() . "\n"); $bugbaseurl.= urlencode("- **Database**: " . $db::LABEL . ' ' . $db->getVersion() . "\n"); $bugbaseurl.= urlencode("- **URL**: " . $_SERVER["REQUEST_URI"] . "\n"); $bugbaseurl.= urlencode("\n"); $bugbaseurl.= urlencode("# Report\n"); print '<div id="blockvmenuhelpbugreport" class="blockvmenuhelp">'; print '<a class="help" target="_blank" href="'.$bugbaseurl.'">'.$langs->trans("FindBug").'</a>'; print '</div>'; } print "</div>\n"; print "<!-- End Help Block-->\n"; print "\n"; print "</div>\n"; print "<!-- End left menu -->\n"; print "\n"; // Execute hook printLeftBlock $parameters=array(); $reshook=$hookmanager->executeHooks('printLeftBlock',$parameters); // Note that $action and $object may have been modified by some hooks print $hookmanager->resPrint; if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print '</div> <!-- End left layout -->'."\n"; else print '</div></div> <!-- end id-left -->'; // End div id="id-left" } print "\n"; print '<!-- Begin right area -->'."\n"; if (empty($leftmenuwithoutmainarea)) main_area($title); }
/** * Show left menu bar * * @param array $menu_array_before Table of menu entries to show before entries of menu handler * @param string $helppagename Name of wiki page for help ('' by default). * Syntax is: For a wiki page: EN:EnglishPage|FR:FrenchPage|ES:SpanishPage * For other external page: http://server/url * @param string $moresearchform Search Form Permanent Supplemental * @param array $menu_array_after Table of menu entries to show after entries of menu handler * @param int $leftmenuwithoutmainarea Must be set to 1. 0 by default for backward compatibility with old modules. * @param string $title Title of web page * @return void */ function left_menu($menu_array_before, $helppagename = '', $moresearchform = '', $menu_array_after = '', $leftmenuwithoutmainarea = 0, $title = '') { global $user, $conf, $langs, $db; global $hookmanager; $searchform = ''; $bookmarks = ''; // Instantiate hooks of thirdparty module if (!is_object($hookmanager)) { include_once(DOL_DOCUMENT_ROOT . '/core/class/hookmanager.class.php'); $hookmanager = new HookManager($db); } $hookmanager->initHooks(array('searchform', 'leftblock')); print "\n"; // Define $searchform if ($conf->societe->enabled && $conf->global->MAIN_SEARCHFORM_SOCIETE && $user->rights->societe->lire) { $langs->load("companies"); $searchform.=printSearchForm(DOL_URL_ROOT . '/societe/societe.php', DOL_URL_ROOT . '/societe/societe.php', img_object('', 'company') . ' ' . $langs->trans("ThirdParties"), 'soc', 'socname'); } if ($conf->societe->enabled && $conf->global->MAIN_SEARCHFORM_CONTACT && $user->rights->societe->lire) { $langs->load("companies"); $searchform.=printSearchForm(DOL_URL_ROOT . '/contact/list.php', DOL_URL_ROOT . '/contact/list.php', img_object('', 'contact') . ' ' . $langs->trans("Contacts"), 'contact', 'contactname'); } if ((($conf->product->enabled && $user->rights->produit->lire) || ($conf->service->enabled && $user->rights->service->lire)) && $conf->global->MAIN_SEARCHFORM_PRODUITSERVICE) { $langs->load("products"); $searchform.=printSearchForm(DOL_URL_ROOT . '/product/liste.php', DOL_URL_ROOT . '/product/liste.php', img_object('', 'product') . ' ' . $langs->trans("Products") . "/" . $langs->trans("Services"), 'products', 'sall'); } if ($conf->adherent->enabled && $conf->global->MAIN_SEARCHFORM_ADHERENT && $user->rights->adherent->lire) { $langs->load("members"); $searchform.=printSearchForm(DOL_URL_ROOT . '/adherents/liste.php', DOL_URL_ROOT . '/adherents/liste.php', img_object('', 'user') . ' ' . $langs->trans("Members"), 'member', 'sall'); } // Execute hook printSearchForm $parameters = array(); $searchform.=$hookmanager->executeHooks('printSearchForm', $parameters); // Note that $action and $object may have been modified by some hooks // Define $bookmarks if ($conf->bookmark->enabled && $user->rights->bookmark->lire) { include_once (DOL_DOCUMENT_ROOT . '/bookmarks/bookmarks.lib.php'); $langs->load("bookmarks"); $bookmarks = printBookmarksList($db, $langs); } // Load the top menu manager (only if not already done) if (!class_exists('MenuLeft')) { $menufound = 0; $dirmenus = array_merge(array("/core/menus/"), $conf->menus_modules); foreach ($dirmenus as $dirmenu) { $menufound = dol_include_once($dirmenu . "standard/" . $left_menu); if ($menufound) break; } if (!$menufound) { // If failed to include, we try with standard $top_menu = 'eldy_backoffice.php'; include_once(DOL_DOCUMENT_ROOT . "/core/menus/standard/" . $top_menu); } } /* // Left column print '<!--Begin left area - menu '.$left_menu.'-->'."\n"; print '<div class = "row">'."\n"; print '<div class = "three columns hide-on-phones">'."\n"; //$menuleft=new MenuLeft($db,$menu_array_before,$menu_array_after); //$menuleft->showmenu(); // output menu_array and menu found in database // Show other forms if ($searchform) { print "\n"; print "<!-- Begin SearchForm -->\n"; print '<div id = "blockvmenusearch" class = "blockvmenusearch">'."\n"; print $searchform; print '</div>'."\n"; print "<!-- End SearchForm -->\n"; } // More search form if ($moresearchform) { print $moresearchform; } // Bookmarks if ($bookmarks) { print "\n"; print "<!-- Begin Bookmarks -->\n"; print '<div id = "blockvmenubookmarks" class = "blockvmenubookmarks">'."\n"; print $bookmarks; print '</div>'."\n"; print "<!-- End Bookmarks -->\n"; } // Link to Speedealing wiki pages if ($helppagename && empty($conf->global->MAIN_HELP_DISABLELINK)) { $langs->load("help"); $helpbaseurl=''; $helppage=''; $mode=''; // Get helpbaseurl, helppage and mode from helppagename and langs $arrayres=getHelpParamFor($helppagename,$langs); $helpbaseurl=$arrayres['helpbaseurl']; $helppage=$arrayres['helppage']; $mode=$arrayres['mode']; // Link to help pages if ($helpbaseurl && $helppage) { print '<div id = "blockvmenuhelp" class = "blockvmenuhelp">'; print '<a class = "help" target = "_blank" title = "'.$langs->trans($mode == 'wiki' ? 'GoToWikiHelpPage': 'GoToHelpPage'); if ($mode == 'wiki') print ' - '.$langs->trans("PageWiki").' "'.dol_escape_htmltag(strtr($helppage,'_',' ')).'"'; print '" href = "'; print sprintf($helpbaseurl,urlencode(html_entity_decode($helppage))); print '">'; print img_picto('', 'helpdoc').' '; print $langs->trans($mode == 'wiki' ? 'OnlineHelp': 'Help'); //if ($mode == 'wiki') print ' ('.dol_trunc(strtr($helppage,'_',' '),8).')'; print '</a>'; print '</div>'; } } // Link to bugtrack if (! empty($conf->global->MAIN_SHOW_BUGTRACK_LINK)) { $bugbaseurl='http://savannah.nongnu.org/bugs/?'; $bugbaseurl.='func=additem&group=dolibarr&privacy=1&'; $bugbaseurl.="&details="; $bugbaseurl.=urlencode("\n\n\n\n\n-------------\n"); $bugbaseurl.=urlencode($langs->trans("Version") . ": " . DOL_VERSION . "\n"); $bugbaseurl.=urlencode($langs->trans("Server") . ": " . $_SERVER["SERVER_SOFTWARE"] . "\n"); $bugbaseurl.=urlencode($langs->trans("Url") . ": " . $_SERVER["REQUEST_URI"] . "\n"); print '<div class="help"><a class="help" target="_blank" href="' . $bugbaseurl . '">' . $langs->trans("FindBug") . '</a></div>'; } print "\n"; print "</div>\n"; print "<!-- End left vertical menu -->\n"; print "\n"; // Execute hook printLeftBlock $parameters = array(); $leftblock = $hookmanager->executeHooks('printLeftBlock', $parameters); // Note that $action and $object may have been modified by some hooks print $leftblock; //print '</td>'; print "\n"; print '<!-- End of left area -->' . "\n"; print "\n"; print '<!-- Begin right area -->'."\n"; */ if (empty($leftmenuwithoutmainarea)) main_area($title); }
/** * Show left menu bar * @param menu_array_before Table of menu entries to show before entries of menu handler * @param helppagename Name of wiki page for help ('' by default). * Syntax is: For a wiki page: EN:EnglishPage|FR:FrenchPage|ES:SpanishPage * For other external page: http://server/url * @param moresearchform Search Form Permanent Supplemental * @param menu_array_after Table of menu entries to show after entries of menu handler * @param leftmenuwithoutmainarea Must be set to 1. 0 by default for backward compatibility with old modules. * @param title Title of web page */ function left_menu($menu_array_before, $helppagename = '', $moresearchform = '', $menu_array_after = '', $leftmenuwithoutmainarea = 0, $title = '') { global $user, $conf, $langs, $db; $searchform = ''; $bookmarks = ''; if ($conf->use_javascript_ajax && $conf->global->MAIN_MENU_USE_JQUERY_LAYOUT) { print "\n" . '<div class="ui-layout-west"> <!-- Begin left layout -->' . "\n"; } else { print '<td class="vmenu" valign="top">'; } print "\n"; // Instantiate hooks of thirdparty module if (is_array($conf->hooks_modules) && !empty($conf->hooks_modules)) { require_once DOL_DOCUMENT_ROOT . '/core/class/commonobject.class.php'; $object = new CommonObject($db); $object->callHooks(array('searchform', 'leftblock')); } // Define $searchform if ($conf->societe->enabled && $conf->global->MAIN_SEARCHFORM_SOCIETE && $user->rights->societe->lire) { $langs->load("companies"); $searchform .= printSearchForm(DOL_URL_ROOT . '/societe/societe.php', DOL_URL_ROOT . '/societe/societe.php', img_object('', 'company') . ' ' . $langs->trans("ThirdParties"), 'soc', 'socname'); } if ($conf->societe->enabled && $conf->global->MAIN_SEARCHFORM_CONTACT && $user->rights->societe->lire) { $langs->load("companies"); $searchform .= printSearchForm(DOL_URL_ROOT . '/contact/index.php', DOL_URL_ROOT . '/contact/index.php', img_object('', 'contact') . ' ' . $langs->trans("Contacts"), 'contact', 'contactname'); } if (($conf->product->enabled && $user->rights->produit->lire || $conf->service->enabled && $user->rights->service->lire) && $conf->global->MAIN_SEARCHFORM_PRODUITSERVICE) { $langs->load("products"); $searchform .= printSearchForm(DOL_URL_ROOT . '/product/liste.php', DOL_URL_ROOT . '/product/liste.php', img_object('', 'product') . ' ' . $langs->trans("Products") . "/" . $langs->trans("Services"), 'products', 'sall'); } if ($conf->adherent->enabled && $conf->global->MAIN_SEARCHFORM_ADHERENT && $user->rights->adherent->lire) { $langs->load("members"); $searchform .= printSearchForm(DOL_URL_ROOT . '/adherents/liste.php', DOL_URL_ROOT . '/adherents/liste.php', img_object('', 'user') . ' ' . $langs->trans("Members"), 'member', 'sall'); } // Search form hook for external modules if (!empty($object->hooks)) { $searchform .= '<!-- Begin search form hook area -->' . "\n"; foreach ($object->hooks as $hook) { if ($hook['type'] == 'searchform' && !empty($hook['modules'])) { foreach ($hook['modules'] as $module) { if (method_exists($module, 'printSearchForm')) { $searchform .= $module->printSearchForm(); } } } } $searchform .= "\n" . '<!-- End of search form hook area -->' . "\n"; } // Define $bookmarks if ($conf->bookmark->enabled && $user->rights->bookmark->lire) { include_once DOL_DOCUMENT_ROOT . '/bookmarks/bookmarks.lib.php'; $langs->load("bookmarks"); $bookmarks = printBookmarksList($db, $langs); } $left_menu = isset($conf->browser->phone) ? $conf->smart_menu : $conf->top_menu; if (GETPOST('menu')) { $left_menu = GETPOST('menu'); } // menu=eldy_backoffice.php // Load the left menu manager $result = dol_include_once("/includes/menus/standard/" . $left_menu); if (!$result) { $left_menu = 'eldy_backoffice.php'; include_once DOL_DOCUMENT_ROOT . "/includes/menus/standard/" . $left_menu; } // Left column print '<!-- Begin left area - menu ' . $left_menu . ' -->' . "\n"; print '<div class="vmenu">' . "\n"; $menuleft = new MenuLeft($db, $menu_array_before, $menu_array_after); $menuleft->showmenu(); // output menu_array and menu found in database // Show other forms if ($searchform) { print "\n"; print "<!-- Begin SearchForm -->\n"; print '<div id="blockvmenusearch" class="blockvmenusearch">' . "\n"; print $searchform; print '</div>' . "\n"; print "<!-- End SearchForm -->\n"; } // More search form if ($moresearchform) { print $moresearchform; } // Bookmarks if ($bookmarks) { print "\n"; print "<!-- Begin Bookmarks -->\n"; print '<div id="blockvmenubookmarks" class="blockvmenubookmarks">' . "\n"; print $bookmarks; print '</div>' . "\n"; print "<!-- End Bookmarks -->\n"; } // Link to Dolibarr wiki pages if ($helppagename && empty($conf->global->MAIN_HELP_DISABLELINK)) { $langs->load("help"); $helpbaseurl = ''; $helppage = ''; $mode = ''; // Get helpbaseurl, helppage and mode from helppagename and langs $arrayres = getHelpParamFor($helppagename, $langs); $helpbaseurl = $arrayres['helpbaseurl']; $helppage = $arrayres['helppage']; $mode = $arrayres['mode']; // Link to help pages if ($helpbaseurl && $helppage) { print '<div id="blockvmenuhelp" class="blockvmenuhelp">'; print '<a class="help" target="_blank" title="' . $langs->trans($mode == 'wiki' ? 'GoToWikiHelpPage' : 'GoToHelpPage'); if ($mode == 'wiki') { print ' - ' . $langs->trans("PageWiki") . ' "' . dol_escape_htmltag(strtr($helppage, '_', ' ')) . '"'; } print '" href="'; print sprintf($helpbaseurl, urlencode(html_entity_decode($helppage))); print '">'; print img_picto('', DOL_URL_ROOT . '/theme/common/helpdoc.png', '', 1) . ' '; print $langs->trans($mode == 'wiki' ? 'OnlineHelp' : 'Help'); //if ($mode == 'wiki') print ' ('.dol_trunc(strtr($helppage,'_',' '),8).')'; print '</a>'; print '</div>'; } } // Link to bugtrack if (!empty($conf->global->MAIN_SHOW_BUGTRACK_LINK)) { $bugbaseurl = 'http://savannah.nongnu.org/bugs/?'; $bugbaseurl .= 'func=additem&group=dolibarr&privacy=1&'; $bugbaseurl .= "&details="; $bugbaseurl .= urlencode("\n\n\n\n\n-------------\n"); $bugbaseurl .= urlencode($langs->trans("Version") . ": " . DOL_VERSION . "\n"); $bugbaseurl .= urlencode($langs->trans("Server") . ": " . $_SERVER["SERVER_SOFTWARE"] . "\n"); $bugbaseurl .= urlencode($langs->trans("Url") . ": " . $_SERVER["REQUEST_URI"] . "\n"); print '<div class="help"><a class="help" target="_blank" href="' . $bugbaseurl . '">' . $langs->trans("FindBug") . '</a></div>'; } print "\n"; print "</div>\n"; print "<!-- End left vertical menu -->\n"; print "\n"; // Left block hook for external modules if (!empty($object->hooks)) { print '<!-- Begin left block hook area -->' . "\n"; foreach ($object->hooks as $hook) { if ($hook['type'] == 'leftblock' && !empty($hook['modules'])) { foreach ($hook['modules'] as $module) { if (method_exists($module, 'printLeftBlock')) { $module->printLeftBlock(); } } } } print "\n" . '<!-- End of left block hook area -->' . "\n"; } if ($conf->use_javascript_ajax && $conf->global->MAIN_MENU_USE_JQUERY_LAYOUT) { print '</div> <!-- End left layout -->' . "\n"; } else { print '</td>'; } print "\n"; print '<!-- End of left area -->' . "\n"; print "\n"; print '<!-- Begin right area -->' . "\n"; if (empty($leftmenuwithoutmainarea)) { main_area($title); } }