[Yanel-commits] rev 23944 - public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl

michi at wyona.com michi at wyona.com
Sat Apr 21 11:39:53 CEST 2007


Author: michi
Date: 2007-04-21 11:39:51 +0200 (Sat, 21 Apr 2007)
New Revision: 23944

Modified:
   public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl/YanelWebsiteMenu.java
Log:
check translatable interface

Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl/YanelWebsiteMenu.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl/YanelWebsiteMenu.java	2007-04-21 06:45:58 UTC (rev 23943)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/menu/impl/YanelWebsiteMenu.java	2007-04-21 09:39:51 UTC (rev 23944)
@@ -1,8 +1,10 @@
 package org.wyona.yanel.servlet.menu.impl;
 
 import org.wyona.yanel.core.Resource;
+import org.wyona.yanel.core.api.attributes.TranslatableV1;
 import org.wyona.yanel.core.map.Map;
 import org.wyona.yanel.core.map.Realm;
+import org.wyona.yanel.core.util.ResourceAttributeHelper;
 
 import org.wyona.yanel.servlet.YanelServlet;
 import org.wyona.yanel.servlet.menu.Menu;
@@ -15,6 +17,9 @@
 import javax.servlet.http.HttpSession;
 
 import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
 
 /**
  *
@@ -32,7 +37,22 @@
         sb.append("<div id=\"yaneltoolbar_menutitle\">File</div>");
         sb.append("<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>");
-        sb.append("<li class=\"haschild\">New language<ul><li>German</li><li>Mandarin</li></ul></li>");
+        sb.append("<li class=\"haschild\">New language<ul>");
+        
+        if (ResourceAttributeHelper.hasAttributeImplemented(resource, "Translatable", "1")) {
+            TranslatableV1 translatable = (TranslatableV1)resource;
+            List existingLanguages = Arrays.asList(translatable.getLanguages());
+            String[] realmLanguages = resource.getRealm().getLanguages();
+            for (int i = 0; i < realmLanguages.length; i++) {
+                if (!existingLanguages.contains(realmLanguages[i])) {
+                    sb.append("<li>");
+                    sb.append(realmLanguages[i]);
+                    sb.append("</li>");
+                }
+            }
+        }
+        //sb.append("<li>German</li><li>Mandarin</li>");
+        sb.append("</ul></li>");
         sb.append("<li>Publish</li>");
         sb.append("</ul>");
         sb.append("</li></ul>");




More information about the Yanel-commits mailing list