Skip to content
Snippets Groups Projects
Commit 318dc96c authored by nicrausaz's avatar nicrausaz
Browse files

Auth, global style

parent bad3ce3c
No related branches found
No related tags found
No related merge requests found
...@@ -47,8 +47,8 @@ class AuthController extends Controller ...@@ -47,8 +47,8 @@ class AuthController extends Controller
$this->oClient->SetWantedAttributes(array('uniqueid', 'name', 'firstname', 'unit', 'unitid', 'where', 'group')); $this->oClient->SetWantedAttributes(array('uniqueid', 'name', 'firstname', 'unit', 'unitid', 'where', 'group'));
$this->oClient->SetWishedAttributes(array('email', 'title')); $this->oClient->SetWishedAttributes(array('email', 'title'));
// $this->oClient->SetApplicationURL('https://canap-gest.epfl.ch:8443'); // $this->oClient->SetApplicationURL('https://canap-gest.epfl.ch:8443');
// $this->oClient->SetApplicationURL('http://canap-gest-dev.local:8080'); $this->oClient->SetApplicationURL('http://canap-gest-dev.local:8080');
$this->oClient->SetApplicationURL('http://localhost:8000/api/auth/login'); // $this->oClient->SetApplicationURL('http://localhost:8000/api/auth/login');
$this->oClient->SetCustomFilter('org=EPFL&group=canap-gest-users-dev'); $this->oClient->SetCustomFilter('org=EPFL&group=canap-gest-users-dev');
$this->oClient->Authenticate(); $this->oClient->Authenticate();
......
No preview for this file type
...@@ -3,22 +3,34 @@ ...@@ -3,22 +3,34 @@
<img src="../../public/statics/epfl_logo.png" width="100"> <img src="../../public/statics/epfl_logo.png" width="100">
<v-toolbar-title>Canap-Gest</v-toolbar-title> <v-toolbar-title>Canap-Gest</v-toolbar-title>
<v-spacer></v-spacer> <v-spacer></v-spacer>
<v-toolbar-items class="hidden-sm-and-down"> <v-toolbar-items class="hidden-sm-and-down" v-if="!isLoged">
<v-btn flat class="white--text">Link One</v-btn> <v-btn flat class="white--text">Link One</v-btn>
<v-btn flat class="white--text">Link Two</v-btn> <v-btn flat class="white--text">Link Two</v-btn>
<v-btn icon class="white--text"> <v-btn icon class="white--text">
<v-icon @click="login">account_circle</v-icon> <v-icon @click="login">account_circle</v-icon>
</v-btn> </v-btn>
</v-toolbar-items> </v-toolbar-items>
<v-toolbar-items class="hidden-sm-and-down" v-else>
<v-btn flat class="white--text">Nicolas Crausaz</v-btn>
<v-btn icon class="white--text">
<v-icon @click="logout">logout</v-icon>
</v-btn>
</v-toolbar-items>
</v-toolbar> </v-toolbar>
</template> </template>
<script> <script>
export default { export default {
name: 'main-navbar', name: 'main-navbar',
computed: {
isLoged() { return this.$store.getters['moduleUser/userIsLogedIn'] }
},
methods: { methods: {
login() { login() {
this.$store.dispatch('moduleUser/login') this.$store.dispatch('moduleUser/login')
},
logout() {
this.$store.dispatch('moduleUser/logout')
} }
}, },
} }
......
import axios from 'axios' import axios from 'axios'
const instance = axios.create({ const instance = axios.create({
baseURL: 'http://localhost:8000/api', headers: { 'Authorization': "Bearer " + localStorage.getItem('stored_token') },
maxRedirects: 0 baseURL: 'http://localhost:8000/api'
}) })
instance.defaults.headers.common['Authorization'] = '';
export default instance export default instance
\ No newline at end of file
import axios from '../../../plugins/axios' import axios from '../../../plugins/axios'
export function login (/*context, params*/) { export function login() {
// context.commit(mutation) axios({
// axios({ method: 'get',
// method: "get", url: '/auth/login'
// url: "auth/login"
// })
// window.location = 'http://localhost:8000/api/auth/login'
axios.get('auth/login')
.then(response => {
// console.log(response.request.responseURL)
window.location = response.request.responseURL
}) })
.catch(err => { .then(response => {
console.log(err) if (!response.data.token) {
// window.location = 'http://localhost:8000/api/auth/login' window.location = 'http://localhost:8000/api/auth/login'
// console.log(err) } else {
localStorage.setItem('stored_token', response.data.token);
console.log('setting token:' + response.data.token)
}
})
}
export function getUserData(context) {
axios({
method: 'get',
url: '/user'
}) })
.then(response => {
context.commit('setUserData', response.data)
})
} }
export function logout (/*context, params*/) { export function logout() {
// context.commit(mutation) localStorage.removeItem('stored_token');
} }
\ No newline at end of file
export default { export function userIsLogedIn () {
// return localStorage.getItem('stored_token') != null
return localStorage.getItem('stored_token')
} }
\ No newline at end of file
import state from './state' import state from './state'
// import * as getters from './getters' import * as getters from './getters'
// import * as mutations from './mutations' import * as mutations from './mutations'
import * as actions from './actions' import * as actions from './actions'
export default { export default {
namespaced: true, namespaced: true,
state, state,
// getters, getters,
// mutations, mutations,
actions actions
} }
\ No newline at end of file
export default { export function setUserData (state, data) {
console.log(data)
state.userData = data
} }
\ No newline at end of file
export default { export default {
token: '' userData: {
tequila: {
firstname: String,
name: String,
group: String,
user: String,
sciper: String
},
role: String,
permissions: []
}
} }
\ No newline at end of file
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
<div id="home-view"> <div id="home-view">
<h1>Accueil</h1>Accueil: statistiques <h1>Accueil</h1>Accueil: statistiques
Il y a : 4 nouvelles postulations pour le métier : test depuis votre dernière connexion Il y a : 4 nouvelles postulations pour le métier : test depuis votre dernière connexion
<br>
<button @click="$store.dispatch('moduleUser/getUserData')">get data</button>
</div> </div>
</template> </template>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment