├── public ├── robots.txt ├── favicon.ico ├── img │ └── icons │ │ ├── ic_launcher.png │ │ ├── favicon-16x16.png │ │ ├── favicon-32x32.png │ │ ├── mstile-150x150.png │ │ ├── web_hi_res_512.png │ │ ├── apple-touch-icon.png │ │ ├── android-chrome-192x192.png │ │ ├── android-chrome-512x512.png │ │ ├── apple-touch-icon-120x120.png │ │ ├── apple-touch-icon-152x152.png │ │ ├── apple-touch-icon-180x180.png │ │ ├── apple-touch-icon-60x60.png │ │ ├── apple-touch-icon-76x76.png │ │ ├── msapplication-icon-144x144.png │ │ ├── android-chrome-maskable-192x192.png │ │ ├── android-chrome-maskable-512x512.png │ │ └── safari-pinned-tab.svg ├── manifest.json └── index.html ├── .browserslistrc ├── src ├── plugins │ ├── vue-moment.js │ ├── chart.js │ ├── vuetify-date-time.js │ ├── vuetify.js │ ├── vuetify-dialog.js │ ├── progressbar.js │ ├── i18n.js │ └── axios.js ├── store │ ├── Getters.js │ ├── State.js │ ├── Store.js │ ├── Mutations.js │ └── Actions.js ├── assets │ ├── manipur_emblem.png │ ├── logo.svg │ └── states-and-districts.json ├── configs │ ├── languagesSupported.js │ ├── avatarMenu.js │ ├── settingMenu.js │ ├── themeColors.js │ └── menus.js ├── mixin │ └── Mixins.js ├── helpers │ └── RandomString.js ├── pages │ ├── authenticated │ │ ├── Logout.vue │ │ ├── dashboard │ │ │ ├── components │ │ │ │ └── GuestTable.vue │ │ │ └── Dashboard.vue │ │ ├── account │ │ │ └── AccountSetting.vue │ │ ├── password │ │ │ └── ChangePassword.vue │ │ ├── setting │ │ │ └── Setting.vue │ │ ├── calendar │ │ │ ├── components │ │ │ │ └── EventForm.vue │ │ │ └── EventCalendar.vue │ │ └── profile │ │ │ └── ProfileSetting.vue │ └── public │ │ ├── forget_password │ │ ├── ForgetPassword.vue │ │ └── RecoverPassword.vue │ │ ├── singin │ │ └── SingIn.vue │ │ └── registration │ │ └── Registration.vue ├── layout │ ├── Dashboard.vue │ ├── Public.vue │ └── components │ │ ├── Drawer.vue │ │ └── AppBar.vue ├── data │ ├── guest.js │ ├── revenueOta.js │ ├── revenueRoom.js │ ├── revenueCountry.js │ ├── expectedRevenue.js │ └── dashboardData.js ├── components │ ├── chart │ │ ├── PieChart.vue │ │ ├── BarChart.vue │ │ ├── MultilineChart.vue │ │ └── LineChart.vue │ └── breadcrumb │ │ └── Breadcrumb.vue ├── main.js ├── service-worker.js ├── registerServiceWorker.js ├── i18n │ ├── es.js │ ├── en.js │ └── sv.js ├── router │ └── Router.js └── App.vue ├── screenshots ├── signin.png ├── dashboard.png ├── dashboard-dark.png ├── forgetpassword.png ├── registration.png ├── resetpassword.png └── dashboard-color.png ├── .idea ├── .gitignore ├── misc.xml ├── vcs.xml ├── modules.xml ├── vue-admin.iml └── inspectionProfiles │ └── Project_Default.xml ├── .github └── ISSUE_TEMPLATE │ ├── custom.md │ ├── feature_request.md │ └── bug_report.md ├── vue.config.js ├── LICENSE ├── package.json ├── README.md └── CONTRIBUTING.md /public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: 3 | -------------------------------------------------------------------------------- /.browserslistrc: -------------------------------------------------------------------------------- 1 | > 1% 2 | last 2 versions 3 | not dead 4 | -------------------------------------------------------------------------------- /src/plugins/vue-moment.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | Vue.use(require('vue-moment')); -------------------------------------------------------------------------------- /src/store/Getters.js: -------------------------------------------------------------------------------- 1 | 2 | const getters = { 3 | 4 | } 5 | 6 | export default getters 7 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /screenshots/signin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/screenshots/signin.png -------------------------------------------------------------------------------- /screenshots/dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/screenshots/dashboard.png -------------------------------------------------------------------------------- /screenshots/dashboard-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/screenshots/dashboard-dark.png -------------------------------------------------------------------------------- /screenshots/forgetpassword.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/screenshots/forgetpassword.png -------------------------------------------------------------------------------- /screenshots/registration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/screenshots/registration.png -------------------------------------------------------------------------------- /screenshots/resetpassword.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/screenshots/resetpassword.png -------------------------------------------------------------------------------- /src/assets/manipur_emblem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/src/assets/manipur_emblem.png -------------------------------------------------------------------------------- /public/img/icons/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/ic_launcher.png -------------------------------------------------------------------------------- /screenshots/dashboard-color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/screenshots/dashboard-color.png -------------------------------------------------------------------------------- /public/img/icons/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/favicon-16x16.png -------------------------------------------------------------------------------- /public/img/icons/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/favicon-32x32.png -------------------------------------------------------------------------------- /public/img/icons/mstile-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/mstile-150x150.png -------------------------------------------------------------------------------- /public/img/icons/web_hi_res_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/web_hi_res_512.png -------------------------------------------------------------------------------- /src/plugins/chart.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import VueApexCharts from 'vue-apexcharts' 3 | Vue.component("apexchart",VueApexCharts) -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | # Editor-based HTTP Client requests 5 | /httpRequests/ 6 | -------------------------------------------------------------------------------- /public/img/icons/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/apple-touch-icon.png -------------------------------------------------------------------------------- /src/plugins/vuetify-date-time.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import DatetimePicker from 'vuetify-datetime-picker' 3 | Vue.use(DatetimePicker) -------------------------------------------------------------------------------- /public/img/icons/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/android-chrome-192x192.png -------------------------------------------------------------------------------- /public/img/icons/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/android-chrome-512x512.png -------------------------------------------------------------------------------- /public/img/icons/apple-touch-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/apple-touch-icon-120x120.png -------------------------------------------------------------------------------- /public/img/icons/apple-touch-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/apple-touch-icon-152x152.png -------------------------------------------------------------------------------- /public/img/icons/apple-touch-icon-180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/apple-touch-icon-180x180.png -------------------------------------------------------------------------------- /public/img/icons/apple-touch-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/apple-touch-icon-60x60.png -------------------------------------------------------------------------------- /public/img/icons/apple-touch-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/apple-touch-icon-76x76.png -------------------------------------------------------------------------------- /public/img/icons/msapplication-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/msapplication-icon-144x144.png -------------------------------------------------------------------------------- /public/img/icons/android-chrome-maskable-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/android-chrome-maskable-192x192.png -------------------------------------------------------------------------------- /public/img/icons/android-chrome-maskable-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mani1124/vue-admin-template/HEAD/public/img/icons/android-chrome-maskable-512x512.png -------------------------------------------------------------------------------- /src/configs/languagesSupported.js: -------------------------------------------------------------------------------- 1 | const languagesSupported=[{id:'en',name:'English'},{id:'sv',name:'Swedish'},{id:'es',name:'Spanish'}] 2 | export default languagesSupported -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/custom.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Custom issue template 3 | about: Describe this issue template's purpose here. 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | 11 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/plugins/vuetify.js: -------------------------------------------------------------------------------- 1 | import Vuetify from 'vuetify/lib/framework'; 2 | import i18n from "./i18n"; 3 | export default new Vuetify({ 4 | rtl: false, 5 | lang: { 6 | t: (key, ...params) => i18n.t(key, params), 7 | }, 8 | }); 9 | -------------------------------------------------------------------------------- /public/img/icons/safari-pinned-tab.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/plugins/vuetify-dialog.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import vuetify from './vuetify' 3 | import VuetifyDialog from 'vuetify-dialog' 4 | import 'vuetify-dialog/dist/vuetify-dialog.css' 5 | Vue.use(VuetifyDialog, { 6 | context: { 7 | vuetify, 8 | }, 9 | }) 10 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/mixin/Mixins.js: -------------------------------------------------------------------------------- 1 | const mixin = { 2 | data: function () { 3 | return { 4 | title: 'Vue Admin', 5 | subtitle: 'An open source vue admin template', 6 | url:'https://vue-admin-temolate.com' 7 | } 8 | }, 9 | methods: { 10 | 11 | }, 12 | } 13 | 14 | export default mixin 15 | -------------------------------------------------------------------------------- /src/store/State.js: -------------------------------------------------------------------------------- 1 | 2 | const state = { 3 | drawer: null, 4 | themeLight: true, 5 | user: null, 6 | token: null, 7 | dark:false, 8 | rtl:false, 9 | language:'en', 10 | active_nav:null, 11 | color:{id:1, primary:'#3F51B5', secondary: '#1E88E5', accent: '#7CB342', info: '#43A047'} 12 | } 13 | 14 | export default state 15 | -------------------------------------------------------------------------------- /src/configs/avatarMenu.js: -------------------------------------------------------------------------------- 1 | const avatarMenu=[ 2 | { 3 | title: 'Settings', 4 | route:'Settings', 5 | icon: 'mdi-cog', 6 | external:false, 7 | params:null, 8 | }, 9 | 10 | { 11 | title: 'Logout', 12 | route:'Logout', 13 | icon: 'mdi-logout', 14 | external:false, 15 | params:null, 16 | }, 17 | ] 18 | export default avatarMenu; -------------------------------------------------------------------------------- /src/plugins/progressbar.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import VueProgressBar from 'vue-progressbar' 3 | const options = { 4 | color: '#05b8a3', 5 | failedColor: '#f30c0c', 6 | thickness: '8px', 7 | transition: { 8 | speed: '0.2s', 9 | opacity: '0.6s', 10 | termination: 300, 11 | }, 12 | autoRevert: true, 13 | location: 'top', 14 | inverse: false, 15 | } 16 | 17 | Vue.use(VueProgressBar, options) 18 | -------------------------------------------------------------------------------- /src/helpers/RandomString.js: -------------------------------------------------------------------------------- 1 | export const getRandomString=(length)=>{ 2 | let result = ''; 3 | let characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; 4 | let charactersLength = characters.length; 5 | for ( let i = 0; i < length; i++ ) { 6 | result += characters.charAt(Math.floor(Math.random() * 7 | charactersLength)); 8 | } 9 | return result; 10 | } -------------------------------------------------------------------------------- /src/plugins/i18n.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import VueI18n from 'vue-i18n' 3 | import Vuetify from 'vuetify/lib/framework'; 4 | Vue.use(Vuetify); 5 | Vue.use(VueI18n); 6 | import en from "../i18n/en"; 7 | import sv from "../i18n/sv"; 8 | import es from '../i18n/es' 9 | const i18n = new VueI18n({ 10 | locale: 'en', // set locale, 11 | fallbackLocale:'en', 12 | messages:{"en":en,"sv":sv,"es":es} 13 | }) 14 | export default i18n; 15 | 16 | -------------------------------------------------------------------------------- /public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Vue Admin Template", 3 | "short_name": "Vue Admin", 4 | "start_url": "/", 5 | "display": "standalone", 6 | "theme_color": "#3F51B5", 7 | "background_color": "#3F51B5", 8 | "icons": [ 9 | { 10 | "src": "/img/icons/ic_launcher.png", 11 | "sizes": "192x192", 12 | "type": "image/png" 13 | }, 14 | { 15 | "src": "/img/icons/web_hi_res_512.png", 16 | "sizes": "512x512", 17 | "type": "image/png" 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /src/pages/authenticated/Logout.vue: -------------------------------------------------------------------------------- 1 | 4 | 22 | -------------------------------------------------------------------------------- /vue.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | transpileDependencies: [ 3 | 'vuetify' 4 | ], 5 | "pwa": { 6 | "themeColor": "#3F51B5", 7 | "name": "DM College Science", 8 | "msTileColor": "#3F51B5", 9 | "appleMobileWebAppCapable": "yes", 10 | "appleMobileWebAppStatusBarStyle": "black", 11 | "workboxPluginMode": "InjectManifest", 12 | "workboxOptions": { 13 | "swSrc": "src/service-worker.js", 14 | "swDest": "service-worker.js" 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /.idea/vue-admin.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/assets/logo.svg: -------------------------------------------------------------------------------- 1 | Artboard 46 2 | -------------------------------------------------------------------------------- /src/store/Store.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Vuex from 'vuex' 3 | import VuexPersistence from 'vuex-persist' 4 | import state from './State' 5 | import getters from './Getters' 6 | import mutations from './Mutations' 7 | import actions from './Actions' 8 | const vuexLocal = new VuexPersistence({ 9 | storage: window.sessionStorage, 10 | }) 11 | Vue.use(Vuex) 12 | export default new Vuex.Store({ 13 | getters, 14 | mutations, 15 | state, 16 | actions, 17 | plugins: [vuexLocal.plugin], 18 | strict: process.env.NODE_ENV !== 'production', 19 | }) 20 | -------------------------------------------------------------------------------- /src/configs/settingMenu.js: -------------------------------------------------------------------------------- 1 | const settingMenu=[ 2 | { 3 | title: 'Profile', 4 | route:'ProfileSetting', 5 | icon: 'mdi-account-cog', 6 | external:false, 7 | params:null, 8 | }, 9 | { 10 | title: 'Account', 11 | route:'AccountSetting', 12 | icon: 'mdi-cog', 13 | external:false, 14 | params:null, 15 | }, 16 | { 17 | title: 'Change Password', 18 | route:'ChangePasswordSetting', 19 | icon: 'mdi-lock', 20 | external:false, 21 | params:null, 22 | }, 23 | ] 24 | export default settingMenu; -------------------------------------------------------------------------------- /src/layout/Dashboard.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 26 | 28 | -------------------------------------------------------------------------------- /src/plugins/axios.js: -------------------------------------------------------------------------------- 1 | import axios from 'axios' 2 | import store from "../store/Store"; 3 | import router from "../router/Router"; 4 | const baseURL = 'https://register.dmcscience.ac.in' 5 | /*const baseURL = 'http://localhost:8000'*/ 6 | const http=axios.create({ 7 | baseURL, 8 | }); 9 | http.interceptors.response.use(function (response) { 10 | return response; 11 | }, function (error) { 12 | console.log("error",error) 13 | if (401 === error.response.status) { 14 | store.dispatch("signOut"); 15 | router.push({name:'ApplyNow'}) 16 | } else { 17 | return Promise.reject(error); 18 | } 19 | }); 20 | export default http; 21 | -------------------------------------------------------------------------------- /src/configs/themeColors.js: -------------------------------------------------------------------------------- 1 | const themeColors=()=>{ 2 | return [ 3 | { 4 | id:1, 5 | primary:'#3F51B5', 6 | secondary: '#1E88E5', 7 | accent: '#7CB342', 8 | info: '#43A047', 9 | }, 10 | { 11 | id:2, 12 | primary:'#4CAF50', 13 | secondary: '#FF5722', 14 | accent: '#607D8B', 15 | info: '#004D40', 16 | }, 17 | { 18 | id:3, 19 | primary:'#9C27B0', 20 | secondary: '#880E4F', 21 | accent: '#5E35B1', 22 | info: '#2962FF', 23 | } 24 | ] 25 | } 26 | export default themeColors; -------------------------------------------------------------------------------- /src/data/guest.js: -------------------------------------------------------------------------------- 1 | const guest=[ 2 | {name:"John Doe",mobile:"+91 9000000000",email:"johndoe@domain.com",country:"India"}, 3 | {name:"John Doe",mobile:"+91 9000000000",email:"johndoe@domain.com",country:"India"}, 4 | {name:"John Doe",mobile:"+91 9000000000",email:"johndoe@domain.com",country:"India"}, 5 | {name:"John Doe",mobile:"+91 9000000000",email:"johndoe@domain.com",country:"India"}, 6 | {name:"John Doe",mobile:"+91 9000000000",email:"johndoe@domain.com",country:"India"}, 7 | {name:"John Doe",mobile:"+91 9000000000",email:"johndoe@domain.com",country:"India"}, 8 | {name:"John Doe",mobile:"+91 9000000000",email:"johndoe@domain.com",country:"India"}, 9 | ] 10 | export default guest -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Is your feature request related to a problem? Please describe.** 11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Describe alternatives you've considered** 17 | A clear and concise description of any alternative solutions or features you've considered. 18 | 19 | **Additional context** 20 | Add any other context or screenshots about the feature request here. 21 | -------------------------------------------------------------------------------- /src/components/chart/PieChart.vue: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /src/store/Mutations.js: -------------------------------------------------------------------------------- 1 | 2 | const mutations = { 3 | SET_AUTH_USER (state, user) { 4 | state.user = user 5 | }, 6 | SET_AUTH_TOKEN (state, token) { 7 | state.token = token 8 | }, 9 | SET_DRAWER (state, val) { 10 | state.drawer = val 11 | }, 12 | TOGGLE_THEME (state,value) { 13 | state.dark = value 14 | }, 15 | TOGGLE_RTL (state,value) { 16 | state.rtl = value 17 | }, 18 | SET_LANGUAGE (state,value) { 19 | state.language = value 20 | }, 21 | SET_COLOR(state,color) { 22 | state.color = color 23 | }, 24 | SET_ACTIVE_NAV(state,value) { 25 | state.active_nav = value 26 | }, 27 | } 28 | 29 | export default mutations 30 | -------------------------------------------------------------------------------- /src/components/breadcrumb/Breadcrumb.vue: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /src/data/revenueOta.js: -------------------------------------------------------------------------------- 1 | const revenueOta={ 2 | series: [23, 21, 7, 34, 22], 3 | chartOptions: { 4 | tooltip:{ 5 | theme:true, 6 | }, 7 | chart: { 8 | height: 350, 9 | type: 'donut', 10 | }, 11 | colors:["#a29f04","#d20423","#06ad7a","#ce2405","#b800c4"], 12 | chartTitle: { 13 | text: 'Revenue V OTA', 14 | }, 15 | labels: ['MMT', 'Cleartrip', 'Yatra', 'Via', 'Paytm'], 16 | responsive: [{ 17 | breakpoint: 480, 18 | options: { 19 | chart: { 20 | width: 200 21 | }, 22 | legend: { 23 | position: 'bottom' 24 | } 25 | } 26 | }] 27 | } 28 | } 29 | export default revenueOta; -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import App from './App.vue' 3 | import './registerServiceWorker' 4 | import router from './router/Router' 5 | import store from './store/Store' 6 | import mixin from "./mixin/Mixins"; 7 | Vue.mixin(mixin) 8 | import vuetify from './plugins/vuetify' 9 | import axios from './plugins/axios' 10 | Vue.prototype.$http = axios 11 | import './plugins/vue-moment' 12 | import './plugins/progressbar' 13 | import './plugins/chart' 14 | import './plugins/vuetify-dialog' 15 | import i18n from "./plugins/i18n"; 16 | import './plugins/vuetify-date-time' 17 | Vue.config.productionTip = false 18 | import VueCodeHighlight from 'vue-code-highlight'; 19 | Vue.use(VueCodeHighlight) 20 | const app = new Vue({ 21 | i18n, 22 | router, 23 | store, 24 | vuetify, 25 | el: '#app', 26 | render: h => h(App) 27 | }); 28 | -------------------------------------------------------------------------------- /src/data/revenueRoom.js: -------------------------------------------------------------------------------- 1 | const revenueRoom={ 2 | series: [44, 55, 13, 43, 22], 3 | chartOptions: { 4 | tooltip:{ 5 | theme:true, 6 | }, 7 | chart: { 8 | height: 350, 9 | type: 'pie', 10 | }, 11 | colors:["#0f7e02","#04277c","#7e023a","#8f8917","#7b0a83"], 12 | chartTitle: { 13 | text: 'Revenue V Room Types', 14 | }, 15 | labels: ['Standard Room', 'Deluxe Room', 'Suite Room', 'Connecting Room', 'Apartment Room'], 16 | responsive: [{ 17 | breakpoint: 480, 18 | options: { 19 | chart: { 20 | width: 200 21 | }, 22 | legend: { 23 | position: 'bottom' 24 | } 25 | } 26 | }] 27 | }, 28 | 29 | } 30 | export default revenueRoom -------------------------------------------------------------------------------- /src/service-worker.js: -------------------------------------------------------------------------------- 1 | // This is the code piece that GenerateSW mode can't provide for us. 2 | // This code listens for the user's confirmation to update the app. 3 | self.addEventListener('message', (e) => { 4 | if (!e.data) { 5 | return; 6 | } 7 | 8 | switch (e.data) { 9 | case 'skipWaiting': 10 | self.skipWaiting(); 11 | break; 12 | default: 13 | // NOOP 14 | break; 15 | } 16 | }); 17 | workbox.core.clientsClaim(); // Vue CLI 4 and Workbox v4, else 18 | // workbox.clientsClaim(); // Vue CLI 3 and Workbox v3. 19 | 20 | // The precaching code provided by Workbox. 21 | self.__precacheManifest = [].concat(self.__precacheManifest || []); 22 | // workbox.precaching.suppressWarnings(); // Only used with Vue CLI 3 and Workbox v3. 23 | workbox.precaching.precacheAndRoute(self.__precacheManifest, {}); 24 | -------------------------------------------------------------------------------- /src/store/Actions.js: -------------------------------------------------------------------------------- 1 | const actions = { 2 | setAuthenticatedData ({ commit }, data) { 3 | commit('SET_AUTH_USER', data.user) 4 | commit('SET_AUTH_TOKEN', data.token) 5 | }, 6 | signOut ({ commit }, data) { 7 | commit('SET_AUTH_USER', null) 8 | commit('SET_AUTH_TOKEN', null) 9 | }, 10 | toggleTheme ({ commit },value) { 11 | commit('TOGGLE_THEME',value) 12 | }, 13 | toggleRTL ({ commit },value) { 14 | commit('TOGGLE_RTL',value) 15 | }, 16 | setLanguage ({ commit },value) { 17 | commit('SET_LANGUAGE',value) 18 | }, 19 | setColor({ commit },color) { 20 | commit('SET_COLOR',color) 21 | }, 22 | setDrawer({ commit },value) { 23 | commit('SET_DRAWER',value) 24 | }, 25 | setActiveNavigation({ commit },value) { 26 | commit('SET_ACTIVE_NAV',value) 27 | }, 28 | } 29 | 30 | export default actions 31 | -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Free Vue Admin Template 9 | 10 | 11 | 12 | 13 | 14 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **To Reproduce** 14 | Steps to reproduce the behavior: 15 | 1. Go to '...' 16 | 2. Click on '....' 17 | 3. Scroll down to '....' 18 | 4. See error 19 | 20 | **Expected behavior** 21 | A clear and concise description of what you expected to happen. 22 | 23 | **Screenshots** 24 | If applicable, add screenshots to help explain your problem. 25 | 26 | **Desktop (please complete the following information):** 27 | - OS: [e.g. iOS] 28 | - Browser [e.g. chrome, safari] 29 | - Version [e.g. 22] 30 | 31 | **Smartphone (please complete the following information):** 32 | - Device: [e.g. iPhone6] 33 | - OS: [e.g. iOS8.1] 34 | - Browser [e.g. stock browser, safari] 35 | - Version [e.g. 22] 36 | 37 | **Additional context** 38 | Add any other context about the problem here. 39 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 21 | -------------------------------------------------------------------------------- /src/pages/authenticated/dashboard/components/GuestTable.vue: -------------------------------------------------------------------------------- 1 | 19 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Mani 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /src/components/chart/BarChart.vue: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dm-admission-ui", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "serve": "vue-cli-service serve", 7 | "build": "vue-cli-service build" 8 | }, 9 | "dependencies": { 10 | "add": "^2.0.6", 11 | "apexcharts": "^3.28.3", 12 | "axios": "^0.21.1", 13 | "moment": "^2.29.1", 14 | "register-service-worker": "^1.7.1", 15 | "vue": "^2.6.11", 16 | "vue-apexcharts": "^1.6.2", 17 | "vue-code-highlight": "^0.7.8", 18 | "vue-i18n": "8.26.5", 19 | "vue-moment": "^4.1.0", 20 | "vue-progressbar": "^0.7.5", 21 | "vue-router": "^3.2.0", 22 | "vueclaw": "^1.1.0", 23 | "vuetify": "2.5.8", 24 | "vuetify-datetime-picker": "^2.1.1", 25 | "vuetify-dialog": "^2.0.17", 26 | "vuetify-image-input": "^19.2.2", 27 | "vuex": "^3.4.0", 28 | "vuex-persist": "^3.1.3", 29 | "yarn": "^1.22.15" 30 | }, 31 | "devDependencies": { 32 | "@vue/cli-plugin-pwa": "~4.5.0", 33 | "@vue/cli-plugin-router": "~4.5.0", 34 | "@vue/cli-plugin-vuex": "~4.5.0", 35 | "@vue/cli-service": "~4.5.0", 36 | "node-sass": "^6.0.1", 37 | "sass": "~1.32.0", 38 | "sass-loader": "^10.0.0", 39 | "vue-cli-plugin-vuetify": "~2.4.2", 40 | "vue-template-compiler": "^2.6.11", 41 | "vuetify-loader": "^1.7.0" 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Vue-Admin-Template 2 | A beautiful free vuejs admin template, designed using vuetify and apexcharts. 3 | ## Features 4 | - Beautiful dashboard using Vuetify (https://vuetifyjs.com/) 5 | - Support different types of chart using Apexcharts (https://apexcharts.com/) 6 | - Support dark mode. 7 | - Support color scheme. 8 | - Build in authentication pages. 9 | - Fully responsive design. 10 | - Support PWA. 11 | - Support RTL. 12 | - i18n Integrated 13 | - Event calendar 14 | ## Installation 15 | ``` 16 | git clone https://github.com/Mani1124/vue-admin-template.git 17 | cd vue-admin-template 18 | yarn install 19 | yarn serve 20 | ``` 21 | Live Demo 22 | 23 | Buy Me A Coffee 24 | 25 | ## Compiles and hot-reloads for development 26 | ``` 27 | yarn serve 28 | ``` 29 | 30 | ## Compiles and minifies for production 31 | ``` 32 | yarn build 33 | ``` 34 | ## Todo 35 | - RTL support 36 | - Multiple language support 37 | - Event calendar 38 | - Documentation 39 | - Vuetify 3.x.x migration 40 | 41 | ## Customize configuration 42 | See [Configuration Reference](https://cli.vuejs.org/config/). 43 | ## License 44 | MIT 45 | -------------------------------------------------------------------------------- /src/registerServiceWorker.js: -------------------------------------------------------------------------------- 1 | import { register } from 'register-service-worker'; 2 | 3 | if (process.env.NODE_ENV === 'production') { 4 | register(`${process.env.BASE_URL}service-worker.js`, { 5 | ready () { 6 | console.log('Service worker is active.'); 7 | }, 8 | registered (registration) { 9 | console.log('Service worker has been registered.'); 10 | 11 | // Routinely check for app updates by testing for a new service worker. 12 | setInterval(() => { 13 | registration.update(); 14 | }, 1000 * 60 * 5); // hourly checks 15 | }, 16 | cached () { 17 | console.log('Content has been cached for offline use.'); 18 | }, 19 | updatefound () { 20 | console.log('New content is downloading.'); 21 | }, 22 | updated (registration) { 23 | console.log('New content is available; please refresh.'); 24 | 25 | // Add a custom event and dispatch it. 26 | // Used to display of a 'refresh' banner following a service worker update. 27 | // Set the event payload to the service worker registration object. 28 | document.dispatchEvent( 29 | new CustomEvent('swUpdated', { detail: registration }) 30 | ); 31 | }, 32 | offline () { 33 | console.log('No internet connection found. App is running in offline mode.'); 34 | }, 35 | error (error) { 36 | console.error('Error during service worker registration:', error); 37 | }, 38 | }); 39 | } 40 | -------------------------------------------------------------------------------- /src/components/chart/MultilineChart.vue: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's: 3 | 4 | - Reporting a bug 5 | - Discussing the current state of the code 6 | - Submitting a fix 7 | - Proposing new features 8 | - Becoming a maintainer 9 | 10 | ## We Develop with Github 11 | We use github to host code, to track issues and feature requests, as well as accept pull requests. 12 | 13 | ## We Use [Github Flow](https://guides.github.com/introduction/flow/index.html), So All Code Changes Happen Through Pull Requests 14 | Pull requests are the best way to propose changes to the codebase (we use [Github Flow](https://guides.github.com/introduction/flow/index.html)). We actively welcome your pull requests: 15 | 16 | 1. Fork the repo and create your branch from `master`. 17 | 2. If you've added code that should be tested, add tests. 18 | 3. If you've changed APIs, update the documentation. 19 | 4. Ensure the test suite passes. 20 | 5. Make sure your code lints. 21 | 6. Issue that pull request! 22 | 23 | ## Any contributions you make will be under the MIT Software License 24 | In short, when you submit code changes, your submissions are understood to be under the same [MIT License](http://choosealicense.com/licenses/mit/) that covers the project. Feel free to contact the maintainers if that's a concern. 25 | 26 | ## Report bugs using Github's [issues](https://github.com/Mani1124/vue-admin-template/issues) 27 | We use GitHub issues to track public bugs. Report a bug by [opening a new issue](https://github.com/Mani1124/vue-admin-template/issues/new/choose); it's that easy! 28 | 29 | 30 | ## License 31 | By contributing, you agree that your contributions will be licensed under its MIT License. 32 | -------------------------------------------------------------------------------- /src/data/revenueCountry.js: -------------------------------------------------------------------------------- 1 | const revenueCountry={ 2 | series: [{ 3 | data: [21, 22, 10, 28, 16] 4 | }], 5 | chartOptions: { 6 | chartTitle: { 7 | text: 'Revenue V Country', 8 | }, 9 | chart: { 10 | toolbar: { 11 | show: false, 12 | }, 13 | height: 350, 14 | type: 'bar', 15 | events: { 16 | click: function(chart, w, e) { 17 | // console.log(chart, w, e) 18 | } 19 | } 20 | }, 21 | colors: ["#880E4F","#FF5722","#2962FF","#00C853","#607D8B"], 22 | plotOptions: { 23 | bar: { 24 | columnWidth: '45%', 25 | distributed: true, 26 | } 27 | }, 28 | dataLabels: { 29 | enabled: false 30 | }, 31 | legend: { 32 | show: false 33 | }, 34 | tooltip: { 35 | theme:true, 36 | y: [ 37 | { 38 | title: { 39 | formatter: function (val) { 40 | return "INR (lakhs)" 41 | } 42 | } 43 | }, 44 | ] 45 | }, 46 | xaxis: { 47 | categories: [ 48 | ['India'], 49 | ['US'], 50 | ['Australia'], 51 | ['South Africa'], 52 | ['Thailand'], 53 | ], 54 | labels: { 55 | style: { 56 | colors: ["#880E4F","#FF5722","#2962FF","#00C853","#607D8B"], 57 | fontSize: '12px' 58 | } 59 | } 60 | } 61 | }, 62 | } 63 | export default revenueCountry -------------------------------------------------------------------------------- /src/pages/authenticated/account/AccountSetting.vue: -------------------------------------------------------------------------------- 1 | 61 | -------------------------------------------------------------------------------- /src/components/chart/LineChart.vue: -------------------------------------------------------------------------------- 1 | 25 | -------------------------------------------------------------------------------- /src/pages/authenticated/password/ChangePassword.vue: -------------------------------------------------------------------------------- 1 | 69 | -------------------------------------------------------------------------------- /src/i18n/es.js: -------------------------------------------------------------------------------- 1 | const es={ 2 | $vuetify: { 3 | badge: 'Placa', 4 | close: 'Cerrar', 5 | dataIterator: { 6 | noResultsText: 'Ningún elemento coincide con la búsqueda', 7 | loadingText: 'Cargando...' 8 | }, 9 | dataTable: { 10 | itemsPerPageText: 'Filas por página:', 11 | ariaLabel: { 12 | sortDescending: 'Orden descendente.', 13 | sortAscending: 'Orden ascendente.', 14 | sortNone: 'Sin ordenar.', 15 | activateNone: 'Pulse para quitar orden.', 16 | activateDescending: 'Pulse para ordenar descendente.', 17 | activateAscending: 'Pulse para ordenar ascendente.' 18 | }, 19 | sortBy: 'Ordenado por' 20 | }, 21 | dataFooter: { 22 | itemsPerPageText: 'Elementos por página:', 23 | itemsPerPageAll: 'Todos', 24 | nextPage: 'Página siguiente', 25 | prevPage: 'Página anterior', 26 | firstPage: 'Primer página', 27 | lastPage: 'Última página', 28 | pageText: '{0}-{1} de {2}' 29 | }, 30 | datePicker: { 31 | itemsSelected: '{0} seleccionados', 32 | nextMonthAriaLabel: 'Próximo mes', 33 | nextYearAriaLabel: 'Próximo año', 34 | prevMonthAriaLabel: 'Mes anterior', 35 | prevYearAriaLabel: 'Año anterior' 36 | }, 37 | noDataText: 'No hay datos disponibles', 38 | carousel: { 39 | prev: 'Visual anterior', 40 | next: 'Visual siguiente', 41 | ariaLabel: { 42 | delimiter: 'Carousel slide {0} of {1}' 43 | } 44 | }, 45 | calendar: { 46 | moreEvents: '{0} más' 47 | }, 48 | fileInput: { 49 | counter: '{0} archivos', 50 | counterSize: '{0} archivos ({1} en total)' 51 | }, 52 | timePicker: { 53 | am: 'AM', 54 | pm: 'PM' 55 | }, 56 | pagination: { 57 | ariaLabel: { 58 | wrapper: 'Navegación de paginación', 59 | next: 'Página siguiente', 60 | previous: 'Página anterior', 61 | page: 'Ir a la página {0}', 62 | currentPage: 'Página actual, página {0}' 63 | } 64 | }, 65 | rating: { 66 | ariaLabel: { 67 | icon: 'Rating {0} of {1}' 68 | } 69 | } 70 | }, 71 | dashboard:"Tablero", 72 | signin:"Iniciar Sesión", 73 | registration:"Registro", 74 | forgetpassword:"Contraseña Olvidada", 75 | recoverpassword:"Recuperar Contraseña", 76 | setting:"Configuración", 77 | createyourount:"Crea tu cuenta", 78 | Bookings:'Reservaciones', 79 | Revenue:'Ingresos', 80 | 'New Guests':'Nuevos invitados', 81 | Occupancy:'Ocupación', 82 | eventcalendar:'Calendario de eventos', 83 | profilesetting:'Ajustes de perfil', 84 | accountsetting:'Configuración de cuenta', 85 | changepassword:'Cambiar la contraseña', 86 | 'Profile':'Perfil', 87 | 'Account':'Cuenta', 88 | 'Change Password':'Cambiar la contraseña' 89 | }; 90 | export default es; -------------------------------------------------------------------------------- /src/i18n/en.js: -------------------------------------------------------------------------------- 1 | const en= { 2 | $vuetify: { 3 | badge: 'Badge', 4 | close: 'Close', 5 | dataIterator: { 6 | noResultsText: 'No matching records found', 7 | loadingText: 'Loading items...' 8 | }, 9 | dataTable: { 10 | itemsPerPageText: 'Rows per page:', 11 | ariaLabel: { 12 | sortDescending: 'Sorted descending.', 13 | sortAscending: 'Sorted ascending.', 14 | sortNone: 'Not sorted.', 15 | activateNone: 'Activate to remove sorting.', 16 | activateDescending: 'Activate to sort descending.', 17 | activateAscending: 'Activate to sort ascending.' 18 | }, 19 | sortBy: 'Sort by' 20 | }, 21 | dataFooter: { 22 | itemsPerPageText: 'Items per page:', 23 | itemsPerPageAll: 'All', 24 | nextPage: 'Next page', 25 | prevPage: 'Previous page', 26 | firstPage: 'First page', 27 | lastPage: 'Last page', 28 | pageText: '{0}-{1} of {2}' 29 | }, 30 | datePicker: { 31 | itemsSelected: '{0} selected', 32 | nextMonthAriaLabel: 'Next month', 33 | nextYearAriaLabel: 'Next year', 34 | prevMonthAriaLabel: 'Previous month', 35 | prevYearAriaLabel: 'Previous year' 36 | }, 37 | noDataText: 'No data available', 38 | carousel: { 39 | prev: 'Previous visual', 40 | next: 'Next visual', 41 | ariaLabel: { 42 | delimiter: 'Carousel slide {0} of {1}' 43 | } 44 | }, 45 | calendar: { 46 | moreEvents: '{0} more' 47 | }, 48 | fileInput: { 49 | counter: '{0} files', 50 | counterSize: '{0} files ({1} in total)' 51 | }, 52 | timePicker: { 53 | am: 'AM', 54 | pm: 'PM' 55 | }, 56 | pagination: { 57 | ariaLabel: { 58 | wrapper: 'Pagination Navigation', 59 | next: 'Next page', 60 | previous: 'Previous page', 61 | page: 'Goto Page {0}', 62 | currentPage: 'Current Page, Page {0}' 63 | } 64 | }, 65 | rating: { 66 | ariaLabel: { 67 | icon: 'Rating {0} of {1}' 68 | } 69 | } 70 | }, 71 | dashboard:"Dashboard", 72 | signin:"Sign In", 73 | registration:"Registration", 74 | forgetpassword:"Forget Password", 75 | recoverpassword:"Recover Password", 76 | setting:"Settings", 77 | createyourount:"Create your account", 78 | Bookings:'Bookings', 79 | Revenue:'Revenue', 80 | 'New Guests':'New Guests', 81 | Occupancy:'Occupancy', 82 | eventcalendar:'Event calendar', 83 | profilesetting:'Profile Setting', 84 | accountsetting:'Account Setting', 85 | changepassword:'Change Password', 86 | 'Profile':'Profile', 87 | 'Account':'Account', 88 | 'Change Password':'Change Password' 89 | 90 | } 91 | export default en; -------------------------------------------------------------------------------- /src/i18n/sv.js: -------------------------------------------------------------------------------- 1 | const sv={ 2 | $vuetify: { 3 | badge: 'Bricka', 4 | close: 'Stäng', 5 | dataIterator: { 6 | noResultsText: 'Inga poster funna', 7 | oadingText: 'Laddar data...' 8 | }, 9 | dataTable: { 10 | itemsPerPageText: 'Rader per sida:', 11 | ariaLabel: { 12 | sortDescending: 'Sorterat fallande.', 13 | sortAscending: 'Sorterat stigande.', 14 | sortNone: 'Osorterat.', 15 | activateNone: 'Aktivera för att ta bort sortering.', 16 | activateDescending: 'Aktivera för sortering fallande.', 17 | activateAscending: 'Aktivera för sortering stigande.' 18 | }, 19 | sortBy: 'Sortera efter' 20 | }, 21 | dataFooter: { 22 | itemsPerPageText: 'Objekt per sida:', 23 | itemsPerPageAll: 'Alla', 24 | nextPage: 'Nästa sida', 25 | prevPage: 'Föregående sida', 26 | firstPage: 'Första sidan', 27 | lastPage: 'Sista sidan', 28 | pageText: '{0}-{1} av {2}' 29 | }, 30 | datePicker: { 31 | itemsSelected: '{0} markerade', 32 | nextMonthAriaLabel: 'Nästa månad', 33 | nextYearAriaLabel: 'Nästa år', 34 | prevMonthAriaLabel: 'Förra månaden', 35 | prevYearAriaLabel: 'Förra året' 36 | }, 37 | noDataText: 'Ingen data tillgänglig', 38 | carousel: { 39 | prev: 'Föregående vy', 40 | next: 'Nästa vy', 41 | ariaLabel: { 42 | delimiter: 'Carousel slide {0} of {1}' 43 | } 44 | }, 45 | calendar: { 46 | moreEvents: '{0} fler' 47 | }, 48 | fileInput: { 49 | counter: '{0} filer', 50 | counterSize: '{0} filer (av {1} totalt)' 51 | }, 52 | timePicker: { 53 | am: 'AM', 54 | pm: 'PM' 55 | }, 56 | pagination: { 57 | ariaLabel: { 58 | wrapper: 'Pagination Navigation', 59 | next: 'Nästa sida', 60 | previous: 'Föregående sida', 61 | page: 'Gå till sidan {0}', 62 | currentPage: 'Aktuell sida, sida {0}' 63 | } 64 | }, 65 | rating: { 66 | ariaLabel: { 67 | icon: 'Rating {0} of {1}' 68 | } 69 | } 70 | }, 71 | dashboard:"Instrumentbräda", 72 | signin:"Logga In", 73 | registration:"Registrering", 74 | forgetpassword:"Glöm lösenord", 75 | recoverpassword:"Återställa lösenord", 76 | setting:"Miljö", 77 | createyourount:"Skapa ditt konto", 78 | Bookings:'Bokningar', 79 | Revenue:'Inkomst', 80 | 'New Guests':'Nya gäster', 81 | Occupancy:'Beläggning', 82 | eventcalendar:'Evenemangskalender', 83 | profilesetting:'Profilinställning', 84 | accountsetting:'Kontoinställning', 85 | changepassword:'Ändra lösenord', 86 | 'Profile':'Profil', 87 | 'Account':'konto', 88 | 'Change Password':'Ändra lösenord' 89 | } 90 | export default sv; -------------------------------------------------------------------------------- /src/pages/authenticated/setting/Setting.vue: -------------------------------------------------------------------------------- 1 | 78 | -------------------------------------------------------------------------------- /src/pages/authenticated/calendar/components/EventForm.vue: -------------------------------------------------------------------------------- 1 | 39 | -------------------------------------------------------------------------------- /src/pages/authenticated/dashboard/Dashboard.vue: -------------------------------------------------------------------------------- 1 | 34 | 99 | -------------------------------------------------------------------------------- /src/data/expectedRevenue.js: -------------------------------------------------------------------------------- 1 | const expectedRevenue={ 2 | background:'white', 3 | series: [{ 4 | name: "Revenue", 5 | data: [45, 52, 38, 24, 33, 26, 21, 20, 6, 8, 15, 10] 6 | }, 7 | { 8 | name: "Expected Revenue", 9 | data: [35, 41, 62, 42, 13, 18, 29, 37, 36, 51, 32, 35] 10 | }, 11 | ], 12 | chartOptions: { 13 | chart: { 14 | toolbar: { 15 | show: false, 16 | offsetX: 0, 17 | offsetY: 0, 18 | tools: { 19 | download: true, 20 | selection: true, 21 | zoom: true, 22 | zoomin: true, 23 | zoomout: true, 24 | pan: true, 25 | reset: true, 26 | customIcons: [] 27 | }, 28 | export: { 29 | csv: { 30 | filename: undefined, 31 | columnDelimiter: ',', 32 | headerCategory: 'category', 33 | headerValue: 'value', 34 | dateFormatter(timestamp) { 35 | return new Date(timestamp).toDateString() 36 | } 37 | }, 38 | svg: { 39 | filename: undefined, 40 | }, 41 | png: { 42 | filename: undefined, 43 | } 44 | }, 45 | autoSelected: 'zoom' 46 | }, 47 | height: 350, 48 | type: 'line', 49 | zoom: { 50 | enabled: true, 51 | type: 'x', 52 | autoScaleYaxis: false, 53 | zoomedArea: { 54 | fill: { 55 | color: '#90CAF9', 56 | opacity: 0.4 57 | }, 58 | stroke: { 59 | color: '#0D47A1', 60 | opacity: 0.4, 61 | width: 1 62 | } 63 | } 64 | } 65 | }, 66 | dataLabels: { 67 | enabled: false 68 | }, 69 | stroke: { 70 | width: [5, 7, 5], 71 | curve: 'smooth', 72 | dashArray: [0, 8, 5] 73 | }, 74 | colors:["#0f7e02","#8c8c8c"], 75 | chartTitle: { 76 | text: 'Actual Revenue V Expected Revenue', 77 | }, 78 | legend: { 79 | tooltipHoverFormatter: function(val, opts) { 80 | return val + ' - ' + opts.w.globals.series[opts.seriesIndex][opts.dataPointIndex] + '' 81 | } 82 | }, 83 | markers: { 84 | size: 0, 85 | hover: { 86 | sizeOffset: 6 87 | } 88 | }, 89 | xaxis: { 90 | categories: ['Jan-21', 'Feb-21', 'Mar-21', 'Apr-21', 'May-21', 'Jun-21', 'Jul-21', 'Aug-21', 'Sep-21', 91 | 'Oct-21', 'Nov-21', 'Dec-21' 92 | ], 93 | }, 94 | tooltip: { 95 | theme:true, 96 | y: [ 97 | { 98 | title: { 99 | formatter: function (val) { 100 | return "INR "+val + "(lakhs)" 101 | } 102 | } 103 | }, 104 | { 105 | title: { 106 | formatter: function (val) { 107 | return "INR "+val + "(lakhs)" 108 | } 109 | } 110 | }, 111 | ] 112 | }, 113 | grid: { 114 | borderColor: '#f1f1f1', 115 | } 116 | }, 117 | } 118 | export default expectedRevenue -------------------------------------------------------------------------------- /src/pages/public/forget_password/ForgetPassword.vue: -------------------------------------------------------------------------------- 1 | 85 | 86 | 139 | 141 | -------------------------------------------------------------------------------- /src/layout/Public.vue: -------------------------------------------------------------------------------- 1 | 87 | 113 | 122 | -------------------------------------------------------------------------------- /src/pages/authenticated/profile/ProfileSetting.vue: -------------------------------------------------------------------------------- 1 | 107 | -------------------------------------------------------------------------------- /src/configs/menus.js: -------------------------------------------------------------------------------- 1 | const menus= [ 2 | { 3 | icon: 'mdi-view-dashboard', 4 | children: [], 5 | title: 'Dashboard', 6 | route:'Dashboard', 7 | external:false, 8 | params:null, 9 | }, 10 | { 11 | icon: 'mdi-calendar', 12 | children: [], 13 | title: 'Event Calendar', 14 | route:'EventCalendar', 15 | external:false, 16 | params:null, 17 | }, 18 | { 19 | icon: 'mdi-cog', 20 | children: [], 21 | title: 'Setting', 22 | route:'Settings', 23 | external:false, 24 | params:null, 25 | }, 26 | { 27 | icon: 'mdi-connection', 28 | active: false, 29 | children: [ 30 | { 31 | 32 | title: 'Alert', 33 | route:'https://vuetifyjs.com/en/components/alerts', 34 | icon: 'mdi-alert', 35 | external:true, 36 | params:null, 37 | }, 38 | { 39 | 40 | title: 'Buttons', 41 | route:'https://vuetifyjs.com/en/components/buttons/', 42 | icon: 'mdi-gesture-tap-button', 43 | external:true, 44 | params:null, 45 | }, 46 | { 47 | 48 | title: 'Calendar', 49 | route:'https://vuetifyjs.com/en/components/calendars/', 50 | icon: 'mdi-calendar', 51 | params:null, 52 | external:true, 53 | }, 54 | { 55 | 56 | title: 'Drawer', 57 | route:'https://vuetifyjs.com/en/components/navigation-drawers/', 58 | icon: 'mdi-format-horizontal-align-center', 59 | external:true, 60 | params:null, 61 | }, 62 | 63 | { 64 | 65 | title: 'Cards', 66 | route:'https://vuetifyjs.com/en/components/cards/', 67 | icon: 'mdi-card-outline', 68 | external:true, 69 | params:null, 70 | }, 71 | { 72 | 73 | title: 'Grid System', 74 | route:'https://vuetifyjs.com/en/components/grids', 75 | icon: 'mdi-grid', 76 | external:true, 77 | params:null, 78 | }, 79 | { 80 | 81 | title: 'Date Picker', 82 | route:'https://vuetifyjs.com/en/components/date-pickers/', 83 | icon: 'mdi-calendar-range', 84 | external:true, 85 | params:null, 86 | }, 87 | { 88 | title: 'More Components', 89 | route:'https://vuetifyjs.com', 90 | icon: 'mdi-dots-horizontal', 91 | external:true, 92 | params:null, 93 | }, 94 | 95 | ], 96 | title: 'Components', 97 | external:false, 98 | params:null, 99 | }, 100 | { 101 | icon: 'mdi-chart-bar', 102 | children: [], 103 | title: 'Apex Chart', 104 | route:'https://apexcharts.com/vue-chart-demos/', 105 | external:true, 106 | params:null, 107 | }, 108 | { 109 | icon: 'mdi-text-box-multiple', 110 | children: [ 111 | { 112 | 113 | title: 'Registration', 114 | route:'PageRegistration', 115 | icon: 'mdi-account-plus', 116 | params:{context:"page"}, 117 | external:false, 118 | }, 119 | { 120 | 121 | title: 'Sign In', 122 | route:'PageSignIn', 123 | icon: 'mdi-login', 124 | params:{context:"page"}, 125 | external:false, 126 | }, 127 | { 128 | 129 | title: 'Forget Password', 130 | route:'PageForgetPassword', 131 | icon: 'mdi-lock', 132 | params:{context:"page"}, 133 | external:false, 134 | }, 135 | { 136 | 137 | title: 'Recover Password', 138 | route:'PageRecoverPassword', 139 | icon: 'mdi-lock', 140 | params:{context:"page"}, 141 | external:false, 142 | }, 143 | ], 144 | title: 'Pages', 145 | route:'', 146 | external:false, 147 | params:null, 148 | }, 149 | ] 150 | export default menus; -------------------------------------------------------------------------------- /src/layout/components/Drawer.vue: -------------------------------------------------------------------------------- 1 | 82 | 114 | -------------------------------------------------------------------------------- /src/pages/public/forget_password/RecoverPassword.vue: -------------------------------------------------------------------------------- 1 | 103 | 104 | 166 | 168 | -------------------------------------------------------------------------------- /src/pages/public/singin/SingIn.vue: -------------------------------------------------------------------------------- 1 | 101 | 102 | 176 | 178 | -------------------------------------------------------------------------------- /src/router/Router.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Router from 'vue-router' 3 | Vue.use(Router) 4 | export default new Router({ 5 | mode: 'history', 6 | base: process.env.BASE_URL, 7 | routes: [ 8 | { 9 | path: '', 10 | components: { 11 | root: () => import('./../layout/Public'), 12 | }, 13 | children: [ 14 | { 15 | path: '', 16 | name: 'SingIn', 17 | meta: { name: 'Sign In' }, 18 | components: { 19 | public: () => import('../pages/public/singin/SingIn'), 20 | }, 21 | }, 22 | { 23 | path: '/authentication/forget/password', 24 | name: 'ForgetPassword', 25 | meta: { name: 'Forget Password' }, 26 | components: { 27 | public: () => import('../pages/public/forget_password/ForgetPassword'), 28 | }, 29 | }, 30 | { 31 | path: '/authentication/recover/password', 32 | name: 'RecoverPassword', 33 | meta: { name: 'Recover Password' }, 34 | components: { 35 | public: () => import('../pages/public/forget_password/RecoverPassword'), 36 | }, 37 | }, 38 | ], 39 | }, 40 | { 41 | path: '/user', 42 | components: { 43 | root: () => import('../layout/Dashboard'), 44 | }, 45 | children: [ 46 | { 47 | path: '', 48 | name: 'Dashboard', 49 | meta: { name: 'dashboard' }, 50 | components: { 51 | admin: () => import('../pages/authenticated/dashboard/Dashboard'), 52 | }, 53 | }, 54 | { 55 | path: 'page/singin/:context', 56 | name: 'PageSignIn', 57 | meta: { name: 'signin' }, 58 | components: { 59 | admin: () => import('../pages/public/singin/SingIn'), 60 | }, 61 | }, 62 | { 63 | path: 'page/forget/password/:context', 64 | name: 'PageForgetPassword', 65 | meta: { name: 'recoverpassword' }, 66 | components: { 67 | admin: () => import('../pages/public/forget_password/ForgetPassword'), 68 | }, 69 | }, 70 | { 71 | path: 'page/recover/password/:context', 72 | name: 'PageRecoverPassword', 73 | meta: { name: 'forgetpassword' }, 74 | components: { 75 | admin: () => import('../pages/public/forget_password/RecoverPassword'), 76 | }, 77 | }, 78 | { 79 | path: 'page/create/account/:context', 80 | name: 'PageRegistration', 81 | meta: { name: 'registration' }, 82 | components: { 83 | admin: () => import('../pages/public/registration/Registration'), 84 | } 85 | }, 86 | { 87 | path: 'page/calendar/event', 88 | name: 'EventCalendar', 89 | meta: { name: 'eventcalendar' }, 90 | components: { 91 | admin: () => import('../pages/authenticated/calendar/EventCalendar'), 92 | }, 93 | }, 94 | 95 | { 96 | path: '/settings', 97 | name: 'Settings', 98 | meta: { name: 'setting' }, 99 | components: { 100 | admin: () => import('../pages/authenticated/setting/Setting'), 101 | }, 102 | redirect: { 103 | name: 'ProfileSetting' 104 | }, 105 | children:[ 106 | { 107 | path: '', 108 | name: 'ProfileSetting', 109 | meta: { name: 'profilesetting' }, 110 | components: { 111 | setting: () => import('../pages/authenticated/profile/ProfileSetting'), 112 | }, 113 | }, 114 | { 115 | path: 'account', 116 | name: 'AccountSetting', 117 | meta: { name: 'accountsetting' }, 118 | components: { 119 | setting: () => import('../pages/authenticated/account/AccountSetting'), 120 | }, 121 | }, 122 | { 123 | path: 'change/password', 124 | name: 'ChangePasswordSetting', 125 | meta: { name: 'changepassword' }, 126 | components: { 127 | setting: () => import('../pages/authenticated/password/ChangePassword'), 128 | }, 129 | }, 130 | ] 131 | }, 132 | { 133 | path: '/logout', 134 | name: 'Logout', 135 | meta: { name: 'Logout' }, 136 | components: { 137 | admin: () => import('../pages/authenticated/Logout'), 138 | }, 139 | }, 140 | 141 | ], 142 | }, 143 | 144 | ], 145 | scrollBehavior (to, from, savedPosition) { 146 | if (savedPosition) { 147 | return savedPosition 148 | } else { 149 | return { x: 0, y: 0 } 150 | } 151 | } 152 | }) 153 | -------------------------------------------------------------------------------- /src/App.vue: -------------------------------------------------------------------------------- 1 | 48 | 49 | 125 | 185 | -------------------------------------------------------------------------------- /src/pages/public/registration/Registration.vue: -------------------------------------------------------------------------------- 1 | 125 | 126 | 212 | 214 | -------------------------------------------------------------------------------- /src/layout/components/AppBar.vue: -------------------------------------------------------------------------------- 1 | 127 | 189 | -------------------------------------------------------------------------------- /src/data/dashboardData.js: -------------------------------------------------------------------------------- 1 | let DashboardData= [ 2 | { 3 | icon:'mdi-sigma', 4 | title:"Bookings", 5 | value:"556", 6 | currency:null, 7 | background: "", 8 | series: [{ 9 | name: "Total bookings", 10 | labels: { 11 | show: false, 12 | }, 13 | data: [10, 41, 35, 51, 49, 62, 69, 91, 148] 14 | }], 15 | chartOptions: { 16 | tooltip: { 17 | theme:true 18 | }, 19 | colors:["#fff"], 20 | chart: { 21 | width: '100%', 22 | toolbar: { 23 | show: false 24 | }, 25 | height: 100, 26 | type: 'line', 27 | zoom: { 28 | enabled: false 29 | }, 30 | dropShadow: { 31 | enabled: true, 32 | color: '#000', 33 | top: 18, 34 | left: 7, 35 | blur: 10, 36 | opacity: 0.2 37 | }, 38 | }, 39 | dataLabels: { 40 | enabled: false 41 | }, 42 | stroke: { 43 | curve: 'smooth' 44 | }, 45 | grid: { 46 | show: false 47 | }, 48 | xaxis: { 49 | labels: { 50 | show: false, 51 | }, 52 | axisBorder: { 53 | show: false, 54 | }, 55 | axisTicks: { 56 | show: false, 57 | }, 58 | categories: ['Jan-21', 'Feb-21', 'Mar-21', 'Apr-21', 'May-21', 'Jun-21', 'Jul-21', 'Aug-21', 'Sep-21'], 59 | }, 60 | yaxis: { 61 | show: false, 62 | }, 63 | }, 64 | }, 65 | { 66 | icon:'mdi-currency-usd', 67 | title:"Revenue", 68 | value:"1141 Lakhs", 69 | currency:"INR", 70 | background: "", 71 | series: [{ 72 | name: "Total revenue in lakhs", 73 | labels: { 74 | show: false, 75 | }, 76 | data: [20, 45, 35, 96, 36, 140, 121, 91, 148] 77 | }], 78 | chartOptions: { 79 | tooltip: { 80 | theme:true 81 | }, 82 | colors:["#fff"], 83 | chart: { 84 | width: '100%', 85 | toolbar: { 86 | show: false 87 | }, 88 | height: 100, 89 | type: 'line', 90 | zoom: { 91 | enabled: false 92 | }, 93 | dropShadow: { 94 | enabled: true, 95 | color: '#000', 96 | top: 18, 97 | left: 7, 98 | blur: 10, 99 | opacity: 0.2 100 | }, 101 | }, 102 | dataLabels: { 103 | enabled: false 104 | }, 105 | stroke: { 106 | curve: 'smooth' 107 | }, 108 | grid: { 109 | show: false 110 | }, 111 | xaxis: { 112 | labels: { 113 | show: false, 114 | }, 115 | axisBorder: { 116 | show: false, 117 | }, 118 | axisTicks: { 119 | show: false, 120 | }, 121 | categories: ['Jan-21', 'Feb-21', 'Mar-21', 'Apr-21', 'May-21', 'Jun-21', 'Jul-21', 'Aug-21', 'Sep-21'], 122 | }, 123 | yaxis: { 124 | show: false, 125 | }, 126 | }, 127 | }, 128 | { 129 | icon:'mdi-account-circle', 130 | title:"New Guests", 131 | value:"3566", 132 | currency:null, 133 | background: "", 134 | series: [{ 135 | name: "Total users", 136 | labels: { 137 | show: false, 138 | }, 139 | data: [120, 168, 96, 142, 127, 420, 600, 870, 1023] 140 | }], 141 | chartOptions: { 142 | tooltip: { 143 | theme:true 144 | }, 145 | colors:["#fff"], 146 | chart: { 147 | width: '100%', 148 | toolbar: { 149 | show: false 150 | }, 151 | height: 100, 152 | type: 'line', 153 | zoom: { 154 | enabled: false 155 | }, 156 | dropShadow: { 157 | enabled: true, 158 | color: '#000', 159 | top: 18, 160 | left: 7, 161 | blur: 10, 162 | opacity: 0.2 163 | }, 164 | }, 165 | dataLabels: { 166 | enabled: false 167 | }, 168 | stroke: { 169 | curve: 'smooth' 170 | }, 171 | grid: { 172 | show: false 173 | }, 174 | xaxis: { 175 | labels: { 176 | show: false, 177 | }, 178 | axisBorder: { 179 | show: false, 180 | }, 181 | axisTicks: { 182 | show: false, 183 | }, 184 | categories: ['Jan-21', 'Feb-21', 'Mar-21', 'Apr-21', 'May-21', 'Jun-21', 'Jul-21', 'Aug-21', 'Sep-21'], 185 | }, 186 | yaxis: { 187 | show: false, 188 | }, 189 | }, 190 | }, 191 | { 192 | icon:'mdi-bed', 193 | title:"Occupancy", 194 | value:"86%", 195 | currency:null, 196 | background: "", 197 | series: [{ 198 | name: "Room occupancy", 199 | labels: { 200 | show: false, 201 | }, 202 | data: [85, 65, 85, 36, 45, 96, 100, 75, 86] 203 | }], 204 | chartOptions: { 205 | colors:["#fff"], 206 | chart: { 207 | width: '100%', 208 | toolbar: { 209 | show: false 210 | }, 211 | height: 100, 212 | type: 'line', 213 | zoom: { 214 | enabled: false 215 | }, 216 | dropShadow: { 217 | enabled: true, 218 | color: '#000', 219 | top: 18, 220 | left: 7, 221 | blur: 10, 222 | opacity: 0.2 223 | }, 224 | }, 225 | dataLabels: { 226 | enabled: false 227 | }, 228 | stroke: { 229 | curve: 'smooth' 230 | }, 231 | grid: { 232 | show: false 233 | }, 234 | xaxis: { 235 | labels: { 236 | show: false, 237 | }, 238 | axisBorder: { 239 | show: false, 240 | }, 241 | axisTicks: { 242 | show: false, 243 | }, 244 | categories: ['Jan-21', 'Feb-21', 'Mar-21', 'Apr-21', 'May-21', 'Jun-21', 'Jul-21', 'Aug-21', 'Sep-21'], 245 | }, 246 | yaxis: { 247 | show: false, 248 | }, 249 | tooltip: { 250 | theme:true, 251 | y: [ 252 | { 253 | title: { 254 | formatter: function (val) { 255 | return val+" percent" 256 | } 257 | } 258 | } 259 | ] 260 | } 261 | }, 262 | } 263 | ] 264 | export default DashboardData -------------------------------------------------------------------------------- /src/pages/authenticated/calendar/EventCalendar.vue: -------------------------------------------------------------------------------- 1 | 120 | 267 | -------------------------------------------------------------------------------- /src/assets/states-and-districts.json: -------------------------------------------------------------------------------- 1 | { 2 | "states":[ 3 | { 4 | "state":"Andhra Pradesh", 5 | "districts":[ 6 | "Anantapur", 7 | "Chittoor", 8 | "East Godavari", 9 | "Guntur", 10 | "Krishna", 11 | "Kurnool", 12 | "Nellore", 13 | "Prakasam", 14 | "Srikakulam", 15 | "Visakhapatnam", 16 | "Vizianagaram", 17 | "West Godavari", 18 | "YSR Kadapa" 19 | ] 20 | }, 21 | { 22 | "state":"Arunachal Pradesh", 23 | "districts":[ 24 | "Tawang", 25 | "West Kameng", 26 | "East Kameng", 27 | "Papum Pare", 28 | "Kurung Kumey", 29 | "Kra Daadi", 30 | "Lower Subansiri", 31 | "Upper Subansiri", 32 | "West Siang", 33 | "East Siang", 34 | "Siang", 35 | "Upper Siang", 36 | "Lower Siang", 37 | "Lower Dibang Valley", 38 | "Dibang Valley", 39 | "Anjaw", 40 | "Lohit", 41 | "Namsai", 42 | "Changlang", 43 | "Tirap", 44 | "Longding" 45 | ] 46 | }, 47 | { 48 | "state":"Assam", 49 | "districts":[ 50 | "Baksa", 51 | "Barpeta", 52 | "Biswanath", 53 | "Bongaigaon", 54 | "Cachar", 55 | "Charaideo", 56 | "Chirang", 57 | "Darrang", 58 | "Dhemaji", 59 | "Dhubri", 60 | "Dibrugarh", 61 | "Goalpara", 62 | "Golaghat", 63 | "Hailakandi", 64 | "Hojai", 65 | "Jorhat", 66 | "Kamrup Metropolitan", 67 | "Kamrup", 68 | "Karbi Anglong", 69 | "Karimganj", 70 | "Kokrajhar", 71 | "Lakhimpur", 72 | "Majuli", 73 | "Morigaon", 74 | "Nagaon", 75 | "Nalbari", 76 | "Dima Hasao", 77 | "Sivasagar", 78 | "Sonitpur", 79 | "South Salmara-Mankachar", 80 | "Tinsukia", 81 | "Udalguri", 82 | "West Karbi Anglong" 83 | ] 84 | }, 85 | { 86 | "state":"Bihar", 87 | "districts":[ 88 | "Araria", 89 | "Arwal", 90 | "Aurangabad", 91 | "Banka", 92 | "Begusarai", 93 | "Bhagalpur", 94 | "Bhojpur", 95 | "Buxar", 96 | "Darbhanga", 97 | "East Champaran (Motihari)", 98 | "Gaya", 99 | "Gopalganj", 100 | "Jamui", 101 | "Jehanabad", 102 | "Kaimur (Bhabua)", 103 | "Katihar", 104 | "Khagaria", 105 | "Kishanganj", 106 | "Lakhisarai", 107 | "Madhepura", 108 | "Madhubani", 109 | "Munger (Monghyr)", 110 | "Muzaffarpur", 111 | "Nalanda", 112 | "Nawada", 113 | "Patna", 114 | "Purnia (Purnea)", 115 | "Rohtas", 116 | "Saharsa", 117 | "Samastipur", 118 | "Saran", 119 | "Sheikhpura", 120 | "Sheohar", 121 | "Sitamarhi", 122 | "Siwan", 123 | "Supaul", 124 | "Vaishali", 125 | "West Champaran" 126 | ] 127 | }, 128 | { 129 | "state":"Chandigarh (UT)", 130 | "districts":[ 131 | "Chandigarh" 132 | ] 133 | }, 134 | { 135 | "state":"Chhattisgarh", 136 | "districts":[ 137 | "Balod", 138 | "Baloda Bazar", 139 | "Balrampur", 140 | "Bastar", 141 | "Bemetara", 142 | "Bijapur", 143 | "Bilaspur", 144 | "Dantewada (South Bastar)", 145 | "Dhamtari", 146 | "Durg", 147 | "Gariyaband", 148 | "Janjgir-Champa", 149 | "Jashpur", 150 | "Kabirdham (Kawardha)", 151 | "Kanker (North Bastar)", 152 | "Kondagaon", 153 | "Korba", 154 | "Korea (Koriya)", 155 | "Mahasamund", 156 | "Mungeli", 157 | "Narayanpur", 158 | "Raigarh", 159 | "Raipur", 160 | "Rajnandgaon", 161 | "Sukma", 162 | "Surajpur ", 163 | "Surguja" 164 | ] 165 | }, 166 | { 167 | "state":"Dadra and Nagar Haveli (UT)", 168 | "districts":[ 169 | "Dadra & Nagar Haveli" 170 | ] 171 | }, 172 | { 173 | "state":"Daman and Diu (UT)", 174 | "districts":[ 175 | "Daman", 176 | "Diu" 177 | ] 178 | }, 179 | { 180 | "state":"Delhi (NCT)", 181 | "districts":[ 182 | "Central Delhi", 183 | "East Delhi", 184 | "New Delhi", 185 | "North Delhi", 186 | "North East Delhi", 187 | "North West Delhi", 188 | "Shahdara", 189 | "South Delhi", 190 | "South East Delhi", 191 | "South West Delhi", 192 | "West Delhi" 193 | ] 194 | }, 195 | { 196 | "state":"Goa", 197 | "districts":[ 198 | "North Goa", 199 | "South Goa" 200 | ] 201 | }, 202 | { 203 | "state":"Gujarat", 204 | "districts":[ 205 | "Ahmedabad", 206 | "Amreli", 207 | "Anand", 208 | "Aravalli", 209 | "Banaskantha (Palanpur)", 210 | "Bharuch", 211 | "Bhavnagar", 212 | "Botad", 213 | "Chhota Udepur", 214 | "Dahod", 215 | "Dangs (Ahwa)", 216 | "Devbhoomi Dwarka", 217 | "Gandhinagar", 218 | "Gir Somnath", 219 | "Jamnagar", 220 | "Junagadh", 221 | "Kachchh", 222 | "Kheda (Nadiad)", 223 | "Mahisagar", 224 | "Mehsana", 225 | "Morbi", 226 | "Narmada (Rajpipla)", 227 | "Navsari", 228 | "Panchmahal (Godhra)", 229 | "Patan", 230 | "Porbandar", 231 | "Rajkot", 232 | "Sabarkantha (Himmatnagar)", 233 | "Surat", 234 | "Surendranagar", 235 | "Tapi (Vyara)", 236 | "Vadodara", 237 | "Valsad" 238 | ] 239 | }, 240 | { 241 | "state":"Haryana", 242 | "districts":[ 243 | "Ambala", 244 | "Bhiwani", 245 | "Charkhi Dadri", 246 | "Faridabad", 247 | "Fatehabad", 248 | "Gurgaon", 249 | "Hisar", 250 | "Jhajjar", 251 | "Jind", 252 | "Kaithal", 253 | "Karnal", 254 | "Kurukshetra", 255 | "Mahendragarh", 256 | "Mewat", 257 | "Palwal", 258 | "Panchkula", 259 | "Panipat", 260 | "Rewari", 261 | "Rohtak", 262 | "Sirsa", 263 | "Sonipat", 264 | "Yamunanagar" 265 | ] 266 | }, 267 | { 268 | "state":"Himachal Pradesh", 269 | "districts":[ 270 | "Bilaspur", 271 | "Chamba", 272 | "Hamirpur", 273 | "Kangra", 274 | "Kinnaur", 275 | "Kullu", 276 | "Lahaul & Spiti", 277 | "Mandi", 278 | "Shimla", 279 | "Sirmaur (Sirmour)", 280 | "Solan", 281 | "Una" 282 | ] 283 | }, 284 | { 285 | "state":"Jammu and Kashmir", 286 | "districts":[ 287 | "Anantnag", 288 | "Bandipore", 289 | "Baramulla", 290 | "Budgam", 291 | "Doda", 292 | "Ganderbal", 293 | "Jammu", 294 | "Kargil", 295 | "Kathua", 296 | "Kishtwar", 297 | "Kulgam", 298 | "Kupwara", 299 | "Leh", 300 | "Poonch", 301 | "Pulwama", 302 | "Rajouri", 303 | "Ramban", 304 | "Reasi", 305 | "Samba", 306 | "Shopian", 307 | "Srinagar", 308 | "Udhampur" 309 | ] 310 | }, 311 | { 312 | "state":"Jharkhand", 313 | "districts":[ 314 | "Bokaro", 315 | "Chatra", 316 | "Deoghar", 317 | "Dhanbad", 318 | "Dumka", 319 | "East Singhbhum", 320 | "Garhwa", 321 | "Giridih", 322 | "Godda", 323 | "Gumla", 324 | "Hazaribag", 325 | "Jamtara", 326 | "Khunti", 327 | "Koderma", 328 | "Latehar", 329 | "Lohardaga", 330 | "Pakur", 331 | "Palamu", 332 | "Ramgarh", 333 | "Ranchi", 334 | "Sahibganj", 335 | "Seraikela-Kharsawan", 336 | "Simdega", 337 | "West Singhbhum" 338 | ] 339 | }, 340 | { 341 | "state":"Karnataka", 342 | "districts":[ 343 | "Bagalkot", 344 | "Ballari (Bellary)", 345 | "Belagavi (Belgaum)", 346 | "Bengaluru (Bangalore) Rural", 347 | "Bengaluru (Bangalore) Urban", 348 | "Bidar", 349 | "Chamarajanagar", 350 | "Chikballapur", 351 | "Chikkamagaluru (Chikmagalur)", 352 | "Chitradurga", 353 | "Dakshina Kannada", 354 | "Davangere", 355 | "Dharwad", 356 | "Gadag", 357 | "Hassan", 358 | "Haveri", 359 | "Kalaburagi (Gulbarga)", 360 | "Kodagu", 361 | "Kolar", 362 | "Koppal", 363 | "Mandya", 364 | "Mysuru (Mysore)", 365 | "Raichur", 366 | "Ramanagara", 367 | "Shivamogga (Shimoga)", 368 | "Tumakuru (Tumkur)", 369 | "Udupi", 370 | "Uttara Kannada (Karwar)", 371 | "Vijayapura (Bijapur)", 372 | "Yadgir" 373 | ] 374 | }, 375 | { 376 | "state":"Kerala", 377 | "districts":[ 378 | "Alappuzha", 379 | "Ernakulam", 380 | "Idukki", 381 | "Kannur", 382 | "Kasaragod", 383 | "Kollam", 384 | "Kottayam", 385 | "Kozhikode", 386 | "Malappuram", 387 | "Palakkad", 388 | "Pathanamthitta", 389 | "Thiruvananthapuram", 390 | "Thrissur", 391 | "Wayanad" 392 | ] 393 | }, 394 | { 395 | "state":"Lakshadweep (UT)", 396 | "districts":[ 397 | "Agatti", 398 | "Amini", 399 | "Androth", 400 | "Bithra", 401 | "Chethlath", 402 | "Kavaratti", 403 | "Kadmath", 404 | "Kalpeni", 405 | "Kilthan", 406 | "Minicoy" 407 | ] 408 | }, 409 | { 410 | "state":"Madhya Pradesh", 411 | "districts":[ 412 | "Agar Malwa", 413 | "Alirajpur", 414 | "Anuppur", 415 | "Ashoknagar", 416 | "Balaghat", 417 | "Barwani", 418 | "Betul", 419 | "Bhind", 420 | "Bhopal", 421 | "Burhanpur", 422 | "Chhatarpur", 423 | "Chhindwara", 424 | "Damoh", 425 | "Datia", 426 | "Dewas", 427 | "Dhar", 428 | "Dindori", 429 | "Guna", 430 | "Gwalior", 431 | "Harda", 432 | "Hoshangabad", 433 | "Indore", 434 | "Jabalpur", 435 | "Jhabua", 436 | "Katni", 437 | "Khandwa", 438 | "Khargone", 439 | "Mandla", 440 | "Mandsaur", 441 | "Morena", 442 | "Narsinghpur", 443 | "Neemuch", 444 | "Panna", 445 | "Raisen", 446 | "Rajgarh", 447 | "Ratlam", 448 | "Rewa", 449 | "Sagar", 450 | "Satna", 451 | "Sehore", 452 | "Seoni", 453 | "Shahdol", 454 | "Shajapur", 455 | "Sheopur", 456 | "Shivpuri", 457 | "Sidhi", 458 | "Singrauli", 459 | "Tikamgarh", 460 | "Ujjain", 461 | "Umaria", 462 | "Vidisha" 463 | ] 464 | }, 465 | { 466 | "state":"Maharashtra", 467 | "districts":[ 468 | "Ahmednagar", 469 | "Akola", 470 | "Amravati", 471 | "Aurangabad", 472 | "Beed", 473 | "Bhandara", 474 | "Buldhana", 475 | "Chandrapur", 476 | "Dhule", 477 | "Gadchiroli", 478 | "Gondia", 479 | "Hingoli", 480 | "Jalgaon", 481 | "Jalna", 482 | "Kolhapur", 483 | "Latur", 484 | "Mumbai City", 485 | "Mumbai Suburban", 486 | "Nagpur", 487 | "Nanded", 488 | "Nandurbar", 489 | "Nashik", 490 | "Osmanabad", 491 | "Palghar", 492 | "Parbhani", 493 | "Pune", 494 | "Raigad", 495 | "Ratnagiri", 496 | "Sangli", 497 | "Satara", 498 | "Sindhudurg", 499 | "Solapur", 500 | "Thane", 501 | "Wardha", 502 | "Washim", 503 | "Yavatmal" 504 | ] 505 | }, 506 | { 507 | "state":"Manipur", 508 | "districts":[ 509 | "Bishnupur", 510 | "Chandel", 511 | "Churachandpur", 512 | "Imphal East", 513 | "Imphal West", 514 | "Jiribam", 515 | "Kakching", 516 | "Kamjong", 517 | "Kangpokpi", 518 | "Noney", 519 | "Pherzawl", 520 | "Senapati", 521 | "Tamenglong", 522 | "Tengnoupal", 523 | "Thoubal", 524 | "Ukhrul" 525 | ] 526 | }, 527 | { 528 | "state":"Meghalaya", 529 | "districts":[ 530 | "East Garo Hills", 531 | "East Jaintia Hills", 532 | "East Khasi Hills", 533 | "North Garo Hills", 534 | "Ri Bhoi", 535 | "South Garo Hills", 536 | "South West Garo Hills ", 537 | "South West Khasi Hills", 538 | "West Garo Hills", 539 | "West Jaintia Hills", 540 | "West Khasi Hills" 541 | ] 542 | }, 543 | { 544 | "state":"Mizoram", 545 | "districts":[ 546 | "Aizawl", 547 | "Champhai", 548 | "Kolasib", 549 | "Lawngtlai", 550 | "Lunglei", 551 | "Mamit", 552 | "Saiha", 553 | "Serchhip" 554 | ] 555 | }, 556 | { 557 | "state":"Nagaland", 558 | "districts":[ 559 | "Dimapur", 560 | "Kiphire", 561 | "Kohima", 562 | "Longleng", 563 | "Mokokchung", 564 | "Mon", 565 | "Peren", 566 | "Phek", 567 | "Tuensang", 568 | "Wokha", 569 | "Zunheboto" 570 | ] 571 | }, 572 | { 573 | "state":"Odisha", 574 | "districts":[ 575 | "Angul", 576 | "Balangir", 577 | "Balasore", 578 | "Bargarh", 579 | "Bhadrak", 580 | "Boudh", 581 | "Cuttack", 582 | "Deogarh", 583 | "Dhenkanal", 584 | "Gajapati", 585 | "Ganjam", 586 | "Jagatsinghapur", 587 | "Jajpur", 588 | "Jharsuguda", 589 | "Kalahandi", 590 | "Kandhamal", 591 | "Kendrapara", 592 | "Kendujhar (Keonjhar)", 593 | "Khordha", 594 | "Koraput", 595 | "Malkangiri", 596 | "Mayurbhanj", 597 | "Nabarangpur", 598 | "Nayagarh", 599 | "Nuapada", 600 | "Puri", 601 | "Rayagada", 602 | "Sambalpur", 603 | "Sonepur", 604 | "Sundargarh" 605 | ] 606 | }, 607 | { 608 | "state":"Puducherry (UT)", 609 | "districts":[ 610 | "Karaikal", 611 | "Mahe", 612 | "Pondicherry", 613 | "Yanam" 614 | ] 615 | }, 616 | { 617 | "state":"Punjab", 618 | "districts":[ 619 | "Amritsar", 620 | "Barnala", 621 | "Bathinda", 622 | "Faridkot", 623 | "Fatehgarh Sahib", 624 | "Fazilka", 625 | "Ferozepur", 626 | "Gurdaspur", 627 | "Hoshiarpur", 628 | "Jalandhar", 629 | "Kapurthala", 630 | "Ludhiana", 631 | "Mansa", 632 | "Moga", 633 | "Muktsar", 634 | "Nawanshahr (Shahid Bhagat Singh Nagar)", 635 | "Pathankot", 636 | "Patiala", 637 | "Rupnagar", 638 | "Sahibzada Ajit Singh Nagar (Mohali)", 639 | "Sangrur", 640 | "Tarn Taran" 641 | ] 642 | }, 643 | { 644 | "state":"Rajasthan", 645 | "districts":[ 646 | "Ajmer", 647 | "Alwar", 648 | "Banswara", 649 | "Baran", 650 | "Barmer", 651 | "Bharatpur", 652 | "Bhilwara", 653 | "Bikaner", 654 | "Bundi", 655 | "Chittorgarh", 656 | "Churu", 657 | "Dausa", 658 | "Dholpur", 659 | "Dungarpur", 660 | "Hanumangarh", 661 | "Jaipur", 662 | "Jaisalmer", 663 | "Jalore", 664 | "Jhalawar", 665 | "Jhunjhunu", 666 | "Jodhpur", 667 | "Karauli", 668 | "Kota", 669 | "Nagaur", 670 | "Pali", 671 | "Pratapgarh", 672 | "Rajsamand", 673 | "Sawai Madhopur", 674 | "Sikar", 675 | "Sirohi", 676 | "Sri Ganganagar", 677 | "Tonk", 678 | "Udaipur" 679 | ] 680 | }, 681 | { 682 | "state":"Sikkim", 683 | "districts":[ 684 | "East Sikkim", 685 | "North Sikkim", 686 | "South Sikkim", 687 | "West Sikkim" 688 | ] 689 | }, 690 | { 691 | "state":"Tamil Nadu", 692 | "districts":[ 693 | "Ariyalur", 694 | "Chennai", 695 | "Coimbatore", 696 | "Cuddalore", 697 | "Dharmapuri", 698 | "Dindigul", 699 | "Erode", 700 | "Kanchipuram", 701 | "Kanyakumari", 702 | "Karur", 703 | "Krishnagiri", 704 | "Madurai", 705 | "Nagapattinam", 706 | "Namakkal", 707 | "Nilgiris", 708 | "Perambalur", 709 | "Pudukkottai", 710 | "Ramanathapuram", 711 | "Salem", 712 | "Sivaganga", 713 | "Thanjavur", 714 | "Theni", 715 | "Thoothukudi (Tuticorin)", 716 | "Tiruchirappalli", 717 | "Tirunelveli", 718 | "Tiruppur", 719 | "Tiruvallur", 720 | "Tiruvannamalai", 721 | "Tiruvarur", 722 | "Vellore", 723 | "Viluppuram", 724 | "Virudhunagar" 725 | ] 726 | }, 727 | { 728 | "state":"Telangana", 729 | "districts":[ 730 | "Adilabad", 731 | "Bhadradri Kothagudem", 732 | "Hyderabad", 733 | "Jagtial", 734 | "Jangaon", 735 | "Jayashankar Bhoopalpally", 736 | "Jogulamba Gadwal", 737 | "Kamareddy", 738 | "Karimnagar", 739 | "Khammam", 740 | "Komaram Bheem Asifabad", 741 | "Mahabubabad", 742 | "Mahabubnagar", 743 | "Mancherial", 744 | "Medak", 745 | "Medchal", 746 | "Nagarkurnool", 747 | "Nalgonda", 748 | "Nirmal", 749 | "Nizamabad", 750 | "Peddapalli", 751 | "Rajanna Sircilla", 752 | "Rangareddy", 753 | "Sangareddy", 754 | "Siddipet", 755 | "Suryapet", 756 | "Vikarabad", 757 | "Wanaparthy", 758 | "Warangal (Rural)", 759 | "Warangal (Urban)", 760 | "Yadadri Bhuvanagiri" 761 | ] 762 | }, 763 | { 764 | "state":"Tripura", 765 | "districts":[ 766 | "Dhalai", 767 | "Gomati", 768 | "Khowai", 769 | "North Tripura", 770 | "Sepahijala", 771 | "South Tripura", 772 | "Unakoti", 773 | "West Tripura" 774 | ] 775 | }, 776 | { 777 | "state":"Uttarakhand", 778 | "districts":[ 779 | "Almora", 780 | "Bageshwar", 781 | "Chamoli", 782 | "Champawat", 783 | "Dehradun", 784 | "Haridwar", 785 | "Nainital", 786 | "Pauri Garhwal", 787 | "Pithoragarh", 788 | "Rudraprayag", 789 | "Tehri Garhwal", 790 | "Udham Singh Nagar", 791 | "Uttarkashi" 792 | ] 793 | }, 794 | { 795 | "state":"Uttar Pradesh", 796 | "districts":[ 797 | "Agra", 798 | "Aligarh", 799 | "Allahabad", 800 | "Ambedkar Nagar", 801 | "Amethi (Chatrapati Sahuji Mahraj Nagar)", 802 | "Amroha (J.P. Nagar)", 803 | "Auraiya", 804 | "Azamgarh", 805 | "Baghpat", 806 | "Bahraich", 807 | "Ballia", 808 | "Balrampur", 809 | "Banda", 810 | "Barabanki", 811 | "Bareilly", 812 | "Basti", 813 | "Bhadohi", 814 | "Bijnor", 815 | "Budaun", 816 | "Bulandshahr", 817 | "Chandauli", 818 | "Chitrakoot", 819 | "Deoria", 820 | "Etah", 821 | "Etawah", 822 | "Faizabad", 823 | "Farrukhabad", 824 | "Fatehpur", 825 | "Firozabad", 826 | "Gautam Buddha Nagar", 827 | "Ghaziabad", 828 | "Ghazipur", 829 | "Gonda", 830 | "Gorakhpur", 831 | "Hamirpur", 832 | "Hapur (Panchsheel Nagar)", 833 | "Hardoi", 834 | "Hathras", 835 | "Jalaun", 836 | "Jaunpur", 837 | "Jhansi", 838 | "Kannauj", 839 | "Kanpur Dehat", 840 | "Kanpur Nagar", 841 | "Kanshiram Nagar (Kasganj)", 842 | "Kaushambi", 843 | "Kushinagar (Padrauna)", 844 | "Lakhimpur - Kheri", 845 | "Lalitpur", 846 | "Lucknow", 847 | "Maharajganj", 848 | "Mahoba", 849 | "Mainpuri", 850 | "Mathura", 851 | "Mau", 852 | "Meerut", 853 | "Mirzapur", 854 | "Moradabad", 855 | "Muzaffarnagar", 856 | "Pilibhit", 857 | "Pratapgarh", 858 | "RaeBareli", 859 | "Rampur", 860 | "Saharanpur", 861 | "Sambhal (Bhim Nagar)", 862 | "Sant Kabir Nagar", 863 | "Shahjahanpur", 864 | "Shamali (Prabuddh Nagar)", 865 | "Shravasti", 866 | "Siddharth Nagar", 867 | "Sitapur", 868 | "Sonbhadra", 869 | "Sultanpur", 870 | "Unnao", 871 | "Varanasi" 872 | ] 873 | }, 874 | { 875 | "state":"West Bengal", 876 | "districts":[ 877 | "Alipurduar", 878 | "Bankura", 879 | "Birbhum", 880 | "Burdwan (Bardhaman)", 881 | "Cooch Behar", 882 | "Dakshin Dinajpur (South Dinajpur)", 883 | "Darjeeling", 884 | "Hooghly", 885 | "Howrah", 886 | "Jalpaiguri", 887 | "Kalimpong", 888 | "Kolkata", 889 | "Malda", 890 | "Murshidabad", 891 | "Nadia", 892 | "North 24 Parganas", 893 | "Paschim Medinipur (West Medinipur)", 894 | "Purba Medinipur (East Medinipur)", 895 | "Purulia", 896 | "South 24 Parganas", 897 | "Uttar Dinajpur (North Dinajpur)" 898 | ] 899 | } 900 | ] 901 | } 902 | --------------------------------------------------------------------------------