FindItem() public method

public FindItem ( string valuePath ) : System.Web.UI.WebControls.MenuItem
valuePath string
return System.Web.UI.WebControls.MenuItem
    protected void Menu1_MenuItemDataBound(object sender, MenuEventArgs e)
    {
        if (!Page.IsCallback)
        {
            System.Web.UI.WebControls.Menu menu = (System.Web.UI.WebControls.Menu)sender;
            SiteMapNode mapNode = (SiteMapNode)e.Item.DataItem;

            bool bEsMiembro = false;

            foreach (string RolMenu in mapNode.Roles)
            {
                if (RolMenu == "*")
                {
                    if (mapNode.Title == "Reconexión" && Session["PERFIL"].ToString() != "A")
                    {
                        bEsMiembro = false;
                    }
                    else
                    {
                        bEsMiembro = true;
                    }
                    break;
                }
                string RolMenuAux = RolMenu.Trim();
                if (RolMenuAux != "")
                {
                    foreach (string MiRol in ((RolePrincipal)Page.User).GetRoles())
                    {
                        if (RolMenu == MiRol)
                        {
                            bEsMiembro = true;
                            break;
                        }
                    }
                }
                if (bEsMiembro)
                {
                    break;
                }
            }

            if (!bEsMiembro)
            {
                System.Web.UI.WebControls.MenuItem itemToRemove = menu.FindItem(mapNode.Title);

                if (e.Item.Depth == 0)
                {
                    menu.Items.Remove(e.Item);
                }
                else
                {
                    System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                    if (parent != null)
                    {
                        parent.ChildItems.Remove(e.Item);
                    }
                }
            }
        }
    }
Example #2
0
        private void SetearOpcionesConsultor(Menu menuPrincipal)
        {
            SetearOpcionesGeneral(menuPrincipal);

            menuPrincipal.Items.Remove(menuPrincipal.FindItem("Cliente"));

            // Buscar el item Vehiculo
            MenuItem menuVehiculo = menuPrincipal.FindItem("Vehiculo");

            // Buscar cada subitem del item Vehiculo
            MenuItem venderVehiculo = menuPrincipal.FindItem("Vehiculo/VenderVehiculo");
            MenuItem registrarVehiculo = menuPrincipal.FindItem("Vehiculo/RegistrarVehiculo");
            MenuItem modificarVehiculo = menuPrincipal.FindItem("Vehiculo/ModificarVehiculo");
            MenuItem caracteristicasVehiculo = menuPrincipal.FindItem("Vehiculo/CaracteristicasVehiculo");
            MenuItem eliminarVehiculo = menuPrincipal.FindItem("Vehiculo/EliminarVehiculo");

            // Eliminar cada subitem del item Vehiculo
            menuVehiculo.ChildItems.Remove(venderVehiculo);
            menuVehiculo.ChildItems.Remove(registrarVehiculo);
            menuVehiculo.ChildItems.Remove(modificarVehiculo);
            menuVehiculo.ChildItems.Remove(caracteristicasVehiculo);
            menuVehiculo.ChildItems.Remove(eliminarVehiculo);
        }
Example #3
0
 private void SetearOpcionesGeneral(Menu menuPrincipal)
 {
     // Remover los items que no son accesibles por el usuario
     menuPrincipal.Items.Remove(menuPrincipal.FindItem("Empleado"));
     menuPrincipal.Items.Remove(menuPrincipal.FindItem("Comision"));
 }
Example #4
0
    protected void Menu1_MenuItemDataBound(object sender, MenuEventArgs e)
    {
        if (!Page.IsCallback)
        {
            System.Web.UI.WebControls.Menu menu = (System.Web.UI.WebControls.Menu)sender;
            SiteMapNode mapNode = (SiteMapNode)e.Item.DataItem;

            bool bEsMiembro = false;

            foreach (string RolMenu in mapNode.Roles)
            {
                //if (
                //    (mapNode.Title == "PGE" && !Utilidades.EsModuloAccesible("PGE"))
                //    || (mapNode.Title == "PST" && !Utilidades.EsModuloAccesible("PST"))
                //    || (mapNode.Title == "IAP" && !Utilidades.EsModuloAccesible("IAP"))
                //    )//Si el acceso a los módulos está cortado, no se muestran...
                //{
                //    if (HttpContext.Current.Session["GVT_AdminActual"].ToString() != "A")
                //    {// a menos que el usuario sea administrador.
                //        bEsMiembro = false;
                //        break;
                //    }
                //}

                //if (mapNode.Title == "ADP")
                //{
                //    if (Utilidades.EsModuloAccesible("ADP") && HttpContext.Current.User.IsInRole("PER"))
                //    {
                //        bEsMiembro = true;
                //        break;
                //    }
                //}

                if (RolMenu == "*")
                {
                    //if (mapNode.Title == "Reconexión")
                    //    bEsMiembro = false;
                    //else
                    bEsMiembro = true;
                    //break;
                }
                string RolMenuAux = RolMenu.Trim();
                if (RolMenuAux != "")
                {
                    foreach (string MiRol in ((RolePrincipal)Page.User).GetRoles())
                    {
                        if (RolMenu == MiRol)
                        {
                            bEsMiembro = true;
                            break;
                        }
                    }
                }
                if (bEsMiembro)
                {
                    break;
                }
            }

            if (!bEsMiembro)
            {
                System.Web.UI.WebControls.MenuItem itemToRemove = menu.FindItem(mapNode.Title);
                if (e.Item.Depth == 0)
                {
                    menu.Items.Remove(e.Item);
                    //itemToRemove.Enabled = false;
                }
                else
                {
                    System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                    if (parent != null)
                    {
                        parent.ChildItems.Remove(e.Item);
                        //parent.Enabled = false;
                    }
                }
            }
        }
    }
