/** Backup runtime folder * @param bool $includeDatabase * Backup database, too? * * @return array */ public function backupRuntime($includeDatabase = false) { global $Config, $Database; // create paths $path = $Config->get('dir_runtime'); $path_new = $Config->get('dir_data') . '/backup/runtime/' . date('Y_m_d__H_i_s'); // move folder to backup-directory if (!ts_FileHandler::copyFolder($path, $path_new)) { return false; } // backup database //TODO - skip database-backup (creates too big sql-file!) if ($includeDatabase) { // get path for sql-backup $path_sql = $path_new . '/backup_database.sql'; // backup database // if (!self::backupDatabase($path_sql)) return false; } // get number of backups $path = $Config->get('dir_data') . '/backup/runtime'; $backups = ts_FileHandler::getSubFolders($path); rsort($backups); $counter = 0; foreach ($backups as $index => $value) { $counter++; if ($counter >= 10) { // delete backup ts_FileHandler::deleteFolder($path . '/' . $value); } } return true; }