Fixes for AjaxAction to send different header Content-type with $this->json_encode == true and $this->json_encode == false . This includes refactoring of $this->encode to $this->json_encode.
This commit is contained in:
@ -3,22 +3,28 @@
|
||||
* AjaxAction
|
||||
*
|
||||
* @copyright NetMonsters <team@netmonsters.ru>
|
||||
* @link
|
||||
* @link http://netmonsters.ru
|
||||
* @package Majestic
|
||||
* @subpackage face
|
||||
* @since
|
||||
* @version SVN: $Id$
|
||||
* @filesource $URL$
|
||||
* @subpackage app
|
||||
* @since 2011-04-27
|
||||
*/
|
||||
|
||||
/**
|
||||
* базовый класс для всей экшенов выполняющихся по аякс-запросу
|
||||
* Base class for all ajax Actions
|
||||
*/
|
||||
abstract class AjaxAction extends Action
|
||||
{
|
||||
/**
|
||||
* Data to output
|
||||
* @var mixed
|
||||
*/
|
||||
public $data = 1;
|
||||
|
||||
protected $encode = true;
|
||||
/**
|
||||
* Use json_encode
|
||||
* @var bool
|
||||
*/
|
||||
protected $json_encode = true;
|
||||
|
||||
function __construct()
|
||||
{
|
||||
@ -28,10 +34,13 @@ abstract class AjaxAction extends Action
|
||||
|
||||
function fetch()
|
||||
{
|
||||
// header("Content-type: application/json; charset=utf-8");
|
||||
header("Content-type: text/html; charset=utf-8");
|
||||
if ($this->json_encode === true) {
|
||||
header("Content-type: application/json; charset=utf-8");
|
||||
} else {
|
||||
header("Content-type: text/html; charset=utf-8");
|
||||
}
|
||||
header("Cache-Control: no-store, no-cache, must-revalidate");
|
||||
$this->view->assign('data', $this->encode ? json_encode($this->data) : $this->data);
|
||||
$this->view->assign('data', $this->json_encode ? json_encode($this->data) : $this->data);
|
||||
return $this->view->fetch($this->getTemplate());
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user