// Custom config.
_ajaxConfig = {
				'_jsscriptFolder':'/com/ajaxcfc/core/js',
				'debug':0};

function addOnLoadEvent(func) {
  	var oldonload = window.onload;
  	if (typeof window.onload != 'function') {
    	window.onload = func;
  	} else {
    	window.onload = function() {
      		oldonload();
      		func();
    	}
  	}
}

function toServer(){
	/*
	Usage: toServer('path.to.cfc.methodName', 'argName1', arg1, 'argName2', arg2, ..., 'argNameN', argN)
	*/

	var $A = Array.from = function(iterable) {
	  if (!iterable) return [];
	  if (iterable.toArray) {
		return iterable.toArray();
	  } else {
		var results = [];
		for (var i = 0; i < iterable.length; i++)
		  results.push(iterable[i]);
		return results;
	  }
	}
	
	var args = $A(arguments)
	args.unshift('call')
	args.unshift(null)
	args.unshift(_ajaxConfig._cfscriptLocation)
	//DWREngine._execute(_cfscriptLocation, null, 'call', ...
	DWREngine._execute.apply(null, args);
}

function include(script_filename) {
    document.write('<' + 'script');
    document.write(' language="javascript"');
    document.write(' type="text/javascript"');
    document.write(' src="' + script_filename + '">');
    document.write('</' + 'script' + '>');
}

function include_dom(script_filename) {
    var html_doc = document.getElementsByTagName('head').item(0);
    var js = document.createElement('script');
    js.setAttribute('language', 'javascript');
    js.setAttribute('type', 'text/javascript');
    js.setAttribute('src', script_filename);
    html_doc.appendChild(js);
    return false;
}


//include(_ajaxConfig._jsscriptFolder + '/engine.1.38.js');
/*
include(_ajaxConfig._jsscriptFolder + '/engine.js');
include(_ajaxConfig._jsscriptFolder + '/util.js');
include(_ajaxConfig._jsscriptFolder + '/wddx.js');
*/

if (_ajaxConfig && _ajaxConfig.debug) {
	include(_ajaxConfig._jsscriptFolder + '/log4javascript.js');
	include(_ajaxConfig._jsscriptFolder + '/log4javascriptSetup.js');
}
