PHP 8.2.31
Preview: tokenization-form.js Size: 3.75 KB
/home/nshryvcy/taramarriagebureau.com/wp-content/plugins/woocommerce/assets/js/frontend/tokenization-form.js

/*global wc_tokenization_form_params */
jQuery( function( $ ) {

	/**
	 * WCTokenizationForm class.
	 */
	var TokenizationForm = function( $target ) {
		this.$target   = $target;
		this.$formWrap = $target.closest( '.payment_box' );

		// Params.
		this.params = $.extend( {}, {
			'is_registration_required': false,
			'is_logged_in'            : false
		}, wc_tokenization_form_params );

		// Bind functions to this.
		this.onDisplay             = this.onDisplay.bind( this );
		this.hideForm              = this.hideForm.bind( this );
		this.showForm              = this.showForm.bind( this );
		this.showSaveNewCheckbox   = this.showSaveNewCheckbox.bind( this );
		this.hideSaveNewCheckbox   = this.hideSaveNewCheckbox.bind( this );

		// When a radio button is changed, make sure to show/hide our new CC info area.
		this.$target.on(
			'click change',
			':input.woocommerce-SavedPaymentMethods-tokenInput',
			{ tokenizationForm: this },
			this.onTokenChange
		);

		// OR if create account is checked.
		$( 'input#createaccount' ).on( 'change', { tokenizationForm: this }, this.onCreateAccountChange );

		// First display.
		this.onDisplay();
	};

	TokenizationForm.prototype.onDisplay = function() {
		// Make sure a radio button is selected if there is no is_default for this payment method..
		if ( 0 === $( ':input.woocommerce-SavedPaymentMethods-tokenInput:checked', this.$target ).length ) {
			$( ':input.woocommerce-SavedPaymentMethods-tokenInput:last', this.$target ).prop( 'checked', true );
		}

		// Don't show the "use new" radio button if we only have one method..
		if ( 0 === this.$target.data( 'count' ) ) {
			$( '.woocommerce-SavedPaymentMethods-new', this.$target ).remove();
		}

		// Hide "save card" if "Create Account" is not checked and registration is not forced.
		var hasCreateAccountCheckbox = 0 < $( 'input#createaccount' ).length,
			createAccount            = hasCreateAccountCheckbox && $( 'input#createaccount' ).is( ':checked' );

		if ( createAccount || this.params.is_logged_in || this.params.is_registration_required ) {
			this.showSaveNewCheckbox();
		} else {
			this.hideSaveNewCheckbox();
		}

		// Trigger change event
		$( ':input.woocommerce-SavedPaymentMethods-tokenInput:checked', this.$target ).trigger( 'change' );
	};

	TokenizationForm.prototype.onTokenChange = function( event ) {
		if ( 'new' === $( this ).val() ) {
			event.data.tokenizationForm.showForm();
			event.data.tokenizationForm.showSaveNewCheckbox();
		} else {
			event.data.tokenizationForm.hideForm();
			event.data.tokenizationForm.hideSaveNewCheckbox();
		}
	};

	TokenizationForm.prototype.onCreateAccountChange = function( event ) {
		if ( $( this ).is( ':checked' ) ) {
			event.data.tokenizationForm.showSaveNewCheckbox();
		} else {
			event.data.tokenizationForm.hideSaveNewCheckbox();
		}
	};

	TokenizationForm.prototype.hideForm = function() {
		$( '.wc-payment-form', this.$formWrap ).hide();
	};

	TokenizationForm.prototype.showForm = function() {
		$( '.wc-payment-form', this.$formWrap ).show();
	};

	TokenizationForm.prototype.showSaveNewCheckbox = function() {
		$( '.woocommerce-SavedPaymentMethods-saveNew', this.$formWrap ).show();
	};

	TokenizationForm.prototype.hideSaveNewCheckbox = function() {
		$( '.woocommerce-SavedPaymentMethods-saveNew', this.$formWrap ).hide();
	};

	/**
	 * Function to call wc_product_gallery on jquery selector.
	 */
	$.fn.wc_tokenization_form = function( args ) {
		new TokenizationForm( this, args );
		return this;
	};

	/**
	 * Initialize.
	 */
	$( document.body ).on( 'updated_checkout wc-credit-card-form-init', function() {
		// Loop over gateways with saved payment methods
		var $saved_payment_methods = $( 'ul.woocommerce-SavedPaymentMethods' );

		$saved_payment_methods.each( function() {
			$( this ).wc_tokenization_form();
		} );
	} );
} );

Directory Contents

Dirs: 0 × Files: 38

Name Size Perms Modified Actions
712 B lrw-r--r-- 2026-03-03 06:25:14
Edit Download
179 B lrw-r--r-- 2026-03-03 06:25:14
Edit Download
1.38 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
905 B lrw-r--r-- 2026-03-03 06:25:14
Edit Download
29.54 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
14.41 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
8.22 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
3.94 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
4.93 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
2.69 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
5.51 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
2.87 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
19.25 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
9.10 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
30.03 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
17.14 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
6.22 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
3.41 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
588 B lrw-r--r-- 2026-03-03 06:25:14
Edit Download
518 B lrw-r--r-- 2026-03-03 06:25:14
Edit Download
3.75 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
1.26 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
159 B lrw-r--r-- 2026-03-03 06:25:14
Edit Download
132 B lrw-r--r-- 2026-03-03 06:25:14
Edit Download
6.54 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
2.30 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
4.12 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
2.14 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
2.99 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
2.09 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
15.74 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
9.23 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
3.75 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
2.21 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
6.36 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
3.71 KB lrw-r--r-- 2026-03-03 06:25:14
Edit Download
727 B lrw-r--r-- 2026-03-03 06:25:14
Edit Download
435 B lrw-r--r-- 2026-03-03 06:25:14
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).