23 require
'../../main.inc.php';
24 require_once DOL_DOCUMENT_ROOT.
'/core/lib/memory.lib.php';
25 require_once DOL_DOCUMENT_ROOT.
'/core/lib/date.lib.php';
26 require_once DOL_DOCUMENT_ROOT.
'/core/lib/geturl.lib.php';
27 require_once DOL_DOCUMENT_ROOT.
'/core/lib/functions2.lib.php';
30 $langs->loadLangs(array(
"install",
"other",
"admin",
"products"));
36 if (
GETPOST(
'action',
'aZ09') ==
'donothing') {
52 print
'<span class="opacitymedium">'.$langs->trans(
"YouMayFindPerfAdviceHere",
'https://wiki.dolibarr.org/index.php/FAQ_Increase_Performance').
'</span> (<a href="'.$_SERVER[
"PHP_SELF"].
'">'.$langs->trans(
"Reload").
'</a>)<br>';
59 print
"<br><strong>PHP</strong> - ".$langs->trans(
"Version").
": ".$phpversion.
"<br>\n";
62 print
"<br><strong>Web server</strong> - ".$langs->trans(
"Version").
": ".$_SERVER[
"SERVER_SOFTWARE"].
"<br>\n";
66 print
'<strong>'.$langs->trans(
"XDebug").
'</strong>: ';
67 $test = !function_exists(
'xdebug_is_enabled');
69 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"NotInstalled").
' <span class="opacitymedium">'.$langs->trans(
"NotSlowedDownByThis").
'</span>';
71 print
img_picto(
'',
'warning').
' '.$langs->trans(
"ModuleActivated", $langs->transnoentities(
"XDebug"));
72 print
' - '.$langs->trans(
"MoreInformation").
' <a href="'.DOL_URL_ROOT.
'/admin/system/xdebug.php">XDebug admin page</a>';
78 print
'<strong>'.$langs->trans(
"Syslog").
'</strong>: ';
79 $test = empty($conf->syslog->enabled);
81 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"NotInstalled").
' <span class="opacitymedium">'.$langs->trans(
"NotSlowedDownByThis").
'</span>';
83 if ($conf->global->SYSLOG_LEVEL > LOG_NOTICE) {
84 print
img_picto(
'',
'warning').
' '.$langs->trans(
"ModuleActivatedWithTooHighLogLevel", $langs->transnoentities(
"Syslog"));
86 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"ModuleSyslogActivatedButLevelNotTooVerbose", $langs->transnoentities(
"Syslog"), $conf->global->SYSLOG_LEVEL);
94 print
'<strong>'.$langs->trans(
"DebugBar").
'</strong>: ';
95 $test = empty($conf->debugbar->enabled);
97 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"NotInstalled").
' <span class="opacitymedium">'.$langs->trans(
"NotSlowedDownByThis").
'</span>';
99 print
img_picto(
'',
'warning').
' '.$langs->trans(
"ModuleActivated", $langs->transnoentities(
"DebugBar"));
106 print
'<strong>'.$langs->trans(
"ApplicativeCache").
'</strong>: ';
107 $test = !empty($conf->memcached->enabled);
109 if (!empty($conf->global->MEMCACHED_SERVER)) {
110 print $langs->trans(
"MemcachedAvailableAndSetup");
111 print
' '.$langs->trans(
"MoreInformation").
' <a href="'.
dol_buildpath(
'/memcached/admin/memcached.php', 1).
'">Memcached module admin page</a>';
113 print $langs->trans(
"MemcachedModuleAvailableButNotSetup");
114 print
' <a href="'.dol_buildpath(
'/memcached/admin/memcached.php', 1).
'">Memcached module admin page</a>';
117 print $langs->trans(
"MemcachedNotAvailable");
123 print
'<strong>'.$langs->trans(
"OPCodeCache").
'</strong>: ';
125 $test = function_exists(
'xcache_info');
126 if (!$foundcache && $test) {
128 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"PHPModuleLoaded",
"XCache");
129 print
' '.$langs->trans(
"MoreInformation").
' <a href="'.DOL_URL_ROOT.
'/admin/system/xcache.php">Xcache admin page</a>';
131 $test = function_exists(
'eaccelerator_info');
132 if (!$foundcache && $test) {
134 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"PHPModuleLoaded",
"Eaccelerator");
136 $test = function_exists(
'opcache_get_status');
137 if (!$foundcache && $test) {
139 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"PHPModuleLoaded",
"ZendOPCache");
143 $test = function_exists(
'apc_cache_info');
144 if (!$foundcache && $test) {
146 if (ini_get(
'apc.enabled')) {
148 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"APCInstalled");
150 print
img_picto(
'',
'warning').
' '.$langs->trans(
"APCCacheInstalledButDisabled");
154 print $langs->trans(
"NoOPCodeCacheFound");
159 if (ini_get(
'opcache.preload')) {
161 print
'<strong>'.$langs->trans(
"PreloadOPCode").
'</strong>: ';
162 print ini_get(
'opcache.preload');
165 print
'<strong>'.$langs->trans(
"PreloadOPCode").
'</strong>: ';
166 print $langs->trans(
"No");
171 print
'<script type="text/javascript">
172 jQuery(document).ready(function() {
178 data: { token: \''.currentToken().
'\' },
179 url: \
''.DOL_URL_ROOT.
'/public/notice.php\',
182 /* crossDomain: true,*/
183 success: function () {
184 cachephpstring=getphpurl.getResponseHeader(\'Cache-Control\');
185 /* alert(\'php:\'+getphpurl.getAllResponseHeaders()); */
186 /*alert(\'php:\'+cachephpstring);*/
187 if (cachephpstring == null || cachephpstring.indexOf("no-cache") !== -1)
189 jQuery("#httpcachephpok").hide();
190 jQuery("#httpcachephpko").show();
194 jQuery("#httpcachephpok").show();
195 jQuery("#httpcachephpko").hide();
197 compphpstring=getphpurl.getResponseHeader(\'Content-Encoding\');
198 /* alert(\'php:\'+getphpurl.getAllResponseHeaders()); */
199 /*alert(\'php:\'+compphpstring);*/
200 if (compphpstring == null || (compphpstring.indexOf("gzip") == -1 && compphpstring.indexOf("deflate") == -1))
202 jQuery("#httpcompphpok").hide();
203 jQuery("#httpcompphpko").show();
207 jQuery("#httpcompphpok").show();
208 jQuery("#httpcompphpko").hide();
218 data: { token: \'notrequired\' },
219 url: \''.DOL_URL_ROOT.
'/includes/jquery/css/base/jquery-ui.css\',
222 /* crossDomain: true, */
223 success: function () {
224 cachecssstring=getcssurl.getResponseHeader(\'Cache-Control\');
225 /* alert(\'css:\'+getcssurl.getAllResponseHeaders()); */
226 /*alert(\'css:\'+cachecssstring);*/
227 if (cachecssstring != null && cachecssstring.indexOf("no-cache") !== -1)
229 jQuery("#httpcachecssok").hide();
230 jQuery("#httpcachecssko").show();
234 jQuery("#httpcachecssok").show();
235 jQuery("#httpcachecssko").hide();
237 compcssstring=getcssurl.getResponseHeader(\'Content-Encoding\');
238 /* alert(\'php:\'+getcssurl.getAllResponseHeaders()); */
239 /*alert(\'php:\'+compcssstring);*/
240 if (compcssstring == null || (compcssstring.indexOf("gzip") == -1 && compcssstring.indexOf("deflate") == -1))
242 jQuery("#httpcompcssok").hide();
243 jQuery("#httpcompcssko").show();
247 jQuery("#httpcompcssok").show();
248 jQuery("#httpcompcssko").hide();
254 var cachecssphpstring;
255 var compcssphpstring;
256 getcssphpurl = $.ajax({
259 url: \
''.DOL_URL_ROOT.
'/theme/eldy/style.css.php\',
262 /* crossDomain: true,*/
263 success: function () {
264 cachecssphpstring=getcssphpurl.getResponseHeader(\'Cache-Control\');
265 /* alert(\'cssphp:\'+getcssphpurl.getAllResponseHeaders()); */
266 /*alert(\'cssphp:\'+cachecssphpstring);*/
267 if (cachecssphpstring != null && cachecssphpstring.indexOf("no-cache") !== -1)
269 jQuery("#httpcachecssphpok").hide();
270 jQuery("#httpcachecssphpko").show();
274 jQuery("#httpcachecssphpok").show();
275 jQuery("#httpcachecssphpko").hide();
277 compcssphpstring=getcssphpurl.getResponseHeader(\'Content-Encoding\');
278 /* alert(\'php:\'+getcssphpurl.getAllResponseHeaders()); */
279 /*alert(\'php:\'+compcssphpstring);*/
280 if (compcssphpstring == null || (compcssphpstring.indexOf("gzip") == -1 && compcssphpstring.indexOf("deflate") == -1))
282 jQuery("#httpcompcssphpok").hide();
283 jQuery("#httpcompcssphpko").show();
287 jQuery("#httpcompcssphpok").show();
288 jQuery("#httpcompcssphpko").hide();
298 data: { token: \'notrequired\' },
299 url: \''.DOL_URL_ROOT.
'/theme/eldy/img/help.png\',
302 /* crossDomain: true,*/
303 success: function () {
304 cacheimgstring=getimgurl.getResponseHeader(\'Cache-Control\');
305 /* alert(\'img:\'+getimgurl.getAllResponseHeaders()); */
306 /*alert(\'img:\'+cacheimgstring);*/
307 if (cacheimgstring != null && cacheimgstring.indexOf("no-cache") !== -1)
309 jQuery("#httpcacheimgok").hide();
310 jQuery("#httpcacheimgko").show();
314 jQuery("#httpcacheimgok").show();
315 jQuery("#httpcacheimgko").hide();
317 compimgstring=getimgurl.getResponseHeader(\'Content-Encoding\');
318 /* alert(\'php:\'+getimgurl.getAllResponseHeaders()); */
319 /*alert(\'php:\'+compimgstring);*/
320 if (compimgstring == null || (compimgstring.indexOf("gzip") == -1 && compimgstring.indexOf("deflate") == -1))
322 jQuery("#httpcompimgok").hide();
323 jQuery("#httpcompimgko").show();
327 jQuery("#httpcompimgok").show();
328 jQuery("#httpcompimgko").hide();
338 data: { token: \'notrequired\' },
339 url: \''.DOL_URL_ROOT.
'/core/js/lib_rare.js\',
342 /* crossDomain: true,*/
343 success: function () {
344 cachejsstring=getjsurl.getResponseHeader(\'Cache-Control\');
345 /*alert(\'js:\'+getjsurl.getAllResponseHeaders());*/
346 /*alert(\'js:\'+cachejsstring);*/
347 if (cachejsstring != null && cachejsstring.indexOf("no-cache") !== -1)
349 jQuery("#httpcachejsok").hide();
350 jQuery("#httpcachejsko").show();
354 jQuery("#httpcachejsok").show();
355 jQuery("#httpcachejsko").hide();
357 compjsstring=getjsurl.getResponseHeader(\'Content-Encoding\');
358 /* alert(\'js:\'+getjsurl.getAllResponseHeaders()); */
359 /*alert(\'js:\'+compjsstring);*/
360 if (compjsstring == null || (compjsstring.indexOf("gzip") == -1 && compjsstring.indexOf("deflate") == -1))
362 jQuery("#httpcompjsok").hide();
363 jQuery("#httpcompjsko").show();
367 jQuery("#httpcompjsok").show();
368 jQuery("#httpcompjsko").hide();
374 var cachejsphpstring;
376 getjsphpurl = $.ajax({
379 url: \
''.DOL_URL_ROOT.
'/core/js/lib_head.js.php\',
382 /* crossDomain: true,*/
383 success: function () {
384 cachejsphpstring=getjsphpurl.getResponseHeader(\'Cache-Control\');
385 /* alert(\'jsphp:\'+getjsphpurl.getAllResponseHeaders()); */
386 /*alert(\'jsphp:\'+cachejsphpstring);*/
387 if (cachejsphpstring != null && cachejsphpstring.indexOf("no-cache") !== -1)
389 jQuery("#httpcachejsphpok").hide();
390 jQuery("#httpcachejsphpko").show();
394 jQuery("#httpcachejsphpok").show();
395 jQuery("#httpcachejsphpko").hide();
397 compjsphpstring=getjsphpurl.getResponseHeader(\'Content-Encoding\');
398 /* alert(\'php:\'+getjsphpurl.getAllResponseHeaders()); */
399 /*alert(\'php:\'+compjsphpstring);*/
400 if (compjsphpstring == null || (compjsphpstring.indexOf("gzip") == -1 && compjsphpstring.indexOf("deflate") == -1))
402 jQuery("#httpcompjsphpok").hide();
403 jQuery("#httpcompjsphpko").show();
407 jQuery("#httpcompjsphpok").show();
408 jQuery("#httpcompjsphpko").hide();
418 print
'<strong>'.$langs->trans(
"HTTPCacheStaticResources").
' - ';
419 print
$form->textwithpicto($langs->trans(
"CacheByServer"), $langs->trans(
"CacheByServerDesc"));
420 print
':</strong><br>';
425 print
'<div id="httpcachecssok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCached",
'css (.css)').
'</div>';
426 print
'<div id="httpcachecssko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCached",
'css (.css)').
'</div>';
427 print
'<div id="httpcachecssphpok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCached",
'css (.css.php)').
'</div>';
428 print
'<div id="httpcachecssphpko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCached",
'css (.css.php)').
'</div>';
429 print
'<div id="httpcacheimgok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCached",
'img (.png)').
'</div>';
430 print
'<div id="httpcacheimgko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCached",
'img (.png)').
'</div>';
431 print
'<div id="httpcachejsok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCached",
'javascript (.js)').
'</div>';
432 print
'<div id="httpcachejsko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCached",
'javascript (.js)').
'</div>';
433 print
'<div id="httpcachejsphpok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCached",
'javascript (.js.php)').
'</div>';
434 print
'<div id="httpcachejsphpko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCached",
'javascript (.js.php)').
'</div>';
436 print
'<strong>'.$langs->trans(
"HTTPCacheStaticResources").
' - ';
437 print $langs->trans(
"CacheByClient").
':</strong><br>';
438 print $langs->trans(
"TestNotPossibleWithCurrentBrowsers").
'<br>';
444 print
$form->textwithpicto($langs->trans(
"CompressionOfResources"), $langs->trans(
"CompressionOfResourcesDesc"));
448 print
'<div id="httpcompphpok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCompressed",
'php (.php)').
'</div>';
449 print
'<div id="httpcompphpko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCompressed",
'php (.php)').
'</div>';
451 print
'<div id="httpcompcssok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCompressed",
'css (.css)').
'</div>';
452 print
'<div id="httpcompcssko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCompressed",
'css (.css)').
'</div>';
453 print
'<div id="httpcompcssphpok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCompressed",
'css (.css.php)').
'</div>';
454 print
'<div id="httpcompcssphpko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCompressed",
'css (.css.php)').
'</div>';
457 print
'<div id="httpcompjsok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCompressed",
'javascript (.js)').
'</div>';
458 print
'<div id="httpcompjsko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCompressed",
'javascript (.js)').
'</div>';
459 print
'<div id="httpcompjsphpok">'.img_picto(
'',
'tick.png').
' '.$langs->trans(
"FilesOfTypeCompressed",
'javascript (.js.php)').
'</div>';
460 print
'<div id="httpcompjsphpko">'.img_picto(
'',
'warning.png').
' '.$langs->trans(
"FilesOfTypeNotCompressed",
'javascript (.js.php)').
'</div>';
464 print
'<strong>'.$langs->trans(
"DriverType").
'</strong>: ';
466 if ($conf->db->type ==
'mysql' || $conf->db->type ==
'mysqli') {
467 $test = ($conf->db->type ==
'mysqli');
469 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"YouUseBestDriver", $conf->db->type);
471 print
img_picto(
'',
'warning.png').
' '.$langs->trans(
"YouDoNotUseBestDriver", $conf->db->type,
'mysqli');
477 print
'<strong>'.$langs->trans(
"ComboListOptim").
'</strong>: ';
480 $sql =
"SELECT COUNT(*) as nb";
481 $sql .=
" FROM ".MAIN_DB_PREFIX.
"product as p";
482 $resql = $db->query($sql);
484 $limitforoptim = 5000;
485 $num = $db->num_rows(
$resql);
486 $obj = $db->fetch_object(
$resql);
488 if ($nb > $limitforoptim) {
489 if (empty($conf->global->PRODUIT_USE_SEARCH_TO_SELECT)) {
490 print
img_picto(
'',
'warning.png').
' '.$langs->trans(
"YouHaveXObjectUseComboOptim", $nb, $langs->transnoentitiesnoconv(
"ProductsOrServices"),
'PRODUIT_USE_SEARCH_TO_SELECT');
492 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"YouHaveXObjectAndSearchOptimOn", $nb, $langs->transnoentitiesnoconv(
"ProductsOrServices"),
'PRODUIT_USE_SEARCH_TO_SELECT', $conf->global->PRODUIT_USE_SEARCH_TO_SELECT);
495 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"NbOfObjectIsLowerThanNoPb", $nb, $langs->transnoentitiesnoconv(
"ProductsOrServices"));
501 $sql =
"SELECT COUNT(*) as nb";
502 $sql .=
" FROM ".MAIN_DB_PREFIX.
"societe as s";
503 $resql = $db->query($sql);
505 $limitforoptim = 5000;
506 $num = $db->num_rows(
$resql);
507 $obj = $db->fetch_object(
$resql);
509 if ($nb > $limitforoptim) {
510 if (empty($conf->global->COMPANY_USE_SEARCH_TO_SELECT)) {
511 print
img_picto(
'',
'warning.png').
' '.$langs->trans(
"YouHaveXObjectUseComboOptim", $nb, $langs->transnoentitiesnoconv(
"ThirdParties"),
'COMPANY_USE_SEARCH_TO_SELECT');
513 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"YouHaveXObjectAndSearchOptimOn", $nb, $langs->transnoentitiesnoconv(
"ThirdParties"),
'COMPANY_USE_SEARCH_TO_SELECT', $conf->global->COMPANY_USE_SEARCH_TO_SELECT);
516 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"NbOfObjectIsLowerThanNoPb", $nb, $langs->transnoentitiesnoconv(
"ThirdParties"));
522 $sql =
"SELECT COUNT(*) as nb";
523 $sql .=
" FROM ".MAIN_DB_PREFIX.
"socpeople as s";
524 $resql = $db->query($sql);
526 $limitforoptim = 5000;
527 $num = $db->num_rows(
$resql);
528 $obj = $db->fetch_object(
$resql);
530 if ($nb > $limitforoptim) {
531 if (empty($conf->global->CONTACT_USE_SEARCH_TO_SELECT)) {
532 print
img_picto(
'',
'warning.png').
' '.$langs->trans(
"YouHaveXObjectUseComboOptim", $nb, $langs->transnoentitiesnoconv(
"Contacts"),
'CONTACT_USE_SEARCH_TO_SELECT');
534 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"YouHaveXObjectAndSearchOptimOn", $nb, $langs->transnoentitiesnoconv(
"Contacts"),
'CONTACT_USE_SEARCH_TO_SELECT', $conf->global->CONTACT_USE_SEARCH_TO_SELECT);
537 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"NbOfObjectIsLowerThanNoPb", $nb, $langs->transnoentitiesnoconv(
"Contacts"));
543 $sql =
"SELECT COUNT(*) as nb";
544 $sql .=
" FROM ".MAIN_DB_PREFIX.
"projet as s";
545 $resql = $db->query($sql);
547 $limitforoptim = 5000;
548 $num = $db->num_rows(
$resql);
549 $obj = $db->fetch_object(
$resql);
551 if ($nb > $limitforoptim) {
552 if (empty($conf->global->PROJECT_USE_SEARCH_TO_SELECT)) {
553 print
img_picto(
'',
'warning.png').
' '.$langs->trans(
"YouHaveXObjectUseComboOptim", $nb, $langs->transnoentitiesnoconv(
"Projects"),
'PROJECT_USE_SEARCH_TO_SELECT');
555 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"YouHaveXObjectAndSearchOptimOn", $nb, $langs->transnoentitiesnoconv(
"Projects"),
'PROJECT_USE_SEARCH_TO_SELECT', $conf->global->PROJECT_USE_SEARCH_TO_SELECT);
558 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"NbOfObjectIsLowerThanNoPb", $nb, $langs->transnoentitiesnoconv(
"Projects"));
566 print
'<strong>'.$langs->trans(
"SearchOptim").
'</strong>: ';
569 $sql =
"SELECT COUNT(*) as nb";
570 $sql .=
" FROM ".MAIN_DB_PREFIX.
"product as p";
571 $resql = $db->query($sql);
573 $limitforoptim = 100000;
574 $num = $db->num_rows(
$resql);
575 $obj = $db->fetch_object(
$resql);
577 if ($nb > $limitforoptim) {
578 if (empty($conf->global->PRODUCT_DONOTSEARCH_ANYWHERE)) {
579 print
img_picto(
'',
'warning.png').
' '.$langs->trans(
"YouHaveXObjectUseSearchOptim", $nb, $langs->transnoentitiesnoconv(
"ProductsOrServices"),
'PRODUCT_DONOTSEARCH_ANYWHERE');
580 print $langs->trans(
"YouHaveXObjectUseSearchOptimDesc");
582 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"YouHaveXObjectAndSearchOptimOn", $nb, $langs->transnoentitiesnoconv(
"ProductsOrServices"),
'PRODUCT_DONOTSEARCH_ANYWHERE', $conf->global->PRODUCT_DONOTSEARCH_ANYWHERE);
585 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"NbOfObjectIsLowerThanNoPb", $nb, $langs->transnoentitiesnoconv(
"ProductsOrServices"));
592 $sql =
"SELECT COUNT(*) as nb";
593 $sql .=
" FROM ".MAIN_DB_PREFIX.
"societe as s";
594 $resql = $db->query($sql);
596 $limitforoptim = 100000;
597 $num = $db->num_rows(
$resql);
598 $obj = $db->fetch_object(
$resql);
600 if ($nb > $limitforoptim) {
601 if (empty($conf->global->COMPANY_DONOTSEARCH_ANYWHERE)) {
602 print
img_picto(
'',
'warning.png').
' '.$langs->trans(
"YouHaveXObjectUseSearchOptim", $nb, $langs->transnoentitiesnoconv(
"ThirdParties"),
'COMPANY_DONOTSEARCH_ANYWHERE');
603 print $langs->trans(
"YouHaveXObjectUseSearchOptimDesc");
605 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"YouHaveXObjectAndSearchOptimOn", $nb, $langs->transnoentitiesnoconv(
"ThirdParties"),
'COMPANY_DONOTSEARCH_ANYWHERE', $conf->global->COMPANY_DONOTSEARCH_ANYWHERE);
608 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"NbOfObjectIsLowerThanNoPb", $nb, $langs->transnoentitiesnoconv(
"ThirdParties"));
616 print
'<strong>'.$langs->trans(
"Browser").
'</strong>:<br>';
617 if (!in_array($conf->browser->name, array(
'chrome',
'opera',
'safari',
'firefox'))) {
618 print
img_picto(
'',
'warning.png').
' '.$langs->trans(
"BrowserIsKO", $conf->browser->name);
620 print
img_picto(
'',
'tick.png').
' '.$langs->trans(
"BrowserIsOK", $conf->browser->name);