private void UpdateAnswerStatus(decimal auditID, decimal questionID)
        {
            EHSAuditQuestion auditQuestion = EHSAuditMgr.SelectAuditQuestion(auditID, questionID);

            if (auditQuestion != null)
            {
                if (TaskXLATList == null || TaskXLATList.Count == 0)
                {
                    TaskXLATList = SQMBasePage.SelectXLATList(new string[1] {
                        "AUDIT_EXCEPTION_STATUS"
                    });
                }
                ddlAnswerStatus.DataTextField  = "DESCRIPTION";
                ddlAnswerStatus.DataValueField = "XLAT_CODE";
                ddlAnswerStatus.DataSource     = TaskXLATList;
                ddlAnswerStatus.DataBind();

                if (auditQuestion.Status == null || auditQuestion.Status == "")
                {
                    ddlAnswerStatus.SelectedIndex = 0;
                }
                else
                {
                    ddlAnswerStatus.SelectedValue = auditQuestion.Status;
                }

                btnStatusSave.CommandArgument = auditID + "~" + questionID;

                string script = "function f(){OpenUpdateAnswerStatusWindow(); Sys.Application.remove_load(f);}Sys.Application.add_load(f);";
                ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", script, true);
            }
        }
        public void PopulateInitialForm()
        {
            PSsqmEntities entities = new PSsqmEntities();

            IncidentId = (IsEditContext) ? IncidentId : NewIncidentId;

            if (IncidentId > 0)
            {
                try
                {
                    ActionIncident = (from i in entities.INCIDENT where i.INCIDENT_ID == IncidentId select i).Single();
                    PLANT plant = SQMModelMgr.LookupPlant(entities, (decimal)ActionIncident.DETECT_PLANT_ID, "");
                    if (plant != null)
                    {
                        IncidentLocationTZ = plant.LOCAL_TIMEZONE;
                    }
                }
                catch { }

                XLATList = SQMBasePage.SelectXLATList(new string[1] {
                    "ACTION_CATEGORY"
                }, SessionManager.UserContext.Person.PREFERRED_LANG_ID.HasValue ? (int)SessionManager.UserContext.Person.PREFERRED_LANG_ID : 1);

                decimal typeId = (IsEditContext) ? EditIncidentTypeId : SelectedTypeId;

                // what the f**k does this do ?
                //formSteps = EHSIncidentMgr.GetStepsForincidentTypeId(typeId);
                //totalFormSteps = formSteps.Count();

                InitializeForm();
            }
        }
        public void BindTaskList(List <TASK_STATUS> taskList, string context)
        {
            if (TaskXLATList == null || TaskXLATList.Count == 0)
            {
                TaskXLATList = SQMBasePage.SelectXLATList(new string[4] {
                    "TASK_STATUS", "RECORD_TYPE", "INCIDENT_STATUS", "NOTIFY_SCOPE_TASK"
                });
            }

            pnlTaskSchedule.Visible = pnlTaskStrip.Visible = false;
            pnlTaskList.Visible     = true;

            rgTaskList.DataSource = taskList;
            rgTaskList.DataBind();

            if (taskList.Count > 0)
            {
                rgTaskList.Visible       = true;
                lblTaskListEmpty.Visible = false;
            }
            else
            {
                rgTaskList.Visible       = false;
                lblTaskListEmpty.Visible = true;
            }
        }
        public void PopulateInitialForm(PSsqmEntities ctx)
        {
            XLATList = SQMBasePage.SelectXLATList(new string[20] {
                "TASK_STATUS", "BusinessType", "BT_01", "BT_02", "BT_03", "BT_04", "MPT_S_01", "MPT_S_16", "MPT_S_18", "MPT_S_19", "MPT_B_09", "MPT_B_10", "MPT_B_23", "MPT_P_05", "MPT_P_06", "MPT_P_10", "MPT_P_11", "MPT_P_13", "MPT_AEL_1", "MPT_AEL_2"
            }, SessionManager.UserContext.Person.PREFERRED_LANG_ID.HasValue ? (int)SessionManager.UserContext.Person.PREFERRED_LANG_ID : 1);

            InitializeForm(ctx);
        }
        void PopulateBodyPartDropDown()
        {
            bool        categorize = SessionManager.GetUserSetting("EHS", "INJURYPART_CATEGORIZE") != null && SessionManager.GetUserSetting("EHS", "INJURYPART_CATEGORIZE").VALUE == "Y" ? true : false;
            List <XLAT> xlatList   = SQMBasePage.SelectXLATList(new string[1] {
                "INJURY_PART"
            }, SessionManager.UserContext.Person.PREFERRED_LANG_ID.HasValue ? (int)SessionManager.UserContext.Person.PREFERRED_LANG_ID : 1);

            SQMBasePage.SetCategorizedDropDownItems(rdlBodyPart, xlatList.Where(l => l.XLAT_GROUP == "INJURY_PART").ToList(), categorize);
        }
Exemple #6
0
        void PopulateBodyPartDropDown()
        {
            //bool categorize = EHSSettings.Where(s => s.SETTING_CD == "INJURYPART_CATEGORIZE").FirstOrDefault() != null && EHSSettings.Where(s => s.SETTING_CD == "INJURYPART_CATEGORIZE").FirstOrDefault().VALUE.ToUpper() == "Y" ? true : false;
            bool        categorize = false;
            List <XLAT> xlatList   = SQMBasePage.SelectXLATList(new string[1] {
                "INJURY_PART"
            }, SessionManager.UserContext.Person.PREFERRED_LANG_ID.HasValue ? (int)SessionManager.UserContext.Person.PREFERRED_LANG_ID : 1);

            SQMBasePage.SetCategorizedDropDownItems(rdlBodyPart, xlatList.Where(l => l.XLAT_GROUP == "INJURY_PART").ToList(), categorize);
        }
        protected void rgAuditAnswers_ItemDataBound(object sender, GridItemEventArgs e)
        {
            if (e.Item is GridDataItem)
            {
                GridDataItem     item = (GridDataItem)e.Item;
                HiddenField      hf;
                LinkButton       lnk;
                Label            lbl;
                EHSAuditQuestion data = (EHSAuditQuestion)e.Item.DataItem;

                lnk = (LinkButton)e.Item.FindControl("lnkAddTask");
                lnk.CommandArgument = data.AuditId.ToString() + "," + data.QuestionId.ToString();
                string buttonText = Resources.LocalizedText.AssignTask + "(" + data.TasksAssigned.ToString() + ")";
                lnk.Text = buttonText;

                lnk = (LinkButton)e.Item.FindControl("lnkAddAttach");
                lnk.CommandArgument = data.AuditId.ToString() + "," + data.QuestionId.ToString();
                buttonText          = Resources.LocalizedText.Attachments + "(" + data.FilesAttached.ToString() + ")";
                lnk.Text            = buttonText;

                lnk = (LinkButton)e.Item.FindControl("lnkUpdateStatus");
                lnk.CommandArgument = data.AuditId.ToString() + "," + data.QuestionId.ToString();
                if (!hdnAuditPerson.Value.ToString().Equals(SessionManager.UserContext.Person.PERSON_ID.ToString()))
                {
                    lnk.Visible = false;
                }

                if (TaskXLATList == null || TaskXLATList.Count == 0)
                {
                    TaskXLATList = SQMBasePage.SelectXLATList(new string[1] {
                        "AUDIT_EXCEPTION_STATUS"
                    });
                }

                lbl = (Label)e.Item.FindControl("lblAnswerStatus");
                if (data.Status == null)
                {
                    lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_EXCEPTION_STATUS" && l.XLAT_CODE == "01").FirstOrDefault().DESCRIPTION;
                }
                else
                {
                    lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_EXCEPTION_STATUS" && l.XLAT_CODE == data.Status.ToString()).FirstOrDefault().DESCRIPTION;
                }

                lbl = (Label)e.Item.FindControl("lblResolutionDate");
                if (data.CompleteDate == null || data.CompleteDate.Year == 1)
                {
                    lbl.Text = "";
                }
                else
                {
                    lbl.Text = data.CompleteDate.ToString("MM/dd/yyyy");
                }
            }
        }
Exemple #8
0
        //protected void btnReceiptsSearchClick(object sender, EventArgs e)
        //{
        //	if (OnSearchReceiptsClick != null)
        //	{
        //		Button btn = (Button)sender;
        //		OnSearchReceiptsClick(btn.CommandArgument);
        //	}
        //}

        #endregion


        #region mediavideo

        public void BindVideoListRepeater(object theList, string appContext)
        {
            pnlVideoListRepeater.Visible = true;
            staticAppContext             = appContext;

            listXLAT = SQMBasePage.SelectXLATList(new string[1] {
                "MEDIA_VIDEO_STATUS"
            }, 1);
            rgVideoList.DataSource = theList;
            rgVideoList.DataBind();
        }
        public void BindPrivGroups(List <PRIVGROUP> privGroupList, BusinessLocation businessLocation, string context)
        {
            hfPrivGroupContext.Value = context;

            if (ddlPrivGroupStatus.Items.Count == 0)
            {
                XLATList = SQMBasePage.SelectXLATList(new string[3] {
                    "ACTIVE_STATUS", "PRIV_PRIV", "PRIV_SCOPE"
                });

                ddlPrivGroupStatus.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "ACTIVE_STATUS").ToList();
                ddlPrivGroupStatus.DataValueField = "XLAT_CODE";
                ddlPrivGroupStatus.DataTextField  = "DESCRIPTION";
                ddlPrivGroupStatus.DataBind();
            }

            if (ddlScope.Items.Count == 0)
            {
                ddlScope.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "PRIV_SCOPE").ToList();
                ddlScope.DataValueField = "XLAT_CODE";
                ddlScope.DataTextField  = "DESCRIPTION";
                ddlScope.DataBind();
            }

            if (ddlPriviledge.Items.Count == 0)
            {
                ddlPriviledge.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "PRIV_PRIV").ToList();
                ddlPriviledge.DataValueField = "XLAT_CODE";
                ddlPriviledge.DataTextField  = "DESCRIPTION";
                ddlPriviledge.DataBind();
                RadComboBoxItem item = new RadComboBoxItem("", "select a priviledge level");
                ddlPriviledge.Items.Insert(0, item);
                try
                {
                    item         = ddlPriviledge.FindItemByValue("100");
                    item.Enabled = false;
                }
                catch { }
            }

            defaultPrivs = SQMSettings.SelectSettingsGroup("DEFAULT_PRIVS", "");

            pnlPrivGroups.Visible = true;

            rgPrivGroup.DataSource = privGroupList;
            rgPrivGroup.DataBind();
        }
Exemple #10
0
        public void BindNotfyPlan(List <NOTIFYACTION> notifyItemList, BusinessLocation businessLocation, string context)
        {
            XLATList = SQMBasePage.SelectXLATList(new string[4] {
                "NOTIFY_SCOPE", "NOTIFY_SCOPE_TASK", "NOTIFY_TASK_STATUS", "NOTIFY_TIMING"
            });

            hfNotifyActionContext.Value = context;
            hfNotifyActionBusLoc.Value  = context == "plant" ? businessLocation.Plant.PLANT_ID.ToString() : businessLocation.BusinessOrg.BUS_ORG_ID.ToString();

            ddlNotifyScope.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_SCOPE").ToList();
            ddlNotifyScope.DataValueField = "XLAT_CODE";
            ddlNotifyScope.DataTextField  = "DESCRIPTION";
            ddlNotifyScope.DataBind();

            ddlScopeTask.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_SCOPE_TASK").ToList();
            ddlScopeTask.DataValueField = "XLAT_CODE";
            ddlScopeTask.DataTextField  = "DESCRIPTION";
            ddlScopeTask.DataBind();

            ddlScopeStatus.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_TASK_STATUS").ToList();
            ddlScopeStatus.DataValueField = "XLAT_CODE";
            ddlScopeStatus.DataTextField  = "DESCRIPTION";
            ddlScopeStatus.DataBind();

            ddlScopeTiming.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_TIMING").ToList();
            ddlScopeTiming.DataValueField = "XLAT_CODE";
            ddlScopeTiming.DataTextField  = "DESCRIPTION";
            ddlScopeTiming.DataBind();

            foreach (PRIVGROUP pg in SQMModelMgr.SelectPrivGroupList(new SysPriv[2] {
                SysPriv.admin, SysPriv.notify
            }, SysScope.incident, "A").ToList())
            {
                ddlNotifyPrivGroup.Items.Add(new RadComboBoxItem(SQMModelMgr.FormatPrivGroup(pg), pg.PRIV_GROUP));
            }

            pnlNotifyAction.Visible = true;

            hfNotifyActionContext.Value = context;

            rgNotifyAction.DataSource = notifyItemList;
            rgNotifyAction.DataBind();
        }
