/**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store()
 {
     $file = Input::file('file');
     $filename = $file->getClientOriginalName();
     if ($file) {
         $filename = $file->getClientOriginalName();
         $extension = $file->getClientOriginalExtension();
         $destinationPath = public_path() . '/uploads/original/';
         $destinationPath_big = public_path() . '/uploads/big/';
         $destinationPath_crop = public_path() . '/uploads/crop/';
         $upload_success = Input::file('file')->move($destinationPath, $filename);
         if ($upload_success) {
             $image = Image::make($destinationPath . $filename)->resize(800, null, true)->save($destinationPath_big . $filename);
             $image = Image::make($destinationPath . $filename)->resize(640, null, true)->crop(400, 300, true)->save($destinationPath_crop . $filename);
             File::delete($destinationPath . $filename);
             $arch = new Archivo();
             $arch->archivo = $filename;
             $arch->descripcion = Input::get('descripcion', '');
             $arch->padre_id = Input::get('padre_id');
             $arch->padre = Input::get('padre');
             $arch->save();
         }
         return Redirect::to('/articulos/ver');
     }
 }
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store()
 {
     // var_dump(Input::All());
     // die;
     //
     // 'categorias_id' => 'exists:rubros,id'
     $rules = ['clasificado' => 'required', 'precio' => 'required', 'telefono' => 'required'];
     if (!Clasificado::isValid(Input::all(), $rules)) {
         return Redirect::back()->withInput()->withErrors(Clasificado::$errors);
     }
     $clasificado = new Clasificado();
     $clasificado->users_id = Sentry::getUser()->id;
     $clasificado->operacion = Input::get('operacion');
     $clasificado->clasificadoscategorias_id = Input::get('clasificadoscategorias_id');
     $clasificado->clasificado = Input::get('clasificado');
     $clasificado->precio = Input::get('precio');
     $clasificado->telefono = Input::get('telefono');
     $url_seo = Input::get('clasificado');
     $url_seo = $this->url_slug($url_seo) . date('ljSFY');
     $clasificado->url_seo = $url_seo;
     $clasificado->save();
     $file = Input::file('file');
     if ($file) {
         $filename = $file->getClientOriginalName();
         $extension = $file->getClientOriginalExtension();
         $destinationPath = public_path() . '/uploads/original/';
         $destinationPath_big = public_path() . '/uploads/big/';
         $destinationPath_crop = public_path() . '/uploads/crop/';
         $upload_success = Input::file('file')->move($destinationPath, $filename);
         if ($upload_success) {
             $image = Image::make($destinationPath . $filename)->resize(800, null, true)->save($destinationPath_big . $filename);
             $image = Image::make($destinationPath . $filename)->resize(640, null, true)->crop(240, 160, true)->save($destinationPath_crop . $filename);
             File::delete($destinationPath . $filename);
             $arch = new Archivo();
             $arch->archivo = $filename;
             $arch->descripcion = "";
             $arch->padre_id = $clasificado->id;
             $arch->padre = "clasificado";
             $arch->save();
         }
     }
     // return Redirect::to('/clasificados/ver');
 }
 public function cambiarFotoAction($usuario_id)
 {
     $usuario_id = strip_tags(htmlspecialchars($usuario_id));
     $usuario_id = intval($usuario_id);
     $usuario_id = filter_var($usuario_id, FILTER_VALIDATE_INT);
     if (!$usuario_id) {
         $this->app->redirect('/usuario/0/foto/');
     }
     $usuario = Perfil::find($usuario_id);
     if (count($usuario) == 0) {
         $action = '/usuario/' . $usuario_id . '/foto/';
         $this->app->redirect($action);
     }
     $file = $_FILES['file'];
     foreach ($file['error'] as $key => $error) {
         if ($error == 0) {
             $finfo = finfo_open(FILEINFO_MIME_TYPE);
             $mime = finfo_file($finfo, $file['tmp_name'][$key]);
             if (strcmp($mime, 'image/jpg') == 0) {
                 $dirname = 'uploads/avatar/';
                 $filename = uniqid() . '.jpg';
                 $uploadfile = $dirname . $filename;
                 if (move_uploaded_file($file['tmp_name'][$key], $uploadfile)) {
                     $archivo = new Archivo();
                     $archivo->tipo_id = 4;
                     $archivo->nombre = $filename;
                     $archivo->peso = $file['size'][$key];
                     $archivo->extension = $file['type'][$key];
                     $archivo->save();
                     $usuario->fotoPerfil = $archivo->archivo_id;
                     $usuario->save();
                     $_SESSION['upload'] = 1;
                 } else {
                     $action = '/usuario/' . $usuario->usuario_id . '/foto/?attempt=2';
                     $this->app->redirect($action);
                 }
             }
         } else {
             $action = '/usuario/' . $usuario->usuario_id . '/foto/?attempt=3';
             $this->app->redirect($action);
         }
     }
 }
Example #4
0
 /**
  * Creacion de un nuevo archivo en la bd y a la vez, se sube el archivo en el servidor.
  */
 public function createAction()
 {
     if (!$this->request->isPost()) {
         return $this->dispatcher->forward(array("controller" => "archivo", "action" => "index"));
     }
     try {
         /*SUBIENDO LOS ARCHIVOS*/
         #Verifica si existen archivos para subir
         date_default_timezone_set('America/Argentina/Rio_Gallegos');
         /*$script_tz = date_default_timezone_get();
         
                 if (strcmp($script_tz, ini_get('date.timezone'))){
                     echo 'La zona horaria del script difiere de la zona horaria de la configuracion ini.';
                 } else {
                     echo 'La zona horaria del script y la zona horaria de la configuración ini coinciden.';
                 }*/
         $archivosFallidos = "";
         if ($this->request->hasFiles() == true) {
             $uploads = $this->request->getUploadedFiles();
             $isUploaded = false;
             #Por cada archivo subido:
             $nombreCarpeta = 'temp/' . Date('Y_m_d');
             if (!file_exists($nombreCarpeta)) {
                 mkdir($nombreCarpeta, 0777, true);
             }
             foreach ($uploads as $upload) {
                 #define a “unique” name and a path to where our file must go
                 $nombreArchivo = date('h_i_s') . '_' . strtolower($upload->getname());
                 $path = $nombreCarpeta . '/' . $nombreArchivo;
                 #move the file and simultaneously check if everything was ok
                 $upload->moveTo($path) ? $isUploaded = true : ($isUploaded = false);
                 //=========== Creando un registro en la bd ====================
                 if ($isUploaded) {
                     $archivo = new Archivo();
                     $archivo->setArchivoCarpeta($nombreCarpeta);
                     $archivo->setArchivoNombre($nombreArchivo);
                     $archivo->setArchivoFechacreacion(Date('Y_m_d'));
                     if (!$archivo->save()) {
                         foreach ($archivo->getMessages() as $message) {
                             $this->flash->error($message);
                         }
                         return $this->dispatcher->forward(array("controller" => "archivo", "action" => "new"));
                     }
                 } else {
                     $archivosFallidos .= "{$nombreArchivo} <br>";
                 }
             }
             #if any file couldn’t be moved, then throw an message
             if ($isUploaded) {
                 $this->flash->success('Los archivos han sido cargado correctamente');
             } else {
                 $this->flash->error('Ha ocurrido un error, los siguientes archivos no se han podido subir: <br>' . $archivosFallidos);
             }
             return $this->dispatcher->forward(array("controller" => "archivo", "action" => "index"));
         } else {
             #if no files were sent, throw a message warning user
             //FIXME: Tamaño de archivos
             $this->flash->error('Operación Fallida, verifique que el tamaño de los archivos no superen los 47185920 bytes Ver EQUIVALENCIAS!!)');
             $this->redireccionar('archivo/new');
         }
         /*FIN:SUBIENDO LOS ARCHIVOS*/
     } catch (Exception $e) {
         $this->flash->error('El Archivo excede el tamaño <br> Datos Tecnicos: <br>' . $e->getMessage());
     }
 }
 public function addFileLeccionPost($leccion_id)
 {
     $file = $_FILES['file'];
     foreach ($file['error'] as $key => $error) {
         if ($error == 0) {
             $finfo = finfo_open(FILEINFO_MIME_TYPE);
             $mime = finfo_file($finfo, $file['tmp_name'][$key]);
             if (strcmp($mime, 'application/pdf') == 0) {
                 $dirname = 'uploads/lecciones/';
                 $filename = uniqid() . '.pdf';
                 $uploadfile = $dirname . $filename;
                 if (move_uploaded_file($file['tmp_name'][$key], $uploadfile)) {
                     $archivo = new Archivo();
                     $archivo->tipo_id = 3;
                     $archivo->nombre = $filename;
                     $archivo->peso = $file['size'][$key];
                     $archivo->extension = $file['type'][$key];
                     $archivo->save();
                     $archivo_leccion = new ArchivoLeccion();
                     $archivo_leccion->archivo_id = $archivo->archivo_id;
                     $archivo_leccion->leccion_id = $leccion_id;
                     $archivo_leccion->save();
                     $_SESSION['upload'] = 1;
                 } else {
                     $action = '/curso/leccion/' . $leccion_id . '/file?attempt=2';
                     $this->app->redirect($action);
                 }
             }
         } else {
             $action = '/curso/leccion/' . $leccion_id . '/file?attempt=' . $error;
             $this->app->redirect($action);
         }
     }
     $action = '/curso/leccion/' . $leccion_id . '/file';
     $this->app->redirect($action);
 }