
function checkFaqForm(form) {
    form = jQuery(form);
    var quest = jQuery('#faq-form_question');
    var captcha = jQuery('#faq-form_captcha');
    
    var ret = true;
    if(quest && quest.attr('name') && quest.val().length < 5) {
        alertInvalidField(quest);
        ret = false;
    }
    if(captcha && captcha.attr('name') && captcha.val().length != 6) {
        alertInvalidField(captcha);
        ret = false;
    }
    
    return ret;
}


function checkRegistrateForm() {
    var form = jQuery('#registrate-form');
    
    var is_company = jQuery('*[name="data[new][is_company]"]:checked',form).val();
    
    
    var ret = true;
    
    if(is_company>0) {
        var field = jQuery('*[name="data[new][company_name]"]',form);
        if(field && field.attr('name') && field.val().length < 1) {
            alertInvalidField(field);
            ret = false;
        }
        var field = jQuery('*[name="data[new][inn]"]',form);
        if(field && field.attr('name') && field.val().length < 5) {
            alertInvalidField(field);
            ret = false;
        }
        var field = jQuery('*[name="data[new][phone]"]',form);
        if(field && field.attr('name') && field.val().length < 6) {
            alertInvalidField(field);
            ret = false;
        }

        var field = jQuery('*[name="data[new][lname]"]',form);
        if(field && field.attr('name') && field.val().length < 1) {
            alertInvalidField(field);
            ret = false;
        }
        
    }
    
    var field = jQuery('*[name="data[new][fname]"]',form);
    if(field && field.attr('name') && field.val().length < 1) {
        alertInvalidField(field);
        ret = false;
    }
    
    var field = jQuery('*[name="email"]',form);
    if(field && field.attr('name') && field.val().length < 5) {
        alertInvalidField(field);
        ret = false;
    }
    var field = jQuery('*[name="password"]',form);
    if(field && field.attr('name') && field.val().length < 5) {
        alertInvalidField(field);
        ret = false;
    }
    var field = jQuery('*[name="password_confirm"]',form);
    if(field && field.attr('name') && field.val().length < 5) {
        alertInvalidField(field);
        ret = false;
    }
    
    return ret;
}

function checkProfileForm(user_id) {
    var form = jQuery('#profile-form');
    
    var is_company = jQuery('*[name="data['+user_id+'][is_company]"]:checked',form).val();
    
    
    var ret = true;
    
    if(is_company>0) {
        var field = jQuery('*[name="data['+user_id+'][company_name]"]',form);
        if(field && field.attr('name') && field.val().length < 1) {
            alertInvalidField(field);
            ret = false;
        }
        var field = jQuery('*[name="data['+user_id+'][inn]"]',form);
        if(field && field.attr('name') && field.val().length < 5) {
            alertInvalidField(field);
            ret = false;
        }
        var field = jQuery('*[name="data['+user_id+'][phone]"]',form);
        if(field && field.attr('name') && field.val().length < 6) {
            alertInvalidField(field);
            ret = false;
        }
        var field = jQuery('*[name="data['+user_id+'][fname]"]',form);
        if(field && field.attr('name') && field.val().length < 1) {
            alertInvalidField(field);
            ret = false;
        }
        var field = jQuery('*[name="data['+user_id+'][lname]"]',form);
        if(field && field.attr('name') && field.val().length < 1) {
            alertInvalidField(field);
            ret = false;
        }
        
    }
    
    var field = jQuery('*[name="email"]',form);
    if(field && field.attr('name') && field.val().length < 5) {
        alertInvalidField(field);
        ret = false;
    }
    var field = jQuery('*[name="password"]',form);
    if(field && field.attr('name') && field.val().length < 5) {
        alertInvalidField(field);
        ret = false;
    }
    var field = jQuery('*[name="password_confirm"]',form);
    if(field && field.attr('name') && field.val().length < 5) {
        alertInvalidField(field);
        ret = false;
    }
    
    return ret;
}

function checkLoginForm() {
    var form = jQuery('#login-form');
    
    var ret = true;
    var field = jQuery('*[name="login"]',form);
    if(field && field.attr('name') && field.val().length < 1) {
        alertInvalidField(field);
        ret = false;
    }
    var field = jQuery('*[name="password"]',form);
    if(field && field.attr('name') && field.val().length < 1) {
        alertInvalidField(field);
        ret = false;
    }
    //alert(ret);
    return ret;
}


function initRegistrateForm() {
    var form = jQuery('#registrate-form');
    if(!form) {
        return;
    }
    
    jQuery('*[name="data[new][is_company]"]').bind('click keyup change',function(){switchRegistrateForm(form);});
    switchRegistrateForm(form);
}

function switchRegistrateForm(form) {
    var is_company = jQuery('*[name="data[new][is_company]"]:checked',form).val();
    
    //alert(is_company);
    jQuery('tr',form).each(function(){
        var tr = jQuery(this);
        if(is_company>0) {
            //alert('company');
            if(tr.hasClass('_company')) tr.css('display','');
            else tr.css('display','none');
        }
        else {
            //alert('person');
            if(tr.hasClass('_person')) tr.css('display','');
            else tr.css('display','none');
        }
    });
}

