Files
opensourcepos/app/Config/Jobs.php
T
objecttothis b7506e58dc feat(jobs): add web-triggered job scheduler with settings UI
Introduce a lightweight job scheduling system built on CI4 Tasks,
allowing due tasks to run via normal web traffic instead of relying
solely on external cron/Task Scheduler processes.

- Add JobRunner filter: runs TaskRunner after response send via
  shutdown function, throttled per-minute via cache, respects
  jobs_mode config ('auto'/'web'/'manual') and max-seconds budget
- Register jobrunner filter globally (app/Config/Filters.php),
  disabled during testing to avoid heartbeat log spam
- Add Config/Tasks.php with jobs_heartbeat scheduled task (debug
  log every minute) as scaffolding for future job commands
- Add Config/Jobs.php for mode/webMaxSeconds defaults
- Add Jobs controller + views (manage, settings_config,
  utilities_config, partial/job_throttles) for configuring mode,
  web max seconds, and per-period throttles; process-all/selected
  actions stubbed for a later phase
- Add gulp task to copy jobs.svg menubar icon
- Fix tooltip clipping: use container: 'body' for bootstrap
  tooltips and add max-width/text-align rules for tooltip-inner /
  ui-tooltip in ospos.css
- Fix missing closing div in partial/footer.php layout

Signed-off-by: objecttothis <17935339+objecttothis@users.noreply.github.com>
2026-09-17 15:11:54 +04:00

12 lines
189 B
PHP

<?php
namespace Config;
use CodeIgniter\Config\BaseConfig;
class Jobs extends BaseConfig
{
public string $mode = 'web'; // auto | web | manual
public int $webMaxSeconds = 5;
}