Просмотр файла system/inc/classes/system_core.class.php

Размер файла: 5.11Kb
  1. <?php
  2. class SHCMS_core
  3. {
  4. /**
  5. * @var string Набор символов входных и выходных
  6. */
  7. public static $charset = 'utf-8';
  8. /**
  9. * @var string имя сервера SHCMS размещается на
  10. */
  11. public static $server_name = '';
  12. /**
  13. * Отменяет эффекты `register_globals` настройки PHP при помощи сброса
  14. * Все глобальные varibles за исключением умолчанию супер глобальных прогнозов (ГЦП и др.),
  15. * @return void
  16. */
  17. public static function globals()
  18. {
  19. if (isset($_REQUEST['GLOBALS']) OR isset($_FILES['GLOBALS']))
  20. {
  21. // Предотвращения вредоносных атак перегрузки GLOBALS
  22. echo "Глобальная переменная атаки определяется перегрузка! Запрос прерван.\n";
  23.  
  24. // Выход с ошибкой статус
  25. exit(1);
  26. }
  27.  
  28. // Получить переменную имена всех глобальных
  29. $global_variables = array_keys($GLOBALS);
  30.  
  31. // Выньте стандартный глобальные переменные из списка
  32. $global_variables = array_diff($global_variables, array(
  33. '_COOKIE',
  34. '_ENV',
  35. '_GET',
  36. '_FILES',
  37. '_POST',
  38. '_REQUEST',
  39. '_SERVER',
  40. '_SESSION',
  41. 'GLOBALS',
  42. ));
  43.  
  44. foreach ($global_variables as $name)
  45. {
  46. // Верните в исходное положение глобальной переменной, эффективно отключение register_globals
  47. unset($GLOBALS[$name]);
  48. }
  49. }
  50. /*
  51. * @var string Функция вывода гостей на сайте
  52. */
  53. public static function online_guest()
  54. {
  55. global $user_id, $vi_shcms, $ua;
  56. //Выводим информацию о госте
  57. $sys = mysql_fetch_array(mysql_query("SELECT * FROM `online_guest` WHERE `ip` = '$vi_shcms'"));
  58. if(!$user_id)
  59. {
  60. if($sys['ip'] == $vi_shcms)
  61. {
  62. //Обновляем гостя в базе
  63. mysql_query("UPDATE `online_guest` SET `ip`='$vi_shcms',`time`='".time()."',`ua`='$ua' WHERE `ip` = $sys[ip]");
  64. }
  65. else
  66. {
  67. //Добавляем гостя в базу
  68. mysql_query("INSERT INTO `online_guest` (`ip`,`time`,`ua`) VALUES ('$vi_shcms','".time()."',`ua`='$ua')");
  69. }
  70. }
  71. //Удаление гостей
  72. mysql_query("DELETE FROM `online_guest` WHERE `time` < '".(time()-600)."' AND `ip`='$vi_shcms'");
  73. mysql_query("OPTIMIZE TABLE `online_guest`");
  74.  
  75. }
  76. /*
  77. * @var string Ручной вывод классов include_once(@name)
  78. */
  79. public static function manual_output() {
  80. include_once(H.'system/inc/library/class_mp3/class_mp3.php');
  81. include_once(H.'system/inc/library/class_zip/uploads.class.php');
  82. }
  83. public static function Upload_end($str) {
  84. $tr = array(
  85. "А"=>"A","Б"=>"B","В"=>"V","Г"=>"G",
  86. "Д"=>"D","Е"=>"E","Ж"=>"J","З"=>"Z","И"=>"I",
  87. "Й"=>"Y","К"=>"K","Л"=>"L","М"=>"M","Н"=>"N",
  88. "О"=>"O","П"=>"P","Р"=>"R","С"=>"S","Т"=>"T",
  89. "У"=>"U","Ф"=>"F","Х"=>"H","Ц"=>"TS","Ч"=>"CH",
  90. "Ш"=>"SH","Щ"=>"SCH","Ъ"=>"","Ы"=>"YI","Ь"=>"",
  91. "Э"=>"E","Ю"=>"YU","Я"=>"YA","а"=>"a","б"=>"b",
  92. "в"=>"v","г"=>"g","д"=>"d","е"=>"e","ж"=>"j",
  93. "з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l",
  94. "м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",
  95. "с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h",
  96. "ц"=>"ts","ч"=>"ch","ш"=>"sh","щ"=>"sch","ъ"=>"y",
  97. "ы"=>"yi","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya"," " =>"_"
  98. );
  99. return strtr($str,$tr);
  100. }
  101.  
  102. /*
  103. * @var Функция легкой прописки ссылок
  104. * string $link_name = Название ссылки
  105. * string $link = URL название
  106. * string $link_title = Комментария к ссылке
  107. */
  108. public static function link_shcms($link_name,$link,$link_title = false) {
  109. if($link_title == false) {
  110. print '<a href="'.$link.'">'.$link_name.'</a>';
  111. }elseif($link_title == true) {
  112. print '<a title="'.$link_title.'" href="'.$link.'">'.$link_name.'</a>';
  113. }
  114. }
  115. /*
  116. * @var Функция обработки иконок
  117. * string $img = IMG название
  118. * string $img_title = Комментария к иконке
  119. */
  120. public static function img_shcms($img,$img_title){
  121. if($img_title == false) {
  122. print '<img src="'.$img.'">&nbsp;';
  123. }elseif($img_title == true) {
  124. print '<img title="'.$img_title.'" src="'.$img.'">&nbsp;';
  125. }
  126. }
  127. public static function format($name) {
  128. $f1 = strrpos($name, ".");
  129. $f2 = substr($name, $f1 + 1, 999);
  130. $fname = strtolower($f2);
  131. return $fname;
  132. }
  133. public static function format2($name1) {
  134. $f12 = strrpos($name1, ".");
  135. $f21 = substr($name1, $f12 - 999, -4);
  136. $fname12 = strtolower($f21);
  137. return $fname12;
  138. }
  139.  
  140.  
  141. }
  142. ?>