changeset 1752:1672f44c68d6

Some cleanups to the JS code.
author Matti Hamalainen <ccr@tnsp.org>
date Wed, 18 Oct 2017 18:15:28 +0300
parents 9812d23322ba
children 4d160a5c6425
files util.js
diffstat 1 files changed, 10 insertions(+), 19 deletions(-) [+]
line wrap: on
line diff
--- a/util.js	Wed Oct 18 17:56:49 2017 +0300
+++ b/util.js	Wed Oct 18 18:15:28 2017 +0300
@@ -4,9 +4,6 @@
 //
 
 var currLoc = "";
-var currClass = "";
-var currMClass = "";
-
 var scrollTimerID = -1;
 var scrollPos0, scrollPos1;
 var scrollIndex = 0.0;
@@ -93,29 +90,23 @@
 }
 
 
-function jsSetActiveElem(nelem, newLoc)
+function jsSetActiveLocation(newLoc)
 {
-  var celem, mcelem;
+  // Change CSS class state for prev/curr/new selected element
   if (currLoc)
   {
-    celem = document.getElementById(currLoc);
-    mcelem = document.getElementById("m"+ currLoc);
+    var celem = document.getElementById(currLoc);
+    var mcelem = document.getElementById("m"+ currLoc);
+    celem.className = celem.className.replace(/ *nactive/g, "");
+    mcelem.className = mcelem.className.replace(/ *nactive/g, "");
   }
 
+  var nelem = document.getElementById(newLoc);
   var nmelem = document.getElementById("m"+ newLoc);
-
-  if (celem && currClass != "")
-    celem.className = currClass;
-
-  if (mcelem && currMClass != "")
-    mcelem.className = currMClass;
-
-  currClass = nelem.className;
-  currMClass = nmelem.className;
   nelem.className += " nactive";
   nmelem.className += " nactive";
 
-
+  // Set the active item in the location dropdown
   var opts = document.forms[0].slocation.options;
   var found = false;
   for (var opt, i = 0; opt = opts[i]; i++)
@@ -165,7 +156,7 @@
       else
         jsSetPosToElem(nelem);
 
-      jsSetActiveElem(nelem, newLoc);
+      jsSetActiveLocation(newLoc);
       currLoc = newLoc;
     }
   }
@@ -183,7 +174,7 @@
     if (nelem)
     {
       jsSetPosToElem(nelem);
-      jsSetActiveElem(nelem, eid);
+      jsSetActiveLocation(eid);
       currLoc = eid;
     }
   }