parent
							
								
									78a67fc48d
								
							
						
					
					
						commit
						5c4416bb45
					
				|  | @ -19,6 +19,7 @@ class @IssuableForm | |||
|     @form.on "click", ".btn-cancel", @resetAutosave | ||||
| 
 | ||||
|     @initWip() | ||||
|     @initMoveDropdown() | ||||
| 
 | ||||
|   initAutosave: -> | ||||
|     new Autosave @titleField, [ | ||||
|  | @ -80,3 +81,19 @@ class @IssuableForm | |||
| 
 | ||||
|   addWip: -> | ||||
|     @titleField.val "WIP: #{@titleField.val()}" | ||||
| 
 | ||||
|   initMoveDropdown: -> | ||||
|     $moveDropdown = $('.js-move-dropdown') | ||||
| 
 | ||||
|     if $moveDropdown.length | ||||
|       $('.js-move-dropdown').select2 | ||||
|         ajax: | ||||
|           url: $moveDropdown.data('projects-url') | ||||
|           results: (data) -> | ||||
|             return { | ||||
|               results: data | ||||
|             } | ||||
|         formatResult: (project) -> | ||||
|           project.name_with_namespace | ||||
|         formatSelection: (project) -> | ||||
|           project.name_with_namespace | ||||
|  |  | |||
|  | @ -31,6 +31,21 @@ class AutocompleteController < ApplicationController | |||
|     render json: @user, only: [:name, :username, :id], methods: [:avatar_url] | ||||
|   end | ||||
| 
 | ||||
|   def projects | ||||
|     project = Project.find_by_id(params[:project_id]) | ||||
| 
 | ||||
|     projects = current_user.authorized_projects | ||||
|     projects = projects.select do |project| | ||||
|       current_user.can?(:admin_issue, project) | ||||
|     end | ||||
| 
 | ||||
|     no_project = OpenStruct.new(id: 0, name_with_namespace: 'No project') | ||||
|     projects.unshift(no_project.marshal_dump) | ||||
|     projects.delete(project) | ||||
| 
 | ||||
|     render json: projects.to_json(only: [:id, :name_with_namespace], methods: :name_with_namespace) | ||||
|   end | ||||
| 
 | ||||
|   private | ||||
| 
 | ||||
|   def find_users | ||||
|  |  | |||
|  | @ -90,9 +90,7 @@ | |||
|     = label_tag :move_to_project_id, 'Move', class: 'control-label' | ||||
|     .col-sm-10 | ||||
|       .issuable-form-select-holder | ||||
|         - projects = project_options(issuable, current_user, ability: :admin_issue) | ||||
|         = select_tag(:move_to_project_id, projects, include_blank: true, | ||||
|                      class: 'select2', data: { placeholder: 'Select project' }) | ||||
|         = hidden_field_tag :move_to_project_id, nil, class: 'js-move-dropdown', data: { placeholder: 'Select project', projects_url: autocomplete_projects_path(project_id: '1') } | ||||
|         | ||||
|       %span{ data: { toggle: 'tooltip', placement: 'auto top' }, style: 'cursor: default', | ||||
|       title: 'Moving an issue will copy the discussion to a different project and close it here. All participants will be notified of the new location.' } | ||||
|  |  | |||
|  | @ -56,6 +56,7 @@ Rails.application.routes.draw do | |||
|   # Autocomplete | ||||
|   get '/autocomplete/users' => 'autocomplete#users' | ||||
|   get '/autocomplete/users/:id' => 'autocomplete#user' | ||||
|   get '/autocomplete/projects' => 'autocomplete#projects' | ||||
| 
 | ||||
|   # Emojis | ||||
|   resources :emojis, only: :index | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue