[Yanel-commits] rev 47735 -
public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet
michi at wyona.com
michi at wyona.com
Tue Feb 23 15:30:28 CET 2010
Author: michi
Date: 2010-02-23 15:30:27 +0100 (Tue, 23 Feb 2010)
New Revision: 47735
Modified:
public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelHTMLUI.java
Log:
user language fixed
Modified: public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelHTMLUI.java
===================================================================
--- public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelHTMLUI.java 2010-02-23 14:21:22 UTC (rev 47734)
+++ public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelHTMLUI.java 2010-02-23 14:30:27 UTC (rev 47735)
@@ -294,7 +294,7 @@
* Get information such as realm name, user name, etc.
*/
private String getInfo(Resource resource, HttpServletRequest request) throws Exception {
- String language = resource.getRequestedLanguage();
+ String userLanguage = getUserLanguage(resource);
StringBuilder buf = new StringBuilder();
buf.append("<span id=\"yaneltoolbar_info\">");
//buf.append("Version: " + yanel.getVersion() + "-r" + yanel.getRevision() + "  ");
@@ -302,15 +302,15 @@
if (ResourceAttributeHelper.hasAttributeImplemented(resource, "Versionable", "2")) {
VersionableV2 versionableRes = (VersionableV2)resource;
if (versionableRes.isCheckedOut()) {
- buf.append(getLabel("page", language) + ": <b>Locked by " + versionableRes.getCheckoutUserID() + "</b> (<a href=\"?" + YanelServlet.YANEL_RESOURCE_USECASE + "=" + YanelServlet.RELEASE_LOCK + "\">unlock</a>)  ");
+ buf.append(getLabel("page", userLanguage) + ": <b>Locked by " + versionableRes.getCheckoutUserID() + "</b> (<a href=\"?" + YanelServlet.YANEL_RESOURCE_USECASE + "=" + YanelServlet.RELEASE_LOCK + "\">unlock</a>)  ");
}
}
Identity identity = YanelServlet.getIdentity(request, map);
if (identity != null && !identity.isWorld()) {
- buf.append(getLabel("user", language) + ": <b>" + identity.getUsername() + "</b>");
+ buf.append(getLabel("user", userLanguage) + ": <b>" + identity.getUsername() + "</b>");
} else {
- buf.append(getLabel("user", language) + ": <b>Not signed in!</b>");
+ buf.append(getLabel("user", userLanguage) + ": <b>Not signed in!</b>");
}
buf.append("</span>");
return buf.toString();
@@ -346,4 +346,23 @@
return getLabel(key, "en");
}
}
+
+ /**
+ * Get user language (order: profile, browser, ...) (Also see org/wyona/yanel/servlet/menu/Menu.java)
+ */
+ private String getUserLanguage(Resource resource) throws Exception {
+ Identity identity = resource.getEnvironment().getIdentity();
+ String language = resource.getRequestedLanguage();
+ String userID = identity.getUsername();
+ if (userID != null) {
+ String userLanguage = resource.getRealm().getIdentityManager().getUserManager().getUser(userID).getLanguage();
+ if(userLanguage != null) {
+ language = userLanguage;
+ log.debug("Use user profile language: " + language);
+ } else {
+ log.debug("Use requested language: " + language);
+ }
+ }
+ return language;
+ }
}
More information about the Yanel-commits
mailing list