示例#1
0
        private void ChangePermission(GridViewRow r, bool webPermission)
        {
            try
            {
                UserPermission userper = UserPermission.GetUserPermission(r.Cells[0].Text);
                if (userper == null)
                {
                    userper = new UserPermission();
                }
                userper.CompanyId = int.Parse(GetCompany());
                if (webPermission == true)
                {
                    DropDownList cbx = new DropDownList();
                    cbx = (DropDownList)r.Cells[0].FindControl("cbxPermission");
                    if (cbx.SelectedValue == string.Empty)
                    {
                        userper.WebPermission = null;
                    }
                    else
                    {
                        userper.WebPermission = cbx.SelectedItem.Value;
                    }
                }
                else
                {
                    CheckBox cbx = new CheckBox();
                    cbx = (CheckBox)r.Cells[0].FindControl("cboAppPermission");
                    userper.AppPermission = cbx.Checked;
                }

                if (userper.Username == null)
                {
                    userper.Username      = r.Cells[0].Text;
                    userper.CreateAccount = this.User.Identity.Name;
                    userper.Insert();
                }
                else
                {
                    userper.ModifiedAccount = this.User.Identity.Name;
                    userper.Update();
                }
                Search();
            }
            catch (Exception ex)
            {
                logger.Error("Error ChangePermission ", ex);
                ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", "alert(\"" + GetJSMessage(GetResource("Title_Error"), ex.Message) + "\");", true);
            }
        }
示例#2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            HttpCookie cookie = Request.Cookies["CurrentLanguage"];

            if (!IsPostBack && cookie != null && cookie.Value != null)
            {
                if (cookie.Value.IndexOf("en-") >= 0)
                {
                    imgBtnEn.Enabled = false;
                    imgBtnJp.Enabled = true;
                }
                else
                {
                    imgBtnEn.Enabled = true;
                    imgBtnJp.Enabled = false;
                }
            }

            HttpCookie cookie1 = Request.Cookies["CurrentLanguage"];

            if (cookie1 != null && cookie1.Value != null)
            {
                Page.UICulture = cookie1.Value;
            }
            imgBanner.ImageUrl = "~/Images/banner.jpg";
            Initialize();
            InitializeLinkTitle();

            if (HttpContext.Current.User.Identity.IsAuthenticated)
            {
                lblUserName.Visible    = true;
                lblUserName.Text       = HttpContext.Current.User.Identity.Name;
                lBtnLogout.Visible     = true;
                lBtnLogin.Visible      = false;
                panelMenuAbout.Visible = panelHome.Visible = true;

                bool   IsSystemAccount  = Common.isAdminAccount(HttpContext.Current.User.Identity.Name);
                string strWebPermission = "";
                if (!IsSystemAccount)
                {
                    UserPermission objPermission = UserPermission.GetUserPermission(HttpContext.Current.User.Identity.Name);
                    if (objPermission != null)
                    {
                        strWebPermission = objPermission.WebPermission;

                        string page = Path.GetFileNameWithoutExtension(Request.Path).ToLower();
                        if (page != "default" && page != "login" && page != "accessdenied")
                        {
                            if (string.IsNullOrEmpty(strWebPermission) || strWebPermission == Constant.PERMISSION_MEMBER)
                            {
                                if (page == "register" || page == "manageuser" || page == "mstcompany")
                                {
                                    Response.Redirect("~/accessdenied.aspx");
                                }
                            }
                            else if (strWebPermission == Constant.PERMISSION_CHIEF)
                            {
                                if (page == "mstcompany")
                                {
                                    Response.Redirect("~/accessdenied.aspx");
                                }
                            }
                        }
                    }
                }
                if (IsSystemAccount || strWebPermission == Constant.PERMISSION_CHIEF)
                {
                    panelMenuWorkZone.Visible    = panelMenuMaster.Visible = panelMenuUser.Visible = true;
                    panelRegisterCompany.Visible = false;
                    if (IsSystemAccount)
                    {
                        panelRegisterCompany.Visible = true;
                    }
                    else if (cboCompanyName.Items.Count == 0) //remove company
                    {
                        panelMenuWorkZone.Visible = panelMenuMaster.Visible = panelMenuUser.Visible = false;
                    }
                }
                else if (strWebPermission == Constant.PERMISSION_MEMBER)
                {
                    panelMenuWorkZone.Visible = panelMenuMaster.Visible = true;
                    panelMenuUser.Visible     = false;
                    if (cboCompanyName.Items.Count == 0) //remove company
                    {
                        panelMenuWorkZone.Visible = panelMenuMaster.Visible = false;
                    }
                }
                else
                {
                    panelMenuWorkZone.Visible = panelMenuMaster.Visible = panelMenuUser.Visible = false;
                }
            }
            else
            {
                lblUserName.Text    = string.Empty;
                lblUserName.Visible = false;
                lBtnLogout.Visible  = false;
                lBtnLogin.Visible   = true;
                panelHome.Visible   = panelMenuWorkZone.Visible = panelMenuMaster.Visible = panelMenuUser.Visible = panelMenuAbout.Visible = false;
            }
        }
