コード例 #1
0
        public IActionResult Login([FromBody] LoginForm loginform)
        {
            using (UsersDatabase db = new UsersDatabase())
            {
                ClassLibrary1.User u = db.Users.FirstOrDefault(user => user.Name.Equals(loginform.UserName));
                if (u != null)
                {
                    if (u.Password.Equals(loginform.Password))
                    {
                        return(Ok());
                    }
                }
            }

            return(NotFound());
        }
コード例 #2
0
 public MapViewModel(OperationsDatabase operationsDatabase, TeamsDatabase teamsDatabase, TeamAgentsDatabase teamAgentsDatabase,
                     UsersDatabase usersDatabase, IPreferences preferences, IMvxMessenger messenger, IClipboard clipboard, IMap map,
                     IUserDialogs userDialogs, IUserSettingsService userSettingsService, WasabeeApiV1Service wasabeeApiV1Service)
 {
     _operationsDatabase = operationsDatabase;
     _teamsDatabase      = teamsDatabase;
     _teamAgentsDatabase = teamAgentsDatabase;
     _usersDatabase      = usersDatabase;
     _preferences        = preferences;
     _messenger          = messenger;
     _clipboard          = clipboard;
     _map                 = map;
     _userDialogs         = userDialogs;
     _userSettingsService = userSettingsService;
     _wasabeeApiV1Service = wasabeeApiV1Service;
 }
コード例 #3
0
        //author: Michael Kath (n9293833)
        public async void SearchEmployees(string searchTerm)
        {
            User.Clear();
            User.Add(new Employees("Searching..."));
            var result = await UsersDatabase.GetEmployees(searchTerm, currentUser);

            User.Clear();
            if (result.Any())
            {
                foreach (var item in result)
                {
                    User.Add(item);
                }
            }
            else
            {
                User.Add(new Employees("No matches found"));
            }
        }
コード例 #4
0
 public SplashScreenViewModel(IConnectivity connectivity, IPreferences preferences, IVersionTracking versionTracking,
                              IAuthentificationService authentificationService, IMvxNavigationService navigationService, IMvxMessenger messenger,
                              ISecureStorage secureStorage, IAppSettings appSettings, IUserSettingsService userSettingsService, IUserDialogs userDialogs,
                              WasabeeApiV1Service wasabeeApiV1Service, UsersDatabase usersDatabase, OperationsDatabase operationsDatabase, LinksDatabase linksDatabase,
                              MarkersDatabase markersDatabase, TeamsDatabase teamsDatabase, TeamAgentsDatabase teamAgentsDatabase)
 {
     _connectivity            = connectivity;
     _preferences             = preferences;
     _versionTracking         = versionTracking;
     _authentificationService = authentificationService;
     _navigationService       = navigationService;
     _messenger           = messenger;
     _secureStorage       = secureStorage;
     _appSettings         = appSettings;
     _userSettingsService = userSettingsService;
     _userDialogs         = userDialogs;
     _wasabeeApiV1Service = wasabeeApiV1Service;
     _usersDatabase       = usersDatabase;
     _operationsDatabase  = operationsDatabase;
     _linksDatabase       = linksDatabase;
     _markersDatabase     = markersDatabase;
     _teamsDatabase       = teamsDatabase;
     _teamAgentsDatabase  = teamAgentsDatabase;
 }
