Ejemplo n.º 1
0
        /*
         * Metod för att lägga till moderatorsbehörigheter.
         * Metodens inparameter är det Id som tillhör den specifika användare som ska tilldelas moderatorsbehörigheter.
         */
        public ActionResult AddPermission(int id)
        {
            Models.AdminModel sessionObjekt = (Models.AdminModel)Session["admin"];

            if (Session["admin"] == null)
            {
                return(RedirectToAction("LoginPage", "Login"));
            }
            else
            {
                ViewBag.Username = "******" + sessionObjekt.username;
            }
            try
            {
                // Anrop till webservicen
                LoginService.LoginServiceClient client = new LoginService.LoginServiceClient();
                if (client.AssignModeratorRole(id) == true)
                {
                    // Anrop till webservicens metod för att tilldela moderatorsbehörigheter, där vi skickar med den specifika användarens Id
                    client.AssignModeratorRole(id);
                }
                // När behörigheten är tilldelad, återvänd till sidan som visar alla aktiva användare
                return(RedirectToAction("ActiveUsers"));
            }
            catch (Exception ex)
            {
                return(View("Error", new HandleErrorInfo(ex, "Home", "ActiveUsers")));
            }
        }
Ejemplo n.º 2
0
        // Metod för att visa alla flaggade ärenden
        public ActionResult FlaggedErrands()
        {
            Models.AdminModel sessionObjekt = (Models.AdminModel)Session["admin"];

            if (Session["admin"] == null)
            {
                return(RedirectToAction("LoginPage", "Login"));
            }
            else
            {
                ViewBag.Username = "******" + sessionObjekt.username;
            }
            try
            {
                // Anrop till webservicen
                // Om flaggade ärenden kan hittas
                LoginService.LoginServiceClient client = new LoginService.LoginServiceClient();
                if (client.GetFlaggedUsers() != null)
                {
                    // Anrop till webservicens metod för att visa alla flaggade ärenden
                    return(View(client.GetFlaggedUsers()));
                }
                // Om flaggade ärenden inte kan hittas, skriv ut ett felmeddelande
                else
                {
                    ModelState.AddModelError("Felmeddelande", "Inga flaggade användare just nu.");
                    return(View());
                }
            }
            catch (Exception ex)
            {
                return(View("Error", new HandleErrorInfo(ex, "Home", "ActiveUsers")));
            }
        }
Ejemplo n.º 3
0
        /*
         * Metod för att radera moderatorsbehörigheter.
         * Metodens inparameter är ID:t som tillhör den specifika användare vars behörighet ska raderas.
         */
        public ActionResult DeletePermission(int id)
        {
            Models.AdminModel sessionObjekt = (Models.AdminModel)Session["admin"];

            if (Session["admin"] == null)
            {
                return(RedirectToAction("LoginPage", "Login"));
            }
            else
            {
                ViewBag.Username = "******" + sessionObjekt.username;
            }
            try
            {
                // Anrop till webservicen
                LoginService.LoginServiceClient client = new LoginService.LoginServiceClient();
                if (client.AssignUserRole(id) == true)
                {
                    // Här ropas på webserivcens metod för att ta bort moderator behörigheter och göra användaren till en vanlig användare
                    client.AssignUserRole(id);
                    // När behörigheten är raderad, återvänd till sidan som visar alla moderatorer
                    return(RedirectToAction("Moderators"));
                }
                else
                {
                    ModelState.AddModelError("Felmeddelande", "Användaren har ingen moderator behörighet");
                    return(View());
                }
            }
            catch (Exception ex)
            {
                return(View("Error", new HandleErrorInfo(ex, "Home", "ActiveUsers")));
            }
        }
Ejemplo n.º 4
0
 private void UpdateUserRequest(NewUserRequests user)
 {
     LoginService.LoginServiceClient _Client = new LoginService.LoginServiceClient();
     _Client.UpdateNewUsersRequestCompleted += _Client_UpdateNewUsersRequestCompleted;
     _Client.UpdateNewUsersRequestAsync(user);
     // ShowMessage(user.Rejected == "1" ? "1" : "2");
 }
