-
Notifications
You must be signed in to change notification settings - Fork 14
DEV Intervenir sur les menus
Les menus sont stockés dans une base sqlite3 à la racine du projet (fichier menu), qui comprend une seule table (menu)
CREATE TABLE menu
(id integer primary key AUTOINCREMENT,
texte text,
parent_id integer,
ordre integer,
action text);
Une fois l'environnement, chargé, utiliser la fonction debug_menu
(venv) seed@seedop:/opt/seedbox-compose$ debug_menu
==> 1-1) Ajout/Suppression d'applis |
==> ==> 3-1) Ajout d'application |
==> ==> ==> 13-1) Applications Seedbox | ajout_app_seedbox
==> ==> ==> 14-2) Autres Applications | ajout_app_autres
==> ==> 4-2) Suppression d'application | menu_suppression_application
==> ==> 5-3) Réinitialisation container | menu_reinit_container
==> 2-2) Gestion |
==> ==> 6-1) Sécurisation système |
==> ==> ==> 15-1) Sécuriser Traefik avec Google OAuth2 | menu_secu_system_oauth2
==> ==> ==> 16-2) Sécuriser avec Authentification Classique | menu_secu_system_auth_classique
==> ==> ==> 17-3) Ajout / Supression adresses mail autorisées pour Google OAuth2 | menu_secu_system_ajout_adresse_oauth2
==> ==> ==> 18-4) Modification port SSH, mise à jour fail2ban, installation Iptables | menu_secu_systeme_iptables
[ ... ]
==> ==> 12-7) Installation Rclone vfs && Plexdrive |
==> ==> ==> 52-1) Installation rclone vfs | menu_install_rclone_vfs
==> ==> ==> 53-2) Installation plexdrive | menu_install_plexdrive
==> ==> ==> 54-3) Installation plexdrive + rclone vfs | menu_install_vfs_plexdrive
Le premier chiffre est l'id du menu, le second son ordre.
Première étape, repérer l'id du parent grace à la fonction debug_menu (voir ci-dessus)
Entrer en sql
sqlite3 menu
Puis
insert into menu (texte,parent_id,ordre,action) values ('<nom menu>',<parent_id>,<ordre>,'<fonction>');
Avec
- nom menu: le nom qui sera affiché. Si le nom contient des apostrophes, il faut les doubler. Exemple : ajout d''application
- parent_id: l'id du parent (si menu racine, il faut mettre NULL)
- ordre: ordre d'affichage dans le menu
- fonction (optionnel): nom de la fonction qui sera exécutée quand on choisira ce menu. Si pas de fonction, mettre NULL
La fonction peut être soit un script, soit une fonction définie dans functions.sh ou menu.sh
Une fois fait, ne pas oublier de commiter le fichier menu pour le pousser sur le git.
update menu set texte='<nom menu>',parent_id=<parent_id>,ordre=<ordre>,action='<fonction>' where id = <id>;
Une fois fait, ne pas oublier de commiter le fichier menu pour le pousser sur le git.
Ce script est proposé à des fins d'expérimentation uniquement, le téléchargement d’oeuvre copyrightées est illégal. Merci de vous conformer à la législation en vigueur en fonction de vos pays respectifs en faisant vos tests sur des fichiers libres de droits