aboutsummaryrefslogtreecommitdiff
path: root/src/components/media_upload
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/media_upload')
-rw-r--r--src/components/media_upload/media_upload.js18
-rw-r--r--src/components/media_upload/media_upload.vue21
2 files changed, 29 insertions, 10 deletions
diff --git a/src/components/media_upload/media_upload.js b/src/components/media_upload/media_upload.js
index cfd42d4c..8c9e5f71 100644
--- a/src/components/media_upload/media_upload.js
+++ b/src/components/media_upload/media_upload.js
@@ -23,6 +23,11 @@ const mediaUpload = {
}
},
methods: {
+ onClick () {
+ if (this.uploadReady) {
+ this.$refs.input.click()
+ }
+ },
uploadFile (file) {
const self = this
const store = this.$store
@@ -69,10 +74,15 @@ const mediaUpload = {
this.multiUpload(target.files)
}
},
- props: [
- 'dropFiles',
- 'disabled'
- ],
+ props: {
+ dropFiles: Object,
+ disabled: Boolean,
+ normalButton: Boolean,
+ acceptTypes: {
+ type: String,
+ default: '*/*'
+ }
+ },
watch: {
dropFiles: function (fileInfos) {
if (!this.uploading) {
diff --git a/src/components/media_upload/media_upload.vue b/src/components/media_upload/media_upload.vue
index 2799495b..2ea5567a 100644
--- a/src/components/media_upload/media_upload.vue
+++ b/src/components/media_upload/media_upload.vue
@@ -1,8 +1,9 @@
<template>
- <label
+ <button
class="media-upload"
- :class="{ disabled: disabled }"
+ :class="[normalButton ? 'button-default btn' : 'button-unstyled', { disabled }]"
:title="$t('tool_tip.media_upload')"
+ @click="onClick"
>
<FAIcon
v-if="uploading"
@@ -15,15 +16,21 @@
class="new-icon"
icon="upload"
/>
+ <template v-if="normalButton">
+ {{ ' ' }}
+ {{ uploading ? $t('general.loading') : $t('tool_tip.media_upload') }}
+ </template>
<input
v-if="uploadReady"
+ ref="input"
class="hidden-input-file"
:disabled="disabled"
type="file"
multiple="true"
+ :accept="acceptTypes"
@change="change"
>
- </label>
+ </button>
</template>
<script src="./media_upload.js"></script>
@@ -32,10 +39,12 @@
@import "../../variables";
.media-upload {
- cursor: pointer; // We use <label> for interactivity... i wonder if it's fine
-
.hidden-input-file {
display: none;
}
}
- </style>
+
+label.media-upload {
+ cursor: pointer; // We use <label> for interactivity... i wonder if it's fine
+}
+</style>