// linknav.js 0.1
// a dynamic link-navigation toolbar
// by Brian Lalonde http://webcoder.info/downloads/
// This work is licensed under the Creative Commons Attribution-Share Alike 3.0 License. 
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ 
// or send a letter to Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA.

function buildLinkNav()
{
	var link= [], first, prev, up, top, next, last
	var links= document.getElementsByTagName('link')
	for(var l= 0; l < links.length; l++)
	{
		var rel= links[l].rel.toLowerCase()
		switch(rel) { case 'stylesheet': case 'alternate stylesheet': case 'prefetch': continue }
		link.push(links[l])
		switch(rel)
		{
			case 'first': case 'begin': first= links[l]; break
			case 'prev': case 'previous': prev= links[l]; break
			case 'up': case 'parent': up= links[l]; break
			case 'top': case 'start': top= links[l]; break
			case 'next': next= links[l]; break
			case 'last': case 'end': last= links[l]; break
		}
	}
	var ln= document.body.appendChild(document.createElement('div'))
	ln.id= 'WCi_LinkNav'
	var arrs= ln.appendChild(document.createElement('div')), arr // 2190=&larr; 2191=&uarr; 2192=&rarr; 2193=&darr; 2194=&harr;
	arrs.id= 'WCi_LinkNav_Arrows'
	if(prev || first)
	{
		arr= arrs.appendChild(document.createElement('a'))
		arrs.appendChild(document.createTextNode(' '))
		arr.appendChild(document.createTextNode('\u2190'))
		if(prev)
		{
			arr.href= prev.href
			arr.title= ( prev.title ? prev.title : prev.rel )
			if(first) arr.ondblclick= function(){window.open(first.href,'_self')}
		}
		else if(first)
		{
			arr.href= first.href
			arr.title= ( first.title ? first.title : first.rel )
		}
	}
	if(up || top)
	{
		arr= arrs.appendChild(document.createElement('a'))
		arrs.appendChild(document.createTextNode(' '))
		arr.appendChild(document.createTextNode('\u2191'))
		if(up)
		{
			arr.href= up.href
			arr.title= ( up.title ? up.title : up.rel )
			if(top) arr.ondblclick= function(){window.open(top.href,'_self')}
		}
		else if(top)
		{
			arr.href= top.href
			arr.title= ( top.title ? top.title : top.rel )
		}
	}
	if(next || last)
	{
		arr= arrs.appendChild(document.createElement('a'))
		arr.appendChild(document.createTextNode('\u2192'))
		if(next)
		{
			arr.href= next.href
			arr.title= ( next.title ? next.title : next.rel )
			if(last) arr.ondblclick= function(){window.open(last.href,'_self')}
		}
		else if(last)
		{
			arr.href= last.href
			arr.title= ( last.title ? last.title : last.rel )
		}
	}
	if(!(prev || first || up || top || next || last))
		arrs.appendChild(document.createTextNode('\u2194'))
	var ul= ln.appendChild(document.createElement('ul'))
	ul.id= 'WCi_LinkNav_More'
	for(var l= 0; l < link.length; l++)
	{
		var a= ul.appendChild(document.createElement('li')).appendChild(document.createElement('a'))
		a.href= link[l].href
		a.title= link[l].title
		if(link[l].rel.toLowerCase() != 'alternate') a.appendChild(document.createTextNode(link[l].rel))
		else
		{
			if(link[l].hreflang) a.appendChild(document.createTextNode(link[l].hreflang))
			else if(link[l].lang) a.appendChild(document.createTextNode(link[l].lang))
			else if(link[l].media) a.appendChild(document.createTextNode(link[l].media))
			else a.appendChild(document.createTextNode(link[l].rel))
		}
	}
	var a= ul.appendChild(document.createElement('li')).appendChild(document.createElement('a'))
	a.id= 'WCi_LinkNav_Link'
	a.href= 'http://webcoder.info/downloads/linknav.html'
	a.title= 'LinkNav'
	a.appendChild(document.createTextNode('\u2194'))
}
window.onload= ( window.onload ? function(){window.onload();buildLinkNav();} : buildLinkNav )