Exemple #11
0
        public static int NotifyIncidentTaskAssigment(INCIDENT incident, TASK_STATUS theTask, string scopeAction)
        {
            int    status = 0;
            PLANT  plant  = SQMModelMgr.LookupPlant((decimal)incident.DETECT_PLANT_ID);
            PERSON person = SQMModelMgr.LookupPerson((decimal)theTask.RESPONSIBLE_ID, "");

            if (person != null && !string.IsNullOrEmpty(person.EMAIL))
            {
                List <XLAT> XLATList = SQMBasePage.SelectXLATList(new string[3] {
                    "NOTIFY_SCOPE", "NOTIFY_SCOPE_TASK", "NOTIFY_TASK_STATUS"
                });
                string appUrl = SQMSettings.SelectSettingByCode(new PSsqmEntities(), "MAIL", "TASK", "MailURL").VALUE;
                if (string.IsNullOrEmpty(appUrl))
                {
                    appUrl = "the website";
                }

                string emailTo      = person.EMAIL;
                string actionText   = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && x.XLAT_CODE == scopeAction).FirstOrDefault().DESCRIPTION;
                string emailSubject = "Health/Safety Incident " + actionText + ": " + incident.ISSUE_TYPE + " (" + plant.PLANT_NAME + ")";
                string emailBody    = "You have been assigned to one or more tasks regarding the following Incident: <br/>" +
                                      "<br/>" +
                                      "Incident ID: " + WebSiteCommon.FormatID(incident.INCIDENT_ID, 6) + "<br/>" +
                                      plant.PLANT_NAME + "<br/>" +
                                      incident.ISSUE_TYPE + "<br/>" +
                                      "<br/>" +
                                      incident.DESCRIPTION + "<br/>" +
                                      "<br/>" +
                                      theTask.DESCRIPTION + "<br/>" +
                                      "<br/>" +
                                      "Due : " + theTask.DUE_DT.ToString() + "<br/>" +
                                      "<br/>" +
                                      "Please log in to " + (appUrl + incidentPath) + " to view this incident.";

                Thread thread = new Thread(() => WebSiteCommon.SendEmail(emailTo, emailSubject, emailBody, "", "web", null));
                thread.IsBackground = true;
                thread.Start();
            }

            return(status);
        }
        protected void lblDueDate_OnClick(object sender, EventArgs e)
        {
            lblErrorMessage.Text = "";
            LinkButton btn = (LinkButton)sender;

            if (btn == null || string.IsNullOrEmpty(btn.CommandArgument))
            {
                return;
            }

            PSsqmEntities ctx = new PSsqmEntities();
            int           recordType;
            TaskStatusMgr taskMgr = new TaskStatusMgr().CreateNew(0, 0);
            TASK_STATUS   task    = new TASK_STATUS();

            AUDIT audit = new AUDIT();

            try
            {
                decimal recordID = Convert.ToDecimal(btn.CommandArgument.ToString());
                if (TaskXLATList == null || TaskXLATList.Count == 0)
                {
                    TaskXLATList = SQMBasePage.SelectXLATList(new string[5] {
                        "TASK_STATUS", "RECORD_TYPE", "INCIDENT_STATUS", "NOTIFY_SCOPE_TASK", "ACTION_CATEGORY"
                    });
                }
                task = taskMgr.SelectTask(recordID);
                BindTaskUpdate(task, "");
            }
            catch (Exception ex)
            {
                lblErrorMessage.Text = ex.Message.ToString();
            }
            pnlAddTask.Visible    = false;
            pnlUpdateTask.Visible = true;

            string script = "function f(){OpenUpdateTaskWindow(); Sys.Application.remove_load(f);}Sys.Application.add_load(f);";

            ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", script, true);
        }
        protected void rgAuditList_ItemDataBound(object sender, GridItemEventArgs e)
        {
            if (e.Item is GridDataItem)
            {
                GridDataItem item = (GridDataItem)e.Item;
                HiddenField  hf;
                Label        lbl;

                EHSAuditData data = (EHSAuditData)e.Item.DataItem;

                lbl      = (Label)e.Item.FindControl("lblAuditId");
                lbl.Text = WebSiteCommon.FormatID(data.Audit.AUDIT_ID, 6);

                if (data.Audit.DESCRIPTION.Length > 120)
                {
                    lbl      = (Label)e.Item.FindControl("lblDescription");
                    lbl.Text = data.Audit.DESCRIPTION.Substring(0, 117) + "...";
                }

                //lbl = (Label)e.Item.FindControl("lblDescription");
                //lbl.Text = HttpUtility.HtmlEncode(lbl.Text);

                if (data.Person != null)
                {
                    lbl                  = (Label)e.Item.FindControl("lblAuditBy");
                    lbl.Text             = SQMModelMgr.FormatPersonListItem(data.Person);
                    hdnAuditPerson.Value = data.Person.PERSON_ID.ToString();
                }

                lbl = (Label)e.Item.FindControl("lblAuditStatus");
                List <XLAT> TaskXLATList = SQMBasePage.SelectXLATList(new string[1] {
                    "AUDIT_STATUS"
                });

                if (data.Audit.CURRENT_STATUS == "C")
                {
                    DateTime clsDate = (DateTime)data.Audit.CLOSE_DATE_DATA_COMPLETE;
                    lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_STATUS" && l.XLAT_CODE == "C").FirstOrDefault().DESCRIPTION + " " + SQMBasePage.FormatDate(clsDate, "d", false);
                }
                else
                {
                    if (data.DaysToClose == 0)
                    {
                        DateTime tmp = ((DateTime)data.Audit.AUDIT_DT).AddDays(data.AuditType.DAYS_TO_COMPLETE);
                        lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_STATUS" && l.XLAT_CODE == "X").FirstOrDefault().DESCRIPTION + "<br/>(" + SQMBasePage.FormatDate(tmp, "d", false) + ")";
                    }
                    else if (data.Audit.PERCENT_COMPLETE > 0)
                    {
                        lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_STATUS" && l.XLAT_CODE == "I").FirstOrDefault().DESCRIPTION + "<br/>(" + data.DaysToClose + ")";
                    }
                    else
                    {
                        lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_STATUS" && l.XLAT_CODE == "A").FirstOrDefault().DESCRIPTION + "<br/>(" + data.DaysToClose + ")";
                    }
                }

                //LinkButton lnk = (LinkButton)e.Item.FindControl("lbAuditId");

                //if (SessionManager.UserContext.Person.PERSON_ID == data.Person.PERSON_ID)
                //	lnk.CommandArgument = data.Audit.AUDIT_ID.ToString() + "~" + data.Status;
                //else if (!data.Status.Equals("C"))
                //	lnk.CommandArgument = data.Audit.AUDIT_ID.ToString() + "~D";
                //else
                //	lnk.CommandArgument = data.Audit.AUDIT_ID.ToString() + "~C";
            }
        }
        public void LoadVideoInformation()
        {
            // populate all the fields
            List <XLAT> listXLAT = SQMBasePage.SelectXLATList(new string[5] {
                "INJURY_PART", "INJURY_TYPE", "MEDIA_VIDEO_SOURCE", "MEDIA_VIDEO_STATUS", "MEDIA_VIDEO_TYPE"
            }, 1);
            List <MediaVideoData> videos = MediaVideoMgr.SelectVideoDataById(entities, EditVideoId);

            if (videos != null)
            {
                MediaVideoData   videoData = videos[0];
                BusinessLocation location  = new BusinessLocation().Initialize((decimal)videoData.Video.PLANT_ID);
                lblVideoSourceType.Text = ((TaskRecordType)videoData.Video.SOURCE_TYPE).ToString();
                if ((TaskRecordType)videoData.Video.SOURCE_TYPE != TaskRecordType.Media)
                {
                    lblVideoSourceType.Text += " " + videoData.Video.SOURCE_ID;
                }
                lblVideoLocation.Text   = location.Plant.PLANT_NAME + " " + location.BusinessOrg.ORG_NAME;
                lblVideoPersonName.Text = videoData.Person.LAST_NAME + ", " + videoData.Person.FIRST_NAME;
                DateTime dt = (DateTime)videoData.Video.VIDEO_DT;
                lblVideoDate.Text = dt.ToString("MM/dd/yyyy");
                dt = (DateTime)videoData.Video.INCIDENT_DT;
                lblVideoIncidentDate.Text = dt.ToString("MM/dd/yyyy");
                lblVideoInjuryType.Text   = SQMBasePage.GetXLAT(listXLAT, "INJURY_TYPE", videoData.Video.INJURY_TYPES).DESCRIPTION;           // for now we assume only one
                lblVideoBodyPart.Text     = SQMBasePage.GetXLAT(listXLAT, "INJURY_PART", videoData.Video.BODY_PARTS).DESCRIPTION;             // for now we assume only one

                tbTitle.Text       = videoData.Video.TITLE;
                tbDescription.Text = videoData.Video.DESCRIPTION;
                if (ddlVideoType.Items.Count == 0)
                {
                    PopulateVideoTypeDropDown();
                }
                if (videoData.Video.VIDEO_TYPE == null)
                {
                    ddlVideoType.SelectedValue = "";
                }
                else
                {
                    ddlVideoType.SelectedValue = videoData.Video.VIDEO_TYPE;
                }
                if (videoData.Video.VIDEO_AVAILABILITY == null)
                {
                    ddlAvailability.SelectedIndex = 0;
                }
                else
                {
                    ddlAvailability.SelectedValue = videoData.Video.VIDEO_AVAILABILITY;
                }
                litVideoDownloadLink.Text = "<a href='/Shared/FileHandler.ashx?DOC=v&DOC_ID=" + EditVideoId + "&FILE_NAME=" + videoData.Video.FILE_NAME + "' target='_blank'>" + Resources.LocalizedText.VideoDownload + "</a>";
                litVideoViewLink.Text     = "<a href='/Shared/VideoHandler.aspx?DOC=v&DOC_ID=" + EditVideoId + "' target='_blank'>" + Resources.LocalizedText.VideoView + "</a>";
                rcbStatusSelect           = SQMBasePage.SetComboBoxItemsFromXLAT(rcbStatusSelect, listXLAT.Where(l => l.XLAT_GROUP == "MEDIA_VIDEO_STATUS" && l.STATUS == "A").OrderBy(h => h.SORT_ORDER).ToList(), "SHORT");
                rcbStatusSelect.Items.Insert(0, new RadComboBoxItem("Select a status", ""));
                rcbStatusSelect.SelectedValue = videoData.Video.VIDEO_STATUS;
                cbVideoText.Checked           = videoData.Video.SPEAKER_AUDIO;

                // populate release form list
                if (videoData.Video.RELEASE_REQUIRED)
                {
                    cbReleaseForms.Checked = true;
                    //dvAttach.Visible = true;
                    dvAttach.Style.Add("display", "block");
                    // get the new async working
                    GetAttachments(EditVideoId, (int)MediaAttachmentType.ReleaseForm, videoData.ReleaseFormList.Count);
                }
                else
                {
                    cbReleaseForms.Checked = false;
                    //dvAttach.Visible = false;
                    dvAttach.Style.Add("display", "none");
                }
                uploadReleases.SetViewMode(true);
                // populate text list
                GetAttachments(EditVideoId, (int)MediaAttachmentType.Text, videoData.VideoTextList.Count);
                if (videoData.Video.TEXT_ADDED || videoData.VideoTextList.Count > 0)
                {
                    cbVideoText.Checked = true;
                    //dvText.Visible = true;
                    dvText.Style.Add("display", "block");
                }
                else
                {
                    cbVideoText.Checked = false;
                    //dvText.Visible = false;
                    dvText.Style.Add("display", "none");
                }

                pnlAddEdit.Visible     = true;
                pnlVideoHeader.Visible = true;
                divVideoForm.Visible   = true;

                if (videoData.Video.SOURCE_TYPE == (int)TaskRecordType.Audit || videoData.Video.SOURCE_TYPE == (int)TaskRecordType.HealthSafetyIncident)
                {
                    btnDelete.Visible = false;
                }
                else
                {
                    btnDelete.Visible = true;
                }

                // if not edit mode, all fields are display only
                if (!IsEditContext)
                {
                    tbTitle.Enabled         = false;
                    tbDescription.Enabled   = false;
                    ddlAvailability.Enabled = false;
                    ddlVideoType.Enabled    = false;
                    cbReleaseForms.Enabled  = false;
                    cbVideoText.Enabled     = false;
                    cbSpeakerAudio.Enabled  = false;
                }
            }
        }