Ejemplo n.º 5
0
        private void _client_ChangePasswordCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
        {
            var client = new LoginService.LoginServiceClient();

            client.AuthenticateCompleted += _client_AuthenticateCompleted;
            client.AuthenticateAsync(UserNameTextBox.Text.Trim(), txtPassword.Password, txtCompany.Text.Trim());
        }
Ejemplo n.º 6
0
        // Metod för att ta bort flaggan från en användare, tar den specifika användarens Id som inparameter
        public ActionResult Unflag(int id)
        {
            Models.AdminModel sessionObjekt = (Models.AdminModel)Session["admin"];

            if (Session["admin"] == null)
            {
                return(RedirectToAction("LoginPage", "Login"));
            }
            else
            {
                ViewBag.Username = "******" + sessionObjekt.username;
            }
            try
            {
                // Anrop till webservicen
                LoginService.LoginServiceClient client = new LoginService.LoginServiceClient();

                // Anrop till webservicens metod för att ta bort flaggan från en användare, här skickar vi med Id:t för den specifika användaren
                client.UnflagUser(id);
                // När operationen är klar, återvänd till sidan som visar alla aktiva användare
                return(RedirectToAction("ActiveUsers"));
            }
            catch (Exception ex)
            {
                return(View("Error", new HandleErrorInfo(ex, "Home", "ActiveUsers")));
            }
        }
Ejemplo n.º 7
0
        /*
         * Metod för att bekräfta radering av en användare, här utförs således den faktiska raderingen.
         * Metoden tar den specifika användarens Id som inparamter.
         */
        public ActionResult ConfirmBlock(Models.ViewModel viewModel)
        {
            Models.AdminModel sessionObjekt = (Models.AdminModel)Session["admin"];

            if (Session["admin"] == null)
            {
                return(RedirectToAction("LoginPage", "Login"));
            }
            else
            {
                ViewBag.Username = "******" + sessionObjekt.username;
            }
            try
            {
                LoginService.LoginServiceClient client = new LoginService.LoginServiceClient();

                // Anrop till webservicen
                // Anrop till webservicens metod för att radera en användare, där vi skickar me med den specifika användarens Id
                client.BlockUser(viewModel.userID, sessionObjekt.ID, viewModel.reason, viewModel.dateTo);
                // När raderingen slutförs, återvänd till sidan som visar alla aktiva användare
                ModelState.AddModelError("Felmeddelande", "Konto raderat!");
                return(RedirectToAction("ActiveUsers"));
            }
            catch (Exception ex)
            {
                return(View("Error", new HandleErrorInfo(ex, "Home", "ActiveUsers")));
            }
        }
Ejemplo n.º 8
0
        public ActionResult AdminProfile(int id)
        {
            Models.AdminModel sessionObjekt = (Models.AdminModel)Session["admin"];

            if (Session["admin"] == null)
            {
                return(RedirectToAction("LoginPage", "Login"));
            }
            else
            {
                ViewBag.Username = "******" + sessionObjekt.username;
            }
            try
            {
                // Anrop till webservicen
                LoginService.LoginServiceClient client = new LoginService.LoginServiceClient();

                if (client.GetAdminById(id) != null)
                {
                    // Vy som använder sig av en metod från webservicen för att hitta en specifik användare
                    return(View(client.GetAdminById(id)));
                }
                else
                {
                    ModelState.AddModelError("Felmeddelande", "Ingen profil kan visas.");
                    return(View());
                }
            }
            catch (Exception ex)
            {
                return(View("Error", new HandleErrorInfo(ex, "Home", "ActiveUsers")));
            }
        }
