MP_Addon_Payoff_Callback::calculate()

AJAX request calculate.

Contents


Source Source

File: calculator-mortgage-payoff-add-on/inc/MP_Addon_Payoff_Callback.php

	public function calculate() {

		MP_Callback::check_nonce( $_POST['nonce'], MortgagePlatform::$prefix . 'nonce' );


		$years_remaining           = sanitize_text_field( $_POST['years_remaining'] );
		$original_term           = sanitize_text_field( $_POST['original_mortgage_term'] );
		$original_amount           = sanitize_text_field( $_POST['original_mortgage_amount'] );
		$additional_principal           = sanitize_text_field( $_POST['additional_principal_payment'] );
		$annual_interest_rate           = sanitize_text_field( $_POST['annual_interest_rate'] );
		$amortization = sanitize_text_field( $_POST['amortization'] );

		$response =array();
		if ( $years_remaining == 0 ) {
			$response['error']       = 1;
			$response['error_field'] = 'years_remaining';
			$response['message']     = $this->calculator_settings['years_remaining_error'];
		} elseif ( $original_term == 0 ) {
			$response['error']       = 1;
			$response['error_field'] = 'original_mortgage_term';
			$response['message']     = $this->calculator_settings['original_mortgage_term_error'];
		} elseif ( $years_remaining > $original_term ) {
			$response['error']       = 1;
			$response['error_field'] = 'years_remaining';
			$response['message']     = $this->calculator_settings['calculate_error'];
		} elseif ( $original_amount == 0 ) {
			$response['error']       = 1;
			$response['error_field'] = 'original_mortgage_amount';
			$response['message']     = $this->calculator_settings['original_mortgage_amount_error'];
		} elseif ( $additional_principal == 0 ) {
			$response['error']       = 1;
			$response['error_field'] = 'additional_principal_payment';
			$response['message']     = $this->calculator_settings['additional_principal_payment_error'];
		} elseif ( $annual_interest_rate == 0 ) {
			$response['error']       = 1;
			$response['error_field'] = 'annual_interest_rate';
			$response['message']     = $this->calculator_settings['annual_interest_rate_error'];
		}


		if ( $response['error'] == 1 ) {
			header( "content-type: application/json" );
			echo json_encode( $response );
			wp_die();
		}

		$response = MP_Addon_Payoff_Calculate::calculate( $years_remaining, $original_term, $original_amount, $additional_principal, $annual_interest_rate, $amortization );


		$this->calc_cookies($years_remaining, $original_term, $original_amount, $additional_principal, $annual_interest_rate, $amortization);

		header( 'Access-Control-Allow-Origin: *' );
		wp_send_json( $response );


	}

Top ↑

Changelog Changelog

Changelog
Version Description
1.0.0 Introduced.