//$Id: detail-options.js,v 1.6 2009/10/15 06:24:32 sasha@netcomposite.com Exp $
var PageNames = {
	'features':'Features',
	'questions':'Questions?',
	'email':'Email',
	'share':'Share',
	'print':'Print'
};

var waitHTML =
	'<div id="PageOptionsLoading">' +
		'<p><img src="/assets/images/icons/ic_loading_processing_gray.gif" alt="Loading" />' +
		'Loading...</p>' +
	'</div>';

var currentID = 'features';
var pages = new Array();

function restoreTabs()
{
	var ul = $('OptionsUl');
	for (var i=0; i < ul.childNodes.length; i++)
	{
		var t = ul.childNodes[i];
		if (t.nodeType == 1)
		{
			var id1 = t.id;
			t.innerHTML = '<a href="?opt='+ id1 +'" onclick="return openPage(\'' + id1 + '\')">' + PageNames[id1] +'</a>';
		}
	}
}

function openPage(id, addon)
{
	restoreTabs();
	var tab = $(id);
	tab.innerHTML = '<span><a href="?opt='+ id +'" onclick="return openPage(\'' + id + '\')">' + PageNames[id] +'</a></span>';
	$('OptionsContent').style.display = 'block';
	if (!pages[id])
	{
		$('OptionsContent').innerHTML = waitHTML;
		if (addon)
		{
			value = addon;
			value['id'] = id;
		} else
		{
			var value = new Array();
			value['id'] = id;
		}
		loadPage('uri', value);
	} else
	{
		$('OptionsContent').innerHTML = pages[id];
	}
	currentID = id;
	return false;
}

function closePage()
{
	restoreTabs();
	$('OptionsContent').style.display = 'none';
	return false;
}

function loadPage(mode, value)
{
	var req=new j2httpRequest_js;
	if (typeof (mode)=='object')
	{
		method='POST';
	} else
	{
		method='GET';
	}
	req.onreadystatechange = function()
	{
		if (req.readyState == 4)
		{
			var result=req.responseJS;
			if (result['html'])
			{
				if (currentID == result['id'])
				{
					$('OptionsContent').innerHTML=result['html'];
				}
				pages[result['id']] = result['html'];
			}
		}
	}
	if (this.script_name)
	{
		value['script_name'] = this.script_name;
	}
	if (this.tab_name)
	{
		value['tab_name'] = this.tab_name;
	}
	if (this.meta_data)
	{
		value['meta_data'] = this.meta_data;
	}
	req.open(method, '/assets/templ/include_globals/options.php', true);
	req.send({'mode':mode,'value':value});
	return false;
}

function requestSend(field, id, message)
{
	var sendHTML =
		'<div id="PageOptionsLoading">' +
			'<img src="/assets/images/icons/ic_loading_processing_gray.gif" />' +
			message +
		'</div>';
	pages[id] = false;
	var params={'sendname':field.name, 'sendvalue':field.value, 'formname':$(field.form.id).name, 'id':id}
	loadPage($(field.form.id), params);
	$('OptionsContent').innerHTML = sendHTML;
	return false;
}

function textChange()
{
	var s = $('addon').value;
	var text = $('text').value;
	var name = $('COMMON_NAME').value;
	s = s.replace(/%name%/g, name);
	s = s.replace(/%text%/g, text);
	if (document.MainForm)
	{
		document.MainForm.description.value = s;
	} else
	{
		$('description').value = s;
	}
	return false;
}

function commentTextChange()
{
	var src = document.getElementById("DESCRIPTION");
	src.value = src.value.substring(0,300);
	var t = src.value;
	var dst = document.getElementById("preview");
	dst.value = t;
	var cl = document.getElementById("CharCount");
	var cleft = 300 - src.textLength;
	cl.innerHTML = cleft + " characters left";
}


function closeDiv(id)
{
	$(id).style.display = 'none';
	return false;
}