Ejemplo n.º 9
0
        public ActionResult Index()
        {
            Models.AdminModel sessionObjekt = (Models.AdminModel)Session["admin"];
            // Om admin ej är inloggad, gå till inloggningssidan

            if (Session["admin"] == null)
            {
                return(RedirectToAction("LoginPage", "Login"));
            }
            else
            {
                ViewBag.Username = "******" + sessionObjekt.username;
            }
            try
            {
                LoginService.LoginServiceClient client = new LoginService.LoginServiceClient();

                int ActiveRow  = client.CountActiveUsers();
                int FlaggedRow = client.CountFlaggedUsers();
                int BlockedRow = client.CountBlockedUsers();

                Models.StatisticModel statisticModel = new Models.StatisticModel();

                statisticModel.ActiveRow  = ActiveRow;
                statisticModel.BlockedRow = BlockedRow;
                statisticModel.FlaggedRow = FlaggedRow;


                return(View(statisticModel));
            }
            catch (Exception ex)
            {
                return(View("Error", new HandleErrorInfo(ex, "Home", "ActiveUsers")));
            }
        }
Ejemplo n.º 10
0
 // Metod för att visa aktiva användare
 public ActionResult ActiveUsers()
 {
     Models.AdminModel sessionObjekt = (Models.AdminModel)Session["admin"];
     if (Session["admin"] == null)
     {
         return(RedirectToAction("LoginPage", "Login"));
     }
     else
     {
         ViewBag.Username = "******" + sessionObjekt.username;
     }
     try
     {
         // Anrop till webservicen
         LoginService.LoginServiceClient client = new LoginService.LoginServiceClient();
         if (client.GetActiveUsers() != null)
         {
             // Anrop till servicens metod för att visa alla aktiva användare
             return(View(client.GetActiveUsers()));
         }
         else
         {
             ModelState.AddModelError("Felmeddelande", "Det verkar inte finnas några aktiva användare just nu.");
             return(View());
         }
     }
     catch (Exception ex)
     {
         return(View("Error", new HandleErrorInfo(ex, "Home", "ActiveUsers")));
     }
 }
Ejemplo n.º 11
0
        private void OKButton_Click(object sender, RoutedEventArgs e)
        {
            LgnProgress.Visibility = Visibility.Visible;
            OkButton.IsEnabled     = false;

            var client = new LoginService.LoginServiceClient();

            client.AuthenticateLoginExpirationCompleted += _client_AuthenticateLoginExpirationCompleted;
            client.AuthenticateLoginExpirationAsync(UserNameTextBox.Text.Trim(), PasswordTextBox.Password, txtCompany.Text.Trim());
        }
Ejemplo n.º 12
0
        private void btnSave_Click(object sender, RoutedEventArgs e)
        {
            lblSaveMessage.Content    = "";
            lblSaveMessage.Visibility = Visibility.Collapsed;

            string LikeEmpid   = ViewModel.SelectedMainRow.EmpPerRow.Emplid;
            string NewEmpid    = ViewModel.SelectedMainRow.SecondEmpPerRow.Emplid;
            bool   IsValidUser = true;

            try
            {
                lblUserNameMessage.Visibility = Visibility.Collapsed;
                if (string.IsNullOrEmpty(LikeEmpid))
                {
                    IsValidUser = false;
                    lblLikeEmployeeUserMessage.Visibility = Visibility.Visible;
                    lblLikeEmployeeUserMessage.Content    = "Please select Employee";
                }
                if (string.IsNullOrEmpty(NewEmpid))
                {
                    IsValidUser = false;
                    lblNewEmployeeUserMessage.Visibility = Visibility.Visible;
                    lblNewEmployeeUserMessage.Content    = "Please select Employee";
                }
                if (string.IsNullOrEmpty(radCompany.SelectedValue.ToString()))
                {
                    IsValidUser = false;
                    lblCompanyMessage.Visibility = Visibility.Visible;
                    lblCompanyMessage.Content    = "Please select Company";
                }
                if (IsValidUserName == false)
                {
                    IsValidUser = false;
                    lblUserNameMessage.Visibility = Visibility.Visible;
                    lblUserNameMessage.Content    = "*";
                }
                if (IsValidUser)
                {
                    LoginService.LoginServiceClient _client = new LoginService.LoginServiceClient();
                    _client.SaveNewUserRequestCompleted += _client_SaveNewUserRequestCompleted;
                    _client.SaveNewUserRequestAsync(NewEmpid,
                                                    radCompany.SelectedValue.ToString(),
                                                    LikeEmpid,
                                                    radCompany.SelectedValue.ToString(),
                                                    chkIsSalesPerson.IsChecked == true ? "1" : "0",
                                                    chkIsRetailPerson.IsChecked == true ? "1" : "0",
                                                    txtUserName.Text.Trim(),
                                                    txtReason.Text,
                                                    Helpers.AuthenticationHelpers.LoggedUserInfo.Iserial.ToString());
                }
            }
            catch { }
        }