コード例 #5
0
        public void Load()
        {
            Program.MainForm.LogAppend("Reading Config File... ", false);
            LoadConfig(ServerConfigFile);
            LoadClientPatchData(ServerConfigFile);
            LoadDBConfig(Path.Combine(Environment.CurrentDirectory, "..", "DataSvr", "Database.img"));
            Program.MainForm.LogAppend(" Done!", false);

            Program.MainForm.LogAppend("Starting to patch... ", false);
            DataBasePatcher.StartPatching(UsersDatabase, Path.Combine(Application.StartupPath, "evolutions", "login"), "login");

            Program.MainForm.LogAppend(" Done!", false);

            MasterThread.RepeatingAction.Start("Center Reconnect Timer", time =>
            {
                foreach (var kvp in Worlds)
                {
                    if (kvp.Value.IsConnected)
                    {
                        continue;
                    }
                    try
                    {
                        kvp.Value.Connect();
                    }
                    catch { }
                }
            }, 0, 5000);


            using (var reader = UsersDatabase.RunQuery(
                       "SELECT private_ip FROM servers WHERE configname = '" + Name + "' AND world_id = 0"
                       ) as MySqlDataReader)
            {
                if (reader != null && reader.Read())
                {
                    // Server exists, try to migrate
                    var privateIp = reader.GetString("private_ip");
                    Program.MainForm.LogAppend("Starting migration... {0}:{1}", privateIp, LTLPort);
                    reader.Close();

                    try
                    {
                        bool wasConnected = false;
                        LoginToLoginConnection = new LoginToLoginConnection(privateIp, LTLPort);
                        for (var i = 0; i < 10; i++)
                        {
                            System.Threading.Thread.Sleep(100);
                            if (LoginToLoginConnection.Disconnected == false)
                            {
                                wasConnected = true;
                                break;
                            }
                        }

                        if (!wasConnected)
                        {
                            LoginToLoginConnection.PreventConnectFromSucceeding = true;
                            Program.MainForm.LogAppend("Not able to migrate as server is not accessible.");
                            StartLTLAcceptor();
                            StartListening();
                        }
                        else
                        {
                            Program.MainForm.LogAppend("Connected to LTL acceptor");
                            InMigration = false;
                            var pw = new Packet(ISServerMessages.ServerMigrationUpdate);
                            pw.WriteByte((byte)ServerMigrationStatus.StartMigration);
                            LoginToLoginConnection.SendPacket(pw);
                        }
                    }
                    catch (Exception ex)
                    {
                        Program.MainForm.LogAppend("Migration failed! {0}", ex);
                        // It failed.
                        StartLTLAcceptor();
                        StartListening();
                    }
                }
                else
                {
                    StartLTLAcceptor();
                    StartListening();
                }
            }

            UsersDatabase.SetupPinger(MasterThread.Instance);


            DiscordReporter.Username   = Name;
            ServerTraceDiscordReporter = new DiscordReporter(DiscordReporter.ServerTraceURL);
        }
コード例 #6
0
 public ResultModel(UsersDatabase userDb, EmailService eService)
 {
     this.userDb   = userDb;
     this.eService = eService;
 }
コード例 #7
0
 string GetLogStatus()
 {
     if (user.Status == Account.StatusCode.inv_user)
     {
         return(ServerMessage.invUser);
     }
     else if (user.Status == Account.StatusCode.user_is_logged)
     {
         return(ServerMessage.currentlyLogged);
     }
     else if (user.Status == Account.StatusCode.must_be_logged)
     {
         return(ServerMessage.mustBelogged);
     }
     else if (user.Status == Account.StatusCode.inv_pass)
     {
         return(ServerMessage.invPwd);
     }
     else if (user.Status == Account.StatusCode.logged)
     {
         return(ServerMessage.logged);
     }
     else if (user.Status == Account.StatusCode.already_logged)
     {
         return(ServerMessage.alreadyLogged);
     }
     else if (user.Status == Account.StatusCode.user_exists)
     {
         return(ServerMessage.userExists);
     }
     else if (user.Status == Account.StatusCode.user_does_not_exist)
     {
         return(ServerMessage.userDoesNotExists);
     }
     else if (user.Status == Account.StatusCode.successful_registration)
     {
         return(ServerMessage.regOk);
     }
     else if (user.Status == Account.StatusCode.change_pwd)
     {
         return(ServerMessage.changePwd);
     }
     else if (user.Status == Account.StatusCode.change_pwd_error)
     {
         return(ServerMessage.changePwdError);
     }
     else if (user.Status == Account.StatusCode.get_all_user_data)
     {
         return(UsersDatabase.GetListData((int)user.Id, DatabaseAbstract.DatabaseType.User));
     }
     else if (user.Status == Account.StatusCode.inv_mail)
     {
         return(ServerMessage.invMail);
     }
     else if (user.Status == Account.StatusCode.inv_first_name)
     {
         return(ServerMessage.invFirstName);
     }
     else if (user.Status == Account.StatusCode.inv_second_name)
     {
         return(ServerMessage.invSecondName);
     }
     else if (user.Status == Account.StatusCode.inv_phone_number)
     {
         return(ServerMessage.invPhoneNumber);
     }
     else if (user.Status == Account.StatusCode.user_valid_data)
     {
         return(ServerMessage.userValidData);
     }
     else if (user.Status == Account.StatusCode.user_inv_data)
     {
         return(ServerMessage.userInvData);
     }
     return(ServerMessage.unk);
 }
コード例 #8
0
        public LoginServerProtocol() : base()
        {
            responses = new Dictionary <Request, Response>();
            opcodes   = new Dictionary <string, int>();
            user      = new Account();

            #region OPCODE
            opcodes["LOGIN"]          = 0;
            opcodes["REGISTER"]       = 1;
            opcodes["CHANGE_PWD"]     = 2;
            opcodes["GETUSER"]        = 3;
            opcodes["UPDATEUSERDATA"] = 4;
            opcodes["FILEADD"]        = 5;
            opcodes["FILEALL"]        = 6;
            opcodes["FILEDELETE"]     = 7;
            opcodes["FILEUPDATE"]     = 8;
            opcodes["FILEOPEN"]       = 9;
            opcodes["GETLOGS"]        = 10;

            #endregion

            #region LOGIN_AND_REGISTRATION
            responses[new Request(opcodes["LOGIN"], "LOGIN", null, null)] = new Response(0,
                                                                                         (userName, pass) =>
            {
                loginAttempServer();
                if (CheckUser(userName))
                {
                    userName = userName.ToLower().Trim(new char[] { '\r', '\n', '\0' });
                    if (!UsersDatabase.UserIsLogged(userName))
                    {
                        if (UsersDatabase.CheckPassword(userName, pass))
                        {
                            user = UsersDatabase.GetUserWithDatabase(userName);
                            UsersDatabase.UpdateLoginStatus(user);
                            user.Status = Account.StatusCode.logged;
                            loginUserServer(user.Id, user.Login);
                        }
                        else
                        {
                            user.Status = Account.StatusCode.inv_pass;
                        }
                    }
                    else
                    {
                        user.Status = Account.StatusCode.user_is_logged;
                    }
                }
            },
                                                                                         null,
                                                                                         (args) =>
            {
                return(GetLogStatus());
            });

            responses[new Request(opcodes["REGISTER"], "REGISTER", null, null)] = new Response(0,
                                                                                               (userName, pass) =>
            {
                registrationAttempServer();
                if (!CheckUser(userName) && user.Status == Account.StatusCode.user_does_not_exist)
                {
                    if (pass.Length == 64)
                    {
                        UsersDatabase.AddUser(userName, pass);
                        user.Status = Account.StatusCode.successful_registration;
                    }
                    else
                    {
                        user.Status = Account.StatusCode.inv_pass;
                    }
                }

                if (user.Status != Account.StatusCode.successful_registration)
                {
                    if (userName.Length > 0)
                    {
                        user.Status = Account.StatusCode.user_exists;
                    }
                    else
                    {
                        user.Status = Account.StatusCode.inv_user;
                    }
                }
            },
                                                                                               null,
                                                                                               (args) =>
            {
                return(GetLogStatus());
            });

            responses[new Request(opcodes["CHANGE_PWD"], "CHANGE_PWD", null, null)] = new Response(0,
                                                                                                   (oldPass, newPass) =>
            {
                if (user.IsLogged)
                {
                    if (UsersDatabase.CheckPassword(user.Login, oldPass))
                    {
                        if (UsersDatabase.ChangePassword(user.Login, oldPass, newPass))
                        {
                            user.Status = Account.StatusCode.change_pwd;
                        }
                        else
                        {
                            user.Status = Account.StatusCode.change_pwd_error;
                        }
                    }
                    else
                    {
                        user.Status = Account.StatusCode.inv_pass;
                    }
                }
                else
                {
                    user.Status = Account.StatusCode.must_be_logged;
                }
            },
                                                                                                   null,
                                                                                                   (args) =>
            {
                return(GetLogStatus());;
            });

            responses[new Request(opcodes["GETUSER"], "GETUSER")] = new Response(0,
                                                                                 () =>
            {
                if (user.IsLogged)
                {
                    user.Status = Account.StatusCode.get_all_user_data;
                }
                else
                {
                    user.Status = Account.StatusCode.must_be_logged;
                }
            },
                                                                                 (args) =>
            {
                return(GetLogStatus());
            });
            responses[new Request(opcodes["UPDATEUSERDATA"], "UPDATEUSERDATA", null)] = new Response(0,
                                                                                                     (string data) =>
            {
                var tokens = SplitUserData(data);
                if (user.IsLogged)
                {
                    if (ValidUserData(tokens))
                    {
                        UsersDatabase.UpdateUserData((int)user.Id, tokens);
                    }
                    else
                    {
                        user.Status = Account.StatusCode.user_inv_data;
                    }
                }
                else
                {
                    user.Status = Account.StatusCode.must_be_logged;
                }
            },
                                                                                                     (args) =>
            {
                return(GetLogStatus());
            });

            #endregion

            #region FILE
            responses[new Request(opcodes["FILEADD"], "FILEADD", null, null)] = new Response(0,
                                                                                             (fileName, text) =>
            {
                if (!CheckFile(fileName) && user.FileStatus == Account.FileCode.file_does_not_exist)
                {
                    userAddFileServer(user.Id, user.Login, fileName);
                    FileDatabase.AddFile(fileName, text, (int)user.Id);
                    user.FileStatus = Account.FileCode.file_added;
                }
            },
                                                                                             null,
                                                                                             (args) =>
            {
                return(GetFileStatus());
            });


            responses[new Request(opcodes["FILEALL"], "FILEALL")] = new Response(0,
                                                                                 () =>
            {
                if (user.IsLogged)
                {
                    user.FileStatus = Account.FileCode.get_all;
                }
                else
                {
                    user.FileStatus = Account.FileCode.must_be_logged;
                }
            },
                                                                                 (args) =>
            {
                return(GetFileStatus());
            });

            responses[new Request(opcodes["FILEDELETE"], "FILEDELETE", null)] = new Response(0,
                                                                                             (fileName) =>
            {
                if (CheckFile(fileName))
                {
                    FileDatabase.DeleteFile(fileName, (int)user.Id);
                    if (!FileDatabase.FileExists(fileName, (int)user.Id))
                    {
                        userDelFileServer(user.Id, user.Login, fileName);
                        user.FileStatus = Account.FileCode.file_deleted;
                    }
                    else
                    {
                        user.FileStatus = Account.FileCode.file_deleted_error;
                    }
                }
            },
                                                                                             (args) =>
            {
                return(GetFileStatus());
            });


            responses[new Request(opcodes["FILEUPDATE"], "FILEUPDATE", null, null)] = new Response(0,
                                                                                                   (fileName, text) =>
            {
                if (CheckFile(fileName))
                {
                    userUpdateFileServer(user.Id, user.Login, fileName);
                    FileDatabase.UpdateFile(fileName, (int)user.Id, text);
                    user.FileStatus = Account.FileCode.file_update;
                }
            },
                                                                                                   null,
                                                                                                   (args) =>
            {
                return(GetFileStatus());
            });

            responses[new Request(opcodes["FILEOPEN"], "FILEOPEN", null)] = new Response(0,
                                                                                         (fileName) =>
            {
                if (CheckFile(fileName))
                {
                    userOpenFileServer(user.Id, user.Login, fileName);
                    user.FileStatus = Account.FileCode.file_open;
                }
            },
                                                                                         (fileName) =>
            {
                if (user.FileStatus == Account.FileCode.file_open)
                {
                    return(FileDatabase.openFile(fileName, (int)user.Id));
                }
                return(GetFileStatus());
            });

            responses[new Request(opcodes["GETLOGS"], "GETLOGS")] = new Response(0,
                                                                                 () =>
            {
                if (user.IsLogged)
                {
                    user.FileStatus = Account.FileCode.get_logs;
                }
                else
                {
                    user.FileStatus = Account.FileCode.must_be_logged;
                }
            },
                                                                                 (args) =>
            {
                return(GetFileStatus());
            });
            #endregion
        }
コード例 #9
0
 public QuoteModel(UsersDatabase usersDatabase, AttomData aData)
 {
     this.usersDatabase = usersDatabase;
     this.aData         = aData;
 }
コード例 #10
0
 private void MainWindow_Load(object sender, EventArgs e)
 {
     UsersDatabase.Load();
 }
コード例 #11
0
 public IndexModel(UsersDatabase usersDatabase, IHttpContextAccessor context)
 {
     this.usersDatabase = usersDatabase;
     this.context       = context;
 }
コード例 #12
0
 public void UpdateAll()
 {
     UsersDatabase.Load();
     UpdateLeft();
 }
コード例 #13
0
 private void DeleteUserButton_Click(object sender, EventArgs e)
 {
     UsersDatabase.DeleteUser(SearcherUserTextField.Text);
     UpdateAll();
 }
コード例 #14
0
 public OperationDetailViewModel(OperationsDatabase operationsDatabase, TeamsDatabase teamsDatabase, UsersDatabase usersDatabase,
                                 IUserSettingsService userSettingsService, IMvxNavigationService navigationService)
 {
     _operationsDatabase  = operationsDatabase;
     _teamsDatabase       = teamsDatabase;
     _usersDatabase       = usersDatabase;
     _userSettingsService = userSettingsService;
     _navigationService   = navigationService;
 }