mirror of
https://github.com/discourse/discourse.git
synced 2025-06-06 23:07:28 +08:00
DEV: add invite-page class (#15546)
This commit is contained in:
@ -1,138 +1,140 @@
|
|||||||
<div class="container invites-show clearfix">
|
{{#d-section pageClass="invite"}}
|
||||||
<div class="login-welcome-header">
|
<div class="container invites-show clearfix">
|
||||||
<h1 class="login-title">{{welcomeTitle}}</h1>
|
<div class="login-welcome-header">
|
||||||
<img src={{wavingHandURL}} alt="" class="waving-hand">
|
<h1 class="login-title">{{welcomeTitle}}</h1>
|
||||||
{{#unless successMessage}}
|
<img src={{wavingHandURL}} alt="" class="waving-hand">
|
||||||
<p class="login-subheader">{{i18n "create_account.subheader_title"}}</p>
|
{{#unless successMessage}}
|
||||||
{{/unless}}
|
<p class="login-subheader">{{i18n "create_account.subheader_title"}}</p>
|
||||||
</div>
|
{{/unless}}
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class={{if successMessage "invite-success" "invite-form"}}>
|
<div class={{if successMessage "invite-success" "invite-form"}}>
|
||||||
<div class="two-col">
|
<div class="two-col">
|
||||||
<div class="col-image">
|
<div class="col-image">
|
||||||
<img src={{inviteImageUrl}} alt={{i18n "invites.emoji"}}>
|
<img src={{inviteImageUrl}} alt={{i18n "invites.emoji"}}>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-form">
|
<div class="col-form">
|
||||||
{{#if successMessage}}
|
{{#if successMessage}}
|
||||||
<div class="success-info">
|
<div class="success-info">
|
||||||
<p>{{html-safe successMessage}}</p>
|
<p>{{html-safe successMessage}}</p>
|
||||||
</div>
|
</div>
|
||||||
{{else}}
|
{{else}}
|
||||||
<p>{{i18n "invites.invited_by"}}</p>
|
<p>{{i18n "invites.invited_by"}}</p>
|
||||||
<p>{{user-info user=invitedBy}}</p>
|
<p>{{user-info user=invitedBy}}</p>
|
||||||
|
|
||||||
{{#if associateHtml}}
|
{{#if associateHtml}}
|
||||||
<p class="create-account-associate-link">
|
<p class="create-account-associate-link">
|
||||||
{{html-safe associateHtml}}
|
{{html-safe associateHtml}}
|
||||||
</p>
|
</p>
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
{{#unless isInviteLink}}
|
|
||||||
<p class="email-message">
|
|
||||||
{{html-safe yourEmailMessage}}
|
|
||||||
{{#if showSocialLoginAvailable}}
|
|
||||||
{{i18n "invites.social_login_available"}}
|
|
||||||
{{/if}}
|
|
||||||
</p>
|
|
||||||
{{/unless}}
|
|
||||||
|
|
||||||
{{#if externalAuthsOnly}}
|
|
||||||
{{! authOptions are present once the user has followed the OmniAuth flow (e.g. twitter/google/etc) }}
|
|
||||||
{{#if authOptions}}
|
|
||||||
{{#unless isInviteLink}}
|
|
||||||
{{input-tip validation=emailValidation id="account-email-validation"}}
|
|
||||||
{{/unless}}
|
|
||||||
{{else}}
|
|
||||||
{{login-buttons externalLogin=(action "externalLogin")}}
|
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
{{#if discourseConnectEnabled}}
|
{{#unless isInviteLink}}
|
||||||
<a class="btn btn-primary discourse-connect raw-link" href={{ssoPath}}>
|
<p class="email-message">
|
||||||
{{i18n "continue"}}
|
{{html-safe yourEmailMessage}}
|
||||||
</a>
|
{{#if showSocialLoginAvailable}}
|
||||||
{{/if}}
|
{{i18n "invites.social_login_available"}}
|
||||||
|
{{/if}}
|
||||||
|
</p>
|
||||||
|
{{/unless}}
|
||||||
|
|
||||||
{{#if shouldDisplayForm}}
|
{{#if externalAuthsOnly}}
|
||||||
<form>
|
{{! authOptions are present once the user has followed the OmniAuth flow (e.g. twitter/google/etc) }}
|
||||||
{{#if isInviteLink}}
|
{{#if authOptions}}
|
||||||
<div class="input email-input input-group">
|
{{#unless isInviteLink}}
|
||||||
{{input type="email" value=email id="new-account-email" name="email" class=(value-entered email) autofocus="autofocus" disabled=externalAuthsOnly}}
|
{{input-tip validation=emailValidation id="account-email-validation"}}
|
||||||
<label class="alt-placeholder" for="new-account-email">
|
{{/unless}}
|
||||||
{{i18n "user.email.title"}}
|
{{else}}
|
||||||
|
{{login-buttons externalLogin=(action "externalLogin")}}
|
||||||
|
{{/if}}
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
{{#if discourseConnectEnabled}}
|
||||||
|
<a class="btn btn-primary discourse-connect raw-link" href={{ssoPath}}>
|
||||||
|
{{i18n "continue"}}
|
||||||
|
</a>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
{{#if shouldDisplayForm}}
|
||||||
|
<form>
|
||||||
|
{{#if isInviteLink}}
|
||||||
|
<div class="input email-input input-group">
|
||||||
|
{{input type="email" value=email id="new-account-email" name="email" class=(value-entered email) autofocus="autofocus" disabled=externalAuthsOnly}}
|
||||||
|
<label class="alt-placeholder" for="new-account-email">
|
||||||
|
{{i18n "user.email.title"}}
|
||||||
|
<span class="required">*</span>
|
||||||
|
</label>
|
||||||
|
{{input-tip validation=emailValidation id="account-email-validation"}}
|
||||||
|
<div class="instructions">{{i18n "user.email.instructions"}}</div>
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
<div class="input username-input input-group">
|
||||||
|
{{input value=accountUsername class=(value-entered accountUsername) id="new-account-username" name="username" maxlength=maxUsernameLength autocomplete="discourse"}}
|
||||||
|
<label class="alt-placeholder" for="new-account-username">
|
||||||
|
{{i18n "user.username.title"}}
|
||||||
<span class="required">*</span>
|
<span class="required">*</span>
|
||||||
</label>
|
</label>
|
||||||
{{input-tip validation=emailValidation id="account-email-validation"}}
|
{{input-tip validation=usernameValidation id="username-validation"}}
|
||||||
<div class="instructions">{{i18n "user.email.instructions"}}</div>
|
<div class="instructions">{{i18n "user.username.instructions"}}</div>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
<div class="input username-input input-group">
|
{{#if fullnameRequired}}
|
||||||
{{input value=accountUsername class=(value-entered accountUsername) id="new-account-username" name="username" maxlength=maxUsernameLength autocomplete="discourse"}}
|
<div class="input name-input input-group">
|
||||||
<label class="alt-placeholder" for="new-account-username">
|
{{input value=accountName class=(value-entered accountName) id="new-account-name" name="name"}}
|
||||||
{{i18n "user.username.title"}}
|
<label class="alt-placeholder" for="new-account-name">
|
||||||
<span class="required">*</span>
|
{{i18n "invites.name_label"}}
|
||||||
</label>
|
{{#if siteSettings.full_name_required}}
|
||||||
{{input-tip validation=usernameValidation id="username-validation"}}
|
<span class="required">*</span>
|
||||||
<div class="instructions">{{i18n "user.username.instructions"}}</div>
|
{{/if}}
|
||||||
</div>
|
</label>
|
||||||
|
<div class="instructions">{{nameInstructions}}</div>
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
{{#if fullnameRequired}}
|
{{#unless externalAuthsOnly}}
|
||||||
<div class="input name-input input-group">
|
<div class="input password-input input-group">
|
||||||
{{input value=accountName class=(value-entered accountName) id="new-account-name" name="name"}}
|
{{password-field value=accountPassword class=(value-entered accountPassword) type="password" id="new-account-password" capsLockOn=capsLockOn}}
|
||||||
<label class="alt-placeholder" for="new-account-name">
|
<label class="alt-placeholder" for="new-account-password">
|
||||||
{{i18n "invites.name_label"}}
|
{{i18n "invites.password_label"}}
|
||||||
{{#if siteSettings.full_name_required}}
|
</label>
|
||||||
<span class="required">*</span>
|
{{input-tip validation=passwordValidation}}
|
||||||
{{/if}}
|
<div class="instructions">
|
||||||
</label>
|
{{passwordInstructions}} {{i18n "invites.optional_description"}}
|
||||||
<div class="instructions">{{nameInstructions}}</div>
|
<div class="caps-lock-warning {{unless capsLockOn "invisible"}}">
|
||||||
</div>
|
{{d-icon "exclamation-triangle"}} {{i18n "login.caps_lock_warning"}}
|
||||||
{{/if}}
|
</div>
|
||||||
|
|
||||||
{{#unless externalAuthsOnly}}
|
|
||||||
<div class="input password-input input-group">
|
|
||||||
{{password-field value=accountPassword class=(value-entered accountPassword) type="password" id="new-account-password" capsLockOn=capsLockOn}}
|
|
||||||
<label class="alt-placeholder" for="new-account-password">
|
|
||||||
{{i18n "invites.password_label"}}
|
|
||||||
</label>
|
|
||||||
{{input-tip validation=passwordValidation}}
|
|
||||||
<div class="instructions">
|
|
||||||
{{passwordInstructions}} {{i18n "invites.optional_description"}}
|
|
||||||
<div class="caps-lock-warning {{unless capsLockOn "invisible"}}">
|
|
||||||
{{d-icon "exclamation-triangle"}} {{i18n "login.caps_lock_warning"}}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
{{/unless}}
|
||||||
{{/unless}}
|
|
||||||
|
|
||||||
{{#if userFields}}
|
{{#if userFields}}
|
||||||
<div class="user-fields">
|
<div class="user-fields">
|
||||||
{{#each userFields as |f|}}
|
{{#each userFields as |f|}}
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
{{user-field field=f.field value=f.value class=(value-entered f.value)}}
|
{{user-field field=f.field value=f.value class=(value-entered f.value)}}
|
||||||
</div>
|
</div>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{d-button
|
{{d-button
|
||||||
class="btn-primary"
|
class="btn-primary"
|
||||||
action=(action "submit")
|
action=(action "submit")
|
||||||
type="submit"
|
type="submit"
|
||||||
disabled=submitDisabled
|
disabled=submitDisabled
|
||||||
label="invites.accept_invite"
|
label="invites.accept_invite"
|
||||||
}}
|
}}
|
||||||
|
|
||||||
{{#if errorMessage}}
|
{{#if errorMessage}}
|
||||||
<br><br>
|
<br><br>
|
||||||
<div class="alert alert-error">{{errorMessage}}</div>
|
<div class="alert alert-error">{{errorMessage}}</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</form>
|
</form>
|
||||||
|
{{/if}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/if}}
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
{{/d-section}}
|
||||||
|
Reference in New Issue
Block a user