Files
cnm/src/db/static_data.ts
2020-01-13 23:52:14 +01:00

410 lines
12 KiB
TypeScript

import { Todos, Projects, UserStore } from '@store'
import globalroutines from '../globalroutines/index'
import { date, Screen } from 'quasar'
import { IListRoutes, ILang, IOperators, IPreloadImages } from '../model/index'
import { IFunctionality } from '@src/model/GlobalStore'
import firebase from '@src/error-handler/firebase'
const functionality: IFunctionality = {
PWA: false,
SHOW_USER_MENU: true, // Cambiare con true
SHOW_PROFILE: true,
ENABLE_REGISTRATION: false, // Cambiare con true
SHOW_NEWSLETTER: false,
SHOW_ONLY_POLICY: true,
ENABLE_TODOS_LOADING: false,
ENABLE_PROJECTS_LOADING: false,
SHOW_IF_IS_SERVER_CONNECTION: false,
SHOW_MESSAGES: false,
BOOKING_EVENTS: false
}
const routes_admin: IListRoutes[] = [
{
active: true,
order: 1000,
path: '/admin/cfgserv',
materialIcon: 'event_seat',
name: 'pages.Admin',
component: () => import('@/views/admin/cfgServer/cfgServer.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1010,
path: '/admin/extralist',
materialIcon: 'event_seat',
name: 'pages.extralist',
component: () => import('@/views/admin/extralist/extralist.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
]
const routes_newsletter: IListRoutes[] = [
{
active: true,
order: 10,
name: 'newsletter.template', path: '/admin/newsletter/templemail', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 20,
name: 'newsletter.sendemail', path: '/admin/newsletter/newnewsletter', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 30,
name: 'newsletter.check', path: '/admin/newsletter/check', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 40,
name: 'newsletter.sent', path: '/admin/newsletter/newslist', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 50,
name: 'newsletter.mailinglist', path: '/admin/newsletter/mailinglist', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 60,
name: 'newsletter.settings', path: '/admin/newsletter/settings', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 70,
name: 'newsletter.serversettings', path: '/admin/newsletter/main_settings', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 80,
name: 'newsletter.others', path: '/admin/newsletter/events', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
]
const routes_manager: IListRoutes[] = [
{
active: true,
order: 10,
path: '/admin/userlist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.userlist',
component: () => import('@/rootgen/admin/usersList/usersList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true
},
{
active: true,
order: 15,
path: '/admin/showextralist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.extralist',
component: () => import('@/rootgen/admin/extraList/extraList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true
},
{
active: true,
order: 20,
path: '/admin/tableslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.tableslist',
component: () => import('@/rootgen/admin/tablesList/tablesList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true
},
{
active: true,
order: 30,
path: '/admin/pages',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.pages',
component: () => import('@/rootgen/admin/pages/pages.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true
},
{
active: true,
order: 40,
path: '/admin/gallery',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.gallery',
component: () => import('@/rootgen/admin/gallery/gallery.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true
},
{
active: true,
order: 50,
path: '/admin/media',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.media',
component: () => import('@/rootgen/admin/uploader/uploader.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true
},
{
active: true,
order: 60,
path: '/admin/newsletter',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.newsletter',
inmenu: false,
submenu: true,
routes2: routes_newsletter,
solotitle: true,
level_parent: 0.5,
level_child: 0.5,
onlyManager: true
},
{
active: functionality.BOOKING_EVENTS,
order: 70,
path: '/admin/usereventlist',
materialIcon: 'edit',
name: 'otherpages.admin.usereventlist',
component: () => import('@/rootgen/admin/eventlist/eventlist.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
infooter: true,
onlyManager: true
}
]
const baseroutes: IListRoutes[] = [
{
active: true,
order: 10,
path: '/',
materialIcon: 'home',
name: 'pages.home',
component: () => import('@/root/home/home.vue'),
inmenu: true,
infooter: true
},
{
active: true,
order: 30,
path: '/testimonial',
materialIcon: 'fas fa-comments',
name: 'pages.testimonial',
component: () => import('@/root/testimonianze/testimonianze.vue'),
inmenu: true,
infooter: true
},
{
active: true,
path: '/separator',
name: 'separator',
order: 99,
isseparator: true,
inmenu: true,
},
{
active: true,
order: 100,
path: '/dashboard',
materialIcon: 'fas fa-chalkboard',
name: 'pages.dashboard',
component: () => import('@/views/user/dashboard/dashboard.vue'),
meta: {requiresAuth: true},
inmenu: true,
infooter: true
},
{
active: true,
order: 110,
path: '/profile',
materialIcon: 'fas fa-user',
name: 'pages.profile',
component: () => import('@/views/user/profile/profile.vue'),
meta: {requiresAuth: true},
inmenu: true,
infooter: true
},
{
active: true,
order: 1000,
path: '/admin/newsletter/:idparam',
materialIcon: 'event',
name: 'pages.newsletter.menu',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: false,
infooter: false
},
{
active: true,
order: 1000,
path: '/404error',
materialIcon: 'fas fa-calendar-plus',
name: 'otherpages.error404',
component: () => import('@/root/My404page/My404page.vue'),
inmenu: false,
infooter: false
},
{
active: true,
order: 2000,
path: '/admin',
materialIcon: 'fas fa-user-shield',
name: 'otherpages.admin.menu',
inmenu: true,
routes2: routes_admin,
solotitle: true,
infooter: true,
onlyAdmin: true
},
...routes_admin,
{
active: true,
order: 2110,
path: '/manage',
materialIcon: 'fas fa-users-cog',
name: 'otherpages.manage.menu',
inmenu: true,
routes2: routes_manager,
solotitle: true,
infooter: true,
onlyManager: true
},
...routes_manager,
{
active: functionality.SHOW_MESSAGES,
order: 2150,
path: '/messages/:un',
materialIcon: 'fas fa-comment',
name: 'otherpages.messages.menu',
component: () => import('@/views/messages/messages.vue'),
inmenu: functionality.SHOW_MESSAGES,
infooter: functionality.SHOW_MESSAGES,
meta: {requiresAuth: true},
},
// --- NOT IN MENU: ---
{ active: true,
order: 1000,
path: '/policy', name: 'pages.policy', component: () => import('@/root/policy/policy.vue') },
{
active: functionality.ENABLE_REGISTRATION,
order: 1000,
path: '/signup',
materialIcon: 'how_to_reg',
name: 'pages.SignUp',
component: () => import('@/views/login/signup_complete/signup_complete.vue'),
inmenu: false,
infooter: false,
separator: false
},
{
active: functionality.ENABLE_REGISTRATION,
order: 1000,
path: '/signup/:invited',
materialIcon: 'how_to_reg',
name: 'pages.SignUp2',
component: () => import('@/views/login/signup_complete/signup_complete.vue'),
inmenu: false,
infooter: false,
separator: false
},
{
active: true,
order: 1000,
path: '/signin',
materialIcon: 'account_circle',
name: 'pages.SignIn',
component: () => import('@/views/login/signin/signin.vue'),
inmenu: false,
infooter: true
},
{ active: true, order: 1000, path: '/vreg', name: 'Verify Reg', component: () => import('@/views/login/vreg/vreg.vue') },
{ active: true, order: 1000, path: '/offline', name: 'Offline', component: () => import('@/views/offline/offline.vue') },
]
export const routes = baseroutes
const preLoadImages: IPreloadImages[] = [
{ imgname: '../../statics/images/logo.png', alt: 'logo', mobile: false },
{ imgname: '../../statics/images/gb.png', alt: 'flag gb', mobile: false },
{ imgname: '../../statics/images/es.png', alt: 'flag es', mobile: false },
// { imgname: '../../statics/images/fr.png', alt: 'flag fr', mobile: false },
{ imgname: '../../statics/images/it.png', alt: 'flag it', mobile: false },
// { imgname: '../../statics/images/background.jpg', alt: 'corsi di formazione per operatori del massaggio del benessere', mobile: true },
// { imgname: '../../statics/images/background2.jpg', alt: 'stanza con cuscini per seminario reiki', mobile: true },
// { imgname: '../../statics/images/background3.jpg', alt: 'foto di gruppo seminaristi reiki', mobile: true },
]
export function preloadedimages() {
return [...preLoadImages]
}
const arrLangUsed = [
'it',
'enUs',
'es'
]
const lang_available: ILang[] = [
{ label: 'Italiano', icon: 'fa-flag-it', value: 'it', image: '../statics/images/it.png', short: 'IT' },
{ label: 'English', icon: 'fa-flag-us', value: 'enUs', image: '../statics/images/gb.png', short: 'EN' },
{ label: 'Español', icon: 'fa-flag-es', value: 'es', image: '../statics/images/es.png', short: 'ES' },
// { label: 'Français', icon: 'fa-facebook', value: 'fr', image: '../statics/images/fr.png', short: 'FR' }
// { label: 'German', icon: 'fa-flag-de', value: 'de', image: '../statics/images/de.png', short: 'DE' },
]
export const static_data = {
functionality,
baseroutes,
routes,
lang_available,
preLoadImages,
arrLangUsed
}