protected void btnSave_Click(object sender, EventArgs e)
    {
        if (ValidData())
        {
            UserObject user = new UserObject();
            user.Name.Value = tbName.Text;
            user.Password.Value = tbPassword.Text;
            user.LoginName.Value = tbLoginName.Text;
            user.IsActive.Value = cbActive.Checked;
            /*if (ddlClients.SelectedIndex > 0)
            {
                user.ClientId.Value = ddlClients.SelectedValue;
            }*/
            user.Answer.Value = tbAnswer.Text;
            user.SecretQuestionId.Value = SecretQuestions1.SecretQuestionId;
            user.ResetPassword.Value = cbResetPassword.Checked;
            /*if (ddlHospitals.SelectedIndex > 0)
            {
                user.HospitalId.Value = ddlHospitals.SelectedValue;
            }*/
            user.SendSMS.Value = cbSms.Checked;
            user.Mobile.Value = tbCellNumber.Text;
            if (ddlCarriers.SelectedValue != "0")
            {
                user.CarrierId.Value = ddlCarriers.SelectedValue;
            }

            user.Save(loggedInUserId);
            if (user.IsLoaded)
            {
                UserRoleObject userRole = new UserRoleObject();
                userRole.UserId.Value = user.UserId.Value;
                userRole.RoleId.Value = ddlRoles.SelectedValue;
                userRole.Save(loggedInUserId);
                UsersTableAdapters.tUsersTableAdapter userTA = new UsersTableAdapters.tUsersTableAdapter();
                userTA.AssignClientsToUser(int.Parse(user.UserId.Value.ToString()),loggedInUserId);
                /*
                UsersTableAdapters.tUsersTableAdapter userTA = new UsersTableAdapters.tUsersTableAdapter();
                if (user.HospitalId.Value != null)
                {
                    Nullable<int> userId = int.Parse(user.UserId.Value.ToString());
                    Nullable<int> hospitalId = int.Parse(user.HospitalId.Value.ToString());
                    userTA.AssignHospitalToUser(userId, hospitalId, false, loggedInUserId);
                }
                else
                {
                    userTA.AssignHospitalToUser((Nullable<int>)user.UserId.Value, null, false, loggedInUserId);
                }
                */
                Response.Redirect("~/Admin/AddUser.aspx?userId=" + user.UserId.Value);
            }

            SetInfoMessage("User saved successfully");
        }
    }
 private void BindRefPhy()
 {
     UsersTableAdapters.tUsersTableAdapter ta = new UsersTableAdapters.tUsersTableAdapter();
     ddlRef.DataSource = ta.GetUsersForHospital(int.Parse(ddlClient.SelectedValue), int.Parse(ddlHospital.SelectedValue), Constants.Roles.ReferringPhysician);
     ddlRef.DataTextField = "Name";
     ddlRef.DataValueField = "UserId";
     ddlRef.DataBind();
 }
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        if (ValidData())
        {
            UserObject user = new UserObject();
            user.UserId.Value = Request["userId"];
            user.Load(loggedInUserId);
            if (user.IsLoaded)
            {
                user.LoginName.Value = tbLoginName.Text;
                /*if(ddlClients.SelectedIndex > 0)
                {
                    user.ClientId.Value = ddlClients.SelectedValue;
                }
                else
                {
                    user.ClientId.Value = null;
                }*/

                /*if (ddlHospitals.SelectedIndex > 0)
                {
                    user.HospitalId.Value = ddlHospitals.SelectedValue;
                }
                else
                {
                    user.HospitalId.Value = null;
                }
                */
                user.Name.Value = tbName.Text;
                user.IsActive.Value = cbActive.Checked;
                if (pnlChangePassword.Visible == true)
                {
                    user.Password.Value = tbPassword.Text;
                }
                user.Answer.Value = tbAnswer.Text;
                user.SecretQuestionId.Value = SecretQuestions1.SecretQuestionId;
                user.ResetPassword.Value = cbResetPassword.Checked;
                user.SendSMS.Value = cbSms.Checked;
                user.Mobile.Value = tbCellNumber.Text;
                if (ddlCarriers.SelectedValue != "0")
                {
                    user.CarrierId.Value = ddlCarriers.SelectedValue;
                }
                user.Update(loggedInUserId);
                if (user.IsLoaded)
                {
                    UserRoleObject userRole = new UserRoleObject();
                    userRole.UserId.Value = user.UserId.Value;
                    userRole.Load(loggedInUserId);
                    if (userRole.IsLoaded)
                    {
                        userRole.RoleId.Value = ddlRoles.SelectedValue;
                        userRole.Update(loggedInUserId);
                    }

                    //this is not good. we should remove

                    UsersTableAdapters.tUsersTableAdapter userTA = new UsersTableAdapters.tUsersTableAdapter();
                    /*if (user.HospitalId.Value != null)
                    {
                        userTA.AssignHospitalToUser(int.Parse(user.UserId.Value.ToString()), int.Parse(user.HospitalId.Value.ToString()), true, loggedInUserId);
                    }
                    else
                    {
                        userTA.AssignHospitalToUser(int.Parse(user.UserId.Value.ToString()), null, true, loggedInUserId);
                    }*/
                }
                SetInfoMessage("User updated successfully");
            }
        }
    }