Commit Graph
1895 Commits
Author SHA1 Message Date
Robert Speicher dcfce8b198 Use alias_attribute to define User#two_factor_enabled 2015-06-22 21:14:07 -04:00
Robert Speicher d3ff8c1a95 Make default value for otp_required_for_login false instead of null 2015-06-20 19:40:48 -04:00
Robert Speicher 516b4c1248 Allow Admin to filter users by 2FA status 2015-06-19 16:35:53 -04:00
Robert Speicher 6c8f0fe906 Add convenience methods to User for getting and setting 2FA status 2015-06-19 14:59:42 -04:00
Robert Speicher 7964e7d6a1 Move the User dashboard enum further up in the class 2015-06-19 14:59:07 -04:00
Douwe Maan 0e615a4863 Merge branch 'fix-labels-permisssion-check' into 'master'
Fix 403 Access Denied error messages when accessing Labels section in a project

This would occur if the project's issues or merge requests features were disabled. The change in 9bcd36396b caused `can?(current_user, :read_merge_request, project)` to be false if the merge request feature were disabled, so `authorize_labels!` needs to be changed accordingly.

Closes #1813

See merge request !836
2015-06-18 11:43:32 +00:00
Stan Hu 07efb17e10 Fix 403 Access Denied error messages when accessing Labels section in a project that has MRs disabled but issues enabled
Closes #1813
2015-06-18 03:15:05 -07:00
swellard 19e5b043fe Fix duplicate 'Email has already been taken' message when creating a user, updated comments 2015-06-16 14:24:05 +01:00
swellard 98615ef536 Fix duplicate 'Email has already been taken' message when creating a user 2015-06-16 14:24:05 +01:00
Dmitriy Zaporozhets 0674bf2339 Look for .gitlab-ci.yml only if checkout_sha is present
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-15 17:54:42 +02:00
Dmitriy Zaporozhets 6c7131b469 Merge branch 'fix-ext-issue-tracker-hook' into 'master'
Fix external issue tracker hook/test for HTTPS URLs

If HTTPS was used for the 'project_url' of an external issue tracker, an
error was raised because a HTTP connection was established to the
default HTTPS port.

The code has been corrected and simplified by using HTTParty.
Additionally, the request now is made directly to the 'project_url'
instead of the extracted root path.

## The bug is reproducible on gitlab.com
1. Set up a new external issue service (I used Redmine)
2. Set the project URL to 'http://example.com/redmine/projects/x' and
  click on 'Test settings' => Ok
3. Now set the URL to 'https://example.com/redmine/projects/x' and test
  it again => 500

## What is actually happening?
Web servers behave differently when a non-SSL connection is established
to a SSL port:
- Nginx / Apache 2.4: Status code 400
- Apache 2.2: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">...
  (no status code line is sent)
- example.com: Empty response, no status code line

