#!/usr/bin/env python3 import typing as _typing import sys as _sys import os as _os import json as _json import argparse as _argparse from log import * from conf import * from backend import * def main(): ## args argument_parser = _argparse.ArgumentParser( prog = "mondvogel", description = "CLI-Client-Programm für Espe", formatter_class = _argparse.ArgumentDefaultsHelpFormatter ) argument_parser.add_argument( type = str, dest = "action", choices = [ "conf-schema", "conf-expose", "member-list", "member-read", "member-delete", "invite-single", "invite-mass", ], metavar = "", help = "auszuführende Aktion; Optionen: 'conf-schema' : JSON-Schema der Konfiguration ausgeben | 'conf-expose' : vervollständigte Konfiguration ausgegeben | 'member-list' : Liste der Mitglieder ausgeben | 'member-read' : Daten eines Mitglieds ausgeben | 'member-delete' : einer Mitglieder-Datensatz löschen | 'invite-single' : einzelne Einladung erstellen | 'invite-mass' : Massen-Einladungen erstellen", ) argument_parser.add_argument( "-c", "--conf-path", type = str, dest = "conf_path", default = _os.path.join(_os.path.expanduser("~"), ".mondvogel", "conf.json"), metavar = "", help = "Pfad zur Konfigurations-Datei", ) argument_parser.add_argument( "-d", "--data-path", type = str, dest = "data_path", default = None, metavar = "", help = "Pfad zu Daten für Massen-Einladung", ) argument_parser.add_argument( "-i", "--id", type = int, dest = "id", default = None, metavar = "", help = "ID des Mitglieds", ) argument_parser.add_argument( "-n", "--name", type = str, dest = "name", default = None, metavar = "", help = "Anmelde-Name des Mitglieds; Leerzeichen sind durch '_' zu ersetzen", ) argument_parser.add_argument( "-N", "--fixed-name", dest = "fixed_name", action = 'store_true', help = "ob der Anmelde-Name einer Einladung geändert werden kann", ) argument_parser.add_argument( "-l", "--label", type = str, dest = "label", default = None, metavar = "