Commit Graph
76 Commits
Author SHA1 Message Date
Ciro Santilli b66a152735 Factor abilities methods
in app controller, user model and services.
2014-10-19 11:12:39 +02:00
Ciro Santilli 2e9f5de868 Add parenthesis to function def with arguments. 2014-10-03 09:18:46 +02:00
Dmitriy Zaporozhets c69b8e0459 Huge replace of old users_project and users_group references
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-09-14 19:32:51 +03:00
Dmitriy Zaporozhets 593df8e69a Improve labels
* allow developers to manage labels
* add ability to remove label

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-07-30 15:15:39 +03:00
Dmitriy Zaporozhets 048a21974e Add create/update to Labels controller
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-07-30 13:12:11 +03:00
Dmitriy Zaporozhets 2099aa38b6 Merge pull request #7131 from skv-headless/per_request_rules_caching
per request project rules caching
2014-07-14 13:58:53 +03:00
skv-headless 8ec02ed9aa per request project rules caching 2014-06-14 14:05:25 +04:00
Dmitriy Zaporozhets eb7845682d Improve files/snippets action buttons
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-06-13 20:21:48 +03:00
Dmitriy Zaporozhets 0fdce4a52b Refactor some search scopes to prevent wierd behaviour and PG::Error issues
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-06-05 20:37:35 +03:00
Dmitriy Zaporozhets c283fba3b7 Improve performance of application for large teams
This commit fixes a lot of sql queries to db for for groups and projects
with big amount of members.

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-06-04 11:52:17 +03:00
Dmitriy Zaporozhets aea79b8035 Add ability rule for creating project in namespace
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-05-28 19:03:01 +03:00
Matt DeTullio 5d6d795d60 Fixes a bug with group member administration
Group owners were not able to remove any users from their group if they were the only owner.
2014-03-10 22:56:26 -04:00
Dmitriy Zaporozhets 645e8d4705 Move services for collecting items to Finders
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-02-25 19:15:08 +02:00
Dmitriy Zaporozhets 5f31caa0ed Fix read_group ability
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-02-25 15:45:19 +02:00
Dmitriy Zaporozhets 75eed4eb83 Implement project collection service
Main purpose is move big amount of methods from user, group, project
models and place filtering logic in one place.
It also fixes 500 error on group page for PostgreSQL

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-02-25 14:36:36 +02:00
Jason Hollingsworth 2f69213e3f Allow access to groups with public projects.
Fixed Group avatars to only display when user has read
permissions to at least one project in the group.
2014-02-20 09:26:38 -06:00
Ciro Santillli 439a61783d User can leave group from group page. 2014-02-12 15:52:53 +01:00
Dmitriy Zaporozhets 58ac731c37 Fix Issues#bulk_update
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-02-10 15:36:58 +02:00
Dmitriy Zaporozhets 4645f464a3 Allow developers to mange issue tracker
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-01-24 21:29:22 +02:00
Steven Thonus 37383966ef Archiving old projects; archived projects aren't shown on dashboard
features for archive projects
abilities for archived project
other abilities for archive projects

only limit commits and merges for archived projects

ability changed to prohibited actions on archived projects

added spec and feature tests for archive projects

changed search bar not to include archived projects
2013-12-16 14:39:14 +01:00
Jason Hollingsworth d9bb4230cc Adding authenticated public mode (internal).
Added visibility_level icons to project view (rather than just text).
Added public projects to search results.
Added ability to restrict visibility levels standard users can set.
2013-11-26 22:22:07 -06:00
Dmitriy Zaporozhets 65b9768ccf Group ownership completely based on users_groups relation now
Before we have only owner_id to determine group owner
With multiple owners per group we should get rid of owner_id in group.
So from now @group.owner will always be nil but
@group.owners return an actual array of users who can admin this group
2013-09-26 14:49:22 +03:00
Dmitriy Zaporozhets 573d367be5 Modify permissions for project and group
* Hooks and team pages allowed only for masters/owners
* Group page allowed for admin
* Corrent authentication for Projects controller
* Hide some project elements from visitor
2013-09-25 14:05:35 +03:00
Dmitriy Zaporozhets d90462033e Remove writing issues/notes from non-auth user abilities 2013-09-24 22:13:28 +03:00
Dmitriy Zaporozhets 66998f6d46 Allow non authenticated user access to public projects 2013-09-24 15:58:39 +03:00
Dmitriy Zaporozhets 694768e518 Fix 404 if Group guest visit empty group page 2013-09-11 21:00:16 +03:00
Dmitriy Zaporozhets 9fbbd6a68e Return empty abilities if user is blocked 2013-08-27 12:41:49 +03:00
Dmitriy Zaporozhets e8e9e0f771 Use own abilities for namespace class 2013-06-21 22:44:40 +03:00
Dmitriy Zaporozhets 439f399bec Remove all team resources except models. Move models to deprecated directory 2013-06-18 21:22:34 +03:00
Dmitriy Zaporozhets e940fbc7c1 Add UsersGroup relation to be respected by abilities and Project#team 2013-06-18 17:47:52 +03:00
Dmitriy Zaporozhets 81697850eb create UsersGroup entity. Modify ability to check group owners instead one owner 2013-06-18 17:47:52 +03:00
Dmitriy Zaporozhets 470f9064fa Merge pull request #4206 from babatakao/authorize_all_teams_to_admin
Authorize all teams to admin: fix 500 error on showing team page.
2013-06-06 07:14:50 -07:00
Dmitriy Zaporozhets 3cce570c4c Allow forking of public projects by authenticated users. Fixes #4152 2013-06-06 14:16:08 +03:00
babatakao 86a262de1a Authorize all teams to admin: fix 500 error on showing team page.
500 error was occured in the following steps:

