var DEBUG_MODE = false;

function focused(obj,defaultValue){
	if ($(obj).attr('value') == defaultValue) {
		$(obj).addClass('value-changed').attr('value', '');
	}
}
function blured(obj,defaultValue){
	if ($(obj).attr('value').replace(/ /g,'')=='') {
		$(obj).removeClass('value-changed').attr('value', defaultValue);
	}
}

function addcomments(obj) {
    /*if(just_golos(obj)) {*/
        $.cookie("comname", $('#varCommentName').val());
        $('#addComment').submit();
    //}
}

function inquiryvalidate(elem) {
    var form = $(elem).parent().parent().parent().parent().parent().parent();
    //var form =elem;
    var ok = true;
    var fields = new Array();
    var ereg = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;
    var nreg = /[0-9]/ ;
    $(form).find('input').each(function() {
        if($(this).attr('type') != 'hidden' && $(this).attr('rel')) {
            $(this).css('border', '1px solid #F0F0F0');
            if($(this).val() == '' || $(this).val() == ' ') {
                ok = false;
                $(this).css('border', '1px solid #ff0000');
                fields.push($(this).attr('rel'));
            } else if ($(this).hasClass('mail') && !$(this).val().match(ereg)) {
                ok = false;
                $(this).css('border', '1px solid #ff0000');
                alert('Введенный Вами E-mail некорректный');
                return false;
            } else if ($(this).hasClass('numeric') && !$(this).val().match(nreg)) {
                ok = false;
                $(this).css('border', '1px solid #ff0000');
                alert('Введите в поле "'+$(this).attr('rel')+'" только цифры');
                return false;
            }
        }
    });
    if(ok) {
        $(form).submit();
    } else if(fields != '') {
        alert('Заполните, пожалуста, поле(я) "' + fields.join('", "') + '".');
        return false;
    }
}

function just_golos(obj) {
	var fields = $(obj).parent().parents('form').serialize();
	$.post('account.php', fields, function(data){
		data_obj = jQuery.parseJSON(data);
		if(data_obj.error){
			$('#just_golos_error').html(data_obj.error).show();
			$('#just_golos_message').html('').hide();
		}else{
			$('#just_golos_message').html(data_obj.message).show();
			$('#just_golos_error').html('').hide();
			$('#just_golos_form').hide();
		}
	});
	return false;
}

function typecats() {
    var country = $('#intCountryID option:selected').val();

	$('#intRegionID option').css('display','none');
	$('#intRegionID option[rel="'+country+'"]').css('display','block');
	$('#intRegionID option.first').css('display','block');

    if(!country) {
        $('#intRegionID option').css('display','block');
    }

}

function RefreshDDS() {
    var val = $('#varCity option:selected').val();

    if(val != 'Киев' && val != 'Запорожье'){
		$('#varShipping option[value="Курьером"]').css('display','none');
        $('#varShipping').val("Новая почта");
        $('#varPayment option[value="Наличными курьеру"]').css('display','none');
        $('#varPayment').val('Наложенным платежём');
        $('.shipp').hide('slow');
        $('.nship').show('slow');
        $('#coall').text($('#coptice').text());
	} else {
        $('#varShipping option[value="Курьером"]').css('display','block');
        $('#varPayment option[value="Наличными курьеру"]').css('display','block');
        $('.nship').hide('slow');
        $('.shipp').show('slow');
        if($('#varShipping option:selected').val() == 'Курьером') {
            $('#coshipping').text(30+' грн');
            var nins = $('#coptice').text();
            nins = nins.split(' грн').join('');
            $('#coall').text((parseFloat(nins)+30)+' грн');
        } else {
            $('.shipp').hide('slow');
            $('.nship').show('slow');
            $('#coall').text($('#coptice').text());
        }
    }

    $('select.customSelect').width(235).msDropDown({mainCSS:'dd'});
}

