Example #1
0
 public static function ruta_imagen($imagen_id = false)
 {
     if ($imagen_id) {
         $img = ImagenModel::find($imagen_id);
         if ($img) {
             if ($img->publica) {
                 return 'publics/' . $img->nombre;
             } else {
                 return 'perfil/' . $img->nombre;
             }
         } else {
             return 'system/avatars/no-photo.jpg';
         }
     } else {
         return 'system/avatars/no-photo.jpg';
     }
 }
 public function guardar_imagen_tomada($user)
 {
     $folderName = 'user_' . $user['id'];
     $folder = 'images/perfil/' . $folderName;
     if (!File::exists($folder)) {
         File::makeDirectory($folder, $mode = 0777, true, true);
     }
     $paciente = Paciente::find(Request::input('paciente_id'));
     $anterior = ImagenModel::find($paciente->image_id);
     if ($anterior) {
         $filename = 'images/perfil/' . $anterior->nombre;
         if (File::exists($filename)) {
             File::delete($filename);
             $anterior->forceDelete();
             $paciente->image_id = null;
         } else {
             return 'No se encuentra la imagen a eliminar. ' . $img->nombre;
         }
     }
     //separamos el nombre de la img y la extensión
     $info = explode(".", $paciente->nombres . '.jpg');
     //asignamos de nuevo el nombre de la imagen completo
     $miImg = $paciente->nombres . '.jpg';
     //mientras el nombre exista iteramos y aumentamos i
     $i = 0;
     while (file_exists($folder . '/' . $miImg)) {
         $i++;
         $miImg = $info[0] . "(" . $i . ")" . "." . $info[1];
     }
     $file = Request::input("foto");
     $binary_data = base64_decode($file);
     //guardamos la imagen con otro nombre ej foto(1).jpg || foto(2).jpg etc
     $result = file_put_contents($folder . '/' . $miImg, $binary_data);
     //$file->move($folder, $miImg);
     $newImg = new ImagenModel();
     $newImg->nombre = $folderName . '/' . $miImg;
     $newImg->user_id = $user['id'];
     $newImg->save();
     $paciente->image_id = $newImg->id;
     $paciente->save();
     return $newImg;
 }