Hi Jeremy, Adding a redirect attribute to the result tags in your event type should cause this to work as intended:
<result name="NotLoggedIn" do="user.login" redirect="true" /> <result name="InvalidRole" do="user.noPrivs" redirect="true" /> HTH, -- Ezra Parker On Mon, Oct 19, 2009 at 12:31 PM, Jeremy Prevost <[email protected]> wrote: > > I'm using event types for security. I have several different Event > types that correspond to various roles. In those types are <before> > blocks that check the role required for the event. > > Here's an example: > > <event-type name="requireStaff"> > <before> > <broadcasts> > <message name="CheckRole"> > <argument name="requiredRole" > value="staff" /> > </message> > </broadcasts> > <results> > <result name="NotLoggedIn" do="user.login" /> > <result name="InvalidRole" do="user.noPrivs" /> > </results> > </before> > </event-type> > > For most events, adding a type="requireStaff" works as expected (if > not logged in, user.login runs). Invalid role runs user.noPrivs. If > all is well the event continues. Here's an example of a working event: > > <event-handler name="admin.index" type="requireStaff"> > <broadcasts> > </broadcasts> > <results> > <result do="admin.template" /> > </results> > <views> > <include name="body" > template="admin/dspAdminIndex.cfm" /> > </views> > </event-handler> > > However, I have other events that don't seem special to me in any way > where I define the type the same way and it ignores the security and > just keeps on trucking through the event. Here's an example of an > event that isn't working correctly. > > <event-handler name="lists.indexCurrentUser" > type="requireStaff"> > <broadcasts> > <message name="needMySharesList" /> > <message name="needMyShares" /> > <message name="needMyPreferredList" /> > <message name="needPopularTags" /> > </broadcasts> > <results> > <result do="view.templateSidenav" /> > </results> > <views> > <include name="body" > template="lists/dspIndex.cfm" /> > </views> > </event-handler> > > From what I can tell, the checkRole function runs and the logic that > sets NotLoggedIn is being triggered but user.login never fires. Again, > this is only for certain events... most are working fine which is what > is driving me crazy. Any suggestions as to what may be going on would > be much appreciated. > > I was using MG 3.0 and just updated to 3.1 and the problem persists. > > Thanks! > Jeremy > > > --~--~---------~--~----~------------~-------~--~----~ Model-Glue Sites: Home Page: http://www.model-glue.com Documentation: http://docs.model-glue.com Bug Tracker: http://bugs.model-glue.com Blog: http://www.model-glue.com/blog You received this message because you are subscribed to the Google Groups "model-glue" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/model-glue?hl=en -~----------~----~----~----~------~----~------~--~---
