Esempio n. 1
0
        public static void Main()
        {
            Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
            IUserInterface userInterface = new UserCommands();

            while (true)
            {
                string commandLine = userInterface.ReadLine();
                if (commandLine == null)
                {
                    break;
                }

                if (!string.IsNullOrWhiteSpace(commandLine))
                {
                    try
                    {
                        if (StaticData.ApplicationData == null && !commandLine.Contains("SetupPark"))
                        {
                            Console.WriteLine("The vehicle park has not been set up.");
                        }
                        else
                        {
                            Commands.ExecuteCommand(commandLine, userInterface);
                        }
                    }
                    catch (Exception ex)
                    {
                        // PERFORMANCE: Using try/catch is usually causing a lot of performance issues, so i personally try to avoid it.
                        // Im leaving it here,as there could be some code that i havent saw.
                        Console.WriteLine(ex.Message);
                    }
                }
            }
        }
Esempio n. 2
0
        public void TestToGetAllUsers()
        {
            var aggregateStore   = new MongoDbAggregateStore(MongoConnectionString);
            var aggregates       = new Store.Aggregates(aggregateStore);
            var readModelStore   = new MongoDbUserReadModelStore(MongoConnectionString);
            var readModelHandler = new UserReadModelHandler(readModelStore);

            var commands = new UserCommands(aggregates);
            var queries  = new UserQueries(readModelStore);

            var context = new UserContext(commands, queries, readModelHandler);

            for (var i = 0; i < 500; i++)
            {
                context.Process(new CreateUser {
                    Id       = Guid.NewGuid(),
                    Name     = string.Format("User_{0}", i),
                    EMail    = string.Format("user_{0}@mail.com", i),
                    Password = (i * 123).ToString(CultureInfo.InvariantCulture)
                });
            }

            var users = context.ExecuteQuery <List <UserModel> >(new GetAllUsers());

            users.Count.ShouldBeEquivalentTo(500);
        }
Esempio n. 3
0
        static void Main(string[] args)
        {
            UserCommands  Yandex     = new UserCommands();
            List <Worker> newWorkers = new List <Worker>();

            Worker Kristina = Yandex.CreateWorker("Кристина");
            Worker Andrey   = Yandex.CreateWorker("Andrey");
            Worker Fredi    = Yandex.CreateWorker("Алексей");

            newWorkers.Add(Kristina);
            newWorkers.Add(Andrey);

            Yandex.GiveWorkeres("Алексей", newWorkers);

            using (WorkerContext db = new WorkerContext())
            {
                var workers = db.Workers;
                Console.WriteLine("Список объектов:");
                foreach (Worker u in workers)
                {
                    Console.WriteLine("{0}-{1}", u.Id, u.Name);
                }
            }

            Yandex.PrintWorkersHierarchy();
        }
Esempio n. 4
0
        public void TestToDeleteUser()
        {
            var aggregateStore   = new MongoDbAggregateStore(MongoConnectionString);
            var aggregates       = new Store.Aggregates(aggregateStore);
            var readModelStore   = new MongoDbUserReadModelStore(MongoConnectionString);
            var readModelHandler = new UserReadModelHandler(readModelStore);

            var commands = new UserCommands(aggregates);
            var queries  = new UserQueries(readModelStore);

            var context = new UserContext(commands, queries, readModelHandler);
            var id      = Guid.NewGuid();

            context.Process(new CreateUser {
                Id = id, Name = "Testuser", EMail = "*****@*****.**", Password = "******"
            });
            var user = context.ExecuteQuery <UserModel>(new GetUser {
                Id = id
            });

            user.Should().NotBeNull();

            context.Process(new DeleteUser {
                Id = id
            });
            user = context.ExecuteQuery <UserModel>(new GetUser {
                Id = id
            });
            user.Should().BeNull();
        }
Esempio n. 5
0
        public async Task EditCommandAsync(CommandViewModel viewModel)
        {
            switch (viewModel)
            {
            case UserCommandViewModel userCommandViewModel:
                var newCommand      = (Command)userCommandViewModel.Command.Clone();
                var dialogViewModel = new CommandSettingsViewModel(newCommand);
                var result          = await this.ShowDialogAsync(dialogViewModel);

                if (result != true)
                {
                    return;
                }

                foreach (var key in userCommandViewModel.Command.Keys)
                {
                    StorageService.Remove(key.Text);
                }
                foreach (var key in newCommand.Keys)
                {
                    StorageService[key.Text] = newCommand;
                }

                var index = UserCommands.IndexOf(userCommandViewModel);
                UserCommands.Remove(userCommandViewModel);
                UserCommands.Insert(index, new UserCommandViewModel(newCommand));

                break;

            default:
                throw new NotImplementedException();
            }
        }
Esempio n. 6
0
        public void TestToCreateAndChangeUserViaApi()
        {
            var aggregateStore   = new MongoDbAggregateStore(MongoConnectionString);
            var aggregates       = new Store.Aggregates(aggregateStore);
            var readModelStore   = new MongoDbUserReadModelStore(MongoConnectionString);
            var readModelHandler = new UserReadModelHandler(readModelStore);

            var commands = new UserCommands(aggregates);
            var queries  = new UserQueries(readModelStore);

            var context = new UserContext(commands, queries, readModelHandler);
            var uid     = Guid.NewGuid();

            context.Process(new CreateUser {
                Id = uid, Name = "Rüdiger", EMail = "rü[email protected]", Password = "******"
            });
            context.Process(new ChangeUser {
                Id = uid, Name = "Horst Horstmann", EMail = "*****@*****.**", Password = "******"
            });

            var user = context.ExecuteQuery <UserModel>(new GetUser {
                Id = uid
            });

            user.Name.ShouldBeEquivalentTo("Horst Horstmann");
            user.EMail.ShouldBeEquivalentTo("*****@*****.**");
            user.Password.ShouldBeEquivalentTo("abc");
        }
Esempio n. 7
0
 /// <summary>
 /// Initializes the bot object, connects, and runs the active loop.
 /// </summary>
 public void InitAndRun(string[] args)
 {
     DiscordBotBaseHelper.StartBotHandler(args, new DiscordBotConfig()
     {
         CommandPrefix = DenizenMetaBotConstants.COMMAND_PREFIX,
         Initialize    = (bot) =>
         {
             PopulateFromConfig(bot.ConfigFile);
             DefaultCommands(bot);
             bot.Client.Ready += () =>
             {
                 bot.Client.SetGameAsync("Type !help").Wait();
                 return(Task.CompletedTask);
             };
         },
         UnknownCommandHandler = (command, args, message) =>
         {
             if (message.MentionedUserIds.Contains(DiscordBotBaseHelper.CurrentBot.Client.CurrentUser.Id))
             {
                 message.Channel.SendMessageAsync(embed: UserCommands.GetErrorMessageEmbed("Unknown Command", "Unknown command. Consider the __**help**__ command?")).Wait();
             }
             else if (args.Count == 0 && InformationalData.ContainsKey(command.ToLowerFast()))
             {
                 InfoCmds.CMD_Info(new string[] { command.ToLowerFast() }, message);
             }
         },
         ShouldPayAttentionToMessage = (message) =>
         {
             return(message.Channel is IGuildChannel);
         }
     });
 }
Esempio n. 8
0
        private unsafe void ParseMessageBuffer(UserCommands messageType, ReadOnlySpan <byte> buffer)
        {
            switch (messageType)
            {
            case UserCommands.PacketEntities:
                break;

            case UserCommands.GameEventList:
                break;

            case UserCommands.GameEvent:
                break;

            case UserCommands.CreateStringTable:
                break;

            case UserCommands.UpdateStringTable:
                break;

            case UserCommands.Tick:
                break;

            case UserCommands.UserMessage:
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(messageType), messageType, null);
            }
        }
Esempio n. 9
0
        public void TestToCreateTwoUsersAndChangeOneOfThem()
        {
            var aggregateStore   = new MongoDbAggregateStore(MongoConnectionString);
            var aggregates       = new Store.Aggregates(aggregateStore);
            var readModelStore   = new MongoDbUserReadModelStore(MongoConnectionString);
            var readModelHandler = new UserReadModelHandler(readModelStore);

            var commands = new UserCommands(aggregates);
            var queries  = new UserQueries(readModelStore);

            var context = new UserContext(commands, queries, readModelHandler);
            var uid1    = Guid.NewGuid();
            var uid2    = Guid.NewGuid();

            context.Process(new CreateUser {
                Id = uid1, Name = "Horst", EMail = "*****@*****.**", Password = "******"
            });
            context.Process(new CreateUser {
                Id = uid2, Name = "Egon", EMail = "*****@*****.**", Password = "******"
            });
            context.Process(new ChangeUser {
                Id       = uid2,
                Name     = "Egon Müller",
                EMail    = "*****@*****.**",
                Password = "******"
            });

            var user = context.ExecuteQuery <UserModel>(new GetUser {
                Id = uid2
            });

            user.Name.ShouldBeEquivalentTo("Egon Müller");
            user.EMail.ShouldBeEquivalentTo("*****@*****.**");
            user.Password.ShouldBeEquivalentTo("123abc");
        }
