HEX
Server: Apache
System: Linux pdx1-shared-a2-04 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: dh_hwg2wc (6369923)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: /home/dh_hwg2wc/fnaluxury.com/wp-content/themes/houzez/js/admin/houzez-admin-ajax.js
/**
 * Created by waqasriaz on 22/06/16.
 */
jQuery(document).ready(function ($) {
    "use strict";

    var ajaxurl = houzez_admin_vars.ajaxurl;
    var paid_text = houzez_admin_vars.paid_status;
    var nonce = houzez_admin_vars.nonce;
    var install_now = houzez_admin_vars.install_now;
    var installing = houzez_admin_vars.installing;
    var installed = houzez_admin_vars.installed;
    var activate_now = houzez_admin_vars.activate_now;
    var activating = houzez_admin_vars.activating;
    var activated = houzez_admin_vars.activated;
    var active = houzez_admin_vars.active;
    var failed = houzez_admin_vars.failed;

    /*--------------------------------------------------------------
    * Install plugin
    * ------------------------------------------------------------*/
    function houzez_install_plugin($current_btn) {
        var $button = $current_btn;
        var plugin_slug    = $current_btn.data('slug');
        var plugin_source  = $current_btn.data('source');
        var plugin_file    = $current_btn.data('file');

        jQuery.ajax({
            type: 'POST',
            dataType: 'json',
            url: ajaxurl,
            data: {
                'action'        : 'houzez_plugin_installation',
                'plugin_slug'   : plugin_slug,
                'plugin_source' : plugin_source,
                'plugin_file'   : plugin_file,
                _ajax_nonce     : nonce
            },
            beforeSend: function( ) {
                $button.addClass('updating-message');
                $button.text(installing);
                
            },
            complete: function(){
                $button.removeClass('updating-message');
            },
            success: function (res) {
            
                if (res.success) {
                    $button.addClass('updated-message');
                    $button.text(installed);

                    setTimeout(function () {

                        $button.removeClass('updated-message');
                        $button.text(activate_now).addClass('houzez-activate-btn').removeClass('houzez-install-btn');

                    }, 900);

                } else {

                    $button.text(failed);
                    setTimeout(function () {
                        $button.text(install_now);
                    }, 900);
                }

            },
            error: function (errorThrown) {}
        });
    }
    

    /*--------------------------------------------------------------
    * Activate plugin
    * ------------------------------------------------------------*/
    function houzez_activate($current_btn) {
        
        var $button = $current_btn;
        var plugin_file    = $current_btn.data('file');

        jQuery.ajax({
            type: 'POST',
            dataType: 'json',
            url: ajaxurl,
            data: {
                'action'        : 'houzez_plugin_activate',
                'plugin_file'   : plugin_file,
                _ajax_nonce     : nonce
            },
            beforeSend: function( ) {
                $button.addClass('updating-message');
                $button.text(activating);
            },
            complete: function(){
                $button.removeClass('updating-message');
            },
            success: function (res) {

                if (res.success) {
                    $button.addClass('updated-message');
                    $button.text(activated);

                    setTimeout(function () {

                        $button.removeClass('updated-message');
                        $button.text(active).addClass('button-disabled').removeClass('houzez-activate-btn');

                    }, 900);

                } else {

                    $button.text(failed);
                    setTimeout(function () {
                        $button.text(activate_now);
                    }, 900);
                }

            },
            error: function (errorThrown) {}
        });

    }


    $('.houzez-plugin-js').on('click', function(e) {
        e.preventDefault();
        var $clicked_btn = $(this);

        if( $clicked_btn.hasClass('houzez-install-btn') ) {

            houzez_install_plugin($clicked_btn);

        } else if( $clicked_btn.hasClass('houzez-activate-btn') ) {
            houzez_activate($clicked_btn);
        }

    });


    /*--------------------------------------------------------------
    * Feedback
    * ------------------------------------------------------------*/
    $('#houzez-feedback-submit').on('click', function(e) {
        e.preventDefault();

        var $button = $(this);
        var button_text = $button.text();
        var form_messages = $('#form-messages');
        var email = $('#houzez_feedback_email').val();
        var email_subject = $('#houzez_feedback_subject').val();
        var message = $('#houzez_feedback_message').val();
        var feedback_nonce = $('#houzez_feedback_nonce').val();

        if( !email ) {
            form_messages.html('<span class="error">Please provide email address.</span>');
        }
        else if( !email_subject ) {
            form_messages.html('<span class="error">Please select subject.</span>');
        }
        else if( !message ) {
            form_messages.html('<span class="error">Please enter message.</span>');

        } else {

            form_messages.html('');

            jQuery.ajax({
                type: 'POST',
                dataType: 'json',
                url: ajaxurl,
                data: {
                    'action'         : 'houzez_feedback',
                    'email'          : email,
                    'subject'        : email_subject,
                    'message'        : message,
                    'feedback_nonce' : feedback_nonce
                },
                beforeSend: function( ) {
                    $button.addClass('updating-message');
                },
                complete: function(){
                    $button.removeClass('updating-message');
                },
                success: function (response) {

                    if (response.success) {
                        document.getElementById("admin-houzez-form").reset();
                        form_messages.html('<span class="success">'+response.msg+'</span>');

                    } else {
                        form_messages.html('<span class="error">'+response.msg+'</span>');
                    }

                    setTimeout(function () {
                        form_messages.html('');
                    }, 2500);

                },
                error: function (errorThrown) {}
            });

        }

    });

    /*--------------------------------------------------------------
    * Verify Purchase
    * ------------------------------------------------------------*/
    $('#houzez-purchase-code').on('click', function(e) {
        e.preventDefault();

        var $button = $(this);
        var button_text = $button.text();
        var form_messages = $('#form-messages');
        var item_purchase_code = $('#item_purchase_code').val();
        var nonce = $('#envato_api_nonce_field').val();

        if( !item_purchase_code ) {
            form_messages.html('<span class="error">Enter valid purchase code..</span>');

        } else {

            form_messages.html('');

            jQuery.ajax({
                type: 'POST',
                dataType: 'json',
                url: ajaxurl,
                data: {
                    'action'             : 'houzez_verify_purchase',
                    'item_purchase_code' : item_purchase_code,
                    'nonce'              : nonce
                },
                beforeSend: function( ) {
                    $button.addClass('updating-message');
                },
                complete: function(){
                    $button.removeClass('updating-message');
                },
                success: function (response) {

                    if (response.success) {
                        document.getElementById("admin-houzez-form").reset();
                        form_messages.html('<span class="success">'+response.msg+'</span>');
                        location.reload();
                    } else {
                        form_messages.html('<span class="error">'+response.msg+'</span>');
                    }

                    setTimeout(function () {
                        form_messages.html('');
                    }, 2500);

                },
                error: function (errorThrown) {}
            });

        }

    });

    $('#houzez-deactivate-code').on('click', function(e) {
        e.preventDefault();

        var $button = $(this);
        var button_text = $button.text();
        var form_messages = $('#form-messages');
        var nonce = $('#envato_api_nonce_field').val();

        form_messages.html('');

        jQuery.ajax({
            type: 'POST',
            dataType: 'json',
            url: ajaxurl,
            data: {
                'action'             : 'houzez_deactivate_purchase',
                'nonce'              : nonce
            },
            beforeSend: function( ) {
                $button.addClass('updating-message');
            },
            complete: function(){
                $button.removeClass('updating-message');
            },
            success: function (response) {

                if (response.success) {
                    document.getElementById("admin-houzez-form").reset();
                    form_messages.html('<span class="success">'+response.msg+'</span>');
                    location.reload();
                } else {
                    form_messages.html('<span class="error">'+response.msg+'</span>');
                }

                setTimeout(function () {
                    form_messages.html('');
                }, 2500);

            },
            error: function (errorThrown) {}
        });

    });
    

    $("#fave_listing_template .inside .rwmb-meta-box > div:gt(0):lt(2)").wrapAll('<div id="only_for_listings_templates">');

    $("#only_for_listings_templates > div:gt(0):lt(1)").wrapAll('<div id="listing_tabs">');

    $('#fave_listings_tabs').on('change', function() {
        checkTabs();
    });
    function checkTabs() { 
        var tabs = jQuery('#fave_listings_tabs').val();

        if( tabs == 'enable' ) {
            jQuery('#listing_tabs').show();
        } else {
            jQuery('#listing_tabs').hide();
        }
    }

    jQuery(window).on('load', function(){ 
        checkTabs();
    });

    $('#activate_purchase_listing').on('click', function(){
        var itemID, invoiceID, purchaseType;

        itemID       = $(this).attr('data-item');
        invoiceID    = $(this).attr('data-invoice');
        purchaseType = $(this).attr('data-purchaseType');

        jQuery.ajax({
            type: 'POST',
            url: ajaxurl,
            data: {
                'action'        : 'houzez_activate_purchase_listing',
                'item_id'       : itemID,
                'invoice_id'    : invoiceID,
                'purchase_type' : purchaseType

            },
            beforeSend: function( ) {
                $(this).find('.houzez-loader-js').addClass('loader-show');
            },
            complete: function(){
                $(this).find('.houzez-loader-js').removeClass('loader-show');
            },
            success: function (data) {
                jQuery("#activate_purchase_listing").remove();
                jQuery("#houzez_invoice_payment_status .fave_admin_label").removeClass('label-red');
                jQuery("#houzez_invoice_payment_status .fave_admin_label").addClass('label-green');
                jQuery("#houzez_invoice_payment_status .fave_admin_label").empty().html(paid_text);

            },
            error: function (errorThrown) {}
        });

    });

    $('#activate_package').on('click', function(){
        var itemID, invoiceID;

        itemID       = $(this).attr('data-item');
        invoiceID    = $(this).attr('data-invoice');

        jQuery.ajax({
            type: 'POST',
            url: ajaxurl,
            data: {
                'action'     : 'houzez_activate_pack_purchase',
                'item_id'    : itemID,
                'invoice_id' : invoiceID

            },
            beforeSend: function( ) {
                $(this).find('.houzez-loader-js').addClass('loader-show');
            },
            complete: function(){
                $(this).find('.houzez-loader-js').removeClass('loader-show');
            },
            success: function (data) {
                jQuery("#activate_package").remove();
                jQuery("#houzez_invoice_payment_status .fave_admin_label").removeClass('label-red');
                jQuery("#houzez_invoice_payment_status .fave_admin_label").addClass('label-green');
                jQuery("#houzez_invoice_payment_status .fave_admin_label").empty().html(paid_text);

            },
            error: function (errorThrown) {}
        });

    });

    $(document).ready(function ($) {
    
        $('#specific_sidebar').on('change', function(){
            checkSidebar();
        });
        
        function checkSidebar() {
            var specific_sidebar = jQuery('#specific_sidebar').val();
            
            if( specific_sidebar == 'yes' ) {
                jQuery('#houzez_selected_sidebar').stop(true,true).fadeIn(500);
            } else {
                jQuery('#houzez_selected_sidebar').hide();
            }
        }


        jQuery(window).load(function(){ 
            checkSidebar();
        });
        
    });

});