diff --git a/otime/main.py b/otime/main.py new file mode 100644 index 0000000..2785b8c --- /dev/null +++ b/otime/main.py @@ -0,0 +1,36 @@ +import argparse +import file_io +import iof_xml + +# Main entrypoint for now. Cli with two options; init will make the files needed and run will start the program from the specified directory +def main(): + parser = argparse.ArgumentParser(description='Otime very alpha version 😁') + subparsers = parser.add_subparsers(dest='command') + parser_init = subparsers.add_parser('init', help='INIT') + parser_init.add_argument('--entries', required=True, dest='entries_file', action='store', default='./', + help='The xml file with entries') + parser_init.add_argument('--courses', required=True, dest='courses_file', action='store', default='./', + help='The xml with courses') + parser_init.add_argument('--dir', required=False, dest='dir', action='store', default='./', + + help='Specify a directort, if not set the files are created in the current directory') + + args = parser.parse_args() + if args.command == 'init': + init_dir(args.dir, args.entries_file, args.courses_file) + +def init_dir(project_dir, entries_xml_file, courses_xml_file): + # Lager mappe med en config fil, en csv fil med løpere og en fil med mtr data + csv_db_path = project_dir + '/runners.csv' + config_path = project_dir + '/config.yaml' + mtr_path = project_dir + 'mtr.yaml' + + event = iof_xml.event_from_xml_entries(entries_xml_file) + event.courses = iof_xml.courses_from_xml(courses_xml_file) + + file_io.write_runners_csv(event, csv_db_path) + file_io.write_config(event, config_path) + file_io.write_card_dumps(event, mtr_path) + +if __name__ == '__main__': + main() \ No newline at end of file