// JavaScript Document
var RSSRequestObject = false; // XMLHttpRequest Object
var RSSRequestObject1 = false; // XMLHttpRequest Object
var rType;
try {
if (window.XMLHttpRequest) // try to create XMLHttpRequest
{
	RSSRequestObject = new XMLHttpRequest();
	RSSRequestObject1 = new XMLHttpRequest();
}
if (window.ActiveXObject)	// if ActiveXObject use the Microsoft.XMLHTTP
{
	RSSRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
	RSSRequestObject1 = new ActiveXObject("Microsoft.XMLHTTP");
}
} catch (ex) {
alert(ex);	
}


function ReqDesc()
{

// If data received correctly
	if (RSSRequestObject1.readyState==4) {
	
		// if data is valid
		if (RSSRequestObject1.responseText.indexOf('invalid') == -1) 
		{ 	
			// Parsing RSS
			var node = RSSRequestObject1.responseXML.documentElement; 
											
			
			// Get release information
			var changes = node.getElementsByTagName('changelists').item(0);
			var chgItem = changes.getElementsByTagName('item');		
			content1 = '<h3>Changes</h3><br>';
			
						
			for (var x=0; x < chgItem.length; x++)
			{
			
				var build = chgItem[x].getElementsByTagName('title').item(0).firstChild.data;
				var desc = chgItem[x].getElementsByTagName('description').item(0).firstChild.data;
				var bldDate = chgItem[x].getElementsByTagName('pubDate').item(0).firstChild.data;
			
				content1 += '<ul><li>'+build+'</li></ul>';		
			}
	
		// Display the result
			document.getElementById("displayDesc").innerHTML = content1;

			// Tell the reader the everything is done
			document.getElementById("status").innerHTML = "Done.";
			
			
		}
		else {
		
			// Tell the reader that there was error requesting data
			document.getElementById("status").innerHTML = "<div class=error>Error requesting data.<div>";
		}
		
		HideShow('status');
	}
}

