From 3946926beb0eb9c96038c9dc61e2c3b23b31cff1 Mon Sep 17 00:00:00 2001 From: Steven Verbeek Date: Fri, 30 Mar 2012 23:17:43 -0300 Subject: [PATCH 1/8] Made the admin area new project same as client side --- app/views/admin/projects/_form.html.haml | 16 ++++++++++------ app/views/admin/projects/new.html.haml | 15 ++++++++++----- app/views/projects/_form.html.haml | 2 +- lib/post-receive-hook | 2 +- 4 files changed, 22 insertions(+), 13 deletions(-) diff --git a/app/views/admin/projects/_form.html.haml b/app/views/admin/projects/_form.html.haml index 84cd030ec09..dd28fc76853 100644 --- a/app/views/admin/projects/_form.html.haml +++ b/app/views/admin/projects/_form.html.haml @@ -4,10 +4,9 @@ %ul - @admin_project.errors.full_messages.each do |msg| %li= msg - .clearfix = f.label :name - .input= f.text_field :name + .input= f.text_field :name, :placeholder => "Example Project" .clearfix = f.label :path do Path @@ -23,7 +22,7 @@ %span.add-on= web_app_url = f.text_field :code, :placeholder => "example" - - unless @admin_project.new_record? + - unless @admin_project.new_record? || @admin_project.heads.empty? .clearfix = f.label :owner_id .input= f.select :owner_id, User.all.map { |user| [user.name, user.id] } @@ -48,15 +47,20 @@ = f.label :wall_enabled, "Wall" .input= f.check_box :wall_enabled + .clearfix + = f.label :wiki_enabled, "Wiki" + .input= f.check_box :wiki_enabled + .clearfix = f.label :description - .input= f.text_area :description, :class => "xxlarge" - .clear + .input + = f.text_area :description, :placeholder => "project description", :class => "xxlarge", :rows => 5 + %p.hint Markdown is enabled. %br .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" + = link_to 'Remove Project', [:admin, @admin_project], :confirm => 'Are you sure?', :method => :delete, :class => "btn danger right" :javascript $(function(){ diff --git a/app/views/admin/projects/new.html.haml b/app/views/admin/projects/new.html.haml index dfbd3edf080..3f3d51d038a 100644 --- a/app/views/admin/projects/new.html.haml +++ b/app/views/admin/projects/new.html.haml @@ -1,6 +1,11 @@ -%h1 New project +.project_new_holder + %h3 New Project + %hr + = render 'form' +%div.ajax_loader.hide + %center + %div.padded= image_tag "ajax_loader.gif" + %h3.prepend-top Creating project & repository. Please wait for few minutes -= render 'form' - -%br -= link_to 'Back', admin_projects_path, :class => '' +:javascript + $(function(){ new Projects(); }); diff --git a/app/views/projects/_form.html.haml b/app/views/projects/_form.html.haml index 8f6244f2f5b..b46ceb550e8 100644 --- a/app/views/projects/_form.html.haml +++ b/app/views/projects/_form.html.haml @@ -59,4 +59,4 @@ = link_to 'Cancel', @project, :class => "btn" - unless @project.new_record? .right - = link_to 'Remove', @project, :confirm => 'Are you sure?', :method => :delete, :class => "btn danger" + = link_to 'Remove Project', @project, :confirm => 'Are you sure?', :method => :delete, :class => "btn danger" diff --git a/lib/post-receive-hook b/lib/post-receive-hook index 93eb96c2a6d..7d084394dea 100755 --- a/lib/post-receive-hook +++ b/lib/post-receive-hook @@ -8,5 +8,5 @@ do # For every branch or tag that was pushed, create a Resque job in redis. pwd=`pwd` reponame=`basename "$pwd" | cut -d. -f1` - env -i redis-cli rpush "resque:queue:post_receive" "{\"class\":\"PostReceive\",\"args\":[\"$reponame\",\"$oldrev\",\"$newrev\",\"$ref\",\"$GL_USER\"]}" > /dev/null 2>&1 + redis-cli rpush "resque:queue:post_receive" "{\"class\":\"PostReceive\",\"args\":[\"$reponame\",\"$oldrev\",\"$newrev\",\"$ref\",\"$GL_USER\"]}" > /dev/null 2>&1 done -- GitLab From 78ff1ff0211ef18bcdcdc5c2b9f26ac3ada496d0 Mon Sep 17 00:00:00 2001 From: Steven Verbeek Date: Fri, 30 Mar 2012 23:31:47 -0300 Subject: [PATCH 2/8] Copied create function --- app/controllers/admin/projects_controller.rb | 33 ++++++++++++++++---- 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/app/controllers/admin/projects_controller.rb b/app/controllers/admin/projects_controller.rb index 8f1376540c8..e4d27b3b189 100644 --- a/app/controllers/admin/projects_controller.rb +++ b/app/controllers/admin/projects_controller.rb @@ -38,13 +38,34 @@ class Admin::ProjectsController < ApplicationController end def create - @admin_project = Project.new(params[:project]) - @admin_project.owner = current_user + @project = Project.new(params[:project]) + @project.owner = current_user - if @admin_project.save - redirect_to [:admin, @admin_project], notice: 'Project was successfully created.' - else - render :action => "new" + Project.transaction do + @project.save! + @project.users_projects.create!(:project_access => UsersProject::MASTER, :user => current_user) + + # when project saved no team member exist so + # project repository should be updated after first user add + @project.update_repository + end + + respond_to do |format| + if @project.valid? + format.html { redirect_to @project, notice: 'Project was successfully created.' } + format.js + else + format.html { render action: "new" } + format.js + end + end + rescue Gitlabhq::Gitolite::AccessDenied + render :js => "location.href = '#{errors_githost_path}'" and return + rescue StandardError => ex + @project.errors.add(:base, "Cant save project. Please try again later") + respond_to do |format| + format.html { render action: "new" } + format.js end end -- GitLab From 7d341613096fc49026a3623888e45ec38bb78c08 Mon Sep 17 00:00:00 2001 From: Steven Verbeek Date: Fri, 30 Mar 2012 23:35:17 -0300 Subject: [PATCH 3/8] Removed the remove project button on create page --- app/views/admin/projects/_form.html.haml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/views/admin/projects/_form.html.haml b/app/views/admin/projects/_form.html.haml index dd28fc76853..f195f05b4b3 100644 --- a/app/views/admin/projects/_form.html.haml +++ b/app/views/admin/projects/_form.html.haml @@ -60,7 +60,9 @@ .actions = f.submit 'Save', :class => "btn primary" = link_to 'Cancel', [:admin, @admin_project], :class => "btn" - = link_to 'Remove Project', [:admin, @admin_project], :confirm => 'Are you sure?', :method => :delete, :class => "btn danger right" + - unless @project.new_record? + .right + = link_to 'Remove Project', [:admin, @admin_project], :confirm => 'Are you sure?', :method => :delete, :class => "btn danger" :javascript $(function(){ -- GitLab From d189210e1d3bae277d7fe2091fec5d91b5823a21 Mon Sep 17 00:00:00 2001 From: Steven Verbeek Date: Fri, 30 Mar 2012 23:40:06 -0300 Subject: [PATCH 4/8] One quick fix --- app/views/admin/projects/_form.html.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/admin/projects/_form.html.haml b/app/views/admin/projects/_form.html.haml index f195f05b4b3..a4f5cb79b50 100644 --- a/app/views/admin/projects/_form.html.haml +++ b/app/views/admin/projects/_form.html.haml @@ -60,7 +60,7 @@ .actions = f.submit 'Save', :class => "btn primary" = link_to 'Cancel', [:admin, @admin_project], :class => "btn" - - unless @project.new_record? + - unless @admin_project.new_record? .right = link_to 'Remove Project', [:admin, @admin_project], :confirm => 'Are you sure?', :method => :delete, :class => "btn danger" -- GitLab From 3bf0a318bf525206bd602dd1a2e5c7e2ed4c9a57 Mon Sep 17 00:00:00 2001 From: Steven Verbeek Date: Fri, 30 Mar 2012 23:48:33 -0300 Subject: [PATCH 5/8] Remove taggify javascript, as it didn't work and caused issues --- app/views/admin/projects/_form.html.haml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/app/views/admin/projects/_form.html.haml b/app/views/admin/projects/_form.html.haml index a4f5cb79b50..eeb6ba8b15c 100644 --- a/app/views/admin/projects/_form.html.haml +++ b/app/views/admin/projects/_form.html.haml @@ -63,10 +63,3 @@ - unless @admin_project.new_record? .right = link_to 'Remove Project', [:admin, @admin_project], :confirm => 'Are you sure?', :method => :delete, :class => "btn danger" - -:javascript - $(function(){ - taggifyForm(); - $('#project_owner_id').chosen(); - $('#project_default_branch').chosen(); - }) -- GitLab From e1655955f746186cef067012c6115614f1129cc4 Mon Sep 17 00:00:00 2001 From: Steven Verbeek Date: Fri, 30 Mar 2012 23:54:21 -0300 Subject: [PATCH 6/8] Removed debugging stuff --- app/controllers/admin/projects_controller.rb | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/app/controllers/admin/projects_controller.rb b/app/controllers/admin/projects_controller.rb index e4d27b3b189..0e5e8747ada 100644 --- a/app/controllers/admin/projects_controller.rb +++ b/app/controllers/admin/projects_controller.rb @@ -38,21 +38,21 @@ class Admin::ProjectsController < ApplicationController end def create - @project = Project.new(params[:project]) - @project.owner = current_user + @admin_project = Project.new(params[:project]) + @admin_project.owner = current_user Project.transaction do - @project.save! - @project.users_projects.create!(:project_access => UsersProject::MASTER, :user => current_user) + @admin_project.save! + @admin_project.users_projects.create!(:project_access => UsersProject::MASTER, :user => current_user) # when project saved no team member exist so # project repository should be updated after first user add - @project.update_repository + @admin_project.update_repository end respond_to do |format| - if @project.valid? - format.html { redirect_to @project, notice: 'Project was successfully created.' } + if @admin_project.valid? + format.html { redirect_to @admin_project, notice: 'Project was successfully created.' } format.js else format.html { render action: "new" } @@ -62,7 +62,7 @@ class Admin::ProjectsController < ApplicationController rescue Gitlabhq::Gitolite::AccessDenied render :js => "location.href = '#{errors_githost_path}'" and return rescue StandardError => ex - @project.errors.add(:base, "Cant save project. Please try again later") + @admin_project.errors.add(:base, "Cant save project. Please try again later") respond_to do |format| format.html { render action: "new" } format.js -- GitLab From 70f1cf1b205f8058f566384c48fccb703f5a20d5 Mon Sep 17 00:00:00 2001 From: Steven Verbeek Date: Tue, 3 Apr 2012 20:48:50 -0300 Subject: [PATCH 7/8] reverted admin project save --- app/controllers/admin/projects_controller.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/controllers/admin/projects_controller.rb b/app/controllers/admin/projects_controller.rb index 0e5e8747ada..4cf47f216e5 100644 --- a/app/controllers/admin/projects_controller.rb +++ b/app/controllers/admin/projects_controller.rb @@ -42,8 +42,10 @@ class Admin::ProjectsController < ApplicationController @admin_project.owner = current_user Project.transaction do - @admin_project.save! - @admin_project.users_projects.create!(:project_access => UsersProject::MASTER, :user => current_user) + if @admin_project.save + redirect_to [:admin, @admin_project], notice: 'Project was successfully created.' + else + render :action => "new" # when project saved no team member exist so # project repository should be updated after first user add -- GitLab From 790686119d023a1c83f8e9ffd3c8cadd20f53720 Mon Sep 17 00:00:00 2001 From: Steven Verbeek Date: Tue, 3 Apr 2012 20:55:31 -0300 Subject: [PATCH 8/8] fixed a issue --- app/controllers/admin/projects_controller.rb | 31 +++----------------- 1 file changed, 4 insertions(+), 27 deletions(-) diff --git a/app/controllers/admin/projects_controller.rb b/app/controllers/admin/projects_controller.rb index 4cf47f216e5..8f1376540c8 100644 --- a/app/controllers/admin/projects_controller.rb +++ b/app/controllers/admin/projects_controller.rb @@ -41,33 +41,10 @@ class Admin::ProjectsController < ApplicationController @admin_project = Project.new(params[:project]) @admin_project.owner = current_user - Project.transaction do - if @admin_project.save - redirect_to [:admin, @admin_project], notice: 'Project was successfully created.' - else - render :action => "new" - - # when project saved no team member exist so - # project repository should be updated after first user add - @admin_project.update_repository - end - - respond_to do |format| - if @admin_project.valid? - format.html { redirect_to @admin_project, notice: 'Project was successfully created.' } - format.js - else - format.html { render action: "new" } - format.js - end - end - rescue Gitlabhq::Gitolite::AccessDenied - render :js => "location.href = '#{errors_githost_path}'" and return - rescue StandardError => ex - @admin_project.errors.add(:base, "Cant save project. Please try again later") - respond_to do |format| - format.html { render action: "new" } - format.js + if @admin_project.save + redirect_to [:admin, @admin_project], notice: 'Project was successfully created.' + else + render :action => "new" end end -- GitLab