/*
 * Initializers
 */
 
// Form controls
attachEventListener(
	window,
	EventType.load,
	function()
	{
		var aForms = document.forms, aElmnts;
		for (var i = 0, ilen = aForms.length; i < ilen; i++)
		{
			aElmnts = aForms[i].elements;
			for (var j = 0, jlen = aElmnts.length; j < jlen; j++)
			{
				if ('text' == aElmnts[j].getAttribute('type') && /\bCalendar\b/.test(aElmnts[j].className))
				{
					appendClassName(aElmnts[j], CSS_CLASS_NAME_HIDDEN);
					aElmnts[j].parentNode.insertBefore(new Calendar(aElmnts[j]), aElmnts[j]);
				}
			}
		}
	}
);



// Hyperlinks
attachEventListener(
	window,
	EventType.load,
	function()
	{
		var aLinks = document.links;
		// Reverse loop due to that we may append hyperlinks.
		for (var i = aLinks.length - 1; 0 < i; i--)
		{
			if (hasAttribute(aLinks[i], "type"))
			{
				manipulateTypeLink(aLinks[i]);
			}
			
			if (hasAttribute(aLinks[i], "rel"))
			{
				if (/\bhelp\b/.test(aLinks[i].getAttribute('rel')))
				{
					manipulateHelpLink(aLinks[i]);
				}
				
				if (/\bprint\b/.test(aLinks[i].getAttribute('rel')))
				{
					manipulatePrintLink(aLinks[i]);
				}
				
				if (/\bexternal\b/.test(aLinks[i].getAttribute('rel')))
				{
					manipulateExternalLink(aLinks[i]);
				}
				
				if (/\blogout\b/.test(aLinks[i].getAttribute('rel')))
				{
					manipulateLogoutLink(aLinks[i]);
				}
			}
			
			if (hasAttribute(aLinks[i], "hreflang"))
			{
				manipulateLanguageLink(aLinks[i]);
			}
		}
	}
);

function hasAttribute(object, attributeName)
{
	if (object.attributes['type'] != null)
	{
		if (object.attributes['type'].value != "")
		{
			return true;
		}
	}
	return false;
}

// Inline frames
attachEventListener(
	window,
	EventType.load,
	function()
	{
		if (document.all)
		{
			var aIFrames = document.getElementsByTagName('iframe');
			for (var i = 0, ilen = aIFrames.length; i < ilen; i++)
			{
				aIFrames[i].allowTransparency = true;
			}
		}
	}
);

// Progress bar
attachEventListener(
	window,
	EventType.load,
	function()
	{
		var o;
		if (o = document.getElementById('ProgressBar'))
		{
			o.style.visibility = 'hidden';
		}
	}
);