Example #1
0
        public string GetIncidentInfo(string UID)
        {
            XmlDocument xmlIncident = new XmlDocument();

            try
            {
                IncidentUserTicket ticket = IncidentUserTicket.Load(new Guid(UID));
                if (ticket == null)
                {
                    System.Xml.XmlDocument doc      = new System.Xml.XmlDocument();
                    System.Xml.XmlNode     node     = doc.CreateNode(XmlNodeType.Element, SoapException.DetailElementName.Name, SoapException.DetailElementName.Namespace);
                    System.Xml.XmlNode     resource = doc.CreateNode(XmlNodeType.Element, "resource", string.Empty);
                    resource.InnerText = "strNotfound";
                    node.AppendChild(resource);
                    throw new SoapException(String.Format("The ticket '{0}' not found", UID), new XmlQualifiedName(typeof(ArgumentException).FullName), System.Web.HttpContext.Current.Request.Url.AbsoluteUri, node);
                }

                Security.UserLoginByTicket(ticket);

                xmlIncident.LoadXml("<Incident></Incident>");

                XmlNode xmlRootNode = xmlIncident.SelectSingleNode("Incident");

                XmlElement NameNode        = xmlIncident.CreateElement("Name");
                XmlElement TypeNode        = xmlIncident.CreateElement("Type");
                XmlElement DescriptionNode = xmlIncident.CreateElement("Description");
                //XmlElement ManagerNode = xmlIncident.CreateElement("Manager");
                XmlElement ClientNode  = xmlIncident.CreateElement("Client");
                XmlElement CreatedNode = xmlIncident.CreateElement("Created");
                XmlElement StateNode   = xmlIncident.CreateElement("State");
                XmlElement StateIdNode = xmlIncident.CreateElement("StateId");
                XmlElement ColorNode   = xmlIncident.CreateElement("StateColor");

                int controllerId = -1;
                int IssBoxId     = -1;

                using (IDataReader reader = Incident.GetIncident(ticket.IncidentId))
                {
                    if (reader.Read())
                    {
                        if (reader["ControllerId"] != DBNull.Value)
                        {
                            controllerId = (int)reader["ControllerId"];
                        }
                        IssBoxId = (int)reader["IncidentBoxId"];

                        NameNode.InnerText        = (string)reader["Title"];
                        TypeNode.InnerText        = (string)reader["TypeName"];
                        DescriptionNode.InnerText = (string)reader["Description"];
                        //ManagerNode.InnerText = reader["Title"];
                        ClientNode.InnerText  = (string)reader["ClientName"];
                        CreatedNode.InnerText = ((DateTime)reader["CreationDate"]).ToString("s");
                        StateNode.InnerText   = (string)reader["StateName"];
                        StateIdNode.InnerText = reader["StateId"].ToString();
                        ColorNode.InnerText   = (Util.CommonHelper.GetStateColor((int)reader["StateId"])).ToArgb().ToString();

                        xmlRootNode.AppendChild(NameNode);
                        xmlRootNode.AppendChild(TypeNode);
                        xmlRootNode.AppendChild(DescriptionNode);
                        xmlRootNode.AppendChild(ClientNode);
                        xmlRootNode.AppendChild(CreatedNode);
                        xmlRootNode.AppendChild(StateNode);
                        xmlRootNode.AppendChild(StateIdNode);
                        xmlRootNode.AppendChild(ColorNode);
                    }
                }

                int  stateId = 0;
                int  userId  = -1;
                bool isGroup = false;

                using (IDataReader reader = Incident.GetIncidentTrackingState(ticket.IncidentId))
                {
                    if (reader.Read())
                    {
                        stateId = (int)reader["StateId"];
                        userId  = (int)reader["ResponsibleId"];
                        if (reader["IsResponsibleGroup"] != DBNull.Value && (bool)reader["IsResponsibleGroup"])
                        {
                            isGroup = true;
                        }
                    }
                }


                if (stateId == 7)
                {
                    isGroup = false;
                    userId  = controllerId;
                }

                if (isGroup)
                {
                    XmlElement responsibleNode   = xmlIncident.CreateElement("GroupResponsible");
                    XmlElement responsibleIdNode = xmlIncident.CreateElement("ResponsibleId");

                    responsibleNode.InnerText   = "1";
                    responsibleIdNode.InnerText = IncidentInfo.GroupResponsibleId.ToString();

                    xmlRootNode.AppendChild(responsibleNode);
                    xmlRootNode.AppendChild(responsibleIdNode);
                }
                else if (userId != -1)
                {
                    XmlElement responsibleNode   = xmlIncident.CreateElement("Responsible");
                    XmlElement responsibleIdNode = xmlIncident.CreateElement("ResponsibleId");

                    string UserName = Mediachase.IBN.Business.User.GetUserName(userId);

                    responsibleNode.InnerText   = UserName;
                    responsibleIdNode.InnerText = userId.ToString();

                    xmlRootNode.AppendChild(responsibleNode);
                    xmlRootNode.AppendChild(responsibleIdNode);
                }
                else if (stateId != 1 && stateId != 4 && stateId != 5)
                {
                    XmlElement responsibleNode   = xmlIncident.CreateElement("Responsible");
                    XmlElement responsibleIdNode = xmlIncident.CreateElement("ResponsibleId");

                    responsibleNode.InnerText   = NotSetResponsibleName;
                    responsibleIdNode.InnerText = IncidentInfo.NotSetResponsibleId.ToString();

                    xmlRootNode.AppendChild(responsibleNode);
                    xmlRootNode.AppendChild(responsibleIdNode);
                }

                if (IssBoxId != -1)
                {
                    IncidentBox ib = IncidentBox.Load(IssBoxId);

                    XmlElement BoxNode = xmlIncident.CreateElement("IncidentBox");
                    BoxNode.InnerText = ib.Name;

                    xmlRootNode.AppendChild(BoxNode);
                }

                DataTable tbl = Incident.GetListIncidentStates(ticket.IncidentId);
                foreach (DataRow row in tbl.Rows)
                {
                    if ((int)row["StateId"] != 1 && (int)row["StateId"] != 2)
                    {
                        XmlElement newStateNode = xmlIncident.CreateElement("NewState");

                        XmlElement idNode   = xmlIncident.CreateElement("Id");
                        XmlElement nameNode = xmlIncident.CreateElement("Name");

                        idNode.InnerText   = row["StateId"].ToString();
                        nameNode.InnerText = (string)row["StateName"];

                        newStateNode.AppendChild(idNode);
                        newStateNode.AppendChild(nameNode);

                        xmlRootNode.AppendChild(newStateNode);
                    }
                }

                // OZ: Add Available Responsible (...)
                Incident.Tracking trk = Incident.GetTrackingInfo(ticket.IncidentId);

                // Add No User Element (Custom ID)
                if (trk.CanSetNoUser)
                {
                    AppendNewResponsible(xmlRootNode, NotSetResponsibleName, NotSetResponsibleId);
                }

                // Add Group Element (Custom ID)
                if (trk.CanSetGroup)
                {
                    AppendNewResponsible(xmlRootNode, GroupResponsibleName, GroupResponsibleId);
                }

                // Add Users
                if (trk.CanSetUser)
                {
                    ArrayList alUsers = Incident.GetResponsibleList(ticket.IncidentId);
                    foreach (int iUserId in alUsers)
                    {
                        string userName = Mediachase.IBN.Business.User.GetUserName(iUserId);
                        AppendNewResponsible(xmlRootNode, userName, iUserId);
                    }
                }

                // Custom User  select ...
                // TODO:

                //
            }
            catch (Exception ex)
            {
                Trace.WriteLine(ex.Message);

                throw;
            }
            return(xmlIncident.InnerXml);
        }
Example #2
0
        private void BindValues()
        {
            ddStatus.DataSource     = Incident.GetListIncidentStates(IncidentID);
            ddStatus.DataTextField  = "StateName";
            ddStatus.DataValueField = "StateId";
            ddStatus.DataBind();

            ddPriority.DataSource     = Incident.GetListPriorities();
            ddPriority.DataTextField  = "PriorityName";
            ddPriority.DataValueField = "PriorityId";
            ddPriority.DataBind();

            // Issue box
            foreach (IncidentBox folder in IncidentBox.List())
            {
                ddIssueBox.Items.Add(new ListItem(folder.Name, folder.IncidentBoxId.ToString()));
            }

            int controllerId = -1;

            using (IDataReader reader = Incident.GetIncident(IncidentID))
            {
                if (reader.Read())
                {
                    CommonHelper.SafeSelect(ddPriority, reader["PriorityId"].ToString());

                    if (reader["ControllerId"] != DBNull.Value)
                    {
                        controllerId = (int)reader["ControllerId"];
                    }

                    if (reader["ProjectId"] != DBNull.Value)
                    {
                        ddProject.ObjectTypeId = (int)ObjectTypes.Project;
                        ddProject.ObjectId     = (int)reader["ProjectId"];
                    }

                    if (reader["IncidentBoxId"] != DBNull.Value)
                    {
                        CommonHelper.SafeSelect(ddIssueBox, reader["IncidentBoxId"].ToString());
                    }
                }
            }
            if (controllerId > 0)
            {
                lblController.Text = CommonHelper.GetUserStatus(controllerId);
            }

            // Responsible
            DataTable dt = Incident.GetResponsibleGroupDataTable(IncidentID);

            dt.Columns.Add(new DataColumn("IsNew", typeof(bool)));

            string sUsers = "";

            if (dt != null)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    dr["IsNew"] = false;
                    if ((bool)dr["ResponsePending"])
                    {
                        sUsers += dr["PrincipalId"].ToString() + "*1_";
                    }
                    else
                    {
                        sUsers += dr["PrincipalId"].ToString() + "*0_";
                    }
                }
            }

            if (ViewState["ResponsiblePool"] == null)
            {
                ViewState["ResponsiblePool"] = dt.Copy();
            }

            using (IDataReader reader = Incident.GetIncidentTrackingState(IncidentID))
            {
                if (reader.Read())
                {
                    if ((int)reader["ResponsibleId"] != -1)
                    {
                        ViewState["DDStatus"] = reader["ResponsibleId"].ToString();                        //User
                    }
                    else if (reader["IsResponsibleGroup"] != DBNull.Value && (bool)reader["IsResponsibleGroup"])
                    {
                        if ((int)reader["ResponsibleGroupState"] == 1)
                        {
                            ViewState["DDStatus"] = "-1";                            //pending
                        }
                        else
                        {
                            ViewState["DDStatus"] = "0";                            //denied
                        }
                    }
                    else
                    {
                        ViewState["DDStatus"] = "-2";                        //not set
                    }
                    Util.CommonHelper.SafeSelect(ddStatus, reader["StateId"].ToString());
                }
            }
            string strddStatus = ViewState["DDStatus"].ToString();

            Incident.Tracking trk = Incident.GetTrackingInfo(IncidentID);
            CommandManager    cm  = CommandManager.GetCurrent(this.Page);

            if (strddStatus == "-2")
            {
                lblClient.Text = BuildIconAndText("not_set.png", "tRespNotSet");
                hidResp.Value  = "-2";
            }
            else if (strddStatus == "-1")
            {
                if (!Security.CurrentUser.IsExternal)
                {
                    CommandParameters cp = null;
                    if (!String.IsNullOrEmpty(Command))
                    {
                        cp = new CommandParameters("MC_HDM_GroupResponsibilityInFrame");
                    }
                    else
                    {
                        cp = new CommandParameters("MC_HDM_GroupResponsibility");
                    }
                    cp.CommandArguments = new System.Collections.Generic.Dictionary <string, string>();
                    cp.AddCommandArgument("sUsersKey", sUsers);
                    cp.AddCommandArgument("NotChangeKey", (!trk.CanSetGroup) ? "1" : "0");
                    string cmd = cm.AddCommand("Incident", "", "IncidentView", cp);
                    lblClient.Text = BuildLinkWithIconAndText("waiting.gif", "tRespGroup", cmd);
                }
                else
                {
                    lblClient.Text = BuildIconAndText("waiting.gif", "tRespGroup");
                }

                hidResp.Value = "-1";
            }
            else if (strddStatus == "0")
            {
                if (!Security.CurrentUser.IsExternal)
                {
                    CommandParameters cp = null;
                    if (!String.IsNullOrEmpty(Command))
                    {
                        cp = new CommandParameters("MC_HDM_GroupResponsibilityInFrame");
                    }
                    else
                    {
                        cp = new CommandParameters("MC_HDM_GroupResponsibility");
                    }
                    cp.CommandArguments = new System.Collections.Generic.Dictionary <string, string>();
                    cp.AddCommandArgument("sUsersKey", sUsers);
                    cp.AddCommandArgument("NotChangeKey", (!trk.CanSetGroup) ? "1" : "0");
                    string cmd = cm.AddCommand("Incident", "", "IncidentView", cp);
                    lblClient.Text = BuildLinkWithIconAndText("red_denied.gif", "tRespGroup", cmd);
                }
                else
                {
                    lblClient.Text = BuildIconAndText("red_denied.gif", "tRespGroup");
                }

                hidResp.Value = "-1";
            }
            else
            {
                lblClient.Text = Util.CommonHelper.GetUserStatusUL(int.Parse(strddStatus, CultureInfo.InvariantCulture));
                hidResp.Value  = strddStatus;
            }

            lblChange.Text = String.Format(CultureInfo.InvariantCulture,
                                           "<img alt='' class='btndown2' border='0' src='{0}'/>",
                                           Page.ResolveUrl("~/Layouts/Images/downbtn.gif"));
            if (trk.CanSetNoUser || trk.CanSetGroup || trk.CanSetUser)
            {
                tdChange.Attributes.Add("onclick", "javascript:ShowHideList(event, '" + tdChange.ClientID + "')");
            }
            tdChange.Style.Add("cursor", "pointer");


            hidDecline.Value = "0";
        }
