mirror of
https://github.com/Bubka/2FAuth.git
synced 2025-06-20 03:38:06 +02:00
Routes and views for Create and Update item
This commit is contained in:
parent
e58d7ac864
commit
c6627bebfa
14
resources/js/app.js
vendored
14
resources/js/app.js
vendored
@ -6,7 +6,9 @@ Vue.use(VueRouter)
|
|||||||
import App from './views/App'
|
import App from './views/App'
|
||||||
import Login from './views/Login'
|
import Login from './views/Login'
|
||||||
import Register from './views/Register'
|
import Register from './views/Register'
|
||||||
import Accounts from './views/Accounts'
|
import Accounts from './views/Accounts'
|
||||||
|
import Create from './views/Create'
|
||||||
|
import Edit from './views/Edit'
|
||||||
|
|
||||||
import { library } from '@fortawesome/fontawesome-svg-core'
|
import { library } from '@fortawesome/fontawesome-svg-core'
|
||||||
import { faPlusCircle } from '@fortawesome/free-solid-svg-icons'
|
import { faPlusCircle } from '@fortawesome/free-solid-svg-icons'
|
||||||
@ -34,6 +36,16 @@ const router = new VueRouter({
|
|||||||
name: 'register',
|
name: 'register',
|
||||||
component: Register,
|
component: Register,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/create',
|
||||||
|
name: 'create',
|
||||||
|
component: Create,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/edit/:twofaccountId',
|
||||||
|
name: 'edit',
|
||||||
|
component: Edit,
|
||||||
|
},
|
||||||
],
|
],
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -2,15 +2,15 @@
|
|||||||
<div>
|
<div>
|
||||||
<nav class="navbar is-black level is-mobile has-text-grey-lighter">
|
<nav class="navbar is-black level is-mobile has-text-grey-lighter">
|
||||||
<div class="level-left">
|
<div class="level-left">
|
||||||
<router-link :to="{ name: 'home' }" class="is-size-4 has-text-weight-light" v-if="isLoggedIn">2FAccount</router-link>
|
<router-link :to="{ name: 'accounts' }" class="is-size-4 has-text-weight-light" v-if="isLoggedIn">2FAccount</router-link>
|
||||||
</div>
|
</div>
|
||||||
<div class="level-right">
|
<div class="level-right">
|
||||||
<p class="level-item">
|
<p class="level-item">
|
||||||
<a class="button is-black">
|
<router-link :to="{ name: 'create' }" class="button is-black">
|
||||||
<span class="icon has-text-grey-light">
|
<span class="icon has-text-grey-light">
|
||||||
<font-awesome-icon :icon="['fas', 'plus-circle']" />
|
<font-awesome-icon :icon="['fas', 'plus-circle']" />
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</router-link>
|
||||||
</p>
|
</p>
|
||||||
<p class="level-item" v-if="!isLoggedIn">
|
<p class="level-item" v-if="!isLoggedIn">
|
||||||
<router-link :to="{ name: 'login' }" class="button is-black">
|
<router-link :to="{ name: 'login' }" class="button is-black">
|
||||||
|
67
resources/js/views/Create.vue
Normal file
67
resources/js/views/Create.vue
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
<template>
|
||||||
|
<div class="container">
|
||||||
|
<div class="row justify-content-center">
|
||||||
|
<div class="col-md-8">
|
||||||
|
<div class="card card-default">
|
||||||
|
<div class="card-header">Register</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<form @submit.prevent="createAccount">
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Name</label>
|
||||||
|
<div class="control">
|
||||||
|
<input class="input" type="text" placeholder="Text input" v-model="twofaccount.name" required autofocus>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Email</label>
|
||||||
|
<div class="control">
|
||||||
|
<input class="input" type="email" placeholder="Text input" v-model="twofaccount.email" required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Uri</label>
|
||||||
|
<div class="control">
|
||||||
|
<input class="input" type="text" placeholder="Text input" v-model="twofaccount.uri" required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field is-grouped">
|
||||||
|
<div class="control">
|
||||||
|
<button class="button is-link">Submit</button>
|
||||||
|
</div>
|
||||||
|
<div class="control">
|
||||||
|
<router-link :to="{ name: 'accounts' }" class="button is-text">Cancel</router-link>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
twofaccount: {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
createAccount: function() {
|
||||||
|
let token = localStorage.getItem('jwt')
|
||||||
|
|
||||||
|
axios.defaults.headers.common['Content-Type'] = 'application/json'
|
||||||
|
axios.defaults.headers.common['Authorization'] = 'Bearer ' + token
|
||||||
|
|
||||||
|
axios.post('/api/twofaccounts', this.twofaccount).then(response => {
|
||||||
|
this.$router.push({name: 'accounts'});
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
64
resources/js/views/Edit.vue
Normal file
64
resources/js/views/Edit.vue
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
<template>
|
||||||
|
<form @submit.prevent="updateAccount">
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Name</label>
|
||||||
|
<div class="control">
|
||||||
|
<input class="input" type="text" placeholder="Text input" v-model="twofaccount.name" required autofocus />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Email</label>
|
||||||
|
<div class="control">
|
||||||
|
<input class="input" type="email" placeholder="Text input" v-model="twofaccount.email" required />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field is-grouped">
|
||||||
|
<div class="control">
|
||||||
|
<button class="button is-link">Submit</button>
|
||||||
|
</div>
|
||||||
|
<div class="control">
|
||||||
|
<router-link :to="{ name: 'accounts' }" class="button is-text">Cancel</router-link>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
twofaccount: {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
created: function(){
|
||||||
|
this.getAccount();
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
getAccount: function () {
|
||||||
|
let token = localStorage.getItem('jwt')
|
||||||
|
|
||||||
|
axios.defaults.headers.common['Content-Type'] = 'application/json'
|
||||||
|
axios.defaults.headers.common['Authorization'] = 'Bearer ' + token
|
||||||
|
|
||||||
|
axios.get('/api/twofaccounts/' + this.$route.params.twofaccountId).then(response => {
|
||||||
|
this.twofaccount = response.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
updateAccount: function() {
|
||||||
|
let token = localStorage.getItem('jwt')
|
||||||
|
|
||||||
|
axios.defaults.headers.common['Content-Type'] = 'application/json'
|
||||||
|
axios.defaults.headers.common['Authorization'] = 'Bearer ' + token
|
||||||
|
|
||||||
|
axios.put('/api/twofaccounts/' + this.$route.params.twofaccountId, this.twofaccount).then(response => {
|
||||||
|
this.$router.push({name: 'accounts'});
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
@ -15,5 +15,5 @@
|
|||||||
// return view('welcome');
|
// return view('welcome');
|
||||||
// });
|
// });
|
||||||
|
|
||||||
Route::get('twofaccount/{TwoFAccount}', 'TwoFAccountController@show');
|
// Route::get('twofaccount/{TwoFAccount}', 'TwoFAccountController@show');
|
||||||
Route::get('/{any}', 'SinglePageController@index')->where('any', '.*');
|
Route::get('/{any}', 'SinglePageController@index')->where('any', '.*');
|
Loading…
x
Reference in New Issue
Block a user