Example #5
0
        private void DoSelecetion(Menu menu)
        {
            if (suppressPageSelection) { return; }
            bool didSelect = false;

            String valuePath = SiteUtils.GetActivePageValuePath(siteMapDataSource.Provider.RootNode, startingNodeOffset, Request.RawUrl);

            if (valuePath.Length > 0)
            {
                MenuItem menuItem;
                menuItem = menu.FindItem(valuePath);

                if (
                    (topLevelOnly || menu.MaximumDynamicDisplayLevels == 0)
                    && (menuItem == null)
                    && (valuePath.IndexOf(menu.PathSeparator) > -1)
                    )
                {
                    valuePath = valuePath.Substring(0, (valuePath.IndexOf(menu.PathSeparator)));
                    menuItem = menu.FindItem(valuePath);
                }

                if (menuItem != null)
                {
                    try
                    {
                        menuItem.Selected = true;
                        didSelect = true;
                    }
                    catch (InvalidOperationException)
                    {
                        //can happen if node disabled or unselectable
                    }
                }

            }

            if (!didSelect)
            {
                valuePath = SiteUtils.GetActivePageValuePath(siteMapDataSource.Provider.RootNode, startingNodeOffset);

                if (valuePath.Length > 0)
                {
                    MenuItem menuItem;
                    menuItem = menu.FindItem(valuePath);

                    if (
                        (topLevelOnly)
                        && (menuItem == null)
                        && (valuePath.IndexOf(menu.PathSeparator) > -1)
                        )
                    {
                        valuePath = valuePath.Substring(0, (valuePath.IndexOf(menu.PathSeparator)));
                        menuItem = menu.FindItem(valuePath);

                        // http://www.mojoportal.com/Forums/Thread.aspx?thread=7277&mid=34&pageid=5&ItemID=5&pagenumber=1#post33725
                        // patch by vijaykarla 2011-05-24
                        // If the page is not Included In Menu, the above line of code wont work (returns null), following code is solution for it
                        //=========
                        if (menuItem == null)
                        {
            #if NET35
                            if (!string.IsNullOrEmpty(valuePath))
            #else
                            if (!string.IsNullOrWhiteSpace(valuePath))
            #endif
                            {
                                int lastSeperatorIndex = valuePath.LastIndexOf(menu.PathSeparator);
                                while (lastSeperatorIndex > 0)
                                {
                                    valuePath = valuePath.Substring(0, lastSeperatorIndex);
                                    menuItem = menu.FindItem(valuePath);
                                    if (menuItem != null)
                                        break;
                                    lastSeperatorIndex = valuePath.LastIndexOf(menu.PathSeparator);
                                }
                            }
                        }
                        //=======
                    }

                    if (menuItem != null)
                    {
                        try
                        {
                            menuItem.Selected = true;
                            didSelect = true;
                        }
                        catch (InvalidOperationException)
                        {
                            //can happen if node disabled or unselectable
                        }
                    }

                }

            }
        }
