diff --git a/htroot/Translator_p.java b/htroot/Translator_p.java index 87db72a6d..418476a6b 100644 --- a/htroot/Translator_p.java +++ b/htroot/Translator_p.java @@ -62,10 +62,22 @@ public class Translator_p { filename = post.get("sourcefile", filename); } + // prepare filename list for drop-down list Iterator filenameit = origTrans.keySet().iterator(); - + final boolean filteruntranslated = post == null ? false : post.getBoolean("filteruntranslated"); while (filenameit.hasNext()) { String tmp = filenameit.next(); + if (filteruntranslated) { // filter filenames with untranslated entries + Map tmptrans = origTrans.get(tmp); + boolean hasuntrans = false; + for (String x : tmptrans.values()) { + if (x == null || x.isEmpty()) { + hasuntrans = true; + break; + } + } + if (!hasuntrans) continue; + } prop.put("filelist_" + i + "_filename", tmp); prop.put("filelist_" + i + "_selected", tmp.equals(filename)); i++; @@ -76,11 +88,9 @@ public class Translator_p { Map origTextList = origTrans.get(filename); i = 0; - boolean filteruntranslated = false; boolean editapproved = false; // to switch already approved translation in edit mode int textlistid = -1; if (post != null) { - filteruntranslated = post.getBoolean("filteruntranslated"); prop.put("filter.checked", filteruntranslated); // remember filter setting textlistid = post.getInt("approve", -1); if (post.containsKey("editapproved")) {