diff --git a/web/.editorconfig b/web/.editorconfig index c7d5acf..2b514c6 100644 --- a/web/.editorconfig +++ b/web/.editorconfig @@ -1,7 +1,7 @@ root = true [*.js] -indent_size = 2 +indent_size = 4 [*.vue] -indent_size = 2 \ No newline at end of file +indent_size = 4 \ No newline at end of file diff --git a/web/.eslintrc.js b/web/.eslintrc.js index c2931c7..42e9689 100644 --- a/web/.eslintrc.js +++ b/web/.eslintrc.js @@ -17,8 +17,7 @@ module.exports = { 'rules': { "no-console": "off", 'indent': [ - 'error', - 2 + 'error', 4 ], 'linebreak-style': [ 'off', diff --git a/web/babel.config.js b/web/babel.config.js index 3f453d4..c5dc6a5 100644 --- a/web/babel.config.js +++ b/web/babel.config.js @@ -1,5 +1,5 @@ module.exports = { - presets: [ - '@vue/cli-plugin-babel/preset' - ] + presets: [ + '@vue/cli-plugin-babel/preset' + ] }; diff --git a/web/public/index.html b/web/public/index.html index f1ec7ee..efc4b5f 100644 --- a/web/public/index.html +++ b/web/public/index.html @@ -1,17 +1,18 @@ -
+url: ${error.config.url} @@ -30,120 +30,120 @@ axios.interceptors.response.use(response => response, error => { response-body: ${error.response && error.response.body}
`; - store.commit('createToast', {title: 'Error: HTTP', message, color: 'danger'}); - } else { - store.commit('createToast', {title: 'Error: Unknown', message: error.toString(), color: 'danger'}); - } - return Promise.reject(error); + store.commit('createToast', {title: 'Error: HTTP', message, color: 'danger'}); + } else { + store.commit('createToast', {title: 'Error: Unknown', message: error.toString(), color: 'danger'}); + } + return Promise.reject(error); }); const store = new Vuex.Store({ - state: { - keyIncrement: 0, - events: [], - layout: 'cards', - loadedItems: [], - loadedBoxes: [], - toasts: [], - lastUsed: localStorage.getItem('lf_lastUsed') || {}, - }, - getters: { - getEventSlug: state => state.route && state.route.params.event? state.route.params.event : state.events.length ? state.events[0].slug : '36C3', - getActiveView: state => state.route.name || 'items', - getFilters: state => state.route.query, - getBoxes: state => state.loadedBoxes - }, - mutations: { - updateLastUsed(state, diff) { - state.lastUsed = _.extend(state.lastUsed, diff); - localStorage.setItem('lf_lastUsed', state.lastUsed); + state: { + keyIncrement: 0, + events: [], + layout: 'cards', + loadedItems: [], + loadedBoxes: [], + toasts: [], + lastUsed: localStorage.getItem('lf_lastUsed') || {}, }, - replaceEvents(state, events) { - state.events = events; + getters: { + getEventSlug: state => state.route && state.route.params.event ? state.route.params.event : state.events.length ? state.events[0].slug : '36C3', + getActiveView: state => state.route.name || 'items', + getFilters: state => state.route.query, + getBoxes: state => state.loadedBoxes }, - changeView(state, {view, slug}) { - router.push({path: `/${slug}/${view}`}); + mutations: { + updateLastUsed(state, diff) { + state.lastUsed = _.extend(state.lastUsed, diff); + localStorage.setItem('lf_lastUsed', state.lastUsed); + }, + replaceEvents(state, events) { + state.events = events; + }, + changeView(state, {view, slug}) { + router.push({path: `/${slug}/${view}`}); + }, + replaceLoadedItems(state, newItems) { + state.loadedItems = newItems; + }, + setLayout(state, layout) { + state.layout = layout; + }, + replaceBoxes(state, loadedBoxes) { + state.loadedBoxes = loadedBoxes; + }, + updateItem(state, updatedItem) { + const item = state.loadedItems.filter(({uid}) => uid === updatedItem.uid)[0]; + Object.assign(item, updatedItem); + }, + removeItem(state, item) { + state.loadedItems = state.loadedItems.filter(it => it !== item); + }, + appendItem(state, item) { + state.loadedItems.push(item); + }, + createToast(state, {title, message, color}) { + state.toasts.push({title, message, color, key: state.keyIncrement}); + state.keyIncrement += 1; + }, + removeToast(state, key) { + state.toasts = state.toasts.filter(toast => toast.key !== key); + } }, - replaceLoadedItems(state, newItems) { - state.loadedItems = newItems; - }, - setLayout(state, layout) { - state.layout = layout; - }, - replaceBoxes(state, loadedBoxes) { - state.loadedBoxes = loadedBoxes; - }, - updateItem(state, updatedItem) { - const item = state.loadedItems.filter(({ uid }) => uid === updatedItem.uid)[0]; - Object.assign(item, updatedItem); - }, - removeItem(state, item) { - state.loadedItems = state.loadedItems.filter(it => it !== item ); - }, - appendItem(state, item) { - state.loadedItems.push(item); - }, - createToast(state, { title, message, color }) { - state.toasts.push({ title, message, color, key: state.keyIncrement }); - state.keyIncrement += 1; - }, - removeToast(state, key) { - state.toasts = state.toasts.filter(toast => toast.key !== key); - } - }, - actions: { - async loadEvents({ commit }) { - const { data } = await axios.get('/1/events'); - commit('replaceEvents', data); - }, - changeEvent({ dispatch, getters}, eventName) { - router.push({path: `/${eventName.slug}/${getters.getActiveView}`}); - dispatch('loadEventItems'); - }, - changeView({ getters }, link) { - router.push({path: `/${getters.getEventSlug}/${link.path}`}); - }, - showBoxContent({ getters }, box) { - router.push({path: `/${getters.getEventSlug}/items`, query: {box}}); - }, - async loadEventItems({ commit, getters }) { - const { data } = await axios.get(`/1/${getters.getEventSlug}/items`); - commit('replaceLoadedItems', data); - }, - async searchEventItems({ commit, getters }, query) { - const foo = utf8.encode(query); - const bar = base64.encode(foo); + actions: { + async loadEvents({commit}) { + const {data} = await axios.get('/1/events'); + commit('replaceEvents', data); + }, + changeEvent({dispatch, getters}, eventName) { + router.push({path: `/${eventName.slug}/${getters.getActiveView}`}); + dispatch('loadEventItems'); + }, + changeView({getters}, link) { + router.push({path: `/${getters.getEventSlug}/${link.path}`}); + }, + showBoxContent({getters}, box) { + router.push({path: `/${getters.getEventSlug}/items`, query: {box}}); + }, + async loadEventItems({commit, getters}) { + const {data} = await axios.get(`/1/${getters.getEventSlug}/items`); + commit('replaceLoadedItems', data); + }, + async searchEventItems({commit, getters}, query) { + const foo = utf8.encode(query); + const bar = base64.encode(foo); - const {data} = await axios.get(`/1/${getters.getEventSlug}/items/${bar}`); - commit('replaceLoadedItems', data); - }, - async loadBoxes({ commit }) { - const { data } = await axios.get('/1/boxes'); - commit('replaceBoxes', data); - }, - async updateItem({ commit, getters }, item) { - const { data } = await axios.put(`/1/${getters.getEventSlug}/item/${item.uid}`, item); - commit('updateItem', data); - }, - async markItemReturned({ commit, getters }, item) { - await axios.put(`/1/${getters.getEventSlug}/item/${item.uid}`, {returned: true}); - commit('removeItem', item); - }, - async deleteItem({ commit, getters }, item) { - await axios.delete(`/1/${getters.getEventSlug}/item/${item.uid}`, item); - commit('removeItem',item); - }, - async postItem({ commit, getters }, item) { - commit('updateLastUsed',{box: item.box, cid: item.cid}); - const { data } = await axios.post(`/1/${getters.getEventSlug}/item`, item); - commit('appendItem', data); + const {data} = await axios.get(`/1/${getters.getEventSlug}/items/${bar}`); + commit('replaceLoadedItems', data); + }, + async loadBoxes({commit}) { + const {data} = await axios.get('/1/boxes'); + commit('replaceBoxes', data); + }, + async updateItem({commit, getters}, item) { + const {data} = await axios.put(`/1/${getters.getEventSlug}/item/${item.uid}`, item); + commit('updateItem', data); + }, + async markItemReturned({commit, getters}, item) { + await axios.put(`/1/${getters.getEventSlug}/item/${item.uid}`, {returned: true}); + commit('removeItem', item); + }, + async deleteItem({commit, getters}, item) { + await axios.delete(`/1/${getters.getEventSlug}/item/${item.uid}`, item); + commit('removeItem', item); + }, + async postItem({commit, getters}, item) { + commit('updateLastUsed', {box: item.box, cid: item.cid}); + const {data} = await axios.post(`/1/${getters.getEventSlug}/item`, item); + commit('appendItem', data); + } } - } }); export default store; -store.dispatch('loadEvents').then(() =>{ - store.dispatch('loadEventItems'); - store.dispatch('loadBoxes'); +store.dispatch('loadEvents').then(() => { + store.dispatch('loadEventItems'); + store.dispatch('loadBoxes'); }); diff --git a/web/src/views/Boxes.vue b/web/src/views/Boxes.vue index 6e95284..5de5b26 100644 --- a/web/src/views/Boxes.vue +++ b/web/src/views/Boxes.vue @@ -8,14 +8,14 @@ :keyName="'cid'" v-slot="{ item }" > -Herzlich Willkommen bei Lost&Found von $Veranstaltung!
-Deine Aufgaben sind es verloren gegangene Gegenstände anzunehmen und zu registrieren, sowie - Gegenstände ihren Besitzenden zurückzubringen.
-Bitte den Inhalt des Lost+Founds nicht offen liegen lassen oder rumzeigen. Erst beschreiben - lassen, dann zeigen.
-Herzlich Willkommen bei Lost&Found von $Veranstaltung!
+Deine Aufgaben sind es verloren gegangene Gegenstände anzunehmen und zu registrieren, sowie + Gegenstände ihren Besitzenden zurückzubringen.
+Bitte den Inhalt des Lost+Founds nicht offen liegen lassen oder rumzeigen. Erst beschreiben + lassen, dann zeigen.
+Welcome to Lost&Found of $Event!
-Your tasks are to accept and register lost items, as well as to return items to their owners.
-Please do not leave the contents of the Lost+Found lying around or show them around. Ask for a description of the item first, then show them (if the description seems correct).
-Welcome to Lost&Found of $Event!
+Your tasks are to accept and register lost items, as well as to return items to their owners.
+Please do not leave the contents of the Lost+Found lying around or show them around. Ask for a + description of the item first, then show them (if the description seems correct).
+