/* Customised by DATALICIOUS */

var d = {};
// ------------- START CONFIG ------------------
//d.ClientCodebase		= '//cdn.newzealand.com/nz/';
d.ClientCodebase		= '//farm1.nzstatic.com/visit/js/tracking/dl/';
d.ClientTesting			= '//www.newzealand.com/travel/app_templates/javascript/';

d.ClientName			= 'tnz';
d.CodebaseLivetest		= '//www.datalicious.com/clients/' + d.ClientName + '/livetest/js/';
d.CodebaseLatestCode		= '//www.datalicious.com/clients/' + d.ClientName + '/latestcode/js/';

d.CodeFile			= 'dcode-v105.js';
// ------------- END CONFIG --------------------

//----------- BASE FUNCTIONS -------------------
d.gqp = function(name){name=name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regexS="[\\?&]"+name+"=([^&#]*)";var regex=new RegExp(regexS);var results=regex.exec(window.location.href);if(results==null)return"";else return results[1];};
d.replaceAll = function(input,stringToFind,stringToReplaceWith){myRegExp=new RegExp(stringToFind, 'g');return input.replace(myRegExp, stringToReplaceWith);};
d.getHost = function(url){if(url.indexOf("://")>=0)url=url.substring(url.indexOf('://')+3,url.length);if(url.indexOf("/")>=0)url=url.substring(0,url.indexOf("/"));return url;};
d.setCookie = function(c_name,value,expiredays){var exdate=new Date();exdate.setDate(exdate.getDate()+expiredays);document.cookie=c_name+"="+escape(value)+";domain=."+d.replaceAll(d.getHost(window.location.href.toLowerCase()),"www.","")+";path=/"+((expiredays==null)?"":";expires="+exdate.toGMTString());};
d.getCookie = function(c_name){if(document.cookie.length>0){c_start=document.cookie.indexOf(c_name+"=");if(c_start!=-1){c_start=c_start+c_name.length+1;c_end=document.cookie.indexOf(";",c_start);if(c_end==-1)c_end=document.cookie.length;return unescape(document.cookie.substring(c_start,c_end));}}return"";};
d.include = function(filename){document.write(unescape("%3Cscript src='" + filename + "' type='text/javascript'%3E%3C/script%3E"));};
d.includeAS = function(file){var a=document.createElement('script');a.type='text/javascript';a.async=true;a.src=file;var b=document.getElementsByTagName('script')[0];b.parentNode.insertBefore(a,b);};
d.domToArray = function (domCollection) {
	var arr = [];
	for (var i = 0; i < domCollection.length; i += 1) {
		arr.push(domCollection[i]);	
	}
	return arr;
}

// ------- ARE WE TESTING? ---------------------
d.Codebase = '';
d.URL=document.location.href.toLowerCase();
d.Test = d.gqp('datalicious');
if (d.Test == 'test') {
	d.setCookie('datCookie', 'test', 1);
}
if (d.Test == d.ClientName) {
	d.setCookie('datCookie', d.ClientName, 1);
}
d.CookieValue = d.getCookie('datCookie');

if (d.CookieValue == 'test' || d.Test == 'test' || d.CookieValue == d.ClientName || d.Test == d.ClientName) {
	// This will use the test files on the datalicious server folder livetest
	if(d.CookieValue == 'test' || d.Test == 'test'){
		d.Codebase = d.CodebaseLivetest;
	}else{
		// This will use the test files on the client server folder livetest
		d.Codebase = d.ClientTesting;
	}
	// load test file
	d.CodeFile = d.CodeFile.replace(/\.js/g, "-test.js");
} else {
	// Datalicious server will use latestcode dir, otherwise use client code base
	if (d.URL.indexOf('datalicious.') > -1) {
		d.Codebase = d.CodebaseLatestCode;
	} else {
		d.Codebase = d.ClientCodebase;
	}
}
if (typeof d.CodeFile != 'undefined') d.include(d.Codebase + d.CodeFile);

