function slide()
{
	if (!document.images) {
		return;
	}

	if (document.all) {
		document.images.slide.filters[0].apply();
		document.images.slide.filters[0].play();
	}
}

function cwalert(msg)
{
	alert(unescape(msg));
}

function cwconfirm(msg)
{
	return confirm(unescape(msg));
}

function cwEscape(param)
{
	param = param.replace(/%/g, "%%");
	param = param.replace(/!/g, "%!");
	param = param.replace(/#/g, "%#");
	param = param.replace(/\|/g, "%|");
	return param;
}

function cwUnescape(param)
{
	param = param.replace(/%\|/g, "|");
	param = param.replace(/%#/g, "#");
	param = param.replace(/%!/g, "!");
	param = param.replace(/%%/g, "%");
	return param;
}

function cwParameters(params)
{
	var ret = "";

	for (i = 0; i < params.length; i++) {
		var subParams = params[i];

		if (isArray(subParams)) {
			var subParam = "";
			for (j = 0; j < subParams.length; ++j) {
				subParam += (j > 0 ? "!|" : "" ) + cwEscape("" + subParams[j]);
			}
			ret += (i > 0 ? "!#" : "" ) + subParam;
		}
		else {
			ret += (i > 0 ? "!#" : "" ) + cwEscape("" + subParams);
		}
	}

	return base64Encode(ret);
}

function escapeParameter(param)
{
	// Replace € symbol with text EURO
	param = String(param);
	var re = new RegExp("\\\\", "gi");
	param = param.replace(re, "\\\\");
	param = convertHTML(param);
	param = param.replace(/\+/g, "%2B");
	return param;
}

function convertHTML(str)
{
	var output = "";
	for (i = 0; i < str.length; ++i) {
		var ch = str.substr(i,1);
		var conv = escape(ch);
		if (conv.substr(0, 2) == "%u") {
			var hex = "$@h" + conv.substr(2) + ";";
			output += hex.toLowerCase();
		}
		else {
			output += ch;
		}
	}
	return escape(output);
}

function isAlien(a)
{
   return isObject(a) && typeof a.constructor != 'function';
}

function isArray(a)
{
    return isObject(a) && a.constructor == Array;
}

function isBoolean(a)
{
    return typeof a == 'boolean';
}

function isEmpty(o)
{
    var i, v;
    if (isObject(o)) {
        for (i in o) {
            v = o[i];
            if (isUndefined(v) && isFunction(v)) {
                return false;
            }
        }
    }
    return true;
}

function isFunction(a)
{
    return typeof a == 'function';
}

function isNull(a)
{
    return typeof a == 'object' && !a;
}

function isNumber(a)
{
    return typeof a == 'number' && isFinite(a);
}

function isObject(a)
{
    return (a && typeof a == 'object') || isFunction(a);
}

function isString(a)
{
    return typeof a == 'string';
}

function isUndefined(a)
{
    return typeof a == 'undefined';
}

function createCookie(name,value,seconds,secure) {
	if (seconds) {
		var date = new Date();
		date.setTime(date.getTime()+(seconds*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	if (secure)
		secure = ";secure";
	else
		var secure = "";
	document.cookie = name+"="+value+expires+"; path=/"+secure;
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}
