
///<reference path="utility.js" />
///<reference path="formatting.js" />
///<reference path="jquery/jQuery-vsdoc.js" />
///<reference path="JSFX_FadingRollovers.js" />

var coll_loadedimages = new collection();
var TIMEOUT_AMOUNT = 100;
arr_paddingtop = [];
arr_paddingtop["small"] = 5;
arr_paddingtop["med"] = 4;
arr_paddingtop["lar"] = 7;
var arr_remembered_galleryinnerpaddings = [];

//Initialise links
for (var i = 1; i <= 7; i++) {
	var offsrc = "img/all/links/" + size + "_link" + i + "_off.jpg";
	document.getElementById("l" + i).style.backgroundImage = "url(" + offsrc + ")";
	document.getElementsByName("link" + i)[0].src = offsrc; //needed??!?

    //Initialise rollover
	JSFX.Rollover("link" + i.toString(), "img/all/links/" + size + "_link" + i.toString() + "_on.jpg");
}

//now (tediously) set body attributes - you can't set body classname as with just above
document.body.style.backgroundImage = "url(img/all/" + size + "_backtop.jpg)";

//Go through all images in the entire document and store them in a collection, for gallery code to use to tell when they are 'complete'.
//We could restrict this to just looking in containers that need it, i.e. painting sections, but we really don't need to worry too much about speed I think.
var allimages = document.getElementsByTagName("img");
for (var i = 0; i < allimages.length; i++) {
    var src = allimages[i].src;

    if (coll_loadedimages.getIDposition(src) == -1) {
        var img_obj = new Image();
        img_obj.src = src;
        coll_loadedimages.push(img_obj, src);
    }
}

//for each gallery, size everything as necessary
var els_gallery = getElementsByClassName(document, "*", "gallery");
for (var key = 0; key < els_gallery.length; key++) {
	var curr_number = els_gallery[key].id.substr(4);
	var bigimg_url = document.getElementById("img_" + curr_number).src;
	var cirimg_url = document.getElementById("cir_" + curr_number).src;
	var bool_lr = true;
	if ((key % 2) == 1) {
		addclass(els_gallery[key], "gright");
		bool_lr = false;
	}
	rep_bigimg(curr_number, bigimg_url, bool_lr);
	rep_cirimg(curr_number, cirimg_url, bool_lr);
}

//Firefox alignment adjustment
if (get_browser_name() == "Firefox") {
	var arr = getElementsByClassName(document, "*", "pright");
	for (var key = 0; key < arr.length; key++) {
		arr[key].style.textAlign = "-moz-right";
	}
}




function rep_bigimg(curr_number, bigimg_url, bool_leftright) {
    var bigimg = coll_loadedimages.item(bigimg_url);
	if (bigimg.complete) {
		document.getElementById("rpanel_" + curr_number).style.height = bigimg.height + "px";
		document.getElementById("gc2_" + curr_number).style.height = bigimg.height + "px";
		document.getElementById("r1_" + curr_number).style.paddingTop = (bigimg.height * ((get_first_numeric_string(getcomputedstyle(document.getElementById("pti_" + curr_number)).top)*1) / 100)) + "px";
		document.getElementById("rt5_" + curr_number).style.height =
		(
				(
					  bigimg.height * ((get_first_numeric_string(getcomputedstyle(document.getElementById("sti_" + curr_number)).height)*1) / 100)
				)
			-	(
					  get_first_numeric_string(getcomputedstyle(document.getElementById("r1_" + curr_number)).paddingTop)*1
					+ arr_paddingtop[size]
				)
		)
		+ "px";
		if (bool_leftright == true) {
			document.getElementById("r2_" + curr_number).style.paddingLeft = bigimg.width + "px";
			document.getElementById("cir_" + curr_number).style.left = (bigimg.width - (bigimg.width * ((get_first_numeric_string(getcomputedstyle(document.getElementById("cli_" + curr_number)).left)*1) / 100))) + "px";
		} else {			
			document.getElementById("img_" + curr_number).style.left = "-" + bigimg.width + "px";
			document.getElementById("r2_" + curr_number).style.paddingRight = bigimg.width + "px";;
			document.getElementById("cir_" + curr_number).style.left = ((bigimg.width * ((get_first_numeric_string(getcomputedstyle(document.getElementById("cli_" + curr_number)).left)*1) / 100)) - bigimg.width) + "px";
		}
	} else {
		setTimeout("rep_bigimg('" + curr_number + "', '" + bigimg_url + "', " + booltostring(bool_leftright) + ");", TIMEOUT_AMOUNT);
	}
}

function rep_cirimg(curr_number, cirimg_url, bool_leftright) {
    var cirimg = coll_loadedimages.item(cirimg_url);
	if (cirimg.complete) {
		if (bool_leftright == false) {			
			document.getElementById("cir_" + curr_number).style.left = get_first_numeric_string(getcomputedstyle(document.getElementById("cir_" + curr_number)).left) - cirimg.width + "px";
		}
	} else {
		setTimeout("rep_cirimg('" + curr_number + "', '" + cirimg_url + "', " + booltostring(bool_leftright) + ");", TIMEOUT_AMOUNT);
	}
}

