/*
 * Gift Voucher - Module
 */
jQuery( function ( $ ) {
    var GiftVoucherModule = {
        init : function () {
            this.show_or_hide_for_enable_voucher_code_settings() ;
            this.show_or_hide_for_redeem_voucher() ;
            this.show_or_hide_for_mail_gift_voucher() ;
            $( document ).on( 'change' , '#rs_enable_voucher_code' , this.enable_voucher_code_settings ) ;
            $( document ).on( 'change' , '#rs_show_hide_redeem_voucher' , this.redeem_voucher ) ;
            $( document ).on( 'change' , '#rs_send_mail_gift_voucher' , this.mail_gift_voucher ) ;
        } ,
        enable_voucher_code_settings : function () {
            GiftVoucherModule.show_or_hide_for_enable_voucher_code_settings() ;
        } ,
        show_or_hide_for_enable_voucher_code_settings : function () {
            if ( jQuery( '#rs_enable_voucher_code' ).val() == 'Enable' ) {
                jQuery( '#rs_enable_prefix' ).closest( 'tr' ).show() ;
                jQuery( '#rs_reward_code_type' ).closest( 'tr' ).show() ;

                if ( jQuery( '#rs_reward_code_type' ).val() == 'numeric' ) {
                    jQuery( '#rs_alphabets_from_voucher_code_creation' ).closest( 'tr' ).hide() ;
                    jQuery( '.rs_exclude_characters_code_generation_label' ).closest( 'tr' ).hide() ;
                } else {
                    jQuery( '#rs_alphabets_from_voucher_code_creation' ).closest( 'tr' ).show() ;
                    jQuery( '.rs_exclude_characters_code_generation_label' ).closest( 'tr' ).show() ;
                }
                jQuery( '#rs_reward_code_type' ).change( function () {
                    if ( jQuery( '#rs_reward_code_type' ).val() == 'numeric' ) {
                        jQuery( '#rs_alphabets_from_voucher_code_creation' ).closest( 'tr' ).hide() ;
                        jQuery( '.rs_exclude_characters_code_generation_label' ).closest( 'tr' ).hide() ;
                    } else {
                        jQuery( '#rs_alphabets_from_voucher_code_creation' ).closest( 'tr' ).show() ;
                        jQuery( '.rs_exclude_characters_code_generation_label' ).closest( 'tr' ).show() ;
                    }
                } ) ;

                jQuery( '#rs_voucher_code_length' ).closest( 'tr' ).show() ;
                jQuery( '#rs_voucher_code_to_generate' ).closest( 'tr' ).show() ;
                jQuery( '#rs_voucher_code_user_for' ).closest( 'tr' ).show() ;

                if ( jQuery( '#rs_voucher_code_user_for' ).val() == '1' ) {
                    jQuery( '#rs_voucher_code_usage_limit' ).closest( 'tr' ).hide() ;
                    jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).hide() ;
                } else {
                    jQuery( '#rs_voucher_code_usage_limit' ).closest( 'tr' ).show() ;
                    if ( jQuery( '#rs_voucher_code_usage_limit' ).val() == '1' ) {
                        jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).show() ;
                    } else {
                        jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).hide() ;
                    }
                    jQuery( '#rs_voucher_code_usage_limit' ).change( function () {
                        if ( jQuery( '#rs_voucher_code_usage_limit' ).val() == '1' ) {
                            jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).show() ;
                        } else {
                            jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).hide() ;
                        }
                    } ) ;
                    jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).show() ;
                }
                jQuery( '#rs_voucher_code_user_for' ).change( function () {
                    if ( jQuery( '#rs_voucher_code_user_for' ).val() == '1' ) {
                        jQuery( '#rs_voucher_code_usage_limit' ).closest( 'tr' ).hide() ;
                        jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).hide() ;
                    } else {
                        jQuery( '#rs_voucher_code_usage_limit' ).closest( 'tr' ).show() ;
                        if ( jQuery( '#rs_voucher_code_usage_limit' ).val() == '1' ) {
                            jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).show() ;
                        } else {
                            jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).hide() ;
                        }
                        jQuery( '#rs_voucher_code_usage_limit' ).change( function () {
                            if ( jQuery( '#rs_voucher_code_usage_limit' ).val() == '1' ) {
                                jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).show() ;
                            } else {
                                jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).hide() ;
                            }
                        } ) ;
                        jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).show() ;
                    }
                } ) ;

                jQuery( '#rs_per_voucher_code' ).closest( 'tr' ).show() ;
                jQuery( '#rs_gift_voucher_expiry' ).closest( 'tr' ).show() ;
                jQuery( '#rs_create_Voucher_Codes' ).closest( 'tr' ).show() ;
            } else {
                jQuery( '#rs_enable_prefix' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_reward_code_type' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_voucher_code_length' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_voucher_code_to_generate' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_per_voucher_code' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_voucher_code_user_for' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_gift_voucher_expiry' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_voucher_code_usage_limit_value' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_voucher_code_usage_limit' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_alphabets_from_voucher_code_creation' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_create_Voucher_Codes' ).closest( 'tr' ).hide() ;
            }
        } ,
        redeem_voucher : function () {
            GiftVoucherModule.show_or_hide_for_redeem_voucher() ;
        } ,
        show_or_hide_for_redeem_voucher : function () {
            if ( jQuery( '#rs_show_hide_redeem_voucher' ).val() == '1' ) {
                jQuery( '#rs_redeem_your_gift_voucher_label' ).closest( 'tr' ).show() ;
                jQuery( '#rs_redeem_gift_voucher_button_label' ).closest( 'tr' ).show() ;
                jQuery( '#rs_redeem_voucher_position' ).closest( 'tr' ).show() ;
                jQuery( '#rs_redeem_your_gift_voucher_placeholder' ).closest( 'tr' ).show() ;
            } else {
                jQuery( '#rs_redeem_your_gift_voucher_label' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_redeem_gift_voucher_button_label' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_redeem_voucher_position' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_redeem_your_gift_voucher_placeholder' ).closest( 'tr' ).hide() ;
            }
        } ,
        mail_gift_voucher : function () {
            GiftVoucherModule.show_or_hide_for_mail_gift_voucher() ;
        } ,
        show_or_hide_for_mail_gift_voucher : function () {
            if ( jQuery( '#rs_send_mail_gift_voucher' ).is( ':checked' ) == true ) {
                jQuery( '#rs_email_subject_gift_voucher' ).closest( 'tr' ).show() ;
                jQuery( '#rs_email_message_gift_voucher' ).closest( 'tr' ).show() ;
            } else {
                jQuery( '#rs_email_subject_gift_voucher' ).closest( 'tr' ).hide() ;
                jQuery( '#rs_email_message_gift_voucher' ).closest( 'tr' ).hide() ;
            }
        } ,
    } ;
    GiftVoucherModule.init() ;
} ) ;