/**
 * July 31, 2006
 *
 * 
 * Some js for the asset editing screen.
 *
 * 
 */

var iframeCount = 1;
var gBase;
var gAssetNum;
var gActive;

function async_upload()
{
	var new_id_str = 'target_upload_' + (iframeCount++ % 10);
	document.up_form.submit();
	document.up_form.target = new_id_str;
	var fileInput = $('new_file');
	fileInput.value = '';
}

function deletePD2File(fileName) {
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	var url = 'delete_file?b=' + gBase + '&a=' + gAssetNum + '&f=' + fileName;

	// Synchronous, so pass "false" here.
	//
	xmlHttp.open("GET", url, false);

	xmlHttp.send(null);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName( 'form_result' ).item(0);
	
	if (formResult.getAttribute('status') == 0) {
		Element.remove('row_' + fileName);
	} else {
		alert(formResult.getAttribute('message'));
	}
}


function writePD2File() {
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	var titleBar = $('editor_title_bar');

	if (!titleBar.value) {
		alert("no active file");
		return;
	}

	var textArea = $('editor');
	
	// query style post
	//
	var url = 'edit_file';
	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&f=' + 
		escape(titleBar.value) + '&t=' + escape(textArea.value);

/**
	var infoString = "<?xml version='1.0' encoding='UTF-8'?>" + "\n" +
		"<request>" + "\n" +
		"<base>" + gBase + "</base>" + "\n" + 
		"<asset_num>" + gBase + "</asset_num>" + "\n" +
		"<text><![CDATA[" + textArea.value + "]]></text>" + "\n" +
		"</request>";
**/
	// Synchronous, so pass "false" here.
	//
	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName( 'form_result' ).item(0);
	
	if (formResult.getAttribute('status') == 0) {
		view_asset(gBase, gAssetNum, 'flipable');
	} else {
		alert(formResult.getAttribute('message'));
	}
}


function getFileForEdit(url, filename)
{
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	// Synchronous, so pass "false" here.
	//
	xmlHttp.open("GET", url, false);

	xmlHttp.setRequestHeader("Referer", document.location);

	xmlHttp.send(null);
	
	// var xmldom = xmlHttp.responseXML;

	// dump that in the window.

	var editor = $('editor');

	editor.value = xmlHttp.responseText;

	var title_bar = $('editor_title_bar');

	title_bar.value = filename;
}

function setPD2MasterName()
{
	var xmlHttp;
	
	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}
	
	url = 'set_master_detail';
	var valueText = $('name_input');
	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&k=name&v=' +
		escape(valueText.value);
	
	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
							 "application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;
	
	var formResult = xmldom.getElementsByTagName('form_result').item(0);
	
	if (formResult.getAttribute('status') == 0) {
		var nameDiv = $('asset_name');
		if(nameDiv)
			nameDiv.innerHTML = valueText.value;
		showAjaxFeedback('name_response', '<font color="green">Name saved!</font>');	
	}else{
		var message = formResult.getAttribute('message');
		alert(message);
	}

}

function setPD2AssetDetail(key) { 
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

		//var consoleArea = $('license_console');
	
	// query style post
	//
	var valueText; 
	if(key == 'use_blacklist' || key == 'use_whitelist') {
		if($(key + '_input').checked)
			valueText = 1;
		else
			valueText = 0;
	}else{
		valueText = $(key + '_input').value;
	}
	var url = 'set_asset_detail';
	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&k=' +
		escape(key) + '&v=' + escape(valueText);

	// Synchronous, so pass "false" here.
	//
	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName( 'form_result' ).item(0);

		/**
		   consoleArea.value = consoleArea.value + '\n' + 
		   formResult.getAttribute('message');
			   **/
			   
	if (formResult.getAttribute('status') == 0 &&
		(key == 'use_blacklist' || key == 'use_whitelist')) {
		var payloadElem = xmldom.getElementsByTagName('payload').item(0);
		var listPane = $('contacts_pane');
		listPane.innerHTML = RicoUtil.getContentAsString(payloadElem);
		
	}else{
		var message = formResult.getAttribute('message');
	}

	showAjaxFeedback(key + '_response', '<font color="green">' + key + ' saved!</font>');

}