Ejemplo n.º 13
0
        private static LoginResponse GetLoginToken(ServiceEntry serviceEntry)
        {
            Channel channel       = new Channel($"{serviceEntry.Service.Address}:{serviceEntry.Service.Port}", ChannelCredentials.Insecure);
            var     client        = new LoginService.LoginServiceClient(channel);
            var     loginResponse = client.Login(new LoginRequest
            {
                Hid      = "000001",
                UserName = "******",
                Password = "******"
            });

            return(loginResponse);
        }
Ejemplo n.º 14
0
 public ActionResult Login(string Username, string Password)
 {
     //string Username = Request.Form["Username"];
     //string Password = Request.Form["Password"];
     LoginService.LoginServiceClient client = new LoginService.LoginServiceClient();
     if (client.AuthenticateUser(Username, Password))
     {
         Session["UserId"] = Username;
         return(RedirectToAction("Index", "Home"));
     }
     else
     {
         ViewData["Error"] = "Invalid Username/Credentials";
         return(View());
     }
 }
Ejemplo n.º 15
0
        public ActionResult LoginPage(string username, string password)
        {
// Anrop till webservicen
            LoginService.LoginServiceClient klient = new LoginService.LoginServiceClient();

/*
 * Variabel för att kolla om inloggningen är godkänd.
 * Variabelns värde är lika med ett anrop på Login-metoden i webservicen och vi skickar dessutom med användarnamn och lösenord vid anropet.
 */
            bool response = klient.AdminLogin(username, password);

            // Om inloggningen är godkänd, dvs att responce-variabeln är true
            if (response)

            {
                /*
                 * Här skapas ett objekt som tilldelas värdena av en användares Id, Email och användarnamn.
                 * Dessa data hämtas från webservicen.
                 */
                Models.AdminModel sessionObjekt = new Models.AdminModel();
                sessionObjekt.email    = klient.GetAdminByUsername(username).Email;
                sessionObjekt.ID       = klient.GetAdminByUsername(username).ID;
                sessionObjekt.username = klient.GetAdminByUsername(username).Username;
                // De olika värdena lagras i en array
                Session["admin"] = sessionObjekt;

                //  ViewBag.Username = "******" + sessionObjekt.username;

                // Flytta användaren från login-sidan
                System.Web.Security.FormsAuthentication.RedirectFromLoginPage(username, false);
                // När inloggningen är klar hamnar användaren på förstasidan, nu som inloggad admin
                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                // Om inloggningen inte gick så bra visas ett felmeddelande

                ModelState.AddModelError("Felmeddelande", "Inloggningen misslyckades");

                return(View());
            }

            // Session["Username"] = "******" + data;
        }
 public User validateUser(User user)
 {
     loginSvc = new LoginService.LoginServiceClient();
     LoginService.User objSvcUser = loginSvc.Login(user.UserName, user.Password);
     if (objSvcUser == null)
     {
         return(null);
     }
     else
     {
         return new User()
                {
                    UserID   = objSvcUser.UserID,
                    UserName = objSvcUser.UserName,
                    Password = objSvcUser.Password,
                    Role     = objSvcUser.Role
                }
     };
 }
