cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nick Goupinets <>
Subject Re: Cocoon portal tabs
Date Wed, 08 Dec 2004 20:18:16 GMT
Hi Anna,

I guess I was asking what is the underlying mechanism you use that 
switches tabs. I have no experience at all with "Portal Page Labels", if 
that's what you got. Anyhow, I hope that the hack that I will suggest 
will be suitable for any tab-switching algorithm.

In the main portal sitemap (the one that contains configuration for the 
portal), there is "auth" pipeline. If a user is successfully 
authenticated this pipeline does a redirect depending on the value of 
request parameter "resource".

<map:redirect-to uri="{request-param:resource}"/>

By default, this "resource" parameter is hard coded to be "portal" in 
login-html.xsl (part of the skin - responsible for rendering the login 

In case pattern like "portal?id=tab2" works for you, all you have to do 
is to add that id parameter to the redirection URL, so that it will look 
like this:

<map:redirect-to uri="{request-param:resource}?id=tab2"/>

In case you have access to the authentication pipelines, you can store 
the tab value in the authentication context (read more about it here: ).

So, if you have the following authentication info for a user:

     <ID>Unique ID of the user in the system</ID>
     <role>rolename</role> <!-- optional -->
         Any additional optional information can be supplied here.
         This will be stored in the session for later retrieval

Then the redirect could look like:

<map:redirect-to uri="{request-param:resource}?id={tabValue}"/>

I hope that this will work for you, but I haven't tried it (so the 
advice will be purely theoretical).


PS. Here is the auth pipeline:

       <!-- Authenticate a user -->
       <map:match pattern="auth">
         <!-- Check if we are logged in:
         - if we are anonymous, then logout
         - if we are any other use, redirect to loggedin
         <map:act type="auth-loggedIn">
           <map:parameter name="handler" value="portal-handler"/>

           <map:act type="auth-protect">
             <map:parameter name="handler" value="portal-handler"/>
             <map:parameter name="application" value="portal"/>


         <!-- Start the authentication process -->
         <map:act type="auth-login">
           <map:parameter name="handler" value="portal-handler"/>
           <map:parameter name="application" value="portal"/>
           <map:parameter name="parameter_name" 
           <map:parameter name="parameter_password" 

           <!-- Authentication succeeded -->
           <map:act type="portal-login">
             <map:parameter name="portal-name" value="portal"/>

           <map:redirect-to uri="{request-param:resource}"/>

Anna Bikkina wrote:
> What I really want is to display all tabs for all users but depending on
> which user is logged in I want to have the right tab selected first. I
> want the order of the tabs also to remain same. Just the right tab has
> to be selected. 
> When I was doing href="portal?id=tab2" it is going to tab2 but to do
> that I should be in the portal page. I want tab2 to be selected for the
> users as he gets to the portal page.
> Thank your replying back.
> Anna.
> On Tue, 2004-12-07 at 17:32, Nick Goupinets wrote:
>>Hi Anna,
>>I am not exactly sure which features you are talking about. I have never 
>>seen switching portal tabs just based on the "id" request parameter.
>>Can you provide more information?
>>BTW, if you want to display different pages for different users, you can 
>>use very fine grained profiling system. Just modify the pipelines that 
>>fetch layout information.
>>Anna Bikkina wrote:
>>>Can someone please help me get this working?
>>>On Mon, 2004-12-06 at 13:13, Anna Bikkina wrote:
>>>>I am using cocoon portal features. In my portal page I have tabs. When I
>>>>choose "portal" it goes to the first tab in my application. I want the
>>>>application to go to different tabs depending on which user is logged
>>>>in. so when I redirect to portal after I login . I tried
>>>>	<map:rediect-to uri="portal?id=tab2"/>
>>>>but that didnt work. When I use hyperlinks that say <a
>>>>href="portal?id=tab2" it goes to the respective tab. Not sure why
>>>>redirect-to is not working..
>>>>Can someone please help me how to solve this problem.
>>>>To unsubscribe, e-mail:
>>>>For additional commands, e-mail:
>>>To unsubscribe, e-mail:
>>>For additional commands, e-mail:
>>To unsubscribe, e-mail:
>>For additional commands, e-mail:
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message