Actualizacion

parent 5dd428bf
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<meta property="og:url" content="https://test-inovage.gearlabs.cl/nutrapharm/index?idp={{idp}}&fa={{fa}}&r=0" /> <meta property="og:url" content="https://test-inovage.gearlabs.cl/nutrapharm/index?idp={{idp}}&fa={{fa}}&r=0" />
<meta property="og:type" content="website" /> <meta property="og:type" content="website" />
<meta property="og:title" content="NutraPharm" /> <meta property="og:title" content="NutraPharm" />
<meta property="og:description" content="Producto Nutrapharm" /> <meta property="og:description" content="Producto Nutrapharm - Sacate una foto y compara en 30 días!" />
<meta property="og:image:type" content="image/png"/> <meta property="og:image:type" content="image/png"/>
<meta property="og:image:width" content="1200" /> <meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" /> <meta property="og:image:height" content="630" />
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
<meta property="og:url" content="https://test-inovage.gearlabs.cl/nutrapharm/index?idp={{idp}}&fa={{fa}}&r=0" /> <meta property="og:url" content="https://test-inovage.gearlabs.cl/nutrapharm/index?idp={{idp}}&fa={{fa}}&r=0" />
<meta property="og:type" content="website" /> <meta property="og:type" content="website" />
<meta property="og:title" content="NutraPharm Comparacion Foto" /> <meta property="og:title" content="NutraPharm Comparacion Foto" />
<meta property="og:description" content="Producto Nutrapharm - Foto " /> <meta property="og:description" content="{{comentarioFinal}}" />
<meta property="og:image:width" content="1200" /> <meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" /> <meta property="og:image:height" content="630" />
<meta property="og:image" content="https://test-inovage.gearlabs.cl/uploads/users/{{idp}}.{{extInicial}}"/> <meta property="og:image" content="https://test-inovage.gearlabs.cl/uploads/users/{{idp}}.{{extInicial}}"/>
...@@ -222,6 +222,7 @@ ...@@ -222,6 +222,7 @@
if(imagenTomada == true && imagenSubida == false){ if(imagenTomada == true && imagenSubida == false){
formData.append("upload_file", false); formData.append("upload_file", false);
formData.append("imagen", $("#imagenUsuario").attr('src'));
}else if(imagenSubida == true && imagenTomada == true){ }else if(imagenSubida == true && imagenTomada == true){
formData.append("upload_file", true); formData.append("upload_file", true);
} }
......
...@@ -29,36 +29,43 @@ class DefaultController extends Controller { ...@@ -29,36 +29,43 @@ class DefaultController extends Controller {
$log->debug("Ingresando al landing de nutrapharm... IP : $ip | UA : $ua"); $log->debug("Ingresando al landing de nutrapharm... IP : $ip | UA : $ua");
$idPersona = $request->get("idp", null); $idPersona = $request->get("idp", null);
$firstAttempt = $request->get("fa", 1); $firstAttempt = $request->get("fa", 1);
$reset = $request->get("r",0); $reset = $request->get("r", 0);
$comentarioFinal = "";
if ($idPersona == null) { if ($idPersona == null) {
$id = "none"; $id = "none";
$ext = "png"; $ext = "png";
$firstAttempt = 1; $firstAttempt = 1;
} } else {
else {
$id = $idPersona; $id = $idPersona;
$usuario= UsuarioNutrapharmQuery::create()->filterByUnuIdNutrapharm($idPersona)->findOne(); $usuario = UsuarioNutrapharmQuery::create()->filterByUnuIdNutrapharm($idPersona)->findOne();
$ext = $usuario->getUnuExtInicial(); $ext = $usuario->getUnuExtInicial();
$comentarioFinal = $usuario->getUnuComentarioFinal();
} }
return $this->render('producto/landing_producto.html.twig', array("idp" => $id, "extInicial" => $ext, "extFinal"=>"" ,"fa" => $firstAttempt, "r" => $reset)); return $this->render('producto/landing_producto.html.twig', array("idp" => $id, "extInicial" => $ext, "extFinal" => "", "comentarioFinal" => $comentarioFinal, "fa" => $firstAttempt, "r" => $reset));
} }
public function uploadAction(Request $request) { public function uploadAction(Request $request) {
$log = Utiles::setLog('NutraPharmBundle\Controller\DefaultController:uploadAction', 'nutrapharm/index'); $log = Utiles::setLog('NutraPharmBundle\Controller\DefaultController:uploadAction', 'nutrapharm/index');
$ua = $request->headers->get('User-Agent'); $ua = $request->headers->get('User-Agent');
$ip = $request->getClientIp(); $ip = $request->getClientIp();
$file = $request->files->get('imagen');
$tipo = $request->get("tipoUsuarioFormulario", null); $tipo = $request->get("tipoUsuarioFormulario", null);
$nombre = $request->get("nombreUsuario", null); $nombre = $request->get("nombreUsuario", null);
$correo = $request->get("mailUsuario", null); $correo = $request->get("mailUsuario", null);
$comentario = $request->get("comentarioFotoUsuario", null); $comentario = $request->get("comentarioFotoUsuario", null);
$usuarioNutraPharm = $request->get("usuarioNutraPharm", null); $usuarioNutraPharm = $request->get("usuarioNutraPharm", null);
$uploadFile = $request->get("upload_file", null);
if ($uploadFile) {//foto subida
$file = $request->files->get('imagen');
} else {//foto tomada
$file = $request->get("imagen", null);
}
$log->debug("guardando datos de ip $ip..."); $log->debug("guardando datos de ip $ip...");
//validacion datos entrada
if (empty($file)) { if (empty($file)) {
return new JsonResponse(array("msg" => "No se subio una imagen", "tipo" => UsuarioNutrapharm::ESTADO_FOTO_INICIAL), Response::HTTP_BAD_REQUEST, ['content-type' => 'text/plain']); return new JsonResponse(array("msg" => "No se subio una imagen", "tipo" => UsuarioNutrapharm::ESTADO_FOTO_INICIAL), Response::HTTP_BAD_REQUEST, ['content-type' => 'text/plain']);
...@@ -66,7 +73,6 @@ class DefaultController extends Controller { ...@@ -66,7 +73,6 @@ class DefaultController extends Controller {
if ($tipo == UsuarioNutrapharm::ESTADO_FOTO_INICIAL) { //Usuario Nuevo if ($tipo == UsuarioNutrapharm::ESTADO_FOTO_INICIAL) { //Usuario Nuevo
//$filename = $file->getClientOriginalName();
$usuarioNutraPharm = new UsuarioNutrapharm(); $usuarioNutraPharm = new UsuarioNutrapharm();
$usuarioNutraPharm->setUnuNombre($nombre); $usuarioNutraPharm->setUnuNombre($nombre);
$usuarioNutraPharm->setUnuCorreo($correo); $usuarioNutraPharm->setUnuCorreo($correo);
...@@ -76,22 +82,51 @@ class DefaultController extends Controller { ...@@ -76,22 +82,51 @@ class DefaultController extends Controller {
$usuarioNutraPharm->setUnuEstado(UsuarioNutrapharm::ESTADO_FOTO_INICIAL); $usuarioNutraPharm->setUnuEstado(UsuarioNutrapharm::ESTADO_FOTO_INICIAL);
$usuarioNutraPharm->setUnuEliminado(UsuarioNutrapharm::ELIMINADO_FALSE); $usuarioNutraPharm->setUnuEliminado(UsuarioNutrapharm::ELIMINADO_FALSE);
$usuarioNutraPharm->save(); $usuarioNutraPharm->save();
$uploadDir = $this->getParameter('upload_dir'); $uploadDir = $this->getParameter('upload_dir');
$idNutrapharm = explode("@", $usuarioNutraPharm->getUnuCorreo())[0] . $usuarioNutraPharm->getUnuId(); $idNutrapharm = explode("@", $usuarioNutraPharm->getUnuCorreo())[0] . $usuarioNutraPharm->getUnuId();
$usuarioNutraPharm->setUnuPathFotoInicial($uploadDir . '/' . $idNutrapharm); $usuarioNutraPharm->setUnuPathFotoInicial($uploadDir . '/' . $idNutrapharm);
$usuarioNutraPharm->setUnuIdNutrapharm($idNutrapharm); $usuarioNutraPharm->setUnuIdNutrapharm($idNutrapharm);
$usuarioNutraPharm->setUnuExtInicial($file->getClientOriginalExtension()); $usuarioNutraPharm->setUnuExtInicial($file->getClientOriginalExtension());
$usuarioNutraPharm->save(); $usuarioNutraPharm->save();
$filename = $idNutrapharm .".".$file->getClientOriginalExtension();
$file->move($uploadDir, $filename); if($uploadFile){
$filename = $idNutrapharm . "." . $file->getClientOriginalExtension();
$file->move($uploadDir, $filename);
return new JsonResponse(array("msg" => "La informacion ha sido ingresada con exito!", "tipo" => UsuarioNutrapharm::ESTADO_FOTO_ACTUALIZADA), Response::HTTP_OK, ['content-type' => 'text/plain']); }else{
$data = $this->getBase64Image($file);
file_put_contents("$filename.$data[1]", $data[0]);
}
return new JsonResponse(array("msg" => "La informacion ha sido ingresada con exito!", "tipo" => UsuarioNutrapharm::ESTADO_FOTO_ACTUALIZADA), Response::HTTP_OK, ['content-type' => 'application/json']);
} else if ($tipo == UsuarioNutrapharm::ESTADO_FOTO_ACTUALIZADA && $usuarioNutraPharm != null) { } else if ($tipo == UsuarioNutrapharm::ESTADO_FOTO_ACTUALIZADA && $usuarioNutraPharm != null) {
//Actualizar informacion ya existente //Actualizar informacion ya existente
$usuario = UsuarioNutrapharmQuery::create()->filterByUnuIdNutrapharm($usuarioNutraPharm)->findOne();
$usuario->setUnuNombre($nombre);
$usuario->setUnuCorreo($correo);
$usuario->setUnuComentarioInicial($comentario);
$usuario->setUnuUa($ua);
$usuario->setUnuIp($ip);
$usuarioNutraPharm->setUnuEstado(UsuarioNutrapharm::ESTADO_FOTO_ACTUALIZADA);
$usuarioNutraPharm->save();
$uploadDir = $this->getParameter('upload_dir');
$idNutrapharm = explode("@", $usuarioNutraPharm->getUnuCorreo())[0] . $usuarioNutraPharm->getUnuId();
$usuarioNutraPharm->setUnuPathFotoInicial($uploadDir . '/' . $idNutrapharm);
$usuarioNutraPharm->setUnuIdNutrapharm($idNutrapharm);
$usuarioNutraPharm->setUnuExtInicial($file->getClientOriginalExtension());
$usuarioNutraPharm->save();
$filename = $idNutrapharm . "." . $file->getClientOriginalExtension();
if($uploadFile){
$filename = $idNutrapharm . "." . $file->getClientOriginalExtension();
$file->move($uploadDir, $filename);
}else{
$data = $this->getBase64Image($file);
file_put_contents("$filename.$data[1]", $data[0]);
}
return new JsonResponse(array("msg" => "La información se ha actualizado!", "tipo" => UsuarioNutrapharm::ESTADO_FOTO_ACTUALIZADA), Response::HTTP_OK, ['content-type' => 'application/json']);
} elseif ($tipo == UsuarioNutrapharm::ESTADO_FOTO_FINAL && $usuarioNutraPharm != null) { } elseif ($tipo == UsuarioNutrapharm::ESTADO_FOTO_FINAL && $usuarioNutraPharm != null) {
//Unir fotos del usuario en base al usuarioNutraPharm //Unir fotos del usuario en base al usuarioNutraPharm
} }
} }
...@@ -131,6 +166,32 @@ class DefaultController extends Controller { ...@@ -131,6 +166,32 @@ class DefaultController extends Controller {
return $response; return $response;
} }
protected function getBase64Image($data) {
if (preg_match('/^data:image\/(\w+);base64,/', $data, $type)) {
$data = substr($data, strpos($data, ',') + 1);
$type = strtolower($type[1]); // jpg, png, gif
if (!in_array($type, ['jpg', 'jpeg', 'gif', 'png'])) {
//throw new \Exception('invalid image type');
return -1;
}
$data = base64_decode($data);
if ($data === false) {
//throw new \Exception('base64_decode failed');
return -1;
}
} else {
//throw new \Exception('did not match data URI with image data');
return -1;
}
//file_put_contents("img.{$type}", $data);
return array($data,$type);
}
protected function getMimeType($file) { protected function getMimeType($file) {
if ('jpg' === substr($file, -3)) { if ('jpg' === substr($file, -3)) {
$best_guess = 'jpeg'; $best_guess = 'jpeg';
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment