diff options
author | dartcafe <github@dartcafe.de> | 2019-01-08 16:47:13 +0300 |
---|---|---|
committer | dartcafe <github@dartcafe.de> | 2019-01-08 16:47:13 +0300 |
commit | 8fea79eb9bec3e27edcf644063d738168be913f7 (patch) | |
tree | ec605a07a7b5a1d7b92737f53687770599125907 /src/js/router.js | |
parent | cce65a3fe9f8d91c126a73d5148932a1caf0f4e8 (diff) |
Initial
Diffstat (limited to 'src/js/router.js')
-rw-r--r-- | src/js/router.js | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/src/js/router.js b/src/js/router.js new file mode 100644 index 00000000..ca2f4282 --- /dev/null +++ b/src/js/router.js @@ -0,0 +1,74 @@ +/** + * @copyright Copyright (c) 2018 Julius Härtl <jus@bitgrid.net> + * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com> + * + * @author Julius Härtl <jus@bitgrid.net> + * @author John Molakvoæ <skjnldsv@protonmail.com> + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ +import Vue from 'vue' +import Router from 'vue-router' + +// Dynamic loading +const Create = () => import('./views/Create') +const List = () => import('./views/List') + +Vue.use(Router) + +export default new Router({ + mode: 'history', + // if index.php is in the url AND we got this far, then it's working: + // let's keep using index.php in the url + base: OC.generateUrl(''), + linkActiveClass: 'active', + routes: [ + { + path: '/:index(index.php/)?apps/polls/', + redirect: { name: 'list' } + }, + { + path: '/:index(index.php/)?apps/polls/list/', + components: { + default: List + }, + props: false, + name: 'list' + }, + { + path: '/:index(index.php/)?apps/polls/edit/:hash', + components: { + default: Create + }, + props: true, + name: 'edit' + }, + { + path: '/:index(index.php/)?apps/polls/new', + components: { + default: Create + }, + props: false, + name: 'create' + }, + { + path: '/:index(index.php/)?apps/polls/poll/:hash', + props: false, + name: 'vote' + } + ] +}) |