public void Init()
        {
            IdentityHelper ihelper  = IdentityHelper.GetInstance();
            string         userName = "******";
            AppUser        user     = new AppUser
            {
                AccountName = userName,
                Name        = "James",
                Mobile      = "1888888888",
                Email       = "*****@*****.**"
            };
            string password = "******";
            var    dbUser   = database.Users.SingleOrDefault(u => u.AccountName == userName);

            if (dbUser != null)
            {
                //等一下注释掉这一句
                database.Users.Remove(dbUser);
                database.SaveChanges();
            }
            IdentityResult result = ihelper.CreateUser(user, password, AppRoleEnum.OrgnizationMember, OrganizationEnum.SEA团队);

            testclaims = ihelper.CreateClaims(userName, password, userName);
            helper     = VolunteerHelper.GetInstance(testclaims);
        }
        public void CreateClaimsTest()
        {
            string  accountName = "~!@#$%^&*()_+-=1234567890qwertyuiop[]\\{}|asdfghjkl;':\"zxcvbnm,./<>?";
            AppUser dbUser      = database.Users.SingleOrDefault(u => u.AccountName == accountName);

            if (dbUser != null)
            {
                database.Users.Remove(dbUser);
                database.SaveChanges();
            }

            AppUser user = new AppUser
            {
                Name        = "张三李四·.",
                AccountName = accountName,
                Email       = "*****@*****.**",
                Mobile      = "18888888888"
            };
            string         password = "******"zxcvbnm,./<>?";
            IdentityResult result   = helper.CreateUser(user, password, AppRoleEnum.OrgnizationMember, OrganizationEnum.SEA团队);

            if (!result.Succeeded)
            {
                Assert.Inconclusive("CreateUser方法运行失败,本测试无法运行。");
            }

            AppUserIdentityClaims claims = helper.CreateClaims(user.AccountName, password);

            dbUser = database.Users.SingleOrDefault(u => u.AccountName == accountName);
            database.Users.Remove(dbUser);
            database.SaveChanges();
            Assert.IsTrue(claims.IsAuthenticated);
        }
Example #3
0
 public void sendClaimsEventHandler(AppUserIdentityClaims claims)
 {
     IsEnabled   = true;
     this.claims = claims;
     IdentityPage identitypage = IdentityPage.GetInstance(claims);
     //MessageBox.Show("收到令牌啦!");
 }
        public void EditVolunteerTest()
        {
            #region init
            IdentityHelper ihelper  = IdentityHelper.GetInstance();
            string         userName = "******";
            AppUser        user     = new AppUser
            {
                AccountName = userName,
                Name        = "James",
                Mobile      = "1888888888",
                Email       = "*****@*****.**"
            };
            string  password = "******";
            AppUser dbUser   = database.Users.SingleOrDefault(u => u.AccountName == userName);
            if (dbUser != null)
            {
                database.Users.Remove(dbUser);
                database.SaveChanges();
            }
            IdentityResult result1 = ihelper.CreateUser(user, password, AppRoleEnum.OrgnizationMember, OrganizationEnum.SEA团队);
            testclaims = ihelper.CreateClaims(userName, password, userName);
            helper     = VolunteerHelper.GetInstance(testclaims);
            #endregion
            #region 新建一个志愿者对象
            Volunteer v = new Volunteer
            {
                StudentNum = 0401,
                Name       = "EditTestName",
                Class      = "TestClass",
                Email      = "*****@*****.**",
                Room       = "testroom"
            };
            helper.AddVolunteer(v);
            #endregion

            #region 第一次修改
            v.Name = "ModifiedEditTestName";
            var tempvolunteer = helper.FindVolunteer(v.StudentNum);
            helper.EditVolunteer(tempvolunteer, v);//需要重建一个volunteer实体,因为实体v在加入数据库之后会自动更新链接到数据库中的条目。
            tempvolunteer = helper.FindVolunteer(v.StudentNum);
            if (!Volunteer.AreSame(v, tempvolunteer))
            {
                Assert.Fail("修改志愿者信息失败");
            }
            #endregion

            #region 第二次修改
            v.Name        = "EditByParamTestName";
            tempvolunteer = helper.FindVolunteer(v.StudentNum);
            helper.EditVolunteer(tempvolunteer, v.StudentNum, v.Name);
            tempvolunteer = helper.FindVolunteer(v.StudentNum);
            if (!Volunteer.AreSame(v, tempvolunteer))
            {
                Assert.Fail("第二次修改志愿者信息失败");
            }
            #endregion
            var result3 = helper.FindVolunteer(v.StudentNum);
            database.Volunteers.Remove(result3);//Remove
        }
 public static bool LogOut()
 {
     _claimsStored   = null;
     SendClaimsEvent = null;
     LogOutEvent?.Invoke();
     LogOutEvent = null;
     return(true);
 }
 public static IdentityPage GetInstance(AppUserIdentityClaims claims)
 {
     if (identitypage == null || identitypage.Claims == null)
     {
         identitypage = new IdentityPage(claims);
     }
     return(identitypage);
 }
 public Register(AppUserIdentityClaims claims = null, Login login = null)
 {
     identityhelper = IdentityHelper.GetInstance();
     loginWindow    = login;
     if (claims != null && claims.IsInRole(AppRoleEnum.Administrator))
     {
         isAdministrator = true;
     }
     InitializeComponent();
 }
