// start: mouseover script and image preloader
function msover(img,ref){
			document.images[img].src = ref;
}
function msout(img,ref){
			document.images[img].src = ref;
}
// end: mouseover script and image preloader


function in_array(needle, haystack){
	for (h in haystack) {
		if (haystack[h] == needle) {
			return true;
			// or if you prefer to get the key of the first found match use
			//return h;
		}
	}
	return false;
}
function PHP_Unserialize(input){
    var result = PHP_Unserialize_(input);
    return result[0];
}
function PHP_Unserialize_(input){
    var length = 0;
    switch (input.charAt(0)) {
        case 'a':
            length = PHP_Unserialize_GetLength(input);
            input  = input.substr(String(length).length + 4);

            var arr   = new Array();
            var key   = null;
            var value = null;

            for (var i=0; i<length; ++i) {
                key   = PHP_Unserialize_(input);
                input = key[1];

                value = PHP_Unserialize_(input);
                input = value[1];

                arr[key[0]] = value[0];
            }
            input = input.substr(1);
            return [arr, input];
            break;
        case 'O':
            length = PHP_Unserialize_GetLength(input);
            var classname = String(input.substr(String(length).length + 4, length));
            input  = input.substr(String(length).length + 6 + length);
            var numProperties = Number(input.substring(0, input.indexOf(':')))
            input = input.substr(String(numProperties).length + 2);
            var obj      = new Object();
            var property = null;
            var value    = null;
            for (var i=0; i<numProperties; ++i) {
                key   = PHP_Unserialize_(input);
                input = key[1];
                key[0] = key[0].replace(new RegExp('^\x00' + classname + '\x00'), '');
                key[0] = key[0].replace(new RegExp('^\x00\\*\x00'), '');
                value = PHP_Unserialize_(input);
                input = value[1];
                obj[key[0]] = value[0];
            }
            input = input.substr(1);
            return [obj, input];
            break;
        case 's':
            length = PHP_Unserialize_GetLength(input);
            return [String(input.substr(String(length).length + 4, length)), input.substr(String(length).length + 6 + length)];
            break;
        case 'i':
        case 'd':
            var num = Number(input.substring(2, input.indexOf(';')));
            return [num, input.substr(String(num).length + 3)];
            break;
        case 'b':
            var bool = (input.substr(2, 1) == 1);
            return [bool, input.substr(4)];
            break;
        case 'N':
            return [null, input.substr(2)];
            break;
        case 'o':
        case 'r':
        case 'C':
        case 'R':
        case 'U':
            alert('Error: Unsupported PHP data type found!');
        default:
            return [null, null];
            break;
    }
}
function PHP_Unserialize_GetLength(input){
    input = input.substring(2);
    var length = Number(input.substr(0, input.indexOf(':')));
    return length;
}
function writeDiv(divid,divcontent){
	document.getElementById(divid).innerHTML = document.getElementById(divid).innerHTML + divcontent;
}
function eraseDiv(divid){
	document.getElementById(divid).innerHTML = "";
}
function print_r(input, _indent){
    var indent       = (typeof(_indent)=='string')?_indent+'&nbsp;&nbsp;&nbsp;&nbsp;':'&nbsp;&nbsp;&nbsp;&nbsp;';
    var paren_indent = (typeof(_indent)=='string')?_indent+'&nbsp;&nbsp;':'';

    if ( typeof(input) == 'string' ) {
        var output = "'"+ input +"'\n"
    } else if ( typeof(input) == 'boolean' ) {
        var output = (input?'true':'false') +"\n"
    } else if ( typeof(input) == 'object' ) {
        var output  = ((input.reverse)?'Array':'Object') +"\n"
        output     += paren_indent + "(\n";
        for ( var i in input ) {
            output += indent + "["+ i +"] => "+ print_r(input[i],indent)
        }
        output += paren_indent + ")\n"
    }
    return output
}
String.prototype.ucwords = function(){ //v1.0
    return this.replace(/\w+/g, function(a){
        return a.charAt(0).toUpperCase() + a.substr(1).toLowerCase();
    });
};
function replaceAll( str, from, to ) {
    var idx = str.indexOf( from );
    while ( idx > -1 ) {
        str = str.replace( from, to );
        idx = str.indexOf( from );
    }
    return str;
}
function valvePricer(URL) {
	day = new Date();
	id = day.getTime();
	eval("peterpaul" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=300,height=200');");
}