Example #3
0
        protected void btnRefresh_Click(object sender, EventArgs e)
        {
            string arg = Request["__EVENTARGUMENT"];

            string[]  values  = arg.Split(new string[] { "_" }, StringSplitOptions.RemoveEmptyEntries);
            DataTable dt      = null;
            ArrayList alUsers = new ArrayList();

            if (ViewState["ResponsiblePool"] != null)
            {
                dt = ((DataTable)ViewState["ResponsiblePool"]).Copy();
            }
            try
            {
                for (int i = 0; i < values.Length; i++)
                {
                    string sUser   = values[i].Substring(0, values[i].IndexOf("*"));
                    string temp    = values[i].Substring(values[i].IndexOf("*") + 1);
                    string sStatus = temp.Substring(0, temp.IndexOf("*"));
                    string sIsNew  = temp.Substring(temp.IndexOf("*") + 1);
                    alUsers.Add(int.Parse(sUser, CultureInfo.InvariantCulture));
                    DataRow[] dr_mas = dt.Select("PrincipalId=" + sUser);
                    if (dr_mas.Length > 0)
                    {
                        dr_mas[0]["ResponsePending"] = (sStatus == "1");
                        if (sIsNew == "1")
                        {
                            dr_mas[0]["IsNew"] = true;
                        }
                    }
                    else
                    {
                        DataRow newRow = dt.NewRow();
                        newRow["PrincipalId"]     = int.Parse(sUser, CultureInfo.InvariantCulture);
                        newRow["IsGroup"]         = false;
                        newRow["ResponsePending"] = (sStatus == "1");
                        newRow["IsNew"]           = true;
                        dt.Rows.Add(newRow);
                    }
                }
            }
            catch
            {
            }
            ArrayList alDeleted = new ArrayList();

            foreach (DataRow dr in dt.Rows)
            {
                if (!alUsers.Contains((int)dr["PrincipalId"]))
                {
                    alDeleted.Add((int)dr["PrincipalId"]);
                }
            }
            foreach (int iDel in alDeleted)
            {
                DataRow[] dr_mas = dt.Select("PrincipalId = " + iDel);
                if (dr_mas.Length > 0)
                {
                    dt.Rows.Remove(dr_mas[0]);
                }
            }

            if (IsAllDenied())
            {
                ViewState["DDStatus"] = "0";
            }
            else
            {
                ViewState["DDStatus"] = "-1";
            }

            ViewState["ResponsiblePool"] = dt.Copy();

            Incident.Tracking trk = Incident.GetTrackingInfo(IncidentID);

            CommandManager cm = CommandManager.GetCurrent(this.Page);

            if (ViewState["DDStatus"].ToString() == "0")
            {
                if (!Security.CurrentUser.IsExternal)
                {
                    CommandParameters cp = null;
                    if (!String.IsNullOrEmpty(Command))
                    {
                        cp = new CommandParameters("MC_HDM_GroupResponsibilityInFrame");
                    }
                    else
                    {
                        cp = new CommandParameters("MC_HDM_GroupResponsibility");
                    }
                    cp.CommandArguments = new System.Collections.Generic.Dictionary <string, string>();
                    cp.AddCommandArgument("sUsersKey", arg);
                    cp.AddCommandArgument("NotChangeKey", (!trk.CanSetGroup) ? "1" : "0");
                    string cmd = cm.AddCommand("Incident", "", "IncidentView", cp);
                    lblClient.Text = BuildLinkWithIconAndText("red_denied.gif", "tRespGroup", cmd);
                }
                else
                {
                    lblClient.Text = BuildIconAndText("red_denied.gif", "tRespGroup");
                }
            }
            else
            {
                if (!Security.CurrentUser.IsExternal)
                {
                    CommandParameters cp = null;
                    if (!String.IsNullOrEmpty(Command))
                    {
                        cp = new CommandParameters("MC_HDM_GroupResponsibilityInFrame");
                    }
                    else
                    {
                        cp = new CommandParameters("MC_HDM_GroupResponsibility");
                    }
                    cp.CommandArguments = new System.Collections.Generic.Dictionary <string, string>();
                    cp.AddCommandArgument("sUsersKey", arg);
                    cp.AddCommandArgument("NotChangeKey", (!trk.CanSetGroup) ? "1" : "0");
                    string cmd = cm.AddCommand("Incident", "", "IncidentView", cp);
                    lblClient.Text = BuildLinkWithIconAndText("waiting.gif", "tRespGroup", cmd);
                }
                else
                {
                    lblClient.Text = BuildIconAndText("waiting.gif", "tRespGroup");
                }
            }
        }
