
function search_type(x) {
	switch(x) {
		case 'simple':
			$('search_detailed').className = 'hidden';
			$('search_default').className = '';
			$$('#search_default .search_string').value = $$('#search_detailed .search_string').value; 
			break;
		case 'detailed':
			$('search_detailed').className = '';
			$('search_default').className = 'hidden';
			$$('#search_detailed .search_string').value = $$('#search_default .search_string').value; 
			break;
	}
}

function seller_type(flag, id) {
    $("seller_name").disabled = true;
    $("seller_login").disabled = true;
    $("seller_select").disabled = true;
    $(id).disabled = !flag;
}

function load_search_subcat(cat) {
	
	var pars = {action: 'ajax_get_search_categories', parentid: cat, userid: userid};
	var myAjax = new Ajax.Request('ajax_get_categories.php',
	{
		method: 'post',
		parameters: pars,
		onSuccess: function(transport){
			//alert(transport.responseText);
			$('category_br_'+cat).insert({after:'<div style="margin-left:20px;" id="subcats_'+cat+'"></div>'});
			var response = transport.responseText.evalJSON(true);
			var obj = $('subcats_'+cat);
			for (var i = 0; i <response.categories.length; i++){
				obj.insert(''+response.categories[i].tab+' '+(response.categories[i].has_children > 0?'<span onclick="tree_process('+response.categories[i].categoryid+');" id="subcats_'+response.categories[i].categoryid+'_state" style="cursor:pointer;">[+]</span>':'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;')+' <input name="search_cats[P]['+response.categories[i].categoryid+']" id="subcats_check_'+response.categories[i].categoryid+'" class="parent_check_'+response.categories[i].parentid+'" type="checkbox" value="1" onclick="tree_check_process('+response.categories[i].categoryid+','+response.categories[i].parentid+', this.checked);tree_check_refresh('+response.categories[i].parentid+');" '+($('subcats_check_'+cat).checked?'checked':'')+' /><a href="products.php?mode=show&search_detailed=0&is_search=1&sell=Y&search_string=&search_name=on&search_cats[P]['+response.categories[i].categoryid+']=1" > '+response.categories[i].category+'</a><br id="category_br_'+response.categories[i].categoryid+'" />');
				//sellers_addOption(obj,(response.categories[i].fio?response.users[i].fio:response.users[i].login),response.users[i].userid);
			}
			//alert(1);
		},
		onFailure: function(){ sellers_ajaxerror(); return false; },
		onComplete: function(){
			var x = $('subcats_' + cat);
			var f = $('subcats_' + cat + '_state');
			x.style.display = '';
			f.innerHTML = '[&ndash;]';
			
			/***** same as in get_sellers.js *****/
			$$('#search_detailed .dtld input[name!=seller_search_type], #search_detailed select:not(#seller_select)').each(function (s) {
				s.stopObserving('click');
				//s.stopObserving('change');
				s.observe('click', function () {get_sellers();})
				//s.observe('change', function () {get_sellers();})
			});
			if ($$("#seller_select").size()) get_sellers();
		}
	});
} 

function tree_process(cat) {
    var x = $('subcats_' + cat);
    var f = $('subcats_' + cat + '_state');
	
	if (!x) {
		load_search_subcat(cat);
	} else {
		if (x.style.display != 'none') {
			x.style.display = 'none';
			f.innerHTML = '[+]';
	    }
	    else {
			x.style.display = '';
			f.innerHTML = '[&ndash;]';
	    }
	}
}

function tree_check_process(cat, parent, check) {
    var children = document.getElementsByClassName('parent_check_' + cat);
    var i = 0;
    if (children.length > 0)
    for (i=0;i<children.length;i++) {
	children[i].checked = check;
	tree_check_process(children[i].id.substr(14),cat,check);
    }
    return;
}

function tree_check_refresh(parentid) {

    var elems = $$('.parent_check_' + parentid);
    var need2check = true;

    elems.each(function(s) {
    	need2check = need2check && s.checked;
    });
    
    /*for (i=0;i<elems.length;i++) {
        need2check = need2check && elems[i].checked;
    }*/

    if (parentid > 0) {
		var parent = $('subcats_check_' + parentid);
		if (parent) {
			parent.checked = need2check;
			tree_check_refresh(parent.className.substr(13));
		}
    }
}
