Вход Регистрация
Файл: crons/autobu.php
Строк: 157
<?php

include("../config.php");
include(
"../autoconfig.php");
include(
"yandexdisk.php");
include(
"database.php");

$path SANTI_SERVERPATH;
$path preg_replace('/\+|/+/''/'$path);
$path rtrim($path'/');
$site_root $path;
$archivename "santi_abu_".date('Y-m-d_H-i').".sabu";

$cwd getcwd();
$cwd preg_replace('/\+|/+/''/'$cwd);

$wspl1 chr(119).chr(105).chr(115).chr(112).chr(108); //wispl
$wspl2 chr(119).chr(105).chr(36).chr(112).chr(108); //wi$pl

$wsfn1 chr(119).chr(105).chr(115).chr(102).chr(110);//wisfn
$wsfn2 chr(119).chr(105).chr(36).chr(102).chr(110);//wi$fn

$exludethisdir=true// - не эти каталоги TRUE/FALSE
$exludethisdirmode SANTI_PATH;

$onlythisext=false// - только с расширением TRUE/FALSE
$onlythisextmode "";

$onlyfilesize=true;
$onlyfilesizemode 3145728//не более 3х мегабайт

$exludesubdirs=false// - не обрабатывать подкаталоги

if(STATUS_BU)
{
    
autopilots_add_time(3);
    
$path_result compress($path$archivename);
    if(
YADISK_BU)
    {
        if(
file_exists(SANTI_SERVERPATH."/".SANTI_PATH."/datas/backups/".$archivename))            
            
send_to_yadisk($archivename);
        
unlink(SANTI_SERVERPATH."/".SANTI_PATH."/datas/backups/".$archivename);
    }
}
else
    die(); 

function 
compress($path$archivename
{
        global 
$site_root$totalbytes$totalfiles$output$add_in_contents;
        @
chdir($site_root);
        
_get_dir_tree();

        if (
extension_loaded('zlib')) 
        {
            
$fpz gzopen(SANTI_SERVERPATH.'/'.SANTI_PATH.'/datas/backups/'.$archivename'wb9');
            
gzwrite($fpz$add_in_contents);
            
gzclose($fpz);
        } 
        else 
        {
            return 
"0";
        }

        return 
"1";
}

function 
add_in_data($add_in_data_file
{
        global 
$site_root$add_in_contents$wspl1$wspl2$wsfn1$wsfn2;
        if (!isset(
$add_in_contents)) {$add_in_contents '';}

        
$contents = @file_get_contents($site_root.$add_in_data_file);

        
$contents = @str_replace($wspl1$wspl2$contents);
        
$contents = @str_replace($wsfn1$wsfn2$contents);

        
$add_in_contents .= $wspl1;
        
$add_in_contents .= $add_in_data_file;
        
$add_in_contents .= $wsfn1;
        
$add_in_contents .= @substr(sprintf('%o'fileperms($site_root.$add_in_data_file)), -3);
        
$add_in_contents .= $wsfn1;
        
$add_in_contents .= $contents;
}

function 
_get_dir_tree($parentdir='/'
{
        
//exludesubdirs - не обрабатывать подкаталоги TRUE/FALSE значение в 
        //exludethisdir - не эти каталоги TRUE/FALSE значение в $exludethisdirmode
        //onlythisext - только с расширением TRUE/FALSE значение в $onlythisextmode
        //onlyfilesize - не более байт TRUE/FALSE значение в $onlyfilesizemode

        
global $totalbytes$totalfiles$output$exludesubdirs$onlythisext$onlythisextmode$onlyfilesize$onlyfilesizemode$exludethisdir$exludethisdirmode;

        if (
file_exists('.htaccess'))
        {
                
$add_htaccess 1;
                
$add_htaccess2 1;

                if (!
preg_match('/\.('.$onlythisextmode.')$/i''.htaccess') and $onlythisext
                {
                        
$add_htaccess 0;
                }

                if (
$onlyfilesize and filesize('.htaccess') > $onlyfilesizemode
                {
                    
$add_htaccess2 0;
                }

                if (
$add_htaccess == and $add_htaccess2 == 1
                {
                    
add_in_data ($parentdir.'.htaccess');
                    
//$output .= ' <span class="filedir">'.ltrim($parentdir, '/').'.htaccess</span><br />';
                
}
        }

        if (
file_exists('.htpasswd')) 
        {
            
$add_htpasswd 1;
            
$add_htpasswd2 1;
            if (!
preg_match('/\.('.$onlythisextmode.')$/i''.htpasswd') and $onlythisext
            {
                
$add_htpasswd 0;
            }

            if (
$onlyfilesize and filesize('.htpasswd') > $onlyfilesizemode
            {
                
$add_htpasswd2 0;
            }

            if (
$add_htpasswd == and $add_htpasswd2 == 1)
            {
                
add_in_data($parentdir.'.htpasswd');
                
//$output .= ' <span class="filedir">'.ltrim($parentdir, '/').'.htpasswd</span><br />';
            
}
        }

        foreach (
glob('*')?glob('*'):array() as $file
        {
            if (
substr($file04) == 'sabu') {continue;}
            if (
substr($file, -44) == 'sabu') {continue;}

            if (
is_file($file) && is_readable($file)) 
            {
                if (
$onlyfilesize and filesize($file) > $onlyfilesizemode) {continue;}
                if (!
preg_match('/\.('.$onlythisextmode.')$/i'$file) and $onlythisext) {continue;}

                
add_in_data($parentdir.$file);
                
//$output .= ' <span class="filedir">'.ltrim($parentdir, '/').$file.'</span><br />';
            
}
            else if (
is_dir($file)) 
            {
                if (!
$exludesubdirs
                {
                    if (
preg_match('/('.$exludethisdirmode.')$/i'$file) and $exludethisdir) {continue;}

                    
$cwd getcwd();
                    
$site_root preg_replace('/\+/''/'$cwd);
                    
/*$output .= '<span class="filedir">'.$site_root.'/'.$file.'</span><br />';*/

                    
if (!@chdir($file)) 
                    {
                        continue;
                    }

                    
_get_dir_tree($parentdir.$file.'/');
                    
chdir("..");
                }
            }
        }
}
?>
Онлайн: 3
Реклама