예제 #1
0
 public function init(Request $request)
 {
     if (!$request->isXmlHttpRequest() || !$request->isPost()) {
         $this->noAccess();
     }
     $this->post = $request->getPost();
 }
예제 #2
0
 public function render($template = null, $leftWidth = 2, $force = false)
 {
     $template = $template ? 'discussion/helper/' . $template . '/' . $template : $this->getOption('template');
     if ($force || !$this->request->isXmlHttpRequest()) {
         return $this->renderer->render($template, ['discussions' => $this->discussions, 'isArchived' => $this->archived, 'object' => $this->getObject(), 'forum' => $this->getForum(), 'leftWidth' => $leftWidth]);
     } else {
         return '';
     }
 }
예제 #3
0
 /**
  * @param HttpRequest $request
  *
  * @return \Zend\View\Model\ViewModel
  */
 public function build(HttpRequest $request, SmartServiceResult $result, $action)
 {
     $viewModel = null;
     if ($request->isXmlHttpRequest()) {
         $viewModel = new JsonModel();
         $viewModel->setTerminal(true);
     } else {
         $viewModel = new \Zend\View\Model\ViewModel();
         $viewModel->setVariable('entity', $result->getEntity());
         $viewModel->setVariable('form', $result->getForm());
         $viewModel->setVariable('list', $result->getList());
         $viewModel->setTemplate(sprintf($this->getTemplate(), $action));
     }
     return $viewModel;
 }
예제 #4
0
 public function testRequestIsXmlHttpRequest()
 {
     $request = new Request();
     $this->assertFalse($request->isXmlHttpRequest());
     $request = new Request();
     $request->getHeaders()->addHeaderLine('X_REQUESTED_WITH', 'FooBazBar');
     $this->assertFalse($request->isXmlHttpRequest());
     $request = new Request();
     $request->getHeaders()->addHeaderLine('X_REQUESTED_WITH', 'XMLHttpRequest');
     $this->assertTrue($request->isXmlHttpRequest());
 }