protected void ResetServerAccessButton_Click(object sender, EventArgs e)
 {
     ServerAccessTreeList.DataSource = VSWebBL.ConfiguratorBL.AlertsBL.Ins.GetServersFromProcedure();
     ServerAccessTreeList.DataBind();
     ServerAccessTreeList.SelectAll();
     ServerAccessTreeList.ExpandAll();
 }
 private void FillTreeListFromSession()
 {
     if (Session["AllServerAccessList"] != null && Session["AllServerAccessList"] != "")
     {
         ServerAccessTreeList.DataSource = (DataTable)Session["AllServerAccessList"];
         ServerAccessTreeList.DataBind();
     }
 }
 protected void CollapseAllButton_Click(object sender, EventArgs e)
 {
     try
     {
         if (CollapseAllButton.Text == "Collapse All")
         {
             ServerAccessTreeList.CollapseAll();
             CollapseAllButton.Image.Url = "~/images/icons/add.png";
             CollapseAllButton.Text      = "Expand All";
         }
         else
         {
             ServerAccessTreeList.ExpandAll();
             CollapseAllButton.Image.Url = "~/images/icons/forbidden.png";
             CollapseAllButton.Text      = "Collapse All";
         }
     }
     catch (Exception ex)
     {
         Log.Entry.Ins.WriteHistoryEntry(DateTime.Now.ToString() + " Exception - " + ex);
     }
 }
 private void FillTreeList()
 {
     if (Request.QueryString["FullName"] != null && Request.QueryString["FullName"] != "")
     {
         DataTable DataServersTree = new DataTable();
         //DataServersTree = VSWebBL.SecurityBL.AdminTabBL.Ins.ServersVisibleUpdateGrid(Request.QueryString["FullName"].ToString());
         DataServersTree = VSWebBL.ConfiguratorBL.AlertsBL.Ins.GetServersFromProcedure();
         if (DataServersTree.Rows.Count > 0)
         {
             foreach (DataRow row in DataServersTree.Rows)
             {
                 if (row.ItemArray[5].ToString() == "7")
                 {
                     row.Delete();
                 }
             }
             DataServersTree.AcceptChanges();
         }
         ServerAccessTreeList.DataSource = DataServersTree;
         ServerAccessTreeList.DataBind();
         Session["AllServerAccessList"] = DataServersTree;
     }
 }
        private void GetDeSelectedServers(Dictionary <string, string> dictionary, DataTable locSel)
        {
            string uid       = "";
            string separator = "###$$$###";

            if (Request.QueryString["UserID"] != null && Request.QueryString["UserID"] != "")
            {
                uid = Request.QueryString["UserID"].ToString();
            }
            try
            {
                locSel.Columns.Add("UserID");
                locSel.Columns.Add("LocationID");
                TreeListNodeIterator iterator = ServerAccessTreeList.CreateNodeIterator();
                TreeListNode         node;
                int    counter = 0;
                string locid   = "";

                while (true)
                {
                    node = iterator.GetNext();
                    if (node == null)
                    {
                        break;
                    }
                    counter = 0;
                    //Loop through child nodes. If all of the child nodes are de-selected, add a location to the list
                    //of restrictions
                    if (node.HasChildren)
                    {
                        foreach (TreeListNode childNode in node.ChildNodes)
                        {
                            if (!childNode.Selected)
                            {
                                counter += 1;
                                locid    = childNode.GetValue("locid").ToString();
                            }
                        }
                        //If the de-selected number of nodes is the same as the total number of child nodes, add a location to the
                        //list
                        if (counter == node.ChildNodes.Count)
                        {
                            if (locid != "")
                            {
                                DataRow locdr = locSel.NewRow();
                                locdr["UserID"]     = uid;
                                locdr["LocationID"] = locid;
                                locSel.Rows.Add(locdr);
                                DataColumn[] keyColumns = new DataColumn[1];
                                keyColumns[0]     = locSel.Columns["LocationID"];
                                locSel.PrimaryKey = keyColumns;
                            }
                        }
                    }
                    if (node.Level == 2) //(node.ParentNode.Selected==false)
                    {
                        if (!node.Selected)
                        {
                            locid = node.GetValue("locid").ToString();
                            DataRow[] foundrows = locSel.Select("LocationID=" + locid + "");
                            if (foundrows.Length == 0)
                            {
                                dictionary.Add("'" + node.GetValue("ServerType") + "'" + separator + "'" + node.GetValue("Name") + "'", "'" + node.GetValue("Name") + "'");
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Log.Entry.Ins.WriteHistoryEntry(DateTime.Now.ToString() + " Exception - " + ex);
                throw ex;
            }
        }
        private void RemoveRestricted()
        {
            string    uname        = "";
            DataTable dt           = new DataTable();
            DataTable AllServersDT = new DataTable();
            DataTable ServerRestrictedDataTable = new DataTable();

            if (Request.QueryString["FullName"] != null && Request.QueryString["FullName"] != "")
            {
                uname = Request.QueryString["FullName"].ToString();
            }
            if (Session["AllServerAccessList"] != null && Session["AllServerAccessList"] != "")
            {
                AllServersDT = (DataTable)Session["AllServerAccessList"];
            }
            ServerRestrictedDataTable = VSWebBL.SecurityBL.AdminTabBL.Ins.GetAllServersNotVisible(uname);
            if (AllServersDT.Rows.Count > 0)
            {
                dt = VSWebBL.ConfiguratorBL.AlertsBL.Ins.GetServersFromProcedure();
                if (dt.Rows.Count > 0)
                {
                    foreach (DataRow row in dt.Rows)
                    {
                        if (row.ItemArray[5].ToString() == "7")
                        {
                            row.Delete();
                        }
                    }
                    dt.AcceptChanges();
                }
                ServerAccessTreeList.DataSource = dt;
                ServerAccessTreeList.DataBind();
                if (ServerRestrictedDataTable.Rows.Count > 0)
                {
                    List <int> ServerID   = new List <int>();
                    List <int> LocationID = new List <int>();
                    foreach (DataRow resser in ServerRestrictedDataTable.Rows)
                    {
                        foreach (DataRow allrow in AllServersDT.Rows)
                        {
                            if (resser["ID"].ToString() == allrow["actid"].ToString())
                            {
                                if (allrow["locid"] != null && allrow["locid"].ToString() != "" && resser["LocId"].ToString() == allrow["locid"].ToString())
                                {
                                    ServerID.Add(AllServersDT.Rows.IndexOf(allrow));
                                }
                            }
                        }
                    }
                    foreach (int Id in ServerID)
                    {
                        AllServersDT.Rows[Id].Delete();
                    }
                    AllServersDT.AcceptChanges();
                    try
                    {
                        TreeListNodeIterator iterator = ServerAccessTreeList.CreateNodeIterator();
                        TreeListNode         node;
                        string locid     = "";
                        string actid     = "";
                        string srvtypeid = "";
                        while (true)
                        {
                            node = iterator.GetNext();
                            if (node == null)
                            {
                                break;
                            }
                            if (node.Level == 2)
                            {
                                if (node.GetValue("LocId") != null)
                                {
                                    locid     = node.GetValue("LocId").ToString();
                                    actid     = node.GetValue("actid").ToString();
                                    srvtypeid = node.GetValue("srvtypeid").ToString();
                                    DataRow[] foundrows = AllServersDT.Select("LocId=" + locid + " AND actid=" + actid + " AND srvtypeid=" + srvtypeid);
                                    if (foundrows.Length > 0)
                                    {
                                        node.Selected = true;
                                    }
                                }
                            }
                        }
                        ServerAccessTreeList.ExpandAll();
                        Session["ServerAccessList"] = AllServersDT;
                    }
                    catch (Exception ex)
                    {
                        Log.Entry.Ins.WriteHistoryEntry(DateTime.Now.ToString() + " Exception - " + ex);
                        throw ex;
                    }
                }
                else
                {
                    ServerAccessTreeList.SelectAll();
                }
            }
        }