private void CompleteListCreation(Message message, CheckList checklist) { if (checklist == null) { bot.SendTextMessageAsync(message.Chat.Id, "There is no list yet. Type /start to begin checklist creation"); return; } if (checklist.CheckListItems.Count < 1) { bot.SendTextMessageAsync(message.Chat.Id, "I can't create empty list. Add at least one item."); return; } _checkListService.CompleteCheckList(checklist); bot.SendTextMessageAsync(message.Chat.Id, "Your list is created! Now send it.", replyMarkup: ResponseMessageHelper.BuildCreationCompleteMarkup(checklist.Name)); return; }
private InlineQueryResult[] BuildInlineQueryResponse(IEnumerable <CheckList> checkLists) { var checklist = new WorkCheckList(); var resultedList = checkLists.Select(item => { var workCheckList = _workCheckListService.ChooseWorkCheckList(item); return(new InlineQueryResultArticle { Id = item.Id.ToString() + ":" + workCheckList.Id, Title = item.Name, ReplyMarkup = ResponseMessageHelper.BuildMarkup(workCheckList), InputMessageContent = new InputTextMessageContent() { MessageText = item.Name, } }); }); return(resultedList.ToArray()); }
public InlineKeyboardMarkup BuildWorkListWithMarkup(CheckList checklist, out WorkCheckList workCheckList) { workCheckList = _workCheckListService.CreateWorkCheckList(checklist); return(ResponseMessageHelper.BuildMarkup(workCheckList)); }
private void HandleCallbackQuery(CallbackQuery clq) { var parsedQuery = clq.Data.Split(':'); bot.AnswerCallbackQueryAsync(clq.Id, $"{parsedQuery[1]} selected"); var workListItemId = int.Parse(parsedQuery[0]); if (clq.Message != null) { var workCheckList = _workCheckListService.GetWorkCheckList(clq.Message.MessageId); var changedWorkList = _workCheckListService.UpdateWorkCheckList(workCheckList, workListItemId); var success = bot.EditMessageReplyMarkupAsync(clq.Message.Chat.Id, clq.Message.MessageId, replyMarkup: ResponseMessageHelper.BuildMarkup(changedWorkList)); } else { var workCheckList = _workCheckListService.GetWorkCheckList(clq.InlineMessageId); var changedWorkList = _workCheckListService.UpdateWorkCheckList(workCheckList, workListItemId); var success = bot.EditInlineMessageReplyMarkupAsync(clq.InlineMessageId, ResponseMessageHelper.BuildMarkup(changedWorkList)); } }