// Функция подгрузки данных.
// Грузит данные из href, результаты вставляет в divы, caching - true|false - кэширование
function doLoad(force, href, caching) {
	// Создаем новый объект JSHttpRequest.
	var req = new Subsys_JsHttpRequest_Js();
	// Код, АВТОМАТИЧЕСКИ вызываемый при окончании загрузки.
	req.onreadystatechange = function() {
		
		if (req.readyState == 4) {
			if (req.responseJS) {
				
				for(var i in req.responseJS) {
					// Записываем в <div>ы результаты работы. 
					var div = document.getElementById(i);
					if (div) div.innerHTML = (req.responseJS[i] || '');
				}
			}
			// Отладочная информация.
			//document.getElementById('debug').innerHTML = req.responseText;
			//req.responseJS.result_text;
		}
	}
	// Разрешаем кэширование (чтобы при одинаковых запросах
	// не обращаться к серверу несколько раз).
	req.caching = caching;
	// Подготваливаем объект.
	req.open('POST', href, true);
	// Посылаем данные запроса (задаются в виде хэша).
	req.send({ foo: 0 });
}

function load_content(element_id, href) {
	document.getElementById(element_id).disabled = 1;
	doLoad(true,href,false);
	document.getElementById(element_id).disabled = 0;
}

function ad_business_group_onchange() {
	// -2 is for Other element
	if (document.getElementById('ad_business_group').value == -2) {
		//show text field for other group
		document.getElementById('ad_business_group_more').value = ''; 
		document.getElementById('other_business_group').style.display = 'block'; 
		
		//disabling other dpors
		document.getElementById('div_business_category').innerHTML = '<p><select name="ad[business_category_fake]" disabled id="ad_business_category_fake" class="long_element2"><option value="-3">No categories</option></select></p>';
    document.getElementById('ad_business_category').value = '-1';
		document.getElementById('div_business_subcategory').innerHTML = '<p><select name="ad[business_subcategory_fake]" disabled id="ad_business_subcategory_fake" class="long_element2"><option value="-3">No subcategories</option></select></p>';
    document.getElementById('ad_business_subcategory').value = '-1';
		document.getElementById('div_business_type').innerHTML = '<p><select name="ad[business_type_fake]" id="ad_business_type_fake" size="1" disabled multiple class="long_element2"><option value="-3">No types</option></select></p>';
    document.getElementById('ad_business_type').value = '-1';
		
		document.getElementById('ad_business_category_more').value = '';
		document.getElementById('other_business_category').style.display = 'none';
		document.getElementById('ad_business_subcategory_more').value = '';
		document.getElementById('other_business_subcategory').style.display = 'none';
	}
	else  {
		document.getElementById('ad_business_group_more').value = '';
		document.getElementById('other_business_group').style.display = 'none';
		document.getElementById('other_business_category').style.display = 'none';
		document.getElementById('other_business_subcategory').style.display = 'none';

		//disabling other dpors
		document.getElementById('div_business_category').innerHTML = '<p><select name="ad[business_category_fake]" disabled id="ad_business_category_fake" class="long_element2"><option value="-3">No categories</option></select></p>';
    document.getElementById('ad_business_category').value = '-1';
		document.getElementById('div_business_subcategory').innerHTML = '<p><select name="ad[business_subcategory_fake]" disabled id="ad_business_subcategory_fake" class="long_element2"><option value="-3">No subcategories</option></select></p>';
    document.getElementById('ad_business_subcategory').value = '-1';
		document.getElementById('div_business_type').innerHTML = '<p><select name="ad[business_type_fake]" id="ad_business_type_fake" size="1" disabled multiple class="long_element2"><option value="-3">No types</option></select></p>';
    document.getElementById('ad_business_type').value = '-1';

		document.getElementById('ad_business_category_more').value = '';
		document.getElementById('other_business_category').style.display = 'none';
		document.getElementById('ad_business_subcategory_more').value = '';
		document.getElementById('other_business_subcategory').style.display = 'none';
	
		var i1 = document.getElementById('ad_business_group').value;
		var div = document.getElementById('div_business_category');
		if (div) div.innerHTML = '<p><select name="ad[business_category_fake]" disabled id="ad_business_category_fake" class="long_element2"><option value="-1">Loading...</option></select>\r\n<p>';
		load_content('ad_business_category','/dynloader.php?dl_action=ad_form_cats&i1='+i1);
	}
}

