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; }