function WriteFrontPageFovorites()
{
	// Load the file
	siteData.load("favorites");

	// Get the root node
	var oXMLDoc = siteData.XMLDocument.documentElement;
	var oMyLinks = oXMLDoc.selectNodes("//MYLINKS/LINK");

	// Walk through each BOOKMARK block
	var nLen = oMyLinks.length;
	for (var i = 0; i < nLen; i++) 
	{
		// Output the URL and text as a hyperlink
		with (document) 
		{
			write("<img src='/design/icons/bullet-yellow.gif' width=7 height=11 hspace=5 align=absmiddle>");
			write("<a href=\""+ oMyLinks[i].childNodes[0].text + "\">"+ oMyLinks[i].childNodes[1].text +"</a><br>");
		}
	}
	if (nLen == 0)
		document.write("&nbsp;Click <a href='/page.aspx?name=mylinks&path=/site/'><b>here</b></a> to add myLink(s).");
}

function WriteMyLinksFavorites()
{
	// Load the file
	siteData.load("favorites");

	// Get the root node
	var oXMLDoc = siteData.XMLDocument.documentElement;
	var oMyLinks = oXMLDoc.selectNodes("//MYLINKS/LINK");

	// Walk through each BOOKMARK block
	var nLen = oMyLinks.length;
	for (var i = 0; i < nLen; i++) 
	{
		// Output the URL and text as a hyperlink
		with (document) 
		{
			write("<li><a href=\"" + oMyLinks[i].childNodes[0].text + "\">")
			write(oMyLinks[i].childNodes[1].text)
			write("</a>&nbsp;&nbsp;<b>link:</b>&nbsp;")
			write(oMyLinks[i].childNodes[0].text);
			write("&nbsp;&nbsp;<a href=\"#\" onclick=\"RemoveLink('");
			write(oMyLinks[i].childNodes[1].text);
			write("'); return false;\">remove</a></li>");
		}
	}
	if (nLen == 0)
		document.write("Currently there are no links in your myLink list.");					
}

function WriteSiteLinksFavorites()
{
	// Load the file
	siteData.load("favorites");

	// Get the root node
	var oXMLDoc = siteData.XMLDocument.documentElement;
	var oFav = oXMLDoc.selectNodes("//FAVORITES/BOOKMARK");
	
	// Walk through each BOOKMARK block
	var nLen = oFav.length;
	for (var i = 0; i < nLen; i++) 
	{
		// Output the URL and text as a hyperlink
		with (document) 
		{
			write("<li><a href=\"" + oFav[i].childNodes[0].text + "\">")
			write(oFav[i].childNodes[1].text)
			write("</a>&nbsp;&nbsp;<b>link:</b>&nbsp;")
			write(oFav[i].childNodes[0].text);
			write("&nbsp;&nbsp;<a href=\"#\" onclick=\"RemoveFavorite('");
			write(oFav[i].childNodes[1].text);
			write("'); return false;\">remove</a></li>");
		}
	}
	if (nLen == 0)
		document.write("Currently there are no items in your favorites");
}

//////////////////////////////////////////////////////////////////////////////////////
//

function AddFavorite() 
{
	var sURL = document.all.linkTo.value;
	var sTitle = document.all.linkName.value;
	
	if ((sTitle == "") || (sURL == ""))
	{
		alert("You must provide Favorite title.");
		return false;
	}

	// Load the favorites file
	siteData.load("favorites");

	// Access the document
	var oXMLDoc = siteData.XMLDocument;
	
	var oFavoritesNode = oXMLDoc.selectSingleNode("//FAVORITES");
	if (oFavoritesNode == null)
	{
		oFavoritesNode = oXMLDoc.createNode(1, "FAVORITES", "");
		oXMLDoc.documentElement.appendChild(oFavoritesNode);
	}
	
	// Create three elements
	var oBookmark = oXMLDoc.createNode(1,"BOOKMARK", "");
	var oURLNode = oXMLDoc.createNode(1,"URL", "");
	var oTitleNode = oXMLDoc.createNode(1,"TITLE", "");

	// Set the text of the URL and Title
	oURLNode.text = sURL;
	oTitleNode.text = sTitle;

	// Parent the URL and Title to the BOOKMARK element
	oBookmark.appendChild(oURLNode);
	oBookmark.appendChild(oTitleNode);

	// Add the new BOOKMARK block to the favorites XML file
	oFavoritesNode.appendChild(oBookmark);

	// Save the new file to disk
	siteData.save("favorites");
	
	alert("Your entry has been successfuly added to site favorites.");
	window.location.href = sURL;
}

