gitlab-org--gitlab-foss/app/finders
Mehmet Beydogan 61a306aa58 Fix functionality of due this week. Add due this month and overdue, remove due tomorrow to issues.
Fix typos on sorting dropdown related to due date
Remove constant array and add Structs on Issue to keep due date data to fill options
2016-04-20 15:42:09 -04:00
..
contributed_projects_finder.rb Tweaks, refactoring, and specs 2016-03-20 21:04:07 +01:00
group_projects_finder.rb Add specs and add visibility level to admin groups 2016-03-21 19:11:24 -03:00
groups_finder.rb Tweaks, refactoring, and specs 2016-03-20 21:04:07 +01:00
issuable_finder.rb Fix functionality of due this week. Add due this month and overdue, remove due tomorrow to issues. 2016-04-20 15:42:09 -04:00
issues_finder.rb Restrict access to confidential issues 2016-03-17 20:55:38 -03:00
joined_groups_finder.rb Address feedback 2016-03-22 00:09:20 +01:00
merge_requests_finder.rb Refactor finders. Prevent circular dependency error 2014-09-02 15:28:27 +03:00
milestones_finder.rb sort milestones by due_date 2015-12-03 08:53:34 -06:00
notes_finder.rb css improvements 2015-11-19 01:25:59 +02:00
personal_projects_finder.rb Tweaks, refactoring, and specs 2016-03-20 21:04:07 +01:00
projects_finder.rb Tweaks, refactoring, and specs 2016-03-20 21:04:07 +01:00
README.md Set milestone on new issue when creating issue from index with milestone filter active. 2015-05-27 14:22:11 +02:00
snippets_finder.rb Remove Snippet#expires_at 2016-03-05 18:12:17 -05:00
todos_finder.rb Rename Tasks to Todos 2016-02-20 12:39:27 -02:00
trending_projects_finder.rb Revamp trending projects query 2015-10-06 17:26:32 +02:00
union_finder.rb Tweaks, refactoring, and specs 2016-03-20 21:04:07 +01:00

Finders

This type of classes responsible for collection items based on different conditions. To prevent lookup methods in models like this:

class Project
  def issues_for_user_filtered_by(user, filter)
    # A lot of logic not related to project model itself
  end
end

issues = project.issues_for_user_filtered_by(user, params)

Better use this:

issues = IssuesFinder.new(project, user, filter).execute

It will help keep models thiner.