From 3250a024ef82bc6bb89f7c1dafdc824b6e09439b Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Tue, 17 Apr 2012 20:27:18 +0300 Subject: [PATCH] 1. Improved admin -> new project form 2. Fixed bug: post-receive file was not added when create project via admin --- app/controllers/admin/projects_controller.rb | 2 ++ app/models/project/repository_trait.rb | 5 +++++ app/views/admin/projects/_form.html.haml | 6 +++--- app/views/admin/projects/index.html.haml | 2 ++ app/views/admin/projects/new.html.haml | 7 ++----- app/views/admin/projects/show.html.haml | 6 ++++++ 6 files changed, 20 insertions(+), 8 deletions(-) diff --git a/app/controllers/admin/projects_controller.rb b/app/controllers/admin/projects_controller.rb index 8f137654..e4b97368 100644 --- a/app/controllers/admin/projects_controller.rb +++ b/app/controllers/admin/projects_controller.rb @@ -34,6 +34,8 @@ class Admin::ProjectsController < ApplicationController params[:project_access] ) + @admin_project.update_repository + redirect_to [:admin, @admin_project], notice: 'Project was successfully updated.' end diff --git a/app/models/project/repository_trait.rb b/app/models/project/repository_trait.rb index 28e47a78..2cd8159a 100644 --- a/app/models/project/repository_trait.rb +++ b/app/models/project/repository_trait.rb @@ -47,6 +47,11 @@ module Project::RepositoryTrait File.chmod(0775, hook_file) end + def has_post_receive_file? + hook_file = File.join(path_to_repo, 'hooks', 'post-receive') + File.exists?(hook_file) + end + def tags repo.tags.map(&:name).sort.reverse end diff --git a/app/views/admin/projects/_form.html.haml b/app/views/admin/projects/_form.html.haml index 84cd030e..4a2d01e1 100644 --- a/app/views/admin/projects/_form.html.haml +++ b/app/views/admin/projects/_form.html.haml @@ -56,11 +56,11 @@ .actions = f.submit 'Save', :class => "btn primary" = link_to 'Cancel', [:admin, @admin_project], :class => "btn" - = link_to 'Destroy', [:admin, @admin_project], :confirm => 'Are you sure?', :method => :delete, :class => "btn danger right" + - unless @admin_project.new_record? + = link_to 'Destroy', [:admin, @admin_project], :confirm => 'Are you sure?', :method => :delete, :class => "btn danger right" :javascript $(function(){ - taggifyForm(); $('#project_owner_id').chosen(); - $('#project_default_branch').chosen(); + new Projects(); }) diff --git a/app/views/admin/projects/index.html.haml b/app/views/admin/projects/index.html.haml index bf576e49..f26ddf2b 100644 --- a/app/views/admin/projects/index.html.haml +++ b/app/views/admin/projects/index.html.haml @@ -7,6 +7,7 @@ %th Name %th Path %th Team Members + %th Post Receive %th Last Commit %th %th @@ -16,6 +17,7 @@ %td= link_to project.name, [:admin, project] %td= project.path %td= project.users_projects.count + %td= check_box_tag :post_receive_file, 1, project.has_post_receive_file?, :disabled => true %td= last_commit(project) %td= link_to 'Edit', edit_admin_project_path(project), :id => "edit_#{dom_id(project)}", :class => "btn small" %td= link_to 'Destroy', [:admin, project], :confirm => 'Are you sure?', :method => :delete, :class => "btn small danger" diff --git a/app/views/admin/projects/new.html.haml b/app/views/admin/projects/new.html.haml index dfbd3edf..1e1c7aac 100644 --- a/app/views/admin/projects/new.html.haml +++ b/app/views/admin/projects/new.html.haml @@ -1,6 +1,3 @@ -%h1 New project - +%h2 New project +%hr = render 'form' - -%br -= link_to 'Back', admin_projects_path, :class => '' diff --git a/app/views/admin/projects/show.html.haml b/app/views/admin/projects/show.html.haml index 5303a0e6..90ed8ea9 100644 --- a/app/views/admin/projects/show.html.haml +++ b/app/views/admin/projects/show.html.haml @@ -28,6 +28,12 @@ Description: %td = @admin_project.description + %tr + %td + %b + Post Receive File: + %td + = check_box_tag :post_receive_file, 1, @admin_project.has_post_receive_file?, :disabled => true %br %h3 Team