/**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store(Request $request)
 {
     $producto = new Producto($request->all());
     $this->validate($request, ['nombre' => 'required|min:5|max:50|unique:productos,nombre', 'codigo' => 'required|max:30|unique:productos,codigo', 'categoria_id' => 'required', 'subcategoria_id' => 'required']);
     $producto->save();
     if ($request->file('imagen')) {
         $file = $request->file('imagen');
         $name = 'producto_' . time() . '.' . $file->getClientOriginalExtension();
         //public_path() hace referencia a la carpeta public, pero en el hosting hay uqe cambiarlo, estoy se hace con una
         //funcion uqe se encuentra en el archivo index.php uqe esta en la carpeta public en el hosting
         $path = public_path() . '/images/productos/';
         $file->move($path, $name);
         $imagen = new Imagen();
         $imagen->nombre = $name;
         $imagen->producto_id = $producto->id;
         $imagen->save();
     } else {
         $imagen = new Imagen();
         $imagen->nombre = "sin_imagen.jpg";
         $imagen->producto_id = $producto->id;
         $imagen->save();
     }
     Flash::success('Producto ' . $producto->name . ' registrada exitosamente!!');
     return redirect()->route('admin.productos.index');
 }
Esempio n. 2
0
 public function actionSaveImagen()
 {
     //modificar y poner la clase imagen
     $usuario = Usuario::model()->findByPk(Yii::app()->user->id);
     $nombreImagen = $_POST['data'];
     if ($nombreImagen != null) {
         $imagen = new Imagen();
         $imagen->id_usuario = $usuario->id_usuario;
         $imagen->nombre = $nombreImagen;
         $imagen->fhcreacion = new CDbExpression('NOW()');
         $imagen->cusuario = "pepe";
         if ($imagen->save()) {
             echo "grabado";
         } else {
             echo "no se ha podido grabar_1";
         }
     } else {
         echo "no se ha podido grabar_2";
     }
 }
 public function uploadFile()
 {
     $negocio = Negocio::find(Input::get('negocio_id'));
     $anioMes = strftime("%Y%m", strtotime($negocio->created_at));
     if (Input::hasFile('file')) {
         $file = Input::file('file');
         $extension = $file->getClientOriginalExtension();
         $name = $file->getClientOriginalName();
         $filename = md5(date("Ymdhis"));
         if ($extension == 'jpg' || $extension == 'png' || $extension == 'jpeg') {
             $SimplePath = checkPath($anioMes, $negocio->id, 3);
             // 3 = imagenes
             $path = public_path() . '/' . $SimplePath;
             $image = Image::make(Input::file('file')->getRealPath());
             $image->fit(1280, 480);
             //3x
             $filename3x = $filename . '@3x.' . $extension;
             $image->save($path . '/' . $filename3x);
             $image->fit(640, 240);
             //2x
             $filename2x = $filename . '@2x.' . $extension;
             $image->save($path . '/' . $filename2x);
             $image->fit(320, 120);
             //1x
             $filename1x = $filename . '.' . $extension;
             $image->save($path . '/' . $filename1x);
             $imagenNegocio = new Imagen();
             $imagenNegocio->imagen = $anioMes . '/' . $negocio->id . '/imagenes/' . $filename1x;
             $imagenNegocio->save();
             if ($negocio->imagenes()->save($imagenNegocio)) {
                 return Response::json(["response" => "ok", "img" => $anioMes . '/' . $negocio->id . '/imagenes/' . $filename1x]);
             } else {
                 return Response::json(["response" => "error"]);
             }
         }
     } else {
         return Response::json(["response" => "error"]);
     }
 }
 public function actionAgregarImagen($id)
 {
     $this->layout = 'ajax';
     $model = new ImagenProducto();
     $imagen = new Imagen();
     $ruta = new Configuracion();
     // uncomment the following code to enable ajax-based validation
     /*
      if(isset($_POST['ajax']) && $_POST['ajax']==='imagen-producto-agregarImagen-form')
      {
      echo CActiveForm::validate($model);
      Yii::app()->end();
      }
     */
     if (isset($_POST['ImagenProducto'])) {
         $model->attributes = $_POST['ImagenProducto'];
         //echo "<pre>"; print_r($_FILES); echo "</pre>"; exit();
         //echo "<pre>"; print_r($_POST); echo "</pre>";
         $imagen->producto_id = $id;
         if ($imagen->save()) {
             $imagen_nombre = 'PI-' . str_pad($imagen->imagen_id, 6, "0", STR_PAD_LEFT) . '-' . str_replace(' ', '_', $_FILES["ImagenProducto"]["name"]['archivo']);
             $imagen->imagen_nombre = $imagen_nombre;
             if ($imagen->save()) {
                 if (move_uploaded_file($_FILES["ImagenProducto"]["tmp_name"]['archivo'], $ruta->findByPk(1)->configuracion_valor . '/' . $imagen_nombre)) {
                     $this->redirect(array('producto/view', 'id' => $id));
                 }
             }
         }
     }
     $this->render('agregarImagen', array('model' => $model, 'id' => $id));
 }