Author: nextgens
Date: 2007-04-22 11:42:46 +0000 (Sun, 22 Apr 2007)
New Revision: 12853
Modified:
trunk/freenet/src/freenet/clients/http/WelcomeToadlet.java
trunk/freenet/src/freenet/l10n/L10n.java
Log:
L10n :
* Fix one charset conversion bug
* Add a few comments
* Trim values and keys before storing them in the translation override
Modified: trunk/freenet/src/freenet/clients/http/WelcomeToadlet.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/WelcomeToadlet.java 2007-04-22
08:32:32 UTC (rev 12852)
+++ trunk/freenet/src/freenet/clients/http/WelcomeToadlet.java 2007-04-22
11:42:46 UTC (rev 12853)
@@ -33,6 +33,7 @@
import freenet.support.SimpleFieldSet;
import freenet.support.api.Bucket;
import freenet.support.api.HTTPRequest;
+import freenet.support.io.BucketTools;
import freenet.frost.message.*;
@@ -87,7 +88,7 @@
return;
}
String key = request.getPartAsString("key", 256);
- L10n.setOverride(key, request.getPartAsString("trans",
256));
+ L10n.setOverride(key, new
String(BucketTools.toByteArray(request.getPart("trans")), "UTF-8"));
MultiValueTable headers = new MultiValueTable();
headers.put("Location", "/?transupdated="+key);
Modified: trunk/freenet/src/freenet/l10n/L10n.java
===================================================================
--- trunk/freenet/src/freenet/l10n/L10n.java 2007-04-22 08:32:32 UTC (rev
12852)
+++ trunk/freenet/src/freenet/l10n/L10n.java 2007-04-22 11:42:46 UTC (rev
12853)
@@ -85,14 +85,22 @@
}
public static void setOverride(String key, String value) {
- if(L10n.getString(key).equals(value)) {
+ key = key.trim();
+ value = value.trim();
+
+ // If there is no need to keep it in the override, remove it
+ if("".equals(value) || L10n.getString(key).equals(value)) {
translationOverride.removeValue(key);
- return;
- } else if(translationOverride == null)
- translationOverride = new SimpleFieldSet(false);
-
- translationOverride.putOverwrite(key, value);
- Logger.normal("L10n", "Got a new translation key: set the
Override!");
+ } else {
+ // Is the override already declared ? if not, create it.
+ if(translationOverride == null)
+ translationOverride = new SimpleFieldSet(false);
+
+ // Set the value of the override
+ translationOverride.putOverwrite(key, value);
+ Logger.normal("L10n", "Got a new translation key: set
the Override!");
+ }
+ // Save the file to disk
_saveTranslationFile();
}