| @@ -10,32 +10,54 @@ $(document).on('turbolinks:load', function(){ | |||||
| // organizations open cla | // organizations open cla | ||||
| $('.organizations-list-container').on('click', '.open-cla-action', function(){ | $('.organizations-list-container').on('click', '.open-cla-action', function(){ | ||||
| var $action = $(this); | |||||
| var $openClaAction = $(this); | |||||
| var $closeClaAction = $openClaAction.siblings('.close-cla-action'); | |||||
| var userId = $action.data('id'); | |||||
| $.ajax({ | |||||
| url: '/admins/organizations/' + userId + '/open_cla', | |||||
| method: 'POST', | |||||
| dataType: 'json', | |||||
| success: function() { | |||||
| showSuccessNotify(); | |||||
| var userId = $openClaAction.data('id'); | |||||
| customConfirm({ | |||||
| content: '确认开通吗?', | |||||
| ok: function () { | |||||
| $.ajax({ | |||||
| url: '/admins/organizations/' + userId + '/open_cla', | |||||
| method: 'POST', | |||||
| dataType: 'json', | |||||
| success: function() { | |||||
| showSuccessNotify(); | |||||
| $closeClaAction.show(); | |||||
| $openClaAction.hide(); | |||||
| }, | |||||
| error: function(res){ | |||||
| $.notify({ message: res.responseJSON.message }, { type: 'danger' }); | |||||
| } | |||||
| }); | |||||
| } | } | ||||
| }); | |||||
| }) | |||||
| }); | }); | ||||
| // organizations close cla | // organizations close cla | ||||
| $('.organizations-list-container').on('click', '.close-cla-action', function(){ | $('.organizations-list-container').on('click', '.close-cla-action', function(){ | ||||
| var $action = $(this); | |||||
| var $closeClaAction = $(this); | |||||
| var $openClaAction= $closeClaAction.siblings('.open-cla-action'); | |||||
| var userId = $action.data('id'); | |||||
| $.ajax({ | |||||
| url: '/admins/organizations/' + userId + '/close_cla', | |||||
| method: 'POST', | |||||
| dataType: 'json', | |||||
| success: function() { | |||||
| showSuccessNotify(); | |||||
| var userId = $openClaAction.data('id'); | |||||
| customConfirm({ | |||||
| content: '确认关闭吗?', | |||||
| ok: function () { | |||||
| $.ajax({ | |||||
| url: '/admins/organizations/' + userId + '/close_cla', | |||||
| method: 'POST', | |||||
| dataType: 'json', | |||||
| success: function() { | |||||
| showSuccessNotify(); | |||||
| $openClaAction.show(); | |||||
| $closeClaAction.hide(); | |||||
| }, | |||||
| error: function(res){ | |||||
| $.notify({ message: res.responseJSON.message }, { type: 'danger' }); | |||||
| } | |||||
| }); | |||||
| } | } | ||||
| }); | |||||
| }) | |||||
| }); | }); | ||||
| @@ -11,15 +11,18 @@ class Admins::OrganizationsController < Admins::BaseController | |||||
| def open_cla | def open_cla | ||||
| @org = Organization.find(params[:id]) | |||||
| @org.open_cla! | @org.open_cla! | ||||
| render_ok | render_ok | ||||
| end | end | ||||
| def close_cla | def close_cla | ||||
| @org = Organization.find(params[:id]) | |||||
| @org.close_cla! | |||||
| render_ok | |||||
| if @org.cla.nil? | |||||
| @org.close_cla! | |||||
| render_ok | |||||
| else | |||||
| render_error(' 该组织已创建CLA 不允许关闭') | |||||
| end | |||||
| end | end | ||||
| def show | def show | ||||
| @@ -9,7 +9,7 @@ class Organizations::ClasController < Organizations::BaseController | |||||
| end | end | ||||
| def create | def create | ||||
| tip_exception("您的组织还未拥有创建CLA权限,请联系管理员") if @organization.cla == false | |||||
| tip_exception("您的组织还未拥有创建CLA权限,请联系管理员") if @organization.enabling_cla == false | |||||
| ActiveRecord::Base.transaction do | ActiveRecord::Base.transaction do | ||||
| if @organization.cla.present? | if @organization.cla.present? | ||||
| return tip_exception("组织已存在CLA!") | return tip_exception("组织已存在CLA!") | ||||
| @@ -47,7 +47,7 @@ | |||||
| # watchers_count :integer default("0") | # watchers_count :integer default("0") | ||||
| # devops_step :integer default("0") | # devops_step :integer default("0") | ||||
| # sign_cla :boolean default("0") | # sign_cla :boolean default("0") | ||||
| # cla :boolean default("0") | |||||
| # enabling_cla :boolean default("0") | |||||
| # | # | ||||
| # Indexes | # Indexes | ||||
| # | # | ||||
| @@ -47,7 +47,7 @@ | |||||
| # watchers_count :integer default("0") | # watchers_count :integer default("0") | ||||
| # devops_step :integer default("0") | # devops_step :integer default("0") | ||||
| # sign_cla :boolean default("0") | # sign_cla :boolean default("0") | ||||
| # cla :boolean default("0") | |||||
| # enabling_cla :boolean default("0") | |||||
| # | # | ||||
| # Indexes | # Indexes | ||||
| # | # | ||||
| @@ -194,15 +194,15 @@ class Organization < Owner | |||||
| end | end | ||||
| def open_cla! | def open_cla! | ||||
| update_attribute(:cla, true) | |||||
| update_attribute(:enabling_cla, true) | |||||
| end | end | ||||
| def close_cla! | def close_cla! | ||||
| update_attribute(:cla, false) | |||||
| update_attribute(:enabling_cla, false) | |||||
| end | end | ||||
| def open_cla? | def open_cla? | ||||
| cla == true | |||||
| enabling_cla == true | |||||
| end | end | ||||
| end | end | ||||
| @@ -47,7 +47,7 @@ | |||||
| # watchers_count :integer default("0") | # watchers_count :integer default("0") | ||||
| # devops_step :integer default("0") | # devops_step :integer default("0") | ||||
| # sign_cla :boolean default("0") | # sign_cla :boolean default("0") | ||||
| # cla :boolean default("0") | |||||
| # enabling_cla :boolean default("0") | |||||
| # | # | ||||
| # Indexes | # Indexes | ||||
| # | # | ||||
| @@ -17,4 +17,4 @@ json.news_content organization.news_content | |||||
| json.memo organization.memo | json.memo organization.memo | ||||
| json.news_title organization.news_title | json.news_title organization.news_title | ||||
| json.news_url organization.news_url | json.news_url organization.news_url | ||||
| json.cla organization.cla | |||||
| json.enabling_cla organization.enabling_cla | |||||
| @@ -0,0 +1,5 @@ | |||||
| class ChangeCalToEnablingClaForUsers < ActiveRecord::Migration[5.2] | |||||
| def change | |||||
| rename_column :users, :cla ,:enabling_cla | |||||
| end | |||||
| end | |||||