Example #8
0
 public MainTab(AppUserIdentityClaims claims)
 {
     if (claims == null)
     {
         Login.GetClaims(sendClaimsEventHandler, logOutEventHandler);
         IsEnabled = false;
     }
     else
     {
         this.claims = claims;
     }
 }
Example #9
0
 public ChangePassWord(AppUserIdentityClaims Claim, Window owner)
 {
     if (Claim == null)
     {
         Login.GetClaims(sendClaimsEventHandler, logOutEventHandler);
         IsEnabled = false;
     }
     else
     {
         this.Claims = Claim;
         this.Owner  = owner;
     }
     InitializeComponent();
 }
Example #10
0
 public ProjectCreate()
 {
     Claims = basepage.Claims;
     helper = ProjectManageHelper.GetInstance();
     //Login.GetClaims(sendClaimsEventHandler);
     InitializeComponent();
     if (Claims.IsInRole(AppRoleEnum.Administrator) || Claims.IsInRole(AppRoleEnum.OrgnizationAdministrator))
     {
         this.IsEnabled = true;
     }
     else
     {
         this.IsEnabled = false;
     }
 }
 public UserInfo()
 {
     identitypage = IdentityPage.GetInstance();
     if (identitypage != null && identitypage?.Claims != null)
     {
         Claims = identitypage.Claims;
         if (identitypage.flag)
         {
             InitializeComponent();
             ShowUserMessage();
         }
         else
         {
             IsEnabled = false;
         }
     }
 }
        public void Init()
        {
            AppUser user     = CreateUser();
            string  password = "******";
            var     dbUser   = database.Users.SingleOrDefault(u => u.AccountName == user.AccountName);

            if (dbUser != null)
            {
                //等一下注释掉这一句
                database.Users.Remove(dbUser);
                database.SaveChanges();
            }
            IdentityResult result = identityhelper.CreateUser(user, password, Interface.AppRoleEnum.OrgnizationMember, OrganizationEnum.SEA团队);

            testclaims      = identityhelper.CreateClaims(user.AccountName, password);
            volunteerhelper = VolunteerHelper.GetInstance(testclaims);
        }
 public UserApproval()
 {
     InitializeComponent();
     Claims = identitypage.Claims;
     if (Claims.IsInRole(AppRoleEnum.Administrator))
     {
         addorganization_btn.Visibility = Visibility.Visible;
     }
     if (Claims.IsInRole(AppRoleEnum.Administrator) || Claims.IsInRole(AppRoleEnum.OrgnizationAdministrator))
     {
         this.IsEnabled            = true;
         approvallist              = helper.ShowNotApprovedMembers(Claims.User.Organization);
         approval_list.ItemsSource = approvallist;
     }
     else
     {
         this.IsEnabled = false;
     }
 }
 public ProjectInformation(AppUserIdentityClaims Claim, Project pro)
 {
     if (Claim == null)
     {
         Login.GetClaims(sendClaimsEventHandler, logOutEventHandler);
         IsEnabled = false;
     }
     else
     {
         this.Claims = Claim;
         Pro         = pro;
     }
     //VltConut = Pro.Volunteers.Count;
     InitializeComponent();
     Auth();
     ProInfoShow();
     ShowVltGrid();
     ShowMngGrid();
 }
        private async void login_btn_Click(object sender, RoutedEventArgs e)
        {
            if (userid.Text == "" || password.Password == "")
            {
                Tips_block.Visibility = Visibility.Visible;
            }
            else
            {
                if (_claimsStored != null && _claimsStored.IsAuthenticated == true)
                {
                    SendClaimsEvent?.Invoke(_claimsStored);
                    return;
                }
                IdentityHelper ih = IdentityHelper.GetInstance();
                if (userid.Text == "" || password.Password.ToString() == "")
                {
                }
                else
                {
                    var claims = await ih.CreateClaimsAsync(userid.Text, password.Password.ToString());//输入合法性验证

                    if (claims.IsAuthenticated && claims.User.Status == AppUserStatus.Enabled)
                    {
                        _claimsStored = claims;
                        SendClaimsEvent?.Invoke(claims);
                        Close();
                        ModernDialog.ShowMessage("登录成功", " ", MessageBoxButton.OK);
                    }
                    else if (claims.User != null && claims.User.Status == AppUserStatus.NotApproved)
                    {
                        ModernDialog.ShowMessage("已发送用户注册审批请求,请等待机构管理员审批", "注册成功", MessageBoxButton.OK);
                    }
                    else
                    {
                        Hide();
                        ModernDialog.ShowMessage("用户名或密码出错,或未通过管理员审批!", "登录失败", MessageBoxButton.OK);
                        Show();
                    }
                }
            }
        }
 public ProjectManage()
 {
     InitializeComponent();
     if (identitypage.Claims != null)
     {
         Claims = identitypage.Claims;
     }
     managehelper   = ProjectManageHelper.GetInstance();
     progresshelper = ProjectProgressHelper.GetInstance();
     if (managehelper.ShowProjectList(Claims.User.Organization, true) != null)
     {
         allprojectlist = managehelper.ShowProjectList(Claims.User.Organization, true);
     }
     allprojectlist.AddRange(managehelper.ShowProjectList(Claims.User.Organization, false));
     ShowList(StatusSwitch.SelectedIndex);
     if (Claims.Roles.Count() == 1 && Claims.IsInRole(AppRoleEnum.OrgnizationMember))
     {
         project_list.ItemsSource = progresshelper.FindAuthorizedProjectsByUser(Claims.User);
         StatusSwitch.IsEnabled   = false;
     }
 }
 public IdentityPage(AppUserIdentityClaims claims)
 {
     Claims = claims;
 }
 public void sendClaimsEventHandler(AppUserIdentityClaims claim)
 {
     IsEnabled   = true;
     this.Claims = claim;
     IdentityPage identitypage = IdentityPage.GetInstance(claim);
 }
 private void sendClaimsEventHandler(AppUserIdentityClaims claims)
 {
     this.Claims = claims;
 }
 public VolunteerData()
 {
     Claims = identitypage.Claims;
     InitializeComponent();
 }
 public void logOutEventHandler()
 {
     Claims = null;
     Close();
 }
Example #22
0
 public void logOutEventHandler()
 {
     claims = null;
 }