function initProfileForm(user_id) {
    var form = jQuery('#profile-form');
    if(!form) {
        return;
    }
    
    jQuery('*[name="data['+user_id+'][is_company]"]').bind('click keyup change',function(){switchProfileForm(form,user_id);});
    switchProfileForm(form,user_id);
}

function switchProfileForm(form,user_id) {
    var is_company = jQuery('*[name="data['+user_id+'][is_company]"]:checked',form).val();
    
    //alert(user_id);
    jQuery('tr',form).each(function(){
        var tr = jQuery(this);
        if(is_company>0) {
            //alert('company');
            if(tr.hasClass('_company')) tr.css('display','');
            else tr.css('display','none');
        }
        else {
            //alert('person');
            if(tr.hasClass('_person')) tr.css('display','');
            else tr.css('display','none');
        }
    });
}


function alertInvalidField(field) {
    if(field.is(':animated')) return;
    var bg = field.css('backgroundColor');
    //alert(bg);
    field.animate({backgroundColor:'#FF9999'},200,'linear',function(){field.animate({backgroundColor:bg},500)});
}

/*
var Basket = {};

Basket.inProcess = false;

Basket.addGood2Basket = function(link) {
    if(Basket.inProcess) return false;
    
    Basket.inProcess = 2;
    
    link = jQuery(link);
    var url = link.attr('href') + '.json';
    
    var info = jQuery('#basketblock_info');
    link.fadeTo('slow',0.2);
    info.fadeTo('slow',0.2);
    
    jQuery.getJSON(url,function(data){
        var str = 'В корзине нет ни одного товара';
        if(typeof(data)=='object' && data.summary && data.summary.amount && data.summary.price && data.summary.price.actual) {
            var c = data.summary.amount;
            var p = data.summary.price.actual;
            str = c + ' ' + sklon(c,['товар','товара','товаров']) + ' на сумму ' + p + ' руб.';
        }
        info.html(str);
        
        link.fadeTo('slow',1);
        info.fadeTo('slow',1);
        
        Basket.inProcess = false;
    });
}
*/

function sklon(count,word) {
    var str = word[2];
    
    if(count>4 && count<20) {
        str = word[2];
    }
    else if(count%10==1) {
        str = word[0];
    }
    else if(count%10>=2 && count%10<=4) {
        str = word[1];
    }
    
    str = str.replace('%count%',count);
    
    return str;
}




/**
 * Декоративные прибамбасы для нашей CMS.
 */
NAXCMS_Decor = {};

NAXCMS_Decor.tabsInit = function(rootclass,titleclass,contentclass,selectpostfix,hideclass)
{
	// определяемся с названиями классов
	if(!rootclass) { /* класс корня табсов */ var rootclass = 'tabs'; }
	if(!titleclass) { /* класс заголовков */ var titleclass = 'tabtitle'; }
	if(!contentclass) { /* класс контента */ var contentclass = 'tabcontent'; }
	if(!selectpostfix) { /* класс выбора */ var selectpostfix = '_selected'; }
	if(!hideclass) { /* класс скрытия */ var hideclass = 'hidden'; }
	
	// счетчик групп табов
	var gt = 0;
	// счетчик табов
	var t = 0;
	
	var gt_classpfx = '__tabgroup_';
	var tt_classpfx = '__tabtitle_';
	var tc_classpfx = '__tabcontent_';
	
	$('.'+rootclass).each(function(){
		
		var gt_class = gt_classpfx+gt;
		gt = gt + 1;
		$(this).addClass(gt_class);
		
		var rootdiv = this;
		var titleheight = 0;
		var contentheight = 0;
		var selected = 0;
		
		var tg = t;
		
		$('.'+titleclass,$(rootdiv)).each(function(){
			
			var tt_class = tt_classpfx+tg;
			tg = tg + 1;
			
			var tg2 = tg;
			
			$(this).addClass(tt_class);
			
			if($(this).hasClass(titleclass+selectpostfix)) selected = tg2;
			
			//if(titleheight<$(this).outerHeight()) titleheight = $(this).outerHeight();
			
			$(this).bind('click',function(){
				//alert(tg2);
				NAXCMS_Decor.tabSelect(gt_class,tg2-1,rootclass,titleclass,contentclass,selectpostfix,hideclass);
			});
		});
		
		var tg = t;
		
		$('.'+contentclass,$(rootdiv)).each(function(){
			
			this.parentNode.appendChild(this);
			
			var tc_class = tc_classpfx+tg;
			tg = tg + 1;
			
			$(this).addClass(tc_class);
			
			//if(contentheight<$(this).outerHeight()) contentheight = $(this).outerHeight();
			//alert($(this).css('paddingTop'));
		});
		
		if(selected>0) {
			NAXCMS_Decor.tabSelect(gt_class,selected,rootclass,titleclass,contentclass,selectpostfix,hideclass);
		}
		else {
			NAXCMS_Decor.tabSelect(gt_class,t,rootclass,titleclass,contentclass,selectpostfix,hideclass);
		}
		
		//$('.'+contentclass,$(rootdiv)).height(contentheight-20);
		
		//$(this).height(contentheight+titleheight+30);
		t = tg;
		
		
	});
}


