Improved the ajax controller.
This commit is contained in:
@ -29,20 +29,29 @@ class ###Component###ControllerAjax extends JControllerLegacy
|
||||
parent::__construct($config);
|
||||
// make sure all json stuff are set
|
||||
JFactory::getDocument()->setMimeEncoding( 'application/json' );
|
||||
JResponse::setHeader('Content-Disposition','attachment;filename="getajax.json"');
|
||||
JResponse::setHeader("Access-Control-Allow-Origin", "*");
|
||||
// get the application
|
||||
$app = JFactory::getApplication();
|
||||
$app->setHeader('Content-Disposition','attachment;filename="getajax.json"');
|
||||
$app->setHeader('Access-Control-Allow-Origin', '*');
|
||||
// load the tasks ###REGISTER_AJAX_TASK###
|
||||
}
|
||||
|
||||
public function ajax()
|
||||
{
|
||||
// get the user for later use
|
||||
$user = JFactory::getUser();
|
||||
// get the input values
|
||||
$jinput = JFactory::getApplication()->input;
|
||||
// check if we should return raw
|
||||
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||
// return to a callback function
|
||||
$callback = $jinput->get('callback', null, 'CMD');
|
||||
// Check Token!
|
||||
$token = JSession::getFormToken();
|
||||
$call_token = $jinput->get('token', 0, 'ALNUM');
|
||||
if($jinput->get($token, 0, 'ALNUM') || $token === $call_token)
|
||||
{
|
||||
// get the task
|
||||
$task = $this->getTask();
|
||||
switch($task)
|
||||
{###AJAX_INPUT_RETURN###
|
||||
@ -50,10 +59,15 @@ class ###Component###ControllerAjax extends JControllerLegacy
|
||||
}
|
||||
else
|
||||
{
|
||||
if($callback = $jinput->get('callback', null, 'CMD'))
|
||||
// return to a callback function
|
||||
if($callback)
|
||||
{
|
||||
echo $callback."(".json_encode(false).");";
|
||||
}
|
||||
elseif($returnRaw)
|
||||
{
|
||||
echo json_encode(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "(".json_encode(false).");";
|
||||
|
@ -29,20 +29,29 @@ class ###Component###ControllerAjax extends JControllerLegacy
|
||||
parent::__construct($config);
|
||||
// make sure all json stuff are set
|
||||
JFactory::getDocument()->setMimeEncoding( 'application/json' );
|
||||
JResponse::setHeader('Content-Disposition','attachment;filename="getajax.json"');
|
||||
JResponse::setHeader("Access-Control-Allow-Origin", "*");
|
||||
// get the application
|
||||
$app = JFactory::getApplication();
|
||||
$app->setHeader('Content-Disposition','attachment;filename="getajax.json"');
|
||||
$app->setHeader('Access-Control-Allow-Origin', '*');
|
||||
// load the tasks ###REGISTER_SITE_AJAX_TASK###
|
||||
}
|
||||
|
||||
public function ajax()
|
||||
{
|
||||
// get the user for later use
|
||||
$user = JFactory::getUser();
|
||||
// get the input values
|
||||
$jinput = JFactory::getApplication()->input;
|
||||
// check if we should return raw
|
||||
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||
// return to a callback function
|
||||
$callback = $jinput->get('callback', null, 'CMD');
|
||||
// Check Token!
|
||||
$token = JSession::getFormToken();
|
||||
$call_token = $jinput->get('token', 0, 'ALNUM');
|
||||
if($jinput->get($token, 0, 'ALNUM') || $token === $call_token)
|
||||
{
|
||||
// get the task
|
||||
$task = $this->getTask();
|
||||
switch($task)
|
||||
{###AJAX_SITE_INPUT_RETURN###
|
||||
@ -50,10 +59,16 @@ class ###Component###ControllerAjax extends JControllerLegacy
|
||||
}
|
||||
else
|
||||
{
|
||||
if($callback = $jinput->get('callback', null, 'CMD'))
|
||||
// return to a callback function
|
||||
if($callback)
|
||||
{
|
||||
echo $callback."(".json_encode(false).");";
|
||||
}
|
||||
// return raw
|
||||
elseif($returnRaw)
|
||||
{
|
||||
echo json_encode(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "(".json_encode(false).");";
|
||||
|
@ -27,8 +27,8 @@ class ###Component###ControllerAjax extends JControllerLegacy
|
||||
parent::__construct($config);
|
||||
// make sure all json stuff are set
|
||||
JFactory::getDocument()->setMimeEncoding( 'application/json' );
|
||||
JResponse::setHeader('Content-Disposition','attachment;filename="getajax.json"');
|
||||
JResponse::setHeader("Access-Control-Allow-Origin", "*");
|
||||
JFactory::getApplication()->setHeader('Content-Disposition','attachment;filename="getajax.json"');
|
||||
JFactory::getApplication()->setHeader("Access-Control-Allow-Origin", "*");
|
||||
// load the tasks
|
||||
$this->registerTask('fieldRequired', 'ajax');
|
||||
}
|
||||
|
@ -60,7 +60,7 @@ class ###Component###ModelAjax extends JModelList
|
||||
$fields = array($name);
|
||||
}
|
||||
}
|
||||
// load the remaining values to seesion
|
||||
// load the remaining values to session
|
||||
if(###Component###Helper::checkArray($fields))
|
||||
{
|
||||
$session->set($form.'_requiredFieldFix', $fields);
|
||||
|
Reference in New Issue
Block a user