Time tracking you can host anywhere, built on Django. Full export support in multiple formats and easily extensible.
djangodockerhandcodedpythonself-hostedtime-trackingtimetracker
1import Vue from 'vue';
2
3import fetch from '../../fetch';
4
5
6export default {
7 namespaced: true,
8 state: {
9 all: [],
10 },
11 mutations: {
12 setPermissions: (state, permissions) => state.all = permissions,
13 },
14 getters: {
15 getPermissions: state => {
16 return state.all.reduce((object, permission) => {
17 object[permission.codename] = permission;
18 return object;
19 });
20 },
21 },
22 actions: {
23 fetchPermissions({commit}) {
24 return new Promise((resolve, reject) => {
25 commit('addLoading', 'permissions', {root: true});
26 fetch.get(timestrapConfig.API_URLS.PERMISSIONS).then(response => {
27 commit('setPermissions', response.data);
28 commit('removeLoading', 'permissions', {root: true});
29 resolve();
30 }).catch(error => {
31 console.log(error);
32 reject();
33 });
34 });
35 },
36 },
37};