kun

un outil de sondage - retour accueil

git clone git://bebou.netlib.re/kun
Log | Files | Refs | README |

commit 4fd824bae2f574032d46447e7de115e4d573dc44
Auterice: Arthur Pons <arthur.pons@unistra.fr>
Date:   Wed, 18 Sep 2024 15:00:10 +0200

Première version vaguement fonctionnelle

Idée :

Peut-être que la gestion des ids, devoir copier/coller etc est un peu
chiant ? Pourrait être réglé par le fait de pouvoir fournir les ids en
argument pour peu que forcecommand de ssh permette d'ajouter des
arguments à la commande forcée.

Identifier la personne qui répond

Diffstat:
AREADME | 1+
Akun | 74++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 75 insertions(+), 0 deletions(-)

diff --git a/README b/README @@ -0,0 +1 @@ +Kun en TUI via SSH pour présentation aux journées de l'eco-conception diff --git a/kun b/kun @@ -0,0 +1,74 @@ +#! /bin/sh + +create() { + id=$(mktemp -d /tmp/kun.XXXXX) + nano $id/question + cat $id/question +} + +answer() { + read -p "id du sondage : " id + [ ! -d "/tmp/kun.$id" ] && { echo "Sondage n'existe pas";return; } + c=$(<<-. fzy + ajouter une réponse + modifier une réponse + . + ) + case $c in + ("ajouter une réponse") + repfile=$(mktemp /tmp/kun.$id/XXXXX) + < /tmp/kun.$id/question fzy -m > $repfile + idrep=$(basename $repfile) + echo "id de la réponse : $idrep";; + ("modifier une réponse") + read -p "id de la réponse : " idrep + < /tmp/kun.$id/question fzy -m > /tmp/kun.$id/$idrep ;; + esac +} + +see() { + read -p "id du sondage : " id + [ ! -d "/tmp/kun.$id" ] && { echo "Sondage n'existe pas";return; } + find /tmp/kun.$id -type f -not -name question | + xargs cat | + sort | + uniq -c | + sort -rn +} + +deletequestion() { + read -p "id du sondage : " id + [ ! -d "/tmp/kun.$id" ] && { echo "Sondage n'existe pas";return; } + rm -rf /tmp/kun.$id +} + +deleteanswer() { + read -p "id du sondage : " id + [ ! -d "/tmp/kun.$id" ] && { echo "Sondage n'existe pas";return; } + read -p "id de la réponse : " idrep + [ ! -f "/tmp/kun.$id" ] && { echo "Réponse n'existe pas";return; } + rm /tmp/kun.$id/$idrep +} + +while [ ! "$c" = "quitter" ];do + + c=$(<<-. fzy + créer un sondage + répondre à un sondage + consulter un sondage + supprimer un sondage + supprimer une réponse + quitter + . + ) + + case $c in + ("créer un sondage") create ;; + ("répondre à un sondage") answer ;; + ("consulter un sondage") see ;; + ("supprimer un sondage") deletequestion ;; + ("supprimer une réponse") deleteanswer ;; + esac + +done +