58 lines
1.9 KiB
PHP
58 lines
1.9 KiB
PHP
<?php define('__ROOT__', dirname(dirname(__FILE__)) ); require_once __ROOT__.'/manager/autoloader.php';
|
|
|
|
use \manager\ResourceDispatcher;
|
|
use \manager\ManagerError;
|
|
|
|
|
|
|
|
/* [0] On formatte les entrées
|
|
=========================================================*/
|
|
// Si un des params manque, on retourne une erreur
|
|
if( !isset($_FILES['file']) || !isset($_POST['prefix']) ){
|
|
echo ManagerError::ParamError;
|
|
exit();
|
|
}
|
|
|
|
$prefix = htmlspecialchars(urlencode($_POST['prefix']));
|
|
|
|
|
|
/* [1] Chargement du fichier de config
|
|
=========================================================*/
|
|
$uploadAuthResource = new ResourceDispatcher('f/json/upload-auth/conf');
|
|
// Si une erreur pour le fichier de conf
|
|
if( $uploadAuthResource->error != ManagerError::Success ){ echo $uploadAuthResource->error; exit(); }
|
|
|
|
// On récupère la config
|
|
$uploadAuth = json_decode( $uploadAuthResource->getContent(), true );
|
|
|
|
// Si erreur de PARSAGE
|
|
if( $uploadAuth == null ){ echo ManagerError::ParsingFailed; exit(); }
|
|
|
|
var_dump( $uploadAuth );
|
|
|
|
|
|
/* [2] Création du fichier (temporaire->permanent)
|
|
=========================================================*/
|
|
|
|
|
|
/* [3] Gestion de la réponse
|
|
=========================================================*/
|
|
$path = __ROOT__.'/src/dynamic/'.$_POST['prefix'].'/';
|
|
$fileName = 'test.';
|
|
// On récupère l'extension
|
|
$fileName .= pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);
|
|
|
|
// on se place dans /src/dynamic/XX
|
|
chdir( $path );
|
|
// chmod( $path, 0774 );
|
|
|
|
if( move_uploaded_file($_FILES['file']['tmp_name'], $path.$fileName) ){
|
|
// on modifie les droits du fichier
|
|
chmod($path.$fileName, 0774);
|
|
echo ManagerError::Success;
|
|
}
|
|
else
|
|
echo ManagerError::UploadError;
|
|
|
|
?>
|