Ejemplo n.º 17
0
        private void _client_AuthenticateLoginExpirationCompleted(object sender, AuthenticateLoginExpirationCompletedEventArgs e)
        {
            if (e.Result.ToString() == "0")
            {
                var client = new LoginService.LoginServiceClient();
                client.AuthenticateCompleted += _client_AuthenticateCompleted;
                client.AuthenticateAsync(UserNameTextBox.Text.Trim(), PasswordTextBox.Password, txtCompany.Text.Trim());
            }
            else if (e.Result.ToString().Contains("1,"))
            {
                string _UserSerial = e.Result.ToString().Split(',')[1].ToString();
                OkButton.IsEnabled = true;

                LoginRoot.Visibility         = Visibility.Collapsed;
                grdUpdatePassword.Visibility = Visibility.Visible;
                pnlName.Text = "Update Expired Password";

                LogedInUserSerial = int.Parse(_UserSerial);

                //var childWindow = new UpdatePassword(UserNameTextBox.Text.Trim(),UserSerial);
                //childWindow.Show();
            }
            else if (e.Result.ToString() == "InvalidComapny")
            {
                MessagesTextBlock.Text = "Invalid Company Name!";
                LgnProgress.Visibility = Visibility.Collapsed;
                OkButton.IsEnabled     = true;
            }
            else if (e.Result.ToString() == "multiUsers")
            {
                MessagesTextBlock.Text = "Please Enter Company Name!";
                LgnProgress.Visibility = Visibility.Collapsed;
                OkButton.IsEnabled     = true;
            }
            else if (e.Result.ToString() == "2")
            {
                MessagesTextBlock.Text = "Incorrect User Name,Password or Company!";
                LgnProgress.Visibility = Visibility.Collapsed;
                OkButton.IsEnabled     = true;
            }
        }
Ejemplo n.º 18
0
        /*
         * Metod för att bekräfta radering av en användare, här utförs således den faktiska raderingen.
         * Metoden tar den specifika användarens Id som inparamter.
         */
        public ActionResult ConfirmDelete(int id)
        {
            Models.AdminModel sessionObjekt = (Models.AdminModel)Session["admin"];

            if (Session["admin"] == null)
            {
                return(RedirectToAction("LoginPage", "Login"));
            }
            else
            {
                ViewBag.Username = "******" + sessionObjekt.username;
            }
            try
            {
                UserService.UserProfileServiceClient client  = new UserService.UserProfileServiceClient();
                LoginService.LoginServiceClient      client2 = new LoginService.LoginServiceClient();

                if (client.UserIdExistsInProfile(id) == true)
                {
                    client.DeleteUser(id);
                    client2.DeleteUser(id);
                }

                else
                {
                    client2.DeleteUser(id);
                }

                // Anrop till webservicen
                // Anrop till webservicens metod för att radera en användare, där vi skickar me med den specifika användarens Id
                // När raderingen slutförs, återvänd till sidan som visar alla aktiva användare
                ModelState.AddModelError("Felmeddelande", "Konto raderat!");
                return(RedirectToAction("ActiveUsers"));
            }
            catch (Exception ex)
            {
                return(View("Error", new HandleErrorInfo(ex, "Home", "ActiveUsers")));
            }
        }
Ejemplo n.º 19
0
 private void LoadUserRequests()
 {
     LoginService.LoginServiceClient _Client = new LoginService.LoginServiceClient();
     _Client.GetAllNewUsersRequestCompleted += _Client_GetAllNewUsersRequestCompleted;
     _Client.GetAllNewUsersRequestAsync();
 }
