public function agregar()
 {
     //Aca se manda a la funcion agregarItem de la clase Item
     //y se queda con la respuesta para redirigir cual sea el caso
     $respuesta = Item::agregarItem(Input::all());
     if ($respuesta['error'] == true) {
         return Redirect::to('admin/' . $this->folder_name)->with('mensaje', $respuesta['mensaje'])->with('error', true);
     } else {
         $menu = $respuesta['data']->seccionItem()->menuSeccion()->url;
         $ancla = '#' . $respuesta['data']->seccionItem()->estado . $respuesta['data']->seccionItem()->id;
         return Redirect::to('/' . $menu)->with('mensaje', $respuesta['mensaje'])->with('ancla', $ancla)->with('ok', true);
     }
 }
Example #2
0
 public static function agregar($input)
 {
     //Lo crea definitivamente
     $item = Item::agregarItem($input);
     $galeria = static::create(['item_id' => $item['data']->id]);
     if ($galeria) {
         $respuesta['error'] = false;
         $respuesta['mensaje'] = "Galería creada.";
         $respuesta['data'] = $galeria;
     } else {
         $respuesta['error'] = true;
         $respuesta['mensaje'] = "La galería no pudo ser creada. Compruebe los campos.";
     }
     return $respuesta;
 }
Example #3
0
 public static function agregar($input)
 {
     //Lo crea definitivamente
     $respuesta = array();
     //Se definen las reglas con las que se van a validar los datos
     //del PRODUCTO
     $reglas = array('seccion_id' => array('integer'), 'imagen_portada_crop' => array('required'));
     //Se realiza la validación
     $validator = Validator::make($input, $reglas);
     if ($validator->fails()) {
         $messages = $validator->messages();
         /* if ($messages->has('titulo')) {
            $respuesta['mensaje'] = 'El código del producto contiene más de 9 caracteres o ya existe.';
            } else */
         if ($messages->has('imagen_portada_crop')) {
             $respuesta['mensaje'] = 'Se olvidó de guardar la imagen recortada.';
         } else {
             $respuesta['mensaje'] = 'Los datos necesarios para la obra son erróneos.';
         }
         //Si está todo mal, carga lo que corresponde en el mensaje.
         $respuesta['error'] = true;
     } else {
         if (isset($input['descripcion'])) {
             $input['descripcion'] = $input['descripcion'];
         } else {
             $input['descripcion'] = NULL;
         }
         $item = Item::agregarItem($input);
         if ($item['error']) {
             $respuesta['error'] = true;
             $respuesta['mensaje'] = "Hubo un error al agregar la obra. Compruebe los campos.";
         } else {
             $portfolio_simple = static::create(['item_id' => $item['data']->id]);
             if ($portfolio_simple) {
                 $respuesta['error'] = false;
                 $respuesta['mensaje'] = "Obra creada.";
                 $respuesta['data'] = $portfolio_simple;
             } else {
                 $respuesta['error'] = true;
                 $respuesta['mensaje'] = "Hubo un error al agregar la obra. Compruebe los campos.";
             }
         }
     }
     return $respuesta;
 }
Example #4
0
 public static function agregar($input)
 {
     //Lo crea definitivamente
     //Lo crea definitivamente
     if (isset($input['descripcion'])) {
         $input['descripcion'] = $input['descripcion'];
     } else {
         $input['descripcion'] = NULL;
     }
     $input['es_texto'] = true;
     $item = Item::agregarItem($input);
     if (isset($input['cuerpo'])) {
         $cuerpo = $input['cuerpo'];
     } else {
         $cuerpo = NULL;
     }
     if (!isset($item['data'])) {
         $html = false;
         $respuesta['mensaje'] = $item['mensaje'];
     } else {
         $html = static::create(['item_id' => $item['data']->id]);
         $datos_lang = array('cuerpo' => $cuerpo);
         $idiomas = Idioma::where('estado', 'A')->get();
         foreach ($idiomas as $idioma) {
             /*
              if ($idioma->codigo != Config::get('app.locale')) {
              $datos_lang['url'] = $idioma->codigo . "/" . $datos_lang['url'];
                     }
             * 
             */
             $html->idiomas()->attach($idioma->id, $datos_lang);
         }
     }
     if ($html) {
         $respuesta['error'] = false;
         $respuesta['mensaje'] = "Html publicado.";
         $respuesta['data'] = $html;
     } else {
         $respuesta['error'] = true;
         if (!isset($respuesta['mensaje'])) {
             $respuesta['mensaje'] = "Error en el html. Compruebe los campos.";
         }
     }
     return $respuesta;
 }
