Ejemplo n.º 1
0
 /// <summary>
 /// Action permettant à l'utilisateur de se connecter.
 /// </summary>
 private void LoginAccess()
 {
     if (_userService.Login(_login, Converter.SecureStringToString(this._password)))
     {
         ServiceUser.User loggedUser = _userService.GetUser(_login);
         if (loggedUser != null)
         {
             Console.WriteLine("Welcome back " + loggedUser.Firstname + "!");
             MainWindowViewModel.User = loggedUser;
             WindowLoader.Show("MainWindow");
             CloseSignal = true;
             return;
         }
         else
         {
             ErrorMessage = "Problème serveur: Impossible de connecter cet utilisateur";
             Console.WriteLine("Failed to get logged user");
         }
     }
     else
     {
         ErrorMessage = "Identifiant ou mot de passe invalide.";
         Console.WriteLine("Invalid credentials");
     }
 }
Ejemplo n.º 2
0
 /*Create the first acount*/
 private void AddAdmin()
 {
     ServiceUser.ServiceUserClient clientService = new ServiceUser.ServiceUserClient();
     try
     {
         ServiceUser.User user = clientService.GetUser("admin");
     }
     catch
     {
         try
         {
             ServiceUser.User admin = new ServiceUser.User
             {
                 Firstname = "admin",
                 Name      = "admin",
                 Pwd       = "admin",
                 Login     = "******",
                 Role      = "Medecin",
                 Connected = false
             };
             clientService.AddUser(admin);
         }
         catch
         {
         }
     }
 }
Ejemplo n.º 3
0
        private void Connecting()
        {
            bool isValid = false;

            //Call service

            if (!string.IsNullOrEmpty(LoginInput) && !string.IsNullOrEmpty(PasswordInput))
            {
                ServiceUser.ServiceUserClient clientService = new ServiceUser.ServiceUserClient();
                try
                {
                    isValid = clientService.Connect(_loginInput, _passwordInput);
                    if (isValid)
                    {
                        ServiceUser.User user = new ServiceUser.User();
                        user = clientService.GetUser(this._loginInput);
                        View.MainWindow      mainwindow   = (View.MainWindow)Application.Current.MainWindow;
                        ViewModel.MainWindow mainwindowVM = (ViewModel.MainWindow)mainwindow.DataContext;
                        mainwindowVM.MenuIsActive  = true;
                        mainwindowVM.FadeOut       = false;
                        mainwindowVM.ConnectedUser = new Model.User
                        {
                            Firstname     = user.Firstname,
                            Name          = user.Firstname,
                            Login         = user.Login,
                            Password      = user.Pwd,
                            Pic           = user.Picture,
                            Role          = user.Role,
                            Connected     = true,
                            Co            = true,
                            ExtensionData = user.ExtensionData
                        };
                        mainwindowVM.UserIdentity = user.Name + " " + user.Firstname;
                        View.Patients view             = new View.Patients();
                        ViewModel.PatientsViewModel vm = new colle_tMedecine.ViewModel.PatientsViewModel();
                        view.DataContext = vm;
                        mainwindow.contentcontrol.Content = view;
                    }
                    else
                    {
                        ErrorMessage     = "Identifiant ou mot de passe incorrect";
                        ShowConnectError = 1;
                        ShowConnectError = 0;
                    }
                }
                catch (Exception e)
                {
                    ErrorMessage     = "La connexion a échouée, réessayez plus tard";
                    ShowConnectError = 1;
                    ShowConnectError = 0;
                }
            }
            else
            {
                ErrorMessage     = "Identifiant ou mot de passe manquant";
                ShowConnectError = 1;
                ShowConnectError = 0;
            }
        }
Ejemplo n.º 4
0
 public static bool AddUser(ServiceUser.User user)
 {
     try
     {
         ServiceUserManager sum = new ServiceUserManager();
         return(sum.AddUser(user));
     }
     catch (EndpointNotFoundException e)
     {
         MessageBox.Show("Le serveur ne répond pas.", "Erreur");
         throw e;
     }
 }
Ejemplo n.º 5
0
 public bool AddUser(ServiceUser.User user)
 {
     try
     {
         using (ServiceUser.ServiceUserClient client = new ServiceUser.ServiceUserClient())
         {
             return(client.AddUser(user));
         }
     }
     catch
     {
         throw new TimeoutException();
     }
 }
Ejemplo n.º 6
0
        /// <summary>
        /// constructeur
        /// </summary>
        public CreateUserSuccessViewModel(Page lkView)
        {
            _linkedView = lkView;

            _loginCommand = new RelayCommand(param => ToFirstLogin(), param => true);

            ServiceUser.User createdUser = NavigationMessenger.GetInstance().TransitCreatedUser;

            _name      = createdUser.Name;
            _firstname = createdUser.Firstname;
            _login     = createdUser.Login;
            _password  = createdUser.Pwd;
            _role      = createdUser.Role;
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Initializes a new instance of the LoginViewModel class.
        /// </summary>
        public LoginViewModel()
        {
            Loading    = false;
            LoginError = false;

            //Debug hack
            Login    = "******";
            Password = "******";

            _connectionCommand = new RelayCommand(async() =>
            {
                ViewModelLocator vm = new ViewModelLocator();
                Loading             = true;
                try
                {
                    bool isConnected = await BusinessManagement.User.ConnectAsync(Login, Password);

                    if (isConnected)
                    {
                        // Set connected User
                        ServiceUser.User User = await BusinessManagement.User.GetUserAsync(Login);
                        await Application.Current.Dispatcher.InvokeAsync(() => { _userChangedEventHandler(this, User); });

                        // Reset error handling
                        LoginError = false;

                        // Switch view to home
                        vm.Window.DataContext = vm.Home;
                    }
                    else
                    {
                        // Wrong pass dude !
                        LoginError = true;
                    }
                }
                catch (Exception)
                {
                    // Server error
                }
                finally
                {
                    Loading = false;
                }
            }, () => !Loading && CanLogin);

            WindowContent             = new View.LoginView();
            WindowContent.DataContext = this;
        }
Ejemplo n.º 8
0
        public UserViewModel(string login)
        {
            try
            {
                var suc = new ServiceUser.ServiceUserClient();

                _user = suc.GetUser(login);
                _fullname = StringHelper.FullName(_user.Firstname, _user.Name);

                // Commandes
                DeleteUserCommand = new RelayCommand(param => DeleteUser(), param => true);
            }
            catch (Exception ex)
            {
                Error = ex.Message;
            }
        }
Ejemplo n.º 9
0
 public bool AddUser(String Firstname, String Name, String Login, String Password, String Role)
 {
     try
     {
         ServiceUser.User user = new ServiceUser.User();
         user.Firstname = Firstname;
         user.Name = Name;
         user.Login = Login;
         user.Pwd = Password;
         user.Role = Role;
         if (new ServiceUser.ServiceUserClient().AddUser(user))
             return true;
         return false;
     }
     catch (Exception ex)
     {
         //traitement exception ...
         Debug.WriteLine(ex.Message);
         return false;
     }
 }
Ejemplo n.º 10
0
 public ServiceUser.User GetUser(string login)
 {
     try
     {
         using (ServiceUser.ServiceUserClient client = new ServiceUser.ServiceUserClient())
         {
             ServiceUser.User user = client.GetUser(login);
             if (user == null)
             {
                 return(null);
             }
             else
             {
                 return(user);
             }
         }
     }
     catch
     {
         throw new TimeoutException();
     }
 }
Ejemplo n.º 11
0
        /// <summary>
        /// La creation de compte va appeller un webservice dans un
        /// BackgroundWorker pour laisser l'UI disponible
        /// </summary>
        private void CreateAccount()
        {
            BackgroundWorker worker = new BackgroundWorker();

            ServiceUser.User newUser = new ServiceUser.User();

            newUser.Name      = _name;
            newUser.Firstname = _firstname;
            newUser.Connected = false;
            newUser.Picture   = _imagebyte;
            newUser.Login     = _login;
            newUser.Pwd       = _password;
            newUser.Role      = _role;

            worker.DoWork += new DoWorkEventHandler((object s, DoWorkEventArgs e) =>
            {
                ServiceUser.ServiceUserClient serviceUser = new ServiceUser.ServiceUserClient();

                Debug.WriteLine("DEBUT");
                _iscreatingaccount = true;

                BackgroundWorker bg = s as BackgroundWorker;
                e.Result            = serviceUser.AddUser(newUser);
            });

            // TODO penser a mettre un comportement en fonction des differents cas notamment en cas de fail
            worker.RunWorkerCompleted += new RunWorkerCompletedEventHandler((object s, RunWorkerCompletedEventArgs e) =>
            {
                Debug.WriteLine("FIN");
                _iscreatingaccount = false;
                WaitingMessage     = "";

                if (e.Cancelled)
                {
                    Debug.WriteLine("CANCELLED");
                    WaitingMessage = "L'opération a été annulée.";
                }
                if (e.Error != null)
                {
                    Debug.WriteLine("ERROR");
                    WaitingMessage = "Erreur lors de la création : " + e.Error.Message;
                }
                bool?res = e.Result as bool?;

                if (res == null)
                {
                    Debug.WriteLine("ERREUR COTE SERVEUR");
                    WaitingMessage = "Erreur côté serveur lors de la création. Veuillez recommencer";
                }
                if (res == true)
                {
                    /// Juste avant de creer la page de confirmation il faut
                    /// enregister les informations dans le NavigationMessenger
                    NavigationMessenger.GetInstance().TransitCreatedUser = newUser;
                    WaitingMessage = "Création réussie";

                    View.CreateUserSuccessView window       = new View.CreateUserSuccessView();
                    ViewModel.CreateUserSuccessViewModel vm = new CreateUserSuccessViewModel(window);
                    window.DataContext = vm;

                    _ns = NavigationService.GetNavigationService(_linkedView);
                    _ns.Navigate(window);
                    WaitingMessage = "";
                }
                else
                {
                    Debug.WriteLine("ECHEC DE L'INSCRIPTION");
                    WaitingMessage = "L'inscription a échoué. Veuillez recommencer.";
                }
            });

            worker.RunWorkerAsync();
            WaitingMessage = "Création du compte";
        }
Ejemplo n.º 12
0
 /*Create the first acount*/
 private void AddAdmin()
 {
     ServiceUser.ServiceUserClient clientService = new ServiceUser.ServiceUserClient();
     try
     {
         ServiceUser.User user = clientService.GetUser("admin");
     }
     catch
     {
         try
         {
             ServiceUser.User admin = new ServiceUser.User
             {
                 Firstname = "admin",
                 Name = "admin",
                 Pwd = "admin",
                 Login = "******",
                 Role = "Medecin",
                 Connected = false
             };
             clientService.AddUser(admin);
         }
         catch
         {
         }
     }
 }
Ejemplo n.º 13
0
        /// <summary>
        /// action permettant de s'authentifier
        /// </summary>
        private void LoginAccess(string password)
        {
            try
            {
                Error = "";
                if (_login != "" && password != "")
                {
                    var suc = new ServiceUser.ServiceUserClient();

                    if (suc.Connect(_login, password))
                    {
                        _user = suc.GetUser(_login);

                        var window = new View.MasterView();
                        var vm = new MasterViewModel();
                        window.DataContext = vm;
                        window.Show();

                        CloseSignal = true;
                    }
                    else
                    {
                        Error = "Erreur d'authentification, vérifiez que vous avez bien entré les bons identifiants.";
                    }
                }
                else
                {
                    Error = "Vous devez entrer un login et un mot de passe pour vous connecter.";
                }
            }
            catch (Exception ex)
            {
                Error = ex.Message;
            }
        }
Ejemplo n.º 14
0
 private NavigationMessenger()
 {
     _transitCreatedUser = new ServiceUser.User();
     _isRWAccount = false;
 }
Ejemplo n.º 15
0
 public Task <bool> AddUserAsync(ServiceUser.User user)
 {
     return(_client.AddUserAsync(user));
 }
Ejemplo n.º 16
0
 public bool AddUser(ServiceUser.User user)
 {
     return(_client.AddUser(user));
 }
Ejemplo n.º 17
0
        /// <summary>
        /// La creation de compte va appeller un webservice dans un 
        /// BackgroundWorker pour laisser l'UI disponible
        /// </summary>
        private void CreateAccount()
        {
            BackgroundWorker worker = new BackgroundWorker();

            ServiceUser.User newUser = new ServiceUser.User();

            newUser.Name = _name;
            newUser.Firstname = _firstname;
            newUser.Connected = false;
            newUser.Picture = _imagebyte;
            newUser.Login = _login;
            newUser.Pwd = _password;
            newUser.Role = _role;

            worker.DoWork += new DoWorkEventHandler((object s, DoWorkEventArgs e) =>
            {
                ServiceUser.ServiceUserClient serviceUser = new ServiceUser.ServiceUserClient();

                Debug.WriteLine("DEBUT");
                _iscreatingaccount = true;

                BackgroundWorker bg = s as BackgroundWorker;
                e.Result = serviceUser.AddUser(newUser);
            });

            // TODO penser a mettre un comportement en fonction des differents cas notamment en cas de fail
            worker.RunWorkerCompleted += new RunWorkerCompletedEventHandler((object s, RunWorkerCompletedEventArgs e) =>
            {
                Debug.WriteLine("FIN");
                _iscreatingaccount = false;
                WaitingMessage = "";

                if (e.Cancelled) {
                    Debug.WriteLine("CANCELLED");
                    WaitingMessage = "L'opération a été annulée.";
                }
                if (e.Error != null) {
                    Debug.WriteLine("ERROR");
                    WaitingMessage = "Erreur lors de la création : " + e.Error.Message;
                }
                bool? res = e.Result as bool?;

                if (res == null)
                {
                    Debug.WriteLine("ERREUR COTE SERVEUR");
                    WaitingMessage = "Erreur côté serveur lors de la création. Veuillez recommencer";
                }
                if (res == true)
                {
                    /// Juste avant de creer la page de confirmation il faut
                    /// enregister les informations dans le NavigationMessenger
                    NavigationMessenger.GetInstance().TransitCreatedUser = newUser;
                    WaitingMessage = "Création réussie";

                    View.CreateUserSuccessView window = new View.CreateUserSuccessView();
                    ViewModel.CreateUserSuccessViewModel vm = new CreateUserSuccessViewModel(window);
                    window.DataContext = vm;

                    _ns = NavigationService.GetNavigationService(_linkedView);
                    _ns.Navigate(window);
                    WaitingMessage = "";
                }
                else {
                    Debug.WriteLine("ECHEC DE L'INSCRIPTION");
                    WaitingMessage = "L'inscription a échoué. Veuillez recommencer.";
                }
            });

            worker.RunWorkerAsync();
            WaitingMessage = "Création du compte";
        }
Ejemplo n.º 18
0
        private void Connecting()
        {
            bool isValid = false;
            //Call service

            if (!string.IsNullOrEmpty(LoginInput) && !string.IsNullOrEmpty(PasswordInput))
            {
                ServiceUser.ServiceUserClient clientService = new ServiceUser.ServiceUserClient();
                    try
                    {
                        isValid = clientService.Connect(_loginInput, _passwordInput);
                        if (isValid)
                        {
                            ServiceUser.User user = new ServiceUser.User();
                            user = clientService.GetUser(this._loginInput);
                            View.MainWindow mainwindow = (View.MainWindow)Application.Current.MainWindow;
                            ViewModel.MainWindow mainwindowVM = (ViewModel.MainWindow)mainwindow.DataContext;
                            mainwindowVM.MenuIsActive = true;
                            mainwindowVM.FadeOut = false;
                            mainwindowVM.ConnectedUser = new Model.User
                            {
                                Firstname = user.Firstname,
                                Name = user.Firstname,
                                Login = user.Login,
                                Password = user.Pwd,
                                Pic = user.Picture,
                                Role = user.Role,
                                Connected = true,
                                Co = true,
                                ExtensionData = user.ExtensionData
                            };
                            mainwindowVM.UserIdentity = user.Name + " " + user.Firstname;
                            View.Patients view = new View.Patients();
                            ViewModel.PatientsViewModel vm = new colle_tMedecine.ViewModel.PatientsViewModel();
                            view.DataContext = vm;
                            mainwindow.contentcontrol.Content = view;
                        }
                        else
                        {
                            ErrorMessage = "Identifiant ou mot de passe incorrect";
                            ShowConnectError = 1;
                            ShowConnectError = 0;
                        }
                    }
                    catch (Exception e)
                    {
                        ErrorMessage = "La connexion a échouée, réessayez plus tard";
                        ShowConnectError = 1;
                        ShowConnectError = 0;
                    }
            }
            else
            {
                ErrorMessage = "Identifiant ou mot de passe manquant";
                ShowConnectError = 1;
                ShowConnectError = 0;
            }
        }