Commit 135b8b99 authored by Lionel VEST's avatar Lionel VEST
Browse files

*

parent d279d25e
......@@ -14,13 +14,19 @@ function read($connection,$input)
}
else if ($input->body->action == 'convert_to_zip')
{
$path = '/srv/files/'. $input->db . str_replace('/files/'. $input->db, '', $input->body->path);
if (!isset($input->body->path)) return array("code" => 400, "message" => "Aucun chemin n'a été spécifié");
if (!isset($input->body->items)) return array("code" => 400, "message" => "Aucun fichier ou dossier à compresser n'a été spécifié");
if (strpos($input->body->path,'/..')) return array("code" => 400, "message" => "Le chemin fourni est invalide");
if (!isdir($path)) return array("code" => 400, "message" => "Le chemin spécifié n'existe pas");
if (!isset($input->body->items)) return array("code" => 400, "message" => "Aucun fichier ou dossier à compresser n'a été spécifié");
foreach ($input->body->items as $item)
if (strpos($input->body->path,'/'))
return array("code" => 400, "message" => "Le fichier spécifié est invalide");
foreach ($input->body->items as $item)
if (strpos($input->body->path,'/')) return array("code" => 400, "message" => "Le fichier spécifié est invalide");
if (!file_exists($path . '/' . $item))
return array("code" => 400, "message" => "Le fichier spécifié n'existe pas");
$path = '/srv/files/'. $input->db . str_replace('/files/'. $input->db, '', $input->body->path);
$zip_to_create = time() . ".zip";
exec("LC_ALL=fr_FR.UTF-8 export HOME=/srv/api/tmp && cd '" . $path . "'; zip -r '" . $zip_to_create . "' '" . implode("' '",$input->body->items) . "' 2>&1",$output);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment