Procházet zdrojové kódy

:recycle: tweaking the rest of the modules for new two part api data grab

tags/0.9.0
j před 5 roky
rodič
revize
dd07ebaf4f

+ 11
- 11
vue-theme/src/store/modules/event.js Zobrazit soubor

8
 
8
 
9
 const getters = {
9
 const getters = {
10
     allEvents: state => state.all,
10
     allEvents: state => state.all,
11
-    allEventsLoaded: state => state.loaded,
12
-    event: state => id => {
13
-        let field = typeof id === 'number' ? 'id' : 'slug'
14
-        let event = state.all.filter(event => event[field] === id)
15
-        return (event[0]) ? event[0] : false
16
-    },
17
-    eventContent: state => id => {
18
-        let field = typeof id === 'number' ? 'id' : 'slug'
19
-        let event = state.all.filter(event => event[field] === id)
20
-        return (event[0]) ? event[0].content.rendered : false
21
-    },
11
+    allEventsLoaded: state => state.loaded
22
 }
12
 }
23
 
13
 
24
 const actions = {
14
 const actions = {
29
             commit('STORE_FETCHED_EVENTS', { events })
19
             commit('STORE_FETCHED_EVENTS', { events })
30
             commit('EVENTS_LOADED', true)
20
             commit('EVENTS_LOADED', true)
31
         })
21
         })
22
+    },
23
+    getSingleEvent({ commit }, id) {
24
+        commit('CLEAR_SINGLE_EVENT')
25
+        commit('EVENTS_LOADED', false)
26
+        api.getSingleType('events', id,  event => {
27
+            commit('STORE_FETCHED_SINGLE_EVENT', event)
28
+            commit('EVENTS_LOADED', true)
29
+        })
32
     }
30
     }
33
 }
31
 }
34
 
32
 
35
 const mutations = {
33
 const mutations = {
36
     STORE_FETCHED_EVENTS(state, { events }) { state.all = events },
34
     STORE_FETCHED_EVENTS(state, { events }) { state.all = events },
35
+    STORE_FETCHED_SINGLE_EVENT(state, event) { state.singleEvent = event },
37
     CLEAR_EVENTS(state) { state.all = [] },
36
     CLEAR_EVENTS(state) { state.all = [] },
37
+    CLEAR_SINGLE_EVENT(state) { state.singleEvent = null },
38
     EVENTS_LOADED(state, val) { state.loaded = val },
38
     EVENTS_LOADED(state, val) { state.loaded = val },
39
 }
39
 }
40
 
40
 

+ 11
- 11
vue-theme/src/store/modules/exhibition.js Zobrazit soubor

8
 
8
 
9
 const getters = {
9
 const getters = {
10
     allExhibitions: state => state.all,
10
     allExhibitions: state => state.all,
11
-    allExhibitionsLoaded: state => state.loaded,
12
-    exhibition: state => id => {
13
-        let field = typeof id === 'number' ? 'id' : 'slug'
14
-        let exhibition = state.all.filter(exhibition => exhibition[field] === id)
15
-        return (exhibition[0]) ? exhibition[0] : false
16
-    },
17
-    exhibitionContent: state => id => {
18
-        let field = typeof id === 'number' ? 'id' : 'slug'
19
-        let exhibition = state.all.filter(exhibition => exhibition[field] === id)
20
-        return (exhibition[0]) ? exhibition[0].content.rendered : false
21
-    },
11
+    allExhibitionsLoaded: state => state.loaded
22
 }
12
 }
23
 
13
 
24
 const actions = {
14
 const actions = {
29
             commit('STORE_FETCHED_EXHIBITIONS', { exhibitions })
19
             commit('STORE_FETCHED_EXHIBITIONS', { exhibitions })
30
             commit('EXHIBITIONS_LOADED', true)
20
             commit('EXHIBITIONS_LOADED', true)
31
         })
21
         })
22
+    },
23
+    getSingleExhibition({ commit }, id) {
24
+        commit('CLEAR_SINGLE_EXHIBITION')
25
+        commit('EXHIBITIONS_LOADED', false)
26
+        api.getSingleType('exhibitions', id,  exhibition => {
27
+            commit('STORE_FETCHED_SINGLE_EXHIBITION', exhibition)
28
+            commit('EXHIBITIONS_LOADED', true)
29
+        })
32
     }
30
     }
33
 }
31
 }
34
 
32
 
35
 const mutations = {
33
 const mutations = {
36
     STORE_FETCHED_EXHIBITIONS(state, { exhibitions }) { state.all = exhibitions },
34
     STORE_FETCHED_EXHIBITIONS(state, { exhibitions }) { state.all = exhibitions },
35
+    STORE_FETCHED_SINGLE_EXHIBITION(state, exhibition) { state.singleExhibition = exhibition },
37
     CLEAR_EXHIBITIONS(state) { state.all = [] },
36
     CLEAR_EXHIBITIONS(state) { state.all = [] },
37
+    CLEAR_SINGLE_EXHIBITION(state) { state.singleExhibition = null },
38
     EXHIBITIONS_LOADED(state, val) { state.loaded = val },
38
     EXHIBITIONS_LOADED(state, val) { state.loaded = val },
39
 }
39
 }
40
 
40
 

+ 13
- 22
vue-theme/src/store/modules/page.js Zobrazit soubor

10
 // getters
10
 // getters
11
 const getters = {
11
 const getters = {
12
     allPages: state => state.all,
12
     allPages: state => state.all,
13
-    allPagesLoaded: state => state.loaded,
14
-    page: state => id => {
15
-        let field = typeof id === 'number' ? 'id' : 'slug'
16
-        let page = state.all.filter(page => page[field] === id)
17
-        return (page[0]) ? page[0] : false
18
-    },
19
-    pageContent: state => id => {
20
-        let field = typeof id === 'number' ? 'id' : 'slug'
21
-        let page = state.all.filter(page => page[field] === id)
22
-        
23
-        return (page[0]) ? page[0].content.rendered : false
24
-    },
25
-    somePages: state => limit => {
26
-        if(state.all.length < 1) return false
27
-        
28
-        let all = [...state.all]
29
-        
30
-        return all.splice(0, Math.min(limit, state.all.length))
31
-    },
13
+    allPagesLoaded: state => state.loaded
32
 }
14
 }
33
 
15
 
34
 // actions
16
 // actions
39
             commit('STORE_FETCHED_PAGES', { pages })
21
             commit('STORE_FETCHED_PAGES', { pages })
40
             commit('PAGES_LOADED', true)
22
             commit('PAGES_LOADED', true)
41
         })
23
         })
24
+    },
25
+    getSinglePage({ commit }, id) {
26
+        commit('CLEAR_SINGLE_PAGE')
27
+        commit('PAGES_LOADED', false)
28
+        api.getSingleType('pages', id,  page => {
29
+            commit('STORE_FETCHED_SINGLE_PAGE', page)
30
+            commit('PAGES_LOADED', true)
31
+        })
42
     }
32
     }
43
 }
33
 }
44
 
34
 
45
 // mutations
35
 // mutations
46
 const mutations = {
36
 const mutations = {
47
-    STORE_FETCHED_PAGES(state, { pages }) {
48
-        state.all = pages
49
-    },
37
+    STORE_FETCHED_PAGES(state, { pages }) { state.all = pages },
38
+    STORE_FETCHED_SINGLE_PAGE(state, page) { state.singlePage = page },
39
+    CLEAR_PAGES(state) { state.all = [] },
40
+    CLEAR_SINGLE_PAGE(state) { state.singlePage = null },
50
     PAGES_LOADED(state, val) { state.loaded = val },
41
     PAGES_LOADED(state, val) { state.loaded = val },
51
 }
42
 }
52
 
43
 

+ 2
- 2
vue-theme/src/store/modules/post.js Zobrazit soubor

31
 }
31
 }
32
 
32
 
33
 const mutations = {
33
 const mutations = {
34
-    STORE_FETCHED_SINGLE_POST(state, post) { state.singlePost = post },
35
     STORE_FETCHED_POSTS(state, { posts }) { state.all = posts },
34
     STORE_FETCHED_POSTS(state, { posts }) { state.all = posts },
35
+    STORE_FETCHED_SINGLE_POST(state, post) { state.singlePost = post },
36
     CLEAR_POSTS(state) { state.all = [] },
36
     CLEAR_POSTS(state) { state.all = [] },
37
-    CLEAR_SINGLE_POST(state) { state.post = null },
37
+    CLEAR_SINGLE_POST(state) { state.singlePost = null },
38
     POSTS_LOADED(state, val) { state.loaded = val },
38
     POSTS_LOADED(state, val) { state.loaded = val },
39
 }
39
 }
40
 
40
 

Načítá se…
Zrušit
Uložit