Mercurial > hg > soundsoftware-site
changeset 1354:fc0fecf09eb9 bug_635
Restore our original repos settings page. But I don't think this is going to work well with the new routes configuration
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Thu, 18 Jul 2013 11:18:35 +0100 |
parents | 0f5c32bfd33e |
children | 3d01be97cb5a |
files | app/controllers/projects_controller.rb app/controllers/repositories_controller.rb app/views/projects/settings/_repositories.html.erb |
diffstat | 3 files changed, 70 insertions(+), 36 deletions(-) [+] |
line wrap: on
line diff
--- 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
--- 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
--- 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? %> -<table class="list"> - <thead> - <tr> - <th><%= l(:field_identifier) %></th> - <th><%= l(:field_repository_is_default) %></th> - <th><%= l(:label_scm) %></th> - <th><%= l(:label_repository) %></th> - <th></th> - </tr> - </thead> - <tbody> - <% @project.repositories.sort.each do |repository| %> - <tr class="<%= cycle 'odd', 'even' %>"> - <td> - <%= link_to repository.identifier, - {:controller => 'repositories', :action => 'show',:id => @project, :repository_id => repository.identifier_param} if repository.identifier.present? %> - </td> - <td align="center"><%= checked_image repository.is_default? %></td> - <td><%=h repository.scm_name %></td> - <td><%=h repository.url %></td> - <td class="buttons"> - <% 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' %> + +<div class="box tabular"> + +<p> +<% if @repository %> + <%= l(:text_settings_repo_explanation).html_safe %></ br> + <% if @repository.is_external %> + <p><%= l(:text_settings_repo_is_external).html_safe %></ br> + <% else %> + <p><%= l(:text_settings_repo_is_internal).html_safe %></ br> + <% end %> +</p> + + +<p> + <%= label_tag('repository_is_external', l(:label_is_external_repository)) %> + <%= check_box :repository, :is_external, :onclick => "toggle_ext_url()" %> + <br/><em><%= l(:setting_external_repository).html_safe %></em> +</p> + +<p> + <%= label_tag('repository_external_url', l(:label_repository_external_url)) %> + <%= text_field :repository, :external_url, :disabled => !(@repository and @repository.is_external) %> + <br/><em><%= l(:setting_external_repository_url).html_safe %></em> +</p> + +<p><%= l(:text_settings_repo_need_help).html_safe %></p> + +</div> + +<div class="contextual"> +<% 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 %> - </td> - </tr> - <% end %> - </tbody> -</table> +<% end %> +</div> + +<%= submit_tag(l(:button_save)) %> + <% else %> -<p class="nodata"><%= l(:label_no_data) %></p> + <%= l(:text_settings_repo_creation).html_safe %></ br> <% end %> -<% if User.current.allowed_to?(:manage_repository, @project) %> - <p><%= link_to l(:label_repository_new), new_project_repository_path(@project), :class => 'icon icon-add' %></p> <% end %>