Refactor abilities. Added ProjectUpdate context. Fixed few bugs with namespaces
This commit is contained in:
parent
a1ffc673b9
commit
eb1004f789
18 changed files with 127 additions and 53 deletions
|
@ -34,20 +34,10 @@ class ProjectsController < ProjectResourceController
|
|||
end
|
||||
|
||||
def update
|
||||
if params[:project].has_key?(:namespace_id)
|
||||
namespace_id = params[:project].delete(:namespace_id)
|
||||
if namespace_id == Namespace.global_id and project.namespace.present?
|
||||
# Transfer to global namespace from anyone
|
||||
project.transfer(nil)
|
||||
elsif namespace_id.present? and namespace_id.to_i != project.namespace_id
|
||||
# Transfer to someone namespace
|
||||
namespace = Namespace.find(namespace_id)
|
||||
project.transfer(namespace)
|
||||
end
|
||||
end
|
||||
status = ProjectUpdateContext.new(project, current_user, params).execute
|
||||
|
||||
respond_to do |format|
|
||||
if project.update_attributes(params[:project])
|
||||
if status
|
||||
flash[:notice] = 'Project was successfully updated.'
|
||||
format.html { redirect_to edit_project_path(project), notice: 'Project was successfully updated.' }
|
||||
format.js
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue