mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-22 18:31:57 +03:00
d3023e8b52
no refs Adds loading indicator when member is being saved with new complimentary price
80 lines
2.7 KiB
Handlebars
80 lines
2.7 KiB
Handlebars
<section class="gh-canvas">
|
|
<GhCanvasHeader class="gh-canvas-header">
|
|
<h2 class="gh-canvas-title" data-test-screen-title>
|
|
<LinkTo @route="members" data-test-link="members-back">Members</LinkTo>
|
|
<span>{{svg-jar "arrow-right"}}</span>
|
|
{{#if this.member.isNew}}
|
|
New member
|
|
{{else}}
|
|
{{or this.member.name this.member.email}}
|
|
{{/if}}
|
|
</h2>
|
|
|
|
<section class="view-actions">
|
|
{{#if this.session.user.isOwnerOrAdmin}}
|
|
{{#unless this.member.isNew}}
|
|
<button
|
|
class="gh-btn gh-btn-white gh-btn-icon mr2"
|
|
{{on "click" this.toggleImpersonateMemberModal}}>
|
|
<span>Impersonate</span>
|
|
</button>
|
|
{{/unless}}
|
|
{{/if}}
|
|
|
|
<GhTaskButton @class="gh-btn gh-btn-primary gh-btn-icon" @type="button" @task={{this.saveTask}} @data-test-button="save" />
|
|
</section>
|
|
</GhCanvasHeader>
|
|
|
|
<div>
|
|
<form class="member-basic-info-form">
|
|
<GhMemberSettingsFormCp
|
|
@member={{this.member}}
|
|
@scratchMember={{this.scratchMember}}
|
|
@setProperty={{this.setProperty}}
|
|
@saveMember={{this.save}}
|
|
@isSaveRunning={{this.saveTask.isRunning}}
|
|
@isLoading={{this.isLoading}} />
|
|
</form>
|
|
|
|
{{#unless this.member.isNew}}
|
|
<div class="gh-main-section">
|
|
<div class="gh-main-section-block">
|
|
<button
|
|
type="button"
|
|
class="gh-btn gh-btn-red gh-btn-icon"
|
|
{{on "click" this.toggleDeleteMemberModal}}
|
|
data-test-button="delete-member"
|
|
>
|
|
<span>Delete member</span>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
{{/unless}}
|
|
</div>
|
|
</section>
|
|
|
|
{{#if this.showUnsavedChangesModal}}
|
|
<GhFullscreenModal
|
|
@modal="leave-settings"
|
|
@confirm={{this.leaveScreen}}
|
|
@close={{this.toggleUnsavedChangesModal}}
|
|
@modifier="action wide" />
|
|
{{/if}}
|
|
|
|
{{#if this.showDeleteMemberModal}}
|
|
<GhFullscreenModal
|
|
@modal="delete-member"
|
|
@model={{this.member}}
|
|
@confirm={{this.deleteMember}}
|
|
@close={{this.toggleDeleteMemberModal}}
|
|
@modifier="action wide" />
|
|
{{/if}}
|
|
|
|
{{#if this.showImpersonateMemberModal}}
|
|
<GhFullscreenModal
|
|
@modal="impersonate-member"
|
|
@model={{this.member}}
|
|
@close={{this.toggleImpersonateMemberModal}}
|
|
@modifier="action wide" />
|
|
{{/if}}
|