mirror of
https://github.com/DeviceFarmer/stf.git
synced 2026-04-22 05:45:18 +02:00
Save user settings to the database and embed them to the template for fast access.
This commit is contained in:
@@ -25,6 +25,7 @@ dbapi.saveUserAfterLogin = function(user) {
|
||||
, lastLoggedInAt: r.now()
|
||||
, createdAt: r.now()
|
||||
, forwards: []
|
||||
, settings: {}
|
||||
}))
|
||||
}
|
||||
return stats
|
||||
@@ -35,6 +36,18 @@ dbapi.loadUser = function(email) {
|
||||
return db.run(r.table('users').get(email))
|
||||
}
|
||||
|
||||
dbapi.updateUserSettings = function(email, changes) {
|
||||
return db.run(r.table('users').get(email).update({
|
||||
settings: changes
|
||||
}))
|
||||
}
|
||||
|
||||
dbapi.resetUserSettings = function(email) {
|
||||
return db.run(r.table('users').get(email).update({
|
||||
settings: r.literal({})
|
||||
}))
|
||||
}
|
||||
|
||||
dbapi.addUserForward = function(email, forward) {
|
||||
var devicePort = forward.devicePort
|
||||
return db.run(r.table('users').get(email).update({
|
||||
|
||||
@@ -256,6 +256,13 @@ module.exports = function(options) {
|
||||
|
||||
new Promise(function(resolve) {
|
||||
socket.on('disconnect', resolve)
|
||||
// Settings
|
||||
.on('user.settings.update', function(data) {
|
||||
dbapi.updateUserSettings(user.email, data)
|
||||
})
|
||||
.on('user.settings.reset', function() {
|
||||
dbapi.resetUserSettings(user.email)
|
||||
})
|
||||
// Touch events
|
||||
.on('input.touchDown', createTouchHandler(wire.TouchDownMessage))
|
||||
.on('input.touchMove', createTouchHandler(wire.TouchMoveMessage))
|
||||
|
||||
Reference in New Issue
Block a user