Skip to content

Commit

Permalink
pkp/pkp-lib#9992 users stats export modal migrated to side modal
Browse files Browse the repository at this point in the history
  • Loading branch information
jardakotesovec committed Jun 20, 2024
1 parent 9b48b5b commit fcec29a
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 5 deletions.
20 changes: 15 additions & 5 deletions src/components/Container/StatsUsersPage.vue
Original file line number Diff line number Diff line change
@@ -1,25 +1,35 @@
<script>
import StatsPage from './StatsPage.vue';
import Modal from '@/components/Modal/Modal.vue';
import {useModal} from '@/composables/useModal';
import UserExportModal from '@/pages/statsUsers/UserExportModal.vue';
export default {
name: 'StatsUsersPage',
components: {
Modal,
},
extends: StatsPage,
data() {
return {isModalOpenedExport: false};
},
methods: {
/** Open Export Modal */
openExportModal() {
const {openSideModal} = useModal();
openSideModal(UserExportModal, {
title: this.t('manager.export.usersToCsv.label'),
usersReportForm: this.components.usersReportForm,
onSet: this.set,
onLoadExport: this.loadExport,
});
},
/**
* Load the user export
*
* @param {String} url
*/
loadExport(url) {
window.location = url;
this.$modal.hide('export');
const {closeSideModal} = useModal();
closeSideModal(UserExportModal);
},
},
};
Expand Down
26 changes: 26 additions & 0 deletions src/pages/statsUsers/UserExportModal.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<template>
<SideModalBody>
<template #title>
{{ title }}
</template>
<SideModalLayoutBasic>
<PkpForm
v-bind="usersReportForm"
@set="(...args) => emit('set', ...args)"
@success="(...args) => emit('loadExport', ...args)"
/>
</SideModalLayoutBasic>
</SideModalBody>
</template>

<script setup>
import SideModalBody from '@/components/Modal/SideModalBody.vue';
import SideModalLayoutBasic from '@/components/Modal/SideModalLayoutBasic.vue';
import PkpForm from '@/components/Form/Form.vue';
defineProps({
title: {type: String, required: true},
usersReportForm: {type: Object, required: true},
});
const emit = defineEmits(['set', 'loadExport']);
</script>

0 comments on commit fcec29a

Please sign in to comment.