/* Scrambles an e-mail address to avoid webbots from finding name@domains.com
   on a page.

   Arguments:
	toAddr 		is the user name of the e-mail address
    altText 	is the name that will show up in the link if you
    			do not want the name of the e-mail address to show up
    altDomain	is the domain name of the e-mail addr.  null means
    			default which is merl.us
*/
function hideMail(toAddr2, toAddr1, altName, altDomain) {
	var vars = [
	'gmail', 
	'.', 
	'to', 
	'<a href=\'', 
	'com', 
	'mail', 
	'@', 
	'>', 
	'</a', 
	'\'', 
	':'
	];
	var domain = altDomain || (vars[0]+vars[1]+vars[4]);
	var str = vars[3] + vars[5] + vars[2] + vars[10] + toAddr1 + toAddr2 + vars[6] + domain + vars[9] + vars[7]  + altName + vars[8] + vars[7];
	document.write(str);
}

function escramble(toAddr, altName, altDomain) {
 var a,b,c,d,e,f,g,h,i;
 altDomain = altDomain || 'gmail.com';
 altName = altName || (toAddr + altDomain);
 a='<a href=\"mai';
 b=altName;
 c='\">';
 a+='lto:';
 b+='@';
 e='</a>';
 b+=altDomain;
 f='send us suggestions';
 b+='?';
 g='<img src=\"';
 b+='Subject';
 h='';
 b+='=Save Farrelly Pool question';
 i='\" alt="e-mail us." border="0">';

 if (f) d=f;
 else if (h) d=g+h+i;
 else d=b;

 document.write(a+b+c+d+e);
}

function QS(){
    this.qs = {};
    var s = location.search.replace( /^\?|#.*$/g, '' );
    if( s ) {
        var qsParts = s.split('&');
        var i, nv;
        for (i = 0; i < qsParts.length; i++) {
            nv = qsParts[i].split('=');
            this.qs[nv[0]] = nv[1];
        }
    }
}

QS.prototype.get = function( name ) {
	if ( name ) {
        var i, nv;
        for (var p in this.qs) {
			if (p == name ) {
				return this.qs[p];
			}
        }
	}
}

QS.prototype.add = function( name, value ) {
    if( arguments.length == 1 && arguments[0].constructor == Object ) {
        this.addMany( arguments[0] );
        return;
    }
    this.qs[name] = value;
}

QS.prototype.addMany = function( newValues ) {
    for( nv in newValues ) {
        this.qs[nv] = newValues[nv];
    }
}

QS.prototype.remove = function( name ) {
    if( arguments.length == 1 && arguments[0].constructor == Array ) {
        this.removeMany( arguments[0] );
        return;
    }
    delete this.qs[name];
}

QS.prototype.removeMany = function( deleteNames ) {
    var i;
    for( i = 0; i < deleteNames.length; i++ ) {
        delete this.qs[deleteNames[i]];
    }
}

QS.prototype.getQueryString = function() {
    var nv, q = [];
    for( nv in this.qs ) {
        q[q.length] = nv+'='+this.qs[nv];
    }
    return q.join( '&' );
}

QS.prototype.toString = QS.prototype.getQueryString;