function regval() {
    if(!$('#varMail').length && !$('#varPassword').length) $('#registerform').submit();
    if($('#eord').val() != 'order') {
        if($('.req').val() != '') {
            if($('#registerform #varPassword').val() == $('#registerform #varRePassword').val() && $('#registerform #varPassword').val() != '') {
                reg = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;
                if (!$('#varMail').val().match(reg)) {
                    alert('Введите настоящий Email');
                } else {
                    //$.cookie("file", null);
                    $('#registerform').submit();
                }
            } else {
                alert('Пароли не совпадают');
            }
        } else {
            alert('Заполните все обязательные поля');
        }
    } else {
        $('#registerform').submit();
    }
}

function prevview() {
    $('#recipeviewname').text($('#recvarName').val());
    var str = $('#recvarDescription').val();
    str = str.replace(/\r\n|\r|\n/g,"<br />");
    $('#recipeviewdesc').html(str);
    var texts = $.cookie("texts");
    var images = $.cookie("files");
    texxx = texts.split(';');
    imgsss = images.split('|');
    $('#recipeviewimg1').attr('src', path+imgsss[0]);
    var ins = '';
    jQuery.each(imgsss, function(i, val) {
        var ni = i; ni++;
        var nins = $('#demoul').html();
        nins = nins.split('rel=""').join('rel="'+path+val+'"');
        nins = nins.split('src=""').join('src="'+path+val+'"');
        ins += nins;
    });
    $('#prevul').html(ins);
    $('#prevul li').each(function(k, v){
        var ni = k; ni++;
        $(this).addClass('jcarousel-item-'+ni).addClass('jcarousel-item-'+ni+'-horizontal').attr('jcarouselindex', ni);
    });
}

function like(itemId,likeElem, intemName){
    if(typeof user == 'undefined') {
        alert('Вам нужно зарегистрироваться или авторизоваться.');
    } else {
        if (!$(likeElem).hasClass('likeActive')){
            if(itemId && intemName) {
                var cookie = $.cookie("likes") || '';
                $('.clikes').text(1+parseInt($('.clikes').text()));
                $(likeElem).removeClass('likeUnactive').addClass('likeActive');
                cookie += intemName + '|' + itemId + ';';
                $.cookie("likes", cookie);
            }
        } else {
            alert('Вы уже голосовали.');
        }
    }
}

function changeBasket() {
    var coo = '';
    $('.basket').toggle('slow');
    $('.top_basket').animate({
    opacity: 'toggle',
    //left: 'toggle',
    height: 'toggle'
  }, 1000, function() {
    if($(this).css('display') == "none") coo = 1; else coo = 2;
    $.cookie("coo", coo);
  });
}

function reCountBasket(){
    var tcount = 0;
    var tprice = 0;
    var cookie = '';
    $('.top_basket').hide('slow');
    $('.basket table tbody tr').each(function(){
        tprice+=parseInt($(this).children('td:eq(3)').text());
        tcount+=parseInt($(this).children('td:eq(2)').text());
        cookie += $(this).attr('data-id') + '|' + $(this).children('td:eq(2)').text() /*+ '|' + $(this).children('td:eq(0)').text() + '|' + $(this).children('td:eq(1)').text()*/ + ';';
    });
    $('.basket table tfoot tr th:eq(1)').text(tcount);
    $('.bascount').text(tcount);
    $('#coptice').text(tprice+' грн');
    $('#coall').text(tprice+' грн');
    $('.basket table tfoot tr th:eq(2)').text(tprice);
    if($('.basket table tbody tr').length) $('#cprname').text('Ст-ть');
    $.cookie("basket", cookie);
}

