Skip to content

Commit

Permalink
1005 #1 baseURL要怎麼做呢?
Browse files Browse the repository at this point in the history
  • Loading branch information
Pulipuli Chen committed Oct 5, 2019
1 parent 735221f commit 92fe7f8
Show file tree
Hide file tree
Showing 7 changed files with 234 additions and 30 deletions.
13 changes: 13 additions & 0 deletions app/Controllers/Http/MessageController.js
@@ -0,0 +1,13 @@
'use strict'

const Message = use('App/Models/Message')

class MessageController {
async add ({ request, response, view }) {
const query = request.get()


}
}

module.exports = MessageController
31 changes: 29 additions & 2 deletions app/Controllers/Http/UserController.js
Expand Up @@ -4,7 +4,7 @@ const User = use('App/Models/User')
const Hash = use('Hash')

class UserController {
async login ({ request, response, view }) {
async login ({ request, response, view, session }) {
const query = request.get()
//console.log(query)

Expand All @@ -18,6 +18,7 @@ class UserController {
})

if (user === null) {
session.forget('user_id')
return {error: 'no-user'}
}

Expand All @@ -30,14 +31,16 @@ class UserController {
const isSame = await Hash.verify(queryPassword, userPassword)

if (isSame) {
session.put('user_id', user.id)
return {}
} else {
session.forget('user_id')
return {
error: 'password-wrong'
}
}
}
async register( { request, response, view }) {
async register({ request, response, view, session }) {
const query = request.get()
//console.log(query)

Expand All @@ -46,6 +49,7 @@ class UserController {
})

if (user === null) {
// 走註冊,建立使用者
user = new User()

user.username = query.username
Expand All @@ -55,15 +59,18 @@ class UserController {
let result = await user.save()
//console.log(result)
if (result === true) {
session.put('user_id', user.id)
return {}
} else {
session.forget('user_id')
return {
error: 'add-user-failed'
}
}
}

// --------------
// 走登入

let userPassword = user.password

Expand All @@ -74,13 +81,33 @@ class UserController {
const isSame = await Hash.verify(queryPassword, userPassword)

if (isSame) {
session.put('user_id', user.id)
return {}
} else {
session.forget('user_id')
return {
error: 'user-is-existed'
}
}
}
logout ({ session }) {
session.forget('user_id')
return true
}
async checkLogin ({session}) {
let userId = session.get('user_id', false)
if (userId === false) {
return false
}

let user = await User.find(userId)
if (user === null) {
return false
}
else {
return user.username
}
}
}

module.exports = UserController
62 changes: 57 additions & 5 deletions client-src/components/Chat/Chat.html
@@ -1,4 +1,61 @@
<div class="ui form container">

<div class="ui large feed">
<div class="event"
v-for="message in displayMessages">
<div class="label">
<i class="pencil icon"></i>
</div>
<div class="content">
<div class="summary">
{{ message.user.username }}
<div class="date">
{{ displayAge(message.createAt) }}
</div>
</div>
<div class="extra text">
{{ message.message }}
</div>
</div>
</div>
</div>

<!-- ==================================== -->

<div class="unstackable fields">
<div class="ten wide field">
<label for="WritingMessage">
{{ status.username }}
</label>
<div class="ui input fluid">
<input type="text"
id="WritingMessage"
v-on:keyup.enter="send"
v-model="writingMessage" />
</div>
</div>
<div class="three wide field">
<button type="button"
class="ui fluid button"
v-on:click="send"
v-bind:class="{disabled: (writingMessage.trim() === ''), green: (writingMessage.trim() !== '')}">
{{ $t('Send') }}
</button>
</div>
<div class="three wide field">
<button type="button"
v-on:click="logout"
class="ui fluid button">
{{ $t('Logout') }}
</button>
</div>
</div>

<!-- ===================================== -->
<!-- For test -->
<hr />

<!--
<div class="ui field">
{{ status.message }}
{{ $route.params.name }}
Expand All @@ -10,11 +67,6 @@
Add User
</button>
</div>

<!--
<button type="button" id="loadUsers">
Load Users
</button>
-->

<table class="ui unstackable table">
Expand Down
12 changes: 11 additions & 1 deletion client-src/components/Chat/Chat.js
Expand Up @@ -5,6 +5,8 @@ module.exports = {
data() {
this.$i18n.locale = this.config.locale
return {
displayMessages: [],
writingMessage: '',
users: []
}
},
Expand All @@ -16,7 +18,7 @@ module.exports = {
},
mounted: function () {
if (this.status.isLogin === false) {
this.$router.push('/')
this.$router.replace('/')
return false
}
this.loadUsers()
Expand All @@ -37,6 +39,14 @@ module.exports = {
})
console.log('addUser')
this.loadUsers()
},
send: async function () {
console.log(this.message)
},
logout: async function () {
await axios.get(`${this.config.baseURL}/logout`)
this.status.isLogin = false
this.$router.replace('/')
}
} // methods
}
2 changes: 2 additions & 0 deletions nbproject/customs.json
@@ -1,8 +1,10 @@
{
"elements": {},
"attributes": {
"v-bind:class": {},
"v-if": {},
"v-on:click": {},
"v-for": {},
"v-model": {}
}
}

0 comments on commit 92fe7f8

Please sign in to comment.