/* Profile Image Preload Scripts */
function preload_images(img_list) {
	for (i in img_list) {
		var pl = new Image();
		pl.src = img_list[i];
	}
}

/* Page Numbers & Jumping control Scripts */
var jump_numbers = false;
var current_page = 1;
var text_box_height = 260;
function jump_more() {
	if (current_page < jump_numbers) jump_number(current_page+1);
}
function jump_prev() {
	jump_number(current_page-1);
}
function get_page() {
	document.getElementById('jump_number_'+current_page).className = '';
	current_page = 1 + Math.ceil(box.scrollTop / text_box_height);
	document.getElementById('jump_number_'+current_page).className = 'on';
}
/* This function is here because MSIE 7 doesn't have the scrollHeight property */
function msie_scroll_height() {
	box = document.getElementById('text_box');
	box.className = 'invisible';
	box.scrollTop += 9999;
	box_scroll_height = text_box_height + box.scrollTop;
	box.scrollTop = 0;
	box.className = '';
	write_jump_numbers();
}
function write_jump_numbers() {
	box = document.getElementById('text_box');
	jump_numbers = Math.ceil((box_scroll_height-4) / text_box_height);
	if (jump_numbers > 1) {
		current_page = 1 + Math.ceil(box.scrollTop / text_box_height);
		if (current_page > 1 && jump_numbers > 5) {
			if (current_page + 4 < jump_numbers) start_number = current_page;
			else start_number = jump_numbers - 4;
		} else {
			start_number = 1;
		}
		max_number = start_number + 4;
		
		//alert(current_page+'/'+jump_numbers+','+start_number+'-'+max_number);
		
		document.getElementById('more_numbers').style.visibility = 'visible';
		jun = '';
		for (var i=start_number; i<=jump_numbers; i++) {
			jun += '<a href="javascript:jump_number('+i+');" id="jump_number_'+i+'">'+i+'</a>';
			if (i == max_number) break;
			if (i !== jump_numbers) jun += '|';
		}
		document.getElementById('jump_numbers').innerHTML = jun;
		get_page();
		/*
		Calculate the height of a spacer, this is the ideal
		height of the text (number of pages X height of text box)
		subtracted by the actual height of the box.
		   
		Then, if the spacer height is a positive value, set the innerHTML of the box to
		have a <span> of the relevant height and block display property to fill out the text...
		*/
		
		var spacer_height = (jump_numbers * text_box_height) - box_scroll_height;
		if (spacer_height > 0) box.innerHTML = box.innerHTML + '<span style="height:'+spacer_height+'px; display: block"></span>';
		// Hide this next line if you don't want the slider!
		//document.getElementById('track___slider').style.visibility = 'visible';
	} else {
		// Hide these next 3 lines if you don't want the slider!
		/*
		document.getElementById('more_numbers').style.visibility = 'hidden';
		document.getElementById('track___slider').style.visibility = 'hidden';
		dd.elements.slider.hide();
		*/
		
	}
}
function jump_number(_number) {
	box = document.getElementById('text_box');
	box.scrollTop = (_number - 1) * text_box_height;
	if (jump_numbers > 5) write_jump_numbers();
	else get_page();
	// Hide this if you don't want the slider!
	//adjust_slider();
}
function profile_photo(_src) {
	//alert(_src);
	document.getElementById('profile_photo').src = _src.replace("\'", "'");
}

/ * Cross-browser, W3C mouse wheel handling */

function handle(delta)
{
    if (delta < 0) jump_more();
    else jump_prev();
}
 
function wheel(event)
{
    var delta = 0;
    if (!event) event = window.event;
    if (event.wheelDelta)
    {
        delta = event.wheelDelta/120;
        if (window.opera) delta = -delta;
    }
    else if (event.detail)
    {
        delta = -event.detail/3;
    }
    if (delta) handle(delta);
}

if (window.addEventListener) window.addEventListener('DOMMouseScroll', wheel, false);
window.onmousewheel = document.onmousewheel = wheel;