diff options
Diffstat (limited to 'app/services/boards/lists/update_service.rb')
-rw-r--r-- | app/services/boards/lists/update_service.rb | 45 |
1 files changed, 1 insertions, 44 deletions
diff --git a/app/services/boards/lists/update_service.rb b/app/services/boards/lists/update_service.rb index e2d9c371ca2..2e1a6592cd9 100644 --- a/app/services/boards/lists/update_service.rb +++ b/app/services/boards/lists/update_service.rb @@ -2,50 +2,7 @@ module Boards module Lists - class UpdateService < Boards::BaseService - def execute(list) - if execute_by_params(list) - success(list: list) - else - error(list.errors.messages, 422) - end - end - - private - - def execute_by_params(list) - update_preferences_result = update_preferences(list) if can_read?(list) - update_position_result = update_position(list) if can_admin?(list) - - update_preferences_result || update_position_result - end - - def update_preferences(list) - return unless preferences? - - list.update_preferences_for(current_user, preferences) - end - - def update_position(list) - return unless position? - - move_service = Boards::Lists::MoveService.new(parent, current_user, params) - - move_service.execute(list) - end - - def preferences - { collapsed: Gitlab::Utils.to_boolean(params[:collapsed]) } - end - - def preferences? - params.has_key?(:collapsed) - end - - def position? - params.has_key?(:position) - end - + class UpdateService < Boards::Lists::BaseUpdateService def can_read?(list) Ability.allowed?(current_user, :read_issue_board_list, parent) end |