Scarab commit: svn commit: r10216 - branches/release/b21/src/java/org/tigris/scarab/pipeline/DetermineTargetValve.java
| Newsgroups | gmane.comp.java.scarab.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: dabbous
Date: 2006-07-22 02:54:37-0700
New Revision: 10216
Modified:
branches/release/b21/src/java/org/tigris/scarab/pipeline/DetermineTargetValve.java
Log:
added one modification due to home page controlling
Modified: branches/release/b21/src/java/org/tigris/scarab/pipeline/DetermineTargetValve.java
Url: http://scarab.tigris.org/source/browse/scarab/branches/release/b21/src/java/org/tigris/scarab/pipeline/DetermineTargetValve.java?view=diff&rev=10216&p1=branches/release/b21/src/java/org/tigris/scarab/pipeline/DetermineTargetValve.java&p2=branches/release/b21/src/java/org/tigris/scarab/pipeline/DetermineTargetValve.java&r1=10215&r2=10216
==============================================================================
--- branches/release/b21/src/java/org/tigris/scarab/pipeline/DetermineTargetValve.java (original)
+++ branches/release/b21/src/java/org/tigris/scarab/pipeline/DetermineTargetValve.java 2006-07-22 02:54:37-0700
@@ -49,12 +49,18 @@
import java.io.IOException;
import org.apache.fulcrum.parser.ParameterParser;
+import org.apache.torque.TorqueException;
import org.apache.turbine.RunData;
import org.apache.turbine.Turbine;
import org.apache.turbine.TurbineException;
import org.apache.turbine.ValveContext;
+import org.apache.turbine.modules.Module;
import org.apache.turbine.pipeline.AbstractValve;
+import org.tigris.scarab.om.ScarabUser;
+import org.tigris.scarab.tools.ScarabGlobalTool;
+import org.tigris.scarab.tools.ScarabRequestTool;
import org.tigris.scarab.util.Log;
+import org.tigris.scarab.util.ScarabConstants;
/**
* This valve determines the target template.
@@ -89,9 +95,37 @@
{
//data.getResponse().sendError(404);
//return;
- data.setTarget(Turbine.getConfiguration().getString(
- Turbine.TEMPLATE_HOMEPAGE));
- Log.get().debug("Set target using default value");
+ ScarabUser user = (ScarabUser)data.getUserFromSession();
+ if(user!= null && user.getUserId() != null && user.getUserId().longValue() > 0)
+ {
+ ScarabRequestTool scarabR = ((ScarabRequestTool)Module.getTemplateContext(data)
+ .get(ScarabConstants.SCARAB_REQUEST_TOOL));
+ org.tigris.scarab.om.Module module = scarabR.getCurrentModule();
+
+ try
+ {
+ if(module != null)
+ {
+ target = user.getHomePage(module);
+ }
+ else
+ {
+ target = user.getHomePage();
+ }
+ }
+ catch (TorqueException e)
+ {
+ target = null;
+ }
+ }
+ if(target == null)
+ {
+ target = Turbine.getConfiguration().getString(
+ Turbine.TEMPLATE_HOMEPAGE);
+ }
+ data.setTarget(target);
+ Log.get().debug("Set target to ["+target+"]");
+
}
}