diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2016-10-04 16:44:53 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2016-10-04 16:44:53 +0000 |
commit | d8de3106ec5f3909fecd5770682402bf50d2f0cf (patch) | |
tree | ce4fe7b2e7ac7ec01900b813c27a329deb7fbe60 /app/controllers | |
parent | 46044b48a3d7f27a2ca27fadc5e1b067f5d53d96 (diff) | |
download | redmine-d8de3106ec5f3909fecd5770682402bf50d2f0cf.tar.gz redmine-d8de3106ec5f3909fecd5770682402bf50d2f0cf.zip |
Code cleanup.
git-svn-id: http://svn.redmine.org/redmine/trunk@15886 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/controllers')
-rw-r--r-- | app/controllers/repositories_controller.rb | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/app/controllers/repositories_controller.rb b/app/controllers/repositories_controller.rb index 3f01b1167..b073d8c5a 100644 --- a/app/controllers/repositories_controller.rb +++ b/app/controllers/repositories_controller.rb @@ -29,6 +29,7 @@ class RepositoriesController < ApplicationController default_search_scope :changesets before_action :find_project_by_project_id, :only => [:new, :create] + before_action :build_new_repository_from_params, :only => [:new, :create] before_action :find_repository, :only => [:edit, :update, :destroy, :committers] before_action :find_project_repository, :except => [:new, :create, :edit, :update, :destroy, :committers] before_action :find_changeset, :only => [:revision, :add_related_issue, :remove_related_issue] @@ -38,17 +39,11 @@ class RepositoriesController < ApplicationController rescue_from Redmine::Scm::Adapters::CommandFailed, :with => :show_error_command_failed def new - scm = params[:repository_scm] || (Redmine::Scm::Base.all & Setting.enabled_scm).first - @repository = Repository.factory(scm) @repository.is_default = @project.repository.nil? - @repository.project = @project end def create - @repository = Repository.factory(params[:repository_scm]) - @repository.safe_attributes = params[:repository] - @repository.project = @project - if request.post? && @repository.save + if @repository.save redirect_to settings_project_path(@project, :tab => 'repositories') else render :action => 'new' @@ -60,7 +55,6 @@ class RepositoriesController < ApplicationController def update @repository.safe_attributes = params[:repository] - @repository.project = @project if @repository.save redirect_to settings_project_path(@project, :tab => 'repositories') else @@ -286,6 +280,18 @@ class RepositoriesController < ApplicationController private + def build_new_repository_from_params + scm = params[:repository_scm] || (Redmine::Scm::Base.all & Setting.enabled_scm).first + unless @repository = Repository.factory(scm) + render_404 + return + end + + @repository.project = @project + @repository.safe_attributes = params[:repository] + @repository + end + def find_repository @repository = Repository.find(params[:id]) @project = @repository.project |