Lecteur Markdown
SCHEDULER_DOCUMENTATION_FR
Fonctionnalité : Scheduler #
Gestion des tâches planifiées (cron jobs) via une interface web. Permet de créer, modifier, activer/désactiver et supprimer des tâches automatisées sans accès SSH.
---
Installation et Configuration #
Par FTP : Déposer le répertoire `scheduler/` dans `/plugins/`.
Par package manager : Sélectionner `scheduler` dans la liste des plugins disponibles.
Chemins :
- Plugin principal : `/plugins/scheduler/scheduler.php`
- Configuration : `/plugins/scheduler/conf/scheduler.conf.inc.php`
- Handler AJAX : `/plugins/scheduler/handlers/scheduler.mod.php`
Paramètres de configuration (`scheduler.conf.inc.php`) :
| Variable | Valeur par défaut | Description |
|---|---|---|
| `$basedatadisplay` | `'yes'` | Affichage dans l'interface de gestion |
| `$basedisplevel` | `BASE_LEVEL_ADMIN` | Niveau minimum requis |
| `$ftype` | `3` | Type plugin (système) |
| `CRON_LEVEL_ADMIN` | `BASE_LEVEL_ADMIN` | Niveau requis pour les opérations |
Table SQL requise : `cron_jobs`
Champs de la table : `id`, `name`, `module`, `hour`, `enabled`, `backup_type`, `max_backups`, `about`.
---
Utilisation #
Interface #
- Liste des tâches planifiées avec statut activé/désactivé (toggle AJAX).
- Formulaire de création/édition d'une tâche.
- Suppression d'une tâche.
Règles de validation #
| Champ | Contrainte |
|---|---|
| `name` | Alphanumérique, tirets et underscores, minimum 3 caractères |
| `module` | Doit se terminer par `.mod.php`, `.php` ou `.dta` |
| `hour` | Entier entre 0 et 23 |
---
Hooks et Points d'entrée #
Handler AJAX (`scheduler.mod.php`) #
| Action | Méthode | Description |
|---|---|---|
| `toggle` | GET | Active ou désactive une tâche (`?id=X`) |
| `save` | POST | Crée ou met à jour une tâche |
| `delete` | GET | Supprime une tâche (`?id=X`) |
---
Dépendances #
- `Beamreactor\Database\SQL` — CRUD sur `cron_jobs`
- `Beamreactor\Sanitizer\Parser` — validation des champs du formulaire