# HG changeset patch # User Chris Cannam # Date 1374142715 -3600 # Node ID fc0fecf09eb9e8a4762552806aeae13408bed1a3 # Parent 0f5c32bfd33e91367aac53787a7ad7db7994e03b Restore our original repos settings page. But I don't think this is going to work well with the new routes configuration diff -r 0f5c32bfd33e -r fc0fecf09eb9 app/controllers/projects_controller.rb --- a/app/controllers/projects_controller.rb Wed Jul 03 09:57:31 2013 +0100 +++ b/app/controllers/projects_controller.rb Thu Jul 18 11:18:35 2013 +0100 @@ -196,6 +196,7 @@ @issue_category ||= IssueCategory.new @member ||= @project.members.new @trackers = Tracker.sorted.all + @repository ||= @project.repository @wiki ||= @project.wiki end diff -r 0f5c32bfd33e -r fc0fecf09eb9 app/controllers/repositories_controller.rb --- a/app/controllers/repositories_controller.rb Wed Jul 03 09:57:31 2013 +0100 +++ b/app/controllers/repositories_controller.rb Thu Jul 18 11:18:35 2013 +0100 @@ -60,6 +60,21 @@ end def edit + @repository = @project.repository + params[:repository_scm]='Mercurial' + if !@repository + @repository = Repository.factory(params[:repository_scm]) + @repository.project = @project if @repository + end + if request.post? && @repository + attrs = pickup_extra_info + @repository.safe_attributes = attrs[:attrs] + if attrs[:attrs_extra].keys.any? + @repository.merge_extra_info(attrs[:attrs_extra]) + end + @repository.project = @project + redirect_to settings_project_path(@project, :tab => 'repositories') + end end def update diff -r 0f5c32bfd33e -r fc0fecf09eb9 app/views/projects/settings/_repositories.html.erb --- a/app/views/projects/settings/_repositories.html.erb Wed Jul 03 09:57:31 2013 +0100 +++ b/app/views/projects/settings/_repositories.html.erb Thu Jul 18 11:18:35 2013 +0100 @@ -1,41 +1,59 @@ -<% if @project.repositories.any? %> - - - - - - - - - - - - <% @project.repositories.sort.each do |repository| %> - - - - - - - - <% end %> - -
<%= l(:field_identifier) %><%= l(:field_repository_is_default) %><%= l(:label_scm) %><%= l(:label_repository) %>
- <%= link_to repository.identifier, - {:controller => 'repositories', :action => 'show',:id => @project, :repository_id => repository.identifier_param} if repository.identifier.present? %> - <%= checked_image repository.is_default? %><%=h repository.scm_name %><%=h repository.url %> - <% if User.current.allowed_to?(:manage_repository, @project) %> - <%= link_to(l(:label_user_plural), committers_repository_path(repository), + +<%= javascript_include_tag 'repository' %> + +<%= form_for @repository, + :as => :repository, + :url => { :controller => 'repositories', :action => 'edit', :id => @project }, + :remote => true, + :method => 'post' do |f| %> + +<%= error_messages_for 'repository' %> + +
+ +

+<% if @repository %> + <%= l(:text_settings_repo_explanation).html_safe %> + <% if @repository.is_external %> +

<%= l(:text_settings_repo_is_external).html_safe %> + <% else %> +

<%= l(:text_settings_repo_is_internal).html_safe %> + <% end %> +

+ + +

+ <%= label_tag('repository_is_external', l(:label_is_external_repository)) %> + <%= check_box :repository, :is_external, :onclick => "toggle_ext_url()" %> +
<%= l(:setting_external_repository).html_safe %> +

+ +

+ <%= label_tag('repository_external_url', l(:label_repository_external_url)) %> + <%= text_field :repository, :external_url, :disabled => !(@repository and @repository.is_external) %> +
<%= l(:setting_external_repository_url).html_safe %> +

+ +

<%= l(:text_settings_repo_need_help).html_safe %>

+ +
+ +
+<% if @repository && !@repository.new_record? %> +<%= link_to(l(:label_user_plural), + { + :controller => 'repositories', + :action => 'committers', + :id => @project + }, :class => 'icon icon-user') %> - <%= link_to(l(:button_edit), edit_repository_path(repository), - :class => 'icon icon-edit') %> - <%= delete_link repository_path(repository) %> - <% end %> -
+<% end %> + + +<%= submit_tag(l(:button_save)) %> + <% else %> -

<%= l(:label_no_data) %>

+ <%= l(:text_settings_repo_creation).html_safe %> <% end %> -<% if User.current.allowed_to?(:manage_repository, @project) %> -

<%= link_to l(:label_repository_new), new_project_repository_path(@project), :class => 'icon icon-add' %>

<% end %>