function SetPD2Lic()
{
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	var allowLicDropDown = $('allow_lic');
	var licOn = 0;
	if( allowLicDropDown.checked ) licOn = 1;
	var licPriceText = $('lic_price');

	var url = 'set_license_info';

	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&aL=' +
		licOn + '&lP=' + escape(licPriceText.value);

	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName( 'form_result' ).item(0);
	
	var consoleArea = $('license_console');

	consoleArea.value = consoleArea.value + '\n' + 
		formResult.getAttribute('message');		
}

function listManage(listID) {

	if (listID != 'black' && listID != 'white') {
		return;
	}

	setPD2AssetDetail('use_' + listID + 'list');

}
//add_to_list?b=martini^55c5b9bd2133c5bf71553f1d97dc91d81&a=martini^2&l=wl&v=ben@freedom2.com&h=email
function contactToggleList(cb,listID,email)
{
	var xmlHttp;
		//alert(cb + ', ' + listID + ', ' + email);
	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

		//if cb false then remove; true, then add
	var url;
	if(cb.checked){
		url = 'add_to_list';
	}else{
		url = 'delete_from_list';
	}
		//alert(url);

	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&l=' + listID +
		'&h=email' + '&v=' + escape(email);
		//alert(infoString);

	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName( 'form_result' ).item(0);
	
	var consoleArea = $('license_console');
		//alert(			formResult.getAttribute('message') );

	if(consoleArea){
		consoleArea.value = consoleArea.value + '\n' + 
			formResult.getAttribute('message');		
	}

	if (formResult && formResult.getAttribute('status') == 0) {
		var payloadElem = xmldom.getElementsByTagName('payload').item(0);
		var listPane = $('contacts_pane');
		if(listPane)
			listPane.innerHTML = RicoUtil.getContentAsString(payloadElem);
	}
}

function listAdd(listID, input_name, handler)
{
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	var text_box = $(input_name);

	url = 'add_to_list';

	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&l=' + listID +
		'&h=' + handler + '&v=' + escape(text_box.value);

	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName( 'form_result' ).item(0);
	
	var consoleArea = $('license_console');

	consoleArea.value = consoleArea.value + '\n' + 
		formResult.getAttribute('message');		

	text_box.value = '';

	if (formResult.getAttribute('status') == 0) {
		var payloadElem = xmldom.getElementsByTagName('payload').item(0);
		var listPane = $(listID + '_pane');
		listPane.innerHTML = RicoUtil.getContentAsString(payloadElem);
	}
}

function listDelete(listID, lValue)
{
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	url = 'delete_from_list';

	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&l=' + listID +
		'&v=' + escape(lValue);

	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName('form_result').item(0);
	
	var consoleArea = $('license_console');

	consoleArea.value = consoleArea.value + '\n' + 
		formResult.getAttribute('message');		

	if (formResult.getAttribute('status') == 0) {
		var payloadElem = xmldom.getElementsByTagName('payload').item(0);
		var listPane = $(listID + '_pane');
		listPane.innerHTML = RicoUtil.getContentAsString(payloadElem);
	}
}

function contactDelete(listID, lValue)
{
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	url = 'delete_from_list';

	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&l=' + listID +
		'&v=' + escape(lValue);

	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName('form_result').item(0);
	
	var consoleArea = $('license_console');

	consoleArea.value = consoleArea.value + '\n' + 
		formResult.getAttribute('message');		

	if (formResult.getAttribute('status') == 0) {
		var payloadElem = xmldom.getElementsByTagName('payload').item(0);
		var listPane = $(listID + '_pane');
		listPane.innerHTML = RicoUtil.getContentAsString(payloadElem);
	}
}

function ToggleActivate()
{
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	url = 'activate_asset';
	
	var new_status = 1;
	if (gActive) {
		new_status = 0;
	}

	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&s=' +
		new_status;

	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName('form_result').item(0);

	if (formResult.getAttribute('status') == 0) {
		var activeBut = $('activate_but');
		if (gActive) {
			gActive = 0;
			activeBut.value = 'Re-activate this asset';
		} else {
			gActive = 1;
			activeBut.value = 'De-activate this asset';
		}
		if($('new_graf')){
			var elm = $('new_graf');
			elm.parentNode.removeChild(elm);
		}
	} else {
		alert(formResult.getAttribute('message'));
	}
}

