// common
$(document).ready(
    function(){
        try{
        $('a.modal').fancybox({
            'padding':15,
            'imageScale': true,
            'zoomSpeedIn': 300,
            'zoomSpeedOut': 300,
            'hideOnContentClick': true
        });
        }catch(e){/*Nothing*/}
        $('.hideIfNotJavaScript').show();
        $('.showIfNotJavaScript').hide();

        // Contacts
        $('.contact.template').hide();
        $('.contact .remove').click(removeContact);
        $('.contactContainer .add').click(addContact);
    }
);

// Remove contact from form
function removeContact(event){
    var target = $(event.currentTarget);
    target.parents('.contactContainer').append('<input type="hidden" name="'+target.attr('name')+'" value="true"/>');
    target.parents('.contact').detach();
    return false;
}

// Add contact
function addContact(event){
    var target = $(event.currentTarget);
    var container = target.parents('.contactContainer');
    var template = container.find('.template');
    var clone = template.clone().removeClass('template').show();
    target.before(clone);
    clone.find('.remove').click(removeContact);
    var ind = template.find('[name=contactIndex]').val();
    ind++;
    template.find('[name=contactIndex]').val(ind);
    template.find('*').each(function(){
        var attrVal = $(this).attr('name');
        if(attrVal){
            attrVal = attrVal.replace(/\d+/, ind);
            $(this).attr('id', attrVal);
            $(this).attr('name', attrVal);
        }
    });

    return false;
}

// Subscription
function e_focus(el, val) {
    if (el.value == val) {
        el.value = '';
    }
    el.className = new String(el.className).replace(' empty', '').replace(' error', '');
}

function e_blur(el, val) {
    if ((el.value == val) || (el.value == '')) {
        el.value = val;
        el.className += ' empty';
    }
}

function subscribe(url) {
    if ($('#s_email').val() != null && $('#s_email').val().length > 0 && $('#s_email').val()!='e-mail') {
        $.post(
            url,
            {ajax:true,mail:$('#s_email').val()},
            function(data) {
                if (data.error) {
                    $('#s_email').addClass('error');
                    $('#subscription_errors').html(data.message);
                } else {
                    $('#subscription_form').html(data.message);
                }
            },
            'json'
        );
    } else {
        alert('Заполните e-mail!');
    }
    return false;
}

// Article comments
function saveComment(base, entityId, entity){
    if($('#comment_text').val() == null || $('#comment_text').val().length<=0){
        alert('Заполните текст комментария');
        return false;
    }

    var data =
            'ajax=true&entityName='+entity+'&entity.id='+entityId+
            '&name='+encodeURIComponent($('#comment_name').val())+
            '&mail='+encodeURIComponent($('#comment_mail').val())+
            '&subject='+encodeURIComponent($('#comment_subject').val())+
            '&text='+encodeURIComponent($('#comment_text').val())+
            '&captchaCode='+encodeURIComponent($('#frm_captcha').val())+
            '&captchaHash='+encodeURIComponent($('#captchaHash').val())+
            '&territory='+encodeURIComponent($('#frm_territory').val());
    $.post(
        base + '/comment/save',
        data,
        function(data){
            $('#comment_message').html(data);
            if($('#comment_error').size()<=0){
                $('.clearable').val('');
            }
            captchaReload1(base, cbs, '');
        }
    );
    return false;
}

// comment button state
function cbs(){
    var form = document.forms.commentForm;
    if(
            form.captchaCode.value.length == 4
                    && form.text.value.length>0
                    && form.name.value.length>0
                    && form.mail.value.length>0
                    && form.territory.value!='null'
            ) {
        $('#commentButton').removeAttr('disabled');
    } else{
        $('#commentButton').attr('disabled', 'disabled');
    }
}

// Polls
function poll(base, pollId){
    if($("input[name='variants.id']:checked").length>0){
        var data = 'ajax=true&poll.id='+pollId;
        $("input[name='variants.id']:checked").each(function(){
            data = data+'&variants.id=' + $(this).val();
        });
        data = data+'&answer=' + encodeURIComponent($('#poll_answer').val());
        $.post(
            base+'/poll/vote',
            data,
            function(data){
                $('#poll_area').html(data);
            }
        );
    }else{
        alert('Выберите один из вариантов ответа!');
    }
    return false;
}

// Questions
function qshow(id){
    $('#answer_'+id).show();
    $('#show_link_'+id).hide();
    $('#hide_link_'+id).show();
    return false;
}

function qhide(id){
    $('#answer_'+id).hide();
    $('#show_link_'+id).show();
    $('#hide_link_'+id).hide();
    return false;
}

// question button state
function qbs(){
    var form = document.forms.questionForm;
    if( (form.allowRules.checked || $('#allowRules').attr('type')=='hidden')
        && form.captchaCode.value.length == 4
        && form.fio.value.length>0
        && form.mail.value.length>0
        && form.text.value.length>0
    ) {
        $('#questionButton').removeAttr('disabled');
    } else{
        $('#questionButton').attr('disabled', 'disabled');
    }
}

function saveReply(base, entityId, entity, id){
    if($('#comment_text'+id).val() == null || $('#comment_text'+id).val().length<=0){
        alert('Заполните текст комментария');
        return false; }

    var data =
            'ajax=true&entityName='+entity+'&entity.id='+entityId+'&parentId='+id+
            '&name='+encodeURIComponent($('#comment_name'+id).val())+
            '&mail='+encodeURIComponent($('#comment_mail'+id).val())+
            '&subject='+encodeURIComponent($('#comment_subject'+id).val())+
            '&text='+encodeURIComponent($('#comment_text'+id).val())+
            '&captchaCode='+encodeURIComponent($('#frm_captcha'+id).val())+
            '&captchaHash='+encodeURIComponent($('#captchaHash'+id).val())+
            '&territory='+encodeURIComponent($('#frm_territory'+id).val());
    $.post(
        base + '/comment/save',
        data,
        function(data){
            $('#comment_message'+id).html(data);
            if($('#comment_error').size()<=0){
                $('.clearable').val('');
            }
            captchaReload1(base, cbs, id);
        }
    );
    return false;
}
//показывает весь текст жалобы
function showComplaint(a){
    var p = $(a).parent();
    $('span.dots, a.showFullComplaint',p).hide();
    $('span.secondPartComplaint, a.hideFullComplaint',p).show();
    return false;
}
//прячт весь текст жалобы
function hideComplaint(a){
    var p = $(a).parent();
    $('span.secondPartComplaint, a.hideFullComplaint',p).hide();
    $('span.dots, a.showFullComplaint',p).show();
    return false;
}
// complaint button state
function cmbs(){
    var form = $("#complaintForm");
    if(
         $("#frm_territory",form).val() != 'null'
            && $("#frm_activity",form).val() != 'null'
            && $("#frm_department",form).val() != 'null'
            && $("#frm_text",form).val().length > 0
            && $("#frm_captcha",form).val().length == 4
            && $("#allowInfo:checked",form).val() == 'true'
            ) {
        $('#complaintButton').removeAttr('disabled');
    } else{
        $('#complaintButton').attr('disabled', 'disabled');
    }
}