Example #5
0
 public static function agregar($input)
 {
     //Lo crea definitivamente
     $respuesta = array();
     //Se definen las reglas con las que se van a validar los datos
     //del PRODUCTO
     $reglas = array('titulo' => array('required', 'max:50', 'unique:item_lang'), 'seccion_id' => array('integer'), 'imagen_portada_crop' => array('required'));
     //Se realiza la validación
     $validator = Validator::make($input, $reglas);
     if ($validator->fails()) {
         $messages = $validator->messages();
         if ($messages->has('titulo')) {
             $respuesta['mensaje'] = 'El título de la muestra contiene más de 50 caracteres o ya existe.';
         } elseif ($messages->has('imagen_portada_crop')) {
             $respuesta['mensaje'] = 'Se olvidó de guardar la imagen recortada.';
         } else {
             $respuesta['mensaje'] = 'Los datos necesarios para la muestra son erróneos.';
         }
         //Si está todo mal, carga lo que corresponde en el mensaje.
         $respuesta['error'] = true;
     } else {
         $ok = false;
         if (isset($input['video']) && $input['video'] != "") {
             if (is_array($input['video'])) {
                 foreach ($input['video'] as $key => $video) {
                     if ($video != "") {
                         $dataUrl = parse_url($video);
                         if (in_array($dataUrl['host'], ['vimeo.com', 'www.vimeo.com'])) {
                             $hosts = array('vimeo.com', 'www.vimeo.com');
                             if (Video::validarUrlVimeo($video, $hosts)['estado']) {
                                 $ok = true;
                             }
                         } else {
                             $hosts = array('youtube.com', 'www.youtube.com');
                             $paths = array('/watch');
                             if (Video::validarUrl($video, $hosts, $paths)['estado']) {
                                 if ($ID_video = Youtube::parseVIdFromURL($video)) {
                                     $ok = true;
                                 }
                             }
                         }
                     } else {
                         $ok = true;
                         break;
                     }
                 }
             } else {
                 $dataUrl = parse_url($input['video']);
                 if (in_array($dataUrl['host'], ['vimeo.com', 'www.vimeo.com'])) {
                     $hosts = array('vimeo.com', 'www.vimeo.com');
                     if (Video::validarUrlVimeo($input['video'], $hosts)['estado']) {
                         $ok = true;
                     }
                 } else {
                     $hosts = array('youtube.com', 'www.youtube.com');
                     $paths = array('/watch');
                     if (Video::validarUrl($input['video'], $hosts, $paths)['estado']) {
                         if ($ID_video = Youtube::parseVIdFromURL($input['video'])) {
                             $ok = true;
                         }
                     }
                 }
             }
         } else {
             $ok = true;
         }
         if ($ok) {
             if (isset($input['descripcion'])) {
                 $input['descripcion'] = $input['descripcion'];
             } else {
                 $input['descripcion'] = NULL;
             }
             $item = Item::agregarItem($input);
             if (isset($input['cuerpo'])) {
                 $cuerpo = $input['cuerpo'];
             } else {
                 $cuerpo = NULL;
             }
             if (!$item['error']) {
                 $muestra = static::create(['item_id' => $item['data']->id]);
                 $datos_lang = array('cuerpo' => $cuerpo);
                 $idiomas = Idioma::where('estado', 'A')->get();
                 foreach ($idiomas as $idioma) {
                     /*
                      if ($idioma->codigo != Config::get('app.locale')) {
                      $datos_lang['url'] = $idioma->codigo . "/" . $datos_lang['url'];
                      }
                     * 
                     */
                     $muestra->idiomas()->attach($idioma->id, $datos_lang);
                 }
                 $respuesta['data'] = $muestra;
                 $respuesta['error'] = false;
                 $respuesta['mensaje'] = "Muestra creada.";
             } else {
                 $respuesta['error'] = true;
                 $respuesta['mensaje'] = "La muestra no pudo ser creada. Compruebe los campos.";
             }
         } else {
             $respuesta['error'] = true;
             $respuesta['mensaje'] = "Problema en la/s url de video cargada.";
         }
     }
     return $respuesta;
 }
