Adafruit added

This commit is contained in:
2020-06-11 17:54:10 +02:00
parent f98164f8e6
commit d2a2c43386
9 changed files with 497 additions and 9 deletions

171
start
View File

@ -108,7 +108,7 @@ function jhpPrintGPG() {
function jhpPrintReg() {
diaBox "Insert Passport" "Please insert passport (First page, name, planet, date) into the printer."
cd jhp
./JunghackerPass "$FNAME" "$SNAME" "$PLANET"
./reg "$FNAME" "$SNAME" "$PLANET"
cd ..
return 0
}
@ -227,14 +227,175 @@ function jhpmenu() {
unset FIELD
}
function adaAskForField() {
text="$1: Please choose a free field on the passport.\n
------------------\n
| VISAS || VISAS |\n
==================\n
| 0 | 1 || 4 | 5 |\n
|---|---||---|---|\n
| 2 | 3 || 6 | 7 |\n
==================\n
"
askStr 2 "Select a field" "$text" "" 18
if [ $? -eq 1 ]; then
return 1
fi
FIELD=$(cat $TMP)
if ! [[ "$FIELD" =~ ^[0-9]+$ ]] || [ -z "$FIELD" ] || [ $FIELD -lt 0 ] || [ $FIELD -gt 7 ]; then
adaAskForField
else
return 0
fi
}
function adaPrintGPG() {
adaAskForField "GPG fingerprint"
if [ $? -eq 0 ]; then
diaBox "Insert Passport" "Please insert passport (Visas) into the printer."
cd adafruit
./gpgkey $FIELD $FP
cd ..
return 0
else
return 1
fi
}
function adaPrintReg() {
diaBox "Insert Passport" "Please insert passport (First page, name, place) into the printer."
cd adafruit
./reg "$FNAME" "$SNAME" "$PLANET"
cd ..
return 0
}
function adaIROStamp() {
adaAskForField "IRO stamp"
if [ $? -eq 0 ]; then
diaBox "Insert Passport" "Please insert passport (Visas) into the printer."
cd adafruit
./iro $FIELD
cd ..
return 0
else
return 1
fi
}
function adaGPG() {
askStr 49 "GPG Fingerprint" "Enter GPG fingerprint WITH SPACES. E.g.:\n 1234 5678 9ABC DEF0 1234 5678 9ABC DEF0 1234 5678"
if [ $? -eq 0 ]; then
FP=$(cat $TMP)
rm $TMP
if ! [[ $FP =~ ^([[:xdigit:]]{4} ){9}[[:xdigit:]]{4}$ ]]; then
diaBox "GPG Fingerprint" "This does not match the RegEx of a GPG fingerprint.\nPlease type in the whole fingerprint."
adaGPG
fi
FP=$(echo "$FP" | tr [a-f] [A-F])
else
return 1
fi
if [ "$1" == "no-confirm" ]; then
return 0
else
confirm "GPG Fingerprint" " GPG:\n $FP"
return $?
fi
}
function adaReg() {
askStr 25 "Forename/Nickname" "Enter forename/nickname"
if [ $? -eq 1 ]; then
return 1
fi
FNAME=$(cat $TMP)
askStr 25 "Surename" "Enter surename"
if [ $? -eq 1 ]; then
return 1
fi
SNAME=$(cat $TMP)
askStr 25 "Place" "Enter place" "Earth, Chaospott"
if [ $? -eq 1 ]; then
return 1
fi
PLANET=$(cat $TMP)
confirm=" Forename: $FNAME\n Surename: $SNAME\n Place: $PLANET"
ynBox "IRO Stamp" "Does this being want to have a IRO stamp?"
if [ $? -eq 0 ]; then
STAMP=true
else
STAMP=false
fi
ynBox "GPG" "Does the being have a GPG key to register?"
if [ $? -eq 0 ]; then
adaGPG no-confirm
if [ $? -eq 0 ]; then
confirm="$confirm\n GPG:\n $FP"
fi
fi
confirm "Everything" "$confirm"
return $?
}
function adamenu() {
dialog --backtitle "$BT" \
--menu "Select ID type:" 14 40 3 \
1 "Registration" \
2 "IRO Stamp" \
3 "GPG" \
9 "Back" 2> $TMP
choice=$(cat $TMP)
case $choice in
1) adaReg
if [ $? -eq 0 ]; then
adaPrintReg
if [ "$STAMP" == "true" ]; then
adaIROStamp
fi
if [ -n "$FP" ]; then
adaPrintGPG
fi
fi
;;
2) adaIROStamp
;;
3) adaGPG
if [ $? -eq 0 ]; then
adaPrintGPG
fi
;;
esac
unset FNAME
unset SNAME
unset PLANET
unset FP
unset FIELD
}
while [ true ]; do
dialog --backtitle "$BT" \
--menu "Select ID type:" 10 40 3 \
1 "Junghackerpass" \
2 "Usual" 2> $TMP
2 "New Adafruit passport" \
9 "Usual" 2> $TMP
if [ $? -eq 1 ]; then
if [ $? -eq 9 ]; then
break
fi
@ -244,7 +405,9 @@ while [ true ]; do
case $TYPE in
1) jhpmenu
;;
2) exit 0
2) adamenu
;;
9) exit 0
;;
esac
done