Esempio n. 10
0
        public String GetStatus()
        {
            StringBuilder stringBuilder = new();

            stringBuilder.AppendLine(StatusLine + "Commands" + StatusLine);

            foreach (var regularCommand in RegularCommands.OrderBy(x => x.Key.Value).Select(x => x.Value))
            {
                stringBuilder.AppendLine(regularCommand.Name.Value);
            }

            stringBuilder.AppendLine(StatusLine + "User Commands" + StatusLine);

            foreach (var userCommand in UserCommands.OrderBy(x => x.Key.Value).Select(x => x.Value))
            {
                stringBuilder.AppendLine(userCommand.Name.Value);
            }

            stringBuilder.AppendLine(StatusLine + "Disabled Settings" + StatusLine);

            // Disabled settings are first.
            foreach (var setting in Settings.Disabled.OrderBy(x => x.Name.Value))
            {
                stringBuilder.AppendLine(setting.Name + ": " + setting.Status);
            }

            stringBuilder.AppendLine(StatusLine + "Enabled Settings" + StatusLine);

            foreach (var setting in Settings.Enabled.OrderBy(x => x.Name.Value))
            {
                stringBuilder.AppendLine(setting.Name + ": " + setting.Status);
            }

            return(stringBuilder.ToString());
        }
Esempio n. 11
0
        public ParseCommands(DragonChat chat)
        {
            _chat = chat;

            adminCommands   = new AdminCommands(chat);
            userCommands    = new UserCommands(chat);
            defaultCommands = new DefaultCommands(chat);
        }
        public MainWindowUserViewModel()
        {
            //MessageBus = DependencyInjection.SimpleContainer.Get<ImessageBus>();

            txtUsersNames       = new ObservableCollection <Principal>();
            AllComputersButtons = new MTObservableCollection <Button>();

            _userCommand = new UserCommands();
            Load();
        }
Esempio n. 13
0
        public bool IsReleased(UserCommands command)
        {
            RailDriverUserCommand c = Commands[(int)command];

            if (c == null || Changed == false)
            {
                return(false);
            }
            return(!c.IsButtonDown(ButtonData) && c.IsButtonDown(PreviousButtonData));
        }
Esempio n. 14
0
        public bool IsDown(UserCommands command)
        {
            RailDriverUserCommand c = Commands[(int)command];

            if (c == null)
            {
                return(false);
            }
            return(c.IsButtonDown(ButtonData));
        }
Esempio n. 15
0
        //Demander un unique email... e préremplir du provider si Oauth et disponible... (exemple Facebook).. comme il semble faire pour le username (a voir)

        public IUser CreateOrUpdateUser(IUser user)
        {
            if (String.IsNullOrEmpty(user.Name))
            {
                throw new MembershipCreateUserException(MembershipCreateStatus.InvalidUserName);
            }
            //if (String.IsNullOrEmpty(user.Password)) throw new MembershipCreateUserException(MembershipCreateStatus.InvalidPassword);
            if (String.IsNullOrEmpty(user.Email))
            {
                throw new MembershipCreateUserException(MembershipCreateStatus.InvalidEmail);
            }

            if (user.Id.IsNullOrEmpty()) // New user...
            {
                if (UserQueries.GetUserNameByEmail(user.Email) != null)
                {
                    throw new MembershipCreateUserException(MembershipCreateStatus.DuplicateEmail);
                }

                if (UserQueries.Get(user.Name) != null)
                {
                    throw new MembershipCreateUserException(MembershipCreateStatus.DuplicateUserName);
                }

                user.CreatedAt = DateTime.Now;
            }

            if (!user.ThirdPartyAuthenticationUserAccounts.Any() || !user.Password.IsNullOrEmpty())
            {
                try
                {
                    ValidatePassword(user.Name, user.Password);
                }
                catch
                {
                    // not the smoothest approach, but the best
                    // considering the inconsistent password failure handling.
                    throw new MembershipCreateUserException(MembershipCreateStatus.InvalidPassword);
                }
            }

            var passwordInfo = new AccountPasswordInfo(user.Name, user.Password);

            user.Password     = PasswordStrategy.Encrypt(passwordInfo);
            user.PasswordSalt = passwordInfo.PasswordSalt;

            var status = UserCommands.Register(user);

            if (status != MembershipCreateStatus.Success)
            {
                throw new MembershipCreateUserException(status);
            }

            return(user);
        }