Example #6
0
 public static function agregarProducto($input)
 {
     //Lo crea definitivamente
     $item = Item::agregarItem($input);
     if (isset($input['cuerpo'])) {
         $cuerpo = $input['cuerpo'];
     } else {
         $cuerpo = NULL;
     }
     if (!$item['error']) {
         $producto = static::create(['item_id' => $item['data']->id]);
         $datos_lang = array('cuerpo' => $cuerpo);
         $idiomas = Idioma::where('estado', 'A')->get();
         foreach ($idiomas as $idioma) {
             /*
              if ($idioma->codigo != Config::get('app.locale')) {
              $datos_lang['url'] = $idioma->codigo . "/" . $datos_lang['url'];
              }
             * 
             */
             $producto->idiomas()->attach($idioma->id, $datos_lang);
         }
         if ($producto) {
             if (isset($input['precio']) && $input['precio'] != "") {
                 $valores = array("valor" => $input['precio'], "estado" => "A");
                 $producto->precios()->attach(2, $valores);
             }
             if (isset($input['item_destacado']) && $input['item_destacado'] == 'O') {
                 if (isset($input['precio_antes']) && $input['precio_antes'] != "") {
                     $datos = array("producto_id" => $producto->id, "tipo_precio_id" => 1);
                     $baja_producto_precio = DB::table('producto_precio')->where($datos)->update(array('estado' => 'B'));
                     $valores = array("valor" => $input['precio_antes'], "estado" => "A");
                     $producto->precios()->attach(1, $valores);
                 }
                 if (isset($input['precio_actual']) && $input['precio_actual'] != "") {
                     $datos = array("producto_id" => $producto->id, "tipo_precio_id" => 2);
                     $baja_producto_precio = DB::table('producto_precio')->where($datos)->update(array('estado' => 'B'));
                     $valores = array("valor" => $input['precio_actual'], "estado" => "A");
                     $producto->precios()->attach(2, $valores);
                 }
             }
             if (isset($input['marca_principal']) && $input['marca_principal'] != "") {
                 $valores = array("producto_id" => $producto->id, "marca_id" => $input['marca_principal'], "estado" => "A");
                 DB::table('producto_marca')->insert($valores);
                 //$producto->marcas_principales()->attach(1, $valores);
             }
             if (isset($input['marcas_secundarias']) && $input['marcas_secundarias'] != "") {
                 foreach ($input['marcas_secundarias'] as $key => $marca) {
                     $valores = array("producto_id" => $producto->id, "marca_id" => $marca, "estado" => "A");
                     DB::table('producto_marca')->insert($valores);
                     //$producto->marcas_principales()->attach(1, $valores);
                 }
             }
             $respuesta['data'] = $producto;
             $respuesta['error'] = false;
             $respuesta['mensaje'] = "Producto publicado.";
         } else {
             $respuesta['error'] = true;
             $respuesta['mensaje'] = "El producto no pudo ser creado. Compruebe los campos.";
         }
     } else {
         $respuesta = $item;
     }
     return $respuesta;
 }