diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/components/post_status_form/post_status_form.js | 11 | ||||
| -rw-r--r-- | src/components/post_status_form/post_status_form.vue | 10 |
2 files changed, 17 insertions, 4 deletions
diff --git a/src/components/post_status_form/post_status_form.js b/src/components/post_status_form/post_status_form.js index f764a01b..58c11fb9 100644 --- a/src/components/post_status_form/post_status_form.js +++ b/src/components/post_status_form/post_status_form.js @@ -22,12 +22,14 @@ const PostStatusForm = { props: [ 'replyTo', 'repliedUser', - 'attentions' + 'attentions', + 'submitDisabled' ], components: { MediaUpload }, data () { + this.submitDisabled = false let statusText = '' if (this.replyTo) { @@ -58,6 +60,13 @@ const PostStatusForm = { }, addMediaFile (fileInfo) { this.newStatus.files.push(fileInfo) + this.enableSubmit() + }, + disableSubmit () { + this.submitDisabled = true + }, + enableSubmit () { + this.submitDisabled = false } } } diff --git a/src/components/post_status_form/post_status_form.vue b/src/components/post_status_form/post_status_form.vue index 14e353b7..3709a6f6 100644 --- a/src/components/post_status_form/post_status_form.vue +++ b/src/components/post_status_form/post_status_form.vue @@ -1,6 +1,6 @@ <template> <div class="post-status-form"> - <form v-on:submit.prevent="postStatus(newStatus)"> + <form @submit.prevent="postStatus(newStatus)"> <div class="form-group" > <textarea v-model="newStatus.status" placeholder="Just landed in L.A." rows="3" class="form-control"></textarea> </div> @@ -10,8 +10,8 @@ </div> </div> <div class='form-bottom'> - <media-upload v-on:uploaded="addMediaFile"></media-upload> - <button type="submit" class="btn btn-default" >Submit</button> + <media-upload @uploading="disableSubmit" @uploaded="addMediaFile" @upload-failed="enableSubmit"></media-upload> + <button :disabled="submitDisabled" type="submit" class="btn btn-default">Submit</button> </div> </form> </div> @@ -49,6 +49,10 @@ .btn { cursor: pointer; } + + .btn[disabled] { + cursor: not-allowed; + } } </style> |
