View file install/inc/functions.php

File size: 2.46Kb
<?

function br($msg,$br='<br />'){return eregi_replace("((<br( ?/?)>)|\n|\r)+",$br, $msg);} // переносы строк


// принудительно вырубаем глобальные переменные
if (ini_get('register_globals')) {
  $allowed = array('_ENV' => 1, '_GET' => 1, '_POST' => 1, '_COOKIE' => 1, '_FILES' => 1, '_SERVER' => 1, '_REQUEST' => 1, 'GLOBALS' => 1);
  foreach ($GLOBALS as $key => $value) {
    if (!isset($allowed[$key])) {
      unset($GLOBALS[$key]);
    }
  }
}

function copyright($fiera){
return preg_replace("#</div>(\n|\r)*</body>#i", "<div style='font-size:small;'>&copy; <a title='Модификация движка Dcms' href='http://dcms-fiera.ru'>Dcms-Fiera</a> </div>\n</div>\n</body>", $fiera);
}
ob_start ("copyright");

function esc($text,$br=NULL){ // Вырезает все нечитаемые символы
if ($br!=NULL)
for ($i=0;$i<=31;$i++)$text=str_replace(chr($i), NULL, $text);
else{
for ($i=0;$i<10;$i++)$text=str_replace(chr($i), NULL, $text);
for ($i=11;$i<20;$i++)$text=str_replace(chr($i), NULL, $text);
for ($i=21;$i<=31;$i++)$text=str_replace(chr($i), NULL, $text);}
return $text;}

function msg($msg){echo "<div class='msg'>$msg</div>\n";} // вывод сообщений

function passgen($k_simb=8, $types=3) {
$password="";
$small="abcdefghijklmnopqrstuvwxyz";
$large="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$numbers="1234567890";
mt_srand((double)microtime()*1000000); 
for ($i=0; $i<$k_simb; $i++) { 
$type=mt_rand(1,min($types,3));
switch ($type) {
case 3:
$password.=$large[mt_rand(0,25)];
break;
case 2:
$password.=$small[mt_rand(0,25)];
break;
case 1:
$password.=$numbers[mt_rand(0,9)];
break;
}
}
return $password;
}
$passgen=passgen();


// сохранение настроек системы
function save_settings($set){
unset($set['web']);
if ($fopen=@fopen(H.'sys/dat/settings_6.2.dat', 'w')){
@fputs($fopen, serialize($set));
@fclose($fopen);
@chmod(H.'sys/dat/settings_6.2.dat', 0777);
return true;}
else
return false;}

// рекурсивное удаление папки
function delete_dir($dir){
if (is_dir($dir)){$od=opendir($dir);
while ($rd=readdir($od)){
if ($rd == '.' || $rd == '..') continue;
if (is_dir("$dir/$rd")){
@chmod("$dir/$rd", 0777);
delete_dir("$dir/$rd");}
else{
@chmod("$dir/$rd", 0777);
@unlink("$dir/$rd");}}
closedir($od);
@chmod("$dir", 0777);
return @rmdir("$dir");}
else{
@chmod("$dir", 0777);
@unlink("$dir");}}
?>