## Relevant log entries
```
2015-06-04T11:10:47.972Z 16785 TID-exfks WARN: {"retry"=>true, "queue"=>"project_web_hook", "class"=>"ProjectServiceWorker", "args"=>[...], "error_message"=>"wrong status line: \"<!DOCTYPE HTML PUBLIC \\\"-//IETF//DTD HTML 2.0//EN\\\">\"", "error_class"=>"Net::HTTPBadResponse", ...}
2015-06-04T11:10:47.972Z 16785 TID-exfks WARN: wrong status line: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">"
2015-06-04T11:10:47.972Z 16785 TID-exfks WARN: /usr/lib/ruby/2.1.0/net/http/response.rb:41:in `read_status_line'
[...]
/home/git/gitlab-7.11.4/app/models/project_services/issue_tracker_service.rb:88:in `execute'
/home/git/gitlab-7.11.4/app/workers/project_service_worker.rb:8:in `perform'
[...]
```

See merge request !767
2015-06-15 14:01:10 +00:00
Dmitriy Zaporozhets 7300729190 Merge branch 'rs-dev-issue-2228' into 'master'
Allow user to customize default Dashboard page

Renames the "Design" profile page to "Preferences" and adds a field to customize the default Dashboard page:

> ![Screen_Shot_2015-06-11_at_11.12.53_PM](https://gitlab.com/gitlab-org/gitlab-ce/uploads/b5282a3be7861d1148528c6bc9e7a0e0/Screen_Shot_2015-06-11_at_11.12.53_PM.png)

See merge request !778
2015-06-15 11:29:36 +00:00
Dmitriy Zaporozhets b645f0f432 Merge pull request #9340 from jvanbaarsen/update-noteable
Update noteable after a new note is added
2015-06-14 12:46:07 +02:00
Robert Speicher 2bc4fd2d04 Add dashboard attribute to User model 2015-06-13 17:59:11 -04:00
Robert Speicher 567a25b630 Ensure session_expire_delay field exists before accessing it
Closes #1798
2015-06-13 00:31:08 -04:00
Douwe Maan 9ea8dcb5e2 Merge branch 'feature-session-expire-seconds-ui' into 'master'
Add session expiration delay configuration through UI application

Setting is accessible by the administrator through the UI and defaults to 1 week (the current setting)

Answers the following suggestions:

  * http://feedback.gitlab.com/forums/176466-general/suggestions/6210719-make-session-length-configurable
  * http://feedback.gitlab.com/forums/176466-general/suggestions/6730512-automatic-logout-after-a-time-being-idle

See merge request !774
2015-06-12 13:50:40 +00:00
Dmitriy Zaporozhets 21a62bb995 Merge branch 'refactor-mr-widget' into 'master'
Refactor accept merge request widget

* make each case a simple view
* separate  merge request JS from merge request accept widget JS

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

See merge request !799
2015-06-12 08:22:13 +00:00
Dmitriy Zaporozhets c69ca9912e Merge pull request #9371 from zenati/patch-2
An `in_namespace` scope is already present
2015-06-11 23:09:41 +02:00
Dmitriy Zaporozhets 946b4ceda3 Improve variables in mr widget
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-11 18:45:12 +02:00
Dmitriy Zaporozhets 644b6ba993 Refactor accept merge request widget
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-11 09:40:26 +02:00
themaze75andEric Maziade 1d080f5745 session_expire_seconds => session_expire_delay
delay is in seconds
more legible code in session_store
Added `GitLab restart required` help block to session_expire_delay
2015-06-10 22:10:00 -04:00
Robert Speicher 94cbf0091f Fix taskable require 2015-06-10 01:38:45 -04:00
Robert Speicher 33df3ed384 Add respond_to_missing? for Commit and Repository
As of Ruby 1.9, this is the correct way to handle `respond_to?` for
methods implemented by `method_missing`.

See https://robots.thoughtbot.com/always-define-respond-to-missing-when-overriding
2015-06-10 01:31:27 -04:00
zenati b0de6e9ae2 An in_namespace scope is already present 2015-06-09 13:42:01 +02:00
Robert Speicher 23954b0f77 Correctly remove already-mentioned commits for cross references
Fixes #1778
2015-06-08 18:13:14 -04:00
Eric Maziade 84a414fe53 Add session expiration delay configuration through UI application
settings
2015-06-05 11:50:37 -04:00
Daniel Gerhardt 7f3eb42f4e Fix external issue tracker hook/test for HTTPS URLs
If HTTPS was used for 'project_url', an error was raised because a HTTP
connection was established to the default HTTPS port.

The code has been corrected and simplified by using HTTParty.
Additionally, the request now is made directly to the 'project_url'
instead of the extracted root path.
2015-06-05 17:00:19 +02:00
Jeroen van Baarsen fbdaf0e2a5 Update noteable after a new note is added
**What does this do?**
It makes sure that whenever a new note is added to an noteable item, the
updated_at of that item is also updated.

**Why is this needed?**
At this moment when you post a comment on an issue or add a label to an issue,
the updated_at is not changed. Because of this the filtering for least recently
updated is not really useful (since it only takes in account the original text
from the noteable).

Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
2015-06-05 15:22:55 +02:00
Dmitriy Zaporozhets b9219469f7 Merge branch 'make-namespaces-api-available-to-all-users' into 'master'
Make namespace API available to all users

### What does this MR do?

This MR makes it possible for a user to query namespaces to which he/she has access. Also, it adds documentation for the existing API.

### Why was this MR needed?

Even though the `groups` API exists, it might still be useful to have an endpoint that tells the namespace type (e.g. `user` vs. `group`), especially if a user has access to a number of different projects.

### What are the relevant issue numbers?

Closes https://github.com/gitlabhq/gitlabhq/issues/9328

See merge request !708
2015-06-04 15:59:17 +00:00
Dmitriy Zaporozhets 53a0ac4734 Skip repo removing whem remove user or group
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-03 16:16:27 +02:00
Dmitriy Zaporozhets 47a95754de Log group creation and removal
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-03 16:15:58 +02:00
Dmitriy Zaporozhets 1edff53444 Remove projects before group/user. Remove namespace directory async
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-03 14:57:12 +02:00
Valery Sizov b931c11e1b GitLab CI service sends gitlab-ci.yml file 2015-06-02 16:46:01 +03:00
Dmitriy Zaporozhets 8997812626 Remove files in web editor using rugged
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-02 11:41:21 +02:00
Dmitriy Zaporozhets 734a4ba87d Create and edit files in web editor via rugged
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-01 20:49:11 +02:00
Alex Lossent 60225a067d Allow to configure a URL to show after sign out 2015-05-29 18:20:15 +02:00
Dmitriy Zaporozhets a1c45338f3 Merge branch 'support-edit-target-branch-in-mr' into 'master'
Support editing target branch of merge request

### What does this MR do?

This MR makes it possible to edit the target branch of a merge request and adds a system note when this happens.

### Why was this MR needed?

Because lots of people requested this feature. :)

### Screenshots

**Edit MR page**

![image](https://gitlab.com/gitlab-org/gitlab-ce/uploads/9b3d405bf7b5f945e35bae3534c2b67b/image.png)

**New MR page**

![image](https://gitlab.com/gitlab-org/gitlab-ce/uploads/3657a2a9efad6d10e8470637d1166bdb/image.png)

**System note**

![image](https://gitlab.com/gitlab-org/gitlab-ce/uploads/cc8066f3d3bdf09c0cce27193210567d/image.png)

### What are the relevant issue numbers?

* Closes https://github.com/gitlabhq/gitlabhq/issues/7105
* See: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/130!

See merge request !738
2015-05-29 15:01:54 +00:00
Douwe Maan 96d6fdc27c Add option to disallow users from registering any application to use GitLab as an OAuth provider 2015-05-29 13:29:16 +02:00
Stan Hu 5e4384ec9b Support editing target branch of merge request
Closes https://github.com/gitlabhq/gitlabhq/issues/7105
See: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/130
2015-05-29 04:08:08 -07:00
Dmitriy Zaporozhets d047d299bf Merge pull request #9318 from jvanbaarsen/allow-special-chars-bio
Allow special characters in users bio
2015-05-29 10:41:01 +02:00
Stan Hu 67992b9be6 Make namespace API available to all users
Closes https://github.com/gitlabhq/gitlabhq/issues/9328
2015-05-28 11:39:12 -07:00
Dmitriy Zaporozhets 499154518a You can not remove user if he/she is an only owner of group
To prevent loose of group data you need to transfer or remove group
first before you can remove user

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-05-28 12:00:02 +02:00
Jeroen van Baarsen 3865a1d925 Allow special characters in users bio
**What does this do?**
It removes the very strict sanitation on the users bio field, so that people can
have a bio like "I <3 GitLab"

**Why is this needed?**
Currently when you enter a bio with "I <3 GitLab", we only store "I ". This is
unexpected behaviour, since we want users to have a normal profile, without
having to worry what characters are allowed and which are not.

**Related issues:**
Fixes https://github.com/gitlabhq/gitlabhq/issues/5625

Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
2015-05-28 10:45:22 +02:00
Stan Hu ab88b7da19 Fix project snippets button appearing when it is disabled
Closes #1705
2015-05-27 05:07:44 -07:00
Dmitriy Zaporozhets 9eec0d5436 Merge branch 'accepted-rejected-mrs' into 'master'
Add Accepted and Rejected tabs to MR lists.

Before, MRs were referred to as Merged or Closed, but the Merge button on the MR page read "Accept Merge Request", the activity feed even read "X accepted merge request Y", and the Closed tab on the MR index included both Merged _and_ Closed MRs. I've changed every occurrence to consistently refer to MRs as either Accepted or Rejected, which is less technical and more clearly two opposites.

![Screen_Shot_2015-05-25_at_17.02.31](https://gitlab.com/gitlab-org/gitlab-ce/uploads/b0bf43aa1b5b9898a1c6b204dbcf669a/Screen_Shot_2015-05-25_at_17.02.31.png)

![Screen_Shot_2015-05-25_at_17.02.47](https://gitlab.com/gitlab-org/gitlab-ce/uploads/2ac05b1e1dba3b2d1692bd9242078f3a/Screen_Shot_2015-05-25_at_17.02.47.png)

![Screen_Shot_2015-05-25_at_17.03.03](https://gitlab.com/gitlab-org/gitlab-ce/uploads/4c0f0fa869c9130a6af18d80a1c6ebed/Screen_Shot_2015-05-25_at_17.03.03.png)

Addresses internal issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2201.

See merge request !702
2015-05-27 11:40:36 +00:00
Dmitriy Zaporozhets 701c2e9a3b Merge branch 'rs-to_reference' into 'master'
Add to_reference method to referable models

Now there is a single source of information for which attribute a model uses to be referenced, and its special character.

See merge request !641
2015-05-27 10:03:14 +00:00
Douwe Maan 62d0ce19ed Merge branch 'fix-hipchat-default-api-version' into 'master'
Allow HipChat API version to be blank and default to v2

### What does this MR do?

This MR fixes a regression introduced in v7.11 that requires a HipChat API version to be specified when it is supposed to be optional.

### Why was this MR needed?

The "optional" HipChat API version in 57c724558 passed in a blank `api_version` when nothing was specified, and the code was not tested. This would cause a 500 Error.

### What are the relevant issue numbers?

Closes #772

See merge request !718
2015-05-27 07:27:03 +00:00
Stan Hu 0c9463174b Allow HipChat API version to be blank and default to v2
Closes #772
2015-05-26 21:57:24 -07:00
Robert Speicher 3cb6a33846 More SystemNoteService cleanup 2015-05-26 16:30:07 -04:00
Robert Speicher 1a9da9178c Surround Project.reference_pattern in parenthesis inside other patterns 2015-05-26 15:49:22 -04:00