function RemoveFavorite(name)
{
	// Load the favorites file
	siteData.load("favorites");
	
	// Access the document
	var oXMLDoc = siteData.XMLDocument;
	var oFavNode = oXMLDoc.selectSingleNode("//FAVORITES");
	var oNode = oXMLDoc.selectSingleNode("//FAVORITES/BOOKMARK[TITLE='"+ name +"']");
	if (oNode != null && oFavNode != null)
	{
		oFavNode.removeChild(oNode);

		// Save the new file to disk
		siteData.save("favorites");

		window.location.reload();
	}
}

function AddBrowserFavorites()
{
	var sURL = "http://www.wininsider.com"+ document.linkTo.value;
	window.external.AddFavorite(sURL, "WinInsider - Link");
	window.location.href = sURL;
}

function MigrateToNewFormat()
{
	// Load the favorites file
	siteData.load("favorites");
	
	// Access the document
	var oXMLDoc = siteData.XMLDocument;
	if (oXMLDoc == null)
		return;
	
	var oNodes = oXMLDoc.selectNodes("//SITEINFO");
	if (oNodes.length <= 0)
		return;
	
	var oFavoritesNode = oXMLDoc.createNode(1, "FAVORITES", "");
	oXMLDoc.documentElement.appendChild(oFavoritesNode);

	for (var i = 0; i < oNodes.length; i++)
	{
		oNode = oNodes[i];
		
		var oNewNode = oXMLDoc.createNode(1,"BOOKMARK", "");
		var oURLNode = oXMLDoc.createNode(1,"URL", "");
		var oTitleNode = oXMLDoc.createNode(1,"TITLE", "");

		// Set the text of the URL and Title
		oURLNode.text = oNode.childNodes[0].text;
		oTitleNode.text = oNode.childNodes[1].text;
		
		// Parent the URL and Title to the BOOKMARK element
		oNewNode.appendChild(oURLNode);
		oNewNode.appendChild(oTitleNode);
		
		oFavoritesNode.appendChild(oNewNode);
		
		oXMLDoc.documentElement.removeChild(oNode);
	}
	
	// Save the new file to disk
	siteData.save("favorites");
}

function DeleteFav()
{
	// Load the favorites file
	siteData.load("favorites");
	
	var oNodes = siteData.XMLDocument.selectNodes("//FAVORITES");
	for (var i = 0; i < oNodes.length; i++)
	{
		var oNode = oNodes[i];
		siteData.XMLDocument.documentElement.removeChild(oNode);
	}

	// Save the new file to disk
	siteData.save("favorites");
}
		
//////////////////////////////////////////////////////////////////////////////////////
//

function AddLink()
{
	var sURL = document.all.linkUrl.value;
	var sTitle = document.all.linkName.value;
	
	if ((sTitle == "") || (sURL == ""))
	{
		alert("You must provide Favorite title.");
		return false;
	}

	// Load the favorites file
	siteData.load("favorites");

	// Access the document
	var oXMLDoc = siteData.XMLDocument;
	
	var oMyLinksNode = oXMLDoc.selectSingleNode("//MYLINKS");
	if (oMyLinksNode == null)
	{
		oMyLinksNode = oXMLDoc.createNode(1, "MYLINKS", "");
		oXMLDoc.documentElement.appendChild(oMyLinksNode);
	}								

	// Create three elements
	var oLink = oXMLDoc.createNode(1,"LINK", "");
	var oURLNode = oXMLDoc.createNode(1,"URL", "");
	var oTitleNode = oXMLDoc.createNode(1,"TITLE", "");

	// Set the text of the URL and Title
	oURLNode.text = sURL;
	oTitleNode.text = sTitle;

	// Parent the URL and Title to the BOOKMARK element
	oLink.appendChild(oURLNode);
	oLink.appendChild(oTitleNode);

	// Add the new BOOKMARK block to the favorites XML file
	oMyLinksNode.appendChild(oLink);

	// Save the new file to disk
	siteData.save("favorites");
	
	window.location.reload();
}

function RemoveLink(name)
{
	// Load the favorites file
	siteData.load("favorites");
	
	// Access the document
	var oXMLDoc = siteData.XMLDocument;
	var oFavNode = oXMLDoc.selectSingleNode("//MYLINKS");
	var oNode = oXMLDoc.selectSingleNode("//MYLINKS/LINK[TITLE='"+ name +"']");
	if (oNode != null && oFavNode != null)
	{
		oFavNode.removeChild(oNode);

		// Save the new file to disk
		siteData.save("favorites");

		window.location.reload();
	}
}	
