// 	
//	File: 		nav.js
//	Updated:	1/11/02
//	Author:		Kwong			
//	Description:
//		This module is for UI gizmos.
//	Changes:
//	1/11/02	- created


//	NavFromURL()	- Returns an HTML navigation string in the following format:
//						Home > {SubDir1} > {SubDir2} > {Page Title}
//					
function NavFromURL(){
	var strPath = window.location.pathname;
	var arrPath = strPath.split('/');
	var strRoot = '/';// + arrPath[0] + '/';
	var strDisplay;
	var flgBreak = false;
	var flgLink = true;
	var strFileName = arrPath[arrPath.length - 1];
	var flgDefault = ((strFileName == 'default.asp')||(strFileName.length == 0));
	// we'll only bother constructing the pathbar if we're in a directory beneath the root
	if(arrPath.length > 2){
		var strResult = '<span class="path">&nbsp;<a class="path" href="' + strRoot + 'index.asp">Home</a>&nbsp;&gt;';
		for(var i=1; i < arrPath.length - 1; i++){
			// handle any directory names that are abbreviated or exceptional in some way...
			
			switch(arrPath[i]){
			case 'taxarea':
				strDisplay = 'Tax Area';
				break;
			case 'businessrules':
			strDisplay = 'Business Rules';
			break;
			case 'members':
				strDisplay = 'Members Profile';
				break;
			case 'schema':
				strDisplay = 'Schema & Specifications';
				break;
			case 'devprocess':
				strDisplay = 'Development Process';
				break;
			case 'about':
				strDisplay = 'About TaxML';
				break;
			case 'resources':
				strDisplay = 'Resources';
				break;
			case 'buscomp':
				strDisplay = 'Business Components';
				break;
			case 'taxcomp':
				strDisplay = 'Tax Components';
				break;
			case 'comps':
				strDisplay = 'All Components';
				break;
			case 'busassembly':
				strDisplay = 'Business Assembly';
				break;
			case 'taxassembly':
				strDisplay = 'Tax Assembly';
				break;
			case 'assemblies':
				strDisplay = 'All Assemblies';
				break;
			case 'busterm':
				strDisplay = 'Business Terms';
				break;
			case 'taxterm':
				strDisplay = 'Tax Terms';
				break;
			case 'terms':
				strDisplay = 'All Terms';
				break;
			case 'admin':
				//flgBreak = true;
				strDisplay = 'Admin Home';
				break;
			case 'administratorhome':
				strDisplay = 'Administrator Home';
				break;
			case 'schemadoc':
				strDisplay = 'Vocabulary';
				break;
			case 'bus':
				strDisplay = 'Business';
				flgLink = false;
				break;
			case 'busad':
				strDisplay = 'Business A-D';
				break;
			case 'buseh':
				strDisplay = 'Business E-H';
				break;
			case 'busil':
				strDisplay = 'Business I-L';
				break;
			case 'busmp':
				strDisplay = 'Business M-P';
				break;
			case 'busqt':
				strDisplay = 'Business Q-T';
				break;
			case 'busux':
				strDisplay = 'Business U-X';
				break;
			case 'busy#':
				strDisplay = 'Business Y - #';
				break;
			case 'com':
				strDisplay = 'Composites';
				flgLink = false;
				break;
			case 'au':
				strDisplay = 'Australia';
				break;
			case 'comad':
				strDisplay = 'Composites A-D';
				break;
			case 'comeh':
				strDisplay = 'Composites E-H';
				break;
			case 'comil':
				strDisplay = 'Composites I-L';
				break;
			case 'commp':
				strDisplay = 'Composites M-P';
				break;
			case 'comqt':
				strDisplay = 'Compostes Q-T';
				break;
			case 'comux':
				strDisplay = 'Composites U-X';
				break;
			case 'comy#':
				strDisplay = 'Composites Y-#';
				break;
			case 'gb':
				strDisplay = 'Great Britain';
				break;
			case 'us':
				strDisplay = 'United States';
				break;
			case 'fed':
				strDisplay = 'Federal';
				break;
			case 'copincome':
				strDisplay = 'Corporate Income';
				break;
			case 'perincome':
				strDisplay = 'Personal Income';
				break;
			case 'ca':
				strDisplay = 'California';
				break;
			case 'cu':
				strDisplay = 'Consumers Use';
				break;
			case 'st':
				strDisplay = 'Sales Tax';
				break;
			case 'tax':
				strDisplay = 'Tax';
				flgLink = false;
				break;
			case 'taxad':
				strDisplay = 'Tax A-D';
				break;
			case 'taxeh':
				strDisplay = 'Tax E-H';
				break;
			case 'taxil':
				strDisplay = 'Tax I-L';
				break;
			case 'taxmp':
				strDisplay = 'Tax M-P';
				break;
			case 'taxqt':
				strDisplay = 'Tax Q-T';
				break;
			case 'taxux':
				strDisplay = 'Tax U-X';
				break;
			case 'taxy#':
				strDisplay = 'Tax Y-#';
				break;
			case 'termtable':
				//strDisplay = 'Dont go here';
				flgBreak = true;
				break;
			case 'schematable':
				//strDisplay = 'Schema Table';
				flgBreak = true;
				break;
			case 'sourcetable':
				//strDisplay = 'Source Table';
				flgBreak = true;
				break;
			case 'xmlinstance':
				//strDisplay = 'XML Instance Table';
				flgBreak = true;
				break;
			default:
				// otherwise, we're just gonna capitalize the first letter
				strDisplay = arrPath[i].charAt(0).toUpperCase() + arrPath[i].substring(1).toLowerCase();
				break;
			}
			
			if(flgBreak == false){
				// append the actual directory name to the URL used in the link we're creating
				strRoot += arrPath[i] + '/';
			
				// we're excluding the filename and not making the directory name a link if we're pointing to
				// a default document (default.asp)
				if(i == arrPath.length-2)
				{
					if(flgDefault==true)
					{
						strResult += '&nbsp;' + strDisplay;					
					} 
					else 
					{
						if(flgLink == true)
						{
							strResult += '&nbsp;<a class="path" href="' + strRoot + '">' + strDisplay + '</a>&nbsp;&gt;';
						} 
						else 
						{
							strResult += '&nbsp;' + strDisplay + '&nbsp;&gt;';
						}
					}	
				} 
				else 
				{
					// otherwise, continue building the pathbar HTML
					if(flgLink == true)
					{
						strResult += '&nbsp;<a class="path" href="' + strRoot + '">' + strDisplay + '</a>&nbsp;&gt;';
					} 
					else 
					{
						strResult += '&nbsp;' + strDisplay + '&nbsp;&gt;';
					}
				}
			}			
		}
		// remember that we're not including the filename in the pathbar if it's the default document
		if(!flgDefault)
			strResult += '&nbsp;' + document.title + '</span>';
	}
	else
	{
		strResult = '<span class="path">&nbsp;Home</span>';
	}
	return strResult;
}
