]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 581448: Localize the status and resolution values in the list of
authorMax Kanat-Alexander <mkanat@bugzilla.org>
Wed, 13 Oct 2010 23:33:44 +0000 (16:33 -0700)
committerMax Kanat-Alexander <mkanat@bugzilla.org>
Wed, 13 Oct 2010 23:33:44 +0000 (16:33 -0700)
possible duplicates on enter_bug.cgi
r=LpSolit, a=LpSolit

js/bug.js
js/global.js
template/en/default/global/header.html.tmpl
template/en/default/global/value-descs.js.tmpl [new file with mode: 0644]

index ca888a68fc48dec242cd1a13e073f04b75e1a88c..ab3322ccdafe9ca0cb265dfae9aa4f943f95286f 100644 (file)
--- a/js/bug.js
+++ b/js/bug.js
@@ -76,11 +76,13 @@ YAHOO.bugzilla.dupTable = {
     },
     formatStatus: function(el, oRecord, oColumn, oData) {
         var resolution = oRecord.getData('resolution');
+        var bug_status = display_value('bug_status', oData);
         if (resolution) {
-            el.innerHTML = oData + ' ' + resolution;
+            el.innerHTML = bug_status + ' ' 
+                           + display_value('resolution', resolution);
         }
         else {
-            el.innerHTML = oData;
+            el.innerHTML = bug_status;
         }
     },
     formatCcButton: function(el, oRecord, oColumn, oData) {
index 2d397415040780e619b110a80fe1bb7e40ff305c..d6e11e9b135e30856931cbf6638fb5a277ed05da 100644 (file)
@@ -119,3 +119,11 @@ function set_language( value ) {
     });
     window.location.reload()
 }
+
+// This basically duplicates Bugzilla::Util::display_value for code that
+// can't go through the template and has to be in JS.
+function display_value(field, value) {
+    var translated = BUGZILLA.value_descs[field][value];
+    if (translated) return translated;
+    return value;
+}
index 772e775e9fa536cb9c498c7a374098030b35abc0..aa6604d2cd02de7961be6ed31053f80348dbfd29 100644 (file)
   datatable    => ['json', 'connection', 'datasource', 'element'],
 } %]
 
+[%# When using certain YUI modules, we need to process certain
+  # extra JS templates.
+  #%]
+[% SET yui_templates = {
+  datatable => ['global/value-descs.js.tmpl'],
+} %]
+
 [%# These are JS URLs that are *always* on the page and come before
   # every other JS URL.
   #%]
                     'You must select a Version for this [% terms.bug %].'
             }
         };
+
+        [% FOREACH yui_name = yui %]
+          [% FOREACH yui_template = yui_templates.$yui_name %]
+            [% PROCESS $yui_template %]
+          [% END %]
+        [% END %]
         [% IF javascript %]
           [% javascript %]
         [% END %]
diff --git a/template/en/default/global/value-descs.js.tmpl b/template/en/default/global/value-descs.js.tmpl
new file mode 100644 (file)
index 0000000..d432cf1
--- /dev/null
@@ -0,0 +1,33 @@
+[%# The contents of this file are subject to the Mozilla Public
+  # License Version 1.1 (the "License"); you may not use this file
+  # except in compliance with the License. You may obtain a copy of
+  # the License at http://www.mozilla.org/MPL/
+  #
+  # Software distributed under the License is distributed on an "AS
+  # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+  # implied. See the License for the specific language governing
+  # rights and limitations under the License.
+  #
+  # The Original Code is the Bugzilla Bug Tracking System.
+  #
+  # The Initial Developer of the Original Code is Everything Solved, Inc.
+  # Portions created by the Initial Developer are Copyright (C) 2010
+  # the Initial Developer. All Rights Reserved.
+  #
+  # Contributor(s): 
+  #   Max Kanat-Alexander <mkanat@bugzilla.org>
+  #%]
+
+[% PROCESS "global/field-descs.none.tmpl" %]
+
+BUGZILLA.value_descs = {
+  [% FOREACH vd_field = value_descs.keys %]
+    [% vd_field FILTER js %]: {
+      [% FOREACH vd_value = value_descs.${vd_field}.keys %]
+        '[% vd_value FILTER js %]':
+        '[% value_descs.${vd_field}.${vd_value} FILTER js %]'
+        [%~ ',' UNLESS loop.last %]
+      [% END %]
+    }[% ',' UNLESS loop.last %]
+  [% END %]
+};