X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fon-line%2Fjavascript%2Futils.js;h=bb018ad0edee4cd57d1485bbf06a3a2b912eee61;hb=d2c60bae1c4badba0a0f29e3fd2faed6d3a1869e;hp=1b637dcf484555435f449e4625f4a699f85662e0;hpb=ded9a65d38ae45de20036627c8fd5e83ff201688;p=helm.git diff --git a/helm/on-line/javascript/utils.js b/helm/on-line/javascript/utils.js index 1b637dcf4..bb018ad0e 100644 --- a/helm/on-line/javascript/utils.js +++ b/helm/on-line/javascript/utils.js @@ -3,19 +3,41 @@ function chopSlash(url) return url.slice(0,url.lastIndexOf('/')); } -function setParam(url,name,value) +function dropParam(url,name) { var urla = url.split("?"); var search = urla[1]; var args = search.split("&"); + var newargs = new Array(); + var j = 0; for (var i = 0 ; i < args.length ; i++) { var couple = args[i].split("="); - if (couple[0] == name) args[i] = name + "=" + value; + if (couple[0] != name) { + newargs[j] = args[i]; + j++; + } } + return (urla[0] + "?" + newargs.join("&")); +} + +function setParam(url,name,value) +{ + var urla = url.split("?"); + var search = urla[1]; + var args = search.split("&"); + var found = false; + + for (var i = 0 ; i < args.length ; i++) { + var couple = args[i].split("="); + if (couple[0] == name) { + found = true; + args[i] = name + "=" + value; + } + } - return (urla[0] + "?" + args.join("&")); + return (urla[0] + "?" + args.join("&") + (found ? "" : ("&" + name + "=" + value))); } function extractParam(url,name) @@ -35,10 +57,8 @@ function extractParam(url,name) return value; } -function getParam(name) +function getParam0(search,name) { - var search = location.search; - search = search.slice(1); var args = search.split("&"); var value = "???"; @@ -52,6 +72,23 @@ function getParam(name) return value; } +function getParam(name) +{ + return getParam0(location.search.slice(1),name); +} + +function getParam2(name) +{ + var url = unescape(getParam('xmluri')); + var tmp = url.split("?"); + + if (tmp.length > 1) + return getParam0(tmp[1],name); + else + return getDefaultParam(name); +} + + function outputOption(doc, value, content, selected) { doc.write("