Chamilo is a learning management system focused on ease of use and accessibility
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
chamilo-lms/assets/vue/views/documents/CreateFile.vue

68 lines
1.7 KiB

<template>
<Toolbar
:handle-submit="onSendFormData"
:handle-reset="resetForm"
/>
<DocumentsForm
ref="createForm"
:values="item"
:errors="violations"
/>
<Loading :visible="isLoading" />
</template>
<script>
import { mapActions } from 'vuex';
import { createHelpers } from 'vuex-map-fields';
import DocumentsForm from '../../components/documents/FormNewDocument.vue';
import Loading from '../../components/Loading.vue';
import Toolbar from '../../components/Toolbar.vue';
import CreateMixin from '../../mixins/CreateMixin';
import {RESOURCE_LINK_PUBLISHED} from "../../components/resource_links/visibility";
const servicePrefix = 'Documents';
const { mapFields } = createHelpers({
getterType: 'documents/getField',
mutationType: 'documents/updateField'
});
export default {
name: 'DocumentsCreateFile',
servicePrefix,
components: {
Loading,
Toolbar,
DocumentsForm
},
mixins: [CreateMixin],
data() {
return {
5 years ago
item: {
newDocument: true, // Used in FormNewDocument.vue to show the editor
5 years ago
filetype: 'file',
parentResourceNodeId: null,
resourceLinkList: null,
contentFile: null
5 years ago
},
};
},
computed: {
...mapFields(['error', 'isLoading', 'created', 'violations'])
},
5 years ago
created() {
this.item.parentResourceNodeId = this.$route.params.node;
this.item.resourceLinkList = JSON.stringify([{
gid: this.$route.query.gid,
sid: this.$route.query.sid,
cid: this.$route.query.cid,
visibility: RESOURCE_LINK_PUBLISHED,
5 years ago
}]);
},
methods: {
...mapActions('documents', ['createWithFormData', 'reset'])
}
};
</script>