+ {{plugin-outlet name="composer-open" args=(hash model=model)}}
+
{{#unless model.viewFullscreen}}
- {{#if model.canEditTitle}}
- {{#if model.creatingPrivateMessage}}
-
- {{composer-user-selector topicId=topicModel.id
- usernames=model.targetRecipients
- hasGroups=model.hasTargetGroups
- focusTarget=focusTarget
- class="users-input"}}
- {{#if showWarning}}
-
- {{/if}}
-
- {{/if}}
+
+ {{composer-action-title
+ model=model
+ openComposer=(action "openComposer")
+ closeComposer=(action "closeComposer")
+ canWhisper=canWhisper
+ tabindex=8}}
+ {{plugin-outlet name="composer-action-after" noTags=true args=(hash model=model)}}
-
-
- {{composer-title composer=model lastValidatedAt=lastValidatedAt focusTarget=focusTarget}}
-
- {{#if model.showCategoryChooser}}
-
- {{category-chooser
- value=model.categoryId
- tabindex="3"
- onChange=(action (mut model.categoryId))
- isDisabled=disableCategoryChooser
- options=(hash
- scopedCategoryId=scopedCategoryId
- )
- }}
- {{popup-input-tip validation=categoryValidation}}
-
+ {{#unless site.mobileView}}
+ {{#if isWhispering}}
+
{{d-icon "far-eye-slash"}}
{{/if}}
- {{#if canEditTags}}
- {{mini-tag-chooser
- value=model.tags
- tabindex=4
- isDisabled=disableTagsChooser
- onChange=(action (mut model.tags))
- options=(hash
- categoryId=model.categoryId
- minimum=model.minimumRequiredTags
- )
- }}
- {{popup-input-tip validation=tagValidation}}
+ {{#if model.unlistTopic}}
+
({{i18n 'composer.unlist'}})
+ {{/if}}
+ {{#if model.noBump}}
+
{{d-icon "anchor"}}
+ {{/if}}
+ {{/unless}}
+
+ {{#if canEdit}}
+ {{#link-to-input onClick=(action "displayEditReason") showInput=showEditReason icon="info-circle" class="display-edit-reason"}}
+ {{text-field value=editReason tabindex="7" id="edit-reason" maxlength="255" placeholderKey="composer.edit_reason_placeholder"}}
+ {{/link-to-input}}
+ {{/if}}
+
+ {{/unless}}
+ {{composer-toggles composeState=model.composeState
+ toggleComposer=(action "toggle")
+ toggleToolbar=(action "toggleToolbar")
+ toggleFullscreen=(action "fullscreenComposer")}}
+
+ {{#unless model.viewFullscreen}}
+ {{#if model.canEditTitle}}
+ {{#if model.creatingPrivateMessage}}
+
+ {{composer-user-selector topicId=topicModel.id
+ usernames=model.targetRecipients
+ hasGroups=model.hasTargetGroups
+ focusTarget=focusTarget
+ class="users-input"}}
+ {{#if showWarning}}
+
{{/if}}
{{/if}}
- {{plugin-outlet name="composer-fields" args=(hash model=model)}}
- {{/unless}}
+
-
+ {{composer-title composer=model lastValidatedAt=lastValidatedAt focusTarget=focusTarget}}
- {{composer-editor topic=topic
- composer=model
- lastValidatedAt=lastValidatedAt
- canWhisper=canWhisper
- storeToolbarState=(action "storeToolbarState")
- onPopupMenuAction=(action "onPopupMenuAction")
- showUploadModal=(route-action "showUploadSelector")
- popupMenuOptions=popupMenuOptions
- draftStatus=model.draftStatus
- isUploading=isUploading
- allowUpload=allowUpload
- uploadIcon=uploadIcon
- isCancellable=isCancellable
- uploadProgress=uploadProgress
- groupsMentioned=(action "groupsMentioned")
- cannotSeeMention=(action "cannotSeeMention")
- importQuote=(action "importQuote")
- togglePreview=(action "togglePreview")
- showToolbar=showToolbar
- afterRefresh=(action "afterRefresh")
- focusTarget=focusTarget}}
+ {{#if model.showCategoryChooser}}
+
+ {{category-chooser
+ value=model.categoryId
+ tabindex="3"
+ onChange=(action (mut model.categoryId))
+ isDisabled=disableCategoryChooser
+ options=(hash
+ scopedCategoryId=scopedCategoryId
+ )
+ }}
+ {{popup-input-tip validation=categoryValidation}}
+
+ {{/if}}
+ {{#if canEditTags}}
+ {{mini-tag-chooser
+ value=model.tags
+ tabindex=4
+ isDisabled=disableTagsChooser
+ onChange=(action (mut model.tags))
+ options=(hash
+ categoryId=model.categoryId
+ minimum=model.minimumRequiredTags
+ )
+ }}
+ {{popup-input-tip validation=tagValidation}}
+ {{/if}}
+
- {{plugin-outlet name="composer-fields-below" args=(hash model=model)}}
+ {{plugin-outlet name="composer-fields" args=(hash model=model)}}
+ {{/unless}}
-
- {{#unless model.viewFullscreen}}
- {{composer-save-button action=(action "save")
- icon=saveIcon
- label=saveLabel
- disableSubmit=disableSubmit}}
+
+
+ {{composer-editor topic=topic
+ composer=model
+ lastValidatedAt=lastValidatedAt
+ canWhisper=canWhisper
+ storeToolbarState=(action "storeToolbarState")
+ onPopupMenuAction=(action "onPopupMenuAction")
+ showUploadModal=(route-action "showUploadSelector")
+ popupMenuOptions=popupMenuOptions
+ draftStatus=model.draftStatus
+ isUploading=isUploading
+ allowUpload=allowUpload
+ uploadIcon=uploadIcon
+ isCancellable=isCancellable
+ uploadProgress=uploadProgress
+ groupsMentioned=(action "groupsMentioned")
+ cannotSeeMention=(action "cannotSeeMention")
+ importQuote=(action "importQuote")
+ togglePreview=(action "togglePreview")
+ showToolbar=showToolbar
+ afterRefresh=(action "afterRefresh")
+ focusTarget=focusTarget}}
+
+
+ {{plugin-outlet name="composer-fields-below" args=(hash model=model)}}
+
+
-
- {{else}}
-
- {{#if model.createdPost}}
- {{i18n 'composer.saved'}}
{{i18n 'composer.view_new_post'}}
+ {{#if site.mobileView}}
+ {{#if allowUpload}}
+
+ {{d-icon uploadIcon}}
+
+ {{/if}}
+
+
+ {{d-icon "desktop"}}
+
+
+ {{#if showPreview}}
+ {{d-button action=(action "togglePreview") class="hide-preview" label="composer.hide_preview"}}
+ {{/if}}
{{else}}
- {{i18n 'composer.saving'}} {{loading-spinner size="small"}}
+
{{html-safe toggleText}}
{{/if}}
+
+
- {{#if model.topic}}
- {{d-icon "share"}} {{html-safe draftTitle}}
- {{else}}
- {{i18n "composer.saved_draft"}}
- {{/if}}
-
+ {{#if model.createdPost}}
+ {{i18n 'composer.saved'}}
{{i18n 'composer.view_new_post'}}
+ {{else}}
+ {{i18n 'composer.saving'}} {{loading-spinner size="small"}}
+ {{/if}}
+
- {{composer-toggles composeState=model.composeState
- toggleFullscreen=(action "openIfDraft")
- toggleComposer=(action "toggle")
- toggleToolbar=(action "toggleToolbar")}}
+
+ {{#if model.topic}}
+ {{d-icon "share"}} {{html-safe draftTitle}}
+ {{else}}
+ {{i18n "composer.saved_draft"}}
+ {{/if}}
+
- {{/if}}
+ {{composer-toggles composeState=model.composeState
+ toggleFullscreen=(action "openIfDraft")
+ toggleComposer=(action "toggle")
+ toggleToolbar=(action "toggleToolbar")}}
+
+ {{/if}}
{{/if}}