Esempio n. 16
0
 private void Client_OnMessageReceived(Object sender, OnMessageReceivedArgs e)
 {
     if (UserCommandValidator.TryValidateCommand(e.ChatMessage, out var userCommandName, out var args))
     {
         if (UserCommands.TryGetValue(userCommandName, out var userCommand) &&
             userCommand.IsEnabled)
         {
             userCommand.Invoke(this, args);
         }
     }
 }
Esempio n. 17
0
        public MainWindowViewModel()
        {
           
            string strPrinters = Common.LocalConfigurationSettings.GetConfiguration("Printers");
            string[] arr = strPrinters.Split(',');
            for (int i = 0; i < arr.Length; i++)
            {
                PrinterProperties printerProps = new PrinterProperties();
                printerProps.IPAddress = arr[i].Trim();
                this.ControlList.Add(new ucPrinter(printerProps, this));
            }

            ConnectCommand = new UserCommands(ConnectToPrinter, CanConnectToPrinter);
            DownloadFileCommand = new UserCommands(DownloadFile, CanDownload);
            StartPrintCommand = new UserCommands(StartPrint, CanPrintStart);
            StopPrintCommand = new UserCommands(StopPrint, CanPrintStop);
            DisconnectCommand = new UserCommands(DisconnectToPrinter, CanConnectToPrinter);
            AddRemovePrinterCommand = new UserCommands(AddRemovePrinter, CanAddRemovePrinters);
            //Read the version info
            string ver = Assembly.GetExecutingAssembly().GetName().Version.ToString();
            this.Version = "Version : " + ver;

            string strLicKey = Common.LocalConfigurationSettings.GetConfiguration("License_Key");
            strLicKey = Cryptography.Decrypt(strLicKey);
            if (strLicKey.ToUpper().Trim() == "TRIAL")
            {
                this.Title = "Multidownloader";
                if (IsLicenseExpired())
                {
                    Environment.Exit(0);
                }
               
                //CreateRegistryKeys();

                ////Create a timer of 15 mins..
                //aTimer = new Timer(1000);
                //aTimer.Start();
                //aTimer.Elapsed += new ElapsedEventHandler(aTimer_Elapsed);
            }

            else if (strLicKey.ToUpper().Trim() == ver)
            {
                // CreateRegistryKeys();
                this.Title = "Multidownloader | Licensed Version";
            }

            else
            {
                CommonMethods.ShowErrorMessage("Invalid Key!!!", "Error");
                Environment.Exit(0);
            }
            
           
        }
Esempio n. 18
0
        private void UpdateOnlineState(bool userIsOnline, IUser user)
        {
            if (!userIsOnline)
            {
                return;
            }

            user.LastActivityAt = DateTime.Now;
            user.IsOnline       = true;

            UserCommands.Update(user);
        }
Esempio n. 19
0
        public TestModule(API api, ICommandHandler commandHandler, IVehicleHandler vehicleHandler,
                          IMessageHandler messageHandler, IClientWrapper clientWrapper, IWeaponUtils weaponUtils, IClientHandler clientHandler)
        {
            LoginFucker         = new LoginFucker(api, messageHandler, clientWrapper);
            CommandHelp         = new CommandHelp(api, commandHandler, messageHandler);
            ExtendedVehicleTest = new ExtendedVehicleTest(vehicleHandler, messageHandler);

            VehicleCommands   = new VehicleCommands(api, vehicleHandler);
            ClientWrapperTest = new ClientWrapperTest(api, clientWrapper, messageHandler);
            WeaponCommands    = new WeaponCommands(api, weaponUtils, messageHandler);
            UserCommands      = new UserCommands(api, clientHandler, messageHandler, clientWrapper);
        }
        private void ExecuteCommand(UserCommands cmd, string[] userParams)
        {
            try
            {
                switch (cmd)
                {
                case UserCommands.Conn:
                    DoConnectCmd();
                    break;

                case UserCommands.Create:
                    DoCreateCmd(userParams);
                    break;

                case UserCommands.Start:
                    DoStartCmd(userParams);
                    break;

                case UserCommands.Stop:
                    DoStopCmd(userParams);
                    break;

                case UserCommands.Status:
                    DoStatusCmd();
                    break;

                case UserCommands.Calc:
                    DoCalcCmd(userParams);
                    break;

                case UserCommands.Settings:
                    DoSettingsCmd(userParams);
                    break;

                case UserCommands.Dconn:
                    DoDconnCmd();
                    break;

                case UserCommands.Timer:
                    DoTimerCmd();
                    break;

                case UserCommands.Kill:
                    DoKillCmd(userParams);
                    break;
                }
            }
            catch (Exception e1)
            {
                _messageManager.ProceedAnswer($"unknown exception: {e1.Message}", ConsoleColor.Red);
            }
        }
