/** * 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; }