12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- import Vue from 'vue'
- import Vuex from 'vuex'
- import thread from './modules/thread'
- Vue.use(Vuex)
- export default new Vuex.Store({
- state: {
- meta: {
- name: '',
- categories: []
- },
- accountTabs: 0,
- accountModal: false,
- username: ''
- },
- getters: {
- categoriesWithoutAll (state) {
- var categories = JSON.parse(JSON.stringify(state.meta.categories));
- categories.shift();
- categories.unshift({
- name: 'Select a category',
- disabled: true
- });
- return categories;
- }
- },
- mutations: {
- setAccountTabs (state, index) {
- state.accountTabs = index;
- },
- setSelectOptions (state, payload) {
- state.selectOptions[payload.name] = payload.value;
- },
- setAccountModalState (state, value) {
- state.accountModal = value;
- },
- setUsername (state, value) {
- state.username = value
- },
- setForumName (state, value) {
- state.meta.name = value
- },
- addCategories (state, value) {
- if(Array.isArray(value)) {
- state.meta.categories = value
- } else {
- state.meta.categories.push(value)
- }
- }
- },
- modules: { thread }
- })
|