function togleShowHide(id)
{
	var object = document.getElementById(id);
	if(!object) return;
	if(object.style.display=='none') {
		object.style.display='';
	}
	else {
		object.style.display='none';
	}
}

function toggleShowHide(id)
{
	togleShowHide(id);
}

function _nfv_validate(alias,questions)
{
        var ok = true;
	quest_count = questions.length;
        
	for(var i = 1; i < quest_count; i++) {
		var quest = questions[i];
		if(quest['type'] == 'array_enum') continue;
		var id = quest['node_id'];
                
		var value = $F(id);
		//alert(id+'\n'+quest['type']);
		var success = true;

		switch(quest['type']) {
                case "email" :
                    success = /^[\w.-]+@([\w.-]+\.)+\w{2,6}$/i.test(value);
                break;

	        case "http" : case "ftp" : case "gopher" :
	            success = /^http|ftp|gopher:\/\/[^\n\r]+(?=[\s\.,])$/i.test(value);
                break;
	
	        case "integer" :
	            success = /^\d+$/i.test(value);
	        break;
	
	        case "float" :
	            success = /^\d*\.|\,\d+$/i.test(value);
	        break;
	
	        case "string" :
	            success = /^.+$/i.test(value);
	        break;
	
	        case "text" :
	            success = /^.+$/i.test(value);
	        break;

	        case "password" :
	            success = /^.+$/i.test(value);
	        break;
	        default: 
				continue; 
			break;
		}
		
		if(!success && (quest['necessary'] || value.length>0)) {
			_nfv_error(id);
			ok = false;
		}
	}
        
	return ok;
}

function _nfv_error(id)
{	
	var error_bgcolor = '#ffffcc';
	var default_bgcolor = '#ffffff';
	
	var node = $(id);
	
	var bgcolor = node.getStyle('background-color');
	//alert(bgcolor);
	if(bgcolor=='' || bgcolor==null || bgcolor==false) {
		bgcolor = default_bgcolor;
	}
	//var bg = node.getStyle('background');
	setTimeout('$(\''+id+'\').setStyle({backgroundColor: \''+bgcolor+'\'})',600);
	node.setStyle({backgroundColor: error_bgcolor});
}

function toggle_login_form()
{
	var div = $('div_login_form');
	if(div.getStyle('display')=='none') {
		div.setStyle({display: ''});
	}
	else {
		div.setStyle({display: 'none'});
	}
}


function catalog_getsubgroups_select(group_id,element_id)
{
	$(element_id).disabled='disabled'; 
	$(element_id).update('<option>загрузка...</option>'); 
	new Ajax.Updater(	element_id,
						'/ajax/catalog/getsubgroups/forselect',
						{	parameters: {ggroup_pid: group_id},
							onSuccess: 	function(){ $(element_id).disabled=''; } 
						});
}

function catalog_toggle_desc(good_code)
{
	link = $('desc_link_'+good_code);
	div = $('desc_div_'+good_code);
	if(div.getStyle('display')=='none') {
		if(div.innerHTML=='') {
			div.update('загрузка...');
			new Ajax.Updater('desc_div_'+good_code,
						'/ajax/catalog/getgooddesc/',
						{	parameters: {item_code: good_code} } 
						);
		}
		div.setStyle({'display':'block'});
		link.className='desc_link2';
	}
	else {
		div.setStyle({'display':'none'});
		link.className='desc_link';
	}
}
function catalog_toggle_descfull(good_code)
{
	var main_div = $('div_good_info')
	var div = $('div_good_descfull');
	if(main_div.getStyle('display')=='none') {
		if(div.parentNode.id != good_code) {
			div.update('загрузка...');
			new Ajax.Updater('div_good_descfull',
						'/ajax/catalog/getgooddescfull/',
						{	parameters: {item_code: good_code} } 
						);
		}
		main_div.setStyle({'display':''});
		div.parentNode.id = good_code;
	}
	else {
		main_div.setStyle({'display':'none'});
	}
}


function do_register () {

    var questions = new Array();
    questions[1] = {'label':'Логин','type':'string','necessary':'1','minlength':'3','maxlength':'128','group':'0','node_id':'reglogin','alias':'reglogin'};
    questions[2] = {'label':'Пароль','type':'string','necessary':'1','minlength':'6','maxlength':'128','group':'0','node_id':'regpass','alias':'regpass'};
    questions[3] = {'label':'Пароль (повторите)','type':'string','necessary':'1','minlength':'6','maxlength':'128','group':'0','node_id':'regpass2','alias':'regpass2'};
    questions[4] = {'label':'ФИО','type':'string','necessary':'1','minlength':'5','maxlength':'128','group':'0','node_id':'regfio','alias':'regfio'};
    questions[5] = {'label':'Компания','type':'string','necessary':'1','minlength':'3','maxlength':'128','group':'0','node_id':'regcompany','alias':'regcompany'};
    questions[6] = {'label':'Эл. почта','type':'email','necessary':'1','group':'0','node_id':'regemail','alias':'regemail'};
    questions[7] = {'label':'Проверочный код','type':'string','necessary':'1','minlength':'3','maxlength':'128','group':'0','node_id':'regcaptcha','alias':'captcha_word'};
    
    if(_nfv_validate('reg', questions)) {
        document.getElementById('form_reg').submit();
        return true;
    }
    return false;
}
