forked from SimplesIP/pabx-app
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
2.0 KiB
79 lines
2.0 KiB
2 years ago
|
<?php
|
||
|
|
||
|
require_once "util/FTPAccess.php";
|
||
|
require_once "util/SSH.php";
|
||
|
require_once "util/Logger.php";
|
||
|
|
||
|
/**
|
||
|
* Classe que mantem as funcionalidades dos metodos de arquivos e envio
|
||
|
*
|
||
|
* @author Lucas Awade
|
||
|
* @date 28/01/2020
|
||
|
*/
|
||
|
class Backup {
|
||
|
|
||
|
/** @logger */
|
||
|
private $log;
|
||
|
|
||
|
const CONF_ACTIVE_LOGGER = true;
|
||
|
|
||
|
/**
|
||
|
* Escrita de Log
|
||
|
* @return \Logger
|
||
|
*/
|
||
|
public function log() {
|
||
|
if(!$this->log){
|
||
|
$log = new Logger('backupfiles', self::CONF_ACTIVE_LOGGER);
|
||
|
$this->log = $log;
|
||
|
return $log;
|
||
|
}
|
||
|
return $this->log;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Adiciona barra no final da string de pasta
|
||
|
* @param string $string
|
||
|
* @return string
|
||
|
*/
|
||
|
protected function strslash($string) {
|
||
|
if (substr($string, -1) != "/") {
|
||
|
return $string . "/";
|
||
|
} else {
|
||
|
return $string;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Remove slash no inicio do diretorio
|
||
|
* @param string $string
|
||
|
* @return string
|
||
|
*/
|
||
|
protected function removeslash($string){
|
||
|
if (substr($string, 0, 1) == "/") {
|
||
|
return substr($string, 1);
|
||
|
} else {
|
||
|
return $string;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Renomeia as pastas de acordo com o periodo do backup do dia anterior;
|
||
|
* @return array
|
||
|
*/
|
||
|
protected function date_folders(){
|
||
|
$year = date('Y');
|
||
|
$month = date('m');
|
||
|
$folders = array('year' => $year, 'month' => $month);
|
||
|
|
||
|
if(date('m-d') == '01-01'){
|
||
|
$folders['year'] = $year - 1;
|
||
|
}
|
||
|
|
||
|
if(date('d') == '01'){
|
||
|
$folders['month'] = $month - 1;
|
||
|
}
|
||
|
|
||
|
return $folders;
|
||
|
}
|
||
|
}
|
||
|
|