Glenn, I've added another Loc param:
/** * Allows extra access testing for a given menu location such that * you can build a menu that is displayed but redirects the user to a login * page if they are not logged in */ case class TestAccess(func: () => Box[LiftResponse]) extends LocParam This will let you write a function that tests access for the page and return a RedirectResponse if the user needs to log in. It will not impact the display of the menu item. Hope this helps. Thanks, David On Tue, May 12, 2009 at 5:23 PM, glenn <gl...@exmbly.com> wrote: > > Hmm, > > Here's my complete menu list for this LocGroup: > > def quoteMenu:List[Menu] = { > val groupquote = Menu(Loc("groupquote", List("quote", "group"), > "Group Quote", LocGroup("quote"), loggedIn )) > val businessquote = Menu(Loc("businessquote", List("quote", > "business"), "Commercial Quote", LocGroup("quote"))) > val lifequote = Menu(Loc("lifequote", List("quote", "life"), > "Life Ins. Quote", LocGroup("quote"))) > val autoquote = Menu(Loc("autoquote", List("quote", "auto"), > "Auto Quote", LocGroup("quote"))) > val homequote = Menu(Loc("homequote", List("quote", "home"), > "Homeowners Quote", LocGroup("quote"))) > val medicarequote = Menu(Loc("medicarequote", List("quote", > "medicare"), "Medicare Sup. Quote", LocGroup("quote"))) > List > (groupquote,businessquote,lifequote,autoquote,homequote,medicarequote) > } > > I want to control page access so that whenever the user clicks on one > of the above menu items and isn't logged they are redirected to the > login page. As I understand it, there are no submenus here, only > siblings. Where would I put the loggedIn function to make this work? > > On May 12, 5:02 pm, David Pollak <feeder.of.the.be...@gmail.com> > wrote: > > If a top-level menu item is not accessible, then none of its children are > > accessible. SiteMap does not display any pages that are inaccessible. > > > > In the example, you've got all the menus controlled by the "loggedIn" > If() > > clause and that's blocking access to menu and thus the menu is not > > displayed. > > > > > > > > On Tue, May 12, 2009 at 4:54 PM, glenn <gl...@exmbly.com> wrote: > > > > > I have a menu defined as follows: > > > > > def quoteMenu:List[Menu] = { > > > val groupquote = Menu(Loc("groupquote", List("quote", "group"), > > > "Group Quote",loggedIn, LocGroup("quote"))) > > > ....More menu items > > > } > > > > > and an If LocParam to check if the user is logged in: > > > > > val loggedIn = If(() => User.loggedIn_?, > > > () => RedirectResponse("/login")) > > > > > When the sitemap is displayed, the menu item is not visible if the > > > user isn't logged in. This is not the behavior > > > expected. The user should be able to click on the menu item and be > > > redirected to the login page. > > > > > Any ideas as to what's going on here. Am I even using the right > > > mechanism to control page access? > > > > > Glenn... > > > > -- > > Lift, the simply functional web frameworkhttp://liftweb.net > > Beginning Scalahttp://www.apress.com/book/view/1430219890 > > Follow me:http://twitter.com/dpp > > Git some:http://github.com/dpp > > > > -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Git some: http://github.com/dpp --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---