From fb483689e9c311ba2e45e1c4ea481edb48045a85 Mon Sep 17 00:00:00 2001 From: carlad Date: Fri, 20 Nov 2015 17:23:59 +0100 Subject: [PATCH] V3 start implementing filter for starred repos --- lib/travis/api/v3/queries/repositories.rb | 4 +++- lib/travis/api/v3/services/repositories/for_current_user.rb | 2 +- lib/travis/api/v3/services/repositories/for_owner.rb | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/travis/api/v3/queries/repositories.rb b/lib/travis/api/v3/queries/repositories.rb index 9c75c5b6..e853ba63 100644 --- a/lib/travis/api/v3/queries/repositories.rb +++ b/lib/travis/api/v3/queries/repositories.rb @@ -1,6 +1,6 @@ module Travis::API::V3 class Queries::Repositories < Query - params :active, :private, prefix: :repository + params :active, :private, :starred, prefix: :repository sortable_by :id, :github_id, :owner_name, :name, active: sort_condition(:active) def for_member(user) @@ -20,6 +20,8 @@ module Travis::API::V3 list = list.where(active: bool(active)) unless active.nil? list = list.where(private: bool(private)) unless private.nil? list = list.includes(:owner) if includes? 'repository.owner'.freeze + # where the repo is starred + # list = list.where(starred: bool(Repository.joins(:starred_repository).where(starred_repository: { repository_id: id, user_id: current_user.id }))) unless starred.nil? if includes? 'repository.last_build'.freeze or includes? 'build'.freeze list = list.includes(:last_build) diff --git a/lib/travis/api/v3/services/repositories/for_current_user.rb b/lib/travis/api/v3/services/repositories/for_current_user.rb index b72c9396..450dfaae 100644 --- a/lib/travis/api/v3/services/repositories/for_current_user.rb +++ b/lib/travis/api/v3/services/repositories/for_current_user.rb @@ -1,6 +1,6 @@ module Travis::API::V3 class Services::Repositories::ForCurrentUser < Service - params :active, :private, prefix: :repository + params :active, :private, :starred, prefix: :repository paginate(default_limit: 100) def run! diff --git a/lib/travis/api/v3/services/repositories/for_owner.rb b/lib/travis/api/v3/services/repositories/for_owner.rb index 9dadddf1..264c4d4b 100644 --- a/lib/travis/api/v3/services/repositories/for_owner.rb +++ b/lib/travis/api/v3/services/repositories/for_owner.rb @@ -1,6 +1,6 @@ module Travis::API::V3 class Services::Repositories::ForOwner < Service - params :active, :private, prefix: :repository + params :active, :private, :starred, prefix: :repository paginate(default_limit: 100) def run!