summaryrefslogtreecommitdiff
path: root/billing/app/views/customer
diff options
context:
space:
mode:
Diffstat (limited to 'billing/app/views/customer')
-rw-r--r--billing/app/views/customer/_transaction.html.haml0
-rw-r--r--billing/app/views/customer/confirm.html.haml14
-rw-r--r--billing/app/views/customer/edit.html.haml23
-rw-r--r--billing/app/views/customer/new.html.haml24
-rw-r--r--billing/app/views/customer/show.html.haml22
5 files changed, 83 insertions, 0 deletions
diff --git a/billing/app/views/customer/_transaction.html.haml b/billing/app/views/customer/_transaction.html.haml
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/billing/app/views/customer/_transaction.html.haml
diff --git a/billing/app/views/customer/confirm.html.haml b/billing/app/views/customer/confirm.html.haml
new file mode 100644
index 0000000..5551622
--- /dev/null
+++ b/billing/app/views/customer/confirm.html.haml
@@ -0,0 +1,14 @@
+%h1 Payment Info Confirmation
+%p Your payment information was successfully saved.
+%dl
+ %dt First Name
+ %dd= @result.customer.first_name
+ %dt Last Name
+ %dd= @result.customer.last_name
+ %dt Phone
+ %dd= @result.customer.phone
+ %dt Credit Card
+ - @result.customer.credit_cards.each do |cc|
+ %dd= cc.masked_number
+- customer = Customer.find_by_user_id(current_user.id)
+= link_to 'View Customer Info', show_customer_path(customer.braintree_customer_id), :class=> :btn \ No newline at end of file
diff --git a/billing/app/views/customer/edit.html.haml b/billing/app/views/customer/edit.html.haml
new file mode 100644
index 0000000..8a232c5
--- /dev/null
+++ b/billing/app/views/customer/edit.html.haml
@@ -0,0 +1,23 @@
+- if @result
+ #total-errors{:style => "color:red;"}
+ = h(@result.errors.size)
+ error(s)
+= braintree_form_for :customer, existing: @customer do |f|
+ = field_set_tag "Customer" do
+ %dl
+ %dt= f.label :first_name, 'First Name'
+ %dd= f.text_field :first_name
+ %dt= f.label :last_name, 'Last Name'
+ %dd= f.text_field :last_name
+ %dt= f.label :phone, 'Phone'
+ %dd= f.text_field :phone
+ - if @default_cc
+ = # todo, as they will need a credit card, so not sure about conditional?
+ %dt= t(:stored_credit_card)
+ %dd
+ = @default_cc.masked_number
+ = link_to t(:change_credit_card), edit_credit_card_info_path(:id => @default_cc.token), :class => :btn
+ = hidden_field_tag :tr_data, @tr_data
+ .form-actions
+ = f.submit t(:save_customer_info), :class => 'btn btn-primary'
+ = link_to t(:cancel), show_customer_path(@customer), :class=> :btn
diff --git a/billing/app/views/customer/new.html.haml b/billing/app/views/customer/new.html.haml
new file mode 100644
index 0000000..e1f5ba9
--- /dev/null
+++ b/billing/app/views/customer/new.html.haml
@@ -0,0 +1,24 @@
+- if @result
+ #total-errors{:style => "color:red;"}
+ = h(@result.errors.size)
+ error(s)
+= braintree_form_for :customer do |f|
+ = field_set_tag "Customer" do
+ %dl
+ %dt= f.label :first_name, 'First Name'
+ %dd= f.text_field :first_name
+ %dt= f.label :last_name, 'Last Name'
+ %dd= f.text_field :last_name
+ %dt= f.label :phone, 'Phone'
+ %dd= f.text_field :phone
+ = field_set_tag "Credit Card" do
+ - f.fields_for :credit_card do |cc|
+ %dl
+ %dt= cc.label :number, 'Number'
+ %dd= cc.text_field :number
+ %dt= cc.label :expiration_date, 'Expiration Date (MM/YY)'
+ %dd= cc.text_field :expiration_date
+ %dt= cc.label :cvv, 'CVV'
+ %dd= cc.text_field :cvv
+ = hidden_field_tag :tr_data, @tr_data
+ = f.submit 'Save Payment Info'
diff --git a/billing/app/views/customer/show.html.haml b/billing/app/views/customer/show.html.haml
new file mode 100644
index 0000000..639d180
--- /dev/null
+++ b/billing/app/views/customer/show.html.haml
@@ -0,0 +1,22 @@
+.form-actions
+ = link_to t(:make_payment), new_payment_path, :class => 'btn btn-primary'
+= render :partial => 'payments/customer_data'
+%legend= t(:last_three_transactions)
+- counter = 0
+= # these will be ordered with most recently created first, per http://stackoverflow.com/questions/16425475/
+- @transactions.each do |t|
+ - break if counter > 2 # not ruby-like, but object is a Braintree::ResourceCollection so limited methods available
+ = render :partial => "payments/transaction_details", :locals => {:transaction => t}
+ - counter += 1
+= link_to t(:transaction_history), payments_path
+%legend= t(:subscriptions)
+- if @active_subscription
+ = render :partial => "subscriptions/subscription_details", :locals => {:subscription => @active_subscription}
+- else
+ %p
+ = t(:no_active_subscription)
+ %p
+ .form-actions
+ = link_to t(:subscribe_to_plan), new_subscription_path, :class => :btn
+%p
+ = link_to t(:all_subscriptions), subscriptions_path