123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- #!/bin/bash
- #### Matteo Savatteri, 29-09-2018
- # Semplice script per registrare su
- # file e analizzare i turni di lavoro
- # dei 150
- ### Preambolo
- # Set percorso assoluto della directory
- # di shiftctl
- # (il percorso della repo di git)
- SHIFTCTL_DIR="/usr/local/src/lcm-unimi/shiftctl"
- # Source delle configurazione
- . "$SHIFTCTL_DIR/conf"
- ## Set variabili globali
- VERSION="2.0"
- RUNNER="$(whoami)"
- MODE="record"
- ## source definizione funzioni
- . "$SHIFTCTL_DIR/functions"
- ### Execution
- ## Init
- # Parsa la linea di comando
- while getopts ":hvtr" flag
- do
- case "$flag" in
- h)
- print_banner
- print_usage
- exit 0
- ;;
- v)
- print_version
- exit 0
- ;;
- t)
- MODE=grand_total
- break
- ;;
- r)
- MODE=rotate
- break
- ;;
- ?)
- print_banner
- print_usage
- echoerr "Illegal option: -$OPTARG. Please RTFM!"
- esac
- done
- # Presentati
- print_banner
- # Esegui i check
- if [ "$MODE" == "rotate" ]
- then
- check_root
- else
- check_user
- smartinit_dbfile
- fi
- ## Main
- # Seleziona la modalità corretta
- case "$MODE" in
- record)
- # Registra una nuova entry
- record
- ;;
- grand_total)
- # Produce il gran totale delle ore
- print_gtotal
- ;;
- rotate)
- # routa il file dei turni
- rotate_dbfile
- esac
- # Esci con grazia
- exit 0
|