protected override Response Run(CallbackQuery message, Account account, Dictionary <string, string> values) { var boards = account.Controller.GetBoards(account); return(new Response().EditTextMessage(account, message.Message.MessageId, $"You have {boards.Length} boards.\nChoose one board to get more details:", Keyboards.BoardsKeyboard(boards))); }
public override Response Execute(Message message, Client.Client client, Account account) { var boards = account.Controller.GetBoards(account); return(new Response().TextMessage(account, $"You have {boards.Length} boards.\nChoose one board to get more details:", Keyboards.BoardsKeyboard(boards))); }
public override Response Execute(Message message, Client.Client client, Account account) { if (message.Text.Length < "/start ".Length) { var boards = account.Controller.GetBoards(account); return(boards.Length == 0 ? new Response().TextMessage(account.ChatId, "Hi! You have no boards.\nUse buttons to create new or ask your manager to send you invite link.", Keyboards.CreateBoards(account)) : new Response().TextMessage(account.ChatId, "Here is your boards:", Keyboards.BoardsKeyboard(boards))); } if (message.Text.StartsWith("/start")) { var param = message.Text.Substring(7); var base64EncodedBytes = Convert.FromBase64String(param); param = Encoding.UTF8.GetString(base64EncodedBytes); var p = param.Split('*'); var board = account.Controller.GetBoard(int.Parse(p[0])); var accessLevel = (AccessLevel)int.Parse(p[2]); account.Controller.AddWorkerToBoard(new WorkerToBoard() { Worker = account, Board = board, AccessLevel = accessLevel }); return(new Response().TextMessage(account, $"You were added to {board.Name}")); } return(new Response().TextMessage(account, "hi!")); }