1 package org.astrogrid.portal.common.user;
2
3 import org.apache.avalon.framework.parameters.Parameters;
4 import org.apache.cocoon.environment.Request;
5 import org.apache.cocoon.environment.Session;
6
7 import org.astrogrid.community.User;
8 import org.astrogrid.portal.login.common.SessionKeys;
9 import org.astrogrid.portal.utils.acting.ActionUtils;
10 import org.astrogrid.portal.utils.acting.ActionUtilsFactory;
11
12
13
14
15
16
17
18 public class UserHelper {
19 private static final String PARAM_ACCOUNT = SessionKeys.USER;
20 private static final String PARAM_GROUP = SessionKeys.COMMUNITY_ACCOUNT;
21 private static final String PARAM_TOKEN = "token";
22
23 public static User getCurrentUser(Parameters params, Request request, Session session) {
24 ActionUtils utils = ActionUtilsFactory.getActionUtils();
25
26 String fullUserid = (String)utils.getAnyParameter(UserHelper.PARAM_ACCOUNT, "", params, request, session);
27
28 String account = fullUserid.substring( fullUserid.lastIndexOf('/')+1 );
29 String group = fullUserid.substring( fullUserid.indexOf('/')+2, fullUserid.lastIndexOf('/') );
30 String token = utils.getAnyParameter(UserHelper.PARAM_TOKEN, params, request, session);
31
32 return new User(account, group, "not-used", token);
33 }
34 }