public function a($_act = null)
 {
     switch ($_act) {
         case 'news':
             if (role_check()) {
                 if (is_post()) {
                     $news = new \app\models\News();
                     $this->loadHelper('Validator');
                     if ($news->countNews() < 15) {
                         $data = ['title' => strip_tags(validate('required', 'title')), 'content' => validate('required', 'content')];
                         if (validator($data)) {
                             $news->createNews($data);
                             cache_forgot('p.getJson.news.' . user('major'));
                         }
                     }
                     return redirect('');
                 } else {
                     return $this->view('createNews');
                 }
             }
             return redirect('back');
             break;
         case 'know':
             if (is_post()) {
                 $this->loadHelper('Validator');
                 $id = validate('required', 'token');
                 if (!is_null($id)) {
                     $id = base64_decode($id);
                     if (preg_match('/^[0-9]+$/', $id)) {
                         $data = cache_remember('p.n.' . $id, function () use($id) {
                             $news = new \app\models\News();
                             $data = $news->getNews($id);
                             if (!empty($data)) {
                                 return $data;
                             }
                             return false;
                         });
                         if (!in_array(auth('id'), explode(',', $data['readIn']))) {
                             $news = new \app\models\News();
                             $progress = $data['readIn'] === '' ? auth('id') . ',' : $data['readIn'] . auth('id') . ',';
                             if ($news->addKnow($id, ['readIn' => $progress])) {
                                 echo '1';
                                 cache_forgot('p.n.' . $id);
                                 cache_forgot('p.getJson.news.' . user('major'));
                                 return;
                             }
                         }
                     }
                 }
             }
             echo '0';
             return;
             break;
     }
 }