public InlineKeyboardButton Create(CallbackQueryActionType backActionCallBack, string callbackData = null) { var callbackDataText = string.IsNullOrWhiteSpace(callbackData) ? CallbackDataFormatter.ToCallBackData(backActionCallBack) : $"{CallbackDataFormatter.ToCallBackData(backActionCallBack)};{callbackData}"; return(new InlineKeyboardButton { Text = _currentUserLocalizationService["back"], CallbackData = callbackDataText }); }
internal ISpecificCallbackQueryHandler GetHandler(CallbackQueryActionType actionType) { switch (actionType) { case CallbackQueryActionType.AddGroup: return(_serviceProvider.GetService <AddGroupCallbackHandler>()); case CallbackQueryActionType.ShowTimetableFacultyGroupViewMenu: return(_serviceProvider.GetService <ShowTimetableFacultyGroupViewMenuCallbackHandler>()); case CallbackQueryActionType.ShowTimetableFacultyGroupsMenu: return(_serviceProvider.GetService <ShowTimetableFacultyGroupsMenuCallbackHandler>()); case CallbackQueryActionType.TimetableFacultyGroupsMenuGroupSelected: return(_serviceProvider.GetService <TimetableFacultyGroupsMenuGroupSelectedHandler>()); case CallbackQueryActionType.OpenRemoveGroupsMenu: return(_serviceProvider.GetService <OpenRemoveGroupsMenuCallbackHandler>()); case CallbackQueryActionType.RemoveGroup: return(_serviceProvider.GetService <RemoveGroupCallbackHandler>()); case CallbackQueryActionType.ShowScheduleMenu: break; case CallbackQueryActionType.ShowNotificationMenuForGroup: break; case CallbackQueryActionType.SubscribeToScheduleNotification: break; case CallbackQueryActionType.UnsubscribeFromScheduleNotification: break; case CallbackQueryActionType.ShowNotificationsMenu: break; } throw new NotImplementedException(); }
internal static string ToCallBackData(CallbackQueryActionType actionType, Group facultyGroup) { return($"{(int)actionType}{S}{ToCallBackData(facultyGroup)}"); }
internal static string ToCallBackData(CallbackQueryActionType actionType) { return($"{(int)actionType}"); }