[ Mini Kiebo ]
Server: Windows NT DESKTOP-5B8S0D4 6.2 build 9200 (Windows 8 Professional Edition) i586
Path:
D:
/
Backup
/
05122024
/
htdocs
/
jurnal-kesmas
/
baru
/
lib
/
pkp
/
classes
/
linkAction
/
request
/
[
Home
]
File: AjaxAction.php
<?php /** * @file classes/linkAction/request/AjaxAction.php * * Copyright (c) 2014-2021 Simon Fraser University * Copyright (c) 2000-2021 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @class AjaxAction * * @ingroup linkAction_request * * @brief Class defining an AJAX action. */ namespace PKP\linkAction\request; use APP\core\Application; class AjaxAction extends LinkActionRequest { public const AJAX_REQUEST_TYPE_GET = 'get'; public const AJAX_REQUEST_TYPE_POST = 'post'; /** @var string */ public $_remoteAction; /** @var string */ public $_requestType; /** @var array */ public $_requestData; /** * Constructor * * @param string $remoteAction The target URL. * @param string $requestType One of the AJAX_REQUEST_TYPE_* constants. * @param array $requestData Any request data (e.g. POST params) to be sent. */ public function __construct($remoteAction, $requestType = self::AJAX_REQUEST_TYPE_POST, $requestData = []) { parent::__construct(); $this->_remoteAction = $remoteAction; $this->_requestType = $requestType; $this->_requestData = array_merge($requestData, [ 'csrfToken' => Application::get()->getRequest()->getSession()->getCSRFToken(), ]); } // // Getters and Setters // /** * Get the target URL. * * @return string */ public function getRemoteAction() { return $this->_remoteAction; } /** * Get the request type. * * @return string */ public function getRequestType() { return $this->_requestType; } /** * Get the request data. * * @return array */ public function getRequestData() { return $this->_requestData; } // // Overridden protected methods from LinkActionRequest // /** * @see LinkActionRequest::getJSLinkActionRequest() */ public function getJSLinkActionRequest() { return '$.pkp.classes.linkAction.AjaxRequest'; } /** * @see LinkActionRequest::getLocalizedOptions() */ public function getLocalizedOptions() { return [ 'url' => $this->getRemoteAction(), 'requestType' => $this->getRequestType(), 'data' => $this->getRequestData(), ]; } } if (!PKP_STRICT_MODE) { class_alias('\PKP\linkAction\request\AjaxAction', '\AjaxAction'); foreach ([ 'AJAX_REQUEST_TYPE_GET', 'AJAX_REQUEST_TYPE_POST', ] as $constantName) { define($constantName, constant('\AjaxAction::' . $constantName)); } }