somewhere

This commit is contained in:
Swift
2023-08-17 13:05:51 +03:30
parent 30c7eb0e7b
commit 53843207cc
429 changed files with 117489 additions and 1 deletions
+13
View File
@@ -0,0 +1,13 @@
<template>
<client-only>
<div class="c-app flex-row align-items-center">
<CContainer>
<nuxt />
</CContainer>
</div>
</client-only>
</template>
<style lang="scss" scoped>
@import '~/sass/admin/style.scss';
</style>
+98
View File
@@ -0,0 +1,98 @@
<template>
<client-only>
<div class="c-app">
<TheSidebar />
<CWrapper>
<TheHeader />
<div class="c-body">
<main class="c-main">
<CContainer fluid class="pt-5">
<transition name="fade" mode="out-in">
<nuxt :key="$route.path" />
</transition>
</CContainer>
</main>
</div>
<TheFooter />
</CWrapper>
</div>
</client-only>
</template>
<script>
import WS_Admin from '@/mixins/WS_Admin'
export default {
name: 'AdminLayout',
mixins: [WS_Admin],
middleware: ['auth-admin', 'permissions'],
data() {
return {
subHeaderContent: null
}
},
head() {
return {
htmlAttrs: {
lang: 'fa',
dir: 'rtl'
},
title: 'آسان سرویس | مدیریت سایت'
}
},
async mounted() {
/// /////////////////////////////////////////////////// get products list | provinces | cities
try {
// verity request info
const verityData = {
url: `/api/GetItem?UserGroupID=${this.$config.VerityUserGroupId}`,
db: 'verity'
}
// panatech request info
const panatechData = {
url: `/api/GetItem?UserGroupID=${this.$config.PanatechUserGroupId}`,
db: 'panatech'
}
const allData = await Promise.all([
// fetch verity products
this.$axios.post('/api/cross/getRouteManager', verityData),
// fetch panatech products
this.$axios.post('/api/cross/getRouteManager', panatechData),
// fetch iranProvinces
this.$axios.post('/api/cross/getRouteManager', { url: '/api/GetProvince', db: 'verity' }),
// fetch iranCities
this.$axios.post('/api/cross/getRouteManager', { url: '/api/GetCity', db: 'verity' })
])
const verityProducts = allData[0]
const panatechProducts = allData[1]
const iranProvinces = allData[2]
const iranCities = allData[3]
this.$store.commit('admin/set', ['verityProducts', verityProducts.data.data])
this.$store.commit('admin/set', ['panatechProducts', panatechProducts.data.data])
this.$store.commit('admin/set', ['iranProvinces', iranProvinces.data.data])
this.$store.commit('admin/set', ['iranCities', iranCities.data.data])
} catch (e) {
this.$arpaError()
}
}
}
</script>
<style lang="scss">
@import '~/sass/admin/style.scss';
</style>
<style scoped>
.fade-enter-active,
.fade-leave-active {
transition: opacity 0.3s;
}
.fade-enter,
.fade-leave-to {
opacity: 0;
}
</style>
+11
View File
@@ -0,0 +1,11 @@
<template>
<div>
<nuxt />
</div>
</template>
<script>
export default {
name: 'BlankLayout'
}
</script>
+23
View File
@@ -0,0 +1,23 @@
<template>
<div>
<SiteHeader />
<nuxt class="default" />
<SiteFooter v-if="$route.name !== 'index'" />
<MobileMenu />
<LotteryPopUp />
<AppInstallDialog />
</div>
</template>
<script>
export default {
name: 'DefaultLayout',
head() {
return {
htmlAttrs: {
lang: 'fa'
}
}
}
}
</script>
+26
View File
@@ -0,0 +1,26 @@
<template>
<div v-if="error.statusCode === 404" class="error--page">
<h1>{{ error.statusCode }}</h1>
<p>{{ error.message }}</p>
<nuxt-link :to="{ name: 'index' }">Home</nuxt-link>
</div>
<div v-else class="error--page">
<h1>{{ error.statusCode }}</h1>
<p>{{ error.message }}</p>
<nuxt-link :to="{ name: 'index' }">Home</nuxt-link>
</div>
</template>
<script>
export default {
name: 'ErrorPage',
layout: 'blank',
props: {
error: {
required: true,
type: Object,
default: null
}
}
}
</script>
+20
View File
@@ -0,0 +1,20 @@
<template>
<div>
<SiteHeader />
<nuxt />
<MobileMenu />
</div>
</template>
<script>
export default {
name: 'UserAuthLayout',
head() {
return {
htmlAttrs: {
lang: 'fa'
}
}
}
}
</script>
+102
View File
@@ -0,0 +1,102 @@
<template>
<client-only>
<div class="user-dashboard-layout">
<site-header />
<div class="topBG">
<div class="user-name">
<nuxt-link :to="{ name: 'account' }" exact>
<i class="fas fa-user"></i>
<span class="singleLineTxt" :title="fullName">{{ fullName }}</span>
</nuxt-link>
</div>
</div>
<div class="container-fluid">
<div class="row">
<user-aside-menu class="col-12 col-lg-3 col-xxl-2" />
<nuxt class="col-12 col-lg-9 col-xxl-10" />
</div>
</div>
<!-- <site-footer /> -->
<mobile-menu />
<AppInstallDialog />
</div>
</client-only>
</template>
<script>
export default {
name: 'UserLayout',
middleware: 'auth-user',
head() {
return {
title: 'آسان سرویس | حساب کاربری',
htmlAttrs: {
lang: 'fa'
}
}
},
computed: {
user() {
return this.$auth.user
},
fullName() {
return this.user.first_name + ' ' + this.user.last_name
}
},
async mounted() {
if (this.user.confirmed) {
if (!this.user.email_confirmed) {
this.$notify({
type: 'warning',
title: 'توجه',
message:
'کاربر گرامی آدرس ایمیل خود را تایید نکرده اید، لطفا هرچه سریع تر نسبت به تایید آدرس ایمیل خود از "منوی تایید اطلاعات" اقدام نمایید.',
position: 'top-left',
offset: 60,
duration: 0
})
}
if (!this.user.mobile_confirmed) {
this.$notify({
type: 'warning',
title: 'توجه',
message:
'کاربر گرامی شماره تلفن همراه خود را تایید نکرده اید، لطفا هرچه سریع تر نسبت به تایید شماره تلفن همراه خود از منوی "تایید اطلاعات" اقدام نمایید.',
position: 'top-left',
offset: 60,
duration: 0
})
}
}
/// /// get products list
try {
// verity request info
const verityData = {
url: `/api/GetItem?UserGroupID=${this.$config.VerityUserGroupId}`,
db: 'verity'
}
// panatech request info
const panatechData = {
url: `/api/GetItem?UserGroupID=${this.$config.PanatechUserGroupId}`,
db: 'panatech'
}
const allData = await Promise.all([
// fetch verity products
this.$axios.post('/api/cross/getRouteManager', verityData),
// fetch panatech products
this.$axios.post('/api/cross/getRouteManager', panatechData)
])
const verityProducts = allData[0]
const panatechProducts = allData[1]
this.$store.commit('front/set', ['verityProducts', verityProducts.data.data])
this.$store.commit('front/set', ['panatechProducts', panatechProducts.data.data])
} catch (e) {
this.$arpaError()
}
}
}
</script>