Example #1
0
 public function addComments(Request $request)
 {
     $name = $request->name;
     $end = isset($request->end) ? strtotime($request->end) : time();
     $start = isset($request->start) ? strtotime($request->start) : $end - 86400 * 180;
     $site = isset($request->site) ? $request->site : '';
     $mode = isset($request->mode) ? $request->mode : '';
     $f = $s = 0;
     if (empty($name) || empty($site) || empty($mode)) {
         return AJAX::argumentError();
     }
     $file = File::where(array('name' => $name))->first();
     if (empty($file) || empty($file->path)) {
         return AJAX::notExist();
     }
     $list = $this->getFileContents($file->path);
     switch ($mode) {
         case 'insertComments':
             $result = $this->checkCommentsFile($list, 4);
             break;
         case 'insertCommentsWithTid':
             $result = $this->checkCommentsFile($list, 5);
             break;
         default:
             $result['code'] = 500;
             $result['data'] = 'arguments error';
             break;
     }
     if ($result['code'] != 200) {
         return AJAX::badData(array('message' => $result['message']));
     }
     $commentModule = new CommentModule($site);
     foreach ($list as $line) {
         $comment_time = $this->getCommentRandTime($start, $end);
         $res = $commentModule->addCommentByLine($line, $comment_time, $mode);
         if ($res['code'] != 200) {
             Log::error($site . ':' . $name . $res['message']);
             $f++;
             continue;
         }
         $s++;
     }
     return AJAX::success(array('success' => $s, 'fail' => $f));
 }