Exemple #15
0
        protected void Page_PreRender(object sender, EventArgs e)
        {
            try
            {
                if (!Page.IsPostBack)
                {
                    if (menuXLATList == null || menuXLATList.Count == 0)
                    {
                        menuXLATList = SQMBasePage.SelectXLATList(new string[8] {
                            "MENU_HOME", "MENU_ORG", "MENU_ENV", "MENU_HS", "MENU_AUDIT", "MENU_DATA", "MENU_RM", "MENU_MEDIA"
                        });
                    }

                    SessionManager.CurrentAdminPage = "";
                    string customerLogo = "";
                    customerLogo = System.Configuration.ConfigurationManager.AppSettings["CustomerLogo"];
                    if (string.IsNullOrEmpty(customerLogo) || customerLogo.Contains("Metricsoft"))
                    {
                        imgLogo.ImageUrl = "~/images/company/MetricsoftLogoSmall.png";
                    }
                    else
                    {
                        int pos = customerLogo.IndexOf('.');
                        customerLogo     = customerLogo.Substring(0, pos) + "Small." + customerLogo.Substring(pos + 1, customerLogo.Length - pos - 1);
                        imgLogo.ImageUrl = "~/images/company/" + customerLogo;
                    }

                    string title = System.Configuration.ConfigurationManager.AppSettings["MainTitle"];
                    if (!string.IsNullOrEmpty(title))
                    {
                        lblMainTitle.Text = title;
                    }

                    SetupPage();

                    bool addConsole = false;
                    RadMenu1.Skin                       = "Metro";
                    RadMenu1.ExpandDelay                = 225;
                    RadMenu1.CollapseDelay              = 500;
                    RadMenu1.ExpandAnimation.Duration   = 40;
                    RadMenu1.CollapseAnimation.Duration = 20;
                    RadMenu1.DefaultGroupSettings.Flow  = Telerik.Web.UI.ItemFlow.Horizontal;

                    RadMenuItem HomeMenu = new RadMenuItem(GetMenu("MENU_HOME", "0").DESCRIPTION);
                    RadMenu1.Items.Add(HomeMenu);
                    if (UserContext.GetScopePrivileges(SysScope.dashboard).Count() > 0)
                    {
                        HomeMenu.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_HOME", "11").DESCRIPTION, GetMenu("MENU_HOME", "11").DESCRIPTION_SHORT));
                    }
                    if (UserContext.GetScopePrivileges(SysScope.inbox).Count() > 0)
                    {
                        HomeMenu.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_HOME", "12").DESCRIPTION, GetMenu("MENU_HOME", "12").DESCRIPTION_SHORT));
                    }

                    if (UserContext.GetMaxScopePrivilege(SysScope.busorg) <= SysPriv.admin)
                    {
                        RadMenuItem OrgMenu = new RadMenuItem(GetMenu("MENU_ORG", "0").DESCRIPTION);
                        RadMenu1.Items.Add(OrgMenu);
                        OrgMenu.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_ORG", "11").DESCRIPTION, GetMenu("MENU_ORG", "11").DESCRIPTION_SHORT));
                        OrgMenu.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_ORG", "12").DESCRIPTION, GetMenu("MENU_ORG", "12").DESCRIPTION_SHORT));
                        if (UserContext.CheckUserPrivilege(SysPriv.admin, SysScope.system) && SessionManager.UserContext.Person.PERSON_ID == 1)
                        {
                            OrgMenu.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_ORG", "13").DESCRIPTION, GetMenu("MENU_ORG", "13").DESCRIPTION_SHORT));
                            OrgMenu.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_ORG", "14").DESCRIPTION, GetMenu("MENU_ORG", "14").DESCRIPTION_SHORT));
                        }
                    }

                    if (UserContext.GetScopePrivileges(SysScope.envdata).Count() > 0)
                    {
                        RadMenuItem EHSMenu1 = new RadMenuItem(GetMenu("MENU_ENV", "0").DESCRIPTION);
                        RadMenu1.Items.Add(EHSMenu1);

                        if (UserContext.CheckUserPrivilege(SysPriv.config, SysScope.envdata))
                        {
                            EHSMenu1.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_ENV", "11").DESCRIPTION, GetMenu("MENU_ENV", "11").DESCRIPTION_SHORT));
                            EHSMenu1.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_ENV", "12").DESCRIPTION, GetMenu("MENU_ENV", "12").DESCRIPTION_SHORT));
                        }
                        EHSMenu1.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_ENV", "13").DESCRIPTION, GetMenu("MENU_ENV", "13").DESCRIPTION_SHORT));
                        EHSMenu1.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_ENV", "14").DESCRIPTION, GetMenu("MENU_ENV", "14").DESCRIPTION_SHORT));
                        if (addConsole == false && UserContext.GetScopePrivileges(SysScope.console).Count() > 0)
                        {
                            EHSMenu1.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_ENV", "15").DESCRIPTION, GetMenu("MENU_ENV", "15").DESCRIPTION_SHORT));
                            addConsole = true;
                        }
                    }

                    if (UserContext.GetScopePrivileges(SysScope.incident).Count() > 0)
                    {
                        RadMenuItem EHSMenu2 = new RadMenuItem(GetMenu("MENU_HS", "0").DESCRIPTION);
                        RadMenu1.Items.Add(EHSMenu2);
                        if (UserContext.GetScopePrivileges(SysScope.incident).Count() > 0)
                        {
                            EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_HS", "11").DESCRIPTION, GetMenu("MENU_HS", "11").DESCRIPTION_SHORT));
                        }
                        if (UserContext.GetScopePrivileges(SysScope.console).Count() > 0)
                        {
                            EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_HS", "12").DESCRIPTION, GetMenu("MENU_HS", "12").DESCRIPTION_SHORT));
                        }
                    }

                    if (UserContext.GetScopePrivileges(SysScope.audit).Count() > 0)
                    {
                        RadMenuItem EHSMenu2 = new RadMenuItem(GetMenu("MENU_AUDIT", "0").DESCRIPTION);
                        RadMenu1.Items.Add(EHSMenu2);
                        if (UserContext.GetMaxScopePrivilege(SysScope.audit) <= SysPriv.config && GetMenu("MENU_AUDIT", "11").STATUS.ToUpper() == "A")
                        {
                            EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_AUDIT", "11").DESCRIPTION, GetMenu("MENU_AUDIT", "11").DESCRIPTION_SHORT));
                        }
                        if (UserContext.GetMaxScopePrivilege(SysScope.audit) <= SysPriv.originate)
                        {
                            if (GetMenu("MENU_AUDIT", "12").STATUS.ToUpper() == "A")
                            {
                                EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_AUDIT", "12").DESCRIPTION, GetMenu("MENU_AUDIT", "12").DESCRIPTION_SHORT));
                            }
                            if (GetMenu("MENU_AUDIT", "15").STATUS.ToUpper() == "A")
                            {
                                EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_AUDIT", "15").DESCRIPTION, GetMenu("MENU_AUDIT", "15").DESCRIPTION_SHORT));
                            }
                        }
                        if (UserContext.GetMaxScopePrivilege(SysScope.audit) <= SysPriv.originate && GetMenu("MENU_AUDIT", "13").STATUS.ToUpper() == "A")
                        {
                            EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_AUDIT", "13").DESCRIPTION, GetMenu("MENU_AUDIT", "13").DESCRIPTION_SHORT));
                        }
                    }

                    if (SessionManager.GetUserSetting("MODULE", "PREVACTION") != null && SessionManager.GetUserSetting("MODULE", "PREVACTION").VALUE.ToUpper() == "A")
                    {
                        if (UserContext.GetScopePrivileges(SysScope.prevent).Count() > 0 && IsMenuActive("MENU_RM"))
                        {
                            RadMenuItem EHSMenu2 = new RadMenuItem(GetMenu("MENU_RM", "0").DESCRIPTION);
                            RadMenu1.Items.Add(EHSMenu2);
                            EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_RM", "11").DESCRIPTION, GetMenu("MENU_RM", "11").DESCRIPTION_SHORT));
                        }
                    }

                    if (SessionManager.GetUserSetting("MODULE", "EHSDATA") != null && SessionManager.GetUserSetting("MODULE", "EHSDATA").VALUE.ToUpper() == "A")
                    {
                        if (UserContext.GetMaxScopePrivilege(SysScope.ehsdata) <= SysPriv.originate && IsMenuActive("MENU_DATA"))
                        {
                            RadMenuItem EHSMenu2 = new RadMenuItem(GetMenu("MENU_DATA", "0").DESCRIPTION);
                            RadMenu1.Items.Add(EHSMenu2);
                            EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_DATA", "11").DESCRIPTION, GetMenu("MENU_DATA", "11").DESCRIPTION_SHORT));
                            EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_DATA", "12").DESCRIPTION, GetMenu("MENU_DATA", "12").DESCRIPTION_SHORT));
                            EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_DATA", "13").DESCRIPTION, GetMenu("MENU_DATA", "13").DESCRIPTION_SHORT));
                            if (UserContext.GetMaxScopePrivilege(SysScope.ehsdata) <= SysPriv.config)
                            {
                                EHSMenu2.Items.Add(new RadMenuItem(GetMenu("MENU_DATA", "21").DESCRIPTION, GetMenu("MENU_DATA", "21").DESCRIPTION_SHORT));
                                EHSMenu2.Items.Add(new RadMenuItem(GetMenu("MENU_DATA", "22").DESCRIPTION, GetMenu("MENU_DATA", "22").DESCRIPTION_SHORT));
                            }
                            if (UserContext.CheckUserPrivilege(SysPriv.approve, SysScope.ehsdata) || UserContext.CheckUserPrivilege(SysPriv.approve1, SysScope.ehsdata))
                            {
                                EHSMenu2.Items.Add(new RadMenuItem(GetMenu("MENU_DATA", "25").DESCRIPTION, GetMenu("MENU_DATA", "25").DESCRIPTION_SHORT));
                            }
                        }
                    }

                    if (SessionManager.GetUserSetting("MODULE", "MEDIA") != null && SessionManager.GetUserSetting("MODULE", "MEDIA").VALUE.ToUpper() == "A")
                    {
                        if (UserContext.GetMaxScopePrivilege(SysScope.media) <= SysPriv.originate)
                        {
                            RadMenuItem EHSMenu2 = new RadMenuItem(GetMenu("MENU_MEDIA", "0").DESCRIPTION);
                            RadMenu1.Items.Add(EHSMenu2);
                            EHSMenu2.Items.Add(new Telerik.Web.UI.RadMenuItem(GetMenu("MENU_MEDIA", "11").DESCRIPTION, GetMenu("MENU_MEDIA", "11").DESCRIPTION_SHORT));
                        }
                    }
                }
            }

            catch (Exception ex)
            {
                // SQMLogger.LogException(ex);
            }
        }
Exemple #16
0
        private void SetupPage()
        {
            if (ddlPlantSelect.Items.Count < 1)
            {
                List <BusinessLocation> locationList = SQMModelMgr.SelectBusinessLocationList(SessionManager.UserContext.HRLocation.Company.COMPANY_ID, 0, true);
                SQMBasePage.SetLocationList(ddlPlantSelect, UserContext.FilterPlantAccessList(locationList), 0);

                List <XLAT> xlatList = SQMBasePage.SelectXLATList(new string[5] {
                    "INJURY_PART", "INJURY_TYPE", "MEDIA_VIDEO_SOURCE", "MEDIA_VIDEO_STATUS", "MEDIA_VIDEO_TYPE"
                }, 1);
                rcbVideoSource = SQMBasePage.SetComboBoxItemsFromXLAT(rcbVideoSource, xlatList.Where(l => l.XLAT_GROUP == "MEDIA_VIDEO_SOURCE" && l.STATUS == "A").OrderBy(h => h.SORT_ORDER).ToList(), "SHORT");
                rcbVideoSource.Items.Insert(0, new Telerik.Web.UI.RadComboBoxItem("All", ""));
                rcbVideoSource.SelectedIndex = 0;
                rcbVideoStatusSelect         = SQMBasePage.SetComboBoxItemsFromXLAT(rcbVideoStatusSelect, xlatList.Where(l => l.XLAT_GROUP == "MEDIA_VIDEO_STATUS" && l.STATUS == "A").OrderBy(h => h.SORT_ORDER).ToList(), "SHORT");
                rcbVideoStatusSelect.Items.Insert(0, new Telerik.Web.UI.RadComboBoxItem("All", ""));
                rcbVideoStatusSelect.SelectedIndex = 0;
                rcbVideoType = SQMBasePage.SetComboBoxItemsFromXLAT(rcbVideoType, xlatList.Where(l => l.XLAT_GROUP == "MEDIA_VIDEO_TYPE" && l.STATUS == "A").OrderBy(h => h.SORT_ORDER).ToList(), "SHORT");
                //rcbVideoStatusSelect.Items.Insert(0, new Telerik.Web.UI.RadComboBoxItem("All", ""));
                //rcbVideoStatusSelect.SelectedIndex = 0;
                rcbInjuryType = SQMBasePage.SetComboBoxItemsFromXLAT(rcbInjuryType, xlatList.Where(l => l.XLAT_GROUP == "INJURY_TYPE" && l.STATUS == "A").OrderBy(h => h.SORT_ORDER).ToList(), "SHORT");
                rcbInjuryType.Items.Insert(0, new Telerik.Web.UI.RadComboBoxItem("All", ""));
                rcbInjuryType.SelectedIndex = 0;
                rcbBodyPart = SQMBasePage.SetComboBoxItemsFromXLAT(rcbBodyPart, xlatList.Where(l => l.XLAT_GROUP == "INJURY_PART" && l.STATUS == "A").OrderBy(h => h.SORT_ORDER).ToList(), "SHORT");
                rcbBodyPart.Items.Insert(0, new Telerik.Web.UI.RadComboBoxItem("All", ""));
                rcbBodyPart.SelectedIndex = 0;
            }

            divVideoList.Visible = true;
            rbNew.Visible        = true;

            dmFromDate.ShowPopupOnFocus = dmToDate.ShowPopupOnFocus = true;
            // ABW 1/5/16 - use user's default plant local time for search default
            DateTime localTime = SessionManager.UserContext.LocalTime;

            dmFromDate.SelectedDate = localTime.AddMonths(-1);
            dmToDate.SelectedDate   = localTime.AddMonths(1);


            //lblStatus.Text = "Assessment Status:";

            lblVideoDate.Visible = true;
            phVideo.Visible      = true;

            //SETTINGS sets = SQMSettings.GetSetting("EHS", "AUDITSEARCHFROM");
            //if (sets != null)
            //{
            //	try
            //	{
            //		string[] args = sets.VALUE.Split('-');
            //		if (args.Length > 1)
            //		{
            //			dmFromDate.SelectedDate = new DateTime(Convert.ToInt32(args[0]), Convert.ToInt32(args[1]), Convert.ToInt32(args[2]));
            //		}
            //		else
            //		{
            //			dmFromDate.SelectedDate = SessionManager.UserContext.LocalTime.AddMonths(Convert.ToInt32(args[0]) * -1);
            //		}
            //	}
            //	catch { }
            //}
        }
        private void SetupPage()
        {
            if (ddlPlantSelect.Items.Count < 1)
            {
                List <XLAT> xlatList = SQMBasePage.SelectXLATList(new string[2] {
                    "STATUS_SELECT", "INCIDENT_SEVERITY"
                }, 1);
                List <BusinessLocation> locationList = SQMModelMgr.SelectBusinessLocationList(SessionManager.UserContext.HRLocation.Company.COMPANY_ID, 0, true);
                SQMBasePage.SetLocationList(ddlPlantSelect, UserContext.FilterPlantAccessList(locationList), 0);
                rcbStatusSelect = SQMBasePage.SetComboBoxItemsFromXLAT(rcbStatusSelect, xlatList.Where(l => l.XLAT_GROUP == "STATUS_SELECT" && new string[3] {
                    "", "A", "C"
                }.Contains(l.XLAT_CODE)).ToList(), "SHORT");
                rcbStatusSelect.SelectedValue = "A";
                rcbSeverity = SQMBasePage.SetComboBoxItemsFromXLAT(rcbSeverity, xlatList.Where(l => l.XLAT_GROUP == "INCIDENT_SEVERITY").OrderBy(l => l.SORT_ORDER).ToList(), "SHORT");
            }
            divIncidentList.Visible = true;
            pnlChartSection.Style.Add("display", "none");
            lblChartType.Visible = ddlChartType.Visible = false;

            //Bind data with severity level dropdown.
            var severityList = EHSIncidentMgr.PopulateSeverityLevel();

            rcbSeverityLevel = SQMBasePage.SetComboBoxItemsFromXLAT(rcbSeverityLevel, severityList, "SHORT");


            SQMBasePage.SetRadDateCulture(dmFromDate, "");
            SQMBasePage.SetRadDateCulture(dmToDate, "");

            dmFromDate.ShowPopupOnFocus = dmToDate.ShowPopupOnFocus = true;
            dmFromDate.SelectedDate     = SessionManager.UserContext.LocalTime.AddMonths(-11);
            dmToDate.SelectedDate       = SessionManager.UserContext.LocalTime;

            lblViewEHSRezTitle.Text  = GetLocalResourceObject("lblViewEHSRezTitleResource1.Text").ToString();
            lblPageInstructions.Text = GetLocalResourceObject("lblPageInstructionsResource1.Text").ToString();
            //lblStatus.Text = "Incident Status:";
            rbNew.Text = GetLocalResourceObject("rbNewResource1.Text").ToString();
            lblIncidentDate.Visible   = true;
            lblInspectionDate.Visible = false;
            phIncident.Visible        = true;

            SETTINGS sets = SQMSettings.GetSetting("EHS", "INCIDENTSEARCHFROM");

            if (sets != null)
            {
                try
                {
                    string[] args = sets.VALUE.Split('-');
                    if (args.Length > 1)
                    {
                        dmFromDate.SelectedDate = new DateTime(Convert.ToInt32(args[0]), Convert.ToInt32(args[1]), Convert.ToInt32(args[2]));
                    }
                    else
                    {
                        dmFromDate.SelectedDate = SessionManager.UserContext.LocalTime.AddMonths(Convert.ToInt32(args[0]) * -1);
                    }
                }
                catch { }
            }

            foreach (INCIDENT_TYPE ip in EHSIncidentMgr.SelectIncidentTypeList(SessionManager.PrimaryCompany().COMPANY_ID, SessionManager.UserContext.Language.NLS_LANGUAGE))
            {
                RadComboBoxItem item = new RadComboBoxItem(ip.TITLE, ip.INCIDENT_TYPE_ID.ToString());
                item.Checked = true;
                rcbIncidentType.Items.Add(item);
            }

            // lookup charts defined for this module & app context
            PERSPECTIVE_VIEW view = ViewModel.LookupView(entities, "HSIR", "HSIR", 0, SessionManager.UserContext.Language.NLS_LANGUAGE);

            if (view != null)
            {
                ddlChartType.Items.Clear();
                ddlChartType.Items.Add(new RadComboBoxItem("", ""));
                foreach (PERSPECTIVE_VIEW_ITEM vi in view.PERSPECTIVE_VIEW_ITEM.Where(l => l.STATUS != "I").OrderBy(l => l.ITEM_SEQ).ToList())
                {
                    RadComboBoxItem item = new RadComboBoxItem();
                    item.Text     = vi.TITLE;
                    item.Value    = vi.ITEM_SEQ.ToString();
                    item.ImageUrl = ViewModel.GetViewItemImageURL(vi);
                    ddlChartType.Items.Add(item);
                }
            }

            if (UserContext.GetMaxScopePrivilege(SysScope.incident) <= SysPriv.action)
            {
                uclExport.Visible = true;
            }
            else
            {
                uclExport.Visible = false;
            }
        }
        public void BindTaskUpdate(TASK_STATUS task, string context)
        {
            PSsqmEntities ctx = new PSsqmEntities();

            if (TaskXLATList == null || TaskXLATList.Count == 0)
            {
                TaskXLATList = SQMBasePage.SelectXLATList(new string[5] {
                    "TASK_STATUS", "RECORD_TYPE", "INCIDENT_STATUS", "NOTIFY_SCOPE_TASK", "ACTION_CATEGORY"
                });
            }

            CurrentTask = task;

            pnlUpdateTask.Visible         = true;
            btnTaskUpdate.CommandArgument = btnTaskComplete.CommandArgument = btnTaskAssign.CommandArgument = task.TASK_ID.ToString();

            if (task.STATUS == ((int)TaskStatus.Complete).ToString())
            {
                btnTaskComplete.Visible = btnTaskUpdate.Visible = btnTaskAssign.Visible = false;
                //tbTaskDescription.Enabled = rdpTaskDueDT.Enabled = tbTaskComments.Enabled = false;
                rdpTaskDueDT.Enabled = tbTaskComments.Enabled = false;
            }
            else
            {
                btnTaskComplete.Visible = btnTaskUpdate.Visible = btnTaskAssign.Visible = true;
                //tbTaskDescription.Enabled = rdpTaskDueDT.Enabled = tbTaskComments.Enabled = true;
                rdpTaskDueDT.Enabled = tbTaskComments.Enabled = true;
            }

            switch ((TaskRecordType)task.RECORD_TYPE)
            {
            case TaskRecordType.HealthSafetyIncident:
                lblTaskTypeValue.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "RECORD_TYPE" && l.XLAT_CODE == task.RECORD_TYPE.ToString()).FirstOrDefault().DESCRIPTION;
                if (task.TASK_STEP == "350")
                {                               // corrective action task
                    lblTaskTypeValue.Text += (" - " + TaskXLATList.Where(l => l.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && l.XLAT_CODE == task.TASK_STEP).FirstOrDefault().DESCRIPTION);
                }
                else
                {
                    lblTaskTypeValue.Text += (" - " + TaskXLATList.Where(l => l.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && l.XLAT_CODE == task.TASK_STEP).FirstOrDefault().DESCRIPTION);
                }
                break;

            case TaskRecordType.PreventativeAction:
                lblTaskTypeValue.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "RECORD_TYPE" && l.XLAT_CODE == task.RECORD_TYPE.ToString()).FirstOrDefault().DESCRIPTION;
                if (task.TASK_STEP == "350")
                {                               // corrective action task
                    lblTaskTypeValue.Text += (" - " + TaskXLATList.Where(l => l.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && l.XLAT_CODE == task.TASK_STEP).FirstOrDefault().DESCRIPTION);
                }
                else
                {
                    lblTaskTypeValue.Text += (" - " + TaskXLATList.Where(l => l.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && l.XLAT_CODE == task.TASK_STEP).FirstOrDefault().DESCRIPTION);
                }
                btnTaskLink.CommandArgument = task.RECORD_ID.ToString();
                btnTaskLink.Visible         = true;
                btnTaskAssign.Visible       = btnTaskComplete.Visible = false;
                break;

            case TaskRecordType.Audit:
                //AUDIT audit = EHSAuditMgr.SelectAuditById(ctx, task.RECORD_ID);
                lblTaskTypeValue.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "RECORD_TYPE" && l.XLAT_CODE == task.RECORD_TYPE.ToString()).FirstOrDefault().DESCRIPTION;
                if ((task.RECORD_SUBID.HasValue && task.RECORD_SUBID > 0) || task.TASK_STEP == "350")
                {                               // action required if subid references a specific audit question
                    lblTaskTypeValue.Text += (" - " + TaskXLATList.Where(l => l.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && l.XLAT_CODE == task.TASK_STEP).FirstOrDefault().DESCRIPTION);
                }
                else
                {
                    lblTaskTypeValue.Text += (" - " + TaskXLATList.Where(l => l.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && l.XLAT_CODE == "300").FirstOrDefault().DESCRIPTION);
                }
                break;

            default:
                return;

                break;
            }

            //tbTaskDescription.Text = task.DESCRIPTION;  // command of what to do
            lbTaskDescription.Text  = task.DESCRIPTION;         // command of what to do
            lblTaskDetailValue.Text = task.DETAIL;              // incident description or audit question
            PERSON createBy = null;                             // mt - predeclare create by person to better handle NULL CREATE_ID

            // get the Create By person name and display
            if (task.CREATE_ID.HasValue)
            {
                createBy = SQMModelMgr.LookupPerson(ctx, (decimal)task.CREATE_ID, "", false);
            }
            if (createBy == null)
            {
                lblCreatedByValue.Text = Resources.LocalizedText.AutomatedScheduler;
            }
            else
            {
                lblCreatedByValue.Text = SQMModelMgr.FormatPersonListItem(createBy, false, "LF");
            }

            PERSON assignTo = SQMModelMgr.LookupPerson(ctx, (decimal)task.RESPONSIBLE_ID, "", false);

            if (assignTo == null)
            {
                lblAssignPersonValue.Text = Resources.LocalizedText.AutomatedScheduler;
            }
            else
            {
                lblAssignPersonValue.Text = SQMModelMgr.FormatPersonListItem(assignTo, false, "LF");
            }

            rdpTaskDueDT.SelectedDate = (DateTime)task.DUE_DT;
            lblTaskStatusValue.Text   = TaskXLATList.Where(l => l.XLAT_GROUP == "TASK_STATUS" && l.XLAT_CODE == ((int)TaskMgr.CalculateTaskStatus(task)).ToString()).FirstOrDefault().DESCRIPTION;
            tbTaskComments.Text       = task.COMMENTS;

            int attachCount = SQM.Website.Classes.SQMDocumentMgr.GetAttachmentCountByRecord(CurrentTask.RECORD_TYPE, CurrentTask.RECORD_ID, CurrentTask.TASK_STEP, "");

            lnkAttachments.Text    = attachCount == 0 ? Resources.LocalizedText.Attachments : (Resources.LocalizedText.Attachments + " (" + attachCount.ToString() + ")");
            lnkAttachments.Visible = true;
        }
        public void BindTaskAdd(int recordType, decimal recordID, decimal recordSubID, string taskStep, string taskType, string originalDetail, decimal plantID, string context)
        {
            PSsqmEntities ctx = new PSsqmEntities();

            if (TaskXLATList == null || TaskXLATList.Count == 0)
            {
                TaskXLATList = SQMBasePage.SelectXLATList(new string[5] {
                    "TASK_STATUS", "RECORD_TYPE", "INCIDENT_STATUS", "NOTIFY_SCOPE_TASK", "ACTION_CATEGORY"
                });
            }

            pnlUpdateTask.Visible      = false;
            pnlAddTask.Visible         = true;
            btnTaskAdd.CommandArgument = recordType.ToString() + "~" + recordID.ToString() + "~" + recordSubID.ToString() + "~" + taskStep + "~" + taskType + "~" + plantID.ToString();

            lblTaskTypeValueAdd.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "RECORD_TYPE" && l.XLAT_CODE == recordType.ToString()).FirstOrDefault().DESCRIPTION;

            switch ((TaskRecordType)recordType)
            {
            case TaskRecordType.Audit:
                if ((recordSubID > 0) || taskStep == "350")
                {                               // action required if subid references a specific audit question
                    lblTaskTypeValueAdd.Text += (" - " + TaskXLATList.Where(l => l.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && l.XLAT_CODE == taskStep).FirstOrDefault().DESCRIPTION);
                }
                else
                {
                    lblTaskTypeValueAdd.Text += (" - " + TaskXLATList.Where(l => l.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && l.XLAT_CODE == "300").FirstOrDefault().DESCRIPTION);
                }
                break;

            default:
                return;

                break;
            }

            lblTaskDetailValueAdd.Text   = originalDetail;                                                                                                       // cause of the requirement
            rdpTaskDueDTAdd.SelectedDate = SessionManager.UserContext.LocalTime;                                                                                 // default to today?
            lblTaskStatusValueAdd.Text   = TaskXLATList.Where(l => l.XLAT_GROUP == "TASK_STATUS" && l.XLAT_CODE == (0).ToString()).FirstOrDefault().DESCRIPTION; // default to the "Open" status

            ddlScheduleScopeAdd.Items.Clear();
            mnuScheduleScopeAdd.Items.Clear();

            BusinessLocation location = new BusinessLocation().Initialize(plantID);
            SysPriv          maxPriv  = UserContext.GetMaxScopePrivilege(SysScope.busloc);

            List <BusinessLocation> locationList = SessionManager.PlantList;

            locationList = UserContext.FilterPlantAccessList(locationList);

            if (maxPriv <= SysPriv.config)              // is a plant admin or greater ?
            {
                // AW20170105 - move this up so it can be used by both admin and non admin
                //List<BusinessLocation> locationList = SessionManager.PlantList;
                //locationList = UserContext.FilterPlantAccessList(locationList);

                if (locationList.Select(l => l.Plant.BUS_ORG_ID).Distinct().Count() > 1 && SessionManager.IsUserAgentType("ipad,iphone") == false)
                {
                    ddlScheduleScopeAdd.Visible = false;
                    mnuScheduleScopeAdd.Visible = true;
                    SQMBasePage.SetLocationList(mnuScheduleScopeAdd, locationList, plantID, location.Plant.PLANT_NAME, "TOP", true);
                    //RadMenuItem mi = new RadMenuItem();
                    //mi.Text = (location.Plant.PLANT_NAME);
                    //mi.Value = plantID.ToString();
                    ////mi.ImageUrl = "~/images/defaulticon/16x16/user-alt-2.png";
                    //mnuScheduleScopeAdd.Items[0].Items.Insert(0, mi);
                    //mnuScheduleScopeAdd.Attributes.Add("z-index", "9");
                }
                else
                {
                    ddlScheduleScopeAdd.Visible = true;
                    mnuScheduleScopeAdd.Visible = false;
                    SQMBasePage.SetLocationList(ddlScheduleScopeAdd, locationList, plantID, true);
                }
            }
            else
            {
                ddlScheduleScopeAdd.Visible = true;
                mnuScheduleScopeAdd.Visible = false;
                //ddlScheduleScopeAdd.Items.Insert(0, new RadComboBoxItem((SessionManager.UserContext.Person.FIRST_NAME + " " + SessionManager.UserContext.Person.LAST_NAME), "0"));
                //ddlScheduleScopeAdd.Items[0].ImageUrl = "~/images/defaulticon/16x16/user-alt-2.png";
                SQMBasePage.SetLocationList(ddlScheduleScopeAdd, locationList, plantID, true);
            }

            List <PERSON> personList = SQMModelMgr.SelectPlantPersonList(1, plantID).Where(l => !string.IsNullOrEmpty(l.EMAIL)).OrderBy(l => l.LAST_NAME).ToList();

            SQMBasePage.SetPersonList(ddlAssignPersonAdd, personList, "", 0, false, "LF");

            List <TaskItem> tasklist = TaskMgr.ExceptionTaskListByRecord(recordType, recordID, recordSubID);

            rptTaskList.DataSource = tasklist;
            rptTaskList.DataBind();
            if (tasklist.Count > 0)
            {
                pnlListTasks.Visible = true;
            }
            else
            {
                pnlListTasks.Visible = false;
            }

            btnTaskAdd.Visible    = true;
            btnTaskUpdate.Visible = false;
        }
