//////////////////////////////////////////////////////////////////
//
// XML Navigation
// Written By: Wiccaan
// Written On: July 23, 2007
//
// Loads an XML file to be parsed containing
// the URLs for the navigation system. Used
// to easily edit the link locations for the
// given buttons.
//
// Thanks To:
// - www.kirupa.com
// - www.actionscript.org
//
//////////////////////////////////////////////////////////////////
//
// Variables
//
var xmlLoader:URLLoader = new URLLoader();
var xmlData:XML = new XML();
//
// Event Listener
//
xmlLoader.addEventListener(Event.COMPLETE, LoadXML);
//
// Load XML File
//
xmlLoader.load(new URLRequest("links.xml"));
//
// Function: LoadXML(...)
//
// Loads the given XML file above into
// the parseLinks function to be parsed.
//
function LoadXML(e:Event):void
{
xmlData = new XML(e.target.data);
parseLinks(xmlData);
}
//
// Function: parseLinks(...)
//
// Parses the XML file to retrieve
// link names and URLs for navigation.
//
function parseLinks(linkXML:XML):void
{
var linkNames = new Array();
var linkURLs = new Array();
var arrPosition = 0;
var linkArray:XMLList = linkXML.link;
for each (var linkElement:XML in linkArray)
{
linkNames[arrPosition] = linkElement.title;
linkURLs[arrPosition] = linkElement.url;
arrPosition++;
}
createLinks(linkNames,linkURLs);
}
//
// Function: createLinks(...)
//
// Iterates through the given arrays to
// locate known link names and creates
// variables to be used in button events.
//
function createLinks(lnkNames:Array,lnkURLs:Array):void
{
var arrPosition = 0;
for each (var arrNames in lnkNames)
{
switch( lcase(lnkNames[arrPosition]) )
{
case "home":
{
break;
}
case 'forums':
{
break;
}
case 'channels':
{
break;
}
case 'users':
{
break;
}
case 'ircops':
{
break;
}
case 'quotes':
{
break;
}
default:
{
break;
}
}
arrPosition++;
}
}
//
// Function: lcase(...)
//
// Converts the given string to lowercase.
// Used when converting a variable to string
// using toString.
//
function lcase(strName:String):String
{
var m_String:String = strName;
return m_String.toLowerCase();
}