/**
 * Alpha Post Like
 *
 * @package Alpha FrameWork
 * @version 4.0
 */

'use strict';

window.theme || (window.theme = {});

(function ($) {

    var likePost = {
        loading: false,
        init: function () {
            theme.$('body')
                .on('click', '.vote-link', this.getLike);
        },
        getLike: function (e) {
            e.preventDefault();

            var $this = $(this),
                count = $this.data('count'),
                post_id = $this.data('id');

            if (likePost.loading) {
                return;
            }

            likePost.loading = true;

            $.ajax({
                type: 'POST',
                dataType: 'json',
                url: alpha_vars.ajax_url,
                data: {
                    action: 'alpha_like_post',
                    nonce: alpha_vars.nonce,
                    post_id: post_id
                },
                success: function (response) {
                    likePost.loading = false;
                    $this.attr('data-count', response.likes);
                    if ($this.find('.like-count').length) {
                        var el = $this.find('.like-count');
                        el.html(response.likes);
                    } else {
                        $this.html(response.likes);
                    }

                    if ($this.hasClass('like')) {
                        $this.removeClass('like').addClass('dislike');
                    } else {
                        $this.removeClass('dislike').addClass('like');
                    }
                    var $type_builder_icon = $this.find('.alpha-tb-icon'),
                        other_cls = $this.attr('data-other_cls');
                    if ($type_builder_icon.length && other_cls) {
                        $this.attr('data-other_cls', $type_builder_icon.attr('class'));
                        $type_builder_icon.attr('class', other_cls);
                    }
                }
            });

        }
    }



    theme.$window.on('alpha_complete', function (e) {
        likePost.init();
    });
    theme.$window.on('keydown', function (event) {
        if (event.keyCode == 13) {
            event.preventDefault();
        }
    });
})(jQuery);