示例#3
0
        private void Search()
        {
            try
            {
                int companyCode = int.Parse(GetCompany());

                List <MembershipUser> listUser = new List <MembershipUser>();


                List <UserPermission> listAllPermisson = UserPermission.GetAll();

                foreach (MembershipUser m in Membership.GetAllUsers())
                {
                    if (Common.isAdminAccount(m.UserName))
                    {
                        continue;
                    }
                    UserPermission findUser = listAllPermisson.FirstOrDefault(p => p.Username == m.UserName);
                    if (findUser == null || findUser.CompanyId == companyCode)
                    {
                        listUser.Add(m);
                    }
                }
                listUser = listUser.Where(l => (l.UserName.Contains(txtUserName.Text))).ToList();
                List <MembershipUser> onlineUser = new List <MembershipUser>();
                foreach (MembershipUser u in listUser)
                {
                    if (u.IsOnline)
                    {
                        onlineUser.Add(u);
                    }
                }

                if (cbxOnlineUser.Checked)
                {
                    if (onlineUser.Count == 0)
                    {
                        lblNoRecord.Visible = true;
                        DataTable dt = new DataTable();
                        dt.Columns.Add("UserName");
                        dt.Columns.Add("Email");
                        dt.Columns.Add("IsApproved");
                        DataRow r = dt.NewRow();
                        r["UserName"]   = string.Empty;
                        r["Email"]      = string.Empty;
                        r["IsApproved"] = true;
                        dt.Rows.Add(r);
                        grvUser.DataSource = dt;
                        grvUser.DataBind();
                        grvUser.Rows[0].Visible = false;
                    }
                    else
                    {
                        lblNoRecord.Visible = false;
                        grvUser.DataSource  = onlineUser;
                        grvUser.DataBind();
                    }
                }
                else
                {
                    if (listUser.Count == 0)
                    {
                        lblNoRecord.Visible = true;
                        DataTable dt = new DataTable();
                        dt.Columns.Add("UserName");
                        dt.Columns.Add("Email");
                        dt.Columns.Add("IsApproved");
                        DataRow r = dt.NewRow();
                        r["UserName"]   = string.Empty;
                        r["Email"]      = string.Empty;
                        r["IsApproved"] = true;
                        dt.Rows.Add(r);

                        grvUser.DataSource = dt;
                        grvUser.DataBind();
                        grvUser.Rows[0].Visible = false;
                    }
                    else
                    {
                        lblNoRecord.Visible = false;
                        grvUser.DataSource  = listUser;
                        grvUser.DataBind();
                    }
                }


                LinkButton lBtn          = new LinkButton();
                LinkButton lBtnResetPass = new LinkButton();
                foreach (GridViewRow r in grvUser.Rows)
                {
                    lBtn          = (LinkButton)r.Cells[3].FindControl("lBtnLockUnLock");
                    lBtnResetPass = (LinkButton)r.Cells[4].FindControl("lBtnResetPassword");

                    if (r.Cells[2].Text == "False")
                    {
                        r.Cells[2].Text = string.Empty;
                        lBtn.Text       = GetResource("Approve");
                    }
                    else
                    {
                        r.Cells[2].Text = "√";
                        lBtn.Text       = GetResource("Disapprove");
                    }
                    if (r.Cells[0].Text == this.User.Identity.Name)
                    {
                        lBtn.Visible = false;
                    }

                    lBtnResetPass.Text = GetResource("ResetPassword");

                    lBtn.Attributes["onclick"]          = "javascript:return confirm('" + string.Format(GetResource("msDisapproveAccount"), lBtn.Text, Common.GetRowString(r.Cells[0].Text)) + "');";
                    lBtnResetPass.Attributes["onclick"] = "javascript:return confirm('" + string.Format(GetResource("msResetPassword"), Common.GetRowString(r.Cells[0].Text)) + "');";


                    UserPermission user = UserPermission.GetUserPermission(r.Cells[0].Text);
                    if (user != null)
                    {
                        DropDownList cbx = (DropDownList)r.Cells[5].FindControl("cbxPermission");
                        if (!string.IsNullOrEmpty(user.WebPermission))
                        {
                            cbx.SelectedValue = user.WebPermission;
                        }
                        else
                        {
                            cbx.SelectedIndex = 0;
                        }

                        CheckBox chkApp = (CheckBox)r.Cells[6].FindControl("cboAppPermission");
                        chkApp.Checked = user.AppPermission;
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error("Error Search", ex);
                ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", "alert(\"" + GetJSMessage(GetResource("Title_Error"), ex.Message) + "\");", true);
            }
        }