Exemple #1
0
 protected function loadTags()
 {
     $tags = BlogTag::orderBy('name');
     if ($this->property('parent') == '') {
         $tags->whereExists(function ($query) {
             $query->select(DB::raw(1))->from('radiantweb_blog_post_tags')->join('radiantweb_blog_posts', 'radiantweb_blog_posts.id', '=', 'radiantweb_blog_post_tags.post_id')->where('radiantweb_blog_posts.published', 1)->whereRaw('radiantweb_blog_tags.id = radiantweb_blog_post_tags.tag_id');
         });
     } else {
         $tags->whereExists(function ($query) {
             $parent = $this->property('parent');
             $query->select(DB::raw(1))->from('radiantweb_blog_post_tags')->join('radiantweb_blog_posts', 'radiantweb_blog_posts.id', '=', 'radiantweb_blog_post_tags.post_id')->where('radiantweb_blog_posts.published', 1)->where('radiantweb_blog_posts.parent', $parent)->whereRaw('radiantweb_blog_tags.id = radiantweb_blog_post_tags.tag_id');
         });
     }
     return $tags->get();
 }