function convertToXmlFromEncoded(text) 
{
	var xml = text;
	xml = text.replace('&lt;', '<');
	xml = text.replace('&gt;', '>');
	xml = text.replace('&quot;', '"');
	return xml;
}

function copyToClipboard(text) 
{
	if (document.all) {
		var field = document.getElementById("CopyToClipboardField");
		field.value = text;
		var x = field.createTextRange();
		x.execCommand("Copy");
	} else {
		copyToClipBoardFireFox(text);
	}
}

function copyToClipBoardFireFox(stringToCopy) {
	if ("createEvent" in document)
	{
		var element = document.createElement("MyExtensionDataElement");
		element.setAttribute("TextToCopy", stringToCopy);
		document.documentElement.appendChild(element);
		
		var ev = document.createEvent("Events");
		ev.initEvent("SecretServerClipboardEvent", true, false);
		element.dispatchEvent(ev);
		setTimeout(function() { verifyCaught(element); }, 300); 
	}
}

function verifyCaught(element) {
	var wasCaught = element.getAttribute("handledCopy");
	if (!wasCaught)
	{
		showInstallMessage();
	}
}

var installMessageShown = false;
function showInstallMessage() {
	if (installMessageShown)
		return;
	installMessageShown = true;
	if (confirm("Secret Server requires a custom Firefox extension to enable copy and paste. Would you like to install the extension now?\n\n(Note: All Firefox extensions require a *restart* after install for them to work.)"))
	{
		location.href = "http://updates.thycotic.net/secretserver/SecretServerFirefoxUtils.xpi.aspx";
	} else {
		installMessageShown = false;
	}
}