Commit Graph
55 Commits
Author SHA1 Message Date
Douwe MaanandRémy Coutable ae407262f2 Merge branch 'move-issue-section-should-not-be-displayed-in-the-new-issue-form-14489' into 'master'
Moving of issuables only when the record already exists

Closes #14489

See merge request !3340
2016-03-23 12:29:41 +01:00
Kamil TrzcińskiandRémy Coutable ab3681d149 Merge branch 'feature/issue-move' into 'master'
Ability to move issue to another project

Tasks:

- [x] Create scaffold of service that will move issue to another project.
- [x] Close old issue, add system note about moving issue to a new project.
- [x] Create a new issue, add system note about issue being moved from old project.
- [x] Check if issue can be moved to another project before executing service
- [x] Check permissions when moving an issue (`:admin_issue` ability)
- [x] Display select box for a new project when editing an issue
- [x] Show only projects that issue can be moved into in that select box
- [x] Add project select handler, helper and some permission filters to it
- [x] Preserve as much information as possible, including author
- [x] Prepare mechanisms that unfolds local references in issue description
- [x] Rewrite issue description with references unfolding and add some specs for it
- [x] Rewrite all system notes and comments attached to issue that is being moved
- [x] Update `Label` so that is was able to create cross reference labels (separate MR)
- [x] Add notifications about moving issue to another project
- [x] Display confirmation alert/message when issue move has been requested
- [x] Make it possible to undo selecting project where issue will be moved to
- [x] Add column to issue, that will indicate if it has been moved to another project
- [x] Do not allow to move issue that has been already moved
- [x] Write top-to-bottom feature spec in RSpec instead of Spinach

UI:

![issue_move_ui](/uploads/b3c6b563362c1fded9082cc0f51e5a74/issue_move_ui.png)

![issue_move_tooltip](/uploads/2ab913b06f52df1cafde9abe89bd9cb8/issue_move_tooltip.png)

Closes #3024

See merge request !2831
2016-03-21 16:40:17 +01:00
Rémy Coutable 54ec7e9599 Improving the original label-subscribing implementation
1. Make the "subscribed" text in Issuable sidebar reflect the labels
   subscription status

2. Current user mut be logged-in to toggle issue/MR/label subscription
2016-03-15 18:22:02 +01:00
Timothy AndrewandRémy Coutable 0444fa560a Original implementation to allow users to subscribe to labels
1. Allow subscribing (the current user) to a label

- Refactor the `Subscription` coffeescript class
  - The main change is that it accepts a container, and conducts all
    DOM queries within its scope. We need this because the labels
    page has multiple instances of `Subscription` on the same page.

2. Creating an issue or MR with labels notifies users subscribed to those labels

- Label `has_many` subscribers through subscriptions.

3. Adding a label to an issue or MR notifies users subscribed to those labels

- This only applies to subscribers of the label that has just been
  added, not all labels for the issue.
2016-03-15 17:25:37 +01:00
Douglas Barbosa Alexandre 3d52e139b1 Rename Tasks to Todos 2016-02-20 12:39:27 -02:00
Douglas Barbosa Alexandre 408e010d65 Rename IssuableBaseService#have_changes? to has_changes? 2016-02-20 12:12:05 -02:00
Douglas Barbosa Alexandre fc3f8a8ff7 Ensure that we only have one task per issue/mr 2016-02-20 12:12:05 -02:00
Douglas Barbosa Alexandre 3b98adcc75 Create a pending task when a user is mentioned when edit a issue/mr/note 2016-02-20 12:12:05 -02:00
Douglas Barbosa Alexandre 4bfc377ff6 Rename TaskService#mark_as_done to mark_pending_tasks_as_done 2016-02-20 12:10:26 -02:00
Douglas Barbosa Alexandre 56a5fc0cd3 Move common behavior to to IssuableBaseService 2016-02-20 12:10:26 -02:00
Douglas Barbosa Alexandre a56ada0a1e Marks pending tasks for an user as done when he close the issue 2016-02-20 12:10:26 -02:00
Douglas Barbosa Alexandre e81061a211 Marks pending tasks for an user as done when he edit an issue 2016-02-20 12:10:26 -02:00
Douglas Barbosa Alexandre 422a01fc85 Create a pending task when an issue is assigned to someone 2016-02-20 12:10:26 -02:00
Drew Blessing f177aaa5fa Backport JIRA service 2015-12-18 14:19:48 -06:00
Ruben DavilaandRubén Dávila 97afb84b31 Generate system note after Task item has been updated on Issue or Merge Request. #2296
Everytime the User check or uncheck a Task Item from the Issue or
Merge Request description, a new update is going to be
added to the activity logs of the Issue or Merge Request.