Exemple #20
0
        public static int NotifyIncidentStatus(INCIDENT incident, string scopeAction)
        {
            int    status = 0;
            string notifyScope;

            if ((EHSIncidentTypeId)incident.ISSUE_TYPE_ID == EHSIncidentTypeId.InjuryIllness)
            {
                notifyScope = "IN-" + incident.ISSUE_TYPE_ID.ToString();
            }
            else
            {
                notifyScope = "IN-" + ((int)EHSIncidentTypeId.Any).ToString();
            }

            PLANT         plant            = SQMModelMgr.LookupPlant((decimal)incident.DETECT_PLANT_ID);
            List <PERSON> notifyPersonList = InvolvedPersonList(incident);

            notifyPersonList.AddRange(GetNotifyPersonList(plant, notifyScope, scopeAction));

            if (notifyPersonList.Count > 0)
            {
                List <XLAT> XLATList = SQMBasePage.SelectXLATList(new string[3] {
                    "NOTIFY_SCOPE", "NOTIFY_SCOPE_TASK", "NOTIFY_TASK_STATUS"
                });
                string appUrl = SQMSettings.SelectSettingByCode(new PSsqmEntities(), "MAIL", "TASK", "MailURL").VALUE;
                if (string.IsNullOrEmpty(appUrl))
                {
                    appUrl = "the website";
                }

                string actionText   = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_SCOPE_TASK" && x.XLAT_CODE == scopeAction).FirstOrDefault().DESCRIPTION;
                string emailSubject = "Health/Safety Incident " + actionText + ": " + incident.ISSUE_TYPE + " (" + plant.PLANT_NAME + ")";
                string emailBody    = "A new Health/Safety incident has been " + actionText + " :<br/>" +
                                      "<br/>" +
                                      "Incident ID: " + WebSiteCommon.FormatID(incident.INCIDENT_ID, 6) + "<br/>" +
                                      plant.PLANT_NAME + "<br/>" +
                                      incident.ISSUE_TYPE + "<br/>" +
                                      "<br/>" +
                                      incident.DESCRIPTION + "<br/>" +
                                      "<br/>" +
                                      "On : " + DateTime.Now.ToString() +
                                      "<br/>" +
                                      "By : " + incident.LAST_UPD_BY +
                                      "<br/>" +
                                      "Please log in to " + (appUrl + incidentPath) + " to view this incident.";

                string emailTo = "";
                foreach (PERSON person in notifyPersonList.Where(l => !string.IsNullOrEmpty(l.EMAIL)).ToList())
                {
                    emailTo += string.IsNullOrEmpty(emailTo) ? person.EMAIL : ("," + person.EMAIL);
                }

                Thread thread = new Thread(() => WebSiteCommon.SendEmail(emailTo, emailSubject, emailBody, "", "web", null));
                thread.IsBackground = true;
                thread.Start();
            }

            //WebSiteCommon.SendEmail(emailTo, emailSubject, emailBody, "", "web", null);

            return(status);
        }
        public void BindIncidentSummary(decimal incidentID)
        {
            PSsqmEntities ctx = new PSsqmEntities();

            XLATList = SQMBasePage.SelectXLATList(new string[2] {
                "INCIDENT_STATUS", "TASK_STATUS"
            });
            string none = "None entered";             // TODO:  get this from XLAT table
            string more = " ...";

            pnlIncidentSummary.Visible = true;
            INCIDENT incident = EHSIncidentMgr.SelectIncidentById(ctx, incidentID, true);

            if (incident == null)
            {
                ;                 // error
                return;
            }

            lblDetail.Text = incident.DESCRIPTION;

            if (incident.INCFORM_CONTAIN != null && incident.INCFORM_CONTAIN.Count > 0)
            {
                lblContainment.Text = incident.INCFORM_CONTAIN.Count > 1 ? incident.INCFORM_CONTAIN.ElementAt(0).ITEM_DESCRIPTION + more : incident.INCFORM_CONTAIN.ElementAt(0).ITEM_DESCRIPTION;
            }
            else
            {
                lblContainment.Text = none;
            }

            if (incident.INCFORM_ROOT5Y != null && incident.INCFORM_ROOT5Y.Count > 0)
            {
                lblContainment.Text = incident.INCFORM_ROOT5Y.Count > 1 ? incident.INCFORM_ROOT5Y.ElementAt(0).ITEM_DESCRIPTION + more : incident.INCFORM_ROOT5Y.ElementAt(0).ITEM_DESCRIPTION;
            }
            else
            {
                lblContainment.Text = none;
            }

            if (incident.INCFORM_ACTION != null && incident.INCFORM_ACTION.Count > 0)
            {
                lblContainment.Text = incident.INCFORM_ACTION.Count > 1 ? incident.INCFORM_ACTION.ElementAt(0).ITEM_DESCRIPTION + more : incident.INCFORM_ACTION.ElementAt(0).ITEM_DESCRIPTION;
            }
            else
            {
                lblContainment.Text = none;
            }

            if (incident.INCFORM_APPROVAL != null && incident.INCFORM_APPROVAL.Count > 0)
            {
                lblSignoff.Text = incident.INCFORM_APPROVAL.ElementAt(0).APPROVER_PERSON + SQMBasePage.FormatDate((DateTime)incident.INCFORM_APPROVAL.ElementAt(0).APPROVAL_DATE, "d", false);
                if (incident.INCFORM_APPROVAL.Count > 1)
                {
                    lblSignoff.Text = incident.INCFORM_APPROVAL.ElementAt(1).APPROVER_PERSON + SQMBasePage.FormatDate((DateTime)incident.INCFORM_APPROVAL.ElementAt(1).APPROVAL_DATE, "d", false);
                }
            }
            else
            {
                lblContainment.Text = XLATList.Where(l => l.XLAT_GROUP == "TASK_STATUS" && l.XLAT_CODE == "1").FirstOrDefault().DESCRIPTION_SHORT;                  // pending
            }
        }
        protected void btnConversion_Click(object sender, EventArgs e)
        {
            int             status   = 0;
            INCIDENT_ANSWER answer   = null;
            List <XLAT>     xlatList = SQMBasePage.SelectXLATList(new string[6] {
                "SHIFT", "INJURY_CAUSE", "INJURY_TYPE", "INJURY_PART", "INJURY_TENURE", "IQ_10"
            });

            foreach (EHSIncidentData eda in HSCalcs().ehsCtl.IncidentHst.Where(i => i.Incident.INCFORM_LAST_STEP_COMPLETED < 1 && i.Incident.INCIDENT_ID > 0))
            {
                INCIDENT incident = (from i in entities.INCIDENT where i.INCIDENT_ID == eda.Incident.INCIDENT_ID select i).SingleOrDefault();
                incident.INCIDENT_ANSWER.Load();

                // clear any prior conversion reecords
                string delCmd = " = " + incident.INCIDENT_ID.ToString();
                status = entities.ExecuteStoreCommand("DELETE FROM TASK_STATUS WHERE RECORD_TYPE = 40 AND RECORD_ID" + delCmd);
                status = entities.ExecuteStoreCommand("DELETE FROM INCFORM_LOSTTIME_HIST WHERE INCIDENT_ID" + delCmd);
                status = entities.ExecuteStoreCommand("DELETE FROM INCFORM_CONTAIN WHERE INCIDENT_ID" + delCmd);
                status = entities.ExecuteStoreCommand("DELETE FROM INCFORM_ACTION WHERE INCIDENT_ID" + delCmd);
                status = entities.ExecuteStoreCommand("DELETE FROM INCFORM_ROOT5Y WHERE INCIDENT_ID" + delCmd);
                status = entities.ExecuteStoreCommand("DELETE FROM INCFORM_CAUSATION WHERE INCIDENT_ID" + delCmd);
                status = entities.ExecuteStoreCommand("DELETE FROM INCFORM_APPROVAL WHERE INCIDENT_ID" + delCmd);
                status = entities.ExecuteStoreCommand("DELETE FROM INCFORM_WITNESS WHERE INCIDENT_ID" + delCmd);
                status = entities.ExecuteStoreCommand("DELETE FROM INCFORM_INJURYILLNESS WHERE INCIDENT_ID" + delCmd);

                EHSIncidentTypeId issueType = (EHSIncidentTypeId)incident.ISSUE_TYPE_ID;
                try
                {
                    switch (issueType)
                    {
                    case EHSIncidentTypeId.PropertyDamage:
                    case EHSIncidentTypeId.PowerOutage:
                    case EHSIncidentTypeId.Fire:
                    case EHSIncidentTypeId.Explosion:
                    case EHSIncidentTypeId.ImsAudit:
                    case EHSIncidentTypeId.RegulatoryContact:
                    case EHSIncidentTypeId.FireSystemImpairment:
                    case EHSIncidentTypeId.SpillRelease:
                    case EHSIncidentTypeId.EhsWalk:
                    case EHSIncidentTypeId.NearMiss:
                    case EHSIncidentTypeId.InjuryIllness:
                        incident.INCFORM_LAST_STEP_COMPLETED = 100;                                                  // assume new status
                        answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 69).FirstOrDefault(); // containment
                        if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                        {
                            incident.INCFORM_LAST_STEP_COMPLETED = 110;                                      // containment
                            INCFORM_CONTAIN contain = new INCFORM_CONTAIN();
                            contain.INCIDENT_ID        = incident.INCIDENT_ID;
                            contain.ITEM_SEQ           = 1;
                            contain.ITEM_DESCRIPTION   = answer.ANSWER_VALUE;
                            contain.ASSIGNED_PERSON_ID = incident.CREATE_PERSON;
                            contain.START_DATE         = contain.COMPLETION_DATE = incident.CREATE_DT;
                            contain.IsCompleted        = true;
                            contain.LAST_UPD_BY        = SessionManager.UserContext.UserName();
                            contain.LAST_UPD_DT        = DateTime.UtcNow;

                            entities.AddToINCFORM_CONTAIN(contain);
                        }

                        answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 24).FirstOrDefault();                                  // root cause
                        if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                        {
                            incident.INCFORM_LAST_STEP_COMPLETED = 120;                                      // root cause
                            INCFORM_ROOT5Y rootc = new INCFORM_ROOT5Y();
                            rootc.INCIDENT_ID      = incident.INCIDENT_ID;
                            rootc.ITEM_SEQ         = 1;
                            rootc.ITEM_DESCRIPTION = answer.ANSWER_VALUE;
                            rootc.LAST_UPD_BY      = SessionManager.UserContext.UserName();
                            rootc.LAST_UPD_DT      = DateTime.UtcNow;

                            entities.AddToINCFORM_ROOT5Y(rootc);
                        }

                        answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 78).FirstOrDefault();                                  // causation
                        if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                        {
                            incident.INCFORM_LAST_STEP_COMPLETED = 125;                                      // causation
                            INCFORM_CAUSATION cause = new INCFORM_CAUSATION();
                            cause.INCIDENT_ID   = incident.INCIDENT_ID;
                            cause.CAUSEATION_CD = xlatList.Where(l => l.XLAT_GROUP == "INJURY_CAUSE" && l.DESCRIPTION == answer.ANSWER_VALUE).FirstOrDefault() == null ? "1000" : xlatList.Where(l => l.XLAT_GROUP == "INJURY_CAUSE" && l.DESCRIPTION == answer.ANSWER_VALUE).FirstOrDefault().XLAT_CODE;
                            cause.LAST_UPD_BY   = SessionManager.UserContext.UserName();
                            cause.LAST_UPD_DT   = DateTime.UtcNow;

                            entities.AddToINCFORM_CAUSATION(cause);
                        }

                        answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 27).FirstOrDefault();                                  // corrective action
                        if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                        {
                            incident.INCFORM_LAST_STEP_COMPLETED = 130;                                      // corrective action
                            TASK_STATUS action = new TASK_STATUS();
                            action.RECORD_TYPE  = (int)TaskRecordType.HealthSafetyIncident;
                            action.RECORD_ID    = incident.INCIDENT_ID;
                            action.TASK_STEP    = ((int)SysPriv.action).ToString();
                            action.TASK_SEQ     = 0;
                            action.RECORD_SUBID = 0;
                            action.TASK_TYPE    = "T";
                            action.TASK_SEQ     = 0;
                            action.DESCRIPTION  = answer.ANSWER_VALUE;
                            action.DETAIL       = incident.DESCRIPTION;
                            action.STATUS       = "1";
                            action.CREATE_ID    = action.RESPONSIBLE_ID = action.COMPLETE_ID = incident.CREATE_PERSON;                                   // default action values
                            action.CREATE_DT    = action.DUE_DT = action.COMPLETE_DT = incident.CREATE_DT;
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 79).FirstOrDefault();                                 // responsible
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                action.RESPONSIBLE_ID = action.COMPLETE_ID = decimal.Parse(answer.ANSWER_VALUE);
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 65).FirstOrDefault();                                      // action due date
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                action.DUE_DT = DateTime.ParseExact(answer.ANSWER_VALUE, "M/d/yyyy hh:mm:ss tt", null);
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 66).FirstOrDefault();                                      // action complete date
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                action.COMPLETE_DT = DateTime.ParseExact(answer.ANSWER_VALUE, "M/d/yyyy hh:mm:ss tt", null);
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 70).FirstOrDefault();                                      // verification ?
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                action.COMMENTS = answer.ANSWER_VALUE;
                            }

                            entities.AddToTASK_STATUS(action);
                        }

                        if (incident.CLOSE_DATE_DATA_COMPLETE.HasValue || incident.CLOSE_DATE.HasValue)
                        {
                            incident.INCFORM_LAST_STEP_COMPLETED = 151;                                      // signoff
                            INCFORM_APPROVAL approval = new INCFORM_APPROVAL();
                            approval.INCIDENT_ID        = incident.INCIDENT_ID;
                            approval.ITEM_SEQ           = (int)SysPriv.approve1;
                            approval.APPROVAL_DATE      = incident.CLOSE_DATE.HasValue ? incident.CLOSE_DATE : incident.CLOSE_DATE_DATA_COMPLETE;
                            approval.IsAccepted         = true;
                            approval.APPROVER_PERSON_ID = incident.CLOSE_PERSON.HasValue ? incident.CLOSE_PERSON : incident.CREATE_PERSON;
                            PERSON person = (from p in entities.PERSON where p.PERSON_ID == approval.APPROVER_PERSON_ID select p).FirstOrDefault();
                            approval.APPROVAL_MESSAGE = approval.APPROVER_PERSON = (person.FIRST_NAME + " " + person.LAST_NAME);
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 67).FirstOrDefault();                                      // completed by
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                approval.APPROVAL_MESSAGE = approval.APPROVER_PERSON = answer.ANSWER_VALUE;
                                string[] names = answer.ANSWER_VALUE.ToLower().Split(' ');
                                if (names.Length > 1)
                                {
                                    string firstName = names[0];
                                    string lastnamne = names[1];
                                    person = (from p in entities.PERSON where p.FIRST_NAME.ToLower() == firstName && p.LAST_NAME.ToLower() == lastnamne select p).FirstOrDefault();
                                }
                            }
                            if (person != null)
                            {
                                approval.APPROVER_PERSON_ID = person.PERSON_ID;
                                approval.APPROVER_TITLE     = person.JOB_TITLE;
                            }

                            entities.AddToINCFORM_APPROVAL(approval);
                        }

                        if (issueType == EHSIncidentTypeId.InjuryIllness)
                        {
                            INCFORM_INJURYILLNESS inRec   = new INCFORM_INJURYILLNESS();
                            INCFORM_WITNESS       witness = new INCFORM_WITNESS();
                            INCFORM_LOSTTIME_HIST hist    = new INCFORM_LOSTTIME_HIST();

                            inRec.INCIDENT_ID = incident.INCIDENT_ID;
                            answer            = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 6).FirstOrDefault();                          // shift

                            inRec.SHIFT = GetXLATCode(xlatList, "SHIFT", answer.ANSWER_VALUE);
                            answer      = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 7).FirstOrDefault();                                // department
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.DEPARTMENT = answer.ANSWER_VALUE;
                                DEPARTMENT dept = (from d in entities.DEPARTMENT where d.DEPT_NAME.ToLower() == answer.ANSWER_VALUE.ToLower() select d).SingleOrDefault();
                                if (dept != null)
                                {
                                    inRec.DEPT_ID = dept.DEPT_ID;
                                }
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 8).FirstOrDefault();                                     // involved person
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.INVOLVED_PERSON_NAME = answer.ANSWER_VALUE;
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 4).FirstOrDefault();                                     // supervisor inform date
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.SUPERVISOR_INFORMED_DT = DateTime.ParseExact(answer.ANSWER_VALUE, "M/d/yyyy hh:mm:ss tt", null);
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 5).FirstOrDefault();                                     // time of incident
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.INCIDENT_TIME = TimeSpan.Parse(answer.ANSWER_VALUE);
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 9).FirstOrDefault();                                     // witness
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE) && answer.ANSWER_VALUE.Split(' ').Length > 1)
                            {
                                witness.INCIDENT_ID  = incident.INCIDENT_ID;
                                witness.WITNESS_NO   = 1;
                                witness.WITNESS_NAME = answer.ANSWER_VALUE;
                                witness.LAST_UPD_BY  = SessionManager.UserContext.UserName();
                                witness.LAST_UPD_DT  = DateTime.UtcNow;

                                entities.AddToINCFORM_WITNESS(witness);
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 10).FirstOrDefault();                                     // inside/outside
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.INSIDE_OUTSIDE_BLDNG = GetXLATCode(xlatList, "IQ_10", answer.ANSWER_VALUE);
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 11).FirstOrDefault();                                     // weather
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                ;                                                                                        // NO FIELD
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 12).FirstOrDefault(); // injury type
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.INJURY_TYPE = GetXLATCode(xlatList, "INJURY_TYPE", answer.ANSWER_VALUE);
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 13).FirstOrDefault();                                     // body part
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.INJURY_BODY_PART = GetXLATCode(xlatList, "INJURY_PART", answer.ANSWER_VALUE);
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 15).FirstOrDefault();                                     // reocurrance
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.REOCCUR = answer.ANSWER_VALUE.ToLower() == "yes" ? true : false;
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 16).FirstOrDefault();                                     // first aid case
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.FIRST_AID = answer.ANSWER_VALUE.ToLower() == "yes" ? true : false;
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 37).FirstOrDefault();                                     // employee
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.COMPANY_SUPERVISED = answer.ANSWER_VALUE.ToLower() == "yes" ? true : false;
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 58).FirstOrDefault();                                     // specific description
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.DESCRIPTION_LOCAL = answer.ANSWER_VALUE;
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 62).FirstOrDefault();                                     // recordable
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.RECORDABLE = answer.ANSWER_VALUE.ToLower() == "yes" ? true : false;
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 63).FirstOrDefault();                                     // lost time case
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.LOST_TIME = answer.ANSWER_VALUE.ToLower() == "yes" ? true : false;
                                if (inRec.LOST_TIME)
                                {
                                    hist.INCIDENT_ID      = incident.INCIDENT_ID;
                                    hist.WORK_STATUS      = "03";
                                    hist.ITEM_DESCRIPTION = "Lost Time";
                                    hist.BEGIN_DT         = incident.INCIDENT_DT;
                                    answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 3).FirstOrDefault();                                             // expected return date
                                    if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                                    {
                                        hist.RETURN_EXPECTED_DT = DateTime.ParseExact(answer.ANSWER_VALUE, "M/d/yyyy hh:mm:ss tt", null);
                                    }
                                    answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 55).FirstOrDefault();                                             // actual return date
                                    if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                                    {
                                        hist.RETURN_TOWORK_DT = DateTime.ParseExact(answer.ANSWER_VALUE, "M/d/yyyy hh:mm:ss tt", null);
                                    }
                                    hist.LAST_UPD_BY = SessionManager.UserContext.UserName();
                                    hist.LAST_UPD_DT = DateTime.UtcNow;

                                    entities.AddToINCFORM_LOSTTIME_HIST(hist);
                                }
                            }
                            answer = incident.INCIDENT_ANSWER.Where(a => a.INCIDENT_QUESTION_ID == 74).FirstOrDefault();                                     // occupational event ?
                            if (answer != null && !string.IsNullOrEmpty(answer.ANSWER_VALUE))
                            {
                                inRec.STD_PROCS_FOLLOWED = answer.ANSWER_VALUE.ToLower() == "yes" ? true : false;                                          // map to std procedures ?
                            }

                            entities.AddToINCFORM_INJURYILLNESS(inRec);
                        }

                        status = entities.SaveChanges();

                        break;

                    case EHSIncidentTypeId.PreventativeAction:
                        break;

                    default:
                        break;
                    }
                }
                catch
                {
                    decimal id;
                    id = incident.INCIDENT_ID;
                }
            }
        }
        protected void rgAuditList_ItemDataBound(object sender, GridItemEventArgs e)
        {
            if (e.Item is GridDataItem)
            {
                GridDataItem item = (GridDataItem)e.Item;
                HiddenField  hf;
                Label        lbl;

                EHSAuditData data = (EHSAuditData)e.Item.DataItem;

                LinkButton lnk = (LinkButton)e.Item.FindControl("lbAuditId");
                lnk.Text = WebSiteCommon.FormatID(data.Audit.AUDIT_ID, 6);

                /*
                 * if (data.Audit.DESCRIPTION.Length > 120)
                 * {
                 *      lbl = (Label)e.Item.FindControl("lblDescription");
                 *      lbl.Text = data.Audit.DESCRIPTION.Substring(0, 117) + "...";
                 * }
                 */
                //lbl = (Label)e.Item.FindControl("lblDescription");
                //lbl.Text = HttpUtility.HtmlEncode(lbl.Text);

                if (data.Person != null)
                {
                    lbl      = (Label)e.Item.FindControl("lblAuditBy");
                    lbl.Text = SQMModelMgr.FormatPersonListItem(data.Person);
                }

                lbl = (Label)e.Item.FindControl("lblAuditStatus");

                List <XLAT> TaskXLATList = SQMBasePage.SelectXLATList(new string[1] {
                    "AUDIT_STATUS"
                });

                if (data.Audit.CURRENT_STATUS == "C")
                {
                    // TODO: This throws a null reference error when the database field is NULL (which is valid)
                    DateTime clsDate = (DateTime)data.Audit.CLOSE_DATE_DATA_COMPLETE;
                    lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_STATUS" && l.XLAT_CODE == "C").FirstOrDefault().DESCRIPTION + " " + SQMBasePage.FormatDate(clsDate, "d", false);

                    // TODO: Possible fix
                    //DateTime? clsDate = data.Audit.CLOSE_DATE;
                    //if (data.Audit.CLOSE_DATE_DATA_COMPLETE.HasValue)
                    //{
                    //	clsDate = data.Audit.CLOSE_DATE_DATA_COMPLETE;
                    //}

                    //if (clsDate.HasValue)
                    //{
                    //	lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_STATUS" && l.XLAT_CODE == "C").FirstOrDefault().DESCRIPTION + " " + SQMBasePage.FormatDate(clsDate.Value, "d", false);
                    //}
                }
                else
                {
                    if (data.DaysToClose == 0)
                    {
                        DateTime tmp = ((DateTime)data.Audit.AUDIT_DT).AddDays(data.AuditType.DAYS_TO_COMPLETE);
                        lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_STATUS" && l.XLAT_CODE == "X").FirstOrDefault().DESCRIPTION + "<br/>(" + SQMBasePage.FormatDate(tmp, "d", false) + ")";
                    }
                    else if (data.Audit.PERCENT_COMPLETE > 0)
                    {
                        lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_STATUS" && l.XLAT_CODE == "I").FirstOrDefault().DESCRIPTION + "<br/>(" + data.DaysToClose + ")";
                    }
                    else
                    {
                        lbl.Text = TaskXLATList.Where(l => l.XLAT_GROUP == "AUDIT_STATUS" && l.XLAT_CODE == "A").FirstOrDefault().DESCRIPTION + "<br/>(" + data.DaysToClose + ")";
                    }
                }

                lnk = (LinkButton)e.Item.FindControl("lbAuditId");
                LinkButton  lnkReAudit    = (LinkButton)e.Item.FindControl("lbReAudit");
                Label       lblAuditingId = (Label)e.Item.FindControl("lblAuditingId");
                HiddenField hdnId         = (HiddenField)e.Item.FindControl("hdnAuditingId");

                if (allowReAudits.ToUpper().Equals("Y"))
                {
                    if (SessionManager.CheckUserPrivilege(SysPriv.admin, SysScope.audit))
                    {
                        if (hdnId.Value.ToString().Trim().Equals("0") || hdnId.Value.ToString().Trim().Equals(""))
                        {
                            lblAuditingId.Visible = false;
                        }
                        else
                        {
                            lnkReAudit.Visible = false;
                            lblAuditingId.Text = Resources.LocalizedText.ReAuditing + " " + hdnId.Value.ToString();
                        }
                    }
                    else
                    {
                        lnkReAudit.Visible    = false;
                        lblAuditingId.Visible = false;
                    }
                }
                else
                {
                    lnkReAudit.Visible    = false;
                    lblAuditingId.Visible = false;
                }

                if (SessionManager.UserContext.Person.PERSON_ID == data.Person.PERSON_ID)
                {
                    lnk.CommandArgument = data.Audit.AUDIT_ID.ToString() + "~" + data.Status;
                    lnkReAudit.Visible  = false;
                    //lblAuditingId.Visible = false;
                }
                else if (!data.Status.Equals("C"))
                {
                    lnk.CommandArgument = data.Audit.AUDIT_ID.ToString() + "~D";
                }
                else
                {
                    lnk.CommandArgument = data.Audit.AUDIT_ID.ToString() + "~C";
                }
            }
        }
        protected bool SaveUser(bool updateUser)
        {
            bool  bErrors = false;
            bool  success;
            Label lblErrorMessage = null;

            PERSON person        = LocalPerson();
            string currentSSOID  = LocalPerson().SSO_ID;
            PERSON currentPerson = new PERSON();

            if (isNew)
            {
                person.SSO_ID = string.IsNullOrEmpty(tbUserSSOID.Text) ? "" : tbUserSSOID.Text.Trim();  // trim traling blanks when creating new user
            }
            else
            {
                person             = SQMModelMgr.LookupPerson(entities, person.PERSON_ID, "", false);
                person.SSO_ID      = string.IsNullOrEmpty(tbUserSSOID.Text) ? "" : tbUserSSOID.Text;
                currentPerson.ROLE = person.ROLE;
            }

            person.FIRST_NAME  = string.IsNullOrEmpty(tbUserFirstName.Text) ? "" : tbUserFirstName.Text;
            person.LAST_NAME   = string.IsNullOrEmpty(tbUserLastName.Text) ? "" : tbUserLastName.Text;
            person.MIDDLE_NAME = string.IsNullOrEmpty(tbUserMiddleName.Text) ? "" : tbUserMiddleName.Text;
            person.JOBCODE_CD  = ddlJobCode.SelectedValue;
            if (string.IsNullOrEmpty(ddlPrivGroup.SelectedValue))
            {
                person.PRIV_GROUP = null;
            }
            else
            {
                person.PRIV_GROUP = ddlPrivGroup.SelectedValue;
            }
            person.PHONE       = tbUserPhone.Text;
            person.EMAIL       = tbUserEmail.Text;
            person.EMP_ID      = tbEmpID.Text;
            person.SUPV_EMP_ID = tbSupvEmpID.Text;

            if (!string.IsNullOrEmpty(ddlUserLanguage.SelectedValue))
            {
                person.PREFERRED_LANG_ID = Convert.ToInt32(ddlUserLanguage.SelectedValue);
            }
            if (!string.IsNullOrEmpty(ddlUserTimezone.SelectedValue))
            {
                person.PREFERRED_TIMEZONE = ddlUserTimezone.SelectedValue;
            }

            person.COMPANY_ID = SessionManager.EffLocation.Company.COMPANY_ID;
            if (!string.IsNullOrEmpty(ddlHRLocation.SelectedValue))
            {
                PLANT plant = SQMModelMgr.LookupPlant(Convert.ToDecimal(ddlHRLocation.SelectedValue));
                if (plant != null)
                {
                    person.PLANT_ID   = plant.PLANT_ID;
                    person.BUS_ORG_ID = (decimal)plant.BUS_ORG_ID;
                }
            }

            person.NEW_LOCATION_CD = "";
            foreach (RadComboBoxItem item in SQMBasePage.GetComboBoxCheckedItems(ddlPlantSelect))
            {
                if (string.IsNullOrEmpty(person.NEW_LOCATION_CD))
                {
                    person.NEW_LOCATION_CD = ",";
                }
                person.NEW_LOCATION_CD += (item.Value + ",");
            }

            person.OLD_LOCATION_CD = "";

            /* quality module reference
             * foreach (RadComboBoxItem item in SQMBasePage.GetComboBoxCheckedItems(ddlCustPlantSelect))
             * {
             *  person.OLD_LOCATION_CD += (item.Value + ",");
             * }
             * person.OLD_LOCATION_CD = person.OLD_LOCATION_CD.TrimEnd(',');
             */
            person.STATUS = ddlUserStatus.SelectedValue;

            // roles were originally a list - let's keep the logic below just in case we need to restore a multi-role strategy
            //person.PERSON_ROLE.Clear();
            person.ROLE           = 100;   /////
            person.RCV_ESCALATION = true;

            person.LOCKS = "";
            if (cbUserEmailLock.Checked)
            {
                person.LOCKS += (LockField.email.ToString() + ",");
            }
            if (cbPrivGroupLock.Checked)
            {
                person.LOCKS += (LockField.priv.ToString() + ",");
            }
            if (cbHRLocationLock.Checked)
            {
                person.LOCKS += (LockField.plant.ToString() + ",");
            }
            if (cbUserLanguageLock.Checked)
            {
                person.LOCKS += (LockField.lang.ToString() + ",");
            }
            person.LOCKS = person.LOCKS.TrimEnd(',');

            SetLocalPerson(person);

            if (string.IsNullOrEmpty(tbUserSSOID.Text) || string.IsNullOrEmpty(tbUserFirstName.Text) || string.IsNullOrEmpty(tbUserLastName.Text) ||
                ddlJobCode.SelectedIndex < 0 || string.IsNullOrEmpty(ddlHRLocation.SelectedValue) ||
                string.IsNullOrEmpty(ddlHRLocation.SelectedValue))
            {
                lblErrorMessage = lblErrRequiredInputs;
            }

            if (lblErrorMessage == null)
            {
                // AW20131106 - need to verify that the SSO_ID and email address are unique in the system
                lblDuplicateSSOId.Visible = false;
                lblDuplicateEmail.Visible = false;
                string strSSOId = tbUserSSOID.Text;
                string strEmail = tbUserEmail.Text;
                if (isNew) // || !strSSOId.Equals(person.SSO_ID))
                {
                    // verify unique sso_id
                    strSSOId = tbUserSSOID.Text.Trim();
                    SQM.Website.PSsqmEntities ctxAccess = new PSsqmEntities();
                    SQM_ACCESS access = SQMModelMgr.LookupCredentials(ctxAccess, strSSOId, "", false);
                    if (access != null && access.SSO_ID.ToLower().Equals(strSSOId.ToLower()))
                    {
                        lblErrorMessage = lblDuplicateSSOId;
                    }
                }
                if (lblErrorMessage == null && (isNew || !strEmail.Equals(person.EMAIL)))
                {
                    // verify unique email
                    SQM.Website.PSsqmEntities ctxAccess = new PSsqmEntities();
                    //SQM_ACCESS access = SQMModelMgr.LookupCredentialsByEmail(ctxAccess, strEmail, false);
                    // ABW 20140117 - we want to look up email on person record...
                    PERSON personEmail = SQMModelMgr.LookupPersonByEmail(ctxAccess, strEmail);
                    if (personEmail != null && personEmail.EMAIL.Trim().ToLower().Equals(strEmail.Trim().ToLower()))
                    {
                        lblErrorMessage = lblDuplicateEmail;
                    }
                }
            }
            if (lblErrorMessage != null)
            {
                DisplayUser();
                DisplayErrorMessage(lblErrorMessage);
                return(false);
            }

            if (updateUser)
            {
                string defaultPwd  = "";
                string environment = System.Configuration.ConfigurationManager.AppSettings["environment"].ToString();
                string altEmail    = !string.IsNullOrEmpty(environment) && environment.ToLower() == "dev" ?  System.Configuration.ConfigurationManager.AppSettings["altEmail"].ToString() : "";
                if (isNew)
                {
                    SETTINGS pwdInitial = SQMSettings.SelectSettingByCode(entities, "COMPANY", "TASK", "PasswordDefault");
                    if (pwdInitial != null)
                    {
                        switch (pwdInitial.VALUE.ToUpper())
                        {
                        case "LASTNAME":
                            defaultPwd = person.LAST_NAME;
                            break;

                        case "EMPID":
                            defaultPwd = person.EMP_ID;
                            break;

                        default:
                            break;
                        }
                    }
                }
                SetLocalPerson(SQMModelMgr.UpdatePerson(entities, person, SessionManager.UserContext.UserName(), false, currentSSOID, defaultPwd));
                //selectedUser = SQMModelMgr.UpdatePerson(entities, person, SessionManager.UserContext.UserName(), Convert.ToBoolean(GetFindControlValue("cbIsBuyer", hfBase, out success)), GetFindControlValue("tbBuyerCode", hfBase, out success));
                // AW20131106 - send an email for new users with random password generation
                List <SETTINGS> MailSettings = SQMSettings.SelectSettingsGroup("MAIL", ""); // ABW 20140805
                SETTINGS        setting      = new SETTINGS();                              // ABW 20140805
                setting = MailSettings.Find(x => x.SETTING_CD == "MailFromSystem");         // ABW 20140805
                string strEmailCompanyName = "";                                            // ABW 20140805
                if (setting != null)                                                        // ABW 20140805
                {
                    strEmailCompanyName = setting.VALUE;
                }
                bool sendEmail = false;
                setting = MailSettings.Find(x => x.SETTING_CD == "SendNewUserEmail");
                if (setting != null && setting.VALUE.ToLower().Equals("true"))                 // ABW 20140805
                {
                    sendEmail = true;
                }

                List <XLAT> XLATList = SQMBasePage.SelectXLATList(new string[1] {
                    "USER_EMAIL"
                }, 0);
                string         strEmailSubject = "";
                string         strEmailBody    = "";
                LOCAL_LANGUAGE lang            = SQMModelMgr.LookupLanguage(new PSsqmEntities(), "", (int)person.PREFERRED_LANG_ID, false);
                string         strTemp         = "";

                if (isNew && (string.IsNullOrEmpty(defaultPwd) || sendEmail))                  // send email notice only when a default password was not set
                {
                    // send a confirmation email
                    // string strength = WebConfigurationManager.AppSettings["PasswordComplexity"]; // ABW 20140805
                    SETTINGS complexity = SQMSettings.SelectSettingByCode(entities, "COMPANY", "TASK", "PasswordComplexity"); // ABW 20140805
                    string   strength   = "";                                                                                 // ABW 20140805
                    if (complexity == null)
                    {
                        strength = "4";
                    }
                    else
                    {
                        strength = complexity.VALUE;
                    }

                    SQM.Website.PSsqmEntities ctxAccess = new PSsqmEntities();
                    SQM_ACCESS access      = SQMModelMgr.LookupCredentials(ctxAccess, LocalPerson().SSO_ID, "", false);
                    string     key         = SQMModelMgr.GetPasswordKey();
                    string     strPassword = WebSiteCommon.Decrypt(access.PASSWORD, key);

                    // ABW 20140805 - Build the email based on fields in the SETTINGS table
                    //string strEmailSubject = "";
                    //setting = MailSettings.Find(x => x.SETTING_CD == "NewUserSubject");
                    //if (setting == null)
                    //	strEmailSubject = strEmailCompanyName + " " + lblPasswordEmailSubject.Text.ToString();
                    //else
                    //	strEmailSubject = setting.VALUE.Trim();
                    //setting = MailSettings.Find(x => x.SETTING_CD == "NewUserWelcome");
                    //string strEmailBody = "";
                    //if (setting == null)
                    //	strEmailBody = lblPasswordEmailBody1a.Text.ToString();
                    //else
                    //	strEmailBody = setting.VALUE.Trim();
                    //strEmailBody += lblPasswordEmailBody1b.Text.ToString() + " " + LocalPerson().SSO_ID + lblPasswordEmailBody2.Text.ToString() + " " + strPassword;
                    //setting = MailSettings.Find(x => x.SETTING_CD == "MailURL");
                    //if (setting != null)
                    //	strEmailBody += lblPasswordEmailBody2b.Text.ToString() + "<a href='" + setting.VALUE + "'>" + setting.VALUE + "</a>";
                    //complexity = SQMSettings.SelectSettingByCode(entities, "PASSWORDCOMPLEXITY", "TASK", strength); // ABW 20140805
                    //if (complexity != null)
                    //	strEmailBody += "<br><br>" + complexity.VALUE + "<br><br>";
                    //setting = MailSettings.Find(x => x.SETTING_CD == "NewUserSignature");
                    //if (setting == null)
                    //	strEmailBody += "<br><br>" + lblPasswordEmailBody3.Text.ToString();
                    //else
                    //	strEmailBody += "<br><br>" + setting.VALUE.Trim();

                    // ABW 20160115 - Build the email based on fields in the XLAT table
                    strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserSubject", lang.NLS_LANGUAGE).DESCRIPTION;
                    if (strTemp == null || strTemp == "")
                    {
                        strEmailSubject = strEmailCompanyName + " " + lblPasswordEmailSubject.Text.ToString();
                    }
                    else
                    {
                        strEmailSubject = strTemp.Trim();
                    }
                    strTemp      = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserWelcome", lang.NLS_LANGUAGE).DESCRIPTION;
                    strEmailBody = "";
                    if (strTemp == null || strTemp == "")
                    {
                        strEmailBody = lblPasswordEmailBody1a.Text.ToString();
                    }
                    else
                    {
                        strEmailBody = strTemp.Trim();
                    }
                    strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserBodyUsername", lang.NLS_LANGUAGE).DESCRIPTION;
                    if (strTemp == null || strTemp == "")
                    {
                        strEmailBody += lblPasswordEmailBody1b.Text.ToString();
                    }
                    else
                    {
                        strEmailBody += strTemp.Trim();
                    }
                    strEmailBody += " " + LocalPerson().SSO_ID;
                    strTemp       = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserBodyPassword", lang.NLS_LANGUAGE).DESCRIPTION;
                    if (strTemp == null || strTemp == "")
                    {
                        strEmailBody += lblPasswordEmailBody2.Text.ToString();
                    }
                    else
                    {
                        strEmailBody += strTemp.Trim();
                    }
                    strEmailBody += " " + strPassword;
                    strTemp       = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserBodyUrl", lang.NLS_LANGUAGE).DESCRIPTION;
                    string strUrlLabel = "";
                    if (strTemp == null || strTemp == "")
                    {
                        strUrlLabel = lblPasswordEmailBody2b.Text.ToString();
                    }
                    else
                    {
                        strUrlLabel = strTemp.Trim();
                    }
                    setting = MailSettings.Find(x => x.SETTING_CD == "MailURL");
                    if (setting != null)
                    {
                        strEmailBody += strUrlLabel + " <a href='" + setting.VALUE + "'>" + setting.VALUE + "</a>";
                    }
                    complexity = SQMSettings.SelectSettingByCode(entities, "PASSWORDCOMPLEXITY", "TASK", strength);                     // ABW 20140805
                    if (complexity != null)
                    {
                        strEmailBody += "<br><br>" + complexity.VALUE + "<br><br>";
                    }
                    strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserSignature", lang.NLS_LANGUAGE).DESCRIPTION;
                    if (strTemp == null || strTemp == "")
                    {
                        strEmailBody += "<br><br>" + lblPasswordEmailBody3.Text.ToString();
                    }
                    else
                    {
                        strEmailBody += "<br><br>" + strTemp.Trim();
                    }

                    // ABW 20140117 - we are now using the email on the Person record

                    /*
                     * Thread thread = new Thread(() => WebSiteCommon.SendEmail(person.EMAIL, strEmailSubject, strEmailBody.Trim(), ""));
                     * thread.IsBackground = true;
                     * thread.Start();
                     */
                    string mailStatus = WebSiteCommon.SendEmail(person.EMAIL, strEmailSubject, strEmailBody.Trim(), "");
                    EHSNotificationMgr.WriteEmailLog(entities, person.EMAIL, "", strEmailSubject, strEmailBody, 0, LocalPerson().PERSON_ID, ("user password notification - is new = " + isNew.ToString()), mailStatus, altEmail);
                }
                else
                {
                    bool roleChanged = person.ROLE != currentPerson.ROLE ? true : false;
                    // ABW 20160115 - send an email based on a parameter
                    setting = MailSettings.Find(x => x.SETTING_CD == "SendChangeUserEmail");
                    if (setting != null && setting.VALUE.ToLower().Equals("true"))
                    {
                        sendEmail = true;
                    }
                    else
                    {
                        sendEmail = false;
                    }

                    if (roleChanged && sendEmail)
                    {
                        //ABW 20140805 - Build the email based on fields in the SETTINGS table
                        //strEmailSubject = "";
                        //setting = MailSettings.Find(x => x.SETTING_CD == "AdminRoleChangeSubject");
                        //if (setting == null)
                        //	strEmailSubject = lblUserRoleEmailSubjecta.Text + strEmailCompanyName + lblUserRoleEmailSubjectb.Text;
                        //else
                        //	strEmailSubject = setting.VALUE.Trim();
                        //setting = MailSettings.Find(x => x.SETTING_CD == "AdminRoleChangeWelcome");
                        //string strEmailBody = "";
                        //if (setting == null)
                        //	strEmailBody = lblUserRoleEmailBodya.Text + strEmailCompanyName + lblUserRoleEmailBodyb.Text;
                        //else
                        //	strEmailBody = setting.VALUE.Trim();

                        //setting = MailSettings.Find(x => x.SETTING_CD == "AdminRoleChangeSignature");
                        //if (setting == null)
                        //	strEmailBody += "<br><br>" + lblUserRoleEmailBodyc.Text;
                        //else
                        //	strEmailBody += "<br><br>" + setting.VALUE.Trim();

                        //ABW 20160115 - Build the email based on fields in the XLAT table
                        strEmailSubject = "";
                        strTemp         = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "AdminRoleChangeSubject", lang.NLS_LANGUAGE).DESCRIPTION;
                        if (strTemp == null || strTemp == "")
                        {
                            strEmailSubject = lblUserRoleEmailSubjecta.Text + strEmailCompanyName + lblUserRoleEmailSubjectb.Text;
                        }
                        else
                        {
                            strEmailSubject = strTemp.Trim();
                        }

                        strEmailBody = "";
                        strTemp      = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "AdminRoleChangeWelcome", lang.NLS_LANGUAGE).DESCRIPTION;
                        if (strTemp == null || strTemp == "")
                        {
                            strEmailBody = lblUserRoleEmailBodya.Text + strEmailCompanyName + lblUserRoleEmailBodyb.Text;
                        }
                        else
                        {
                            strEmailBody = strTemp.Trim();
                        }

                        setting = MailSettings.Find(x => x.SETTING_CD == "AdminRoleChangeSignature");
                        strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "AdminRoleChangeSignature", lang.NLS_LANGUAGE).DESCRIPTION;
                        if (strTemp == null || strTemp == "")
                        {
                            strEmailBody += "<br><br>" + lblUserRoleEmailBodyc.Text;
                        }
                        else
                        {
                            strEmailBody += strTemp.Trim();
                        }

                        /*
                         * Thread thread = new Thread(() => WebSiteCommon.SendEmail(person.EMAIL, strEmailSubject, strEmailBody, ""));
                         * thread.IsBackground = true;
                         * thread.Start();
                         */
                        string mailStatus = WebSiteCommon.SendEmail(person.EMAIL, strEmailSubject, strEmailBody, "");
                        EHSNotificationMgr.WriteEmailLog(entities, person.EMAIL, "", strEmailSubject, strEmailBody, 0, LocalPerson().PERSON_ID, "user role changed", mailStatus, altEmail);
                    }

                    if (cbResetPassword.Checked)                     // always send an email when the password changes
                    {
                        // build the email body in 3 segments
                        SETTINGS complexity = SQMSettings.SelectSettingByCode(entities, "COMPANY", "TASK", "PasswordComplexity");
                        string   strength   = "";
                        if (complexity == null)
                        {
                            strength = "4";
                        }
                        else
                        {
                            strength = complexity.VALUE;
                        }

                        // ABW 20140805 - Build the email based on fields in the SETTINGS table
                        //string strEmailSubject = "";
                        //setting = MailSettings.Find(x => x.SETTING_CD == "AdminPasswordResetSubject");
                        //if (setting == null)
                        //	strEmailSubject = strEmailCompanyName + " " + lblResetEmailSubject.Text.ToString();
                        //else
                        //	strEmailSubject = setting.VALUE.Trim();
                        //setting = MailSettings.Find(x => x.SETTING_CD == "AdminPasswordResetWelcome");
                        //string strEmailBodya = "";
                        //string strEmailBodyb = "";
                        //string strEmailBodyc = "";
                        //if (setting == null)
                        //	strEmailBodya = lblPasswordEmailBody1a.Text.ToString();
                        //else
                        //	strEmailBodya = setting.VALUE.Trim();
                        //strEmailBodya += lblPasswordEmailBody1b.Text.ToString();
                        //strEmailBodyb = lblPasswordEmailBody2.Text.ToString();
                        //setting = MailSettings.Find(x => x.SETTING_CD == "MailURL");
                        //if (setting != null)
                        //	strEmailBodyc += lblPasswordEmailBody2b.Text.ToString() + "<a href='" + setting.VALUE + "'>" + setting.VALUE + "</a>";
                        //complexity = SQMSettings.SelectSettingByCode(entities, "PASSWORDCOMPLEXITY", "TASK", strength);
                        //if (complexity != null)
                        //	strEmailBodyc += "<br><br>" + complexity.VALUE + "<br><br>";
                        //setting = MailSettings.Find(x => x.SETTING_CD == "AdminPasswordResetSignature");
                        //if (setting == null)
                        //	strEmailBodyc += "<br><br>" + lblPasswordEmailBody3.Text.ToString();
                        //else
                        //	strEmailBodyc += "<br><br>" + setting.VALUE.Trim();

                        // ABW 20160115 - Build the email based on fields in the XLAT table
                        strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "AdminPasswordResetSubject", lang.NLS_LANGUAGE).DESCRIPTION;
                        if (strTemp == null || strTemp == "")
                        {
                            strEmailSubject = strEmailCompanyName + " " + lblPasswordEmailSubject.Text.ToString();
                        }
                        else
                        {
                            strEmailSubject = strTemp.Trim();
                        }

                        string strEmailBodya = "";
                        string strEmailBodyb = "";
                        string strEmailBodyc = "";
                        strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "AdminPasswordResetWelcome", lang.NLS_LANGUAGE).DESCRIPTION;
                        if (strTemp == null || strTemp == "")
                        {
                            strEmailBodya = lblResetEmailBody1a.Text.ToString();
                        }
                        else
                        {
                            strEmailBodya = strTemp.Trim();
                        }

                        strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserBodyUsername", lang.NLS_LANGUAGE).DESCRIPTION;
                        if (strTemp == null || strTemp == "")
                        {
                            strEmailBodya += lblPasswordEmailBody1b.Text.ToString();
                        }
                        else
                        {
                            strEmailBodya += strTemp.Trim();
                        }

                        strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserBodyPassword", lang.NLS_LANGUAGE).DESCRIPTION;
                        if (strTemp == null || strTemp == "")
                        {
                            strEmailBodyb = lblPasswordEmailBody2.Text.ToString();
                        }
                        else
                        {
                            strEmailBodyb = strTemp.Trim();
                        }

                        strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserBodyUrl", lang.NLS_LANGUAGE).DESCRIPTION;
                        string strUrlLabel = "";
                        if (strTemp == null || strTemp == "")
                        {
                            strUrlLabel = lblPasswordEmailBody2b.Text.ToString();
                        }
                        else
                        {
                            strUrlLabel = strTemp.Trim();
                        }
                        setting = MailSettings.Find(x => x.SETTING_CD == "MailURL");
                        if (setting != null)
                        {
                            strEmailBodyc += strUrlLabel.Trim() + "<a href='" + setting.VALUE + "'>" + setting.VALUE + "</a>";
                        }
                        complexity = SQMSettings.SelectSettingByCode(entities, "PASSWORDCOMPLEXITY", "TASK", strength);
                        if (complexity != null)
                        {
                            strEmailBodyc += "<br><br>" + complexity.VALUE + "<br><br>";
                        }

                        strTemp = SQMBasePage.GetXLAT(XLATList, "USER_EMAIL", "NewUserSignature", lang.NLS_LANGUAGE).DESCRIPTION;
                        if (strTemp == null || strTemp == "")
                        {
                            strEmailBodyc += "<br><br>" + lblPasswordEmailBody3.Text.ToString();
                        }
                        else
                        {
                            strEmailBodyc += "<br><br>" + strTemp.Trim();
                        }

                        int msg = WebSiteCommon.RecoverPassword(person.EMAIL, person.SSO_ID, strEmailSubject, strEmailBodya, strEmailBodyb, strEmailBodyc);
                        EHSNotificationMgr.WriteEmailLog(entities, person.EMAIL, "", strEmailSubject, strEmailBodya, 0, LocalPerson().PERSON_ID, "recover password", msg.ToString(), altEmail);
                    }
                }
                isNew = false;
                if (SQMModelMgr.updateStatus < 0)  // report error
                {
                    AlertUpdateResult(SQMModelMgr.updateStatus);
                }
            }
            else
            {
                SetLocalPerson(person);
            }
            return(true);
        }
