/*
 * Helper functions in JavaScript for Heroes Sightings.
 *
*/
var Sightings = {};

function loadImgs() {
	Sightings.images = new Array();
	Sightings.images[0] = new Image();
	Sightings.images[0].src = "http://www.heroessightings.com/media/img/tag_can_you_see.jpg";
	Sightings.images[0].alt = 'Can you see?';
	Sightings.images[0].page_link = '/can-you-see/';
	Sightings.images[1] = new Image();
	Sightings.images[1].src = "http://www.heroessightings.com/media/img/tag_do_you_remember.jpg";
	Sightings.images[1].alt = 'Do you remember?';
	Sightings.images[1].page_link = '/do-you-remember/';
	Sightings.images[1].posAdjust = '4%';
	Sightings.images[2] = new Image();
	Sightings.images[2].src = "http://www.heroessightings.com/media/img/tag_whats_more_powerful.jpg";
	Sightings.images[2].alt = "What's more powerful?";
	Sightings.images[2].page_link = '/whats-more-powerful/';
	Sightings.images[2].posAdjust = '4%';
}

function setImage() {
	var img = document.getElementById('reg-promo');
	if (img) {
		var n = Math.floor(Math.random() * Sightings.images.length);
		var imgToShow = Sightings.images[n];
		img.src = imgToShow.src;
		img.alt = imgToShow.alt;
		img.parentNode.href = imgToShow.page_link; 
		if (imgToShow.posAdjust) {
			img.style.marginLeft = imgToShow.posAdjust;
		}
		img.style.display = 'block';
	}
}

function setPageLen() {
	var content = document.getElementById('content');
	var contentLen;
	var viewLen;
	// Everyone else.
	if (window.innerHeight) {
		viewLen = window.innerHeight;
		contentLen = window.getComputedStyle(content, '').getPropertyValue('height');
		// Convert from the string 'XXpx' to an integer.
		contentLen = parseInt(contentLen.slice(0,-2));
		// IE fires too many resize events to make this useful,
		// so only readjust on resize in other browser.
		window.onresize = function() {
			setPageLen();
		}
	// IE.
	} else {
		viewLen = document.body.clientHeight;
		contentLen = content.offsetHeight;
	}
	if (viewLen > contentLen) {
		// Floats on the profile page mess up a simple set-to-page-length.
		if (document.getElementById('profile-detail')) {
			var profile = document.getElementById('profile-detail');
			var profileLen;
			// Everyone else.
			if (window.innerHeight) {
				profileLen = window.getComputedStyle(profile, '').getPropertyValue('height');
				// Convert from the string 'XXpx' to an integer.
				profileLen = parseInt(profileLen.slice(0,-2));
			// IE.
			} else {
				profileLen = profile.offsetHeight;
			}
			if (profileLen > contentLen) {
				content.style.height = (viewLen + 10 + (profileLen - contentLen)).toString() + 'px';
			}
		// All other pages, we just set height to the same as the page length.
		} else {
			content.style.height = (viewLen + 10).toString() + 'px';
		}
	}
}

function focusForms() {
	if (document.getElementById('accounts-login')) {
		document.forms[0].username.focus();
	}
}

window.onload = function() {
	loadImgs();
	setPageLen();
	setImage();
	focusForms();
}

