From 235f4d4f8580a56d553e19c1beab1f8c22132e84 Mon Sep 17 00:00:00 2001 From: Scott Main Date: Tue, 2 Oct 2012 17:12:23 -0700 Subject: [PATCH] refactor the logic for changing languages in global strings. instead of using separate elements for each language, provide a unique attribute in each element for each localized version of that link's title. Change-Id: Ifcae4fcf716c8bb48f3ff18f17313b3f131c3f73 --- .../droiddoc/templates-sdk/assets/js/docs.js | 32 +-- .../templates-sdk/components/masthead.cs | 193 +++++++++--------- tools/droiddoc/templates-sdk/docpage.cs | 136 ++++++------ tools/droiddoc/templates-sdk/header_tabs.cs | 48 ----- 4 files changed, 162 insertions(+), 247 deletions(-) diff --git a/tools/droiddoc/templates-sdk/assets/js/docs.js b/tools/droiddoc/templates-sdk/assets/js/docs.js index 911252ee3..d18c4906e 100644 --- a/tools/droiddoc/templates-sdk/assets/js/docs.js +++ b/tools/droiddoc/templates-sdk/assets/js/docs.js @@ -979,36 +979,18 @@ function requestAppendHL(uri) { } -function changeTabLang(lang) { - var nodes = $("#header,#nav-x,.training-nav-top").find("."+lang); - for (i=0; i < nodes.length; i++) { // for each node in this language - var node = $(nodes[i]); - node.siblings().css("display","none"); // hide all siblings - if (node.not(":empty").length != 0) { //if this languages node has a translation, show it - node.css("display","inline"); - } else { //otherwise, show English instead - node.css("display","none"); - node.siblings().filter(".en").css("display","inline"); - } - } -} - function changeNavLang(lang) { - var nodes = $("#devdoc-nav").find("."+lang); - for (i=0; i < nodes.length; i++) { // for each node in this language - var node = $(nodes[i]); - node.siblings().css("display","none"); // hide all siblings - if (node.not(":empty").length != 0) { // if this languages node has a translation, show it - node.css("display","inline"); - } else { // otherwise, show English instead - node.css("display","none"); - node.siblings().filter(".en").css("display","inline"); + var $links = $("#devdoc-nav,#header,#nav-x,.training-nav-top,.content-footer").find("a["+lang+"-lang]"); + $links.each(function(i){ // for each link with a translation + var $link = $(this); + if (lang != "en") { // No need to worry about English, because a language change invokes new request + // put the desired language from the attribute as the text + $link.text($link.attr(lang+"-lang")) } - } + }); } function changeDocLang(lang) { - changeTabLang(lang); changeNavLang(lang); } diff --git a/tools/droiddoc/templates-sdk/components/masthead.cs b/tools/droiddoc/templates-sdk/components/masthead.cs index 4f4e2d368..d98af853d 100644 --- a/tools/droiddoc/templates-sdk/components/masthead.cs +++ b/tools/droiddoc/templates-sdk/components/masthead.cs @@ -12,36 +12,34 @@ @@ -129,42 +127,38 @@ onkeyup="return search_changed(event, false, '')" />