function buyItem(itemId, itemCount, itemPrice, itemName){
    if (!$('.basket:visible').length){
       $('.basket').show('slow');
    }
    //var newItem = '';
    var plus = false;
    if($('.basket table tbody tr').length) {
        $('.basket table tbody tr').each(function(){
            if($(this).attr('data-id') == itemId) {
                $(this).children('td:eq(2)').text(parseInt((parseInt(itemCount)) + (parseInt($(this).children('td:eq(2)').text()))));
                $(this).children('td:eq(3)').text(parseInt((parseInt(itemCount)) * itemPrice + (parseInt($(this).children('td:eq(3)').text()))));
                plus = true;
            } else {
                newItem = '<tr data-id="'+itemId+'">'+
                                '<td class="remove"><div><a href="#" onclick="deleteItem($(this).parents(\'tr:first\'), false); return false;">X</a></div></td>'+
                                '<td>'+itemName+'</td><td>'+itemCount+'</td><td class="ltr"><div>'+itemCount*itemPrice +'</div></td></tr>';
            }
        });
        $('#cprname').text('Ст-ть');
    } else {
        var newItem = '<tr data-id="'+itemId+'">'+
                    '<td class="remove"><div><a href="#" onclick="deleteItem($(this).parents(\'tr:first\'), false); return false;">X</a></div></td>'+
                    '<td>'+itemName+'</td><td>'+itemCount+'</td><td class="ltr"><div>'+itemCount*itemPrice +'</div></td></tr>';
    }
    if(!plus && newItem) $('.basket table tbody').append(newItem);
   reCountBasket();
}

function deleteItem(itemRow, allFlag){
    if (!allFlag ? confirm('Удалить товар из корзины?') : true){
        $(itemRow).remove();
        if(!$('.basket table tbody tr').length) {
            $('.basket').hide('slow');
        }
        reCountBasket();
    }
}
function emptyBasket(){
	if (confirm('Очистить корзину?')){
		$('.basket table tbody tr').each(function(){
			deleteItem(this, true);
		})
        $.cookie("basket", null);
        $('.basket').hide('slow');
	}
}

function showPopup(){
    $('#TB_owerflow').height($(document).height()).fadeIn('fast');
    $('#TB_message').fadeIn('fast');
}
function hidePopup(){
    $('#TB_message, #TB_owerflow').fadeOut('fast');
}

function checkpass(elemGroup) {
    var passElem = $(elemGroup).find('input[type=password]');
    var hiddenInputCheck = $(elemGroup).find('#passConfirm');
    passElem.each(function(){
        $(this).focus(function(){
           disableNext(elemGroup);
           $(this).parent().children('.checkError').remove();
        })
        $(this).blur(function(){
            $('.checkError').remove();
            if ($(this).val().length>1 && $(this).val().length<8) {
                $(this).parent().append('<div class="checkError">Довжина пароля менше 8 символів <br>Перевірте правильність вводу</div>');
            } else {
                if ($(passElem[0]).val()!='' && $(passElem[1]).val()!=''){
                    if ($(passElem[0]).val() == $(passElem[1]).val()) {
                        $(hiddenInputCheck).val('1');
                        enableNext(elemGroup);
                    } else {
                        $(passElem[1]).parent().append('<div class="checkError">Паролі не співпадають!<br>Перевірте правильність вводу</div>');
                        disableNext(elemGroup);
                        $(passElem[1]).val('');
                        $(hiddenInputCheck).val('');
                    }
                }
            }
        })
      })
}


function restorePass(obj){
    $('#passLogin td').hide();
    $('a.login').text('Відновити');
    $('input[name="event"]').val('restore');
    $(obj).hide();
}

function loadData(fromElem, event, page){
    if (!$(fromElem).hasClass('active')) {

        $(fromElem).parent().children('a').removeClass('active');
        $(fromElem).addClass('active');

        if (!$('.tsearch').hasClass('active')) {
            $('.searchForm').animate({height:'1px'}, 'fast').css('overflow', 'hidden');
        }

        var dataUrl = '/kids.php?event='+event+'&page='+page;
		var dd = {};
        if (event == 'search') {
        	var dd = {age: $('#selectYears').val(), surname: $('#searchSurname.value-changed').val(), name: $('#searchName.value-changed').val(), city: $('#searchCity.value-changed').val()};
        }

        $.ajax({
            url: dataUrl,
            type: 'POST',
            data: dd,
            beforeSend: function(data) {
                // Подготовка данных, также можно сделать какой-то прелоадер, и убрать его после загрузки данных -
                // $('boby').append('<div id="preload"/>');
                // data.overrideMimeType( 'text/plain; charset=x-user-defined' );
                data.overrideMimeType('text/html; charset=utf-8');
            },
            success: function(data) {
               if (DEBUG_MODE && console && console.log){
                 console.log('data loaded from '+ dataUrl);
                }
                // $('boby > #preload').remove();

                // загрузить в контейнер
                $('#dataContainer').html(data);

            },
            error: function(e) {
              if (DEBUG_MODE && console && console.log){
                    console.log('Error: '+ e);
              }
            }
        });
    }
}

