示例#1
0
 /**
  * Add twig extended filters
  */
 protected function addFilters()
 {
     // Translate
     $filter = new \Twig_SimpleFilter('T', function ($val, $param = [], $domain = 'messages', $locale = null) {
         return T($val, $param, $domain, $locale);
     });
     $this->twig->addFilter($filter);
     // Translate case insensitive
     $filter = new \Twig_SimpleFilter('TI', function ($val, $param = [], $domain = 'messages', $locale = null) {
         return TI($val, $param, $domain, $locale);
     });
     $this->twig->addFilter($filter);
     // Translate array
     $filter = new \Twig_SimpleFilter('TA', function (array $val, $param = [], $domain = 'messages', $locale = null) {
         return TA($val, $param, $domain, $locale);
     });
     $this->twig->addFilter($filter);
     // Translate array case insensitive
     $filter = new \Twig_SimpleFilter('TAI', function (array $val, $param = [], $domain = 'messages', $locale = null) {
         return TAI($val, $param, $domain, $locale);
     });
     $this->twig->addFilter($filter);
     // json_encode
     $filter = new \Twig_SimpleFilter('J', function ($obj, $options = JSON_UNESCAPED_UNICODE) {
         return json_encode($obj, $options);
     }, ['is_safe' => ['html']]);
     $this->twig->addFilter($filter);
     // markdown
     $filter = new \Twig_SimpleFilter('M', function ($text) {
         $md = new \Parsedown();
         return $md->text($text);
     }, ['is_safe' => ['html']]);
     $this->twig->addFilter($filter);
     // format url
     $filter = new \Twig_SimpleFilter('U', function ($url, $prefix = '') {
         return U($url, $prefix);
     });
     $this->twig->addFilter($filter);
 }
 /**
  * Destroy item.
  * Method Post
  * @param $id
  * @return mixed
  */
 public function destroy($id)
 {
     if (self::getRequest()->checkMethod('DELETE')) {
         $data = $this->deleteResource($id);
         if ($data instanceof Message) {
             return self::getResponse()->setResType('json')->setResCode(200)->setData(TA($data->toApiArray()))->send();
         } elseif ($data) {
             return self::getResponse()->setResType('json')->setResCode(204)->setData($data)->send();
         } else {
             return self::getResponse()->setResType('json')->setResCode(500)->setData(TA(Message::messageList(1)->toApiArray()))->send();
         }
     } else {
         \Flight::redirect(U('405'));
     }
     return false;
 }