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 deleteDestroy($id) { $img = ImagenModel::findOrFail($id); $filename = 'images/perfil/' . $img->nombre; // Debería crear un código que impida borrar si la imagen es usada. if (File::exists($filename)) { File::delete($filename); $img->delete(); } else { return 'No se encuentra la imagen a eliminar. ' . $img->nombre; } // Elimino cualquier referencia que otros tengan a esa imagen borrada. $pacientes = Paciente::where('image_id', $id)->get(); foreach ($pacientes as $paci) { $paci->image_id = null; $paci->save(); } $users = User::where('image_id', $id)->get(); foreach ($users as $user) { $user->image_id = null; $user->save(); } $confs = Configuracion::where('logo_id', $id)->get(); foreach ($confs as $conf) { $conf->logo_id = null; $conf->save(); } return $img; }