NAXCMS_Decor.tabSelect = function(tabgroup,tabselect,rootclass,titleclass,contentclass,selectpostfix,hideclass) {
	
	var tt_classpfx = '__tabtitle_';
	var tc_classpfx = '__tabcontent_';
	
	/*
	alert(tabgroup);
	alert(tabselect);
	alert(rootclass);
	alert(titleclass);
	alert(contentclass);
	alert(selectpostfix);
	alert(hideclass);
	*/
	
	if($('.'+tt_classpfx+tabselect,$('.'+tabgroup)).hasClass(hideclass)) {
		return false;
	}
	
	$('.'+titleclass,$('.'+tabgroup)).removeClass(titleclass+selectpostfix);
	$('.'+contentclass,$('.'+tabgroup)).removeClass(contentclass+selectpostfix);
	$('.'+tt_classpfx+tabselect,$('.'+tabgroup)).addClass(titleclass+selectpostfix);
	$('.'+tc_classpfx+tabselect,$('.'+tabgroup)).addClass(contentclass+selectpostfix);
	$('.'+tt_classpfx+tabselect,$('.'+tabgroup)).removeClass(hideclass);
	$('.'+tc_classpfx+tabselect,$('.'+tabgroup)).removeClass(hideclass);
	
    /*
    if(jQuery.jStore.isStorageReady()) {
		var location = document.location+'';
		location = location.replace('://',':*');
		location = location.substring(location.indexOf('/')+1,location.length);
		location = location.split('/');
		location = '-'+location[0]+'-'+location[1]+'-';//+location[2]+'/';
		//alert('tab_selected_at_'+location+tabgroup);
		jQuery.jStore.set('tab_selected_at_'+location+tabgroup,tabselect);
        //alert(jQuery.jStore.get('tab_selected_at_'+location+tabgroup+''));
	}
    */
	
}


NAXCMS_Decor.tabsRemember = function(rootclass,titleclass,contentclass,selectpostfix,hideclass)
{
    //if(!jQuery.jStore.isStorageReady()) 
	   return false;
	
	// определяемся с названиями классов
	if(!rootclass) { /* класс корня табсов */ var rootclass = 'tabs'; }
	if(!titleclass) { /* класс заголовков */ var titleclass = 'tabtitle'; }
	if(!contentclass) { /* класс контента */ var contentclass = 'tabcontent'; }
	if(!selectpostfix) { /* класс выбора */ var selectpostfix = '_selected'; }
	if(!hideclass) { /* класс скрытия */ var hideclass = 'hidden'; }
	
	var location = document.location+'';
	location = location.replace('://',':*');
	location = location.substring(location.indexOf('/')+1,location.length);
	location = location.split('/');
	location = '-'+location[0]+'-'+location[1]+'-';//+location[2]+'/';
	
	// счетчик групп табов
	var gt = 0;
	var gt_classpfx = '__tabgroup_';
	
	//return;
	$('.'+rootclass).each(function(){
		var gt_class = gt_classpfx+gt;
		gt = gt + 1;
		
		var selected = jQuery.jStore.get('tab_selected_at_'+location+gt_class+'');
        //alert(selected);
		if(typeof(selected)!='undefined' && selected!='undefined' && selected != null) {
			NAXCMS_Decor.tabSelect(gt_class,selected,rootclass,titleclass,contentclass,selectpostfix,hideclass);
		}
	});
	
}

NAXCMS_Decor.tabHide = function(tabhide) {
	if(!rootclass) { /* класс корня табсов */ var rootclass = 'tabs'; }
	if(!titleclass) { /* класс заголовков */ var titleclass = 'tabtitle'; }
	if(!contentclass) { /* класс контента */ var contentclass = 'tabcontent'; }
	if(!selectpostfix) { /* класс контента */ var selectpostfix = '_selected'; }
	if(!hideclass) { /* класс контента */ var hideclass = 'hidden'; }
	
	$('.'+tabhide).addClass(hideclass);
}


NAXCMS_Decor.tabShow = function(tabshow) {
	if(!rootclass) { /* класс корня табсов */ var rootclass = 'tabs'; }
	if(!titleclass) { /* класс заголовков */ var titleclass = 'tabtitle'; }
	if(!contentclass) { /* класс контента */ var contentclass = 'tabcontent'; }
	if(!selectpostfix) { /* класс контента */ var selectpostfix = '_selected'; }
	if(!hideclass) { /* класс контента */ var hideclass = 'hidden'; }

	$('.'+tabshow).removeClass(hideclass);	
}