Esempio n. 21
0
        protected override void ProcessRecord()
        {
            base.ProcessRecord();
            if (CmdSite == null || CmdPortal == null)
            {
                return;
            }
            ;
            WriteVerbose(string.Format("delete-user on {0} portal {1}", CmdSite.Url, CmdPortal.PortalId));
            var response = UserCommands.DeleteUser(CmdSite, CmdPortal.PortalId, UserId, Notify);

            WriteObject(response);
        }
Esempio n. 22
0
        protected override void ProcessRecord()
        {
            base.ProcessRecord();
            if (CmdSite == null || CmdPortal == null)
            {
                return;
            }
            ;
            WriteVerbose(string.Format("new-user on {0} portal {1}", CmdSite.Url, CmdPortal.PortalId));
            var response = UserCommands.NewUser(CmdSite, CmdPortal.PortalId, Email, Username, Firstname, Lastname, Password, Approved, Notify);

            WriteObject(response);
        }
Esempio n. 23
0
        protected override void ProcessRecord()
        {
            base.ProcessRecord();
            if (CmdSite == null || CmdPortal == null)
            {
                return;
            }
            ;
            WriteVerbose(string.Format("add-roles on {0} portal {1}", CmdSite.Url, CmdPortal.PortalId));
            var response = UserCommands.AddRoles(CmdSite, CmdPortal.PortalId, UserId, Roles, Start, End);

            WriteObject(response);
        }
Esempio n. 24
0
        protected override void ProcessRecord()
        {
            base.ProcessRecord();
            if (CmdSite == null || CmdPortal == null)
            {
                return;
            }
            ;
            WriteVerbose(string.Format("list-users on {0} portal {1}", CmdSite.Url, CmdPortal.PortalId));
            var response = UserCommands.ListUsers(CmdSite, CmdPortal.PortalId, Email, Username, Role, Page, Max);

            WriteArray(response);
        }
Esempio n. 25
0
        public void Run()
        {
            Stopwatch timer = new Stopwatch(); //Adding timer to track the time.

            timer.Start();
            helper.AskPlayerName();                                                                    // Asks user for Name.
            string playerName = Console.ReadLine();                                                    //Gets user name.

            this.gameInitializationStrategy.Initialize(this.hiddenGrid, this.visibleGrid, this.ships); //Initialize hidden and visible grid.
            this.renderer.RenderGrid(this.visibleGrid);
            this.renderer.RenderMessage(GlobalConstants.EnterCoordinatesMsg);

            while (true)
            {
                this.renderer.RenderStatusMessage(this.gameStatus.ToString());

                UserCommands command = this.userInterface.GetCommandFromInput();
                this.renderer.ClearError(); //Clears the console from the error message.

                try
                {
                    if (command == UserCommands.Shoot)
                    {
                        context.ExecuteCommands(command, this.hiddenGrid, this.visibleGrid, this.shotPosition = this.userInterface.GetShotPositionFromInput(),
                                                this.totalAttempts, this.playerData, this.Ships);
                    }
                    else
                    {
                        context.ExecuteCommands(command, this.hiddenGrid, this.visibleGrid, this.shotPosition,
                                                this.totalAttempts, this.playerData, this.Ships);
                    }
                }
                catch (Exception e)
                {
                    this.gameStatus = GameStatus.Error;
                    this.renderer.RenderStatusMessage(this.gameStatus.ToString());
                    this.renderer.RenderErrorMessage(e.Message);
                }
                this.renderer.UpdateGrid(this.visibleGrid, this.shotPosition);

                if (helper.AreAllShipsSunk(Ships))
                {
                    timer.Stop();
                    double timePlayed = timer.Elapsed.Seconds;
                    int    score      = GlobalConstants.MaxScore - totalAttempts;
                    this.dataCreator.CreateNewPlayerFile(playerName, timePlayed, score, playerFactory);
                    dataCreator.CreateNewPlayerFile(playerName, timePlayed, score, playerFactory);
                    this.gameStatus = GameStatus.End;
                }
            }
        }
