Пример #1
0
session_start();
require_once '../_librerias/php/funciones.php';
require_once '../_librerias/php/UploadService.php';
$token = post("token");
$prepare = post("PREPARE_UPLOAD");
$configSession = $_SESSION[$token];
//create a Upload Service
//create constraints
$constraints = new UploadService_Config_Constraints();
$constraints->setMaxSize($configSession["constraints"]["maxSize"]);
$constraints->setExtensions($configSession["constraints"]["extensions"]);
//create configs
$config = new UploadService_Config();
$config->setToserver($configSession["toserver"]);
$config->setPath($configSession["path"]);
$config->setVideoPlatform($configSession["videoPlatform"]);
$config->setConstraints($constraints);
$upload = new UploadService();
$upload->setConfig($config);
$fileResource = $upload->file;
//$fileResource = new UploadService_File_Resource();
$response = null;
if ($prepare) {
    $file = new UploadService_File();
    $file->setName(post("name"));
    $file->setSize(post("size"));
    $response = $fileResource->prepare($file);
} else {
    $response = $fileResource->put();
}
echo json_encode($response);
Пример #2
0
 public function prepare(UploadService_File $file)
 {
     $config = $this->uploadService->getConfig();
     //        $config = new UploadService_Config();
     $configConstraints = $config->getConstraints();
     //        $configConstraints = new UploadService_Config_Constraints();
     $response = ["success" => false, "message" => null];
     $file->setName(strtolower($file->getName()));
     $fileNameExtension = pathinfo($file->getName(), PATHINFO_EXTENSION);
     $maxSizeMegaBytesValue = $configConstraints->getMaxSize() * 1024 * 1024;
     if (in_array($fileNameExtension, $configConstraints->getExtensions()) && $file->getSize() < $maxSizeMegaBytesValue) {
         $response["success"] = true;
     } else {
         if (!in_array($fileNameExtension, $configConstraints->getExtensions())) {
             $extensionsString = implode(", ", $configConstraints->getExtensions());
             $response["message"] = "La extensión del archivo es {$fileNameExtension}, debe tener las siguientes extensiones {$extensionsString}";
         } else {
             if (!($file->getSize() < $maxSizeMegaBytesValue)) {
                 $response["message"] = "El archivo supera los {$configConstraints->getMaxSize()} Megabytes";
             }
         }
     }
     //Verify if filename extension is video
     if (file::isVideo($file->getName())) {
         $response["isVideo"] = true;
         //Get token to video platform
         $postdata = http_build_query(["name" => "prueba", "password" => "12345"]);
         $options = ["http" => ["method" => "POST", "header" => "Content-type: application/x-www-form-urlencoded", "content" => $postdata]];
         $context = stream_context_create($options);
         $result = json_decode(file_get_contents('https://multimedia.owlgroup.org/login', false, $context));
         $response["token"] = $result->token;
     }
     return $response;
 }