summaryrefslogtreecommitdiff
path: root/app/controllers/explore
Commit message (Collapse)AuthorAgeFilesLines
* Enable more frozen string in app/controllers/gfyoung2018-09-234-0/+8
| | | | | | | | | | | | | | | | Enables frozen string for the following: * app/controllers/dashboard/**/*.rb * app/controllers/explore/**/*.rb * app/controllers/google_api/**/*.rb * app/controllers/groups/**/*.rb * app/controllers/import/**/*.rb * app/controllers/instance_statistics/**/*.rb * app/controllers/ldap/**/*.rb * app/controllers/oauth/**/*.rb * app/controllers/profiles/**/*.rb Partially addresses #47424.
* Disable existing offenses for the CodeReuse copsYorick Peterse2018-09-111-0/+4
| | | | | This whitelists all existing offenses for the various CodeReuse cops, of which most are triggered by the CodeReuse/ActiveRecord cop.
* Resolve "Display member role per project"Mike Greiling2017-12-071-5/+8
|
* Reuse the groups tree for explore and dashboard.Bob Van Landuyt2017-10-041-13/+3
|
* Use Prev/Next pagination for exploring projectspagination-projects-exploreYorick Peterse2017-08-141-4/+7
| | | | | | | | | | This changes the pagination of the "Explore" pages so they use a simpler pagination system that only shows "Prev" and "Next" buttons. This removes the need for getting the total number of rows to display, a process that can easily take up to 2 seconds when browsing through a large list of projects. Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/27390
* Enable Style/DotPosition Rubocop :cop:Grzegorz Bizon2017-06-211-2/+2
|
* Merge branch 'tc-fix-private-subgroups-shown' into 'security' Douwe Maan2017-05-101-1/+1
| | | | | Use GroupsFinder to find subgroups the user has access to See merge request !2096
* Merge branch 'snippets-finder-visibility' into 'security'Douwe Maan2017-05-101-1/+1
| | | | | | Refactor snippets finder & dont return internal snippets for external users See merge request !2094
* ProjectsFinder should handle more optionsJacopo2017-04-061-20/+14
| | | | | | | | | | | | | | | | | | | Extended ProjectFinder in order to handle the following options: - current_user - which user use - project_ids_relation: int[] - project ids to use - params: - trending: boolean - non_public: boolean - starred: boolean - sort: string - visibility_level: int - tags: string[] - personal: boolean - search: string - non_archived: boolean GroupProjectsFinder now inherits from ProjectsFinder. Changed the code in order to use the new available options.
* Eager load route & namespace in `Explore::ProjectsController`Bob Van Landuyt2017-03-161-3/+11
|
* Add filter and sorting to dashboard groups pageDmitriy Zaporozhets2017-03-011-1/+10
| | | | Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
* Don't perform Devise trackable updates on blocked User recordsrs-warden-blocked-usersRobert Speicher2017-02-101-1/+1
|
* Fix /explore sorting (trending)Eric Eastwood2017-01-261-0/+1
| | | | Fix https://gitlab.com/gitlab-org/gitlab-ce/issues/27044
* Precalculate trending projectsprecalculate-trending-projectsYorick Peterse2016-10-101-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This commit introduces a Sidekiq worker that precalculates the list of trending projects on a daily basis. The resulting set is stored in a database table that is then queried by Project.trending. This setup means that Unicorn workers no longer _may_ have to calculate the list of trending projects. Furthermore it supports filtering without any complex caching mechanisms. The data in the "trending_projects" table is inserted in the same order as the project ranking. This means that getting the projects in the correct order is simply a matter of: SELECT projects.* FROM projects INNER JOIN trending_projects ON trending_projects.project_id = projects.id ORDER BY trending_projects.id ASC; Such a query will only take a few milliseconds at most (as measured on GitLab.com), opposed to a few seconds for the query used for calculating the project ranks. The migration in this commit does not require downtime and takes care of populating an initial list of trending projects.
* Refactor TrendingProjectsFinder to support cachingYorick Peterse2016-10-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | == Public Projects This finder class now _only_ returns public projects. Previously this finder would also return private and internal projects. Including these projects makes caching data much harder and less efficient. Meanwhile including this data isn't very useful as very few users would be interested in seeing projects they have access to as trending. That is, the feature is more useful when you want to see what _other_ popular projects there are. == Caching The data returned by TrendingProjectsFinder is now cached for a day based on the number of months the data should be restricted to. The cache is not flushed explicitly, instead it's rebuilt whenever it expires. == Timings To measure the impact I changed the finder code to use the last 24 months instead of the last month. I then executed and measured 10 requests to the explore page. On the current "master" branch (commit 88fa5916ffa0aea491cd339272ed7437c3f52dc7) this would take an average of 2.43 seconds. Using the changes of this commit this was reduced to around 1.7 seconds. Fixes gitlab-org/gitlab-ce#22164
* Replace reject_blocked with reject_blocked! in callbacks.rename-undefined-methodsConnor Shea2016-07-271-1/+1
| | | | | | | | | | In Rails 4.2 and below, skipping callbacks (skip_before_action, skip_after_action, etc.) that use methods which do not exist will not throw any errors. On the other hand, Rails 5 does. See https://github.com/rails/rails/pull/19029 After testing with Rails 5 I noticed there are some methods that don't actually exist (because they were renamed, usually), this fixes a few instances of those. reject_blocked! was introduced in c9def945d4222eeb8026a0311495259bf99267a1, I can't find any references to reject_blocked ever existing.
* Merge branch 'master' into issue_12658Douwe Maan2016-03-213-5/+5
|\ | | | | | | | | | | | | | | | | # Conflicts: # app/models/issue.rb # app/views/projects/_home_panel.html.haml # app/views/shared/projects/_project.html.haml # db/schema.rb # spec/models/project_spec.rb
| * Use the configured Kaminari "per page" defaultrs-use-kaminari-defaultRobert Speicher2016-03-193-5/+5
| |
* | Merge 4009-external-users into issue_12658Felipe Artur2016-03-161-3/+3
|\ \ | |/
| * Allow filtered dashboard/explore results to be paged. Fixes #14104fix-filtered-paginationJosh Frye2016-03-091-3/+3
| |
* | Add permission level to groupsFelipe Artur2016-03-101-1/+1
|/
* Add option to show archived projects on dahsboardDmitriy Zaporozhets2016-03-041-6/+5
| | | | Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
* MR feedbackJosh Frye2016-02-091-3/+3
|
* Extract events rendering to own action.Josh Frye2016-02-091-3/+3
|
* Starred, All, and Trending on explore are paged also group projects. Need ↵Josh Frye2016-02-091-0/+30
| | | | ajax filter.
* Implement changes from MR feedbackJosh Frye2016-02-041-6/+6
|
* Various filter fixesJosh Frye2016-02-041-6/+6
|
* Paginate + ajax filter dashboard projectsJosh Frye2016-02-041-6/+6
|
* remove public field from namespace and refactoringnamespace-clean_upValery Sizov2016-01-041-1/+1
|
* Clean up overlap between dashboard and explore.Douwe Maan2015-09-084-6/+8
| | | | | - Split up SnippetsController into separate dashboard and explore sections. - Use consistent page titles, header titles and sidebars between dashboard and explore sections when signed in or not.
* Allow listing of archived projectsArtem Sidorenko2015-08-191-0/+2
| | | | Resolves #9285
* Add helpers for header title and sidebar, and move setting those from ↵Douwe Maan2015-05-011-9/+1
| | | | controllers to layouts.
* Add a page title to every page.Douwe Maan2015-04-303-6/+13
|
* Fixed the Rails/ActionFilter copJeroen van Baarsen2015-04-202-2/+2
| | | | Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
* Use same constant for amount of items per pageDmitriy Zaporozhets2015-03-122-4/+4
|
* Add project filter by visibility and tag to explore pageDmitriy Zaporozhets2015-03-101-0/+3
|
* Respect star ordering on explore pageDmitriy Zaporozhets2015-02-181-1/+1
|
* Factor abilities methodsCiro Santilli2014-10-192-4/+2
| | | | in app controller, user model and services.
* Most starred projects page for Explore areaDmitriy Zaporozhets2014-07-251-0/+6
| | | | Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
* Refactor explore areaDmitriy Zaporozhets2014-07-232-0/+33
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>