diff --git a/cli.py b/cli.py index 7bc81ad..967692f 100644 --- a/cli.py +++ b/cli.py @@ -18,7 +18,8 @@ from db import Db from config import DB_REQUEST, CLI_MSG_DISCLAIMER, CLI_MSG_ASK_IDX, \ CLI_MSG_ASK_ERR, CLI_MSG_QUIT, CLI_MSG_CHOOSEN_CAT, CLI_MSG_PROD, \ CLI_MSG_SUBST, CLI_MSG_NO_SUBST, CLI_MSG_CAT, CLI_MSG_CHOOSEN_PROD, \ - CLI_MSG_DETAILLED_SUB, CLI_MSG_CHOOSEN_SUBST + CLI_MSG_DETAILLED_SUB, CLI_MSG_CHOOSEN_SUBST, CLI_ITEM_MAX_LEN, \ + CLI_ITEM_LIST cli_end_msg = str() product_asked = {'valid_item': False} @@ -95,14 +96,21 @@ def get_data_list(db_obj, sql): for idx, val in enumerate(db_obj.result)] # Hacky results-split for rendering in 2 columns - res_even = [(idx, val['name'], val['option'], val['id']) - for idx, val in enumerate(db_obj.result) if idx % 2 == 0] - res_uneven = [(idx, val['name'], val['option'], val['id']) - for idx, val in enumerate(db_obj.result) if idx % 2 != 0] + res_even = [( + idx, + val['name'][:CLI_ITEM_MAX_LEN].ljust(CLI_ITEM_MAX_LEN), + val['option'], val['id'] + ) for idx, val in enumerate(db_obj.result) if idx % 2 == 0] + res_uneven = [( + idx, + val['name'][:CLI_ITEM_MAX_LEN], + val['option'], + val['id'] + ) for idx, val in enumerate(db_obj.result) if idx % 2 != 0] # category list results_txt = "" for num, unused in enumerate(res_uneven): - results_txt += "{} : {} \t\t {} : {}\n".format( + results_txt += CLI_ITEM_LIST.format( res_even[num][0], res_even[num][1], res_uneven[num][0], diff --git a/config.py b/config.py index b3860cd..d83bd07 100644 --- a/config.py +++ b/config.py @@ -34,6 +34,8 @@ DB_REQUEST = { 'save_substitute': "UPDATE product SET substitute_id={} WHERE id={}", } +CLI_ITEM_MAX_LEN = 30 +CLI_ITEM_LIST = "{} : {} \t {} : {}\n" CLI_MSG_DISCLAIMER = "# # # Bienvenu sur le terminal # # #\n\n" CLI_MSG_CAT = "Catégories disponibles :\n" CLI_MSG_PROD = "Produits disponibles :\n" @@ -51,7 +53,6 @@ CLI_MSG_DETAILLED_SUB = "Nutriscore [ {nutri} ]\tCode [ {code} ]"\ CLI_MSG_NO_SUBST = "Pas de substitut trouvé pour le produit «{}» (nutriscore : «{}»)" CLI_MSG_ASK_ERR = "\nSaisie incorrecte : «{}»" CLI_MSG_QUIT = "\nAu revoir!" -#CLI_ITEM_MAX_LEN = 15 # DATABASE DB_CONFIG = {