Example #6
0
        private void DoMenuSelection(Menu menu)
        {
            // TODO: clean up this hairy mess without breaking anything

            MenuItem menuItem = null;
            bool didSelect = false;
            string valuePath;

            if (isSubMenu)
            {
                valuePath = SiteUtils.GetPageMenuActivePageValuePath(pageMapDataSource.Provider.RootNode);
            }
            else
            {
                valuePath = SiteUtils.GetActivePageValuePath(pageMapDataSource.Provider.RootNode, startingNodeOffset, Request.RawUrl);
            }

            if (valuePath.Length > 0)
            {
                menuItem = menu.FindItem(valuePath);

                if (menuItem == null)
                {
                    if (startingNodeOffset > 0)
                    {
                        for (int i = 1; i <= startingNodeOffset; i++)
                        {
                            if (valuePath.IndexOf("|") > -1)
                            {
                                valuePath = valuePath.Remove(0, valuePath.IndexOf("|") + 1);
                            }

                        }
                    }
                }

                if (menuItem == null)
                {
                    valuePath = SiteUtils.GetPageMenuActivePageValuePath(pageMapDataSource.Provider.RootNode);
                    menuItem = menu.FindItem(valuePath);
                }

                if (menuItem != null)
                {
                    try
                    {
                        menuItem.Selected = true;
                        didSelect = true;
                    }
                    catch (InvalidOperationException)
                    {
                        //can happen if node disabled or unselectable
                    }
                }
            }

            if (!didSelect)
            {
                valuePath = SiteUtils.GetActivePageValuePath(pageMapDataSource.Provider.RootNode, startingNodeOffset);

                if (valuePath.Length > 0)
                {

                    menuItem = menu.FindItem(valuePath);

                    if (
                         (menuItem == null)
                         && (valuePath.IndexOf(menu.PathSeparator) > -1)
                        )
                    {
                        valuePath = valuePath.Substring(0, (valuePath.IndexOf(menu.PathSeparator)));
                        menuItem = menu.FindItem(valuePath);
                    }

                    if (
                        (dynamicDisplayLevels == 0)
                        && (menuItem == null)
                        && (valuePath.IndexOf(menu.PathSeparator) > -1)
                        )
                    {

                        foreach (MenuItem m in menu.Items)
                        {
                            if (valuePath.Contains(m.ValuePath))
                            {
                                try
                                {
                                    m.Selected = true;
                                    didSelect = true;
                                }
                                catch (InvalidOperationException)
                                {
                                    //can happen if node disabled or unselectable
                                }
                                return;
                            }

                        }
                    }

                    if (menuItem != null)
                    {
                        try
                        {
                            menuItem.Selected = true;
                            didSelect = true;
                        }
                        catch (InvalidOperationException)
                        {
                            //can happen if node disabled or unselectable
                        }
                    }

                }
            }

            if (!didSelect)
            {
                valuePath = SiteUtils.GetActivePageValuePath(pageMapDataSource.Provider.RootNode, startingNodeOffset, Request.RawUrl);

                if (valuePath.Length > 0)
                {

                    menuItem = menu.FindItem(valuePath);

                    if (menuItem == null)
                    {
                        if (currentPage == null) { currentPage = CacheHelper.GetCurrentPage(); }
                        if (currentPage != null)
                        {
                            menuItem = menu.FindItem(currentPage.PageGuid.ToString());
                        }
                    }

                    if (
                        (dynamicDisplayLevels == 0)
                        && (menuItem == null)
                        && (valuePath.IndexOf(menu.PathSeparator) > -1)
                        )
                    {

                        foreach (MenuItem m in menu.Items)
                        {
                            if (valuePath.Contains(m.ValuePath))
                            {
                                try
                                {
                                    m.Selected = true;
                                }
                                catch (InvalidOperationException)
                                {
                                    //can happen if node disabled or unselectable
                                }
                                return;
                            }

                        }
                    }

                    if (menuItem != null)
                    {
                        try
                        {
                            menuItem.Selected = true;
                            didSelect = true;
                        }
                        catch (InvalidOperationException)
                        {
                            //can happen if node disabled or unselectable
                        }
                    }

                }
            }
        }
Example #7
0
        protected void Menu1_MenuItemDataBound(object sender, MenuEventArgs e)
        {
            System.Web.UI.WebControls.Menu menu = (System.Web.UI.WebControls.Menu)sender;
            SiteMapNode mapNode = (SiteMapNode)e.Item.DataItem;

            System.Web.UI.WebControls.MenuItem itemToRemove = menu.FindItem(mapNode.Title);
            if (NombreUsr.Text != "SuperAdmin")
            {
                if (this.Entity.TiposUsuario.ToString() == "Alumno")
                {
                    if (mapNode.Title == "AlumnoInscripcion")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            e.Item.Text = "Mis Cursos";
                        }
                    }

                    if (mapNode.Title == "Usuarios")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "Especialidades")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "Planes")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "Materias")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "Comisiones")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "DocenteCurso")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "Cursos")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                }
                if (this.Entity.TiposUsuario.ToString() == "Docente")
                {
                    if (mapNode.Title == "DocenteCurso")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            e.Item.Text = "Mis cursos";
                        }
                    }
                    if (mapNode.Title == "Usuarios")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "Especialidades")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "Planes")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "Materias")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "Comisiones")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                    if (mapNode.Title == "AlumnoInscripcion")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }

                    if (mapNode.Title == "Cursos")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                }
            }
        }
Example #8
0
 public static void RemoverMenuItem(Menu Menu, string IdMenuItem)
 {
     MenuItem menuItem = Menu.FindItem(IdMenuItem);
     if (menuItem != null) RemoverMenuItem(Menu, menuItem);
 }