diff options
author | Olivier Hallot <olivier.hallot@libreoffice.org> | 2018-04-16 19:16:05 -0300 |
---|---|---|
committer | Olivier Hallot <olivier.hallot@libreoffice.org> | 2018-04-17 04:38:13 +0200 |
commit | 22691f35eea6bf031fe271790d9b19093a12f8f4 (patch) | |
tree | 872f860becda12ce0cb8d83bc1502146937a7a81 /help3xsl | |
parent | 7809c5f562f2adb28f36f3f5625e757f238a8d5f (diff) |
Fix index in sidebar
The last commit of online_transform.xsl instrpduced a bug in
index search on the left. This one fixes it.
Change-Id: I8055389a324d1fc5fde90ac2b76ff6f0a4a42493
Reviewed-on: https://gerrit.libreoffice.org/53011
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Diffstat (limited to 'help3xsl')
-rw-r--r-- | help3xsl/default.css | 3 | ||||
-rw-r--r-- | help3xsl/help.js | 113 | ||||
-rw-r--r-- | help3xsl/help2.js | 123 | ||||
-rw-r--r-- | help3xsl/online_transform.xsl | 3 |
4 files changed, 128 insertions, 114 deletions
diff --git a/help3xsl/default.css b/help3xsl/default.css index 391c4d2132..8d6d3df2d4 100644 --- a/help3xsl/default.css +++ b/help3xsl/default.css @@ -266,6 +266,9 @@ h6 { display:inline-block; border:none; } +.switch, +.switchinline {} + .tintro { color: white; background-color: green; diff --git a/help3xsl/help.js b/help3xsl/help.js index 585ff2ef80..76d47dd77f 100644 --- a/help3xsl/help.js +++ b/help3xsl/help.js @@ -6,120 +6,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -// Used to set Application in caseinline=APP -function setApplSpan(SpanID) { - var module = getParameterByName("DbPAR"); - if (module === null) { - module = "WRITER"; - } - var y = document.getElementById(SpanID).getElementsByTagName("SPAN"); - var n = y.length; - var foundSystem = false; - for (i = 0; i < n; i++) { - if (y[i].getAttribute("id") === null){ - continue; - } - else if( y[i].getAttribute("id").startsWith(module)){ - y[i].removeAttribute("hidden"); - foundSystem=true; - } - } - for (i = 0; i < n; i++) { - if (y[i].getAttribute("id") === null){ - continue; - } - else if( y[i].getAttribute("id").startsWith("default")){ - if(!foundSystem){ - y[i].removeAttribute("hidden"); - } - } - } -} -// Used to set system in case, caseinline=SYSTEM -function setSystemSpan(spanID) { - var system = getParameterByName("System"); - // if no System in URL, get browser system - if (system === null) { - system = getSystem(); - } - var y = document.getElementById(spanID).getElementsByTagName("SPAN"); - var n = y.length; - var foundSystem = false; - for (i = 0; i < n; i++) { - if (y[i].getAttribute("id") === null){ - continue; - } - else if( y[i].getAttribute("id").startsWith(system)){ - y[i].removeAttribute("hidden"); - foundSystem=true; - } - } - for (i = 0; i < n; i++) { - if (y[i].getAttribute("id") === null){ - continue; - } - else if( y[i].getAttribute("id").startsWith("default")){ - if(!foundSystem){ - y[i].removeAttribute("hidden"); - } - } - } -} -/* add &DbPAR= and &System= to the links in DisplayArea div */ -/* skip for object files */ -function fixURL(module, system) { - var itemlink = document.getElementById("DisplayArea").getElementsByTagName("a"); - var pSystem = (system === null) ? getSystem() : system; - var pAppl = (module === null) ? "WRITER" : module; - var n = itemlink.length; - for (var i = 0; i < n; i++) { - if (itemlink[i].getAttribute("class") != "objectfiles"){ - setURLParam(itemlink[i], pSystem, pAppl); - }; - } -} -//Set the params inside URL -function setURLParam(itemlink, pSystem, pAppl) { - var href = itemlink.getAttribute("href"); - if (href !== null) { - // skip external links - if (!href.startsWith("http")) { - // handle bookmark. - if (href.lastIndexOf('#') != -1) { - var postf = href.substring(href.lastIndexOf('#'), href.length); - var pref = href.substring(0, href.lastIndexOf('#')); - itemlink.setAttribute("href", pref + "?" + '&DbPAR=' + pAppl + '&System=' + pSystem + postf); - } else { - itemlink.setAttribute("href", href + "?" + '&DbPAR=' + pAppl + '&System=' + pSystem); - } - } - } -} - -function getSystem() { - var system = "Unknown OS"; - if (navigator.appVersion.indexOf("Win") != -1) system = "WIN"; - if (navigator.appVersion.indexOf("Mac") != -1) system = "MAC"; - if (navigator.appVersion.indexOf("X11") != -1) system = "UNIX"; - if (navigator.appVersion.indexOf("Linux") != -1) system = "UNIX"; - return system; -} -function getParameterByName(name, url) { - if (!url) { - url = window.location.href; - } - name = name.replace(/[\[\]]/g, "\\$&"); - var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"); - var results = regex.exec(url); - if (!results) { - return null; - } - if (!results[2]) { - return ''; - } - return decodeURIComponent(results[2].replace(/\+/g, " ")); -} // Pagination and fuzzy search var fuseshown = document.getElementsByClassName("fuseshown"); var indexkids = document.getElementsByClassName("index")[0].children; diff --git a/help3xsl/help2.js b/help3xsl/help2.js new file mode 100644 index 0000000000..0e7b9d3325 --- /dev/null +++ b/help3xsl/help2.js @@ -0,0 +1,123 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ +// Used to set Application in caseinline=APP +function setApplSpan(SpanID) { + var module = getParameterByName("DbPAR"); + if (module === null) { + module = "WRITER"; + } + var y = document.getElementById(SpanID).getElementsByTagName("SPAN"); + var n = y.length; + var foundSystem = false; + for (i = 0; i < n; i++) { + if (y[i].getAttribute("id") === null){ + continue; + } + else if( y[i].getAttribute("id").startsWith(module)){ + y[i].removeAttribute("hidden"); + foundSystem=true; + } + } + for (i = 0; i < n; i++) { + if (y[i].getAttribute("id") === null){ + continue; + } + else if( y[i].getAttribute("id").startsWith("default")){ + if(!foundSystem){ + y[i].removeAttribute("hidden"); + } + } + } +} +// Used to set system in case, caseinline=SYSTEM +function setSystemSpan(spanID) { + var system = getParameterByName("System"); + // if no System in URL, get browser system + if (system === null) { + system = getSystem(); + } + var y = document.getElementById(spanID).getElementsByTagName("SPAN"); + var n = y.length; + var foundSystem = false; + for (i = 0; i < n; i++) { + if (y[i].getAttribute("id") === null){ + continue; + } + else if( y[i].getAttribute("id").startsWith(system)){ + y[i].removeAttribute("hidden"); + foundSystem=true; + } + } + for (i = 0; i < n; i++) { + if (y[i].getAttribute("id") === null){ + continue; + } + else if( y[i].getAttribute("id").startsWith("default")){ + if(!foundSystem){ + y[i].removeAttribute("hidden"); + } + } + } +} +/* add &DbPAR= and &System= to the links in DisplayArea div */ +/* skip for object files */ +function fixURL(module, system) { + var itemlink = document.getElementById("DisplayArea").getElementsByTagName("a"); + var pSystem = (system === null) ? getSystem() : system; + var pAppl = (module === null) ? "WRITER" : module; + var n = itemlink.length; + for (var i = 0; i < n; i++) { + if (itemlink[i].getAttribute("class") != "objectfiles"){ + setURLParam(itemlink[i], pSystem, pAppl); + }; + } +} +//Set the params inside URL +function setURLParam(itemlink, pSystem, pAppl) { + var href = itemlink.getAttribute("href"); + if (href !== null) { + // skip external links + if (!href.startsWith("http")) { + // handle bookmark. + if (href.lastIndexOf('#') != -1) { + var postf = href.substring(href.lastIndexOf('#'), href.length); + var pref = href.substring(0, href.lastIndexOf('#')); + itemlink.setAttribute("href", pref + "?" + '&DbPAR=' + pAppl + '&System=' + pSystem + postf); + } else { + itemlink.setAttribute("href", href + "?" + '&DbPAR=' + pAppl + '&System=' + pSystem); + } + } + } +} + +function getSystem() { + var system = "Unknown OS"; + if (navigator.appVersion.indexOf("Win") != -1) system = "WIN"; + if (navigator.appVersion.indexOf("Mac") != -1) system = "MAC"; + if (navigator.appVersion.indexOf("X11") != -1) system = "UNIX"; + if (navigator.appVersion.indexOf("Linux") != -1) system = "UNIX"; + return system; +} + +function getParameterByName(name, url) { + if (!url) { + url = window.location.href; + } + name = name.replace(/[\[\]]/g, "\\$&"); + var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"); + var results = regex.exec(url); + if (!results) { + return null; + } + if (!results[2]) { + return ''; + } + return decodeURIComponent(results[2].replace(/\+/g, " ")); +} +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/help3xsl/online_transform.xsl b/help3xsl/online_transform.xsl index b96cb19489..34838a5177 100644 --- a/help3xsl/online_transform.xsl +++ b/help3xsl/online_transform.xsl @@ -138,7 +138,7 @@ <link rel="shortcut icon" href="{$target}media/navigation/favicon.ico" /> <link type="text/css" href="{$target}normalize.css" rel="Stylesheet" /> <link type="text/css" href="{$target}default.css" rel="Stylesheet" /> - <script type="text/javascript" src="{$target}help.js"></script> + <script type="text/javascript" src="{$target}help2.js"></script> <script type="text/javascript" src="{$target}fuse.js"></script> <script type="text/javascript" src="{$target}paginathing.js"></script> <meta name="viewport" content="width=device-width,initial-scale=1"/> @@ -307,6 +307,7 @@ </div> <script type="text/javascript" src="{$target}{$lang}/bookmarks.js"/> <script type="text/javascript" src="{$target}{$lang}/contents.js"/> + <script type="text/javascript" src="{$target}help.js"/> <xsl:choose> <xsl:when test="$online"> <script type="text/javascript"> |