function showSearch(){
    var fromElem = '.tsearch';
    if (!$(fromElem).hasClass('active')){
        $(fromElem).parent().children('a').removeClass('active');
        $(fromElem).addClass('active');
        $('.searchForm').animate({height:'60px'}, 'fast').css('overflow', 'auto');
    }
}

function checkCode(elem){
   var checkCode = $(elem).val();
   if (checkCode.length > 0) {
       $.ajax({
            url: '/signup.php',
            type: 'POST',
            data: {event: 'check', code: checkCode},
            beforeSend: function(data) {
               // $(elem).parent().append('<div class="loader"></div>');
            },
            success: function(data) {
                if (DEBUG_MODE && console && console.log){
					console.log('success code '+ checkCode + data);
	            }
	            if (data == 'OK') {
	            	$(elem).removeClass('error').addClass('codeOK').parent().append('<div class="checkOk"></div>');
	            	if ($('input.required.codeOK').length == 5) {
	            		$('#reg1step').find('.btnDisabled').hide();
	            		$('#reg1step').find('.nextButton').show();
	            	}
	            } else {
	            	$(elem).removeClass('codeOK').addClass('error').parent().append('<div class="checkError">Код не існує або він вже використаний!<br>Перевірте, будь ласка правильність коду.</div>').children('.checkOk').remove();
	            }
            },
            error: function(e) {
              if (DEBUG_MODE && console && console.log) {
                    console.log('Error: '+ e);
              }
            }
        });
   }
}
function hideError(elem){
    $(elem).parent().children('.checkError, .checkOk').remove();
}
function enableNext(elemGroup){
    var enabled = true;
    $(elemGroup).find('.required').each(function(){
       var stophere=12;
        var self=$(this);
        if (this.nodeName=='SELECT') {
            if (self.val() < 1)
                enabled= false;
        } else {
            if (self.attr('type')=='checkbox'){
              if (self.filter(':checked').length < 1)
                 enabled = false;
            } else {
               if((self.attr('value').replace(/ /g,'')=='') || self.hasClass('error'))
                  enabled = false;
            }
        }
        return;
    });

    if (enabled){
        $(elemGroup).find('.nextButton').show(1).next('.btnDisabled').hide(1);
    } else {
        disableNext(elemGroup);
    }
}

function disableNext(elemGroup) {
    $(elemGroup).find('.nextButton').hide(1).next('.btnDisabled').show(1);
}

function checkEnadled(elemGroup) {
    $(elemGroup).find('input.required, textarea.required').keyup(function(){
         enableNext(elemGroup);
    }).filter('[type=checkbox]').change(function(){
         enableNext(elemGroup);
    });
    $(elemGroup).find('select.required').change(function(){
        enableNext(elemGroup);
    })
}


$(function() {
    $("#register, #login, #get_recipe, #get_answer, #forgot, #get_competition, #pre_order").dialog({
        width: 440,
        modal: true,
        autoOpen: false,
        open: function(event, ui) {
                window.setTimeout(function() {
                    $(document).unbind('mousedown.dialog-overlay').unbind('mouseup.dialog-overlay');
                }, 10);
            }

    });
    $( "#messagebox").dialog({
        width: 440,
        modal: true
    });
    $( "#recipepreview").dialog({
        width: 640,
        modal: true,
        autoOpen: false
    });
});

