mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-03 03:55:26 +03:00
aa35d99de4
* Added v1 comped subscription handling * Cleanup * Added cancellation for existing subscriptions * Added loader for fetching products * Refined complimentary popup * Added default product selection * Updated add complimentary for multiple products * Updated products add comped button Co-authored-by: Peter Zimon <zimo@ghost.org>
59 lines
2.3 KiB
Handlebars
59 lines
2.3 KiB
Handlebars
<header class="modal-header" data-test-modal="delete-user" {{did-insert this.setup}}>
|
|
<h1>Add subscription</h1>
|
|
</header>
|
|
<a class="close" href="" role="button" title="Close" {{action "closeModal" }}>{{svg-jar
|
|
"close"}}<span class="hidden">Close</span></a>
|
|
|
|
<form>
|
|
<div class="modal-body">
|
|
<p class="gh-member-addcomp-subhed">Select a product for <strong>{{or
|
|
this.member.name this.member.email}}</strong>'s complimentary
|
|
subscription.</p>
|
|
{{#if this.activeSubscriptions.length}}
|
|
<p class="gh-member-addcomp-warning">
|
|
Adding a complimentary subscription cancels all existing subscriptions of this member.
|
|
</p>
|
|
{{/if}}
|
|
{{#if this.loadingProducts}}
|
|
<div class="flex justify-center flex-auto">
|
|
<div class="gh-loading-spinner"> </div>
|
|
</div>
|
|
{{else}}
|
|
<div class="form-rich-radio">
|
|
{{#each this.products as |product|}}
|
|
<div class="gh-radio {{if (eq this.selectedProduct product.id) "active"}}" {{on "click" (fn this.setProduct product.id)}}>
|
|
<div class="gh-radio-content">
|
|
<div class="gh-radio-label">
|
|
<div class="description">
|
|
<h4>{{product.name}}</h4>
|
|
<p>{{product.description}}</p>
|
|
</div>
|
|
{{svg-jar "check" class="check"}}
|
|
</div>
|
|
</div>
|
|
<div class="gh-radio-button"></div>
|
|
</div>
|
|
{{/each}}
|
|
</div>
|
|
{{/if}}
|
|
</div>
|
|
</form>
|
|
|
|
<div class="modal-footer">
|
|
<button
|
|
class="gh-btn"
|
|
{{action "closeModal" }}
|
|
{{!-- disable mouseDown so it does not trigger focus-out validations
|
|
--}}
|
|
{{action (optional this.noop) on="mouseDown" }}
|
|
data-test-button="cancel-webhook">
|
|
<span>Cancel</span>
|
|
</button>
|
|
|
|
|
|
<GhTaskButton @buttonText="Add subscription"
|
|
@successText={{"Added"}}
|
|
@task={{this.addProduct}}
|
|
@class="gh-btn gh-btn-green gh-btn-icon gh-btn-add-memberproduct"
|
|
data-test-button="save-comp-product" />
|
|
</div> |