New feature: h displays help

This commit is contained in:
2023-11-08 18:43:10 +01:00
parent ee23e0f0e9
commit 7f9e806c23
2 changed files with 24 additions and 11 deletions

View File

@@ -18,8 +18,8 @@ At the moment, an alpha version is undertaken, with these features:
- Set an active user (`a number_of_user`) - Set an active user (`a number_of_user`)
- Show the pieces stored in the database (`s`) - Show the pieces stored in the database (`s`)
- Mark pieces as mastered for the active user (`m number_of_work`) - Mark pieces as mastered for the active user (`m number_of_work`)
- Show pieces by composer (`sc` shows composers, `c number_of_composer` shows pieces) - Show pieces by composer (`c` shows composers, `s number_of_composer` shows pieces)
- Show movements through pieces (`sp piece_number`) - Show movements through works (`sw work_number`)
- Mark movement as mastered for active user (`m number_of_work number_of_movement`) - Mark movement as mastered for active user (`m number_of_work number_of_movement`)
- (planned) Show possible commands (`h`) - (planned) Show possible commands (`h`)
- (planned) Show mastered works/movements for activated user - (planned) Show mastered works/movements for activated user

View File

@@ -6,15 +6,15 @@ class Session:
self.user = -1 self.user = -1
self.db_agent = db_agent self.db_agent = db_agent
self.resultstring = 'no results yet' self.resultstring = 'no results yet'
self.commands = {'a': (self.set_user, ''), self.commands = {'a': (self.set_user, 'Set an active user\n Usage: a number_of_user'),
'c': (self.show_composers, ''), 'c': (self.show_composers, 'Shows composers'),
'm': (self.mark_work_as_mastered, ''), 'h': (self.show_help, 'Displays this help document'),
'n': (self.create_new_user, ''), 'm': (self.mark_work_as_mastered, 'Marks work or movement as mastered for the active user\n Usage: m number_of_work, m number_of_work number_of_movement'),
's': (self.show_works, ''), 'n': (self.create_new_user, 'Creates new user\n Usage: n firstname name'),
'sc': (self.show_works, ''), 's': (self.show_works, 'Show the works stored in the database\n Usage: s, s number_of_composer'),
'sp': (self.show_movements, ''), 'sw': (self.show_movements, 'Show movements of a work\n Usage: sw work_number'),
'su': (self.show_users, ''), 'su': (self.show_users, 'Show all users'),
'q': (self.quit, '') 'q': (self.quit, 'Quits the program')
} }
def set_user(self, arguments): def set_user(self, arguments):
@@ -67,6 +67,19 @@ class Session:
fun_resultstring += f'{item[0]}: {item[2]}, {item[1]}\n' fun_resultstring += f'{item[0]}: {item[2]}, {item[1]}\n'
return fun_resultstring return fun_resultstring
def show_help(self, arguments):
fun_resultstring = ''
if len(arguments) > 0:
qu_com = arguments[0]
if qu_com in self.commands:
fun_resultstring += f'{qu_com}: {self.commands[qu_com][1]}'
else:
fun_resultstring += f'Command {qu_com} not known, for help press h'
else:
for key, value in self.commands.items():
fun_resultstring += f'{key}: {value[1]}\n'
return fun_resultstring
def show_movements(self, arguments): def show_movements(self, arguments):
work_id = arguments[0] work_id = arguments[0]
work = work_under_id(work_id, self.db_agent) work = work_under_id(work_id, self.db_agent)