From c0ce67d2ae504791bff40f014bf6a5ab0fbefaf4 Mon Sep 17 00:00:00 2001 From: Gandalf Date: Sat, 20 Mar 2021 00:13:39 +0100 Subject: [PATCH] Deckblatt.sh Ungetestet. I'm trying to combine the fact that lack of sleep equals some amount of blood alcohol and https://xkcd.com/323/ --- Adressen/address.sh | 6 ++--- Adressen/deckblatt.sh | 51 +++++++++++++++++++++++++++++++++++++++++++ README.md | 29 +++--------------------- 3 files changed, 57 insertions(+), 29 deletions(-) create mode 100755 Adressen/deckblatt.sh diff --git a/Adressen/address.sh b/Adressen/address.sh index a78a4cb..8cda6d0 100755 --- a/Adressen/address.sh +++ b/Adressen/address.sh @@ -70,14 +70,14 @@ esac if [ $O = true ] then LOC=$(head -1 $BASEPATH/Adressen.csv | tr ',' '\n' | nl |grep -w "$COL" | tr -d " " | awk -F " " '{print $1}') #calculating position of requested Col - grep "$H" $BASEPATH/Adressen.csv | head -n 1 | cut -d "," -f$LOC | sed 's/"//g' + grep "^$H," $BASEPATH/Adressen.csv | head -n 1 | cut -d "," -f$LOC | sed 's/"//g' #Returning requested column, making sure to return only one result (even though redundant results shouldn't be possible) exit 0 fi if [ $F = "-e" ] then - NULL=$(grep "^$H" $BASEPATH/Adressen.csv) + NULL=$(grep "^$H," $BASEPATH/Adressen.csv) ISH=$? #exit code. Der if-Block wird ausgeführt, wenn nichts gefunden wurde. (ISH steht für is handle) if [ $ISH -eq 1 ] then @@ -117,7 +117,7 @@ fi if [ $F = "-g" ] then - NULL=$(grep "^$H" $BASEPATH/Adressen.csv) + NULL=$(grep "^$H," $BASEPATH/Adressen.csv) ISH=$? #exit code. Der if-Block wird ausgeführt, wenn etwas gefunden wurde. (ISH steht für is handle) if [ $ISH -ne 1 ] then diff --git a/Adressen/deckblatt.sh b/Adressen/deckblatt.sh new file mode 100755 index 0000000..16e661d --- /dev/null +++ b/Adressen/deckblatt.sh @@ -0,0 +1,51 @@ +#! /bin/bash + +EDIT=false +STA= +GEGSAVE= +NEW= +BASEPATH=$(dirname $(realpath $0)) + +if [ -n $1 ] && [ "$1" = "edit" ] +then + EDIT=true +fi + +if [ -e DECKBLATT.csv ] +then + # Formatiert anzeigen + : +else + # Neu anlegen + read -p "Kein Deckblatt im Verzeichnis. Lege neues Deckblatt an? " NEW + if [[ ! $NEW =~ [yYjJ] ]]; then exit 0; fi + read -p "Mein Aktenzeichen: " MYAZ + until [[ $GEG =~ AG|LG|OLG|BGH|SG|VG|OVG|BVG|BVerfG|Pol|StA ]] + do + read -p "aktuelle Gegenseite? (AG/LG/OLG/SG/VG/OVG/BVG/BVerfG/Pol/StA) " GEG + done + read -p "Deren Aktenzeichen: " AZ + until [ $GEGHANDLE ] + do + read -p "Das eindeutige Kürzel für die Gegenseite: " GEGHANDLE + GEGNAME=$($BASEPATH/address.sh -n $GEGHANDLE) + if [ $GEGNAME ] + then + read -p "$GEGNAME als Gegenseite bestätigen? (y/n) " GEGSAVE + if [[ ! $GEGSAVE =~ [yYjJ] ]]; then GEGSAVE= ; fi + else + read -p "$GEGHANDLE nicht gefunden. Neu anlegen? (y/n) " GEGSAVE + if [[ $GEGSAVE =~ [yYjJ] ]]; then $BASEPATH/address.sh -g $GEGHANDLE ; else GEGSAVE= ; fi + fi + done + if [[ $GEG =~ AG|LG|OLG|BGH ]] + then + read -p "Gibt es ein Aktenzeichen der StA? Falls ja, bitte eingeben. Falls nein, einfach Enter drücken: " STAZ + fi + if [ $STAZ ] + then + STA="StA,,$STAZ,\n" + fi + echo -e "INH,handle,az,stand\nME,,$MYAZ,\n${STA}$GEG,$GEGHANDLE,$AZ,+" +fi + diff --git a/README.md b/README.md index 2899fc0..d87ab04 100644 --- a/README.md +++ b/README.md @@ -41,17 +41,6 @@ handle,Name,Anrede,Adresse,FaxNr,TelNr,Closing,parent ``` Wo `handle` und `parent` datenbankinterne Schlüssel sind, `parent` enthält das `handle` der nächsthöheren Hierarchieebene: Bei Personen die zugehörige Behörde/Organisation, bei Gerichten das zuständige Rechtsmittelgericht. -Eine durch `wiedervorlagen.sh` per cron@boot erstellte Übersicht der nächsten Termine: -``` -Wiedervorlagen.md -================= -Datum | Typ | Gegenseite/Gericht | deren Az | mein Az | PATH ------------------------------------------------------------- -13.12.21 | harte Frist | AG Düren | 13 Js 43/21 | Bullshit/21 | ~/Dokumente/Strafrecht/Bullshit -15.12.21 | weiche Frist | VG Köln | 5 K 161/20 | Blubb/20 | ~/Dokumente/Verwaltungsklagen/Blubb -24.12.21 | Wiedervorlage | IM NRW | 352351354-18 | Schleierfahndung | ~/Dokumente/Recherche/Hambi -6.1.22 | Hauptverhandlung| AG Düren | 13 Js 43/21 | Bullshit/21 | ~/Dokumente/Strafrecht/Bullshit -``` In jedem Aktenordner zwei Dateien ``` @@ -61,20 +50,8 @@ INH,handle,aktenzeichen,stand ``` Wo `INH ∈ {AG,LG,StA,OLG,BVerfG,VG,OVG,GEG,SG}` und `stand='+'` in der Zeile des aktuellen Hauptbrieffeindes. -``` -Wiedervorlagen.csv -================== -Datum,Typ,rec,erledigt -``` -Diese enthält die Daten, die von `wiedervorlagen.sh` in die zentrale `Wiedervorlagen.md` kompiliert werden. -Im Internformat möglicherweise unsortiert und möglicherweise alte Termine. Evtl. werden auch Wiedervorlagen, die keine Fristsachen sind, -nicht im Vorraus in die Übersicht einsortiert, mal schauen. ### Skripte -#### `wiedervorlagen.sh` -Sammelt, wie schon erwähnt, bei jedem Rechnerneustart (`cron@boot`) aus der gesamten Dateistruktur alle Wiedervorlagen zusammen und baut eine -Markdown-formatierte Übersicht. Oder ein anderes Format? An sich könnte er das auch per `LaTeX` oder als `svg` in das Hintergrundbild schummeln… -Holt sich die Aktenzeichen aus `DECKBLATT.csv` #### `address.sh` Führt durch die Eintragung in die Adressdatenbank oder gibt einzelne Werte aus selbiger zurück. (Zur Verwendung durch `sipgate-cli` zB) ``` @@ -92,13 +69,13 @@ Verfügbare Flags: * `-l`: Auflisten aller `handle`s und Namen. Dies ist die einzige Option, die kein angegebenes `` verlangt. Wird `` nicht angegeben, soll nach der aktuell zuständigen Stelle in einer `DECKBLATT.csv` gesucht werden. Das ist aber Zukunftsmusik, die Angabe von `` wird, außer bei `-l`, immer verlangt. -#### `init.sh` +#### `deckblatt.sh` Führt durch die Anlage eines Deckblattes ~~und stellt sicher, dass die korrekte Gerichtshierarchie eingetragen ist~~. +Falls schon ein Deckblatt existiert, soll dieses angezeigt werden. +Außerdem soll damit ein existierendes Deckblatt editiert werden können: Zeilen hinzufügen oder Zuständigkeit verschieben. #### `rechtsmittel.sh` Tut, in einer Akte aufgerufen, zwei Dinge: 1. ein Fax unter Verwendung der LaTeX-Templates `\einspruch` bzw. `\rechtsmittel` anlegen, * zur Kontrolle anzeigen und * wegfaxen 2. das `DECKBLATT.csv` aktualisieren. Wenn nötig (per `address.sh`?) die Daten des Rechtsmittelgerichts erfragen. -#### `erinnermich.sh` -Füllt die Datei `Wiedervorlagen.csv` mit Nutzieingaben.