Esempio n. 26
0
        public void ProcessCommand(Grid hiddenGrid, Grid visibleGrid, Position shotPosition, int totalAttempts, List <PlayerData> playerData, IList <IShip> ship)
        {
            this.renderer.RenderMessage(string.Format(GlobalConstants.ExitMsg, GlobalConstants.AgreeCommand));
            UserCommands command = this.userInterface.GetCommandFromInput();

            if (command == UserCommands.Agree)
            {
                this.userInterface.ExitGame();
            }
            else
            {
                this.renderer.RenderMessage(GlobalConstants.EnterCoordinatesMsg);
            }
        }
Esempio n. 27
0
        public static bool IsDown(UserCommands command)
        {
            if (ComposingMessage == true)
            {
                return(false);
            }
            if (RDState != null && RDState.IsDown(command))
            {
                return(true);
            }
            var setting = InputSettings.Commands[(int)command];

            return(setting.IsKeyDown(KeyboardState));
        }
Esempio n. 28
0
        public bool IsSystemMessage(out UserCommand command)
        {
            command = UserCommand.Conversation;
            if (MessageContent.StartsWith("*"))
            {
                if (UserCommands.ContainsKey(MessageContent.ToLower()))
                {
                    command = UserCommands[MessageContent.ToLower()];
                    return(true);
                }
            }

            return(false);
        }
Esempio n. 29
0
        public async Task<UserInfo> Post(UserCommands.RegisterUser request)
        {
            var usersIndex = await GetActor<UserIndex>();
            var emailReply = await usersIndex.Ask<UserIndex.IReply>(new UserIndex.GetUserByEmail(request.Email), DefaultTimeout);

            // cannot register user using email, which has already been used
            if (emailReply is UserIndex.UserFound)
            {
                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }

            var users = await GetActor<UserCoordinator>();
            var entity = await users.Ask<UserEntity>(request, DefaultTimeout);
            return new UserInfo(entity.Id, entity.FirstName, entity.LastName, entity.Email, entity.AccountsIds.ToArray());
        }
Esempio n. 30
0
        /// <summary>
        /// Bot command response handler.
        /// </summary>
        public void Respond(SocketMessage message, bool outputUnknowns)
        {
            string messageText = message.Content;

            if (messageText.StartsWith(Constants.COMMAND_PREFIX))
            {
                messageText = messageText.Substring(Constants.COMMAND_PREFIX.Length);
            }
            string[]      messageDataSplit = messageText.Split(' ');
            StringBuilder resultBuilder    = new StringBuilder(messageText.Length);
            List <string> cmds             = new List <string>();

            for (int i = 0; i < messageDataSplit.Length; i++)
            {
                if (messageDataSplit[i].Contains("<@") && messageDataSplit[i].Contains(">"))
                {
                    continue;
                }
                resultBuilder.Append(messageDataSplit[i]).Append(" ");
                if (messageDataSplit[i].Length > 0)
                {
                    cmds.Add(messageDataSplit[i]);
                }
            }
            if (cmds.Count == 0)
            {
                Console.WriteLine("Empty input, ignoring: " + message.Author.Username);
                return;
            }
            string fullMessageCleaned = resultBuilder.ToString();

            Console.WriteLine("Found input from: (" + message.Author.Username + "), in channel: " + message.Channel.Name + ": " + fullMessageCleaned);
            string commandNameLowered = cmds[0].ToLowerInvariant();

            cmds.RemoveAt(0);
            if (ChatCommands.TryGetValue(commandNameLowered, out Action <string[], SocketMessage> acto))
            {
                acto.Invoke(cmds.ToArray(), message);
            }
            else if (outputUnknowns)
            {
                message.Channel.SendMessageAsync(embed: UserCommands.GetErrorMessageEmbed("Unknown Command", "Unknown command. Consider the __**help**__ command?")).Wait();
            }
            else if (cmds.Count == 0 && InformationalData.ContainsKey(commandNameLowered))
            {
                InfoCmds.CMD_Info(new string[] { commandNameLowered }, message);
            }
        }
