[Yanel-commits] rev 23761 -
public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl
michi at wyona.com
michi at wyona.com
Sun Apr 15 13:59:45 CEST 2007
Author: michi
Date: 2007-04-15 13:59:43 +0200 (Sun, 15 Apr 2007)
New Revision: 23761
Modified:
public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl/DefaultMenu.java
Log:
default extends abstract menu
Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl/DefaultMenu.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl/DefaultMenu.java 2007-04-15 11:50:31 UTC (rev 23760)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl/DefaultMenu.java 2007-04-15 11:59:43 UTC (rev 23761)
@@ -1,9 +1,12 @@
-package org.wyona.yanel.servlet;
+package org.wyona.yanel.servlet.menu.impl;
import org.wyona.yanel.core.Resource;
import org.wyona.yanel.core.map.Map;
import org.wyona.yanel.core.map.Realm;
+import org.wyona.yanel.servlet.YanelServlet;
+import org.wyona.yanel.servlet.menu.Menu;
+
import org.wyona.security.core.api.Identity;
import org.wyona.security.core.api.IdentityMap;
@@ -16,25 +19,14 @@
/**
*
*/
-public class DefaultMenu {
+public class DefaultMenu extends Menu {
/**
* Get toolbar menus
*/
- private String getToolbarMenus(Resource resource, HttpServletRequest request, Map map, String reservedPrefix) throws ServletException, IOException, Exception {
+ public String getMenus(Resource resource, HttpServletRequest request, Map map, String reservedPrefix) throws ServletException, IOException, Exception {
String backToRealm = org.wyona.yanel.core.util.PathUtil.backToRealm(resource.getPath());
StringBuffer sb= new StringBuffer();
- sb.append("<ul><li>");
- sb.append("<div id=\"yaneltoolbar_menutitle\">Yanel</div><ul>");
- sb.append("<li><a href=\"?yanel.resource.meta\">View page info</a></li>");
- sb.append("<li><a href=\"?yanel.toolbar=off\">Turn off toolbar</a></li>");
- Identity identity = getIdentity(request, map);
- if (identity != null) {
- sb.append("<li><a href=\"" + backToRealm + reservedPrefix + "/users/" + identity.getUsername() + ".html\">My profile</a></li>");
- sb.append("<li><a href=\"?yanel.usecase=logout\"><img class=\"yaneltoolbar_menuicon\" src=\"" + backToRealm + reservedPrefix + "/yanel-img/icons/system-log-out.png\" border=\"0\"/>Logout</a></li>");
- }
- sb.append("</ul></li></ul>");
- sb.append("<ul><li>");
sb.append("<div id=\"yaneltoolbar_menutitle\">File</div><ul>");
sb.append("<li class=\"haschild\"><a href=\"" + backToRealm + "create-new-page.html\">New</a><ul><li><a href=\"" + backToRealm + "create-new-page.html?resource-type=http%3A%2F%2Fwww.wyona.org%2Fyanel%2Fresource%2F1.0%3A%3Axml\">Standard page (XHTML)</a></li><li><a href=\"" + backToRealm + "create-new-page.html?resource-type=http%3A%2F%2Fwww.wyona.org%2Fyanel%2Fresource%2F1.0%3A%3Awiki\">Wiki page</a></li></ul></li>");
@@ -48,28 +40,6 @@
sb.append("<li class=\"haschild\">Revisions<ul><li class=\"haschild\">53534<ul><li>Show diff</li><li>Revert to</li></ul></li><li class=\"haschild\">52108<ul><li>Show diff</li><li>Revert to</li></ul></li></ul></li>");
sb.append("</ul></li></ul>");
- sb.append("<ul><li>");
- sb.append("<div id=\"yaneltoolbar_menutitle\">Help</div><ul>");
- sb.append("<li>About</li>");
- sb.append("</ul></li></ul>");
return sb.toString();
}
-
- /**
- * Gets the identity from the session associated with the given request.
- * @param request
- * @return identity or null if there is no identity in the session for the current
- * realm or if there is no session at all
- */
- private Identity getIdentity(HttpServletRequest request, Map map) throws Exception {
- Realm realm = map.getRealm(request.getServletPath());
- HttpSession session = request.getSession(false);
- if (session != null) {
- IdentityMap identityMap = (IdentityMap)session.getAttribute(YanelServlet.IDENTITY_MAP_KEY);
- if (identityMap != null) {
- return (Identity)identityMap.get(realm.getID());
- }
- }
- return null;
- }
}
More information about the Yanel-commits
mailing list