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
<?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; |
|
} |
|
} |
|
|