Current Path : /home/church/www/ntktesting.com/wp-content/plugins/ninja-forms/includes/Abstracts/ |
Current File : /home/church/www/ntktesting.com/wp-content/plugins/ninja-forms/includes/Abstracts/Controller.php |
<?php if ( ! defined( 'ABSPATH' ) ) exit; abstract class NF_Abstracts_Controller { /** * Data (Misc.) passed back to the client in the Response. * * @var array */ protected $_data = array(); /** * Errors passed back to the client in the Response. * * @var array */ protected $_errors = array(); /** * Debug Messages passed back to the client in the Response. * * @var array */ protected $_debug = array(); /* * PUBLIC METHODS */ /** * NF_Abstracts_Controller constructor. */ public function __construct() { //This section intentionally left blank. } /* * PROTECTED METHODS */ /** * Respond * * A wrapper for the WordPress AJAX response pattern. */ protected function _respond( $data = array() ) { if( empty( $data ) ){ $data = $this->_data; } if( isset( $this->_data['debug'] ) ) { $this->_debug = array_merge( $this->_debug, $this->_data[ 'debug' ] ); } if( isset( $this->_data['errors'] ) && $this->_data[ 'errors' ] ) { $this->_errors = array_merge( $this->_errors, $this->_data[ 'errors' ] ); } // allow for accessing and acting on $data before responding do_action( 'ninja_forms_before_response', $data ); $response = array( 'data' => $data, 'errors' => $this->_errors, 'debug' => $this->_debug ); echo wp_json_encode( $response ); wp_die(); // this is required to terminate immediately and return a proper response } }