Ejemplo n.º 1
0
 /**
  * Filter by not Channel Name
  *
  * @param  \Illuminate\Database\Eloquent\Builder $query
  * @param  dynamic  string                       $channelName
  * @return \Illuminate\Database\Eloquent\Builder
  */
 public function scopeNotChannel(Builder $query, $channelName)
 {
     $channelNames = is_array($channelName) ? $channelName : array_slice(func_get_args(), 1);
     $channels = self::$channelRepository->getChannelsByName($channelNames);
     $channelIds = array();
     $channels->each(function ($channel) use(&$channelIds) {
         $channelIds[] = $channel->channel_id;
     });
     if ($channelIds) {
         array_unshift($channelIds, $query);
         call_user_func_array(array($this, 'scopeNotChannelId'), $channelIds);
     }
     return $query;
 }
Ejemplo n.º 2
0
 /**
  * Filter by not Channel Name
  *
  * @param  \Illuminate\Database\Eloquent\Builder $query
  * @param  dynamic  string                       $channelName
  * @return \Illuminate\Database\Eloquent\Builder
  */
 public function scopeNotEntryChannel(Builder $query, $channelName)
 {
     $channelNames = array_slice(func_get_args(), 1);
     $channels = self::$channelRepository->getChannelsByName($channelNames);
     $channelIds = array();
     $channels->each(function ($channel) use(&$channelIds) {
         $channelIds[] = $channel->channel_id;
     });
     if ($channelIds) {
         $query->whereHas('entries', function ($q) use($channelIds) {
             $q->whereNotIn('channel_titles.channel_id', $channelIds);
         });
     }
     return $query;
 }