public function restore($params)
{
only_admin_access();
$id = null;
if (isset($params['id'])) {
$id = $params['id'];
} elseif (isset($_GET['filename'])) {
$id = $params['filename'];
} elseif (isset($_GET['file'])) {
$id = $params['file'];
}
if ($id == null) {
return array('error' => 'You have not provided a file to restore.');
die;
}
$id = str_replace('..', '', $id);
$here = $this->get_bakup_location();
$filename = $here . $id;
if (isset($_POST['import_to_page_id'])) {
$this->import_to_page_id = intval($_POST['import_to_page_id']);
}
if (!is_file($filename)) {
return array('error' => 'You have not provided a existing backup to restore.');
} else {
return $this->import_file($filename);
}
return $params;
}