[Yanel-commits] rev 30799 -
public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet
michi at wyona.com
michi at wyona.com
Sat Jan 26 21:15:21 CET 2008
Author: michi
Date: 2008-01-26 21:15:20 +0100 (Sat, 26 Jan 2008)
New Revision: 30799
Modified:
public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java
Log:
toolbar switch refactored and also check is identity is WORLD
Modified: public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java
===================================================================
--- public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java 2008-01-26 15:55:25 UTC (rev 30798)
+++ public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java 2008-01-26 20:15:20 UTC (rev 30799)
@@ -230,8 +230,8 @@
HttpSession session = request.getSession(true);
Resource resource = getResource(request, response);
- // Check for toolbar ...
- checkToolbar(request);
+ // Enable or disable toolbar
+ switchToolbar(request);
// Check for requests refered by WebDAV
String yanelWebDAV = request.getParameter("yanel.webdav");
@@ -274,21 +274,21 @@
}
/**
- * Checks if the yanel.toolbar request-param is set and stores
+ * Checks if the yanel.toolbar request parameter is set and stores
* the value of the parameter in the session.
* @param request
*/
- private void checkToolbar(HttpServletRequest request) {
+ private void switchToolbar(HttpServletRequest request) {
// Check for toolbar ...
String yanelToolbar = request.getParameter("yanel.toolbar");
if(yanelToolbar != null) {
HttpSession session = request.getSession(false);
if (yanelToolbar.equals("on")) {
log.info("Turn on toolbar!");
- session.setAttribute(TOOLBAR_KEY, "on");
+ enableToolbar(request);
} else if (yanelToolbar.equals("off")) {
log.info("Turn off toolbar!");
- session.setAttribute(TOOLBAR_KEY, "off");
+ disableToolbar(request);
} else {
log.warn("No such toolbar value: " + yanelToolbar);
}
@@ -716,8 +716,8 @@
}
}
- // Check for toolbar ...
- checkToolbar(request);
+ // Enable or disable toolbar
+ switchToolbar(request);
getContent(request, response);
}
@@ -849,8 +849,7 @@
//log.debug("url: " + request.getServletPath());
//log.debug("state of view: " + stateOfView);
/*String area = null;
- Object toolbarAttr = request.getSession().getAttribute(TOOLBAR_KEY);
- if (toolbarAttr != null && toolbarAttr.equals("on")) {
+ if (isToolbarEnabled(request)) {
area = "authoring";
} else {
area = "live";
@@ -1648,7 +1647,7 @@
//buf.append("Version: " + yanel.getVersion() + "-r" + yanel.getRevision() + "  ");
buf.append("Realm: <b>" + resource.getRealm().getName() + "</b>  ");
Identity identity = getIdentity(request);
- if (identity != null) {
+ if (identity != null && !identity.isWorld()) {
buf.append("User: <b>" + identity.getUsername() + "</b>");
} else {
buf.append("User: <b>Not signed in!</b>");
@@ -1767,7 +1766,9 @@
IdentityMap identityMap = (IdentityMap)session.getAttribute(IDENTITY_MAP_KEY);
if (identityMap != null) {
Identity identity = (Identity)identityMap.get(realm.getID());
- if (identity != null) return identity;
+ if (identity != null) {
+ return identity;
+ }
}
}
@@ -2002,8 +2003,8 @@
}
// Possibly embed toolbar:
- String toolbar = (String) request.getSession(true).getAttribute(TOOLBAR_KEY);
- if (toolbar != null && toolbar.equals("on")) {
+ // TODO: Check if user is authorized to actually see toolbar (Current flaw: Enabled Toolbar, Login, Toolbar is enabled, Logout, Toolbar is still visible!)
+ if (isToolbarEnabled(request)) {
String mimeType = view.getMimeType();
if (mimeType != null && mimeType.indexOf("html") > 0) {
// TODO: What about other query strings or frames or TinyMCE?
@@ -2179,4 +2180,27 @@
writer.print(sb.toString());
return;
}
+
+ /**
+ *
+ */
+ private void enableToolbar(HttpServletRequest request) {
+ request.getSession(true).setAttribute(TOOLBAR_KEY, "on");
+ }
+
+ /**
+ *
+ */
+ private void disableToolbar(HttpServletRequest request) {
+ request.getSession(true).setAttribute(TOOLBAR_KEY, "off");
+ }
+
+ /**
+ *
+ */
+ private boolean isToolbarEnabled(HttpServletRequest request) {
+ String toolbarStatus = (String) request.getSession(true).getAttribute(TOOLBAR_KEY);
+ if (toolbarStatus != null && toolbarStatus.equals("on")) return true;
+ return false;
+ }
}
More information about the Yanel-commits
mailing list