Ejemplo n.º 20
0
        public static void InitiatePermissions(MainPage main, StackPanel panelButtons, LoginMainWindow loginMain, LoginChildWindow loginChildWindow)
        {
            WFM_UserJobPermissions = new List <TblAuthJobPermission>();
            //var client = new CRUD_ManagerServiceClient();
            var client = new LoginService.LoginServiceClient();

            client.GetItemsPermissionsByParentCompleted += (s, e) =>
            {
                var temp = (from z in e.Result
                            where (from x in WFM_UserJobPermissions
                                   select x.TblPermission).Contains(z.Iserial)
                            select z).ToList();

                if (temp.Any(x => x.Code == "Brandsales"))
                {
                    main.Brandsales.Visibility        = Visibility.Visible;
                    main.BrandSalesControl.Visibility = Visibility.Visible;
                    main.BrandSalesBorder.Visibility  = Visibility.Visible;
                    main.TodaySales.Visibility        = Visibility.Visible;
                }

                if (temp.Any(x => x.Code == "BrandPercentage"))
                {
                    main.BrandPercentage.Visibility        = Visibility.Visible;
                    main.BrandPercentageControl.Visibility = Visibility.Visible;
                    main.BrandPercentageBorder.Visibility  = Visibility.Visible;
                    main.TodaySales.Visibility             = Visibility.Visible;
                }

                if (temp.Any(x => x.Code == "BrandRatio"))
                {
                    main.BrandRatio.Visibility        = Visibility.Visible;
                    main.BrandRatioControl.Visibility = Visibility.Visible;
                    main.BrandRatioBorder.Visibility  = Visibility.Visible;
                    main.TodaySales.Visibility        = Visibility.Visible;
                }

                if (temp.Any(x => x.Code == "BrandMargin"))
                {
                    main.GrossMarginChart.Visibility   = Visibility.Visible;
                    main.BrandMarginControl.Visibility = Visibility.Visible;
                    main.BrandMarginBorder.Visibility  = Visibility.Visible;
                    main.GlDashBoard.Visibility        = Visibility.Visible;
                }
            };

            client.GetUserJobAsync((int)WFM_UserID, WFM_UserName);
            client.GetUserJobCompleted += (s, ev) =>
            {
                WFM_UserJob = ev.Result;

                client.GetUserJobPermissionsAsync((int)WFM_UserJob);

                client.GetUserJobPermissionsCompleted += (s2, ev2) =>
                {
                    WFM_UserJobPermissions.AddRange(ev2.Result.ToList());
                    client.GetItemsPermissionsByParentAsync("Charts");
                    client.GetUserMenuesPermissionsAsync((int)WFM_UserJob);

                    client.GetUserMenuesPermissionsCompleted += (s3, ev3) =>
                    {
                        WFM_MenuesPermissions = new ObservableCollection <TblAuthPermission>(ev3.Result);
                        foreach (var variable in panelButtons.Children)
                        {
                            var btn = variable as Button;
                            if (!WFM_MenuesPermissions.Any(x => x.Code == btn.Name))
                            {
                                btn.Visibility = Visibility.Collapsed;
                            }
                            else
                            {
                                string toolTip = "";
                                if (CurrLang == 0)
                                {
                                    toolTip = WFM_MenuesPermissions.FirstOrDefault(x => x.Code == btn.Name).Aname;
                                }
                                else
                                {
                                    toolTip = WFM_MenuesPermissions.FirstOrDefault(x => x.Code == btn.Name).Ename;
                                }

                                btn.Visibility = Visibility.Visible;
                                ToolTipService.SetToolTip(btn, toolTip);
                            }
                        }

                        var aa = new MenuTestViewModel();
                        if (main.AppMenu.MenuItem != null)
                        {
                            main.AppMenu.MenuItem.Clear();
                            main.AppMenu.MenuItem.MenuItems.Clear();
                        }
                        main.DataContext = aa;

                        //if (menuCollection != null) InitiateMenusPermissions(menuCollection);
                        client.CloseAsync();
                        loginMain.Content             = main;
                        loginChildWindow.DialogResult = true;
                    };
                };
            };
        }