public static function process()
{
$specialFilter = new Filter\Special();
$emailFilter = new Filter\Email();
$urlFilter = new Filter\Url();
$htmlFilter = new Filter\Html();
/* process post */
$postArray = ['author' => $specialFilter->sanitize(Request::getPost('author')), 'email' => $emailFilter->sanitize(Request::getPost('email')), 'url' => $urlFilter->sanitize(Request::getPost('url')), 'text' => nl2br($htmlFilter->sanitize(Request::getPost('text'))), 'task' => Request::getPost('task'), 'solution' => Request::getPost('solution')];
/* handle error */
$messageArray = self::_validate($postArray);
if ($messageArray) {
return self::_error(['message' => $messageArray]);
}
/* handle success */
$mailArray = ['author' => $postArray['author'], 'email' => $postArray['email'], 'url' => $postArray['url'], 'text' => $postArray['text']];
/* mail */
if (self::_mail($mailArray)) {
return self::_success();
}
return self::_error(['message' => Language::get('something_wrong')]);
}