{{_ "shell.layout.demoExpired.title"}}
{{#if canUpgradeDemo}}{{_ "shell.layout.demoExpired.canUpgrade"}}
{{_ "shell.layout.demoExpired.cannotUpgrade"}}
{{/if}}{{#if alertUrl}} {{text}} {{else}} {{text}} {{/if}}
{{/sandstormTopbarItem}} {{else}} {{#sandstormTopbarItem name="admin-alert" topbar=globalTopbar}} {{#if alertUrl}} {{text}} {{else}} {{text}} {{/if}} {{/sandstormTopbarItem}} {{/if}} {{/with}} {{#with billingPromptState}} {{> Template.dynamic template=billingPromptTemplate}} {{/with}} {{/if}} {{!-- firstLogin --}} {{/if}} {{!-- isAccountSuspended --}} {{/if}} {{!-- credentialUser --}} {{/with}} {{!-- demoExpired --}} {{!-- Make sure to always render the main-content div, but only yield if there is no interstitial to render on top. The main-content div needs to be stable so that any GrainView that gets attached does not get orphaned. For example, if the main-content div were inside the {{#if firstLogin}} block, then grain views could appear to become blanked out when a demo user upgrades to a real account by linking an email identity. --}} {{#with demoModal}} {{#modalDialogWithBackdrop onDismiss=dismissDemoModal class="demo-startup-modal"}}{{_ "shell.layout.demoModal.header"}}
{{#if appdemo}} {{_ "shell.layout.demoModal.withAppDemo" appdemo}} {{else}} {{_ "shell.layout.demoModal.withoutAppDemo"}} {{/if}}
{{_ "shell.grainLogContents.prefix"}}{{{logHtml}}}
{{{_ "shell.signup.signedUp.keyIsUsedWithOrigin" appMarketUrl origin}}}
{{else}}{{_ "shell.signup.signedUp.keyIsNotUsed"}}
{{/if}} {{else}} {{#if keyIsValid}} {{#if keyIsUsed}}{{_ "shell.signup.keyIsUsed"}}
{{else}} {{#if currentUser}}{{_ "shell.signup.processing"}}
{{else}}{{signupDialog}} {{_ "shell.signup.signInGuide"}}
{{/if}} {{/if}} {{else}}{{_ "shell.signup.invalidKey"}}
{{/if}} {{/if}}{{_ "shell.uploadStatus.uploadFailedWithError" error.status error.statusText}}
{{error.response}}{{else}} {{#if status}}
{{#if progress}} {{_ "shell.uploadStatus.statusWithProgress" status progress}} {{else}} {{_ "shell.uploadStatus.status" status}} {{/if}}
{{else}}{{_ "shell.uploadStatus.uploadFailed"}}
{{/if}} {{/if}}{{_ "shell.uploadTest.explanation"}}
{{_ "shell.uploadTest.uploadApp"}}
{{_ "shell.uploadTest.uploadBackup"}}
{{#if referralsEnabled}} {{>title (_ "shell.referrals.title")}} {{setDocumentTitle}}{{_ "shell.referrals.header.isPaid.explanation"}}
{{_ "shell.referrals.howTo.explanation"}}
{{_ "shell.referrals.status.explanation"}}
{{#with notYetCompleteReferralNames}}{{#if this.count}}{{_ "shell.referrals.status.pending.explanation"}}
{{_ "shell.referrals.status.success.explanation"}}
{{{_ "shell.referrals.finePrint.warningWithAccountLink" (pathFor route='account')}}}
{{_ "shell.referrals.finePrint.explanation"}}
{{/if}}{{{_ "shell.about.intro.explanation"}}}
{{_ "shell.about.intro.version" build}}
{{#if isUnofficial}}{{{_ "shell.about.intro.unofficialWarning"}}}
{{/if}}{{_ "shell.about.dependencies.explanation"}}
{{_ "shell.about.copyright.license"}}