﻿// JScript File

function geturl(u)
{
    var url = ""+u;
    var i = url.indexOf("#");
    if (i>=0)
        return url.substring(0,i);    
    else
        return u;   
        
}

function getanchor(u)
{
    var url = ""+u;
    var i = url.indexOf("#");
    if (i>-1)
        return url.substr(i);    
    else
        return "";        
}

function removeqstr(u)
{
    var url = ""+u;
    var i = url.indexOf("?");
    return url.substring(0,i);
}

function getqstr(u)
{
    var url = ""+u;
    var i = url.indexOf("?");
    if (i>-1)
        return url.substr(i);    
    else
        return "";    
}

function getprturl(u,qstr)
{
    
    var url = geturl(u);    
    var anchor = getanchor(u);
    var oldqstr = getqstr(url);
    url = removeqstr(url);
        
    if (oldqstr=="")
        return url+"?"+qstr+anchor;
    else
        return url+mergeqstr(oldqstr,qstr)+anchor;
}

    function NewPopup(page,w,h)
    {    
        var width = w;
        var height = h;
        window.open(page,"","width="+width+",height="+height+",menubar=no,resizable=yes,scrollbars=no,status=no,toolbar=no");
    }
    
function mergeqstr(oldqstr,newqstr)
{
    
    var oldterms=oldqstr.split('&');
    var newterms=newqstr.split('&');   
    var returnstr=""; 
    var oldvar="";
    for (i=0; i<oldterms.length; i++)
    {
        if (oldterms[i].charAt(0)=='?')
            oldterms[i]=oldterms[i].substr(1);
    }    
    for (i=0; i<newterms.length; i++)
    {
        if (newterms[i].charAt(0)=='?')
            newterms[i]=newterms[i].substr(1);
        var pos=newterms[i].indexOf('=');
        var newvar=newterms[i].substr(0,pos);
        var isdup=false;
        var j=0;
        for (j=0; j<oldterms.length; j++)
        {
            pos = oldterms[j].indexOf('=');        
            oldvar=oldterms[j].substr(0,pos);
            if (oldvar==newvar)
                isdup=true;
        }
        if (!isdup)
        {
            returnstr=returnstr+"&"+newterms[i];
        }
    }

    
    for (i=0; i<oldterms.length; i++)
    {
        returnstr=returnstr+"&"+oldterms[i];
    }
    returnstr="?"+returnstr.substr(1);
    
    //return oldqstr+"&"+newqstr;
    return returnstr;
}
