private async Task ExecuteCallbackMessage(CallbackQuery callbackQuery, Telegram.Bot.TelegramBotClient botclient)
        {
            try
            {
                var    call           = callbackQuery.Data.Split('z', StringSplitOptions.RemoveEmptyEntries);
                int    stage          = int.Parse(call[0]);
                string callbackString = call[1];

                InlineImageGallery gallery = (InlineImageGallery)DBHelper.GetQuestion(stage);

                var command = new InlineImageGalleryCommand(gallery);

                await command.ExecuteQuery(callbackQuery, botclient);
            }
            catch (Exception ex)
            {
                Bot.MyLogger(ex.Message);
                Bot.MyLogger(ex.StackTrace);
            }
        }
 public InlineImageGalleryCommand(InlineImageGallery inline)
 {
     inlineImageGallery = inline;
 }
Esempio n. 3
0
        public static void ExcelToClass(string path)
        {
            FileInfo File = new FileInfo(path);

            using (ExcelPackage pck = new ExcelPackage(File))
            {
                var format = new ExcelTextFormat();
                format.Delimiter = '/';
                int            k  = pck.Workbook.Worksheets.Count;
                ExcelWorksheet ws = null;

                ws = pck.Workbook.Worksheets[1];
                bool flag = true;
                int  i    = 10;
                int  j    = 0;
                while (flag)
                {
                    string   tmp  = ws.Cells[i, 1].Value.ToString().Trim();
                    IMessage temp = null;
                    int      l    = i;
                    switch (ws.Cells[i, 2].Value.ToString().Trim())
                    {
                    case "0":
                    {
                        TextMessage text = new TextMessage();
                        text.Stage     = int.Parse(ws.Cells[i, 1].Value.ToString().Trim());
                        text.Message   = ws.Cells[i, 3].Value.ToString().Trim();
                        text.NextStage = int.Parse(ws.Cells[i, 5].Value.ToString().Trim());
                        temp           = text;
                        i++;
                        break;
                    }

                    case "1":
                    {
                        Question text = new Question();
                        int      p    = i;
                        text.Stage   = int.Parse(ws.Cells[i, 1].Value.ToString().Trim());
                        text.Message = ws.Cells[i, 3].Value.ToString().Trim();
                        while (ws.Cells[i, 1].Value.ToString().Trim() == tmp.Trim())
                        {
                            Answer ans = new Answer(ws.Cells[i, 4].Value.ToString().Trim(), int.Parse(ws.Cells[i, 5].Value.ToString().Trim()));
                            text.Answers.Add(ans);
                            i++;
                            if (ws.Cells[i, 1].Value == null)
                            {
                                break;
                            }
                        }
                        temp = text;
                        break;
                    }

                    case "2":
                    {
                        break;
                    }

                    case "3":
                    {
                        InlineImageGallery text = new InlineImageGallery();
                        int p = i;
                        text.Stage     = int.Parse(ws.Cells[i, 1].Value.ToString().Trim());
                        text.Message   = ws.Cells[i, 3].Value.ToString().Trim();
                        text.NextStage = int.Parse(ws.Cells[i, 5].Value.ToString().Trim());
                        while (ws.Cells[i, 1].Value.ToString().Trim() == tmp.Trim())
                        {
                            ImageGallery ans = new ImageGallery(text.Stage, "https://myvelde.com/data/bot/" + ws.Cells[i, 6].Value.ToString().Trim(), ws.Cells[i, 4].Value.ToString().Trim());
                            text.ImageGalleries.Add(ans);
                            i++;
                            if (ws.Cells[i, 1].Value == null)
                            {
                                break;
                            }
                        }
                        temp = text;

                        break;
                    }

                    case "4":
                    {
                        PhoneMessage text = new PhoneMessage();
                        text.Stage     = int.Parse(ws.Cells[i, 1].Value.ToString().Trim());
                        text.Message   = ws.Cells[i, 3].Value.ToString().Trim();
                        text.NextStage = int.Parse(ws.Cells[i, 5].Value.ToString().Trim());
                        temp           = text;
                        i++;
                        break;
                    }

                    case "5":
                    {
                        QuestionKitchen text = new QuestionKitchen();
                        int             p    = i;
                        text.Stage   = int.Parse(ws.Cells[i, 1].Value.ToString().Trim());
                        text.Message = ws.Cells[i, 3].Value.ToString().Trim();
                        while (ws.Cells[i, 1].Value.ToString().Trim() == tmp.Trim())
                        {
                            Answer ans = new Answer(ws.Cells[i, 4].Value.ToString().Trim(), int.Parse(ws.Cells[i, 5].Value.ToString().Trim()));
                            text.Answers.Add(ans);
                            i++;
                            if (ws.Cells[i, 1].Value == null)
                            {
                                break;
                            }
                        }
                        temp = text;
                        break;
                    }
                    }
                    if (flag != false)
                    {
                        messages.Add(temp);
                        // tmp = ws.Cells[i, 1].Value.ToString();
                    }

                    if (ws.Cells[i, 1].Value == null)
                    {
                        flag = false;
                    }
                }
            }
        }