// Copyright 2010+, Scannet A/S
_gaq = _gaq || []; // just to be safe.

// Hvis vi er på den sidste side på webshop domainet,
// så sæt <form> elementet op til at overføre google analytics
// cookie værdier til betalings domainet (pay.scannet.dk)
if (location.href.indexOf("/order_confirm.asp") > -1) {
	var forms = document.getElementsByTagName("form")
	if (forms.length > 0) {
		for (var i = 0; i != forms.length; i++) {
			_gaq.push(["_linkByPost", forms[i]])
		}
	}
}

// hvis vi er på en "godkendt betaling" side, kopierer vi ordre data ud af html'en med
// javascript, og sender det til google analytics
patt= new RegExp("/cgi-bin/shoppayment_");
if (patt.test(location.pathname) || location.pathname == "/EndOrder.asp") {
	// funktioner vi skal bruge
	var toText = function(input) { return input.innerHTML.replace(/&nbsp;/gi, " ").replace(/<[^>]*>/gi, "").replace(/\n/gi, "") } 
	var pris = function(input) { return input.replace(".","").replace(",",".") }
	var trim = function(input) { return input.replace(/^\s+/gi, "").replace(/\s+$/gi, "") }
	var m = function(reg, str, fallback) { 
		var r = reg.exec(str);
		return trim((r != null && r.length >= 2 ? r[1] : fallback).replace("&nbsp;", " "));
	}
	
	// basis variabler vi kopiere værdier udfra
	var pc = document.getElementById('printcontent');
	var text = toText(pc);
	var kundeoplysninger = pc.getElementsByTagName('table')[0]
		.getElementsByTagName('table')[0].getElementsByTagName('td')[0]
		.innerHTML.replace(/&nbsp;/gi," ").split(/<br>/gi)

	// lav en ordre hos google analytics
	var ordreno = m(/Ordrenummer:\s{0,30}([0-9]+)/gi, text, 'ukendt');

//	if(ordreno != 'ukendt') {
	// var totalExMoms = pris(m(/Ialt excl. moms[^0-9]{0,10}([0-9\.,]+)/gi, text, '0.00'));
	// var samlet = pris(m(/Samlet pris(?:[^\n])*:[^0-9]{0,10}([0-9\.,]+)/gi, text, '0.00'));
	// var total = totalExMoms==0 ? samlet : totalExMoms;
	var total = amount;
	var moms = 0; //pris(m(/Heraf moms:[^0-9]{0,10}([0-9\.,]+)/gi, text, '0.00'))
	var removeMoms = function(input) { return (parseFloat(input) * (1 - moms / total)) + '' }
	_gaq.push(['_addTrans',
		ordreno, // Order ID
		m(/Betaling:\s(.*)Forsendelse/gi, text, '0'), // Affiliation
		total, // Total
		moms, // Tax
		removeMoms(pris(m(/Forsendelse:[^0-9]{0,10}([0-9\.,]+)/gi, text, '0.00'))), // Shipping
		kundeoplysninger[kundeoplysninger.length - 4].substring(1), // City
		'', // State
		kundeoplysninger[kundeoplysninger.length - 3].substring(1)	// Country
	]);

	// tilføj vare til ordren i google analytics
	var rows = document.getElementById('printcontent').getElementsByTagName('table')[3].getElementsByTagName("tr")
	for (var i = 0; i != rows.length; i++) {
		var fonts = rows[i].getElementsByTagName("font")
		_gaq.push(['_addItem',
			ordreno, // Order ID
			trim(toText(fonts[1])), 	// SKU
			trim(toText(fonts[1])), 	// Product Name
			"Category", // Category
			removeMoms(pris(m(/([0-9\.,]+)/gi, toText(fonts[2]), "0.00"))), // Price
			m(/([0-9]+)/gi, toText(fonts[0]), "0") // Quantity
		]);

		if (typeof (console) != 'undefined') {
			console.log(trim(toText(fonts[1]))) 	// SKU
		}
	}

	// sig til google analytics at transaktionen skal gemmes
	_gaq.push(['_trackTrans']);
//	}
}

if (typeof (console) != 'undefined') {
	console.log("_gaq: " + typeof(_gaq))
	for(var x=0;x!=_gaq.length&&x<200;x++){console.log(_gaq[x])}
}
