[phpBB Debug] PHP Warning: in file [ROOT]/includes/crs/crs_misc_functions.php on line 37: mime_content_type(): Empty filename or path
[phpBB Debug] PHP Warning: in file [ROOT]/includes/crs/crs_misc_functions.php on line 37: mime_content_type(): Empty filename or path
Zen Cart 源代码 init_header.php

Zen Cart 源代码 init_header.php




下载文件

文件名: init_header.php
文件类型: PHP文件
文件大小: 6.61 KiB
MD5: b1d19cc9bee98122d12ccefb2fd761da

init_header.php - 关闭高亮
  1. <?php
  2. /**
  3.  * header code, mainly concerned with adding to messagestack when certain warnings are applicable
  4.  *
  5.  * @package templateStructure
  6.  * @copyright Copyright 2003-2010 Zen Cart Development Team
  7.  * @copyright Portions Copyright 2003 osCommerce
  8.  * @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
  9.  * @version $Id: init_header.php 15921 2010-04-12 22:08:10Z drbyte $
  10.  */
  11. if (!defined('IS_ADMIN_FLAG')) {
  12.   die('Illegal Access');
  13. }
  14. /**
  15.  * set which precautions should be checked
  16.  */
  17. /**
  18.  * should a message be displayed if install directory exists
  19.  */
  20. define('WARN_INSTALL_EXISTENCE', 'true');
  21. /**
  22.  * should a message be displayed if  config directory is writeable
  23.  */
  24. define('WARN_CONFIG_WRITEABLE', 'true');
  25. /**
  26.  * should a message be displayed if session directory not writeable
  27.  */
  28. define('WARN_SESSION_DIRECTORY_NOT_WRITEABLE', 'true');
  29. /**
  30.  * should a message be displayed if sql cache directory not writeable
  31.  */
  32. define('WARN_SQL_CACHE_DIRECTORY_NOT_WRITEABLE', 'true');
  33. /**
  34.  * should a message be displayed if session.autostart is on in php.ini
  35.  */
  36. define('WARN_SESSION_AUTO_START', 'true');
  37. /**
  38.  * should a message be displayed if download directory not readable
  39.  */
  40. define('WARN_DOWNLOAD_DIRECTORY_NOT_READABLE', 'true');
  41. /**
  42.  * should a message be displayed if system detects version problem with the database
  43.  */
  44. define('WARN_DATABASE_VERSION_PROBLEM','true');
  45. // check if the installer directory exists, and warn of its existence
  46. if (WARN_INSTALL_EXISTENCE == 'true') {
  47.   $check_path = realpath(dirname(basename($PHP_SELF)) . '/zc_install');
  48.   if (is_dir($check_path)) {
  49.     $messageStack->add('header', sprintf(WARNING_INSTALL_DIRECTORY_EXISTS, ($check_path == '' ? '..../zc_install' : $check_path)), 'warning');
  50.   }
  51. }
  52.  
  53. // check if the configure.php file is writeable
  54. if (WARN_CONFIG_WRITEABLE == 'true') {
  55.   $check_path = realpath(dirname(basename($PHP_SELF)) . '/includes/configure.php');
  56.   if (file_exists($check_path) && is__writeable($check_path)) {
  57.     $messageStack->add('header', sprintf(WARNING_CONFIG_FILE_WRITEABLE, ($check_path == '' ? '..../includes/configure.php' : $check_path)), 'warning');
  58.   }
  59. }
  60.  
  61. // check if the session folder is writeable
  62. if (WARN_SESSION_DIRECTORY_NOT_WRITEABLE == 'true') {
  63.   if (STORE_SESSIONS == '') {
  64.     if (!is_dir(zen_session_save_path())) {
  65.       $messageStack->add('header', WARNING_SESSION_DIRECTORY_NON_EXISTENT, 'warning');
  66.     } elseif (!is_writeable(zen_session_save_path())) {
  67.       $messageStack->add('header', WARNING_SESSION_DIRECTORY_NOT_WRITEABLE, 'warning');
  68.     }
  69.   }
  70. }
  71.  
  72. // check if the sql cache folder is writeable
  73. if (WARN_SQL_CACHE_DIRECTORY_NOT_WRITEABLE == 'true' && strtolower(SQL_CACHE_METHOD) == 'file') {
  74.   if (!is_dir(DIR_FS_SQL_CACHE)) {
  75.     $messageStack->add('header', WARNING_SQL_CACHE_DIRECTORY_NON_EXISTENT, 'warning');
  76.   } elseif (!is_writeable(DIR_FS_SQL_CACHE)) {
  77.     $messageStack->add('header', WARNING_SQL_CACHE_DIRECTORY_NOT_WRITEABLE, 'warning');
  78.   }
  79. }
  80.  
  81. // give the visitors a message that the website will be down at ... time
  82. if ( (WARN_BEFORE_DOWN_FOR_MAINTENANCE == 'true') && (DOWN_FOR_MAINTENANCE == 'false') ) {
  83.   $messageStack->add('header', TEXT_BEFORE_DOWN_FOR_MAINTENANCE . PERIOD_BEFORE_DOWN_FOR_MAINTENANCE);
  84. }
  85.  
  86. // this will let the admin know that the website is DOWN FOR MAINTENANCE to the public
  87. if ( (DOWN_FOR_MAINTENANCE == 'true') && (strstr(EXCLUDE_ADMIN_IP_FOR_MAINTENANCE, $_SERVER['REMOTE_ADDR'])) ) {
  88.   $messageStack->add('header', TEXT_ADMIN_DOWN_FOR_MAINTENANCE, 'warning');
  89. }
  90.  
  91. // check session.auto_start is disabled
  92. if ( (function_exists('ini_get')) && (WARN_SESSION_AUTO_START == 'true') ) {
  93.   if (ini_get('session.auto_start') == '1') {
  94.     $messageStack->add('header', WARNING_SESSION_AUTO_START, 'warning');
  95.   }
  96. }
  97.  
  98. // to warn if the "downloads" folder is not readable (ie: not found, etc)
  99. if ( (WARN_DOWNLOAD_DIRECTORY_NOT_READABLE == 'true') && (DOWNLOAD_ENABLED == 'true') ) {
  100.   if (!is_dir(DIR_FS_DOWNLOAD)) {
  101.     $messageStack->add('header', WARNING_DOWNLOAD_DIRECTORY_NON_EXISTENT, 'warning');
  102.   }
  103. }
  104.  
  105. // check database version against source code
  106. $zv_db_patch_ok = true; // we start with true
  107. if (WARN_DATABASE_VERSION_PROBLEM != 'false') {
  108.   $result = $db->Execute("SELECT project_version_major, project_version_minor FROM " . TABLE_PROJECT_VERSION . " WHERE project_version_key = 'Zen-Cart Database'");
  109.   $zv_db_patch_level_found = $result->fields['project_version_major']. '.' . $result->fields['project_version_minor'];
  110.   $zv_db_patch_level_expected = EXPECTED_DATABASE_VERSION_MAJOR . '.' . EXPECTED_DATABASE_VERSION_MINOR;
  111.   if ($zv_db_patch_level_expected=='.' || ($zv_db_patch_level_found < $zv_db_patch_level_expected) ) {
  112.     $zv_db_patch_ok = false;
  113.     $messageStack->add('header', WARNING_DATABASE_VERSION_OUT_OF_DATE, 'warning');
  114.   }
  115. }
  116.  
  117. // Alerting about payment modules in testing/debug mode
  118.  
  119. if (defined('MODULE_PAYMENT_PAYPAL_IPN_DEBUG') && (MODULE_PAYMENT_PAYPAL_IPN_DEBUG == 'true' || MODULE_PAYMENT_PAYPAL_TESTING == 'Test')) {
  120.   $messageStack->add('header', 'PAYPAL IS IN TESTING MODE', 'warning');
  121. }
  122. if ((defined('MODULE_PAYMENT_AUTHORIZENET_AIM_STATUS') && MODULE_PAYMENT_AUTHORIZENET_AIM_STATUS == 'True' && defined('MODULE_PAYMENT_AUTHORIZENET_AIM_TESTMODE') && MODULE_PAYMENT_AUTHORIZENET_AIM_TESTMODE == 'Test') || (defined('MODULE_PAYMENT_AUTHORIZENET_STATUS') && MODULE_PAYMENT_AUTHORIZENET_STATUS == 'True' && defined('MODULE_PAYMENT_AUTHORIZENET_TESTMODE') && MODULE_PAYMENT_AUTHORIZENET_TESTMODE =='Test' ) ) {
  123.   $messageStack->add('header', 'AUTHORIZENET IS IN TESTING MODE', 'warning');
  124. }
  125. if (defined('MODULE_SHIPPING_USPS_SERVER') &&   MODULE_SHIPPING_USPS_SERVER == 'test' ) {
  126.   $messageStack->add('header', 'USPS IS IN TESTING MODE', 'warning');
  127. }
  128.  
  129. // Alerts for EZ-Pages
  130. if (EZPAGES_STATUS_HEADER == '2' && (strstr(EXCLUDE_ADMIN_IP_FOR_MAINTENANCE, $_SERVER['REMOTE_ADDR']))) {
  131.   $messageStack->add('header', TEXT_EZPAGES_STATUS_HEADER_ADMIN, 'caution');
  132. }
  133. if (EZPAGES_STATUS_FOOTER == '2' && (strstr(EXCLUDE_ADMIN_IP_FOR_MAINTENANCE, $_SERVER['REMOTE_ADDR']))) {
  134.   $messageStack->add('header', TEXT_EZPAGES_STATUS_FOOTER_ADMIN, 'caution');
  135. }
  136. if (EZPAGES_STATUS_SIDEBOX == '2' && (strstr(EXCLUDE_ADMIN_IP_FOR_MAINTENANCE, $_SERVER['REMOTE_ADDR']))) {
  137.   $messageStack->add('header', TEXT_EZPAGES_STATUS_SIDEBOX_ADMIN, 'caution');
  138. }
  139. if (defined('STRICT_ERROR_REPORTING') && STRICT_ERROR_REPORTING == true) {
  140.   $messageStack->add('header', 'STRICT ERROR REPORTING IS ON', 'warning');
  141. }
  142.  
  143.  
  144. // if down for maintenance, prevent indexing
  145. if ((DOWN_FOR_MAINTENANCE == 'true')) {
  146.   header("HTTP/1.1 503 Service Unavailable");
  147. }
  148.