Note that when using the edit form, you can only update the Task item
status or add/delete/modify existing ones. Doing both actions is not
fully supported.
2015-11-19 21:05:44 -05:00
Dmitriy Zaporozhets 84b5d0356a Refactor similar code for Issue and MR update service
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-17 12:42:43 +01:00
Dmitriy Zaporozhets 857710634c Split complex method Issues::UpdateService#execute
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-13 00:13:45 +01:00
Douwe Maan aaa93d5add Use issue editor as cross reference comment author when issue is edited with a new mention. 2015-10-28 13:09:51 +01:00
Douwe Maan b0164771ec Simplify code around (cross)-references 2015-10-12 11:54:46 +02:00
Douwe Maan 36bd6c8494 Show who last edited a comment if it wasn't the original author 2015-07-30 14:45:54 +02:00
Robert Speicher b9b2d08638 Dynamically check :admin_* ability in IssuableBaseService
Closes #2092
2015-07-24 15:50:12 -04:00
Robert Speicher f3d4767d0c Rename notice_added_references to create_new_cross_references! 2015-07-13 21:31:16 -04:00
Robert Speicher 8a148793af Simplify Issue and MergeRequest UpdateServices
Now that those pesky task states are gone, these become a lot simpler.
2015-07-08 18:00:42 -04:00
Robert Speicher 0e5fbb29f4 Remove unused task_[un]check states from Update services
These were left over from the old Task handling.
2015-07-08 17:56:56 -04:00
Dmitriy Zaporozhets 342d553709 Rename abilities to correspond contoller/model action names
write_ was renamed to create_
modify_  was renamed to update_

So now in update action we have next code

def create
  can?(current_user, :create_issue, @issue)
end

def update
  can?(current_user, :update_issue, @issue)
end

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-26 15:55:56 +02:00
Dmitriy Zaporozhets 0bcfe9a0dc Dont allow set assignee, milestone or labels if user is guest
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-25 16:17:48 +02:00
Stan Hu d45112258e Fix post-receive errors on a push when an external issue tracker is configured
Closes #1700
Closes #1720
2015-06-12 06:59:27 -07:00
Robert Speicher 1aa3921dd8 Add a note when an Issue or Merge Request's title changes 2015-05-26 21:49:04 -04:00
Robert Speicher 686f6855c2 Update SystemNoteService method naming conventions
Now the verb comes first, and there is no restriction on
singular/plural.
2015-05-11 00:01:15 -04:00
Robert Speicher 48e6fb532a Add a SystemNoteService class
There's a lot of code in the Note model that only deals with creating
system notes, so we're going to split that into its own class.
2015-05-11 00:01:01 -04:00
Dmitriy Zaporozhets dfb4fcb685 No magic numbers for issues filtering 2015-03-26 18:56:42 -07:00
Douwe Maan 515e9d51df Make sure issue assignee is properly reset. 2015-03-24 16:52:02 +01:00
Douwe Maan b673d87227 Send notifications and leave system comments when bulk updating issues. 2015-03-06 15:01:13 +01:00
Stan HuandDouwe Maan afe5d7d209 Issue #595: Support Slack notifications upon issue and merge request events
1) Adds a DB migration for all services to toggle on push, issue, and merge events.

2) Upon an issue or merge request event, fire service hooks.

3) Slack service supports custom messages for each of these events. Other services
not supported at the moment.

4) Label merge request hooks with their corresponding actions.
2015-03-03 11:14:31 +01:00
Nikita Verkhovin 8681cb3137 Add labels notes 2015-02-08 22:35:41 +06:00
Dmitriy Zaporozhets 9d85ea3acf Organize event order execution when update issue or mr 2015-01-25 22:49:05 -08:00
Valeriy Sizov 5c6b21f1c2 Merge pull request #7967 from Bugagazavr/issue-actor
Add issueable actor to hooks
2014-11-05 12:10:50 +02:00
Vinnie Okada 85f1e8b84a Remove unused method 2014-10-09 22:33:29 -05:00
Ciro Santilli 23b4a2e721 Factor issue and merge request services 2014-10-07 21:12:18 +02:00
Vinnie Okada 9f0083a96c Add task lists to issues and merge requests
Make the Markdown parser recognize "[x]" or "[ ]" at the beginning of a
list item and turn it into a checkbox input.  Users who can modify the
issue or MR can toggle the checkboxes directly or edit the Markdown to
manage the tasks.  Task status is also displayed in the MR and issue
lists.
2014-10-05 22:15:27 -05:00
Kirill Zaitsev 11848febd1 Add issueable actor 2014-10-05 20:41:33 +04:00
Dmitriy Zaporozhets f0c26bcb64 Fix label set during issue/mr creation
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-07-30 22:48:21 +03:00
Marin Jankovski 1208c6caa8 Notification for reopened issue. 2014-07-03 12:51:24 +02:00
Dmitriy Zaporozhets 8fee5a0572 Make app works with strong params
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-06-26 23:24:17 +03:00
Jeroen van Baarsen 87760a290e Added an UrlBuilder for building rails named routes
Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
2014-06-13 12:34:15 +02:00
Jeroen van Baarsen 45e1941fb3 Return a little more information in Issue webhook
When a webhook for issues is triggered, it should also return the
resource URL, and the action that was performed (ie: Was it reopened,
updated, opened or closed)
2014-06-13 12:14:43 +02:00
Dmitriy Zaporozhets f6ee55aabd Fix issue/mr close/reopen via API
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-06-10 19:23:02 +03:00
Dmitriy Zaporozhets 7edf65d1ee Make a system comment when issue milestone changed
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-06-10 12:25:43 +03:00
Dmitriy Zaporozhets 49f977d675 Fix tests
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-04-02 19:55:23 +03:00
Dmitriy Zaporozhets 1b5fb4ac21 Fix assignee change in Issues::UpdateService
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-04-02 16:08:49 +03:00