Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,23 @@ run-tests.log
/config/*.local.php
/config/*-*.php
.php-cs-fixer.cache

# Added by horde-components QC --fix-qc-issues
# Build artifacts directory
/build/
# Composer dependencies directory
/vendor/
# PHPStorm IDE settings
/.idea/
# VSCode IDE settings
/.vscode/
# Claude Code CLI cache and state
/.claude/
# Cline extension data
/.cline/
# PHPUnit result cache
/.phpunit.result.cache
# PHPStan local configuration (if not committed)
/phpstan.neon
# PHPStan cache directory
/.phpstan.cache/
3 changes: 2 additions & 1 deletion .horde.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ authors:
active: false
role: lead
version:
release: 5.0.0-alpha11
release: 5.0.0-alpha12
api: 5.0.0alpha1
state:
release: alpha
Expand Down Expand Up @@ -83,3 +83,4 @@ autoload:
- lib/
psr-4:
Horde\Nag\: /src
vendor: horde
4 changes: 2 additions & 2 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"role": "lead"
}
],
"time": "2025-06-04",
"time": "2026-03-07",
"repositories": [],
"require": {
"horde/horde-installer-plugin": "dev-FRAMEWORK_6_0 || ^3 || ^2",
Expand Down Expand Up @@ -67,7 +67,7 @@
"lib/"
],
"psr-4": {
"Horde\\Nag\\": "/src"
"Horde\\Nag\\": "src/"
}
},
"autoload-dev": {
Expand Down
96 changes: 96 additions & 0 deletions config/routes.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
/**
* Setup default routes
*/
namespace Horde\Nag;
use Psr\Http\Server\MiddlewareInterface;
use Psr\Http\Server\RequestHandlerInterface;

$mapper->connect('/t/complete',
array(
'controller' => 'CompleteTask',
Expand All @@ -11,3 +15,95 @@
array(
'controller' => 'SaveTask',
));

// Responsive routes
$mapper->connect(
'ResponsiveTasks',
'responsive',
[
'controller' => Responsive\ResponsiveController::class,
'HordeAuthType' => 'authenticate',
'stack' => [],
]
);

// Responsive filter routes
$mapper->connect(
'ResponsiveTasksAll',
'responsive/all',
[
'controller' => Responsive\ResponsiveController::class,
'HordeAuthType' => 'authenticate',
'stack' => [],
]
);

$mapper->connect(
'ResponsiveTasksIncomplete',
'responsive/incomplete',
[
'controller' => Responsive\ResponsiveController::class,
'HordeAuthType' => 'authenticate',
'stack' => [],
]
);

$mapper->connect(
'ResponsiveTasksComplete',
'responsive/complete',
[
'controller' => Responsive\ResponsiveController::class,
'HordeAuthType' => 'authenticate',
'stack' => [],
]
);

$mapper->connect(
'ResponsiveTasksFuture',
'responsive/future',
[
'controller' => Responsive\ResponsiveController::class,
'HordeAuthType' => 'authenticate',
'stack' => [],
]
);

$mapper->connect(
'ResponsiveTasksFutureIncomplete',
'responsive/future-incomplete',
[
'controller' => Responsive\ResponsiveController::class,
'HordeAuthType' => 'authenticate',
'stack' => [],
]
);

$mapper->connect(
'ResponsiveTaskAdd',
'responsive/add',
[
'controller' => Responsive\ResponsiveController::class,
'HordeAuthType' => 'authenticate',
'stack' => [],
]
);

$mapper->connect(
'ResponsiveTask',
'responsive/task/:tasklist/:id',
[
'controller' => Responsive\ResponsiveController::class,
'HordeAuthType' => 'authenticate',
'stack' => [],
]
);

$mapper->connect(
'ResponsiveTaskEdit',
'responsive/edit/:tasklist/:id',
[
'controller' => Responsive\ResponsiveController::class,
'HordeAuthType' => 'authenticate',
'stack' => [],
]
);
18 changes: 18 additions & 0 deletions doc/changelog.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,22 @@
---
5.0.0-alpha12:
api: 5.0.0-alpha12
state:
release: alpha
api: alpha
date: 2026-03-07
license:
identifier: GPL-2.0-only
uri: https://spdx.org/licenses/GPL-2.0-only.html
notes: |-
fix(forms): declare $_completedVar property to fix PHP 8.2+ deprecation
fix(forms): handle null values in strcasecmp calls
Merge pull request #5 from amulet1/fix_hook_class
Revert "fix: Add conditional to hook class template to prevent double declaration issues"
Merge pull request #4 from amulet1/autoload_renderer
fix: Modify VarRenderer class name to facilitate autoloading
fix: Correctly set message in isValid() calls, simplify getInfo() calls
fix: Drop unnecessary / uninitialized form parameter
5.0.0-alpha11:
api: 5.0.0-alpha1
state:
Expand Down
16 changes: 16 additions & 0 deletions js/responsive.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
/**
* Nag Responsive JavaScript
* Client-side enhancements for responsive mode
*
* Copyright 2026 Horde LLC (http://www.horde.org/)
*
* See the enclosed file LICENSE for license information (GPL). If you
* did not receive this file, see http://www.horde.org/licenses/gpl.
*/

document.addEventListener('DOMContentLoaded', function() {
// Add any client-side enhancements here
// For Phase 1, we'll keep it minimal

console.log('Nag responsive mode initialized');
});
2 changes: 1 addition & 1 deletion lib/Application.php
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ class Nag_Application extends Horde_Registry_Application

/**
*/
public $version = '5.0.0-alpha11';
public $version = '5.0.0-alpha12';

/**
* Global variables defined:
Expand Down
Loading
Loading