public function getCacheBasic() { $data = get(); $default = array('clear_cache' => 0); extract(array_merge($default, $data)); $cache_id = 'dln_category'; if (!empty($clear_cache)) { Cache::forget($cache_id); } if (!Cache::has($cache_id)) { $category = FbCategory::where('status', '=', true)->select(DB::raw('id, name, description'))->orderBy('name', 'ASC')->get()->toArray(); Cache::put($cache_id, json_encode($category), DLN_CACHE_CATEGORY); } else { $category = json_decode(Cache::get($cache_id)); } $cache_id = 'dln_pages'; if (!empty($clear_cache)) { Cache::forget($cache_id); } if (!Cache::has($cache_id)) { $page = FbPage::where('status', '=', true)->select(DB::raw('id, name, fb_id, category_id, like_count, talking_about'))->orderBy('like_count', 'DESC')->get()->toArray(); Cache::put($cache_id, json_encode($page), DLN_CACHE_PAGE); } else { $page = json_decode(Cache::get($cache_id)); } $result = new \stdClass(); $result->category = $category; $result->page = $page; return Response::json(array('status' => 'success', 'data' => $result), 200); }
public function getSpamCommentPage() { $record = FbPage::whereRaw('status = ? AND crawl_fb = ?', array(true, false))->first(); if (!$record) { FbPage::where('crawl_fb', '=', true)->update(['crawl_fb' => false]); $record = FbPage::whereRaw('status = ? AND crawl_fb = ?', array(true, false))->first(); } if (!empty($record->fb_id)) { // Get post of current page //$records = FbFeed::whereRaw('status = ? AND page_id = ? AND per_day = CURDATE() AND comment_count > ? AND type = ? AND spam IS NULL', [true, $record->id, LIMIT_COMMENT_COUNT, 'link', null]) $feeds = FbFeed::whereRaw('status = ? AND page_id = ? AND DATE(created_at) = CURDATE() AND comment_count > ? AND type = ? AND spam IS NULL', [true, $record->id, LIMIT_COMMENT_COUNT, 'link'])->select(DB::raw('id, fb_id, fb_link, name, message, picture, page_id, category_id, like_count, comment_count, share_count, type, source, object_id, created_at, DATE(created_at) AS per_day'))->orderBy('per_day', 'DESC')->orderBy('comment_count', 'DESC')->take(10)->get(); if (count($feeds) >= 4) { // Get hot news //$feeds = FbFeed::getHotFeeds($record->id, 2); /*if (count($feeds)) { foreach ( $records as $record ) { if ($record->fb_id != ) { HelperNews::postCommentToFB($record->fb_id, $record->link, $record->name); } } }*/ $last = count($feeds) - 1; if ($last >= 1) { foreach ($feeds as $i => $feed) { if ($last - $i != $i) { $feed->spam = HelperNews::postCommentToFB($feed->fb_id, $feeds[$last - $i]->fb_link, $feeds[$last - $i]->name); $feed->save(); $record->crawl_fb = true; $record->save(); } } } } } return Response::json(array('status' => 'success', 'data' => $feeds), 200); }