summaryrefslogtreecommitdiff
path: root/app/models/project_feature.rb
Commit message (Collapse)AuthorAgeFilesLines
* Backport of 10854-elasticsearch_avoid_dbce-10854-elasticsearch_avoid_dbMario de la Ossa2019-06-051-0/+2
|
* Inherit from ApplicationRecord instead of ActiveRecord::BaseNick Thomas2019-03-281-1/+1
|
* Display the correct number of MRs a user has access toIgor Drozdov2019-03-051-4/+11
|
* Group Guests are no longer able to see merge requestsTiago Botelho2019-01-311-2/+17
| | | | | | | Group guests will only be displayed merge requests to projects they have a access level to, higher than Reporter. Visible projects will still display the merge requests to Guests
* Make GitLab pages support access controlTuomo Ala-Vannesluoma2018-10-051-1/+27
|
* Add ProjectFeature check for feature flagRobert Speicher2018-10-041-0/+3
| | | | | | | | This will allow an explicitly-disabled feature flag to override a feature being available for a project. As an extreme example, we could quickly disable issues across all projects at runtime by running `Feature.disable(:issues)`.
* Geo: sync disabled wikis. Stage 2follow-up-geo-sync-disabled-wikisValery Sizov2018-09-251-26/+0
| | | | | | | We started syncing all the wiki regardless of the fact it's disabled or not. We couldn't do that in one stage because of needing of smoth update and deprecating things. This is the second stage that finally removes unused columns in the geo_node_status table.
* Enable frozen string in app/models/*.rbrepo-forks/gitlab-ce-frozen-string-enable-app-modelsgfyoung2018-07-261-0/+2
| | | | Partially addresses #47424.
* Added SiteStatistics as counter cache for Projects and WikisGabriel Mazetto2018-07-241-0/+26
|
* Fix project feature being deleted when updating project with invalid ↵Felipe Artur2017-09-121-0/+2
| | | | visibility level
* Re-enable SqlInjection and CommandInjectionBrian Neel2017-08-081-2/+2
|
* convert all the policies to DeclarativePolicyhttp://jneen.net/2017-06-271-2/+5
|
* Add User#full_private_access? to check if user has Private accesstc-refactor-projects-finder-init-collectionToon Claes2017-06-231-1/+1
| | | | | | | | | | | | | In CE only the admin has access to all private groups & projects. In EE also an auditor can have full private access. To overcome merge conflicts, or accidental incorrect access rights, abstract this out in `User#full_private_access?`. `User#admin?` now only should be used for admin-only features. For private access-related features `User#full_private_access?` should be used. Backported from gitlab-org/gitlab-ee!2199
* Refactor Project.with_feature_available_for_userYorick Peterse2017-06-161-0/+7
| | | | | | | | | | | This method used to use a UNION, which would lead to it performing the same query twice; producing less than ideal performance. Further, in certain cases ActiveRecord could get confused and mess up the variable bindings, though it's not clear how/why exactly this happens. Fortunately we can work around all of this by building some of the WHERE conditions manually, allowing us to use a simple OR statement to get all the data we want without any of the above problems.
* Enable Style/MutableConstantDouwe Maan2017-02-231-1/+1
|
* issue and mergerequest slash command for mattermostZ.J. van de Weg2016-11-171-0/+4
| | | | | | | | | | | | | | | | | | This commit includes a couple of thing: - A chatops controller - Mattermost::CommandService - Mattermost::Commands::(IssueService|MergeRequestService) The controller is the point where mattermost, and later slack will have to fire their payload to. This in turn will execute the CommandService. Thats where the authentication and authorization should happen. So far this is not yet implemented. This should happen in later commits. Per subcommand, in case of `/gitlab issue show 123` issue whould be the subcommand, there is a service to parse the data, and fetch the resource. The resource is passed back to the CommandService which structures the data.
* Remove unneeded nil checkszj-remove-unneeded-checksZ.J. van de Weg2016-11-121-6/+0
| | | | | | The library we're using, default_value_for, is configured to interpret nil as the default value, being ENABLED. Given the property can't be nil this check is unneeded.
* Merge branch '22481-honour-issue-visibility-for-groups' into 'security' Douwe Maan2016-11-091-3/+11
| | | | | | | | | Honour issue and merge request visibility in their respective finders This MR fixes a security issue with the IssuesFinder and MergeRequestFinder where they would return items the user did not have permission to see. This was most visible on the issue and merge requests page for a group containing projects that had set their issues or merge requests to "private". Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/22481 See merge request !2000
* Add visibility level to project repositoryissue_19734_2Felipe Artur2016-10-171-2/+17
|
* Fix project deletion when feature visibility is set to privatesh-fix-project-deletion-private-visibilityStan Hu2016-10-041-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Projects that are destroyed are put in the pending_delete state. The ProjectDestroyWorker checks whether the current user has access, but since the ProjectFeature class uses the default scope of the Project, it will not be able to find the right project. This was a regression in 8.12 that caused the following stack trace: ``` NoMethodError: undefined method `team' for nil:NilClass from app/models/project_feature.rb:62:in `get_permission' from app/models/project_feature.rb:34:in `feature_available?' from app/models/project.rb:21:in `feature_available?' from app/policies/project_policy.rb:170:in `disabled_features!' from app/policies/project_policy.rb:29:in `rules' from app/policies/base_policy.rb:82:in `block in abilities' from app/policies/base_policy.rb:113:in `collect_rules' from app/policies/base_policy.rb:82:in `abilities' from app/policies/base_policy.rb:50:in `abilities' from app/models/ability.rb:64:in `uncached_allowed' from app/models/ability.rb:58:in `allowed' from app/models/ability.rb:49:in `allowed?' from app/services/base_service.rb:11:in `can?' from lib/gitlab/metrics/instrumentation.rb:155:in `block in can?' from lib/gitlab/metrics/method_call.rb:23:in `measure' from lib/gitlab/metrics/instrumentation.rb:155:in `can?' from app/services/projects/destroy_service.rb:18:in `execute' ``` Closes #22948
* Remove duplicate default_value_level entryzj-default-setting-featuresZeger-Jan van de Weg2016-09-211-1/+0
|
* Add default values for ProjectFeatureZ.J. van de Weg2016-09-211-0/+7
| | | | Closes gitlab-org/gitlab-ce#22330
* Project tools visibility levelFelipe Artur2016-09-011-0/+63