function change_banner(id, pos){
    //$('.pics').css('display','none');
    $('.baner_'+pos+' .pics').slideUp('slow');
    //$('#pics_'+id).css('display','block');
    $('.baner_'+pos+' .pics_'+id).slideDown('slow');
    $('.baner_'+pos+' .knop').removeClass('selected');
    $('.baner_'+pos+' .knop_'+id).addClass('selected');
    window.clearTimeout(timerMulti);
    timerMulti = window.setTimeout(function() { runAutoChange(pos) }, 10000);
    /*$(".baner_"+pos+" .digits").everyTime(10000, function(i) {
        runAutoChange(pos);
    });*/
}

function runAutoChange(pos){
    if($(".baner_"+pos+" .digits .knop").length > 1) {
        el = $(".baner_"+pos+" .digits .selected").next('.knop');
        if(el.length > 0){
            $(".baner_"+pos+" .digits .selected").next('.knop').click();
        }else{
            $(".baner_"+pos+" .knop_1").click();
        }
    }
}
function init(pos){
    timerMulti = window.setTimeout(function() { runAutoChange(pos) }, 10000);
    /*$(".baner_"+pos+" .digits").everyTime(10000, function(i) {
        runAutoChange(pos);
    });*/
}


$(document).ready(function(){
	try{

        if($('.inmess').length) {
            var timerOnce = window.setTimeout("$('.inmess').hide('slow')", 5000);
        }

        $(function() {
            var dates = $( "#varDateFrom, #varDateTo" ).datepicker({
                defaultDate: "+1w",
                changeMonth: true,
                dateFormat: 'yy-mm-dd',
                numberOfMonths: 3,
                onSelect: function( selectedDate ) {
                    var option = this.id == "varDateFrom" ? "minDate" : "maxDate",
                        instance = $( this ).data( "datepicker" ),
                        date = $.datepicker.parseDate(
                            instance.settings.dateFormat ||
                            $.datepicker._defaults.dateFormat,
                            selectedDate, instance.settings );
                    dates.not( this ).datepicker( "option", option, date );
                }
            });
        });
        $(function() {
            var dates = $( "#datepickerf, #datepickerl" ).datepicker({
                defaultDate: "+1w",
                changeMonth: true,
                dateFormat: 'yy-mm-dd',
                numberOfMonths: 3,
                onSelect: function( selectedDate ) {
                    var option = this.id == "datepickerf" ? "minDate" : "maxDate",
                        instance = $( this ).data( "datepicker" ),
                        date = $.datepicker.parseDate(
                            instance.settings.dateFormat ||
                            $.datepicker._defaults.dateFormat,
                            selectedDate, instance.settings );
                    dates.not( this ).datepicker( "option", option, date );
                }
            });
        });
        $(function() {
            $( "#datepickerl, .datepickerl" ).datepicker({ dateFormat: 'yy-mm-dd' });
        });

        $('select.customSelect').width(235).msDropDown({mainCSS:'dd'});
        var i=0;
        $('.men_its').each(function() {
            i++;
            $(this).children('div').addClass('item'+i);
            if($(this).width() > 75) {
                $(this).children('div').css('left', $(this).width()/10+'%');
            }
        });

       $('input:checkbox').checkbox();


            $('#myslidemenu ul li ul').hover(
                function () {
                    $(this).prev().addClass('hovered');
                  },
                  function () {
                    $(this).prev().removeClass('hovered');
                  }
            );

            $('.page_navigation #prevpv').click(function() {
                var ct = $('#varDescription .content').css('top');
                ct = ct.split('px').join('');
                if(parseInt(ct)<0) {
                    $('#varDescription .content').css('top', (parseInt(ct) + 895));
                }
            });
            $('.page_navigation #nextpv').click(function() {
                var ih = $('#varDescription .content .innerC').innerHeight();
                ih = parseInt(-ih);
                var ct = $('#varDescription .content').css('top');
                ct = ct.split('px').join('');
                if((parseInt(ct)-895)>ih) {
                    $('#varDescription .content').css('top', (parseInt(ct) - 895));
                }
            });

	} catch (e){
		alert(e)
	}
})

function thisFormSubmit(obj){
	$(obj).parent().parents('form').submit();
}


