Example #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                ddlUserCampaigns.SelectedIndex = 0;
                ddlUserCampaigns.Items.Clear();
                string uName = "";
                int    uID   = 0;
                if (Session["Username"] != null)
                {
                    uName = Session["Username"].ToString();
                }
                if (Session["UserID"] != null)
                {
                    uID = (Session["UserID"].ToString().ToInt32());
                }
                Classes.cUserCampaigns CampaignChoices = new Classes.cUserCampaigns();
                CampaignChoices.Load(uID);
                if (CampaignChoices.CountOfUserCampaigns == 0)
                {
                    Response.Redirect("~/NoCurrentCampaignAssociations.aspx");
                }
                ddlUserCampaigns.DataTextField  = "CampaignName";
                ddlUserCampaigns.DataValueField = "CampaignID";
                ddlUserCampaigns.DataSource     = CampaignChoices.lsUserCampaigns;
                ddlUserCampaigns.DataBind();

                if (Session["CampaignName"].ToString() != ddlUserCampaigns.SelectedItem.Text.ToString())
                {
                    // Define Player roles here
                    Session["CampaignName"] = ddlUserCampaigns.SelectedItem.Text.ToString();
                    Classes.cPlayerRoles Roles = new Classes.cPlayerRoles();
                    Roles.Load(uID, 0, ddlUserCampaigns.SelectedItem.Value.ToInt32(), DateTime.Today);
                    Session["PlayerRoleString"] = Roles.PlayerRoleString;
                    Response.Redirect(Request.RawUrl);
                }
            }
        }
        private void LoadData()
        {
            MethodBase lmth          = MethodBase.GetCurrentMethod();
            string     lsRoutineName = lmth.DeclaringType + "." + lmth.Name;

            if ((Session["UserName"] == null) ||
                (Session["UserID"] == null))
            {
                Response.Redirect("/index.aspx", true);
            }

            //			Classes.LogWriter oLogWriter = new Classes.LogWriter();

            lblUserName.Text = this.UserName;

            if ((Session["CampaignID"] == null) ||
                (Session["CampaignName"] == null) ||
                (Session["CampaignList"] == null) ||
                (Session["RoleString"] == null) ||
                (Session["AllowAdditionalInfo"] == null))
            {
                Classes.cUserCampaigns CampaignChoices = new Classes.cUserCampaigns();
                CampaignChoices.Load(UserID);

                //foreach (Classes.cUserCampaign Camp in CampaignChoices.lsUserCampaigns)
                //{
                //					oLogWriter.AddLogMessage("ID:" + Camp.CampaignID.ToString() + "/" + Camp.CampaignName + "/" + Camp.LastLoggedInCampaign.ToString(), "Master.LoadData", "", Session.SessionID);
                //}

                int iCampID = -1;
                Session["CampaignID"]   = "-1";
                Session["CampaignName"] = "";

                //				oLogWriter.AddLogMessage("Starting: iCampID = " + iCampID.ToString(), "Master.LoadData", "", Session.SessionID);

                if (CampaignChoices.CountOfUserCampaigns > 0)
                {
                    // If last logged in campaign is not set, set it to the first value.
                    if (CampaignChoices.lsUserCampaigns[0].LastLoggedInCampaign == 0)
                    {
                        CampaignChoices.lsUserCampaigns[0].LastLoggedInCampaign = CampaignChoices.lsUserCampaigns[0].CampaignID;
                    }

                    Session["CampaignID"]          = CampaignChoices.lsUserCampaigns[0].LastLoggedInCampaign.ToString();
                    Session["AllowAdditionalInfo"] = "FALSE";
                    foreach (Classes.cUserCampaign Camp in CampaignChoices.lsUserCampaigns)
                    {
                        if (Camp.LastLoggedInCampaign == Camp.CampaignID)
                        {
                            Session["CampaignName"] = Camp.CampaignName;
                            if (Camp.AllowAdditionalInfo.HasValue)
                            {
                                if (Camp.AllowAdditionalInfo.Value)
                                {
                                    Session["AllowAdditionalInfo"] = "T";
                                }
                            }
                        }
                    }
                }
                //					iCampID = CampaignChoices.lsUserCampaigns [0].CampaignID;

                //				oLogWriter.AddLogMessage("After setting from list: iCampID = " + Session["CampaignID"].ToString() + "/" + Session["CampaignName"].ToString(), "Master.LoadData", "", Session.SessionID);

                if (ddlCampaigns != null)
                {
                    if (ddlCampaigns.Items != null)
                    {
                        if (ddlCampaigns.Items.Count > 0)
                        {
                            Session["CampaignID"]   = ddlCampaigns.SelectedValue;
                            Session["CampaignName"] = ddlCampaigns.SelectedItem.Text;
                            //							int.TryParse(ddlCampaigns.SelectedValue, out iCampID);
                        }
                    }
                }

                //				oLogWriter.AddLogMessage("After getting from ddlCampaigns: iCampID = " + Session["CampaignID"].ToString(), "Master.LoadData", "", Session.SessionID);

                int.TryParse(Session["CampaignID"].ToString(), out iCampID);

                if (iCampID > 0)
                {
                    Classes.cPlayerRoles Roles = new Classes.cPlayerRoles();
                    Roles.Load(UserID, 0, iCampID, DateTime.Today);
                    Session["RoleString"] = Roles.PlayerRoleString;

                    //Classes.cPlayerRoles Roles = new Classes.cPlayerRoles();
                    //Roles.Load(UserID, 0, CampaignID, DateTime.Today);
                    Session["PlayerRoleString"] = Roles.PlayerRoleString;
                }
                if (CampaignChoices.CountOfUserCampaigns == 0)
                {
                    Response.Redirect("~/NoCurrentCampaignAssociations.aspx");
                }

                DataTable dtCampList = ConvertCampaignListToDataTable(CampaignChoices.lsUserCampaigns);
                Session["CampaignList"] = dtCampList;
            }

            DataTable dtCampaignList = Session["CampaignList"] as DataTable;

            ddlCampaigns.DataTextField  = "CampaignName";
            ddlCampaigns.DataTextField  = "CampaignName";
            ddlCampaigns.DataValueField = "CampaignID";
            ddlCampaigns.DataSource     = dtCampaignList;
            ddlCampaigns.DataBind();

            if (DisplayAllOptions)
            {
                ddlCampaigns.Items.Add(new ListItem("Show My Campaigns", "-101"));
                ddlCampaigns.Items.Add(new ListItem("Show All Campaigns", "-102"));
            }

            ddlCampaigns.Items.Add(new ListItem("Add a new campaign", "-1"));

            ddlCampaigns.SelectedIndex = 0;
            Session["CampaignID"]      = ddlCampaigns.SelectedValue;
            Session["CampaignName"]    = ddlCampaigns.SelectedItem.Text;

            string sRoleString = Session["RoleString"].ToString();

            lblRoles.Text = "Roles: " + sRoleString;
            if (Session["SuperUser"] != null)
            {
                lblRoles.ForeColor = System.Drawing.Color.White;
            }

            liSetupCampaign.Style.Add("display", "none");
            liSetupCustomFields.Style.Add("display", "none");
            liSetupCampaignDemographics.Style.Add("display", "none");
            liSetupPlayerReqs.Style.Add("display", "none");
            liSetupContacts.Style.Add("display", "none");
            liSetupPolicies.Style.Add("display", "none");
            liSetupAssignRoles.Style.Add("display", "none");
            liSetupDescription.Style.Add("display", "none");
            liEventRegistrationApproval.Style.Add("display", "none");
            liEventDefaults.Style.Add("display", "none");
            liEventAssignHousing.Style.Add("display", "none");
            liCharacterApproveHistory.Style.Add("display", "none");
            liPELApprovalList.Style.Add("display", "none");
            liPELsMain.Style.Add("display", "none");
            liPointsAssign.Style.Add("display", "none");
            liEMailPoints.Style.Add("display", "none");
            liCampaignSetupMenu.Style.Add("display", "none");
            liCharacterBuildPoints.Style.Add("display", "none");
            liEventSetup.Style.Add("display", "none");
            //liCampaignMenu.Style.Add("display", "none");
            liSkillQualifiers.Style.Add("display", "none");

            liModifySkills.Style.Add("display", "none");
            if ((Session["SuperUser"] != null) ||
                (sRoleString.Contains(Classes.cConstants.LOGISTICS_SKILL_UPDATES_5)))
            {
                liModifySkills.Style.Add("display", "block");
            }

            if (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28))
            {
                liSetupCustomFields.Style.Add("display", "block");
                liSetupCampaignDemographics.Style.Add("display", "block");
                liSetupCampaign.Style.Add("display", "block");
                liCampaignSetupMenu.Style.Add("display", "block");
                //liCampaignMenu.Style.Add("display", "block");
            }

            if ((sRoleString.Contains(Classes.cConstants.CAMPAIGN_OWNER_3)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)))
            {
                liSetupPlayerReqs.Style.Add("display", "block");
                liSetupContacts.Style.Add("display", "block");
                liSetupPolicies.Style.Add("display", "block");
                liCampaignSetupMenu.Style.Add("display", "block");
                liSetupAssignRoles.Style.Add("display", "block");
                //liCampaignMenu.Style.Add("display", "block");
            }

            if ((sRoleString.Contains(Classes.cConstants.LOGISTICS_WORLD_SETTING_UPDATES_32)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_OWNER_3)) |
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)))
            {
                liSetupDescription.Style.Add("display", "block");
                liCampaignSetupMenu.Style.Add("display", "block");
                //liCampaignMenu.Style.Add("display", "block");
            }

            if ((sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_OWNER_3)) ||
                (sRoleString.Contains(Classes.cConstants.LOGISTICS_EVENT_REGISTRATION_APPROVAL_37)))
            {
                liEventRegistrationApproval.Style.Add("display", "block");
                liCampaignSetupMenu.Style.Add("display", "block");
                //liCampaignMenu.Style.Add("display", "block");
            }

            if ((sRoleString.Contains(Classes.cConstants.CAMPAIGN_OWNER_3)) ||
                (sRoleString.Contains(Classes.cConstants.LOGISTICS_EVENT_SCHEDULING_27)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)))
            {
                //ReqPage = "/events/eventlist";
                //				liEvent
                liEventDefaults.Style.Add("display", "block");
                liCampaignSetupMenu.Style.Add("display", "block");
                //				liCampaignMenu.Style.Add("display", "block");
            }

            if ((sRoleString.Contains(Classes.cConstants.LOGISTICS_HOUSING_ASSIGNMENT_11)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)))
            {
                liEventAssignHousing.Style.Add("display", "block");
                liCampaignSetupMenu.Style.Add("display", "block");
                //				liCampaignMenu.Style.Add("display", "block");
            }

            if ((sRoleString.Contains(Classes.cConstants.CAMPAIGN_PLOT_4)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)))
            {
                liCharacterApproveHistory.Style.Add("display", "block");
                liPELApprovalList.Style.Add("display", "block");
                liCampaignSetupMenu.Style.Add("display", "block");
                //				liCampaignMenu.Style.Add("display", "block");
            }


            if ((sRoleString.Contains(Classes.cConstants.CAMPAIGN_OWNER_3)) ||
                (sRoleString.Contains(Classes.cConstants.LOGISTICS_EVENT_SCHEDULING_27)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)))
            {
                liEventSetup.Style.Add("display", "block");
            }

            if ((sRoleString.Contains(Classes.cConstants.LOGISTICS_CP_ASSIGNMENT_15)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)) ||
                (sRoleString.Contains(Classes.cConstants.LOGISTICS_EVENT_CHECK_OUT_35)))
            {
                liPointsAssign.Style.Add("display", "block");
                liCampaignSetupMenu.Style.Add("display", "block");
                liPELsMain.Style.Add("display", "block");
                liCharacterBuildPoints.Style.Add("display", "block");
                liEMailPoints.Style.Add("display", "block");
                //				liCampaignMenu.Style.Add("display", "block");
            }

            if ((sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)) ||
                (sRoleString.Contains(Classes.cConstants.LOGISTICS_SKILL_UPDATES_5)))
            {
                if (Session["AllowAdditionalInfo"] != null)
                {
                    if (Session["AllowAdditionalInfo"].ToString().ToUpper().StartsWith("T"))
                    {
                        liCampaignSetupMenu.Style.Add("display", "block");
                        liSkillQualifiers.Style.Add("display", "block");
                    }
                }
            }

            if ((sRoleString.Contains(Classes.cConstants.LOGISTICS_CP_ASSIGNMENT_15)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)))
            {
                liEMailPoints.Style.Add("display", "block");
                liCampaignSetupMenu.Style.Add("display", "block");
                //				liCampaignMenu.Style.Add("display", "block");
            }

            if ((sRoleString.Contains(Classes.cConstants.LARPORTAL_DATABASE_OWNER_1)) ||
                (sRoleString.Contains(Classes.cConstants.LARPORTAL_DATABASE_ADMINISTRATOR_2)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_OWNER_3)) ||
                (sRoleString.Contains(Classes.cConstants.LOGISTICS_NPC_COORDINATOR_12)) ||
                (sRoleString.Contains(Classes.cConstants.LOGISTICS_MONSTER_MASTER_20)) ||
                (sRoleString.Contains(Classes.cConstants.LOGISTICS_ROLE_ASSIGNMENT_21)) ||
                (sRoleString.Contains(Classes.cConstants.CAMPAIGN_GENERAL_MANAGER_28)))
            {
                liCampaignSetupMenu.Style.Add("display", "block");
                liSetupAssignRoles.Style.Add("display", "block");
                liSetupCampaign.Style.Add("display", "block");
            }

            SortedList sParams = new SortedList();

            sParams.Add("@intUserID", UserID);
            DataTable dtCharacters = Classes.cUtilities.LoadDataTable("uspGetCharacterIDsByUserID", sParams, "LARPortal", UserName, lsRoutineName + ".LoadData.GetChar");
            DataView  dvCampChar   = new DataView(dtCharacters, "CampaignID = " + ddlCampaigns.SelectedValue, "", DataViewRowState.CurrentRows);

            // If the person has plot privileges, they get to edit/add characters.		JLB 8/12/2018
            SortedList sPrivParams = new SortedList();

            sPrivParams.Add("@UserID", UserID);
            sPrivParams.Add("@CampaignID", ddlCampaigns.SelectedValue);
            DataTable dtPrivs = Classes.cUtilities.LoadDataTable("prUserHasPlotPriv", sPrivParams, "LARPortal", UserName, lsRoutineName + ".LoadData.GetPlotPriv");

            if ((dvCampChar.Count == 0) &&
                (dtPrivs.Rows.Count == 0))
            {
                liHasNoCharacters.Style.Add("display", "block");
                liHasCharacters.Style.Add("display", "none");
            }
            else
            {
                liHasNoCharacters.Style.Add("display", "none");
                liHasCharacters.Style.Add("display", "block");
            }
        }