From 36e6d44ac1e1102ab3ee22a3d6c681b83ec116f1 Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 5 May 2016 11:01:02 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E4=BA=8C=E7=BA=A7=E7=9B=AE=E5=BD=95?= =?UTF-8?q?=E6=96=B0=E5=BB=BA=E7=9A=84=E6=97=B6=E5=80=99=E6=9A=82=E6=97=B6?= =?UTF-8?q?=E9=9A=90=E8=97=8F=E8=B5=84=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/organizations/_subfield_list.html.erb | 2 +- app/views/sub_domains/_new.html.erb | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/views/organizations/_subfield_list.html.erb b/app/views/organizations/_subfield_list.html.erb index 464fb66e4..32517d2be 100644 --- a/app/views/organizations/_subfield_list.html.erb +++ b/app/views/organizations/_subfield_list.html.erb @@ -102,7 +102,7 @@ <%= link_to("添加二级目录", new_org_subfield_sub_domain_path(:org_subfield_id => field.id, :field => field), :class => "linkGrey fr mr5", :remote => true) %>
- <%= render :partial => 'organizations/subfield_sub_domains_list', :locals => {:field => field} %> + <%#= render :partial => 'organizations/subfield_sub_domains_list', :locals => {:field => field} %> <% end %> <% end %> diff --git a/app/views/sub_domains/_new.html.erb b/app/views/sub_domains/_new.html.erb index ce0e802c4..25b660750 100644 --- a/app/views/sub_domains/_new.html.erb +++ b/app/views/sub_domains/_new.html.erb @@ -9,10 +9,10 @@ -
  • - - -
  • + + + +
  • 确定
    From 5f696fe123be6819f83a1556d2bfbc97a91bd6a6 Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 5 May 2016 11:06:11 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=8C=E7=BA=A7?= =?UTF-8?q?=E5=9F=9F=E5=90=8D=E5=B1=80=E9=83=A8=E5=88=B7=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/organizations/_subfield_list.html.erb | 2 +- app/views/organizations/_subfield_sub_domains_list.html.erb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/organizations/_subfield_list.html.erb b/app/views/organizations/_subfield_list.html.erb index 32517d2be..464fb66e4 100644 --- a/app/views/organizations/_subfield_list.html.erb +++ b/app/views/organizations/_subfield_list.html.erb @@ -102,7 +102,7 @@ <%= link_to("添加二级目录", new_org_subfield_sub_domain_path(:org_subfield_id => field.id, :field => field), :class => "linkGrey fr mr5", :remote => true) %>
    - <%#= render :partial => 'organizations/subfield_sub_domains_list', :locals => {:field => field} %> + <%= render :partial => 'organizations/subfield_sub_domains_list', :locals => {:field => field} %> <% end %> <% end %> diff --git a/app/views/organizations/_subfield_sub_domains_list.html.erb b/app/views/organizations/_subfield_sub_domains_list.html.erb index f68d06c1e..827e1464c 100644 --- a/app/views/organizations/_subfield_sub_domains_list.html.erb +++ b/app/views/organizations/_subfield_sub_domains_list.html.erb @@ -14,7 +14,7 @@
  • <%= subdomain.name %>
  • 新增
  • @@ -27,7 +27,7 @@
  • <%= subdomain.hide==0?"隐藏":"可见" %> | - <%= link_to "删除", org_subfield_sub_domain_path(subdomain), :method => 'delete', :remote => true, :confirm => "您确定删除吗?", :class => "linkGrey fr ml5 mr5" %> + <%= link_to "删除", setting_organization_path(@organization), :method => 'delete', :remote => true, :confirm => "您确定删除吗?", :class => "linkGrey fr ml5 mr5" %> | 编辑
  • From 2920f21c956c00d52be8adb465a978165b284f90 Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 5 May 2016 11:28:28 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E4=BA=8C=E7=BA=A7=E5=9F=9F=E5=90=8D?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E5=8A=9F=E8=83=BD=E8=87=AA=E5=8A=A8=E5=88=B7?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/sub_domains_controller.rb | 8 ++++++++ .../_subfield_sub_domains_list.html.erb | 20 ++++++++++++++++++- app/views/sub_domains/update.js.erb | 3 +++ config/routes.rb | 2 +- 4 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 app/views/sub_domains/update.js.erb diff --git a/app/controllers/sub_domains_controller.rb b/app/controllers/sub_domains_controller.rb index d289c7e39..abf32e305 100644 --- a/app/controllers/sub_domains_controller.rb +++ b/app/controllers/sub_domains_controller.rb @@ -20,6 +20,14 @@ class SubDomainsController < ApplicationController end end + def update + @subdomain = SubDomain.find(params[:id]) + @subfield = OrgSubfield.find(params[:org_subfield_id]) + @organization = @subfield.organization + @subdomain.update_column(:name, params[:name]) + end + + def show render_404 # @subfield_content = @organization.org_subfields.order("priority") diff --git a/app/views/organizations/_subfield_sub_domains_list.html.erb b/app/views/organizations/_subfield_sub_domains_list.html.erb index 827e1464c..177e5ec0b 100644 --- a/app/views/organizations/_subfield_sub_domains_list.html.erb +++ b/app/views/organizations/_subfield_sub_domains_list.html.erb @@ -14,7 +14,7 @@
  • <%= subdomain.name %>
  • 新增
  • @@ -35,3 +35,21 @@ <% end %> <% end %> + + diff --git a/app/views/sub_domains/update.js.erb b/app/views/sub_domains/update.js.erb new file mode 100644 index 000000000..02810eee7 --- /dev/null +++ b/app/views/sub_domains/update.js.erb @@ -0,0 +1,3 @@ +$("#subsubdomain_show_<%= @subdomain.id %>").html("<%= @subdomain.name %>"); +$("#sub_field_left_lists").html(""); +$("#sub_field_left_lists").html("<%= escape_javascript(render :partial => 'organizations/org_left_subfield_list', :locals => {:organization => @organization}) %>"); \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index 70e684966..4ab7140d5 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -118,7 +118,7 @@ RedmineApp::Application.routes.draw do end end - resources :sub_domains, :only => [:index, :new, :create, :show] do + resources :sub_domains, :only => [:index, :new, :create, :show, :update] do resources :sub_document_comments, :only => [:index, :new, :create, :show] do member do post 'add_reply' From 6d28d0becdbc7064abe61d0cde7f879204ec97c3 Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 5 May 2016 12:27:35 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E4=BA=8C=E7=BA=A7=E5=9F=9F=E5=90=8D?= =?UTF-8?q?=E7=9A=84=E5=88=A0=E9=99=A4=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/sub_domains_controller.rb | 6 ++++++ app/views/organizations/_subfield_sub_domains_list.html.erb | 2 +- app/views/sub_domains/destroy.js.erb | 4 ++++ config/routes.rb | 2 +- 4 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 app/views/sub_domains/destroy.js.erb diff --git a/app/controllers/sub_domains_controller.rb b/app/controllers/sub_domains_controller.rb index abf32e305..f2943236b 100644 --- a/app/controllers/sub_domains_controller.rb +++ b/app/controllers/sub_domains_controller.rb @@ -27,6 +27,12 @@ class SubDomainsController < ApplicationController @subdomain.update_column(:name, params[:name]) end + def destroy + @subdomain = SubDomain.find(params[:id]) + @subfield = OrgSubfield.find(params[:org_subfield_id]) + @organization = @subfield.organization + @subdomain.destroy + end def show render_404 diff --git a/app/views/organizations/_subfield_sub_domains_list.html.erb b/app/views/organizations/_subfield_sub_domains_list.html.erb index 177e5ec0b..42e7a8e55 100644 --- a/app/views/organizations/_subfield_sub_domains_list.html.erb +++ b/app/views/organizations/_subfield_sub_domains_list.html.erb @@ -27,7 +27,7 @@
  • <%= subdomain.hide==0?"隐藏":"可见" %> | - <%= link_to "删除", setting_organization_path(@organization), :method => 'delete', :remote => true, :confirm => "您确定删除吗?", :class => "linkGrey fr ml5 mr5" %> + <%= link_to "删除", org_subfield_sub_domain_path(subdomain, :org_subfield_id => subdomain.org_subfield.id), :method => 'delete', :remote => true, :confirm => "您确定删除吗?", :class => "linkGrey fr ml5 mr5" %> | 编辑
  • diff --git a/app/views/sub_domains/destroy.js.erb b/app/views/sub_domains/destroy.js.erb new file mode 100644 index 000000000..913c400f7 --- /dev/null +++ b/app/views/sub_domains/destroy.js.erb @@ -0,0 +1,4 @@ +$("#org_subfield_list").html(""); +$("#org_subfield_list").html("<%= escape_javascript(render :partial => 'organizations/subfield_list', :locals => {:subfields => @organization.org_subfields.order("priority") }) %>"); +$("#sub_field_left_lists").html(""); +$("#sub_field_left_lists").html("<%= escape_javascript(render :partial => 'organizations/org_left_subfield_list', :locals => {:organization => @organization}) %>"); \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index 4ab7140d5..575ab11f3 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -118,7 +118,7 @@ RedmineApp::Application.routes.draw do end end - resources :sub_domains, :only => [:index, :new, :create, :show, :update] do + resources :sub_domains, :only => [:index, :new, :create, :show, :update, :destroy] do resources :sub_document_comments, :only => [:index, :new, :create, :show] do member do post 'add_reply' From 79cd36f297762803d967a26d6124b3030d5e6093 Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 5 May 2016 14:39:27 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E4=BA=8C=E7=BA=A7=E5=9F=9F=E5=90=8D?= =?UTF-8?q?=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/sub_domains_controller.rb | 14 +++++------- .../_subfield_sub_domains_list.html.erb | 22 ++++++++++++++++--- .../sub_domains/domain_update_priority.js.erb | 2 ++ config/routes.rb | 3 +++ 4 files changed, 30 insertions(+), 11 deletions(-) create mode 100644 app/views/sub_domains/domain_update_priority.js.erb diff --git a/app/controllers/sub_domains_controller.rb b/app/controllers/sub_domains_controller.rb index f2943236b..fd6b9e166 100644 --- a/app/controllers/sub_domains_controller.rb +++ b/app/controllers/sub_domains_controller.rb @@ -1,6 +1,6 @@ class SubDomainsController < ApplicationController layout 'base_org' - before_filter :find_org_subfield_and_subdomain, :only => [:show, :index] + before_filter :find_org_subfield_and_subdomain, :only => [:show, :index, :domain_update_priority, :destroy, :update] def new @subdomain = SubDomain.new @@ -13,7 +13,7 @@ class SubDomainsController < ApplicationController @res = true @subfield = OrgSubfield.find(params[:org_subfield_id]) @organization = @subfield.organization - @subdomain = SubDomain.create(:name => params[:name], :org_subfield_id => params[:org_subfield_id],:priority => @subfield.sub_domains.blank? ? 1.1 : @subfield.sub_domains.order("priority").last.priority + 0.1) + @subdomain = SubDomain.create(:name => params[:name], :org_subfield_id => params[:org_subfield_id], :priority => @subfield.sub_domains.blank? ? 1 : @subfield.sub_domains.order("priority").last.priority + 1) @subdomain.update_column(:field_type, params[:field_type]) else @res = false @@ -21,16 +21,14 @@ class SubDomainsController < ApplicationController end def update - @subdomain = SubDomain.find(params[:id]) - @subfield = OrgSubfield.find(params[:org_subfield_id]) - @organization = @subfield.organization @subdomain.update_column(:name, params[:name]) end + def domain_update_priority + @subdomain.update_attribute(:priority, params[:priority].to_i) + end + def destroy - @subdomain = SubDomain.find(params[:id]) - @subfield = OrgSubfield.find(params[:org_subfield_id]) - @organization = @subfield.organization @subdomain.destroy end diff --git a/app/views/organizations/_subfield_sub_domains_list.html.erb b/app/views/organizations/_subfield_sub_domains_list.html.erb index 42e7a8e55..891b0aede 100644 --- a/app/views/organizations/_subfield_sub_domains_list.html.erb +++ b/app/views/organizations/_subfield_sub_domains_list.html.erb @@ -4,11 +4,11 @@
    • -
      +
      <%= subdomain.priority %>
      -
    • @@ -52,4 +52,20 @@ $(edit_id).hide(); // $(edit_id).focus(); } + + + function domain_update_priority(show_id, edit_id, field_id, domain_id, input_value){ + var re = /^[0-9]*[1-9]*[0-9]$/ + if(re.test(input_value) && $(show_id).html().trim() != input_value.trim() && input_value.trim() != ''){ + $.ajax({ + url: "/org_subfields/" + field_id + "/sub_domains/" + domain_id + "/domain_update_priority?priority=" + input_value, + type: 'put' + }); + } + else{ + $(edit_id).children("input").val($(show_id).html().trim()); + } + $(show_id).show(); + $(edit_id).hide(); + } diff --git a/app/views/sub_domains/domain_update_priority.js.erb b/app/views/sub_domains/domain_update_priority.js.erb new file mode 100644 index 000000000..475649aac --- /dev/null +++ b/app/views/sub_domains/domain_update_priority.js.erb @@ -0,0 +1,2 @@ +$("#org_subfield_list").html("<%= escape_javascript(render :partial => 'organizations/subfield_list',:locals => {:subfields => @organization.org_subfields.order("priority")}) %>"); +$("#sub_field_left_lists").html("<%= escape_javascript(render :partial => 'organizations/org_left_subfield_list', :locals => {:organization => @organization}) %>"); \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index 575ab11f3..556d8b233 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -135,6 +135,9 @@ RedmineApp::Application.routes.draw do collection do end member do + match 'domain_update_sub_dir', :via => [:put] + match 'domain_update_priority', :via => [:put] + match 'domain_update_status', :via => [:post] end end From e0c011948c9eb65a946e5bed4c9b3d820c64fdba Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 5 May 2016 15:16:14 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E4=BA=8C=E7=BA=A7=E5=9F=9F=E5=90=8D?= =?UTF-8?q?=E7=9A=84=E9=9A=90=E8=97=8F=E5=92=8C=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/sub_domains_controller.rb | 11 ++++++++++- .../_subfield_sub_domains_list.html.erb | 15 ++++++++++++++- app/views/sub_domains/hide_sub_domain.js.erb | 2 ++ app/views/sub_domains/show_sub_domain.js.erb | 2 ++ config/routes.rb | 2 ++ 5 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 app/views/sub_domains/hide_sub_domain.js.erb create mode 100644 app/views/sub_domains/show_sub_domain.js.erb diff --git a/app/controllers/sub_domains_controller.rb b/app/controllers/sub_domains_controller.rb index fd6b9e166..e32935789 100644 --- a/app/controllers/sub_domains_controller.rb +++ b/app/controllers/sub_domains_controller.rb @@ -1,6 +1,6 @@ class SubDomainsController < ApplicationController layout 'base_org' - before_filter :find_org_subfield_and_subdomain, :only => [:show, :index, :domain_update_priority, :destroy, :update] + before_filter :find_org_subfield_and_subdomain, :only => [:show, :index, :domain_update_priority, :destroy, :update, :hide_sub_domain, :show_sub_domain] def new @subdomain = SubDomain.new @@ -42,6 +42,15 @@ class SubDomainsController < ApplicationController end + def hide_sub_domain + @subdomain.update_attribute(:hide, 1) + end + + def show_sub_domain + @subdomain.update_attribute(:hide, 0) + end + + private def find_org_subfield_and_subdomain @subfield = OrgSubfield.find(params[:org_subfield_id]) diff --git a/app/views/organizations/_subfield_sub_domains_list.html.erb b/app/views/organizations/_subfield_sub_domains_list.html.erb index 891b0aede..10ee47e72 100644 --- a/app/views/organizations/_subfield_sub_domains_list.html.erb +++ b/app/views/organizations/_subfield_sub_domains_list.html.erb @@ -25,7 +25,7 @@
    • <%#= link_to "隐藏", hide_org_subsubdomain_organizations_path(subdomain), :method => 'post', :remote => true, :id => "hide_#{subdomain.id}", :class => "linkBlue fr mr5" %>
    • - <%= subdomain.hide==0?"隐藏":"可见" %> + <%= subdomain.hide==0?"隐藏":"可见" %> | <%= link_to "删除", org_subfield_sub_domain_path(subdomain, :org_subfield_id => subdomain.org_subfield.id), :method => 'delete', :remote => true, :confirm => "您确定删除吗?", :class => "linkGrey fr ml5 mr5" %> | @@ -68,4 +68,17 @@ $(show_id).show(); $(edit_id).hide(); } + + function hide_domain(content, field_id, domain_id){ + if (content.text() == '隐藏') + $.ajax({ + url: "/org_subfields/" + field_id + "/sub_domains/" + domain_id + "/hide_sub_domain", + type: "post" + }); + else + $.ajax({ + url: "/org_subfields/" + field_id + "/sub_domains/" + domain_id + "/show_sub_domain", + type: "post" + }); + } diff --git a/app/views/sub_domains/hide_sub_domain.js.erb b/app/views/sub_domains/hide_sub_domain.js.erb new file mode 100644 index 000000000..e09629dcf --- /dev/null +++ b/app/views/sub_domains/hide_sub_domain.js.erb @@ -0,0 +1,2 @@ +$("#hide_<%= @subfield.id %>").text("可见"); +$("#org_subfield_<%= @subfield.id %>").css("display", "none"); \ No newline at end of file diff --git a/app/views/sub_domains/show_sub_domain.js.erb b/app/views/sub_domains/show_sub_domain.js.erb new file mode 100644 index 000000000..e09629dcf --- /dev/null +++ b/app/views/sub_domains/show_sub_domain.js.erb @@ -0,0 +1,2 @@ +$("#hide_<%= @subfield.id %>").text("可见"); +$("#org_subfield_<%= @subfield.id %>").css("display", "none"); \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index 556d8b233..0816dadc7 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -138,6 +138,8 @@ RedmineApp::Application.routes.draw do match 'domain_update_sub_dir', :via => [:put] match 'domain_update_priority', :via => [:put] match 'domain_update_status', :via => [:post] + post 'hide_sub_domain' + post 'show_sub_domain' end end