function ad_business_category_onchange() {
	//change real value carrier
	document.getElementById('ad_business_category').value = document.getElementById('ad_business_category_fake').value;

	// -2 is for Other element
	if (document.getElementById('ad_business_category_fake').value == -2) {
		document.getElementById('ad_business_category_more').value = ''; 
		document.getElementById('other_business_category').style.display = 'block'; 
		
		//disabling other dpors
		document.getElementById('div_business_subcategory').innerHTML = '<p><select name="ad[business_subcategory_fake]" disabled id="ad_business_subcategory_fake" class="long_element2"><option value="-3">No subcategories</option></select></p>';
    document.getElementById('ad_business_subcategory').value = '-1';
		document.getElementById('div_business_type').innerHTML = '<p><select name="ad[business_type_fake]" id="ad_business_type_fake" size="1" disabled multiple class="long_element2"><option value="-3">No types</option></select></p>';
    document.getElementById('ad_business_type').value = '-1';
			
		document.getElementById('ad_business_subcategory_more').value = '';
		document.getElementById('other_business_subcategory').style.display = 'none';

	}
	else {
		document.getElementById('ad_business_category_more').value = ''; 
		document.getElementById('other_business_category').style.display = 'none'; 
		document.getElementById('other_business_subcategory').style.display = 'none';
	
		//disabling other dpors
		document.getElementById('div_business_subcategory').innerHTML = '<p><select name="ad[business_subcategory_fake]" disabled id="ad_business_subcategory_fake" class="long_element2"><option value="-3">No subcategories</option></select></p>';
    document.getElementById('ad_business_subcategory').value = '-1';
		document.getElementById('div_business_type').innerHTML = '<p><select name="ad[business_type_fake]" size="1" disabled multiple id="ad_business_type_fake" class="long_element2"><option value="-3">No types</option></select></p>';
    document.getElementById('ad_business_type').value = '-1';
		
		document.getElementById('ad_business_category_more').value = '';
		document.getElementById('other_business_category').style.display = 'none';
		document.getElementById('ad_business_subcategory_more').value = '';
		document.getElementById('other_business_subcategory').style.display = 'none';
	
		var i1 = document.getElementById('ad_business_group').value;
		var i2 = document.getElementById('ad_business_category_fake').value;

		var div = document.getElementById('div_business_subcategory');
		if (div) div.innerHTML = '<p><select name="ad[business_subcategory_fake]" disabled id="ad_business_subcategory_fake" class="long_element2"><option value="-1">Loading...</option></select></p>';
		load_content('ad_business_subcategory','/dynloader.php?dl_action=ad_form_subcats&i1='+i1+'&i2='+i2);
	}
}

function ad_business_subcategory_onchange() {
	//change real value carrier
	document.getElementById('ad_business_subcategory').value = document.getElementById('ad_business_subcategory_fake').value;

	// -2 is for Other element
	if (document.getElementById('ad_business_subcategory_fake').value == -2) {
		document.getElementById('ad_business_subcategory_more').value = ''; 
		document.getElementById('other_business_subcategory').style.display = 'block'; 
		
		//disabling other dpors
		document.getElementById('div_business_type').innerHTML = '<p><select name="ad[business_type_fake]" size="1" disabled multiple id="ad_business_type_fake" class="long_element2"><option value="-3">No types</option></select></p>';
    document.getElementById('ad_business_type').value = '-1';
	}
	else { 
		document.getElementById('ad_business_subcategory_more').value = ''; 
		document.getElementById('other_business_subcategory').style.display = 'none'; 
	
		var i1 = document.getElementById('ad_business_group').value;
		var i2 = document.getElementById('ad_business_category_fake').value;
		var i3 = document.getElementById('ad_business_subcategory_fake').value;

		var div = document.getElementById('div_business_type');
		if (div) div.innerHTML = '<p><select name="ad[business_type_fake]" id="ad_business_type_fake" size="1" disabled multiple class="long_element2"><option value="-1">Loading...</option></select></p>';
	
		load_content('ad_business_type','/dynloader.php?dl_action=ad_form_types&i1='+i1+'&i2='+i2+'&i3='+i3);
	}

}

function ad_business_type_onchange() {
	var tselect = document.getElementById('ad_business_type_fake');
	
	selected = new Array();
  	for (var i = 0; i < tselect.options.length; i++)
    if (tselect.options[i].selected)
      selected.push(tselect.options[i].value);
	
	document.getElementById('ad_business_type').value = selected;
	//alert(document.getElementById('ad_business_type').value);
}

//if <SELECT> (with id = select_id) value == other_value, then show\hide <DIV> (comments_id)
// and if <TEXT> (text_id) value id empty, set it to default_value
function showCommentsField(comments_id, select_id, other_value, text_id, default_value)	{
		var comment_div = document.getElementById(comments_id);
		var select_value = document.getElementById(select_id).value;
		var text_value = document.getElementById(text_id);
	
		if ((other_value == null && select_value != -1) || select_value == other_value) {
			//if (text_value.value == '' || text_value.value == null) 
			text_value.value = default_value;
			comment_div.style.display = 'block';
		}
		else comment_div.style.display = 'none'; 
}

function clearTextField(text_id, text, text2) {
	var div = document.getElementById(text_id);
	if (div.value == text || div.value == text2) div.value = "";
}

function oWin(url, wxh, params) {
    wxh = (wxh) ? wxh : "498x500" ;
    params = (params) ? params : ",resizable=yes,scrollbars=yes";
    wxh_ar = wxh.split("x");
    if (url) {
        open(url,'','width='+wxh_ar[0]+',height='+wxh_ar[1]+params);
    }
}


function showLogInForm(id) {
    self.scrollTo(0, 0);
    expandDiv(id);
}

