mirror of
https://github.com/codeninjasllc/discourse.git
synced 2024-11-23 23:58:31 -05:00
Deprecations: {{bind-attr}} is deprecated
This commit is contained in:
parent
c15ade8a88
commit
da5e7c7383
55 changed files with 105 additions and 104 deletions
|
@ -19,7 +19,7 @@
|
||||||
<td>{{human-size backup.size}}</td>
|
<td>{{human-size backup.size}}</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="pull-right">
|
<div class="pull-right">
|
||||||
<a {{bind-attr href="backup.link"}} class="btn download" title="{{i18n 'admin.backups.operations.download.title'}}">{{fa-icon "download"}}{{i18n 'admin.backups.operations.download.label'}}</a>
|
<a href={{backup.link}} class="btn download" title="{{i18n 'admin.backups.operations.download.title'}}">{{fa-icon "download"}}{{i18n 'admin.backups.operations.download.label'}}</a>
|
||||||
{{#if status.model.isOperationRunning}}
|
{{#if status.model.isOperationRunning}}
|
||||||
{{d-button icon="trash-o" action="destroyBackup" actionParam=backup class="btn-danger" disabled="true" title="admin.backups.operations.is_running"}}
|
{{d-button icon="trash-o" action="destroyBackup" actionParam=backup class="btn-danger" disabled="true" title="admin.backups.operations.is_running"}}
|
||||||
{{d-button icon="play" action="startRestore" actionParam=backup disabled=status.model.restoreDisabled title=restoreTitle label="admin.backups.operations.restore.label"}}
|
{{d-button icon="play" action="startRestore" actionParam=backup disabled=status.model.restoreDisabled title=restoreTitle label="admin.backups.operations.restore.label"}}
|
||||||
|
|
|
@ -134,7 +134,7 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class='buttons'>
|
<div class='buttons'>
|
||||||
<button {{action "save"}} {{bind-attr disabled=saving}} class='btn btn-primary'>{{i18n 'admin.badges.save'}}</button>
|
<button {{action "save"}} disabled={{saving}} class='btn btn-primary'>{{i18n 'admin.badges.save'}}</button>
|
||||||
<span class='saving'>{{savingStatus}}</span>
|
<span class='saving'>{{savingStatus}}</span>
|
||||||
{{#unless readOnly}}
|
{{#unless readOnly}}
|
||||||
<a {{action "destroy"}} class='delete-link'>{{i18n 'admin.badges.delete'}}</a>
|
<a {{action "destroy"}} class='delete-link'>{{i18n 'admin.badges.delete'}}</a>
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
<a href="{{report.reportUrl}}">{{report.title}}</a>
|
<a href="{{report.reportUrl}}">{{report.title}}</a>
|
||||||
</td>
|
</td>
|
||||||
<td class="value">{{report.todayCount}}</td>
|
<td class="value">{{report.todayCount}}</td>
|
||||||
<td {{bind-attr class=":value report.yesterdayTrend"}} title="{{report.yesterdayCountTitle}}">{{report.yesterdayCount}} {{fa-icon "caret-up" class="up"}} {{fa-icon "caret-down" class="down"}}</td>
|
<td class="value {{report.yesterdayTrend}}" title={{report.yesterdayCountTitle}}>{{report.yesterdayCount}} {{fa-icon "caret-up" class="up"}} {{fa-icon "caret-down" class="down"}}</td>
|
||||||
<td {{bind-attr class=":value report.sevenDayTrend"}} title="{{report.sevenDayCountTitle}}">{{report.lastSevenDaysCount}} {{fa-icon "caret-up" class="up"}} {{fa-icon "caret-down" class="down"}}</td>
|
<td class="value {{report.sevenDayTrend}}" title={{report.sevenDayCountTitle}}>{{report.lastSevenDaysCount}} {{fa-icon "caret-up" class="up"}} {{fa-icon "caret-down" class="down"}}</td>
|
||||||
<td {{bind-attr class=":value report.thirtyDayTrend"}} title="{{report.thirtyDayCountTitle}}">{{report.lastThirtyDaysCount}} {{fa-icon "caret-up" class="up"}} {{fa-icon "caret-down" class="down"}}</td>
|
<td class="value {{report.thirtyDayTrend}}" title={{report.thirtyDayCountTitle}}>{{report.lastThirtyDaysCount}} {{fa-icon "caret-up" class="up"}} {{fa-icon "caret-down" class="down"}}</td>
|
||||||
<td class="value">{{report.total}}</td>
|
<td class="value">{{report.total}}</td>
|
||||||
|
|
|
@ -2,4 +2,4 @@
|
||||||
{{text-field value=url disabled=formSubmitted class="permalink-url" placeholderKey="admin.permalink.url" autocorrect="off" autocapitalize="off"}}
|
{{text-field value=url disabled=formSubmitted class="permalink-url" placeholderKey="admin.permalink.url" autocorrect="off" autocapitalize="off"}}
|
||||||
{{combo-box content=permalinkTypes value=permalinkType}}
|
{{combo-box content=permalinkTypes value=permalinkType}}
|
||||||
{{text-field value=permalink_type_value disabled=formSubmitted class="external-url" placeholderKey=permalinkTypePlaceholder autocorrect="off" autocapitalize="off"}}
|
{{text-field value=permalink_type_value disabled=formSubmitted class="external-url" placeholderKey=permalinkTypePlaceholder autocorrect="off" autocapitalize="off"}}
|
||||||
<button class="btn" {{action "submit" target="view"}} {{bind-attr disabled="formSubmitted"}}>{{i18n 'admin.permalink.form.add'}}</button>
|
<button class="btn" {{action "submit" target="view"}} disabled={{formSubmitted}}>{{i18n 'admin.permalink.form.add'}}</button>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<div {{bind-attr class=":validation-error message::hidden"}}>
|
<div class="validation-error {{unless message 'hidden'}}">
|
||||||
{{fa-icon "times"}}
|
{{fa-icon "times"}}
|
||||||
{{message}}
|
{{message}}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
<li>{{#link-to 'adminCustomizeCssHtml.show' model.id 'embedded-css' replace=true}}{{i18n "admin.customize.embedded_css"}}{{/link-to}}</li>
|
<li>{{#link-to 'adminCustomizeCssHtml.show' model.id 'embedded-css' replace=true}}{{i18n "admin.customize.embedded_css"}}{{/link-to}}</li>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<li class='toggle-mobile'>
|
<li class='toggle-mobile'>
|
||||||
<a {{bind-attr class="mobile:active"}} {{action "toggleMobile"}}>{{fa-icon "mobile"}}</a>
|
<a class="{{if mobile 'active'}}" {{action "toggleMobile"}}>{{fa-icon "mobile"}}</a>
|
||||||
</li>
|
</li>
|
||||||
<li class='toggle-maximize'>
|
<li class='toggle-maximize'>
|
||||||
<a {{action "toggleMaximize"}}>
|
<a {{action "toggleMaximize"}}>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<ul>
|
<ul>
|
||||||
{{#each model as |scheme|}}
|
{{#each model as |scheme|}}
|
||||||
{{#unless scheme.is_base}}
|
{{#unless scheme.is_base}}
|
||||||
<li><a {{action "selectColorScheme" scheme}} {{bind-attr class="scheme.selected:active"}}>{{scheme.description}}</a></li>
|
<li><a {{action "selectColorScheme" scheme}} class="{{if scheme.selected 'active'}}">{{scheme.description}}</a></li>
|
||||||
{{/unless}}
|
{{/unless}}
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -16,8 +16,8 @@
|
||||||
<h1>{{text-field class="style-name" value=selectedItem.name}}</h1>
|
<h1>{{text-field class="style-name" value=selectedItem.name}}</h1>
|
||||||
|
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<button {{action "save"}} {{bind-attr disabled="selectedItem.disableSave"}} class='btn'>{{i18n 'admin.customize.save'}}</button>
|
<button {{action "save"}} disabled={{selectedItem.disableSave}} class='btn'>{{i18n 'admin.customize.save'}}</button>
|
||||||
<button {{action "toggleEnabled"}} {{bind-attr disabled="selectedItem.disableEnable"}} class="btn">
|
<button {{action "toggleEnabled"}} disabled={{selectedItem.disableEnable}} class="btn">
|
||||||
{{#if selectedItem.enabled}}
|
{{#if selectedItem.enabled}}
|
||||||
{{i18n 'disable'}}
|
{{i18n 'disable'}}
|
||||||
{{else}}
|
{{else}}
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
</button>
|
</button>
|
||||||
<button {{action "copy" selectedItem}} class='btn'><i class="fa fa-copy"></i> {{i18n 'admin.customize.copy'}}</button>
|
<button {{action "copy" selectedItem}} class='btn'><i class="fa fa-copy"></i> {{i18n 'admin.customize.copy'}}</button>
|
||||||
<button {{action "destroy"}} class='btn btn-danger'><i class="fa fa-trash-o"></i> {{i18n 'admin.customize.delete'}}</button>
|
<button {{action "destroy"}} class='btn btn-danger'><i class="fa fa-trash-o"></i> {{i18n 'admin.customize.delete'}}</button>
|
||||||
<span {{bind-attr class=":saving selectedItem.savingStatus::hidden" }}>{{selectedItem.savingStatus}}</span>
|
<span class="saving {{unless selectedItem.savingStatus 'hidden'}}">{{selectedItem.savingStatus}}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br/>
|
<br/>
|
||||||
|
@ -51,16 +51,16 @@
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
{{#each colors as |c|}}
|
{{#each colors as |c|}}
|
||||||
<tr {{bind-attr class="c.changed c.valid:valid:invalid"}}>
|
<tr class="{{if c.changed 'changed'}} {{if c.valid 'valid' 'invalid'}}">
|
||||||
<td class="name" {{bind-attr title="c.name"}}>
|
<td class="name" title={{c.name}}>
|
||||||
<b>{{c.translatedName}}</b>
|
<b>{{c.translatedName}}</b>
|
||||||
<br/>
|
<br/>
|
||||||
<span class="description">{{c.description}}</span>
|
<span class="description">{{c.description}}</span>
|
||||||
</td>
|
</td>
|
||||||
<td class="hex">{{color-input hexValue=c.hex brightnessValue=c.brightness valid=c.valid}}</td>
|
<td class="hex">{{color-input hexValue=c.hex brightnessValue=c.brightness valid=c.valid}}</td>
|
||||||
<td class="actions">
|
<td class="actions">
|
||||||
<button {{bind-attr class=":btn :revert c.savedIsOverriden::invisible"}} {{action "revert" c}} title="{{i18n 'admin.customize.colors.revert_title'}}">{{i18n 'revert'}}</button>
|
<button class="btn revert {{unless c.savedIsOverriden 'invisible'}}" {{action "revert" c}} title="{{i18n 'admin.customize.colors.revert_title'}}">{{i18n 'revert'}}</button>
|
||||||
<button {{bind-attr class=":btn :undo c.changed::invisible"}} {{action "undo" c}} title="{{i18n 'admin.customize.colors.undo_title'}}">{{i18n 'undo'}}</button>
|
<button class="btn undo {{unless c.changed 'invisible'}}" {{action "undo" c}} title="{{i18n 'admin.customize.colors.undo_title'}}">{{i18n 'undo'}}</button>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
|
|
|
@ -192,9 +192,9 @@
|
||||||
<div class="dashboard-stats detected-problems">
|
<div class="dashboard-stats detected-problems">
|
||||||
<div class="look-here">{{fa-icon "exclamation-triangle"}}</div>
|
<div class="look-here">{{fa-icon "exclamation-triangle"}}</div>
|
||||||
<div class="problem-messages">
|
<div class="problem-messages">
|
||||||
<p {{bind-attr class="loadingProblems:invisible"}}>
|
<p class="{{if loadingProblems 'invisible'}}">
|
||||||
{{i18n 'admin.dashboard.problems_found'}}
|
{{i18n 'admin.dashboard.problems_found'}}
|
||||||
<ul {{bind-attr class="loadingProblems:invisible"}}>
|
<ul class="{{if loadingProblems 'invisible'}}">
|
||||||
{{#each problems as |problem|}}
|
{{#each problems as |problem|}}
|
||||||
<li>{{{problem}}}</li>
|
<li>{{{problem}}}</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
{{text-field value=testEmailAddress placeholderKey="admin.email.test_email_address"}}
|
{{text-field value=testEmailAddress placeholderKey="admin.email.test_email_address"}}
|
||||||
</div>
|
</div>
|
||||||
<div class='span10 controls'>
|
<div class='span10 controls'>
|
||||||
<button class='btn btn-primary' {{action "sendTestEmail"}} {{bind-attr disabled="sendTestEmailDisabled"}}>{{i18n 'admin.email.send_test'}}</button>
|
<button class='btn btn-primary' {{action "sendTestEmail"}} disabled={{sendTestEmailDisabled}}>{{i18n 'admin.email.send_test'}}</button>
|
||||||
{{#if sentTestEmail}}<span class='result-message'>{{i18n 'admin.email.sent_test'}}</span>{{/if}}
|
{{#if sentTestEmail}}<span class='result-message'>{{i18n 'admin.email.sent_test'}}</span>{{/if}}
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
{{#each flaggedPost in content}}
|
{{#each flaggedPost in content}}
|
||||||
<tr {{bind-attr class="flaggedPost.extraClasses"}}>
|
<tr class={{flaggedPost.extraClasses}}>
|
||||||
|
|
||||||
<td class='user'>
|
<td class='user'>
|
||||||
{{#if flaggedPost.postAuthorFlagged}}
|
{{#if flaggedPost.postAuthorFlagged}}
|
||||||
|
|
|
@ -102,11 +102,12 @@
|
||||||
{{/unless}}
|
{{/unless}}
|
||||||
|
|
||||||
<div class='buttons'>
|
<div class='buttons'>
|
||||||
<button {{action "save"}} {{bind-attr disabled="disableSave"}} class='btn btn-primary'>{{i18n 'admin.customize.save'}}</button>
|
<button {{action "save"}} disabled={{disableSave}} class='btn btn-primary'>{{i18n 'admin.customize.save'}}</button>
|
||||||
{{#unless model.automatic}}
|
{{#unless model.automatic}}
|
||||||
<button {{action "destroy"}} class='btn btn-danger'>{{fa-icon "trash-o"}}{{i18n 'admin.customize.delete'}}</button>
|
<button {{action "destroy"}} class='btn btn-danger'>{{fa-icon "trash-o"}}{{i18n 'admin.customize.delete'}}</button>
|
||||||
{{/unless}}
|
{{/unless}}
|
||||||
<span {{bind-attr class=":saving savingStatus::hidden"}}>{{savingStatus}}</span>
|
|
||||||
|
<span class="saving {{unless savingStatus 'hidden'}}">{{savingStatus}}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<div class="col first email">
|
<div class="col first email">
|
||||||
<div class="overflow-ellipsis" {{bind-attr title="email"}}>{{email}}</div>
|
<div class="overflow-ellipsis" title={{email}}>{{email}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col action">{{actionName}}</div>
|
<div class="col action">{{actionName}}</div>
|
||||||
<div class="col match_count">{{match_count}}</div>
|
<div class="col match_count">{{match_count}}</div>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<div class="col first domain">
|
<div class="col first domain">
|
||||||
<div class="overflow-ellipsis" {{bind-attr title="domain"}}>{{domain}}</div>
|
<div class="overflow-ellipsis" title={{domain}}>{{domain}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col action">{{actionName}}</div>
|
<div class="col action">{{actionName}}</div>
|
||||||
<div class="col match_count">{{match_count}}</div>
|
<div class="col match_count">{{match_count}}</div>
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
<div>
|
<div>
|
||||||
<ul class="nav nav-pills">
|
<ul class="nav nav-pills">
|
||||||
<li {{bind-attr class="newSelected:active"}}>
|
<li class="{{if newSelected 'active'}}">
|
||||||
<a href {{action "selectNew"}}>{{i18n 'admin.logs.staff_actions.new_value'}}</a>
|
<a href {{action "selectNew"}}>{{i18n 'admin.logs.staff_actions.new_value'}}</a>
|
||||||
</li>
|
</li>
|
||||||
<li {{bind-attr class="previousSelected:active"}}>
|
<li class="{{if previousSelected 'active'}}">
|
||||||
<a href {{action "selectPrevious"}}>{{i18n 'admin.logs.staff_actions.previous_value'}}</a>
|
<a href {{action "selectPrevious"}}>{{i18n 'admin.logs.staff_actions.previous_value'}}</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<div {{bind-attr class=":modal-tab :new-tab newSelected::invisible"}}>
|
<div class="modal-tab new-tab {{unless newSelected 'invisible'}}">
|
||||||
{{#if model.new_value}}
|
{{#if model.new_value}}
|
||||||
{{#with model.new_value}}
|
{{#with model.new_value}}
|
||||||
{{partial "admin/templates/logs/site_customization_change_details"}}
|
{{partial "admin/templates/logs/site_customization_change_details"}}
|
||||||
|
@ -17,7 +17,7 @@
|
||||||
{{i18n 'admin.logs.staff_actions.deleted'}}
|
{{i18n 'admin.logs.staff_actions.deleted'}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
<div {{bind-attr class=":modal-tab :previous-tab previousSelected::invisible"}}>
|
<div class="modal-tab previous-tab {{unless previousSelected 'invisible'}}">
|
||||||
{{#if model.previous_value}}
|
{{#if model.previous_value}}
|
||||||
{{#with model.previous_value}}
|
{{#with model.previous_value}}
|
||||||
{{partial "admin/templates/logs/site_customization_change_details"}}
|
{{partial "admin/templates/logs/site_customization_change_details"}}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<div class="staff-action-logs-controls">
|
<div class="staff-action-logs-controls">
|
||||||
<a {{action "clearAllFilters"}} {{bind-attr class=":clear-filters :filter filtersExists::invisible"}}>
|
<a {{action "clearAllFilters"}} class="clear-filters filter {{unless filtersExists 'invisible'}}">
|
||||||
<span class="label">{{i18n 'admin.logs.staff_actions.clear_filters'}}</span>
|
<span class="label">{{i18n 'admin.logs.staff_actions.clear_filters'}}</span>
|
||||||
</a>
|
</a>
|
||||||
{{#if actionFilter}}
|
{{#if actionFilter}}
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<a {{action "filterByTargetUser" target_user}} class="btn btn-small">{{target_user.username}}</a>
|
<a {{action "filterByTargetUser" target_user}} class="btn btn-small">{{target_user.username}}</a>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if subject}}
|
{{#if subject}}
|
||||||
<a {{action "filterBySubject" subject}} {{bind-attr title="subject"}} class="btn btn-small">{{subject}}</a>
|
<a {{action "filterBySubject" subject}} title={{subject}} class="btn btn-small">{{subject}}</a>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
<div class="col value created_at">{{age-with-tooltip created_at}}</div>
|
<div class="col value created_at">{{age-with-tooltip created_at}}</div>
|
||||||
|
|
|
@ -10,10 +10,10 @@
|
||||||
{{wc.displayName}}
|
{{wc.displayName}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<div class='actions'>
|
<div class='actions'>
|
||||||
<button {{action "edit" wc}} class="btn no-text" {{bind-attr disabled="wc.system"}}>{{fa-icon 'pencil'}}</button>
|
<button {{action "edit" wc}} class="btn no-text" disabled={{wc.system}}>{{fa-icon 'pencil'}}</button>
|
||||||
<button {{action "up" wc}} class="btn no-text">{{fa-icon 'toggle-up'}}</button>
|
<button {{action "up" wc}} class="btn no-text">{{fa-icon 'toggle-up'}}</button>
|
||||||
<button {{action "down" wc}} class="btn no-text">{{fa-icon 'toggle-down'}}</button>
|
<button {{action "down" wc}} class="btn no-text">{{fa-icon 'toggle-down'}}</button>
|
||||||
<button {{action "delete" wc}} class="btn no-text btn-danger" {{bind-attr disabled="wc.system"}}>{{fa-icon 'times'}}</button>
|
<button {{action "delete" wc}} class="btn no-text btn-danger" disabled={{wc.system}}>{{fa-icon 'times'}}</button>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
|
@ -22,6 +22,6 @@
|
||||||
<button class='btn' {{action "add"}}>{{i18n 'admin.badges.new'}}</button>
|
<button class='btn' {{action "add"}}>{{i18n 'admin.badges.new'}}</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class='btn btn-primary' {{action "saveAll"}} {{bind-attr disabled="submitDisabled"}}>{{i18n 'admin.badges.save'}}</button>
|
<button class='btn btn-primary' {{action "saveAll"}} disabled={{submitDisabled}}>{{i18n 'admin.badges.save'}}</button>
|
||||||
<a {{action "cancel"}}>{{i18n 'cancel'}}</a>
|
<a {{action "cancel"}}>{{i18n 'cancel'}}</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -10,6 +10,6 @@
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class='btn btn-danger' {{action "suspend"}} {{bind-attr disabled="submitDisabled"}}><i class='fa fa-ban'></i>{{i18n 'admin.user.suspend'}}</button>
|
<button class='btn btn-danger' {{action "suspend"}} disabled={{submitDisabled}}><i class='fa fa-ban'></i>{{i18n 'admin.user.suspend'}}</button>
|
||||||
<a {{action "closeModal"}}>{{i18n 'cancel'}}</a>
|
<a {{action "closeModal"}}>{{i18n 'cancel'}}</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
{{#if plugin.url}}
|
{{#if plugin.url}}
|
||||||
<a {{bind-attr href=plugin.url}} target="_blank">{{plugin.name}}</a>
|
<a href={{plugin.url}} target="_blank">{{plugin.name}}</a>
|
||||||
{{else}}
|
{{else}}
|
||||||
{{plugin.name}}
|
{{plugin.name}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -288,7 +288,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div {{bind-attr class=":display-row model.isSuspended:highlight-danger"}}>
|
<div class="display-row {{if model.isSuspended 'highlight-danger'}}">
|
||||||
<div class='field'>{{i18n 'admin.user.suspended'}}</div>
|
<div class='field'>{{i18n 'admin.user.suspended'}}</div>
|
||||||
<div class='value'>{{model.isSuspended}}</div>
|
<div class='value'>{{model.isSuspended}}</div>
|
||||||
<div class='controls'>
|
<div class='controls'>
|
||||||
|
@ -325,7 +325,7 @@
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
<div {{bind-attr class=":display-row model.blocked:highlight-danger"}}>
|
<div class="display-row {{if model.blocked 'highlight-danger'}}">
|
||||||
<div class='field'>{{i18n 'admin.user.blocked'}}</div>
|
<div class='field'>{{i18n 'admin.user.blocked'}}</div>
|
||||||
<div class='value'>{{model.blocked}}</div>
|
<div class='value'>{{model.blocked}}</div>
|
||||||
<div class='controls'>
|
<div class='controls'>
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.visits'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.visits'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.days_visited:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.days_visited 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>
|
<td>
|
||||||
{{model.tl3Requirements.days_visited_percent}}% ({{model.tl3Requirements.days_visited}} / {{model.tl3Requirements.time_period}} {{i18n 'admin.user.tl3_requirements.days'}})
|
{{model.tl3Requirements.days_visited_percent}}% ({{model.tl3Requirements.days_visited}} / {{model.tl3Requirements.time_period}} {{i18n 'admin.user.tl3_requirements.days'}})
|
||||||
</td>
|
</td>
|
||||||
|
@ -32,67 +32,67 @@
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.topics_replied_to'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.topics_replied_to'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.topics_replied_to:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.topics_replied_to 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.num_topics_replied_to}}</td>
|
<td>{{model.tl3Requirements.num_topics_replied_to}}</td>
|
||||||
<td>{{model.tl3Requirements.min_topics_replied_to}}</td>
|
<td>{{model.tl3Requirements.min_topics_replied_to}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.topics_viewed'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.topics_viewed'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.topics_viewed:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.topics_viewed 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.topics_viewed}}</td>
|
<td>{{model.tl3Requirements.topics_viewed}}</td>
|
||||||
<td>{{model.tl3Requirements.min_topics_viewed}}</td>
|
<td>{{model.tl3Requirements.min_topics_viewed}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.topics_viewed_all_time'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.topics_viewed_all_time'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.topics_viewed_all_time:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.topics_viewed_all_time 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.topics_viewed_all_time}}</td>
|
<td>{{model.tl3Requirements.topics_viewed_all_time}}</td>
|
||||||
<td>{{model.tl3Requirements.min_topics_viewed_all_time}}</td>
|
<td>{{model.tl3Requirements.min_topics_viewed_all_time}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.posts_read'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.posts_read'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.posts_read:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.posts_read 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.posts_read}}</td>
|
<td>{{model.tl3Requirements.posts_read}}</td>
|
||||||
<td>{{model.tl3Requirements.min_posts_read}}</td>
|
<td>{{model.tl3Requirements.min_posts_read}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.posts_read_all_time'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.posts_read_all_time'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.posts_read_all_time:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.posts_read_all_time 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.posts_read_all_time}}</td>
|
<td>{{model.tl3Requirements.posts_read_all_time}}</td>
|
||||||
<td>{{model.tl3Requirements.min_posts_read_all_time}}</td>
|
<td>{{model.tl3Requirements.min_posts_read_all_time}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.flagged_posts'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.flagged_posts'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.flagged_posts:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.flagged_posts 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.num_flagged_posts}}</td>
|
<td>{{model.tl3Requirements.num_flagged_posts}}</td>
|
||||||
<td>{{i18n 'max_of_count' count=model.tl3Requirements.max_flagged_posts}}</td>
|
<td>{{i18n 'max_of_count' count=model.tl3Requirements.max_flagged_posts}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.flagged_by_users'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.flagged_by_users'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.flagged_by_users:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.flagged_by_users 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.num_flagged_by_users}}</td>
|
<td>{{model.tl3Requirements.num_flagged_by_users}}</td>
|
||||||
<td>{{i18n 'max_of_count' count=model.tl3Requirements.max_flagged_by_users}}</td>
|
<td>{{i18n 'max_of_count' count=model.tl3Requirements.max_flagged_by_users}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.likes_given'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.likes_given'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.likes_given:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.likes_given 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.num_likes_given}}</td>
|
<td>{{model.tl3Requirements.num_likes_given}}</td>
|
||||||
<td>{{model.tl3Requirements.min_likes_given}}</td>
|
<td>{{model.tl3Requirements.min_likes_given}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.likes_received'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.likes_received'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.likes_received:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.likes_received 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.num_likes_received}}</td>
|
<td>{{model.tl3Requirements.num_likes_received}}</td>
|
||||||
<td>{{model.tl3Requirements.min_likes_received}}</td>
|
<td>{{model.tl3Requirements.min_likes_received}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.likes_received_days'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.likes_received_days'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.likes_received_days:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.likes_received_days 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.num_likes_received_days}}</td>
|
<td>{{model.tl3Requirements.num_likes_received_days}}</td>
|
||||||
<td>{{model.tl3Requirements.min_likes_received_days}}</td>
|
<td>{{model.tl3Requirements.min_likes_received_days}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{{i18n 'admin.user.tl3_requirements.likes_received_users'}}</th>
|
<th>{{i18n 'admin.user.tl3_requirements.likes_received_users'}}</th>
|
||||||
<td><i {{bind-attr class=":fa model.tl3Requirements.met.likes_received_users:fa-check:fa-times"}}></i></td>
|
<td><i class="fa {{if model.tl3Requirements.met.likes_received_users 'fa-check' 'fa-times'}}"></i></td>
|
||||||
<td>{{model.tl3Requirements.num_likes_received_users}}</td>
|
<td>{{model.tl3Requirements.num_likes_received_users}}</td>
|
||||||
<td>{{model.tl3Requirements.min_likes_received_users}}</td>
|
<td>{{model.tl3Requirements.min_likes_received_users}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
@ -42,7 +42,7 @@
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
{{#each model as |user|}}
|
{{#each model as |user|}}
|
||||||
<tr {{bind-attr class="user.selected user.active::not-activated"}}>
|
<tr class="{{user.selected}} {{unless user.active 'not-activated'}}">
|
||||||
{{#if controller.showApproval}}
|
{{#if controller.showApproval}}
|
||||||
<td>
|
<td>
|
||||||
{{#if user.can_approve}}
|
{{#if user.can_approve}}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<div {{bind-attr class=":dashboard-stats :version-check versionCheck.critical_updates:critical:normal"}}>
|
<div class="dashboard-stats version-check {{if versionCheck.critical_updates 'critical' 'normal'}}">
|
||||||
<table class="table table-condensed table-hover">
|
<table class="table table-condensed table-hover">
|
||||||
<thead>
|
<thead>
|
||||||
{{custom-html 'upgrade-header'}}
|
{{custom-html 'upgrade-header'}}
|
||||||
|
@ -11,7 +11,7 @@
|
||||||
{{#unless loading}}
|
{{#unless loading}}
|
||||||
<tbody>
|
<tbody>
|
||||||
<td class="title">{{i18n 'admin.dashboard.version'}}</td>
|
<td class="title">{{i18n 'admin.dashboard.version'}}</td>
|
||||||
<td class="version-number"><a {{bind-attr href="versionCheck.gitLink"}} target="_blank">{{dash-if-empty versionCheck.installed_describe}}</a></td>
|
<td class="version-number"><a href={{versionCheck.gitLink}} target="_blank">{{dash-if-empty versionCheck.installed_describe}}</a></td>
|
||||||
|
|
||||||
{{#if versionCheck.noCheckPerformed}}
|
{{#if versionCheck.noCheckPerformed}}
|
||||||
<td class="version-number">—</td>
|
<td class="version-number">—</td>
|
||||||
|
@ -46,7 +46,7 @@
|
||||||
{{#if versionCheck.upToDate }}
|
{{#if versionCheck.upToDate }}
|
||||||
<span class='icon up-to-date'>{{fa-icon "smile-o"}}</span>
|
<span class='icon up-to-date'>{{fa-icon "smile-o"}}</span>
|
||||||
{{else}}
|
{{else}}
|
||||||
<span {{bind-attr class=":icon versionCheck.critical_updates:critical-updates-available:updates-available"}}>
|
<span class="icon {{if versionCheck.critical_updates 'critical-updates-available' 'updates-available'}}">
|
||||||
{{#if versionCheck.behindByOneVersion}}
|
{{#if versionCheck.behindByOneVersion}}
|
||||||
{{fa-icon "meh-o"}}
|
{{fa-icon "meh-o"}}
|
||||||
{{else}}
|
{{else}}
|
||||||
|
|
|
@ -10,7 +10,7 @@ const Mobile = {
|
||||||
this.isMobileDevice = mobileForced || $html.hasClass('mobile-device');
|
this.isMobileDevice = mobileForced || $html.hasClass('mobile-device');
|
||||||
this.mobileView = mobileForced || $html.hasClass('mobile-view');
|
this.mobileView = mobileForced || $html.hasClass('mobile-view');
|
||||||
|
|
||||||
if (mobileForced) { return; }
|
if (Ember.testing || mobileForced) { return; }
|
||||||
|
|
||||||
try{
|
try{
|
||||||
if (window.location.search.match(/mobile_view=1/)){
|
if (window.location.search.match(/mobile_view=1/)){
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<label class="btn" {{bind-attr disabled="uploading"}} title="{{i18n 'user.change_avatar.upload_title'}}">
|
<label class="btn" disabled={{uploading}} title="{{i18n 'user.change_avatar.upload_title'}}">
|
||||||
{{fa-icon "picture-o"}} {{uploadButtonText}}
|
{{fa-icon "picture-o"}} {{uploadButtonText}}
|
||||||
<input {{bind-attr disabled="uploading"}} type="file" accept="image/*" style="visibility: hidden; position: absolute;" />
|
<input disabled={{uploading}} type="file" accept="image/*" style="visibility: hidden; position: absolute;" />
|
||||||
</label>
|
</label>
|
||||||
{{#if uploading}}
|
{{#if uploading}}
|
||||||
<span>{{i18n 'upload_selector.uploading'}} {{uploadProgress}}%</span>
|
<span>{{i18n 'upload_selector.uploading'}} {{uploadProgress}}%</span>
|
||||||
|
|
|
@ -16,10 +16,10 @@
|
||||||
|
|
||||||
{{#if categories}}
|
{{#if categories}}
|
||||||
<a href {{action "expand"}} class={{dropdownButtonClass}} style={{badgeStyle}}><i class={{iconClass}}></i></a>
|
<a href {{action "expand"}} class={{dropdownButtonClass}} style={{badgeStyle}}><i class={{iconClass}}></i></a>
|
||||||
<section {{bind-attr class="expanded::hidden :category-dropdown-menu :chooser"}}>
|
<section class="{{unless expanded 'hidden'}} category-dropdown-menu chooser}}">
|
||||||
<div class='cat'><a {{bind-attr href=allCategoriesUrl}} data-drop-close="true" class='badge-category home'>{{allCategoriesLabel}}</a></div>
|
<div class='cat'><a href={{allCategoriesUrl}} data-drop-close="true" class='badge-category home'>{{allCategoriesLabel}}</a></div>
|
||||||
{{#if subCategory}}
|
{{#if subCategory}}
|
||||||
<div class='cat'><a {{bind-attr href=noCategoriesUrl}} data-drop-close="true" class='badge-category home'>{{i18n 'categories.no_subcategory'}}</a></div>
|
<div class='cat'><a href={{noCategoriesUrl}} data-drop-close="true" class='badge-category home'>{{i18n 'categories.no_subcategory'}}</a></div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if renderCategories}}
|
{{#if renderCategories}}
|
||||||
{{#each categories as |c|}}<div class='cat'>{{category-link c allowUncategorized=true hideParent=subCategory}}</div>{{/each}}
|
{{#each categories as |c|}}<div class='cat'>{{category-link c allowUncategorized=true hideParent=subCategory}}</div>{{/each}}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{{text-field name="name" placeholderKey="admin.emoji.name" value=name}}
|
{{text-field name="name" placeholderKey="admin.emoji.name" value=name}}
|
||||||
<label {{bind-attr class=":btn :btn-primary addDisabled:disabled"}}>
|
<label class="btn btn-primary {{if addDisabled 'disabled'}}">
|
||||||
{{fa-icon "plus"}}
|
{{fa-icon "plus"}}
|
||||||
{{i18n 'admin.emoji.add'}}
|
{{i18n 'admin.emoji.add'}}
|
||||||
<input disabled={{addDisabled}} type="file" accept=".png,.gif" style="visibility: hidden; position: absolute;" />
|
<input disabled={{addDisabled}} type="file" accept=".png,.gif" style="visibility: hidden; position: absolute;" />
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
<label class='radio'><input type='radio' id="radio_{{unbound flag.name_key}}" {{action "changePostActionType" flag}} name='post_action_type_index'> <span class='description'>{{{flag.description}}}</span></label>
|
<label class='radio'><input type='radio' id="radio_{{unbound flag.name_key}}" {{action "changePostActionType" flag}} name='post_action_type_index'> <span class='description'>{{{flag.description}}}</span></label>
|
||||||
{{#if showMessageInput}}
|
{{#if showMessageInput}}
|
||||||
{{textarea name="message" class="flag-message" placeholder=customPlaceholder value=message}}
|
{{textarea name="message" class="flag-message" placeholder=customPlaceholder value=message}}
|
||||||
<div {{bind-attr class=":custom-message-length customMessageLengthClasses"}}>{{customMessageLength}}</div>
|
<div class="custom-message-length {{customMessageLengthClasses}}">{{customMessageLength}}</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
{{#if staffFlagsAvailable}}
|
{{#if staffFlagsAvailable}}
|
||||||
|
@ -21,7 +21,7 @@
|
||||||
</label>
|
</label>
|
||||||
{{#if showMessageInput}}
|
{{#if showMessageInput}}
|
||||||
{{textarea name="message" class="flag-message" placeholder=customPlaceholder value=message}}
|
{{textarea name="message" class="flag-message" placeholder=customPlaceholder value=message}}
|
||||||
<div {{bind-attr class=":custom-message-length customMessageLengthClasses"}}>{{customMessageLength}}</div>
|
<div class="custom-message-length {{customMessageLengthClasses}}">{{customMessageLength}}</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
<input class='ember-text-field group-names' type="text" {{bind-attr placeholder="placeholder"}} name="groups">
|
<input class='ember-text-field group-names' type="text" placeholder={{placeholder}} name="groups">
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
<div class="image-upload-controls">
|
<div class="image-upload-controls">
|
||||||
<label class="btn pad-left no-text {{if uploading 'disabled'}}">
|
<label class="btn pad-left no-text {{if uploading 'disabled'}}">
|
||||||
{{fa-icon "picture-o"}}
|
{{fa-icon "picture-o"}}
|
||||||
<input {{bind-attr disabled="uploading"}} type="file" accept="image/*" style="visibility: hidden; position: absolute;" />
|
<input disabled={{uploading}} type="file" accept="image/*" style="visibility: hidden; position: absolute;" />
|
||||||
</label>
|
</label>
|
||||||
{{#if backgroundStyle}}
|
{{#if backgroundStyle}}
|
||||||
<button {{action "trash"}} class="btn btn-danger pad-left no-text">{{fa-icon "trash-o"}}</button>
|
<button {{action "trash"}} class="btn btn-danger pad-left no-text">{{fa-icon "trash-o"}}</button>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<span {{bind-attr class=":btn uploading::hidden"}}>{{i18n 'upload_selector.uploading'}} {{uploadProgress}}%</span>
|
<span class="btn {{unless uploading 'hidden'}}">{{i18n 'upload_selector.uploading'}} {{uploadProgress}}%</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
{{#each buttons as |b|}}
|
{{#each buttons as |b|}}
|
||||||
<button {{bind-attr class=":btn :btn-social b.name"}} {{action "externalLogin" b}}>{{b.title}}</button>
|
<button class="btn btn-social {{b.name}}" {{action "externalLogin" b}}>{{b.title}}</button>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<h2>{{period-title period showDateRange=true}}</h2>
|
<h2>{{period-title period showDateRange=true}}</h2>
|
||||||
<button>{{fa-icon "caret-down"}}</button>
|
<button>{{fa-icon "caret-down"}}</button>
|
||||||
|
|
||||||
<div id='period-popup' {{bind-attr class="showPeriods::hidden :period-popup"}}>
|
<div id='period-popup' class="{{unless showPeriods 'hidden'}} period-popup">
|
||||||
<ul>
|
<ul>
|
||||||
{{#each site.periods as |p|}}
|
{{#each site.periods as |p|}}
|
||||||
<li><a href {{action "changePeriod" p}}>{{period-title p showDateRange=true}}</a></li>
|
<li><a href {{action "changePeriod" p}}>{{period-title p showDateRange=true}}</a></li>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<a href {{action "share" source}} title="{{unbound source.title}}" aria-label="{{unbound source.title}}" >
|
<a href {{action "share" source}} title="{{unbound source.title}}" aria-label="{{unbound source.title}}" >
|
||||||
{{#if source.faIcon}}
|
{{#if source.faIcon}}
|
||||||
<i {{bind-attr class=":fa source.faIcon"}}></i>
|
<i class="fa {{source.faIcon}}"></i>
|
||||||
{{else}}
|
{{else}}
|
||||||
{{{source.htmlIcon}}}
|
{{{source.htmlIcon}}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
{{#if showTagDropdown}}
|
{{#if showTagDropdown}}
|
||||||
{{#if tagId}}
|
{{#if tagId}}
|
||||||
<a href {{action "expand"}} {{bind-attr class=":badge-category tagClass"}}>{{tagId}}</a>
|
<a href {{action "expand"}} class="badge-category {{tagClass}}">{{tagId}}</a>
|
||||||
{{else}}
|
{{else}}
|
||||||
<a href {{action "expand"}} {{bind-attr class=":badge-category tagClass :home"}}>{{allTagsLabel}}</a>
|
<a href {{action "expand"}} class="badge-category {{tagClass}} home">{{allTagsLabel}}</a>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#if tags}}
|
{{#if tags}}
|
||||||
<a href {{action "expand"}} class={{dropdownButtonClass}}><i class={{iconClass}}></i></a>
|
<a href {{action "expand"}} class={{dropdownButtonClass}}><i class={{iconClass}}></i></a>
|
||||||
<section {{bind-attr class="expanded::hidden :category-dropdown-menu :chooser"}}>
|
<section class="{{unless expanded 'hidden'}} category-dropdown-menu chooser">
|
||||||
<div class='cat'><a {{bind-attr href=allTagsUrl}} data-drop-close="true" class='badge-category home'>{{allTagsLabel}}</a></div>
|
<div class='cat'><a href={{allTagsUrl}} data-drop-close="true" class='badge-category home'>{{allTagsLabel}}</a></div>
|
||||||
{{#if renderTags}}
|
{{#if renderTags}}
|
||||||
{{#each tags as |t|}}
|
{{#each tags as |t|}}
|
||||||
<div class='cat'>
|
<div class='cat'>
|
||||||
|
|
|
@ -100,7 +100,7 @@
|
||||||
{{#if canEditTags}}
|
{{#if canEditTags}}
|
||||||
{{tag-chooser tags=model.tags tabIndex="4"}}
|
{{tag-chooser tags=model.tags tabIndex="4"}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<button {{action "save"}} tabindex="5" {{bind-attr class=":btn :btn-primary :create disableSubmit:disabled"}} title="{{i18n 'composer.title'}}">{{{model.saveIcon}}}{{model.saveText}}</button>
|
<button {{action "save"}} tabindex="5" class="btn btn-primary create {{if disableSubmit 'disabled'}}" title="{{i18n 'composer.title'}}">{{{model.saveIcon}}}{{model.saveText}}</button>
|
||||||
<a href {{action "cancel"}} class='cancel' tabindex="6">{{i18n 'cancel'}}</a>
|
<a href {{action "cancel"}} class='cancel' tabindex="6">{{i18n 'cancel'}}</a>
|
||||||
|
|
||||||
{{#if site.mobileView}}
|
{{#if site.mobileView}}
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
{{#each model.categories as |c|}}
|
{{#each model.categories as |c|}}
|
||||||
<tr data-category_id='{{unbound c.id}}' {{bind-attr class="c.description_excerpt:has-description:no-description c.logo_url:has-logo:no-logo"}}>
|
<tr data-category_id='{{unbound c.id}}' class="{{if c.description_excerpt 'has-description' 'no-description'}} {{if c.logo_url 'has-logo' 'no-logo'}}">
|
||||||
<td class='category' style={{border-color c.color}}>
|
<td class='category' style={{border-color c.color}}>
|
||||||
<div>
|
<div>
|
||||||
{{category-title-link category=c}}
|
{{category-title-link category=c}}
|
||||||
|
@ -38,7 +38,7 @@
|
||||||
{{featured-topic topic=f latestTopicOnly=latestTopicOnly action="showTopicEntrance"}}
|
{{featured-topic topic=f latestTopicOnly=latestTopicOnly action="showTopicEntrance"}}
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</td>
|
</td>
|
||||||
<td class='stats' {{bind-attr title="c.topicStatsTitle"}}>
|
<td class='stats' title={{c.topicStatsTitle}}>
|
||||||
<table class="categoryStats">
|
<table class="categoryStats">
|
||||||
<tbody>
|
<tbody>
|
||||||
{{#each c.topicCountStats as |s|}}
|
{{#each c.topicCountStats as |s|}}
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<div class="face">:(</div>
|
<div class="face">:(</div>
|
||||||
<div class="reason">{{reason}}</div>
|
<div class="reason">{{reason}}</div>
|
||||||
<div class="url">
|
<div class="url">
|
||||||
{{i18n 'errors.prev_page'}} <a {{bind-attr href=requestUrl}} data-auto-route="true">{{requestUrl}}</a>
|
{{i18n 'errors.prev_page'}} <a href={{requestUrl}} data-auto-route="true">{{requestUrl}}</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="desc">
|
<div class="desc">
|
||||||
{{#if networkFixed}}
|
{{#if networkFixed}}
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<table class="topic-list">
|
<table class="topic-list">
|
||||||
<tbody>
|
<tbody>
|
||||||
{{#each topics as |t|}}
|
{{#each topics as |t|}}
|
||||||
<tr {{bind-attr class="t.archived"}} data-topic-id={{t.id}}>
|
<tr class="{{if t.archived 'archived'}}" data-topic-id={{t.id}}>
|
||||||
<td>
|
<td>
|
||||||
<div class='main-link'>
|
<div class='main-link'>
|
||||||
{{topic-status topic=t}}
|
{{topic-status topic=t}}
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#each c.topics as |t|}}
|
{{#each c.topics as |t|}}
|
||||||
<tr {{bind-attr class="t.archived :category-topic-link"}}>
|
<tr class="{{if t.archived 'archived'}} category-topic-link">
|
||||||
<td class='main-link'>
|
<td class='main-link'>
|
||||||
<div class='topic-inset'>
|
<div class='topic-inset'>
|
||||||
{{topic-status topic=t}}
|
{{topic-status topic=t}}
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
</form>
|
</form>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{authMessage}}
|
{{authMessage}}
|
||||||
<div id='login-alert' {{bind-attr class="alertClass"}}>{{alert}}</div>
|
<div id='login-alert' class={{alertClass}}>{{alert}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
{{#if authenticate}}
|
{{#if authenticate}}
|
||||||
|
@ -39,7 +39,7 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if canLoginLocal}}
|
{{#if canLoginLocal}}
|
||||||
<button class='btn btn-large btn-primary'
|
<button class='btn btn-large btn-primary'
|
||||||
{{bind-attr disabled="loginDisabled"}}
|
disabled={{loginDisabled}}
|
||||||
{{action "login"}}>
|
{{action "login"}}>
|
||||||
<i class="fa fa-unlock"></i> {{loginButtonText}}
|
<i class="fa fa-unlock"></i> {{loginButtonText}}
|
||||||
</button>
|
</button>
|
||||||
|
|
|
@ -7,4 +7,4 @@
|
||||||
</div>
|
</div>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
|
|
||||||
<button class='btn' {{bind-attr disabled="disabled"}} {{action "changeNotificationLevel"}}>{{i18n 'topics.bulk.notification_level'}}</button>
|
<button class='btn' disabled={{disabled}} {{action "changeNotificationLevel"}}>{{i18n 'topics.bulk.notification_level'}}</button>
|
||||||
|
|
|
@ -12,5 +12,5 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class='btn btn-primary' {{bind-attr disabled="buttonDisabled"}} {{action "changeOwnershipOfPosts"}}>{{buttonTitle}}</button>
|
<button class='btn btn-primary' disabled={{buttonDisabled}} {{action "changeOwnershipOfPosts"}}>{{buttonTitle}}</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
{{i18n 'topic.change_timestamp.instructions'}}
|
{{i18n 'topic.change_timestamp.instructions'}}
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p {{bind-attr class=":alert :alert-error validTimestamp::hidden"}}>
|
<p class="alert alert-error {{unless validTimestamp 'hidden'}}">
|
||||||
{{i18n 'topic.change_timestamp.invalid_timestamp'}}
|
{{i18n 'topic.change_timestamp.invalid_timestamp'}}
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
@ -16,5 +16,5 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-primary" {{bind-attr disabled="buttonDisabled"}} {{action "changeTimestamp"}}>{{buttonTitle}}</button>
|
<button class="btn btn-primary" disabled={{buttonDisabled}} {{action "changeTimestamp"}}>{{buttonTitle}}</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -64,7 +64,7 @@
|
||||||
<td></td>
|
<td></td>
|
||||||
<td>
|
<td>
|
||||||
<label>{{passwordInstructions}}</label>
|
<label>{{passwordInstructions}}</label>
|
||||||
<div {{bind-attr class=":caps-lock-warning capsLockOn::invisible"}}><i class="fa fa-exclamation-triangle"></i> {{i18n 'login.caps_lock_warning'}}</div>
|
<div class="caps-lock-warning {{unless capsLockOn 'invisible'}}"><i class="fa fa-exclamation-triangle"></i> {{i18n 'login.caps_lock_warning'}}</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
@ -94,7 +94,7 @@
|
||||||
|
|
||||||
{{#if showCreateForm}}
|
{{#if showCreateForm}}
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class='btn btn-large btn-primary' {{bind-attr disabled="submitDisabled"}} {{action "createAccount"}}>{{i18n 'create_account.title'}}</button>
|
<button class='btn btn-large btn-primary' disabled={{submitDisabled}} {{action "createAccount"}}>{{i18n 'create_account.title'}}</button>
|
||||||
{{#conditional-loading-spinner condition=formSubmitted size="small"}}
|
{{#conditional-loading-spinner condition=formSubmitted size="small"}}
|
||||||
<button class="btn btn-large" id="login-link" {{action "showLogin"}}>
|
<button class="btn btn-large" id="login-link" {{action "showLogin"}}>
|
||||||
{{i18n 'log_in'}}
|
{{i18n 'log_in'}}
|
||||||
|
|
|
@ -16,17 +16,17 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class='btn btn-primary' {{action "createFlag"}} {{bind-attr disabled="submitDisabled"}} title="{{i18n 'flagging.submit_tooltip'}}">{{{submitText}}}</button>
|
<button class='btn btn-primary' {{action "createFlag"}} disabled={{submitDisabled}} title="{{i18n 'flagging.submit_tooltip'}}">{{{submitText}}}</button>
|
||||||
|
|
||||||
{{#if canSendWarning}}
|
{{#if canSendWarning}}
|
||||||
<button class="btn btn-danger" {{action "createFlagAsWarning" }} {{bind-attr disabled="submitDisabled"}} title="{{i18n 'flagging.official_warning'}}"><i class="fa fa-exclamation-triangle"></i> {{i18n 'flagging.official_warning'}}</button>
|
<button class="btn btn-danger" {{action "createFlagAsWarning" }} disabled={{submitDisabled}} title="{{i18n 'flagging.official_warning'}}"><i class="fa fa-exclamation-triangle"></i> {{i18n 'flagging.official_warning'}}</button>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#if canTakeAction}}
|
{{#if canTakeAction}}
|
||||||
<button class='btn btn-danger' {{action "takeAction"}} {{bind-attr disabled="submitDisabled"}} title="{{i18n 'flagging.take_action_tooltip'}}"><i class="fa fa-gavel"></i>{{i18n 'flagging.take_action'}}</button>
|
<button class='btn btn-danger' {{action "takeAction"}} disabled={{submitDisabled}} title="{{i18n 'flagging.take_action_tooltip'}}"><i class="fa fa-gavel"></i>{{i18n 'flagging.take_action'}}</button>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#if canDeleteSpammer}}
|
{{#if canDeleteSpammer}}
|
||||||
<button class="btn btn-danger" {{action "deleteSpammer" userDetails}} {{bind-attr disabled="submitDisabled"}} title="{{i18n 'flagging.delete_spammer'}}"><i class="fa fa-exclamation-triangle"></i> {{i18n 'flagging.delete_spammer'}}</button>
|
<button class="btn btn-danger" {{action "deleteSpammer" userDetails}} disabled={{submitDisabled}} title="{{i18n 'flagging.delete_spammer'}}"><i class="fa fa-exclamation-triangle"></i> {{i18n 'flagging.delete_spammer'}}</button>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -4,6 +4,6 @@
|
||||||
{{text-field value=accountEmailOrUsername placeholderKey="login.email_placeholder" id="username-or-email" autocorrect="off" autocapitalize="off"}}
|
{{text-field value=accountEmailOrUsername placeholderKey="login.email_placeholder" id="username-or-email" autocorrect="off" autocapitalize="off"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class='btn btn-large btn-primary' {{bind-attr disabled="submitDisabled"}} {{action "submit"}}>{{i18n 'forgot_password.reset'}}</button>
|
<button class='btn btn-large btn-primary' disabled={{submitDisabled}} {{action "submit"}}>{{i18n 'forgot_password.reset'}}</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<div id="revision-controls">
|
<div id="revision-controls">
|
||||||
{{d-button action="loadFirstVersion" icon="fast-backward" title="post.revisions.controls.first" disabled=loadFirstDisabled}}
|
{{d-button action="loadFirstVersion" icon="fast-backward" title="post.revisions.controls.first" disabled=loadFirstDisabled}}
|
||||||
{{d-button action="loadPreviousVersion" icon="backward" title="post.revisions.controls.previous" disabled=loadPreviousDisabled}}
|
{{d-button action="loadPreviousVersion" icon="backward" title="post.revisions.controls.previous" disabled=loadPreviousDisabled}}
|
||||||
<div id="revision-numbers" {{bind-attr class="displayRevisions::invisible"}}>
|
<div id="revision-numbers" class="{{unless displayRevisions 'invisible'}}">
|
||||||
{{#conditional-loading-spinner condition=loading size="small"}}
|
{{#conditional-loading-spinner condition=loading size="small"}}
|
||||||
{{boundI18n revisionsTextKey previousBinding="previousVersion" currentBinding="model.current_version" totalBinding="model.version_count"}}
|
{{boundI18n revisionsTextKey previousBinding="previousVersion" currentBinding="model.current_version" totalBinding="model.version_count"}}
|
||||||
{{/conditional-loading-spinner}}
|
{{/conditional-loading-spinner}}
|
||||||
|
@ -44,7 +44,7 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/unless}}
|
{{/unless}}
|
||||||
</div>
|
</div>
|
||||||
<div id="revisions" data-post-id="{{model.post_id}}" {{bind-attr class="hiddenClasses"}}>
|
<div id="revisions" data-post-id="{{model.post_id}}" class={{hiddenClasses}}>
|
||||||
{{#if model.title_changes}}
|
{{#if model.title_changes}}
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<h2>{{{titleDiff}}}</h2>
|
<h2>{{{titleDiff}}}</h2>
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><div {{bind-attr class=":caps-lock-warning capsLockOn::invisible"}}><i class="fa fa-exclamation-triangle"></i> {{i18n 'login.caps_lock_warning'}}</div></td>
|
<td><div class="caps-lock-warning {{unless capsLockOn 'invisible'}}"><i class="fa fa-exclamation-triangle"></i> {{i18n 'login.caps_lock_warning'}}</div></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
@ -34,12 +34,12 @@
|
||||||
</form>
|
</form>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{authMessage}}
|
{{authMessage}}
|
||||||
<div id='login-alert' {{bind-attr class="alertClass"}}>{{alert}}</div>
|
<div id='login-alert' class={{alertClass}}>{{alert}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
{{#if canLoginLocal}}
|
{{#if canLoginLocal}}
|
||||||
<button class="btn btn-large btn-primary"
|
<button class="btn btn-large btn-primary"
|
||||||
{{bind-attr disabled="loginDisabled"}}
|
disabled={{loginDisabled}}
|
||||||
{{action "login"}}>
|
{{action "login"}}>
|
||||||
<i class="fa fa-unlock"></i> {{loginButtonText}}
|
<i class="fa fa-unlock"></i> {{loginButtonText}}
|
||||||
</button>
|
</button>
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<button class="btn btn-primary" {{bind-attr disabled=disableSave}} {{action "save"}}>{{savingStatus}}</button>
|
<button class="btn btn-primary" disabled={{disableSave}} {{action "save"}}>{{savingStatus}}</button>
|
||||||
{{#if saved}}{{i18n 'saved'}}{{/if}}
|
{{#if saved}}{{i18n 'saved'}}{{/if}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{{#if link}}
|
{{#if link}}
|
||||||
<h3>{{title}}</h3>
|
<h3>{{title}}</h3>
|
||||||
|
|
||||||
{{#if controller.date}}
|
{{#if date}}
|
||||||
<span class="date">{{displayDate}}</span>
|
<span class="date">{{displayDate}}</span>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<button class="btn btn-primary" {{bind-attr disabled=disableSave}} {{action "save"}}>{{savingStatus}}</button>
|
<button class="btn btn-primary" disabled={{disableSave}} {{action "save"}}>{{savingStatus}}</button>
|
||||||
{{#if saved}}{{i18n 'saved'}}{{/if}}
|
{{#if saved}}{{i18n 'saved'}}{{/if}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -39,7 +39,7 @@
|
||||||
|
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<button {{action "changeEmail"}} {{bind-attr disabled="saveDisabled"}} class="btn btn-primary">{{saveButtonText}}</button>
|
<button {{action "changeEmail"}} disabled={{saveDisabled}} class="btn btn-primary">{{saveButtonText}}</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{{#user-stream stream=model}}
|
{{#user-stream stream=model}}
|
||||||
{{#each model.content as |p|}}
|
{{#each model.content as |p|}}
|
||||||
<div {{bind-attr class=":item p.hidden p.deleted p.moderator_action"}}>
|
<div class="item {{if p.hidden 'hidden'}} {{if p.deleted 'deleted'}} {{if p.moderator_action 'moderator-action'}}">
|
||||||
<div class="clearfix info">
|
<div class="clearfix info">
|
||||||
<a href="{{unbound p.usernameUrl}}" class="avatar-link">
|
<a href="{{unbound p.usernameUrl}}" class="avatar-link">
|
||||||
<div class="avatar-wrapper">
|
<div class="avatar-wrapper">
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<div class="container{{if viewingSelf ' viewing-self'}}">
|
<div class="container{{if viewingSelf ' viewing-self'}}">
|
||||||
<section class='user-main'>
|
<section class='user-main'>
|
||||||
<section {{bind-attr class="collapsedInfo :about model.profileBackground:has-background:no-background"}} style={{model.profileBackground}}>
|
<section class="{{if collapsedInfo 'collapsed-info'}} about {{if model.profileBackground 'has-background' 'no-background'}}" style={{model.profileBackground}}>
|
||||||
{{#unless collapsedInfo}}
|
{{#unless collapsedInfo}}
|
||||||
<div class='staff-counters'>
|
<div class='staff-counters'>
|
||||||
{{#if model.number_of_flags_given}}
|
{{#if model.number_of_flags_given}}
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
|
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<button {{action "changeUsername"}} {{bind-attr disabled="saveDisabled"}} class="btn btn-primary">{{saveButtonText}}</button>
|
<button {{action "changeUsername"}} disabled={{saveDisabled}} class="btn btn-primary">{{saveButtonText}}</button>
|
||||||
{{#if saved}}{{i18n 'saved'}}{{/if}}
|
{{#if saved}}{{i18n 'saved'}}{{/if}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Reference in a new issue