2020-02-16 04:21:58 +01:00
< form class = "status-editor" ( ngSubmit ) = " onSubmit ( ) " >
2023-08-06 23:15:00 +02:00
< input # mytitle [ ( ngModel ) ] = " title " type = "text" class = "form-control form-control-sm status-editor__title"
name="title" autocomplete="off" placeholder="Title, Content Warning (optional)"
title="title, content warning (optional)" dir="auto"
(keydown.escape)="mytitle.blur()" />
2019-03-06 04:46:50 +01:00
2019-07-28 02:37:26 +02:00
< a class = "status-editor__emoji" title = "Insert Emoji"
#emojiButton href (click)="openEmojiPicker($event)">
< img class = "status-editor__emoji--image" src = "/assets/emoji/72x72/1f636.png" >
< / a >
2023-08-04 08:39:59 +02:00
< a class = "status-editor__lang" title = "Change language" href * ngIf = "configuredLanguages && configuredLanguages.length > 1" ( click ) = " onLangContextMenu ( $ event ) " >
{{ selectedLanguage.iso639 }}
2023-08-04 06:48:38 +02:00
< / a >
2023-08-06 23:15:00 +02:00
< textarea # reply [ ( ngModel ) ] = " status " name = "status" class = "form-control form-control-sm status-editor__content" ( paste ) = " onPaste ( $ event ) "
2023-04-24 00:32:42 +02:00
rows="5" required title="content" placeholder="What's on your mind?"
(keydown.control.enter)="onCtrlEnter()"
(keydown.meta.enter)="onCtrlEnter()"
2023-08-06 23:15:00 +02:00
(keydown.escape)="reply.blur()"
2019-10-09 17:37:11 +02:00
(keydown)="handleKeyDown($event)" (blur)="statusTextEditorLostFocus()" dir="auto">
2019-07-28 02:37:26 +02:00
< / textarea >
2019-07-25 05:57:50 +02:00
2019-07-27 23:01:47 +02:00
< div class = "status-editor__mention-error" * ngIf = "mentionTooFarAwayError" > Error: mentions must be placed closer to
the
2019-07-27 20:03:47 +02:00
start in order to use multiposting.< / div >
< app-autosuggest class = "status-editor__autosuggest" * ngIf = "autosuggestData" [ pattern ] = " autosuggestData "
2019-07-25 00:09:50 +02:00
[autoSuggestUserActionsStream]="autoSuggestUserActionsStream"
2019-07-25 05:57:50 +02:00
(suggestionSelectedEvent)="suggestionSelected($event)" (hasSuggestionsEvent)="suggestionsChanged($event)">
< / app-autosuggest >
2023-08-06 08:53:24 +02:00
< app-poll-editor * ngIf = "instanceSupportsPoll && pollIsActive" [ oldPoll ] = " oldPoll " > < / app-poll-editor >
2019-08-24 04:59:57 +02:00
2019-10-02 04:24:00 +02:00
< app-status-scheduler class = "scheduler" * ngIf = "instanceSupportsScheduling && scheduleIsActive" > < / app-status-scheduler >
2019-08-24 04:59:57 +02:00
2019-08-16 01:40:17 +02:00
< div class = "status-editor__footer" # footer >
2019-07-26 01:44:03 +02:00
< button type = "submit" title = "reply" class = "status-editor__footer--send-button" * ngIf = "statusReplyingToWrapper" >
2022-12-11 04:11:25 +01:00
< span * ngIf = "!isSending && !scheduleIsActive && !isEditing" > REPLY!< / span >
< span * ngIf = "!isSending && scheduleIsActive && !isEditing" > PLAN!< / span >
< span * ngIf = "!isSending && isEditing" > EDIT!< / span >
2019-07-26 02:25:18 +02:00
< app-waiting-animation class = "waiting-icon" * ngIf = "isSending" > < / app-waiting-animation >
2019-07-26 01:44:03 +02:00
< / button >
< button type = "submit" title = "post" class = "status-editor__footer--send-button" * ngIf = "!statusReplyingToWrapper" >
2022-12-11 04:11:25 +01:00
< span * ngIf = "!isSending && !scheduleIsActive && !isEditing" > POST!< / span >
< span * ngIf = "!isSending && scheduleIsActive && !isEditing" > PLAN!< / span >
< span * ngIf = "!isSending && isEditing" > EDIT!< / span >
2019-07-26 02:25:18 +02:00
< app-waiting-animation class = "waiting-icon" * ngIf = "isSending" > < / app-waiting-animation >
2019-07-25 05:57:50 +02:00
< / button >
< div class = "status-editor__footer__counter" >
2019-07-25 07:10:48 +02:00
< div class = "status-editor__footer__counter--posts" title = "number of statuses" >
{{postCounts - 1}}/{{postCounts}}< / div >
< div class = "status-editor__footer__counter--count" title = "chars left" > {{charCountLeft}}< / div >
2019-07-25 05:57:50 +02:00
< / div >
2019-07-26 04:50:51 +02:00
< a href class = "status-editor__footer--link" title = "add media" ( click ) = " addMedia ( ) " >
2019-07-25 05:57:50 +02:00
< fa-icon [ icon ] = " faPaperclip " > < / fa-icon >
< / a >
2019-07-26 04:50:51 +02:00
< input # fileInput type = "file" id = "file" style = "display: none;" ( change ) = " handleFileInput ( $ event . target . files ) " >
2019-07-26 06:01:39 +02:00
< a href class = "status-editor__footer--link" title = "{{ selectedPrivacy }}" ( click ) = " onContextMenu ( $ event ) " >
2019-07-26 01:41:12 +02:00
< fa-icon [ icon ] = " faGlobeAmericas " * ngIf = "selectedPrivacy === 'Public'" > < / fa-icon >
< fa-icon [ icon ] = " faLockOpen " * ngIf = "selectedPrivacy === 'Unlisted'" > < / fa-icon >
< fa-icon [ icon ] = " faLock " * ngIf = "selectedPrivacy === 'Follows-only'" > < / fa-icon >
2019-07-26 01:44:03 +02:00
< fa-icon [ icon ] = " faEnvelope " * ngIf = "selectedPrivacy === 'DM'" > < / fa-icon >
2019-07-25 05:57:50 +02:00
< / a >
2019-08-24 04:59:57 +02:00
2019-10-02 04:24:00 +02:00
< a href * ngIf = "instanceSupportsPoll"
class="status-editor__footer--link status-editor__footer--add-poll" title="add poll" (click)="addPoll()">
2019-08-24 04:59:57 +02:00
< fa-icon [ icon ] = " faPollH " > < / fa-icon >
< / a >
2019-10-02 04:24:00 +02:00
< a href * ngIf = "instanceSupportsScheduling"
class="status-editor__footer--link" title="schedule" (click)="schedule()">
2019-08-24 04:59:57 +02:00
< fa-icon [ icon ] = " faClock " > < / fa-icon >
< / a >
2019-07-25 05:57:50 +02:00
< / div >
2023-08-05 02:23:40 +02:00
< div class = "language-warning" * ngIf = "!configuredLanguages || configuredLanguages.length === 0" >
You haven't set your language(s) yet, please < a href class = "language-warning__link" ( click ) = " onNavigateToSettings ( ) " > go in the settings< / a > to provide it.
< / div >
2019-07-25 05:57:50 +02:00
2019-07-25 07:10:48 +02:00
< context-menu # contextMenu >
2019-07-27 20:03:47 +02:00
< ng-template contextMenuItem ( execute ) = " changePrivacy ( ' Public ' ) " >
2019-07-26 06:01:39 +02:00
< fa-icon [ icon ] = " faGlobeAmericas " class = "context-menu-icon" > < / fa-icon > Public
2019-07-25 07:10:48 +02:00
< / ng-template >
2019-07-27 20:03:47 +02:00
< ng-template contextMenuItem ( execute ) = " changePrivacy ( ' Unlisted ' ) " >
2019-07-26 06:01:39 +02:00
< fa-icon [ icon ] = " faLockOpen " class = "context-menu-icon" > < / fa-icon > Unlisted
2019-07-26 01:44:03 +02:00
< / ng-template >
2019-07-27 20:03:47 +02:00
< ng-template contextMenuItem ( execute ) = " changePrivacy ( ' Follows-only ' ) " >
2019-07-26 06:01:39 +02:00
< fa-icon [ icon ] = " faLock " class = "context-menu-icon" > < / fa-icon > Followers-only
2019-07-25 07:10:48 +02:00
< / ng-template >
2019-07-27 20:03:47 +02:00
< ng-template contextMenuItem ( execute ) = " changePrivacy ( ' DM ' ) " >
2019-07-26 06:01:39 +02:00
< fa-icon [ icon ] = " faEnvelope " class = "context-menu-icon" > < / fa-icon > Direct
2019-07-26 01:44:03 +02:00
< / ng-template >
2019-07-25 07:10:48 +02:00
< / context-menu >
2023-08-04 08:39:59 +02:00
< context-menu # langContextMenu >
< ng-template contextMenuItem ( execute ) = " setLanguage ( l ) " * ngFor = "let l of configuredLanguages" >
{{ l.name }}
< / ng-template >
< / context-menu >
2023-08-04 09:20:48 +02:00
2019-03-08 05:50:33 +01:00
< app-media > < / app-media >
2019-10-09 17:37:11 +02:00
< / form >