function updatePreviewStatus()
{
	if (xmlHttp.readyState == 4) {
		var xmldom = xmlHttp.responseXML;
		
		var formResult = xmldom.getElementsByTagName('form_result').item(0);

		var preview_button = $('generatePreviewPicbut');

		if (formResult.getAttribute('status') != 0) {
			alert(formResult.getAttribute('message'));
		}

		preview_button.value = 'Generate';
		preview_button.enabled = true;
	}
}

function generatePreviewPic()
{
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	// url = 'generate_preview_pic';
	url = 'generate_x_preview_pic';
	var infoString = 'b=' + gBase + '&a=' + gAssetNum;

	// this one should be async, but do sync for now.
	//
//	xmlHttp.onreadystatechange = updatePreviewStatus;
	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");

	var preview_button = $('generatePreviewPicbut');
	preview_button.value = 'Processing...';
	preview_button.disabled = true;

	xmlHttp.send(infoString);

	var xmldom = xmlHttp.responseXML;
	
	var formResult = xmldom.getElementsByTagName('form_result').item(0);

	if (formResult.getAttribute('status') != 0) {
		alert(formResult.getAttribute('message'));
	}

	preview_button.value = 'Generate';
	preview_button.disabled = false;

		//view_asset(gBase, gAssetNum, 'flipable', 1);
	view_asset(gBase, gAssetNum, 'flipable', 0);
}

function tagDelete(tag_type)
{
	var tagValue;
	var key = tag_type + '_values';
	tagValue = document.getElementById(key).value;
	if(!tagValue){
		alert("no tag selected");
	}
		//tagValue = '"' + tagValue + '"';

	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	url = 'delete_tag';

	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&v=' + escape(tagValue);
	infoString += '&t=' + tag_type;

	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName('form_result').item(0);
	
	var consoleArea = $('license_console');

	if(consoleArea){
		consoleArea.value = consoleArea.value + '\n' + 
			formResult.getAttribute('message');		
	}

	if (formResult.getAttribute('status') == 0) {
		var payloadElem = xmldom.getElementsByTagName('payload').item(0);
		var tagsPane = $(tag_type + '_pane');
		if(tagsPane)
			tagsPane.innerHTML = RicoUtil.getContentAsString(payloadElem);
	}
}

function tagDelete_OLD(tagValue)
{
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	url = 'delete_tag';

	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&v=' + escape(tagValue);

	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName('form_result').item(0);
	
	var consoleArea = $('license_console');

	consoleArea.value = consoleArea.value + '\n' + 
		formResult.getAttribute('message');		

	if (formResult.getAttribute('status') == 0) {
		var payloadElem = xmldom.getElementsByTagName('payload').item(0);
		var tagsPane = $('tags_pane');
		tagsPane.innerHTML = RicoUtil.getContentAsString(payloadElem);
	}
}

function tagsAdd(tag_type)
{
	var xmlHttp;

	if(window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}

	var text_box = $(tag_type + '_new');

	url = 'add_tags';

	var infoString = 'b=' + gBase + '&a=' + gAssetNum + '&v=';
	var tagStr = text_box.value;
		//tagStr = tagStr.replace(/\"/g, '');
		//tagStr = '"' + tagStr + '"'; //only adding one tag at a time, so quote em all
	infoString += escape(tagStr); 
	infoString += '&t=' + tag_type;

	xmlHttp.open("POST", url, false);
	xmlHttp.setRequestHeader("Content-Type", 
		"application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(infoString);
	
	var xmldom = xmlHttp.responseXML;

	var formResult = xmldom.getElementsByTagName( 'form_result' ).item(0);
	
	var consoleArea = $('license_console');

	if(consoleArea){
		consoleArea.value = consoleArea.value + '\n' + 
			formResult.getAttribute('message');		
	}
	text_box.value = '';

	if (formResult.getAttribute('status') == 0) {
		var payloadElem = xmldom.getElementsByTagName('payload').item(0);
		var tagsPane = $(tag_type + '_pane');
		if(tagsPane)
			tagsPane.innerHTML = RicoUtil.getContentAsString(payloadElem);
	}
}
