/*------------------------------------------------
Built by www.clear-site.com, Victoria BC Canada.
Non-distribution, non-exclusive licence issued to Rocket Day Arts, Victoria BC Canada
--------------------------------------------------*/
/*------------------------------------------------
if the site is in a subfolder like rocketday.com/subfolder then the word subfolder should go in the $root line below.
--------------------------------------------------*/

function initNav(){
	$root = '';
	$links = getElementsByClassName(document, 'a', "*");
	if(document.location.href)
		var $hrefString = document.location.href;
	else
		var $hrefString = document.location;
	
	var $nav = $hrefString.split('/');
	var $url = $nav[2];
	var $page = $nav[$nav.length-1];

	if($page == '')
		$page = 'index.html';

	var $folders = new Array();
	var pattern = new RegExp("/\\.+/", "i");
		//pattern.compile("/\\.+/", "i");
	$j=0;
	for($i=2; $i<$nav.length; $i++){
		$maybe = $nav[$nav.length-$i];
		//alert($maybe);
		if(!pattern.test($maybe) && $maybe != '' && $maybe != 'http' && $maybe != $url && $maybe != $root){
			$folders[$j] = $maybe;
			$j++;
		}
	}
	
	if($folders.length ==0)
		$at_root = true;
	else
		$at_root = false;
	
	$caught_folder = false;
	
	for($i=0; $i<$links.length; $i++){
		var $linkhref = $links[$i].href;
		var $linkparts = $linkhref.split('/');
		var $lastchar = $linkhref.substring($linkhref.length -1, $linkhref.length);
		var $anchor = $linkparts[$linkparts.length-1];
		$anchor = $anchor.split('#');
		$anchor = ($anchor.length >1)? true : false;
		
		var $is_page = false;
		var $is_folder = false;
		var $is_anchor = false;
		
		if($lastchar == '#' || $anchor){
			$is_anchor = true;
		}

		if($linkhref.search($page) >0){
			$is_page = true;
		}

		for($f=0; $f < $folders.length; $f++){
			if($linkhref.search($folders[$f]) >0){
				$is_folder = true;
			}
		}
		//does this link even have folders?
		var $linkfolders = new Array();
		var pattern = new RegExp("/\\.+/", "i");
			//pattern.compile("/\\.+/", "i");
		$j=0;

		for($ii=2; $ii<$linkparts.length; $ii++){
			$maybe = $linkparts[$linkparts.length-$ii];

			if(!pattern.test($maybe) && $maybe != '' && $maybe != 'http' && $maybe != $url && $maybe != $root){
				$linkfolders[$j] = $maybe;
				$j++;
			}
		}
		if($linkfolders.length ==0)
			$has_folders = false;
		else
			$has_folders = true;

		//does this link even have a page?
		$linkpage = $linkparts[$linkparts.length-1];
		$linkpage = $linkpage.split('.');
		if($linkpage.length >1){
			$has_page = true;
		}else{
			$has_page = false;
		}

		$make_current = false;
		//root level index
		if(!$caught_folder && !$has_folders && $at_root && $linkparts[$linkparts.length-1] == 'index.html'){
			$make_current = true;
			$caught_folder = true;
		}
		
		//root level page
		if(!$has_folders && $at_root && $is_page){
			$make_current = true;
		}
		//sub folder index
		if((!$has_page || $linkparts[$linkparts.length-1] == 'index.html') && $is_folder && !$caught_folder){
			$make_current = true;
			$caught_folder = true;
		}
		//sub folder page
		if(($is_folder && $is_page)){
			$make_current = true;
		}
		//check for anchors
		if($is_anchor){
			$make_current = false;
		}

		if($make_current){			
			if($links[$i].className == ''){
				$links[$i].className = 'current';
			}else{
				$links[$i].className += ' current';
			}
		}
	}
}
 /*--------------------------------------------------------------------------
 This function was found online somewhere.  Seems to work.
 I'm using it to grab ALL the links on the page (even the ones within text or around images.
----------------------------------------------------------------------------- */
function getElementsByClassName(oElm, strTagName, strClassName){
  var arrElements = (strTagName == "*" && document.all)? document.all : oElm.getElementsByTagName(strTagName);
	 var arrReturnElements = new Array();
	 strClassName = strClassName.replace(/\-/g, "\\-");
	 var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	 var oElement;
	 for(var i=0; i<arrElements.length; i++){
	   oElement = arrElements[i];
	   if(oRegExp.test(oElement.className)){
	     arrReturnElements.push(oElement);
	   }
	 }
	 return (arrReturnElements)
}
/*--------------------------------------------------------------------------*/