/** * Activo/Desactivo el modo mantenimiento. * @param bool $tipo 0 para deshabilitar, 1 para habilitar. */ public function action_habilitar_mantenimiento($tipo) { $tipo = (bool) $tipo; $mantenimiento = new Mantenimiento(); // Verifico la acción. if ($tipo == $mantenimiento->is_locked()) { $_SESSION['flash_error'] = 'El modo mantenimiento ya posee ese estado.'; } else { // Ejecuto la acción deseada. if ($tipo) { $_SESSION['flash_success'] = 'Modo mantenimiento activado correctamente.'; $c = new Model_Configuracion(); //TODO: Verificar que alguien pueda acceder. $mantenimiento->lock(unserialize($c->get('ip_mantenimiento', 'a:0:{}'))); } else { $_SESSION['flash_success'] = 'Modo mantenimiento activado correctamente.'; $mantenimiento->unlock(); } } Request::redirect('/admin/configuracion/mantenimiento'); }