1. user1 creates new team "team1".
2. Assign team1 to project1.
3. Sign in as admin. This admin is not a member of team1.
4. Open project1 team setting page (/project1/team).
5. Click "team1" link in "Assigned teams" area.
6. 500 error.

Fixed this issue.
2013-06-05 15:41:33 +09:00
Dmitriy Zaporozhets 213e117a52 Fixed ability and modify UI a bit 2013-06-04 18:50:42 +03:00
Dmitriy Zaporozhets bcc4e4dc7e Merge branch 'gist' of https://github.com/Andrew8xx8/gitlabhq into Andrew8xx8-gist
Conflicts:
	Gemfile.lock
	app/models/ability.rb
	app/models/project.rb
	app/views/snippets/_form.html.haml
	db/schema.rb
	features/steps/shared/paths.rb
	spec/factories.rb
	spec/models/project_spec.rb
2013-06-04 18:36:22 +03:00
Dmitriy Zaporozhets de12eba25c Dont show fork button in personal projects. Point to fork if already forked project 2013-05-08 19:40:31 +03:00
Dmitriy Zaporozhets 2fc236177f Merge pull request #3801 from holdtotherod/feature/internally-public-projects
Internally public projects
2013-05-03 00:00:48 -07:00
Angus MacArthur ec63804831 Made fixes suggested by @randx in pull request
See https://github.com/gitlabhq/gitlabhq/pull/3597#discussion-diff-4014638
2013-05-02 16:41:33 -04:00
Stephen LottermoserandStephen Lottermoser 4c44c5ef9a Internally public projects
Public projects listed in the public section will be linked to the
actual project's page. Public projects now give any user Guest
permissions to the project, allowing them to download the code, read
and create issues, and view anything else in the project's pages.

Ample access tests have been added to the project_access_spec to
verify correct permissions and behavior on public projects.
- Visitors to the site who are not logged in still cannot view the
  project's pages.
- Logged-in users visiting a public project where they are not a team
  member can create issues, but not snippets. They can view the projects
  code, issues, merge requests, etc, just as if they were a Guest member
  of the project.
- Since this is a public project, the user is also granted :download_code
  permissions, a permission normally reserved for Reporters, since they
  can clone the repo anyways and browse commits and branches locally.
2013-05-02 00:06:59 -07:00
Angus MacArthur ae33fdf297 updated fork feature to use gitlab-shell for v5 of gitlab 2013-04-15 01:54:52 -04:00
Dmitriy Zaporozhets 850881a2ef add admin ability to edit project settings from project area 2013-03-25 10:46:57 +02:00
Andrew8xx8 d4543eb5a7 Tests fixed 2013-03-25 11:20:14 +04:00
Andrew8xx8 e90aebe259 Personal snippets controlelr refactored 2013-03-25 02:17:03 +04:00
Andrew8xx8 5b35000f16 Snippets feature refactored. Tests now use spinach 2013-03-24 22:31:14 +04:00
Dmitriy Zaporozhets 92039dd677 Developers can merge MR if target branch is not protected 2013-02-27 20:20:31 +02:00
Dmitriy Zaporozhets 01a7250ba5 Add user to team he creates 2013-02-18 14:35:38 +02:00
Dmitriy Zaporozhets 00e4a479d3 allow/deny user to create group/team 2013-01-25 11:30:49 +02:00
Andrey KumanyaevandDmitriy Zaporozhets 7d3efec7d1 Add ability to teams 2013-01-24 22:31:24 +02:00
Dmitriy Zaporozhets d1e63c7df2 Reporter cant create MR. Show user authorized projects in Admin area 2013-01-21 14:16:48 +02:00