Example #4
0
        private void BindList()
        {
            DataTable dt = null;

            if (ViewState["ResponsiblePool"] != null)
            {
                dt = ((DataTable)ViewState["ResponsiblePool"]).Copy();
            }

            string sUsers = "";

            if (dt != null)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    if ((bool)dr["ResponsePending"])
                    {
                        sUsers += dr["PrincipalId"].ToString() + "*1_";
                    }
                    else
                    {
                        sUsers += dr["PrincipalId"].ToString() + "*0_";
                    }
                }
            }

            CommandManager cm = CommandManager.GetCurrent(this.Page);

            Incident.Tracking trk = Incident.GetTrackingInfo(IncidentID);

            //			lblAccept.Visible = trk.ShowAccept || trk.ShowAcceptDecline;
            //			lblDecline.Visible = trk.ShowAcceptDecline || trk.ShowDecline;

            if (trk.ShowAcceptDecline)
            {
                lblAccept.Text = String.Format("<input type='checkbox' onclick=\"javascript:SelectMe('{0}','{1}','0')\" id='cbAccept' /><label for='cbAccept'>&nbsp;{2}</label>&nbsp;&nbsp;&nbsp;",
                                               HttpUtility.HtmlAttributeEncode(Util.CommonHelper.GetUserStatusUL(Security.CurrentUser.UserID)),
                                               Security.CurrentUser.UserID,
                                               LocRM.GetString("tAccept"));

                lblAcceptText.InnerHtml = String.Format("<fieldset style='height:50px;padding:7px;border:1px solid #D0D0BF;' id='fsAccept' class='rest-gray'>{0}</fieldset>",
                                                        LocRM.GetString("tAcceptText"));

                lblDecline.Text = String.Format("<input type='checkbox' onclick=\"javascript:SelectMe('','','1');\" id='cbDecline' /><label for='cbDecline'>&nbsp;{0}</label>",
                                                LocRM.GetString("tDecline"));

                lblDeclineText.InnerHtml = String.Format("<fieldset style='height:50px;padding:7px;border:1px solid #D0D0BF;' id='fsDecline' class='rest-gray'>{0}</fieldset>",
                                                         LocRM.GetString("tDeclineText"));
            }
            else if (trk.ShowAccept)
            {
                lblAccept.Text = String.Format("<input type='checkbox' onclick=\"javascript:SelectMe('{0}','{1}','0')\" id='cbAccept' /><label for='cbAccept'>&nbsp;{2}</label>&nbsp;&nbsp;&nbsp;",
                                               HttpUtility.HtmlAttributeEncode(Util.CommonHelper.GetUserStatusUL(Security.CurrentUser.UserID)),
                                               Security.CurrentUser.UserID,
                                               LocRM.GetString("tAcceptYourself"));

                lblAcceptText.InnerHtml = String.Format("<fieldset style='height:40px;padding:7px;border:1px solid #D0D0BF;' id='fsAccept' class='rest-gray'>{0}</fieldset>",
                                                        LocRM.GetString("tAcceptYourselfText"));
            }
            else if (trk.ShowDecline)
            {
                lblDecline.Text = String.Format("<input type='checkbox' onclick=\"javascript:SelectMe('','','1');\" id='cbDecline' /><label for='cbDecline'>&nbsp;{0}</label>",
                                                LocRM.GetString("tDeclineYourself"));

                lblDeclineText.InnerHtml = String.Format("<fieldset style='height:40px;padding:7px;border:1px solid #D0D0BF;' id='fsDecline' class='rest-gray'>{0}</fieldset>",
                                                         LocRM.GetString("tDeclineYourselfText"));
            }

            tableDD.Rows.Clear();
            HtmlTableRow  tr;
            HtmlTableCell tc;

            if (trk.CanSetNoUser)
            {
                tr           = new HtmlTableRow();
                tc           = CreateDDCell("SelectThis(this, -2)");
                tc.InnerHtml = BuildIconAndText("not_set.png", "tRespNotSet");
                tr.Cells.Add(tc);
                tableDD.Rows.Add(tr);
            }

            if (trk.CanSetGroup)
            {
                tr = new HtmlTableRow();
                tc = CreateDDCell("SelectThis(this, -1)");

                if (ViewState["DDStatus"].ToString() == "0" || IsAllDenied())
                {
                    if (!Security.CurrentUser.IsExternal)
                    {
                        CommandParameters cp = null;
                        if (!String.IsNullOrEmpty(Command))
                        {
                            cp = new CommandParameters("MC_HDM_GroupResponsibilityInFrame");
                        }
                        else
                        {
                            cp = new CommandParameters("MC_HDM_GroupResponsibility");
                        }
                        cp.CommandArguments = new System.Collections.Generic.Dictionary <string, string>();
                        cp.AddCommandArgument("sUsersKey", sUsers);
                        cp.AddCommandArgument("NotChangeKey", "0");
                        string cmd = cm.AddCommand("Incident", "", "IncidentView", cp);
                        tc.InnerHtml = BuildLinkWithIconAndText("red_denied.gif", "tRespGroup", cmd);
                    }
                    else
                    {
                        tc.InnerHtml = BuildIconAndText("red_denied.gif", "tRespGroup");
                    }
                }
                else
                {
                    if (!Security.CurrentUser.IsExternal)
                    {
                        CommandParameters cp = null;
                        if (!String.IsNullOrEmpty(Command))
                        {
                            cp = new CommandParameters("MC_HDM_GroupResponsibilityInFrame");
                        }
                        else
                        {
                            cp = new CommandParameters("MC_HDM_GroupResponsibility");
                        }
                        cp.CommandArguments = new System.Collections.Generic.Dictionary <string, string>();
                        cp.AddCommandArgument("sUsersKey", sUsers);
                        cp.AddCommandArgument("NotChangeKey", "0");
                        string cmd = cm.AddCommand("Incident", "", "IncidentView", cp);
                        tc.InnerHtml = BuildLinkWithIconAndText("waiting.gif", "tRespGroup", cmd);
                    }
                    else
                    {
                        tc.InnerHtml = BuildIconAndText("waiting.gif", "tRespGroup");
                    }
                }

                tr.Cells.Add(tc);
                tableDD.Rows.Add(tr);
            }

            if (trk.CanSetUser)
            {
                ArrayList alUsers = Incident.GetResponsibleList(IncidentID);
                foreach (int iUserId in alUsers)
                {
                    tr           = new HtmlTableRow();
                    tc           = CreateDDCell("SelectThis(this, " + iUserId + ")");
                    tc.InnerHtml = Util.CommonHelper.GetUserStatusUL(iUserId);
                    tr.Cells.Add(tc);
                    tableDD.Rows.Add(tr);
                }

                CommandParameters cp = null;
                if (!String.IsNullOrEmpty(Command))                     // popup mode
                {
                    cp = new CommandParameters("MC_HDM_SelectResourceInFrame");
                }
                else
                {
                    cp = new CommandParameters("MC_HDM_SelectResource");
                }

                string cmd = cm.AddCommand("Incident", "", "IncidentView", cp);
                cmd = "closeMenu();" + cmd;

                tr           = new HtmlTableRow();
                tc           = CreateDDCell(cmd);
                tc.InnerHtml = String.Format("<b>{0}</b>", LocRM.GetString("tRespMore"));
                tr.Cells.Add(tc);
                tableDD.Rows.Add(tr);
            }
        }