/*General*/
function submitForm(id, action) {
	if (action) { $('#'+id)[0].action = action;}
	$('#'+id)[0].submit();
}
function removeElement(el) {
    parentObj = el.parentNode; childObj = el; 
    if (childObj && parentObj) parentObj.removeChild(childObj);
}
function removeObject(id) {
    removeElement(document.getElementById(id));
}
function appendHiddenInput(iName, iValue, iParent) {
	var input = document.createElement('input');
	input.name = iName;	input.type = 'hidden';
	input.value = iValue; iParent.appendChild(input);
}
function insertCell(row, text) {
	var cell = row.insertCell(-1); cell.innerHTML = text;
	return cell; 
}
/* MultiSelectList*/
function OnMultilListItemClicked(obj)
{
	if(obj.className == 'close'){obj.className = 'open';obj.nextSibling.style.display='none';}
	else {obj.className = 'close';obj.nextSibling.style.display='';}
}
function OnRemoveAllMultiSelectList(obj)
{
	// Удалим все элементы в правом списке
	$($(obj.parentNode).next("div[@class='f_cont']").get(0).getElementsByTagName('ul')[0]).empty();
	//Удалим все элементы в левом
	var inpts = obj.parentNode.parentNode.parentNode.getElementsByTagName('input');
	for(var i=0;i<inpts.length;i++)inpts[i].checked = false;	
	var ctrl = $(obj).parents("dd").get(0);	
	RegisterSelectedMultiSelectedListItems(ctrl);
}
function OnSelectMultiListItem(obj)
{
		var id = obj.value;var name = obj.nextSibling.innerHTML;var pid = obj.parentNode.parentNode.id;
		var pname = obj.parentNode.parentNode.previousSibling.innerHTML;
		var parnt = $(obj).parents("div[@class='ch_box left']").get(0);
		var sel_parnt = $(parnt).next("div[@class='add_box left']").get(0); // Правое окошко
		var sel_content = $(sel_parnt).find('ul');
		if(obj.checked){
			// Проверим есть ли такая группа в окне выбранных элементов
			var group_content =null;
			if($(sel_content[0]).find("#selp_"+pid).length == 0)
			{
				$(sel_content[0]).append("<li><h2>"+pname+"</h2><div id='selp_"+pid+"'></div></li>");
			}
			group_content = $(sel_content[0]).find("#selp_"+pid).get(0);
			$(group_content).append(
"<div class='add_item" + (group_content.childNodes.length%2?' gr_cell':'') + "' id='seli_" + id + "'><p class='left'>" + name + "</p><a  href='javascript:void(0)' onclick='OnMultiSelectListItemDelete(this)' class='right'><img src='/images/del_icon.gif' alt='' border='0' width='10' height='11'></a><div class='clear'></div></div>"
	);
		}
		else
		{
			$(sel_content[0]).find("#seli_"+id).remove();
			var tmp_container =  $(sel_content[0]).find("#selp_"+pid).get(0);
			if(tmp_container.childNodes.length==0)$(tmp_container.parentNode).remove();
			else MultiSelectListRepairClass(tmp_container);
		}
		var ctrl = $(obj).parents("dd").get(0);
		RegisterSelectedMultiSelectedListItems(ctrl);
}
function MultiSelectListRepairClass(obj)
{
	var odd =1;
	for(var i=0;i<obj.childNodes.length;i++)
		if(obj.childNodes[i].tagName=='DIV')	
		{
			odd=!odd;obj.childNodes[i].className = "add_item" + (odd?" gr_cell":"");
		}
}
function OnMultiSelectListItemDelete(obj)
{
	var id = obj.parentNode.id.substr(5);
	var parnt = obj.parentNode.parentNode;
	//
	var pid = parnt.parentNode.childNodes[0].id.substr(5);
	var ctrl = $(parnt).parents("dd").get(0);
	$($(ctrl).find("div[@id='"+pid+"']")[0]).find("input[@value='"+id+"']")[0].checked = false;
	$(obj.parentNode).remove();
	if(parnt.innerHTML.length==0)$(parnt.parentNode).remove();
	MultiSelectListRepairClass(parnt);
	RegisterSelectedMultiSelectedListItems(ctrl);
}
function RegisterSelectedMultiSelectedListItems(list_ctrl)
{
	var elmnts = list_ctrl.getElementsByTagName('input');
	var selected = "";
	for(var i = 0; i <  elmnts.length; i++)
		if(elmnts[i].type=='checkbox' && elmnts[i].checked)
		{
			if(selected.length>0)selected += ',';
			selected += elmnts[i].value;
		}
	$(list_ctrl).children("input[@type='hidden']").get(0).value = selected;
}
/* Select Regions*/
function InsertRegion(base_name, id_country, id_region, id_city, keep_co, keep_st, keep_ci)
{
	var table = $("#"+base_name + "_set_body")[0];
	var ctrl_country = $('#'+base_name+id_country);
	var ctrl_region = $('#'+base_name+id_region);
	var ctrl_city = $('#'+base_name+id_city);
	if (table.rows.length == 1 && table.rows[0].id == 'stub_row') removeElement(table.rows[0]);
	var row = table.insertRow(-1);
	insertCell(row, ctrl_country.length && ctrl_country[0].selectedIndex>0?ctrl_country[0].options[ctrl_country[0].selectedIndex].innerHTML:_select_regions_messages['all_countries']);
	insertCell(row, ctrl_region.length && ctrl_region[0].selectedIndex>0?ctrl_region[0].options[ctrl_region[0].selectedIndex].innerHTML:_select_regions_messages['all_states']);
	insertCell(row,  ctrl_city.length && ctrl_city[0].selectedIndex>0?ctrl_city[0].options[ctrl_city[0].selectedIndex].innerHTML:_select_regions_messages['all_cities']);
	var cell = insertCell(row, '<a href="javascript:void(0)" onClick="deleteRegionItem(this); return false;"><img src="/images/del_icon.gif" width="10" height="11" border="0" /></a>');
	appendHiddenInput(base_name+"[]",  (ctrl_country.length?ctrl_country[0].value:0)+"|"+(ctrl_region.length?ctrl_region[0].value:0)+"|"+(ctrl_city.length?ctrl_city[0].value:0), cell);
	if(!keep_ci && ctrl_city.length) {
		ctrl_city[0].selectedIndex=0;
		if (!keep_st) ctrl_city[0].disabled=true;
	}
	if(!keep_st && ctrl_region.length) {
		ctrl_region[0].selectedIndex=0;
		if (!keep_co) ctrl_region[0].disabled=true;
	}
	if(!keep_co && ctrl_country) {
		ctrl_country[0].selectedIndex=0;
	}
}
function deleteRegionItem(item)
{
	var tbody = item.parentNode.parentNode.parentNode;
	$(item.parentNode.parentNode).remove();
	if (tbody.rows.length == 0) {
		var row = tbody.insertRow(-1);
		row.id = 'stub_row';
	}
}
function deleteAllRegions(base_name)
{
	$("#"+base_name+"_set_body").empty();
	var row = $("#"+base_name+"_set_body")[0].insertRow(-1);
	row.id = 'stub_row';
}
/*Collapser*/
function Collapser_Click(name)
{
	var collapser = $('#' + name)[0];	
	var date = new Date();
	date.setYear(date.getFullYear()+1);
	document.cookie = 'collapser_'+name+'='+(collapser.style.display == 'none' ? 1:0)+"; expires=" + date.toGMTString();
	if(collapser.style.display == 'none')collapser.style.display = '';
	else collapser.style.display = 'none';
}
/*Image checkbox*/
function ImageCheckbox_Click(obj, name, cimage, uimage)
{
	var check = $('#'+name)[0];	check.checked = !check.checked;	obj.className = check.checked?cimage:uimage;
	
}