Esempio n. 31
0
 public void SetUp()
 {
     _userRepoMock    = new Mock <IUserRepo>();
     _pokeyenBankMock = new Mock <IBank <User> >();
     _tokenBankMock   = new Mock <IBank <User> >();
     _userCommands    = new UserCommands(
         userRepo: _userRepoMock.Object,
         pokeyenBank: _pokeyenBankMock.Object,
         tokenBank: _tokenBankMock.Object);
     _argsParser = new ArgsParser();
     _argsParser.AddArgumentParser(new OptionalParser(_argsParser));
     _argsParser.AddArgumentParser(new UserParser(_userRepoMock.Object));
     _argsParser.AddArgumentParser(new HexColorParser());
     _argsParser.AddArgumentParser(new StringParser());
     _argsParser.AddArgumentParser(new IntParser());
 }
        void UserCommand_OnMouseClick(UserCommands.MouseClickCommand evt)
        {
            MouseEventArgs mouse = evt.MouseEvent;
            var imageViewPort = imgBox.GetImageViewPort();

            int absoluteX = mouse.X - imageViewPort.Left;
            int absoluteY = mouse.Y - imageViewPort.Top;

            absoluteX = (Convert.ToInt32(absoluteX / imgBox.ZoomFactor) + Convert.ToInt32(imgBox.HorizontalScroll.Value / imgBox.ZoomFactor));
            absoluteY = Convert.ToInt32(absoluteY / imgBox.ZoomFactor) + Convert.ToInt32(imgBox.VerticalScroll.Value / imgBox.ZoomFactor);

            txtLog.DoInvokeAction(() =>
            {
                txtLog.Text += "\r\n" + "X " + absoluteX.ToString() + " Y " + absoluteY.ToString();
            });

            if (!ModifierKeys.HasFlag(WINKeys.Control))
            {

            };

            var clickCommand =
            @"return (function SWD_GET_ELEMENT() {
                  var absoluteX = {## absoluteX ##};
                  var absoluteY = {## absoluteY ##};
                  var view = {
                      Left: window.scrollX,
                      Top: window.scrollY,
                      Right: window.scrollX + window.innerWidth,
                      Bottom: window.scrollY + window.innerHeight
                  };

                  var elementInsideViewPort = (view.Left <= absoluteX && absoluteX <= view.Right) &&
                                              (view.Top <= absoluteY && absoluteY <= view.Bottom);
                  if (!elementInsideViewPort) {
                    window.scroll(Math.max(absoluteX - 30, 0), Math.max(absoluteY - 30, 0));
                  }
                  absoluteX = absoluteX - window.scrollX;
                  absoluteY = absoluteY - window.scrollY;
                  return document.elementFromPoint(absoluteX, absoluteY);
              })()"
            .Replace("{## absoluteX ##}", absoluteX.ToString())
            .Replace("{## absoluteY ##}", absoluteY.ToString());

            IWebElement element = (IWebElement)SwdBrowser.ExecuteJavaScript(clickCommand);
            // element.Click();

            if (element == null)
            {
                MyLog.Error("Element is null after performing command " + clickCommand ?? "<null>");
                return;
            }
            if (element.TagName == "iframe")
            {
                try
                {
                    var frameLocation = element.Location;
                    absoluteX = absoluteX - frameLocation.X;
                    absoluteY = absoluteY - frameLocation.Y;

                    MyLog.Debug("Switching to IFrame");
                    SwdBrowser.GetDriver().SwitchTo().Frame(element);

                    clickCommand = String.Format(@"return document.elementFromPoint({0}, {1});", absoluteX, absoluteY);
                    element = (IWebElement)SwdBrowser.ExecuteJavaScript(clickCommand);
                    ClickOnElement(absoluteX, absoluteY, element);
                }
                finally
                {
                    SwdBrowser.SwitchToDefaultContent();
                }
            }
            else
            {
                ClickOnElement(absoluteX, absoluteY, element);
            }
        }
Esempio n. 33
0
 public CsvViewer(User user, UserCommands commands)
 {
     this.user = user;
     this.commands = commands;
 }