_personal_subscription_recurly.pug 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. script(type="text/javascript", nonce=scriptNonce).
  2. window.recurlyApiKey = "!{settings.apis.recurly.publicKey}"
  3. window.subscription = !{StringHelper.stringifyJsonForScript(personalSubscription)}
  4. window.recomendedCurrency = "#{personalSubscription.recurly.currency}"
  5. div(ng-controller="RecurlySubscriptionController")
  6. div(ng-show="!showCancellation")
  7. if (personalSubscription.recurly.account.has_past_due_invoice && personalSubscription.recurly.account.has_past_due_invoice._ == 'true')
  8. .alert.alert-danger #{translate("account_has_past_due_invoice_change_plan_warning")}
  9. |  
  10. a(href=personalSubscription.recurly.accountManagementLink, target="_blank") #{translate("view_your_invoices")}.
  11. case personalSubscription.recurly.state
  12. when "active"
  13. p !{translate("currently_subscribed_to_plan", {planName: personalSubscription.plan.name}, ['strong'])}
  14. if (personalSubscription.recurly.additionalLicenses > 0)
  15. |
  16. | !{translate("additional_licenses", {additionalLicenses: personalSubscription.recurly.additionalLicenses, totalLicenses: personalSubscription.recurly.totalLicenses}, ['strong', 'strong'])}
  17. |  
  18. a(href, ng-click="switchToChangePlanView()", ng-if="showChangePlanButton") !{translate("change_plan")}.
  19. if (personalSubscription.recurly.trialEndsAtFormatted && personalSubscription.recurly.trial_ends_at > Date.now())
  20. p You're on a free trial which ends on <strong ng-non-bindable>#{personalSubscription.recurly.trialEndsAtFormatted}</strong>
  21. p !{translate("next_payment_of_x_collectected_on_y", {paymentAmmount: personalSubscription.recurly.price, collectionDate: personalSubscription.recurly.nextPaymentDueAt}, ['strong', 'strong'])}
  22. include ./../_price_exceptions
  23. p.pull-right
  24. p
  25. a(href=personalSubscription.recurly.billingDetailsLink, target="_blank").btn.btn-info #{translate("update_your_billing_details")}
  26. | &nbsp;
  27. a(href=personalSubscription.recurly.accountManagementLink, target="_blank").btn.btn-info #{translate("view_your_invoices")}
  28. | &nbsp;
  29. a(href, ng-click="switchToCancellationView()", ng-hide="recurlyLoadError").btn.btn-danger !{translate("cancel_your_subscription")}
  30. when "canceled"
  31. p !{translate("currently_subscribed_to_plan", {planName: personalSubscription.plan.name}, ['strong'])}
  32. p !{translate("subscription_canceled_and_terminate_on_x", {terminateDate: personalSubscription.recurly.nextPaymentDueAt}, ['strong'])}
  33. p
  34. a(href=personalSubscription.recurly.accountManagementLink, target="_blank").btn.btn-info #{translate("view_your_invoices")}
  35. p: form(action="/user/subscription/reactivate",method="post")
  36. input(type="hidden", name="_csrf", value=csrfToken)
  37. input(type="submit",value="Reactivate your subscription").btn.btn-success
  38. when "expired"
  39. p !{translate("your_subscription_has_expired")}
  40. p
  41. a(href=personalSubscription.recurly.accountManagementLink, target="_blank").btn.btn-info #{translate("view_your_invoices")}
  42. | &nbsp;
  43. a(href="/user/subscription/plans").btn.btn-success !{translate("create_new_subscription")}
  44. default
  45. p !{translate("problem_with_subscription_contact_us")}
  46. .alert.alert-warning(ng-show="recurlyLoadError")
  47. strong #{translate('payment_provider_unreachable_error')}
  48. include ./_change_plans_mixins
  49. div(ng-show="showChangePlan", ng-cloak)
  50. h2 !{translate("change_plan")}
  51. p: table.table
  52. tr
  53. th !{translate("name")}
  54. th !{translate("price")}
  55. th
  56. +printPlans(plans.studentAccounts)
  57. +printPlans(plans.individualMonthlyPlans)
  58. +printPlans(plans.individualAnnualPlans)
  59. .div(ng-controller="RecurlyCancellationController", ng-show="showCancellation").text-center
  60. p
  61. strong #{translate("wed_love_you_to_stay")}
  62. div(ng-show="showExtendFreeTrial")
  63. p !{translate("have_more_days_to_try", {days:14})}
  64. p
  65. button(type="submit", ng-click="extendTrial()", ng-disabled='inflight').btn.btn-success #{translate("ill_take_it")}
  66. p
  67. a(href, ng-click="cancelSubscription()", ng-disabled='inflight') #{translate("no_thanks_cancel_now")}
  68. div(ng-show="showDowngradeToStudent")
  69. div(ng-controller="ChangePlanFormController")
  70. p !{translate("interested_in_cheaper_plan",{price:'{{studentPrice}}'})}
  71. p
  72. button(type="submit", ng-click="downgradeToStudent()", ng-disabled='inflight').btn.btn-success #{translate("yes_move_me_to_student_plan")}
  73. p
  74. a(href, ng-click="cancelSubscription()", ng-disabled='inflight') #{translate("no_thanks_cancel_now")}
  75. div(ng-show="showBasicCancel")
  76. p
  77. a(href, ng-click="switchToDefaultView()").btn.btn-info #{translate("i_want_to_stay")}
  78. p
  79. a(href, ng-click="cancelSubscription()", ng-disabled='inflight').btn.btn-primary #{translate("cancel_my_account")}
  80. script(type='text/ng-template', id='confirmChangePlanModalTemplate')
  81. .modal-header
  82. h3 #{translate("change_plan")}
  83. .modal-body
  84. p !{translate("sure_you_want_to_change_plan", {planName: '{{plan.name}}'}, ['strong'])}
  85. .modal-footer
  86. button.btn.btn-default(
  87. ng-disabled="inflight"
  88. ng-click="cancel()"
  89. ) #{translate("cancel")}
  90. button.btn.btn-success(
  91. ng-disabled="state.inflight"
  92. ng-click="confirmChangePlan()"
  93. )
  94. span(ng-hide="inflight") #{translate("change_plan")}
  95. span(ng-show="inflight") #{translate("processing")}…