Exemple #25
0
        public void PopulateInitialForm(INCFORM_TYPE_CONTROL stepRecord)
        {
            PSsqmEntities entities = new PSsqmEntities();

            ApprovalStep = stepRecord;

            XLATList = SQMBasePage.SelectXLATList(new string[1] {
                "INCIDENT_APPROVALS"
            }, SessionManager.UserContext.Person.PREFERRED_LANG_ID.HasValue ? (int)SessionManager.UserContext.Person.PREFERRED_LANG_ID : 1);
            string incident = "";

            if (IncidentId > 0)
            {
                try
                {
                    LocalIncident = (from i in entities.INCIDENT where i.INCIDENT_ID == IncidentId select i).FirstOrDefault();
                    PLANT plant = SQMModelMgr.LookupPlant(entities, (decimal)LocalIncident.DETECT_PLANT_ID, "");
                    if (plant != null)
                    {
                        IncidentLocationTZ = plant.LOCAL_TIMEZONE;
                    }

                    //Get Issue type.
                    if (LocalIncident != null)
                    {
                        incident = LocalIncident.ISSUE_TYPE;
                    }
                    if (incident == null)
                    {
                        incident = "";
                    }
                    //To Display severity-level section only for Injury/Illness type incidents.
                    if (incident == "Injury/Illness")
                    {
                        if (status == 0)
                        {
                            pnlSeverityDescription.Visible = false;
                            pnlSeverity.Visible            = false;
                        }
                        else if (status == 1) //Display severity level and checkBox on Flash Report SignOff only.
                        {
                            pnlSeverity.Visible            = true;
                            pnlSeverityDescription.Visible = false;
                        }
                        else if (status == 2)//Display severity level with description on Investigation Report Signoff only.
                        {
                            pnlSeverity.Visible            = false;
                            pnlSeverityDescription.Visible = true;
                        }
                    }
                    //Get SEVERITY-LEVEL information from database, check related checkbox and display servity-level description.
                    string res = (from i in entities.INCFORM_APPROVAL where i.INCIDENT_ID == IncidentId select i.SEVERITY_LEVEL).FirstOrDefault();
                    if (res == null)
                    {
                        res = "";
                    }
                    else
                    {
                        chkSeverityLevel00.Enabled = false;

                        chkSeverityLevel01.Enabled = false;

                        chkSeverityLevel02.Enabled = false;

                        chkSeverityLevel03.Enabled = false;

                        chkSeverityLevel04.Enabled = false;
                    }
                    if (res == SysPriv.first_add.ToString())
                    {
                        chkSeverityLevel00.Checked       = true;
                        lblSeverityLevelDescription.Text = chkSeverityLevel00.Text;
                    }
                    else if (res == SysPriv.l1.ToString())
                    {
                        chkSeverityLevel01.Checked       = true;
                        lblSeverityLevelDescription.Text = chkSeverityLevel01.Text;
                    }
                    else if (res == SysPriv.l2.ToString())
                    {
                        chkSeverityLevel02.Checked       = true;
                        lblSeverityLevelDescription.Text = chkSeverityLevel02.Text;
                    }
                    else if (res == SysPriv.l3.ToString())
                    {
                        chkSeverityLevel03.Checked       = true;
                        lblSeverityLevelDescription.Text = chkSeverityLevel03.Text;
                    }
                    else if (res == SysPriv.l4.ToString())
                    {
                        chkSeverityLevel04.Checked       = true;
                        lblSeverityLevelDescription.Text = chkSeverityLevel04.Text;
                    }
                }
                catch (Exception ex) { string s = ex.Message; }
            }

            InitializeForm(entities);
        }
        public void BindNotfyPlan(List <NOTIFYACTION> notifyItemList, BusinessLocation businessLocation, string context)
        {
            hfNotifyActionContext.Value = context;
            if (context != "company")
            {
                hfNotifyActionBusLoc.Value = context == "plant" ? businessLocation.Plant.PLANT_ID.ToString() : businessLocation.BusinessOrg.BUS_ORG_ID.ToString();
            }

            if (ddlNotifyScope.Items.Count == 0)
            {
                XLATList = SQMBasePage.SelectXLATList(new string[4] {
                    "NOTIFY_SCOPE", "NOTIFY_SCOPE_TASK", "NOTIFY_TASK_STATUS", "NOTIFY_TIMING"
                });

                // filter out non-installed or authorized modules from the notify-scope list
                List <SETTINGS> settingList = SQMSettings.SelectSettingsGroup("MODULE", "");

                if (settingList.Where(l => l.SETTING_CD == "PREVACTION" && l.VALUE == "A").Count() < 1)
                {
                    XLATList = XLATList.Where(x => !x.XLAT_CODE.Contains("RM-")).ToList();
                }

                ddlNotifyScope.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_SCOPE").ToList();
                ddlNotifyScope.DataValueField = "XLAT_CODE";
                ddlNotifyScope.DataTextField  = "DESCRIPTION";
                ddlNotifyScope.DataBind();

                ddlScopeTask.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_SCOPE_TASK").ToList();
                ddlScopeTask.DataValueField = "XLAT_CODE";
                ddlScopeTask.DataTextField  = "DESCRIPTION";
                ddlScopeTask.DataBind();

                ddlScopeStatus.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_TASK_STATUS").ToList();
                ddlScopeStatus.DataValueField = "XLAT_CODE";
                ddlScopeStatus.DataTextField  = "DESCRIPTION";
                ddlScopeStatus.DataBind();

                ddlScopeTiming.DataSource     = XLATList.Where(x => x.XLAT_GROUP == "NOTIFY_TIMING").ToList();
                ddlScopeTiming.DataValueField = "XLAT_CODE";
                ddlScopeTiming.DataTextField  = "DESCRIPTION";
                ddlScopeTiming.DataBind();

                /*
                 * foreach (PRIVGROUP pg in SQMModelMgr.SelectPrivGroupList(new SysPriv[2] { SysPriv.admin, SysPriv.notify }, SysScope.incident, "A").ToList())
                 * {
                 *      ddlNotifyPrivGroup.Items.Add(new RadComboBoxItem(SQMModelMgr.FormatPrivGroup(pg), pg.PRIV_GROUP));
                 * }
                 */
                foreach (PRIVGROUP pg in SQMModelMgr.SelectPrivGroupList("A", false).ToList())
                {
                    if (pg.PRIV_GROUP.ToUpper() != "COMMON")
                    {
                        ddlNotifyPrivGroup.Items.Add(new RadComboBoxItem(SQMModelMgr.FormatPrivGroup(pg), pg.PRIV_GROUP));
                    }
                }
            }

            pnlNotifyAction.Visible = true;

            rgNotifyAction.DataSource = notifyItemList;
            rgNotifyAction.DataBind();
        }
