summaryrefslogtreecommitdiff
path: root/help3xsl/help2.js
diff options
context:
space:
mode:
authorIlmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>2019-03-10 10:57:34 +0200
committerOlivier Hallot <olivier.hallot@libreoffice.org>2019-03-10 19:22:22 +0100
commit54e3236790baca8a55d0bea3b1dd3e8de5ec5dd5 (patch)
tree09b8aac4732136f114a20b3304154eb4d384d9a7 /help3xsl/help2.js
parent3013fcc8dd2ca6407c6bf17a36a34741d0c9c968 (diff)
Show module & lang navigation on mobile
Module & languages menus were not shown on screen widths < 960. Changed module & languages menu background to span the whole width, when on mobile. An arrow function was used in help2.js, which means it was broken on IE. Moved all src .js files to head and used defer for all. Moved inline Piwik & system info JS into help2.js and added a test for onlineness targeting the first meta element in the body. Change-Id: Ic1a928b53ce9029f9f655117977cd511b7e3246d Reviewed-on: https://gerrit.libreoffice.org/69005 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Diffstat (limited to 'help3xsl/help2.js')
-rw-r--r--help3xsl/help2.js42
1 files changed, 40 insertions, 2 deletions
diff --git a/help3xsl/help2.js b/help3xsl/help2.js
index 505dcaf8ec..5a48c394fe 100644
--- a/help3xsl/help2.js
+++ b/help3xsl/help2.js
@@ -75,7 +75,7 @@ function fixURL(module, system) {
for (var i = 0; i < n; i++) {
if (itemlink[i].getAttribute("class") != "objectfiles"){
setURLParam(itemlink[i], pSystem, pAppl);
- };
+ }
}
}
//Set the params inside URL
@@ -159,11 +159,49 @@ function setupLanguages(target, page) {
var langNav = document.getElementById('langs-nav');
if (!langNav.classList.contains('loaded')) {
var html = '';
- languagesSet.forEach(lang => {
+ languagesSet.forEach(function(lang) {
html += '<a href="' + target + lang + page + '">' + ((lang in languageNames)? languageNames[lang]: lang) + '</a>';
});
langNav.innerHTML = html;
langNav.classList.add('loaded');
}
}
+
+// Test, if we are online
+if (document.body.getElementsByTagName('meta')[0].getAttribute('itemprop') === 'version') {
+ var _paq = _paq || [];
+ /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
+ _paq.push(['disableCookies']);
+ _paq.push(['trackPageView']);
+ _paq.push(['enableLinkTracking']);
+ (function() {
+ var u="//piwik.documentfoundation.org/";
+ _paq.push(['setTrackerUrl', u+'piwik.php']);
+ _paq.push(['setSiteId', '68']);
+ var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
+ g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
+ })();
+ var system = getParameterByName("System");
+} else {
+ var system = getSystem();
+}
+
+var module = getParameterByName("DbPAR");
+var helpID = getParameterByName("HID");
+fixURL(module,system);
+var dbg = getParameterByName("Debug");
+if (dbg == null) { dbg=0; }
+document.getElementById("DEBUG").style.display = (dbg == 0) ? "none":"block";
+document.getElementById("bm_module").innerHTML ="Module is: "+module;
+document.getElementById("bm_system").innerHTML ="System is: "+system;
+document.getElementById("bm_HID").innerHTML ="HID is: "+helpID;
+
+// Mobile devices need the modules and langs on page load
+if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 960) {
+ var e = new Event('change');
+ var modules = document.getElementById('modules');
+ var langs = document.getElementById('langs');
+ modules.dispatchEvent(e);
+ langs.dispatchEvent(e);
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */