diff options
author | Azul <azul@leap.se> | 2014-04-11 10:03:19 +0200 |
---|---|---|
committer | Azul <azul@leap.se> | 2014-04-11 10:07:23 +0200 |
commit | 636692f9921bd695d726695d2d46c91f5a6e56f3 (patch) | |
tree | a7cc0b89007bd273ae7719f31c16e052a141fec7 /billing/app/controllers | |
parent | 32136605ddd405a0bf47f3b795b22fd4b49465b5 (diff) |
move engines into engines directory
Also renamed help to support so it's harder to confuse it with documentation
Diffstat (limited to 'billing/app/controllers')
-rw-r--r-- | billing/app/controllers/billing_admin_controller.rb | 29 | ||||
-rw-r--r-- | billing/app/controllers/billing_base_controller.rb | 22 | ||||
-rw-r--r-- | billing/app/controllers/credit_card_info_controller.rb | 35 | ||||
-rw-r--r-- | billing/app/controllers/customer_controller.rb | 64 | ||||
-rw-r--r-- | billing/app/controllers/payments_controller.rb | 34 | ||||
-rw-r--r-- | billing/app/controllers/subscriptions_controller.rb | 63 |
6 files changed, 0 insertions, 247 deletions
diff --git a/billing/app/controllers/billing_admin_controller.rb b/billing/app/controllers/billing_admin_controller.rb deleted file mode 100644 index e11d4ee..0000000 --- a/billing/app/controllers/billing_admin_controller.rb +++ /dev/null @@ -1,29 +0,0 @@ -class BillingAdminController < BillingBaseController - before_filter :require_admin - - def show - - br_atleast_90_days = Braintree::Subscription.search do |search| - search.days_past_due >= 90 - end - @past_due_atleast_90_days = braintree_resource_collection_to_array(br_atleast_90_days) - - br_all_past_due = Braintree::Subscription.search do |search| - search.status.is Braintree::Subscription::Status::PastDue - #cannot search by balance. - end - @all_past_due = braintree_resource_collection_to_array(br_all_past_due) - - end - - private - - def braintree_resource_collection_to_array(braintree_resource_collection) - array = [] - braintree_resource_collection.each do |object| - array << object - end - array - end - -end diff --git a/billing/app/controllers/billing_base_controller.rb b/billing/app/controllers/billing_base_controller.rb deleted file mode 100644 index 0453677..0000000 --- a/billing/app/controllers/billing_base_controller.rb +++ /dev/null @@ -1,22 +0,0 @@ -class BillingBaseController < ApplicationController - before_filter :assign_user - - helper 'billing' - - # required for navigation to work. - def assign_user - if params[:user_id] - @user = User.find(params[:user_id]) - elsif params[:action] == "confirm"# confirms will come back with different ID set, so check for this first - # This is only for cases where an admin cannot apply action for customer, but should be all confirms - @user = current_user - elsif params[:id] - @user = User.find(params[:id]) - else - # TODO - # hacky, what are cases where @user hasn't yet been set? certainly some cases with subscriptions and payments - @user = current_user - end - end - -end diff --git a/billing/app/controllers/credit_card_info_controller.rb b/billing/app/controllers/credit_card_info_controller.rb deleted file mode 100644 index fbaa6f1..0000000 --- a/billing/app/controllers/credit_card_info_controller.rb +++ /dev/null @@ -1,35 +0,0 @@ -class CreditCardInfoController < ApplicationController - before_filter :require_login, :set_user - - def edit - @credit_card = Braintree::CreditCard.find(params[:id]) - customer = Customer.find_by_user_id(@user.id) - if customer and customer.braintree_customer_id == @credit_card.customer_id - @tr_data = Braintree::TransparentRedirect. - update_credit_card_data(:redirect_url => confirm_credit_card_info_url, - :payment_method_token => @credit_card.token) - else - access_denied - end - - end - - def confirm - @result = Braintree::TransparentRedirect.confirm(request.query_string) - if @result.success? - render :action => "confirm" - else - @credit_card = Braintree::CreditCard.find(@result.params[:payment_method_token]) - render :action => "edit" - end - end - - - private - - def set_user - # this assumes anybody, even an admin, will not access for another user. - @user = current_user - end - -end diff --git a/billing/app/controllers/customer_controller.rb b/billing/app/controllers/customer_controller.rb deleted file mode 100644 index 6cbcb44..0000000 --- a/billing/app/controllers/customer_controller.rb +++ /dev/null @@ -1,64 +0,0 @@ -class CustomerController < BillingBaseController - before_filter :require_login, :fetch_customer - - def show - if @customer - @customer.with_braintree_data! - @default_cc = @customer.default_credit_card - @active_subscription = @customer.subscriptions - @transactions = @customer.braintree_customer.transactions - end - end - - def new - if @customer.has_payment_info? - redirect_to edit_customer_path(@user), :notice => 'Here is your saved customer data' - else - fetch_new_transparent_redirect_data - end - end - - def edit - fetch_edit_transparent_redirect_data - end - - def confirm - @result = Braintree::TransparentRedirect.confirm(request.query_string) - if @result.success? - @customer.braintree_customer = @result.customer - @customer.save - render :action => "confirm" - elsif @customer.has_payment_info? - fetch_edit_transparent_redirect_data - render :action => "edit" - else - fetch_new_transparent_redirect_data - render :action => "new" - end - end - - protected - - def fetch_new_transparent_redirect_data - access_denied unless @user == current_user # admins cannot do this for others - @tr_data = Braintree::TransparentRedirect. - create_customer_data(:redirect_url => confirm_customer_url) - end - - def fetch_edit_transparent_redirect_data - access_denied unless @user == current_user # admins cannot do this for others - @customer.with_braintree_data! - @default_cc = @customer.default_credit_card - @tr_data = Braintree::TransparentRedirect. - update_customer_data(:redirect_url => confirm_customer_url, - :customer_id => @customer.braintree_customer_id) ##?? - end - - def fetch_customer - @customer = Customer.find_by_user_id(@user.id) - if @user == current_user - @customer ||= Customer.new(user: @user) - end - access_denied unless (@customer and (@customer.user == current_user)) or admin? - end -end diff --git a/billing/app/controllers/payments_controller.rb b/billing/app/controllers/payments_controller.rb deleted file mode 100644 index fce6570..0000000 --- a/billing/app/controllers/payments_controller.rb +++ /dev/null @@ -1,34 +0,0 @@ -class PaymentsController < BillingBaseController - before_filter :require_login, :only => [:index] - - def new - fetch_transparent_redirect - end - - def confirm - @result = Braintree::TransparentRedirect.confirm(request.query_string) - if @result.success? - render :action => "confirm" - else - fetch_transparent_redirect - render :action => "new" - end - end - - def index - access_denied unless admin? or (@user == current_user) - customer = Customer.find_by_user_id(@user.id) - braintree_data = Braintree::Customer.find(customer.braintree_customer_id) - # these will be ordered by created_at descending, per http://stackoverflow.com/questions/16425475/ - @transactions = braintree_data.transactions - end - - protected - - - def fetch_transparent_redirect - @tr_data = Braintree::TransparentRedirect.transaction_data redirect_url: confirm_payment_url, - transaction: { type: "sale", options: {submit_for_settlement: true } } - end - -end diff --git a/billing/app/controllers/subscriptions_controller.rb b/billing/app/controllers/subscriptions_controller.rb deleted file mode 100644 index f066b3c..0000000 --- a/billing/app/controllers/subscriptions_controller.rb +++ /dev/null @@ -1,63 +0,0 @@ -class SubscriptionsController < BillingBaseController - before_filter :require_login - before_filter :fetch_subscription, :only => [:show, :destroy] - before_filter :confirm_cancel_subscription, :only => [:destroy] - before_filter :confirm_self_or_admin, :only => [:index] - before_filter :confirm_no_pending_active_pastdue_subscription, :only => [:new, :create] - # for now, admins cannot create or destroy subscriptions for others: - before_filter :confirm_self, :only => [:new, :create] - - def new - # don't show link to subscribe if they are already subscribed? - credit_card = @customer.default_credit_card #safe to assume default? - @payment_method_token = credit_card.token - @plans = Braintree::Plan.all - end - - # show has no content, so not needed at this point. - - def create - @result = Braintree::Subscription.create( :payment_method_token => params[:payment_method_token], :plan_id => params[:plan_id] ) - #if you want to test pastdue, can add :price => '2001', :trial_period => true,:trial_duration => 1,:trial_duration_unit => "day" and then wait a day - end - - def destroy - @result = Braintree::Subscription.cancel params[:id] - end - - def index - customer = Customer.find_by_user_id(@user.id) - @subscriptions = customer.subscriptions(nil, false) - end - - private - - def fetch_subscription - @subscription = Braintree::Subscription.find params[:id] - @credit_card = Braintree::CreditCard.find @subscription.payment_method_token - @subscription_customer_id = @credit_card.customer_id - current_user_customer = Customer.find_by_user_id(current_user.id) - access_denied unless admin? or (current_user_customer and current_user_customer.braintree_customer_id == @subscription_customer_id) - - end - - def confirm_cancel_subscription - access_denied unless view_context.allow_cancel_subscription(@subscription) - end - - def confirm_no_pending_active_pastdue_subscription - @customer = Customer.find_by_user_id(@user.id) - if subscription = @customer.subscriptions # will return pending, active or pastdue subscription, if it exists - redirect_to user_subscription_path(@user, subscription.id), :notice => 'You already have a subscription' - end - end - - def confirm_self - @user == current_user - end - - def confirm_self_or_admin - access_denied unless confirm_self or admin? - end - -end |