var url = "http://www.mozilla.cat/navegaencatala/update-json.php?callback=bridge"; // URL of the external script
var script = document.createElement('script');
script.setAttribute('src', url);

// Create HTML
document.write("<div class='contenidor_ff'><div class='avis_firefox'></div><div class='avis_firefox_inter'></div><div class='avis_firefox_prima'></div></div>");
// load the script
document.getElementsByTagName('head')[0].appendChild(script); 
// Bridge function
var bridge = function( json ) {
   process_args(json.name, json.version, json.lang, json.mob);
}
// Get all Tags
var allTags = new Array();
var allTags=document.getElementsByTagName("*");
var stablever = '10.0';
var betaver = '11.0';
var mozillaver = '10.0';

//Strings
var strFFcat = "<div class='firefox'><img src='/img/left-arrow.png' alt='left arrow'  width='100px' /><p>Us interessa el Firefox?</p><p>Aquí el podeu baixar i saber-ne més…</div>";
var antiga = "<div class='firefox'><img src='/img/left-arrow.png' alt='left arrow'  width='100px' /><p>Teniu una versió antiga del Firefox</p><p>Actualitzeu-vos!</p></div>";
var provacat = "<div class='firefox'><p>Per què no proveu tenir<p><p>el vostre Firefox en català?</p></div>";

var navegacat = '<div class="firefox"><p>No navegueu en català…</p><p>Cliqueu a sota per a navegar-hi!</p><div style="width:185px" class="applist"><ul style="list-style-type:none;" class="home_download"><li class=""><a class="download-addon" onclick="http://www.softcatala.cat/pub/softcatala/mozilla-extensions/navegaencatala/navegaencatala.xpi" href="http://www.softcatala.cat/pub/softcatala/mozilla-extensions/navegaencatala/navegaencatala.xpi"><div class="app_container"><div class="app_desc"><img style="border:0;" title="Navega en català" alt="Navega en català" src="/img/navega-en-catala.png"></div></div></a></li></ul></div><p class="sub"><a href="http://www.mozilla.cat/navega-en-catala">Més informació…</a></p></div>';

// Print results
function process_args(browser, version, prilang, mob) {

	version = processversion(version);
	
	// Language code (ca.* for Catalan)
	cat = new RegExp("^ca.*");
	if ((browser != 'Firefox') && (browser != 'Mozilla')) {

		changeByClass(allTags, "avis_firefox", strFFcat);
	}

	else {
		//Check alpha, beta, pre in versions
		var exprpre  =  new RegExp("a|b|p|r");
		var pre = 0;
		if (version.search(exprpre) > 0) {
			var prearray = version.split(exprpre);
			version = prearray[0];
			pre = 1;
		}

	
		if ((browser == 'Firefox' && (compareVersion(stablever, version)<0)) || (browser == 'Mozilla' && (version.compareVersion(mozillaver)<0))) {
			if (mob != '') {
                                changeByClass(allTags, "avis_firefox", mantiga);
                        }

			else {
				changeByClass(allTags, "avis_firefox", antiga);
			}
		}
	
		else {

			if (pre==1 || pre==0) {
				if (compareVersion(stablever, version)<0 ) {
					changeByClass(allTags, "avis_firefox", antiga);
				}

			}

			if (!cat.test(prilang)) {
                                changeByClass(allTags, "avis_firefox", navegacat);
                        }

			else {
				changeByClass(allTags, "avis_firefox", "<div class='firefox'><p>Si ja feu servir el Firefox,</p><p>podeu seguir-ne les novetats a<p><a href='http://www.mozilla.cat'><img src='/img/mozillacat.png' alt='Mozilla.cat' title='Mozilla.cat' /></a></p></div>");
			}
		}	
	}

}

function changeByClass(ttags, tclass, tstring) {

	for (i=0; i<ttags.length; i++) {

		if (ttags[i].className==tclass) {
			ttags[i].innerHTML=tstring;
		}		
	}
}

function compareVersion(refversion, curversion) {

	if (curversion - refversion > 0) {
		return(1);
	}

	else if (curversion - refversion < 0 ) {
		return(-1);
	}

	else {return(0);}
}

function processversion(version) {

	var arr = version.split("\.");
	var num = arr[0]+"."+arr[1];

	return(num);
}

