Exemple #1
0
        protected void rgPersonnel_ItemCommand(object sender, GridCommandEventArgs e)
        {
            GridEditableItem item = e.Item as GridEditableItem;

            if (e.CommandName == "ValidateUser")
            {
                Panel      pnlInsert1 = (Panel)item.FindControl("pnlInsert1");
                Panel      pnlInsert2 = (Panel)item.FindControl("pnlInsert2");
                RadTextBox rtbUserID2 = (RadTextBox)item.FindControl("rtbUserID2");
                RadTextBox rtbFirstNm = (RadTextBox)item.FindControl("rtbFirstNm2");
                RadTextBox rtbLastNm  = (RadTextBox)item.FindControl("rtbLastNm2");
                RadTextBox rtbUserID3 = (RadTextBox)item.FindControl("rtbUserID3");

                var currUser = db.Employees.FirstOrDefault(p => p.user_id == rtbUserID2.Text);

                if (currUser != null)
                {
                    DisplayMessage(true, "This user is already in the SIMS database. If the user you are trying to add is moving from a different WSC, their PrimaryOU information in Active Directory must first be changed. Then, an email should be sent to GS-W Help SIMS for help with adding them to your WSC's personnel list.");
                    pnlInsert1.Visible = true;
                    pnlInsert2.Visible = false;
                    rtbUserID2.Text    = "";
                }
                else
                {
                    var ADuser = db.spz_GetUserInfoFromAD(rtbUserID2.Text).Select(p => new Data.ADUserInfo {
                        primaryOU = p.primaryOU, SN = p.SN, givenName = p.givenName
                    }).FirstOrDefault();
                    if (ADuser != null)
                    {
                        var currUserWSC = db.spz_GetUserWSCID(ADuser.primaryOU).FirstOrDefault();
                        if (currUserWSC.wsc_id != WSCID)
                        {
                            DisplayMessage(true, "This user belongs to another WSC. Please contact GS-W Help [email protected] for assistance.");
                            pnlInsert1.Visible = true;
                            pnlInsert2.Visible = false;
                            rtbUserID2.Text    = "";
                        }
                        else
                        {
                            rtbFirstNm.Text = ADuser.givenName;
                            rtbLastNm.Text  = ADuser.SN;
                            rtbUserID3.Text = rtbUserID2.Text;

                            pnlInsert1.Visible = false;
                            pnlInsert2.Visible = true;
                        }
                    }
                    else
                    {
                        DisplayMessage(true, "This user is not authorized. Please confirm that you are entering the user's Active Directory user ID, and not their email alias.");
                        pnlInsert1.Visible = true;
                        pnlInsert2.Visible = false;
                        rtbUserID2.Text    = "";
                    }
                }
            }
        }