Ejemplo n.º 1
0
 /**
  * Get posts for jqgrid
  * @return json
  */
 public function postPosts($feed_id)
 {
     User::onlyHas('feedpost-view');
     Session::put('feed_id', $feed_id);
     $jqgrid = new jQgrid(Post::getTableName());
     $jqgrid->use_populate_count = true;
     echo $jqgrid->populate(function ($start, $limit) {
         $feed_id = Session::get('feed_id');
         $list = Post::prepareAll(true)->select(Post::getField('id'), PostLang::getField('title'), Post::getField('created_at'), Post::getField('views'))->where(Post::getField('taxonomy_id'), $this->taxonomy->id)->where(FeedPost::getField('feed_id'), $feed_id)->where(Post::getField('is_trash'), 0);
         if ($limit) {
             $list = $list->skip($start)->take($limit);
         }
         return $list->get($list);
     });
     $this->layout = null;
 }
Ejemplo n.º 2
0
 public static function getPostCount($feed_id)
 {
     return Feed::join(FeedPost::getTableName(), FeedPost::getField('feed_id'), '=', Feed::getField('id'))->where(FeedPost::getField('feed_id'), '=', $feed_id)->count();
 }
Ejemplo n.º 3
0
 public static function getYears($feed_id)
 {
     return Post::join(FeedPost::getTableName(), FeedPost::getField('post_id'), '=', Post::getField('id'))->distinct()->orderBy(Post::getField('created_at'), 'desc')->select(DB::raw("YEAR(" . Post::getField('created_at') . ") as year"))->where(FeedPost::getField('feed_id'), '=', $feed_id)->get();
 }
Ejemplo n.º 4
0
 public static function findExistsDates($feed_id)
 {
     $posts = Post::prepareQuery(2)->join(FeedPost::getTableName(), Post::getField("id"), '=', FeedPost::getField("post_id"))->where(FeedPost::getField("feed_id"), $feed_id)->where(PostLang::getField('enabled'), 1)->where(Post::getField('is_trash'), 0)->orderBy(DB::raw("DATE(" . Post::getField('created_at') . ")"), 'asc')->select(DB::raw("DATE(" . Post::getField('created_at') . ") as data"))->remember(SettingsModel::one('cachelife'))->get();
     $dates = ['years' => [], 'months' => []];
     foreach ($posts as $post) {
         $tmst = strtotime($post->data);
         $y = (int) date("Y", $tmst);
         $m = (int) date("m", $tmst);
         $d = (int) date("d", $tmst);
         $dates['years'][$y] = $y;
         if (isset($dates['months'][$y])) {
             if (isset($dates['months'][$y][$m])) {
                 $dates['months'][$y][$m]++;
             } else {
                 $dates['months'][$y][$m] = 1;
             }
         } else {
             $dates['months'][$y] = [$m => 1];
         }
     }
     return $dates;
 }