feat: comments disqus + commento

This commit is contained in:
NGPixel
2020-05-16 22:46:05 -04:00
committed by Nicolas Giard
parent f6bad765a2
commit 887e8a0f5a
20 changed files with 1292 additions and 1067 deletions

View File

@@ -17,7 +17,7 @@
v-flex(lg3, xs12)
v-card.animated.fadeInUp
v-toolbar(flat, color='primary', dark, dense)
.subtitle-1 {{$t('admin:comments.providers')}}
.subtitle-1 {{$t('admin:comments.provider')}}
v-list.py-0(two-line, dense)
template(v-for='(provider, idx) in providers')
v-list-item(:key='provider.key', @click='selectedProvider = provider.key', :disabled='!provider.isAvailable')
@@ -127,7 +127,20 @@ export default {
this.$store.commit(`loadingStart`, 'admin-comments-saveproviders')
try {
const resp = await this.$apollo.mutate({
mutation: gql``,
mutation: gql`
mutation($providers: [CommentProviderInput]!) {
comments {
updateProviders(providers: $providers) {
responseResult {
succeeded
errorCode
slug
message
}
}
}
}
`,
variables: {
providers: this.providers.map(tgt => ({
isEnabled: tgt.key === this.selectedProvider,
@@ -136,19 +149,19 @@ export default {
}))
}
})
if (_.get(resp, 'data.comments.updateEngines.responseResult.succeeded', false)) {
if (_.get(resp, 'data.comments.updateProviders.responseResult.succeeded', false)) {
this.$store.commit('showNotification', {
message: this.$t('admin:comments.configSaveSuccess'),
style: 'success',
icon: 'check'
})
} else {
throw new Error(_.get(resp, 'data.comments.updateEngines.responseResult.message', this.$t('common:error.unexpected')))
throw new Error(_.get(resp, 'data.comments.updateProviders.responseResult.message', this.$t('common:error.unexpected')))
}
} catch (err) {
this.$store.commit('pushGraphError', err)
}
this.$store.commit(`loadingStop`, 'admin-comments-saveengines')
this.$store.commit(`loadingStop`, 'admin-comments-saveproviders')
}
},
apollo: {

View File

@@ -20,7 +20,7 @@
v-chip(label, color='success', small, v-if='ext.installed') Installed
v-chip(label, color='warning', small, v-else) Not Installed
v-expansion-panel-content.pa-0
v-card.grey.lighten-5.radius-7(flat)
v-card(flat, :class='$vuetify.theme.dark ? `grey darken-3` : `grey lighten-5`', tile)
v-card-text
.body-2 {{ext.description}}
v-divider.my-4

View File

@@ -146,7 +146,7 @@
//- v-divider.mt-3
v-switch(
inset
label='Page Comments'
label='Comments'
color='indigo'
v-model='config.featurePageComments'
persistent-hint

View File

@@ -341,7 +341,7 @@ md.renderer.rules.katex_block = (tokens, idx) => {
md.renderer.rules.emoji = (token, idx) => {
return twemoji.parse(token[idx].content, {
callback (icon, opts) {
return `/svg/twemoji/${icon}.svg`
return `/_assets/svg/twemoji/${icon}.svg`
}
})
}