Exemple #27
0
        private void SetupPage()
        {
            if (ddlPlantSelect.Items.Count < 1)
            {
                List <BusinessLocation> locationList = SQMModelMgr.SelectBusinessLocationList(SessionManager.UserContext.HRLocation.Company.COMPANY_ID, 0, true);
                SQMBasePage.SetLocationList(ddlPlantSelect, UserContext.FilterPlantAccessList(locationList), 0);

                List <XLAT> xlatList = SQMBasePage.SelectXLATList(new string[4] {
                    "IQ_81", "IQ_82", "IQ_83", "STATUS_SELECT"
                }, 1);
                rcbInspectionType             = SQMBasePage.SetComboBoxItemsFromXLAT(rcbInspectionType, xlatList.Where(l => l.XLAT_GROUP == "IQ_81" && l.STATUS == "A").ToList(), "SHORT");
                rcbRecommendType              = SQMBasePage.SetComboBoxItemsFromXLAT(rcbRecommendType, xlatList.Where(l => l.XLAT_GROUP == "IQ_83").ToList(), "SHORT");
                rcbStatusSelect               = SQMBasePage.SetComboBoxItemsFromXLAT(rcbStatusSelect, xlatList.Where(l => l.XLAT_GROUP == "STATUS_SELECT").Where(l => new string[] { "A", "C", "P", "U" }.Contains(l.XLAT_CODE)).ToList(), "SHORT");
                rcbStatusSelect.SelectedValue = "A";

                // work-around for problem w/ radwindow combobox not retaining items created/set from a basepage method ?
                SQMBasePage.SetLocationList(ddlActionLocation, locationList, 0, true);

                rddlNewActionType.DataSource     = xlatList.Where(l => l.XLAT_GROUP == "IQ_81" && l.STATUS == "A").ToList();
                rddlNewActionType.DataTextField  = "DESCRIPTION_SHORT";
                rddlNewActionType.DataValueField = "XLAT_CODE";
                rddlNewActionType.DataBind();
            }
            divIncidentList.Visible = true;
            pnlChartSection.Style.Add("display", "none");
            lblChartType.Visible = ddlChartType.Visible = false;

            SQMBasePage.SetRadDateCulture(dmFromDate, "");
            SQMBasePage.SetRadDateCulture(dmToDate, "");

            dmFromDate.ShowPopupOnFocus = dmToDate.ShowPopupOnFocus = true;
            dmFromDate.SelectedDate     = SessionManager.UserContext.LocalTime.AddMonths(-11);
            dmToDate.SelectedDate       = SessionManager.UserContext.LocalTime;

            //lblViewEHSRezTitle.Text = GetLocalResourceObject("lblViewEHSRezTitleResource1.Text").ToString();
            //lblPageInstructions.Text = GetLocalResourceObject("lblPageInstructionsResource1.Text").ToString();
            //lblStatus.Text = "Incident Status:";
            //rbNew.Text = GetLocalResourceObject("rbNewResource1.Text").ToString();
            lblIncidentDate.Visible   = true;
            lblInspectionDate.Visible = false;

            SETTINGS sets = SQMSettings.GetSetting("EHS", "INCIDENTSEARCHFROM");

            if (sets != null)
            {
                try
                {
                    string[] args = sets.VALUE.Split('-');
                    if (args.Length > 1)
                    {
                        dmFromDate.SelectedDate = new DateTime(Convert.ToInt32(args[0]), Convert.ToInt32(args[1]), Convert.ToInt32(args[2]));
                    }
                    else
                    {
                        dmFromDate.SelectedDate = SessionManager.UserContext.LocalTime.AddMonths(Convert.ToInt32(args[0]) * -1);
                    }
                }
                catch { }
            }

            // lookup charts defined for this module & app context
            PERSPECTIVE_VIEW view = ViewModel.LookupView(entities, "HSCA", "HSCA", 0, SessionManager.UserContext.Language.NLS_LANGUAGE);

            if (view != null)
            {
                ddlChartType.Items.Clear();
                ddlChartType.Items.Add(new RadComboBoxItem("", ""));
                foreach (PERSPECTIVE_VIEW_ITEM vi in view.PERSPECTIVE_VIEW_ITEM.Where(l => l.STATUS != "I").OrderBy(l => l.ITEM_SEQ).ToList())
                {
                    RadComboBoxItem item = new RadComboBoxItem();
                    item.Text     = vi.TITLE;
                    item.Value    = vi.ITEM_SEQ.ToString();
                    item.ImageUrl = ViewModel.GetViewItemImageURL(vi);
                    ddlChartType.Items.Add(item);
                }
            }

            if (UserContext.GetMaxScopePrivilege(SysScope.prevent) <= SysPriv.action)
            {
                uclExport.Visible = true;
            }
            else
            {
                uclExport.Visible = false;
            }
        }