mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
change to named tab param
This commit is contained in:
parent
86742d0158
commit
df468b9b1d
@ -23,22 +23,24 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export const COMMUNITY_TABS = ['contribute', 'contributions', 'community']
|
||||||
name: 'NavCommunity',
|
|
||||||
methods: {
|
export default {
|
||||||
handleClick(tab) {
|
name: 'NavCommunity',
|
||||||
console.log('handleClick', tab)
|
methods: {
|
||||||
if (this.$route.params && this.$route.params.tab && Number(this.$route.params.tab) !== tab) {
|
handleClick(tab) {
|
||||||
this.$router.push({ params: { tab } })
|
if (this.$route.params.tab !== COMMUNITY_TABS[tab]) {
|
||||||
}
|
this.$router.push({ params: { tab: COMMUNITY_TABS[tab] } })
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
|
},
|
||||||
|
/*
|
||||||
watch: {
|
watch: {
|
||||||
'$route.params.tab'(tab) {
|
'$route.params.tab'() {
|
||||||
this.handleClick(tab)
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
*/
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.nav-row {
|
.nav-row {
|
||||||
|
|||||||
@ -1,82 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="contribution-info d-none d-lg-block">
|
<div class="contribution-info d-none d-lg-block">
|
||||||
<div v-if="hash === '#my'">
|
<slot :name="$route.params.tab" />
|
||||||
<h4 class="alert-heading">{{ $t('community.myContributions') }}</h4>
|
|
||||||
<p>
|
|
||||||
{{ $t('contribution.alert.myContributionNoteList') }}
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<b-icon icon="bell-fill" variant="primary"></b-icon>
|
|
||||||
{{ $t('contribution.alert.pending') }}
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<b-icon icon="question-square" variant="warning"></b-icon>
|
|
||||||
{{ $t('contribution.alert.in_progress') }}
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<b-icon icon="check" variant="success"></b-icon>
|
|
||||||
{{ $t('contribution.alert.confirm') }}
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<b-icon icon="x-circle" variant="warning"></b-icon>
|
|
||||||
{{ $t('contribution.alert.denied') }}
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<b-icon icon="trash" variant="danger"></b-icon>
|
|
||||||
{{ $t('contribution.alert.deleted') }}
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div v-if="hash === '#all'" show fade variant="secondary" class="text-dark">
|
|
||||||
<h4 class="alert-heading">{{ $t('navigation.community') }}</h4>
|
|
||||||
<p>
|
|
||||||
{{ $t('contribution.alert.communityNoteList') }}
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<b-icon icon="bell-fill" variant="primary"></b-icon>
|
|
||||||
{{ $t('contribution.alert.pending') }}
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<b-icon icon="question-square" variant="warning"></b-icon>
|
|
||||||
{{ $t('contribution.alert.in_progress') }}
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<b-icon icon="check" variant="success"></b-icon>
|
|
||||||
{{ $t('contribution.alert.confirm') }}
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<b-icon icon="x-circle" variant="warning"></b-icon>
|
|
||||||
{{ $t('contribution.alert.denied') }}
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div v-if="hash === '#edit'" show fade variant="secondary" class="text-dark">
|
|
||||||
<div>
|
|
||||||
<h3>{{ $t('contribution.formText.yourContribution') }}</h3>
|
|
||||||
{{ $t('contribution.formText.bringYourTalentsTo') }}
|
|
||||||
|
|
||||||
<div class="my-3">
|
|
||||||
<b>{{ $t('contribution.formText.describeYourCommunity') }}</b>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: 'ContributionInfo',
|
name: 'ContributionInfo',
|
||||||
computed: {
|
}
|
||||||
hash() {
|
|
||||||
return this.$route.hash
|
|
||||||
},
|
|
||||||
currentTab() {
|
|
||||||
console.log('ROUTE', this.$route)
|
|
||||||
if (this.$route.from && this.$route.from.params && this.$route.from.params.tab)
|
|
||||||
return this.$route.from.params.tab
|
|
||||||
return 0
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@ -121,11 +121,7 @@
|
|||||||
</b-col>
|
</b-col>
|
||||||
<!-- Right Side Mobil -->
|
<!-- Right Side Mobil -->
|
||||||
<b-col class="d-block d-lg-none">
|
<b-col class="d-block d-lg-none">
|
||||||
<right-side
|
<right-side>
|
||||||
:transactions="transactions"
|
|
||||||
:transactionCount="transactionCount"
|
|
||||||
:transactionLinkCount="transactionLinkCount"
|
|
||||||
>
|
|
||||||
<template #transactions>
|
<template #transactions>
|
||||||
<last-transactions
|
<last-transactions
|
||||||
:transactions="transactions"
|
:transactions="transactions"
|
||||||
@ -135,7 +131,7 @@
|
|||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
<template #community>
|
<template #community>
|
||||||
<contribution-info />
|
<community-template />
|
||||||
</template>
|
</template>
|
||||||
<template #empty />
|
<template #empty />
|
||||||
</right-side>
|
</right-side>
|
||||||
@ -162,11 +158,7 @@
|
|||||||
</b-col>
|
</b-col>
|
||||||
<!-- RightSide Desktop -->
|
<!-- RightSide Desktop -->
|
||||||
<b-col cols="3" class="d-none d-lg-block">
|
<b-col cols="3" class="d-none d-lg-block">
|
||||||
<right-side
|
<right-side>
|
||||||
:transactions="transactions"
|
|
||||||
:transactionCount="transactionCount"
|
|
||||||
:transactionLinkCount="transactionLinkCount"
|
|
||||||
>
|
|
||||||
<template #transactions>
|
<template #transactions>
|
||||||
<last-transactions
|
<last-transactions
|
||||||
:transactions="transactions"
|
:transactions="transactions"
|
||||||
@ -175,10 +167,10 @@
|
|||||||
@set-tunneled-email="setTunneledEmail"
|
@set-tunneled-email="setTunneledEmail"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
<template #community>
|
|
||||||
<contribution-info />
|
|
||||||
</template>
|
|
||||||
<template #empty />
|
<template #empty />
|
||||||
|
<template #community>
|
||||||
|
<community-template />
|
||||||
|
</template>
|
||||||
</right-side>
|
</right-side>
|
||||||
</b-col>
|
</b-col>
|
||||||
</b-row>
|
</b-row>
|
||||||
@ -194,6 +186,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import ContentHeader from '@/layouts/templates/ContentHeader.vue'
|
import ContentHeader from '@/layouts/templates/ContentHeader.vue'
|
||||||
|
import CommunityTemplate from '@/layouts/templates/CommunityTemplate.vue'
|
||||||
import Breadcrumb from '@/components/Breadcrumb/breadcrumb.vue'
|
import Breadcrumb from '@/components/Breadcrumb/breadcrumb.vue'
|
||||||
import RightSide from '@/layouts/templates/RightSide.vue'
|
import RightSide from '@/layouts/templates/RightSide.vue'
|
||||||
import SkeletonOverview from '@/components/skeleton/Overview.vue'
|
import SkeletonOverview from '@/components/skeleton/Overview.vue'
|
||||||
@ -211,7 +204,6 @@ import GdtAmount from '@/components/Template/ContentHeader/GdtAmount.vue'
|
|||||||
import CommunityMember from '@/components/Template/ContentHeader/CommunityMember.vue'
|
import CommunityMember from '@/components/Template/ContentHeader/CommunityMember.vue'
|
||||||
import NavCommunity from '@/components/Template/ContentHeader/NavCommunity.vue'
|
import NavCommunity from '@/components/Template/ContentHeader/NavCommunity.vue'
|
||||||
import LastTransactions from '@/components/Template/RightSide/LastTransactions.vue'
|
import LastTransactions from '@/components/Template/RightSide/LastTransactions.vue'
|
||||||
import ContributionInfo from '@/components/Template/RightSide/ContributionInfo.vue'
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'DashboardLayout',
|
name: 'DashboardLayout',
|
||||||
@ -231,7 +223,7 @@ export default {
|
|||||||
CommunityMember,
|
CommunityMember,
|
||||||
NavCommunity,
|
NavCommunity,
|
||||||
LastTransactions,
|
LastTransactions,
|
||||||
ContributionInfo,
|
CommunityTemplate,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
|||||||
82
frontend/src/layouts/templates/CommunityTemplate.vue
Normal file
82
frontend/src/layouts/templates/CommunityTemplate.vue
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
<template>
|
||||||
|
<contribution-info>
|
||||||
|
<template #contribute>
|
||||||
|
<div show fade variant="secondary" class="text-dark">
|
||||||
|
<div>
|
||||||
|
<h3>{{ $t('contribution.formText.yourContribution') }}</h3>
|
||||||
|
{{ $t('contribution.formText.bringYourTalentsTo') }}
|
||||||
|
|
||||||
|
<div class="my-3">
|
||||||
|
<b>{{ $t('contribution.formText.describeYourCommunity') }}</b>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #contributions>
|
||||||
|
<div show fade variant="secondary" class="text-dark">
|
||||||
|
<h4 class="alert-heading">{{ $t('community.myContributions') }}</h4>
|
||||||
|
<p>
|
||||||
|
{{ $t('contribution.alert.myContributionNoteList') }}
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<b-icon icon="bell-fill" variant="primary"></b-icon>
|
||||||
|
{{ $t('contribution.alert.pending') }}
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<b-icon icon="question-square" variant="warning"></b-icon>
|
||||||
|
{{ $t('contribution.alert.in_progress') }}
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<b-icon icon="check" variant="success"></b-icon>
|
||||||
|
{{ $t('contribution.alert.confirm') }}
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<b-icon icon="x-circle" variant="warning"></b-icon>
|
||||||
|
{{ $t('contribution.alert.denied') }}
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<b-icon icon="trash" variant="danger"></b-icon>
|
||||||
|
{{ $t('contribution.alert.deleted') }}
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #community>
|
||||||
|
<div show fade variant="secondary" class="text-dark">
|
||||||
|
<h4 class="alert-heading">{{ $t('navigation.community') }}</h4>
|
||||||
|
<p>
|
||||||
|
{{ $t('contribution.alert.communityNoteList') }}
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<b-icon icon="bell-fill" variant="primary"></b-icon>
|
||||||
|
{{ $t('contribution.alert.pending') }}
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<b-icon icon="question-square" variant="warning"></b-icon>
|
||||||
|
{{ $t('contribution.alert.in_progress') }}
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<b-icon icon="check" variant="success"></b-icon>
|
||||||
|
{{ $t('contribution.alert.confirm') }}
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<b-icon icon="x-circle" variant="warning"></b-icon>
|
||||||
|
{{ $t('contribution.alert.denied') }}
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</contribution-info>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import ContributionInfo from '@/components/Template/RightSide/ContributionInfo.vue'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'CommunityTemplate',
|
||||||
|
components: {
|
||||||
|
ContributionInfo,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@ -5,13 +5,12 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: 'ContentHeader',
|
name: 'ContentHeader',
|
||||||
computed: {
|
computed: {
|
||||||
path() {
|
path() {
|
||||||
console.log('ContentHeader', this.$route.path.replace(/^\/(.+?)(\/.+)?$/, '$1'))
|
return this.$route.path.replace(/^\/(.+?)(\/.+)?$/, '$1')
|
||||||
return this.$route.path.replace(/^\/(.+?)(\/.+)?$/, '$1')
|
},
|
||||||
},
|
},
|
||||||
},
|
}
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@ -6,21 +6,19 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: 'RightSide',
|
name: 'RightSide',
|
||||||
computed: {
|
computed: {
|
||||||
name() {
|
name() {
|
||||||
console.log('RightSide', this.$route.path.replace(/^\/(.+?)(\/.+)?$/, '$1'))
|
switch (this.$route.path.replace(/^\/(.+?)(\/.+)?$/, '$1')) {
|
||||||
switch (this.$route.path.replace(/^\/(.+?)(\/.+)?$/, '$1')) {
|
case 'settings':
|
||||||
case 'settings':
|
return 'empty'
|
||||||
return 'empty'
|
case 'community':
|
||||||
case 'community':
|
return 'community'
|
||||||
console.log('-----------')
|
default:
|
||||||
return 'community'
|
return 'transactions'
|
||||||
default:
|
}
|
||||||
return 'transactions'
|
},
|
||||||
}
|
},
|
||||||
},
|
}
|
||||||
},
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@ -58,241 +58,244 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import OpenCreationsAmount from '@/components/Contributions/OpenCreationsAmount.vue'
|
import OpenCreationsAmount from '@/components/Contributions/OpenCreationsAmount.vue'
|
||||||
import ContributionForm from '@/components/Contributions/ContributionForm.vue'
|
import ContributionForm from '@/components/Contributions/ContributionForm.vue'
|
||||||
import ContributionList from '@/components/Contributions/ContributionList.vue'
|
import ContributionList from '@/components/Contributions/ContributionList.vue'
|
||||||
import { createContribution, updateContribution, deleteContribution } from '@/graphql/mutations'
|
import { createContribution, updateContribution, deleteContribution } from '@/graphql/mutations'
|
||||||
import { listContributions, listAllContributions, openCreations } from '@/graphql/queries'
|
import { listContributions, listAllContributions, openCreations } from '@/graphql/queries'
|
||||||
|
import { COMMUNITY_TABS } from '@/components/Template/ContentHeader/NavCommunity'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'Community',
|
name: 'Community',
|
||||||
components: {
|
components: {
|
||||||
ContributionForm,
|
ContributionForm,
|
||||||
ContributionList,
|
ContributionList,
|
||||||
OpenCreationsAmount,
|
OpenCreationsAmount,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
tabIndex: 1,
|
tabIndex: 0,
|
||||||
items: [],
|
items: [],
|
||||||
itemsAll: [],
|
itemsAll: [],
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
pageSize: 25,
|
pageSize: 25,
|
||||||
currentPageAll: 1,
|
currentPageAll: 1,
|
||||||
pageSizeAll: 25,
|
pageSizeAll: 25,
|
||||||
contributionCount: 0,
|
contributionCount: 0,
|
||||||
contributionCountAll: 0,
|
contributionCountAll: 0,
|
||||||
form: {
|
form: {
|
||||||
id: null,
|
id: null,
|
||||||
date: '',
|
date: '',
|
||||||
memo: '',
|
memo: '',
|
||||||
hours: 0,
|
hours: 0,
|
||||||
amount: '',
|
amount: '',
|
||||||
},
|
},
|
||||||
updateAmount: '',
|
updateAmount: '',
|
||||||
maximalDate: new Date(),
|
maximalDate: new Date(),
|
||||||
openCreations: [],
|
openCreations: [],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.updateTabIndex(Number(this.$route.params.tab))
|
this.updateTabIndex()
|
||||||
},
|
},
|
||||||
apollo: {
|
apollo: {
|
||||||
OpenCreations: {
|
OpenCreations: {
|
||||||
query() {
|
query() {
|
||||||
return openCreations
|
return openCreations
|
||||||
},
|
},
|
||||||
fetchPolicy: 'network-only',
|
fetchPolicy: 'network-only',
|
||||||
variables() {
|
variables() {
|
||||||
return {}
|
return {}
|
||||||
},
|
},
|
||||||
update({ openCreations }) {
|
update({ openCreations }) {
|
||||||
this.openCreations = openCreations
|
this.openCreations = openCreations
|
||||||
},
|
},
|
||||||
error({ message }) {
|
error({ message }) {
|
||||||
this.toastError(message)
|
this.toastError(message)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
ListAllContributions: {
|
ListAllContributions: {
|
||||||
query() {
|
query() {
|
||||||
return listAllContributions
|
return listAllContributions
|
||||||
},
|
},
|
||||||
fetchPolicy: 'network-only',
|
fetchPolicy: 'network-only',
|
||||||
variables() {
|
variables() {
|
||||||
return {
|
return {
|
||||||
currentPage: this.currentPageAll,
|
currentPage: this.currentPageAll,
|
||||||
pageSize: this.pageSizeAll,
|
pageSize: this.pageSizeAll,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
update({ listAllContributions }) {
|
update({ listAllContributions }) {
|
||||||
this.contributionCountAll = listAllContributions.contributionCount
|
this.contributionCountAll = listAllContributions.contributionCount
|
||||||
this.itemsAll = listAllContributions.contributionList
|
this.itemsAll = listAllContributions.contributionList
|
||||||
},
|
},
|
||||||
error({ message }) {
|
error({ message }) {
|
||||||
this.toastError(message)
|
this.toastError(message)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
ListContributions: {
|
ListContributions: {
|
||||||
query() {
|
query() {
|
||||||
return listContributions
|
return listContributions
|
||||||
},
|
},
|
||||||
fetchPolicy: 'network-only',
|
fetchPolicy: 'network-only',
|
||||||
variables() {
|
variables() {
|
||||||
return {
|
return {
|
||||||
currentPage: this.currentPage,
|
currentPage: this.currentPage,
|
||||||
pageSize: this.pageSize,
|
pageSize: this.pageSize,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
update({ listContributions }) {
|
update({ listContributions }) {
|
||||||
this.contributionCount = listContributions.contributionCount
|
this.contributionCount = listContributions.contributionCount
|
||||||
this.items = listContributions.contributionList
|
this.items = listContributions.contributionList
|
||||||
if (this.items.find((item) => item.state === 'IN_PROGRESS')) {
|
if (this.items.find((item) => item.state === 'IN_PROGRESS')) {
|
||||||
this.tabIndex = 1
|
this.$router.push({ params: { tab: 'contributions' } })
|
||||||
this.toastInfo(this.$t('contribution.alert.answerQuestionToast'))
|
this.toastInfo(this.$t('contribution.alert.answerQuestionToast'))
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
error({ message }) {
|
error({ message }) {
|
||||||
this.toastError(message)
|
this.toastError(message)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
'$route.params.tab'(tab) {
|
'$route.params.tab'(tab) {
|
||||||
this.updateTabIndex(tab)
|
this.updateTabIndex()
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
minimalDate() {
|
minimalDate() {
|
||||||
const date = new Date(this.maximalDate)
|
const date = new Date(this.maximalDate)
|
||||||
return new Date(date.setMonth(date.getMonth() - 1, 1))
|
return new Date(date.setMonth(date.getMonth() - 1, 1))
|
||||||
},
|
},
|
||||||
isThisMonth() {
|
isThisMonth() {
|
||||||
const formDate = new Date(this.form.date)
|
const formDate = new Date(this.form.date)
|
||||||
return (
|
return (
|
||||||
formDate.getFullYear() === this.maximalDate.getFullYear() &&
|
formDate.getFullYear() === this.maximalDate.getFullYear() &&
|
||||||
formDate.getMonth() === this.maximalDate.getMonth()
|
formDate.getMonth() === this.maximalDate.getMonth()
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
amountToAdd() {
|
amountToAdd() {
|
||||||
// when existing contribution is edited, the amount is added back on top of the amount
|
// when existing contribution is edited, the amount is added back on top of the amount
|
||||||
if (this.form.id) return parseInt(this.updateAmount)
|
if (this.form.id) return parseInt(this.updateAmount)
|
||||||
return 0
|
return 0
|
||||||
},
|
},
|
||||||
maxForMonths() {
|
maxForMonths() {
|
||||||
const formDate = new Date(this.form.date)
|
const formDate = new Date(this.form.date)
|
||||||
if (this.openCreations && this.openCreations.length)
|
if (this.openCreations && this.openCreations.length)
|
||||||
return this.openCreations.slice(1).map((creation) => {
|
return this.openCreations.slice(1).map((creation) => {
|
||||||
if (creation.year === formDate.getFullYear() && creation.month === formDate.getMonth())
|
if (creation.year === formDate.getFullYear() && creation.month === formDate.getMonth())
|
||||||
return parseInt(creation.amount) + this.amountToAdd
|
return parseInt(creation.amount) + this.amountToAdd
|
||||||
return parseInt(creation.amount)
|
return parseInt(creation.amount)
|
||||||
})
|
})
|
||||||
return [0, 0]
|
return [0, 0]
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
updateTabIndex(tab) {
|
updateTabIndex() {
|
||||||
console.log('updateTabIndex', tab)
|
const index = COMMUNITY_TABS.indexOf(this.$route.params.tab)
|
||||||
if (Number(tab) !== this.tabIndex) {
|
if (index > -1) {
|
||||||
this.tabIndex = Number(tab)
|
this.tabIndex = index
|
||||||
this.closeAllOpenCollapse()
|
} else {
|
||||||
}
|
this.tabIndex = 0
|
||||||
},
|
}
|
||||||
closeAllOpenCollapse() {
|
this.closeAllOpenCollapse()
|
||||||
this.$el.querySelectorAll('.collapse.show').forEach((value) => {
|
},
|
||||||
this.$root.$emit('bv::toggle::collapse', value.id)
|
closeAllOpenCollapse() {
|
||||||
})
|
this.$el.querySelectorAll('.collapse.show').forEach((value) => {
|
||||||
},
|
this.$root.$emit('bv::toggle::collapse', value.id)
|
||||||
refetchData() {
|
})
|
||||||
this.$apollo.queries.ListAllContributions.refetch()
|
},
|
||||||
this.$apollo.queries.ListContributions.refetch()
|
refetchData() {
|
||||||
this.$apollo.queries.OpenCreations.refetch()
|
this.$apollo.queries.ListAllContributions.refetch()
|
||||||
},
|
this.$apollo.queries.ListContributions.refetch()
|
||||||
saveContribution(data) {
|
this.$apollo.queries.OpenCreations.refetch()
|
||||||
this.$apollo
|
},
|
||||||
.mutate({
|
saveContribution(data) {
|
||||||
fetchPolicy: 'no-cache',
|
this.$apollo
|
||||||
mutation: createContribution,
|
.mutate({
|
||||||
variables: {
|
fetchPolicy: 'no-cache',
|
||||||
creationDate: data.date,
|
mutation: createContribution,
|
||||||
memo: data.memo,
|
variables: {
|
||||||
amount: data.amount,
|
creationDate: data.date,
|
||||||
},
|
memo: data.memo,
|
||||||
})
|
amount: data.amount,
|
||||||
.then((result) => {
|
},
|
||||||
this.toastSuccess(this.$t('contribution.submitted'))
|
})
|
||||||
this.refetchData()
|
.then((result) => {
|
||||||
})
|
this.toastSuccess(this.$t('contribution.submitted'))
|
||||||
.catch((err) => {
|
this.refetchData()
|
||||||
this.toastError(err.message)
|
})
|
||||||
})
|
.catch((err) => {
|
||||||
},
|
this.toastError(err.message)
|
||||||
updateContribution(data) {
|
})
|
||||||
this.$apollo
|
},
|
||||||
.mutate({
|
updateContribution(data) {
|
||||||
fetchPolicy: 'no-cache',
|
this.$apollo
|
||||||
mutation: updateContribution,
|
.mutate({
|
||||||
variables: {
|
fetchPolicy: 'no-cache',
|
||||||
contributionId: data.id,
|
mutation: updateContribution,
|
||||||
creationDate: data.date,
|
variables: {
|
||||||
memo: data.memo,
|
contributionId: data.id,
|
||||||
amount: data.amount,
|
creationDate: data.date,
|
||||||
},
|
memo: data.memo,
|
||||||
})
|
amount: data.amount,
|
||||||
.then((result) => {
|
},
|
||||||
this.toastSuccess(this.$t('contribution.updated'))
|
})
|
||||||
this.refetchData()
|
.then((result) => {
|
||||||
})
|
this.toastSuccess(this.$t('contribution.updated'))
|
||||||
.catch((err) => {
|
this.refetchData()
|
||||||
this.toastError(err.message)
|
})
|
||||||
})
|
.catch((err) => {
|
||||||
},
|
this.toastError(err.message)
|
||||||
deleteContribution(data) {
|
})
|
||||||
this.$apollo
|
},
|
||||||
.mutate({
|
deleteContribution(data) {
|
||||||
fetchPolicy: 'no-cache',
|
this.$apollo
|
||||||
mutation: deleteContribution,
|
.mutate({
|
||||||
variables: {
|
fetchPolicy: 'no-cache',
|
||||||
id: data.id,
|
mutation: deleteContribution,
|
||||||
},
|
variables: {
|
||||||
})
|
id: data.id,
|
||||||
.then((result) => {
|
},
|
||||||
this.toastSuccess(this.$t('contribution.deleted'))
|
})
|
||||||
this.refetchData()
|
.then((result) => {
|
||||||
})
|
this.toastSuccess(this.$t('contribution.deleted'))
|
||||||
.catch((err) => {
|
this.refetchData()
|
||||||
this.toastError(err.message)
|
})
|
||||||
})
|
.catch((err) => {
|
||||||
},
|
this.toastError(err.message)
|
||||||
updateListAllContributions(pagination) {
|
})
|
||||||
this.currentPageAll = pagination.currentPage
|
},
|
||||||
this.pageSizeAll = pagination.pageSize
|
updateListAllContributions(pagination) {
|
||||||
this.$apollo.queries.ListAllContributions.refetch()
|
this.currentPageAll = pagination.currentPage
|
||||||
},
|
this.pageSizeAll = pagination.pageSize
|
||||||
updateListContributions(pagination) {
|
this.$apollo.queries.ListAllContributions.refetch()
|
||||||
this.currentPage = pagination.currentPage
|
},
|
||||||
this.pageSize = pagination.pageSize
|
updateListContributions(pagination) {
|
||||||
this.$apollo.queries.ListContributions.refetch()
|
this.currentPage = pagination.currentPage
|
||||||
},
|
this.pageSize = pagination.pageSize
|
||||||
updateContributionForm(item) {
|
this.$apollo.queries.ListContributions.refetch()
|
||||||
this.form.id = item.id
|
},
|
||||||
this.form.date = item.contributionDate
|
updateContributionForm(item) {
|
||||||
this.form.memo = item.memo
|
this.form.id = item.id
|
||||||
this.form.amount = item.amount
|
this.form.date = item.contributionDate
|
||||||
this.form.hours = item.amount / 20
|
this.form.memo = item.memo
|
||||||
this.updateAmount = item.amount
|
this.form.amount = item.amount
|
||||||
this.tabIndex = 0
|
this.form.hours = item.amount / 20
|
||||||
},
|
this.updateAmount = item.amount
|
||||||
updateTransactions(pagination) {
|
this.$router.push({ params: { tab: 'contribute' } })
|
||||||
this.$emit('update-transactions', pagination)
|
},
|
||||||
},
|
updateTransactions(pagination) {
|
||||||
updateState(id) {
|
this.$emit('update-transactions', pagination)
|
||||||
this.items.find((item) => item.id === id).state = 'PENDING'
|
},
|
||||||
},
|
updateState(id) {
|
||||||
},
|
this.items.find((item) => item.id === id).state = 'PENDING'
|
||||||
created() {
|
},
|
||||||
this.updateTransactions(0)
|
},
|
||||||
},
|
created() {
|
||||||
}
|
this.updateTransactions(0)
|
||||||
|
},
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.tab-content {
|
.tab-content {
|
||||||
|
|||||||
@ -59,7 +59,7 @@ const routes = [
|
|||||||
pageTitle: 'community',
|
pageTitle: 'community',
|
||||||
},
|
},
|
||||||
redirect: (to) => {
|
redirect: (to) => {
|
||||||
return { path: '/community/1' }
|
return { path: '/community/contribute' }
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user