diff options
| author | Roger Braun <roger@rogerbraun.net> | 2016-11-06 19:28:37 +0100 |
|---|---|---|
| committer | Roger Braun <roger@rogerbraun.net> | 2016-11-06 19:28:37 +0100 |
| commit | a73916dd7f07954ee0305df822baa8068ae1df14 (patch) | |
| tree | 651ddf9a91d40ded460a0ab03bebe0b5048be5aa /src/components/media_upload | |
| parent | dcb7fd14407f144f918eb65f191ecbab6844e1f7 (diff) | |
Add MediaUpload component.
Diffstat (limited to 'src/components/media_upload')
| -rw-r--r-- | src/components/media_upload/media_upload.js | 22 | ||||
| -rw-r--r-- | src/components/media_upload/media_upload.vue | 17 |
2 files changed, 39 insertions, 0 deletions
diff --git a/src/components/media_upload/media_upload.js b/src/components/media_upload/media_upload.js new file mode 100644 index 00000000..c24c71e9 --- /dev/null +++ b/src/components/media_upload/media_upload.js @@ -0,0 +1,22 @@ +/* eslint-env browser */ +import statusPosterService from '../../services/status_poster/status_poster.service.js' + +const mediaUpload = { + mounted () { + const store = this.$store + const input = this.$el.querySelector('input') + const self = this + + input.addEventListener('change', ({target}) => { + const file = target.files[0]; + const formData = new FormData(); + formData.append('media', file); + statusPosterService.uploadMedia({ store, formData }) + .then((fileData) => { + self.$emit('uploaded', fileData) + }) + }) + } +} + +export default mediaUpload diff --git a/src/components/media_upload/media_upload.vue b/src/components/media_upload/media_upload.vue new file mode 100644 index 00000000..a62d8316 --- /dev/null +++ b/src/components/media_upload/media_upload.vue @@ -0,0 +1,17 @@ +<template> + <div class="media-upload"> + <label class="btn btn-default"> + <i class="fa icon-upload"></i> + <input type=file style="position: fixed; top: -100em"></input> + </label> + </div> +</template> + +<script src="./media_upload.js" ></script> + +<style> + .media-upload { + font-size: 26px; + flex: 1; + } +</style> |