function ReqChange() {

	// If data received correctly
	if (RSSRequestObject.readyState==4) {
	
		// if data is valid
		if (RSSRequestObject.responseText.indexOf('invalid') == -1) 
		{ 	
			// Parsing RSS
			var node = RSSRequestObject.responseXML.documentElement; 
									

			// Get release information
			
			// Get milestone information
			var milestone = node.getElementsByTagName('milestone').item(0);
			
			//content += '<h3>Latest Milestone: Flex SDK "Moxie" (SDK3)</h3><table>';
			
			var mproject = milestone.getElementsByTagName('project');
			
			for (var n=0; n < mproject.length; n++)
				{
				var milLabel = mproject[n].getElementsByTagName('label').item(0).firstChild.data;
				var relItems = mproject[n].getElementsByTagName('item');

			content1 = '<h3>Latest Milestone:' + milLabel+'</h3><table width="500" border="1" cellpadding="0" cellspacing="0">';
 
			content1 += '<tr><th scope="col">Build</th>';
			content1 += '<th scope="col">Build date</th>';
			content1 += '<th scope="col">Changes</th>';
			content1 += '<th scope="col">Download</th></tr>';
			
			var mileItems = milestone.getElementsByTagName('item');
			for (var x=0; x < mileItems.length; x++)
			{
				var mitemTitle = mileItems[x].getElementsByTagName('title').item(0).firstChild.data;
				//var mitemLabel = mileItems[x].getElementsByTagName('label').item(0).firstChild.data;
				var mItemPubDate = mileItems[x].getElementsByTagName('pubDate').item(0).firstChild.data;
				var mileFileSize = mileItems[x].getElementsByTagName('filesize').item(0).firstChild.data;	
				var mileFileType = mileItems[x].getElementsByTagName('filetype').item(0).firstChild.data;
				
				content1 += '<tr><td>' +mitemTitle +'</td>';
				content1 += '<td>'+ mItemPubDate +'</td>';
				content1 += '<td><a href="#" onclick="getVar('+mitemTitle+');return false;"><img src="/images/icons/launch.gif" alt="popup" width="16" height="16" align="absmiddle" />&nbsp;View</a></td>';
				content1 +=	'<td class="stamp-fileinfo"><a href="#" onclick="setURL('+mitemTitle+')"><img src="/images/icons/download.gif" alt="dl" width="16" height="16" align="absmiddle" />&nbsp;Download</a>&nbsp;('+mileFileType+ ', ' +mileFileSize+' MB)</td></tr>';
				
			}
			
			}
			content1 += '</table>';
					
			// Get nightly information
			var nightly = node.getElementsByTagName('nightly').item(0);
			var project = nightly.getElementsByTagName('project');
			//content += '<div class="channeltitle"><a href="/technologies/flex/sdk/js/'+project+'">'+"Release" + " "+project+'</a></div>';
			// content = '<h3>Nightly Builds</h3>'; // header not required due to static HTML
			content = '<table width="100%" border="1" cellpadding="0" cellspacing="0"><tr><th scope="col">Build</th>';
			content += '<th scope="col">Build date</th>';
			content += '<th scope="col">Changes</th>';
			content += '<th scope="col">Download</th></tr>';
			
			for (var z=0; z < project.length; z++)
				{
				//var proLabel = project[0].getElementsByTagName('label').item(0).firstChild.data;
				//content += '<h4>' +proLabel+'</h4>';
			// Browse items
				var items = project[z].getElementsByTagName('item');

			for (var n=0; n < items.length; n++)
			{
				var itemTitle = items[n].getElementsByTagName('title').item(0).firstChild.data;
				//var temp = new Array();
				//temp = itemTitle.split(".");
				var itemPubDate = items[n].getElementsByTagName('pubDate').item(0).firstChild.data;
				var itemFileSize = items[n].getElementsByTagName('filesize').item(0).firstChild.data;	
				var itemFileType = items[n].getElementsByTagName('filetype').item(0).firstChild.data;	
				var pkgName = items[n].getElementsByTagName('pkgname').item(0).firstChild.data;
				content += '<tr><td>'+itemTitle+'</td>';
				content += '<td>' +itemPubDate+'</td>';
				content += '<td><a href="#" onclick="getVar(\''+itemTitle+'\');return false"><img src="/images/icons/launch.gif" alt="popup" width="16" height="16" align="absmiddle" />&nbsp;View</a></td>';

				//content += '<td class="stamp-fileinfo"><a href="#" onclick="setURL(\''+itemTitle+'\',\''+pkgName+'\')"><img src="/images/icons/download.gif" alt="dl" width="16" height="16" align="absmiddle"/>&nbsp;Download</a>&nbsp;('+itemFileType+ ', ' +itemFileSize+' MB)</td></tr>';	
					content += '<td class="stamp-fileinfo"><a href="http://download.macromedia.com/pub/labs/textlayout/builds/'+pkgName+'"><img src="/images/icons/download.gif" alt="dl" width="16" height="16" align="absmiddle"/>&nbsp;Download</a>&nbsp;('+itemFileType+ ', ' +itemFileSize+' MB)</td></tr>';	

	
			}
			
	}			
			//RSSDescriptionRequest('+itemTitle+')
			content += '</table>';
		// Display the result
			document.getElementById("display").innerHTML = content;
		
			document.getElementById("displayDesc")
			// Tell the reader the everything is done
			document.getElementById("status").innerHTML = "Done.";
			
		}
		else {
			// Tell the reader that there was error requesting data
			document.getElementById("status").innerHTML = "<div class=error>Error requesting data.<div>";
		}
		
		HideShow('status');
	}
	
}


function getVar(build)
	{
		launchPage('/technologies/textlayout/builds/changelog.html',build);
	}

function launchPage()
{
	
	var page = launchPage.arguments[0];
	var varStr = '?';
	var build = launchPage.arguments[1];
	var url = page + varStr + build;
	
	/*
	for(var x=1; x<launchPage.arguments.length; x++)
	{
		if (x=1) {
			varStr += "buildnum=" + escape(eval(launchPage.arguments[x]));
			}
			alert(varStr);
	}
	*/
	//document.location = url + varStr;
	OpenWindow(url,800,530,'scrollbars=yes,menubar=no,toolbar=no,location=no,status=no,resizable=yes');
}
/*
* Main AJAX RSS reader request
*/
function RSSRequest(xmlname) {

	var Backend = '/technologies/textlayout/builds/xml/'+xmlname+'.xml'; // Backend url
	// change the status to requesting data
	HideShow('status');
	document.getElementById("status").innerHTML = "Requesting data ...";
	
	// Prepare the request
	try {
	RSSRequestObject.open("GET", Backend , true);
	} catch (e) {
	alert("call " + e);	
	}
	// Set the onreadystatechange function
	RSSRequestObject.onreadystatechange = ReqChange;
	// Send
	RSSRequestObject.send(null); 
}

function HideShow(id){

	var el = GetObject(id);
	if(el.style.display=="none")
	el.style.display='';
	else
	el.style.display='none';
}

function GetObject(id){
	var el = document.getElementById(id);
	return(el);
}

function setURL(build,pkgName)
	{

	document.location = 'http://download.macromedia.com/pub/labs/textlayout/builds/'+pkgName+'';

	}
