Пример #1
0
 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;
 }
Пример #2
0
        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());
        }
Пример #3
0
 public InlineKeyboardMarkup BuildWorkListWithMarkup(CheckList checklist, out WorkCheckList workCheckList)
 {
     workCheckList = _workCheckListService.CreateWorkCheckList(checklist);
     return(ResponseMessageHelper.BuildMarkup(workCheckList));
 }
Пример #4
0
        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));
            }
        }