
var FDCPLoader = {

	count: 0,
	tint: 500,
	tmax: 10000,
	tagg: 0,
	incyc: false,
	loaded: false,

	cpc: (typeof cleanprintConfiguration == 'undefined' ? null : cleanprintConfiguration),

	getCfg: function(ckey, cdef) {
		if(this.cpc != null && typeof this.cpc[ckey] != 'undefined')
			return this.cpc[ckey];
		return cdef;
	},

	getJsUrl: function() {

		var snodes = document.getElementsByName('cleanprintloader');
		var url = "";

		if(snodes.length > 0) {
			url = snodes[0].src;
		}
		else {

			snodes = document.getElementsByTagName('SCRIPT');

			for(var i = 0; i < snodes.length; i++) {
				if(snodes[i].name == 'cleanprintloader') {
					url = snodes[i].src;
					break;
				}
			}
		}

		if(url.search(/\/[^/]*$/) != -1)
			url = url.replace(/[^/]*$/,"");
		else
			url = "";

		url += 'cp.js';

		return url;
	},

	loadcp: function() {

		if(!this.loaded) {
			this.loaded = true;

			var jsloc = this.getCfg('codeBase', null);

			if(jsloc == null)
				jsloc = this.getJsUrl();

			var e = document.createElement('script');
			e.src = jsloc;
			e.type = 'text/javascript';
			document.getElementsByTagName("head")[0].appendChild(e);
		}
	}
}

function FDCPUrl(pfLink) {

	if(typeof fdcp == 'undefined') {

		if(FDCPLoader.incyc == false)
			FDCPLoader.incyc = true;

		if(FDCPLoader.tagg > FDCPLoader.tmax) {

			FDCPLoader.incyc = false;
			window.print();
			return false;
		}

		FDCPLoader.tagg += FDCPLoader.tint;

		setTimeout("FDCPUrl(" + pfLink + ")", FDCPLoader.tint);

		return false;
	}
	else
		FDCPLoader.incyc = false;

	fdcp.linkPrintHandler(pfLink);
	return false;
}


if (window.addEventListener) {
	window.addEventListener("load", function() { FDCPLoader.loadcp(); }, true);
}
else if (window.attachEvent) {
	window.attachEvent("onload", function() { FDCPLoader.loadcp(); });
}

