// JavaScript Document

// from sitepoint.com
function externalLinks() { 
 if (!document.getElementsByTagName) return; 
 var anchors = document.getElementsByTagName("a"); 
 for (var i=0; i<anchors.length; i++) { 
   var anchor = anchors[i]; 
   if (anchor.getAttribute("href") && 
       anchor.getAttribute("rel") == "external") 
     anchor.target = "_blank"; 
 } 
} 

function startup() {
	externalLinks();
	if(window.location.hash == '#more') { ajax(); }
}

function about_init() {
	externalLinks();
	bwa_processCornerBoxes(document.getElementsByTagName('li'));
}

function init() {
	scaleImages();
	bwa_AddCorners(document.getElementById('feedbox'),'img');
}

// functions for incoming flash calls
function toggle(el,func) {
	if( func == 2 ) {
		window.open('about.php','About','width=400,height=600,scrollbars=yes');
	} else {
		document.getElementById('text' + el).style.display = (func == 1) ? 'block' : 'none';
	}
}

var x = 0;
var timeout;

function goTo(id,current) {
	var dest = document.getElementById(id).offsetTop;
	if(current < (dest - 50)) {
		current = current + 40;
		window.scrollTo(0,current);
		timeout = setTimeout("goTo('more', " + current + ")", 1);
	} else {
		clearTimeout(timeout);
	}
}

function ajax() {
	var xmlhttp = new XMLHttpRequest();
	xmlhttp.onreadystatechange = function() {
		if(xmlhttp.readyState == 4) {
			setTimeout("goTo('more',window.scrollY)",10);
			document.getElementById('feedbox').innerHTML = xmlhttp.responseText;
			document.getElementById('morelink').innerHTML = '';
			document.getElementById('more-head').style.background = '';
			setTimeout("init()",500);
		} else if(xmlhttp.readyState == 1 ) {
			document.getElementById('more-head').style.background = 'url(images/progress.gif) no-repeat left bottom';
			document.getElementById('morelink').innerHTML = '';
			document.getElementById('more-head').style.display = 'block';
		}
	}
	xmlhttp.open('get', 'feed-grabber.php', true);
	xmlhttp.send(null);
}

//var counter = 0;
function scaleImages() {
	var imgs = document.getElementById('more').getElementsByTagName('img');
	for( var x = 0; x < imgs.length; x++ ) {
		//while(imgs[x].offsetWidth < 1) {
		//	counter++;
		//}
		var height = imgs[x].offsetHeight;
		var width = imgs[x].offsetWidth;
		if( width > 344 ) {
			imgs[x].style.width = '344px';
			imgs[x].style.height = Math.round(height*(imgs[x].offsetWidth/width)) + 'px';
		}
		imgs[x].style.visibility = 'visible';
	}
}

function createElement(el) {
	if( typeof document.createElementNS != 'undefined' ) {
		return document.createElementNS('http://www.w3.org/1999/xhtml',el);
	} else {
		return document.createElement(el);
	}
}


function bwa_AddCorners(parent,children) {
	var page_imgs = parent.getElementsByTagName(children);
	
	for( var i = 0; i < page_imgs.length; i++ ) {
		//if(page_imgs[i].className.match('corners')) {
			var new_div = createElement('div');
			new_div.className = 'corners'; //alert(new_div.className);
			new_div.style.position = 'absolute';
			//new_div.style.marginTop = '-' + (page_imgs[i].offsetHeight + 4) + 'px';
			new_div.style.top = page_imgs[i].offsetTop + 'px';
			new_div.style.left = page_imgs[i].offsetLeft + 'px';
			//new_div.style.float = 'left';
			new_div.style.height = page_imgs[i].offsetHeight + 'px';
			new_div.style.width = page_imgs[i].offsetWidth + 'px';
			//new_div.style.background = 'url(' + page_imgs[i].src + ')';
			page_imgs[i].parentNode.insertBefore(new_div,page_imgs[i].nextSibling);
			//page_imgs[i].parentNode.removeChild(page_imgs[i]);
		//}
	}
	
	var page_divs = document.getElementsByTagName('div');
	var page_links = document.getElementsByTagName('a');
	var page_spans = document.getElementsByTagName('span');
	bwa_processCornerBoxes(page_divs);
	//bwa_processCornerBoxes(page_links);
	//bwa_processCornerBoxes(page_spans);
}

function bwa_processCornerBoxes(page_boxes) {
	for( var i = 0; i < page_boxes.length; i++ ) {
		if(page_boxes[i].className.match('corners')) {
			var cTL = createElement('div');
			var cTR = createElement('div');
			var cBL = createElement('div');
			var cBR = createElement('div');
			cTL.className = 'cornerTL';
			cTR.className = 'cornerTR';
			cBL.className = 'cornerBL';
			cBR.className = 'cornerBR';
			page_boxes[i].appendChild(cTL);
			page_boxes[i].appendChild(cTR);
			page_boxes[i].appendChild(cBL);
			page_boxes[i].appendChild(cBR);
		}
	}
			
}
