浏览代码

New token shananigans

Pitu 8 年之前
父节点
当前提交
16164115aa
共有 1 个文件被更改,包括 13 次插入19 次删除
  1. 13 19
      controllers/tokenController.js

+ 13 - 19
controllers/tokenController.js

@@ -12,12 +12,13 @@ tokenController.verify = function(req, res, next){
 		if(user.length === 0) return res.json({ success: false, description: 'Token mismatch' })
 		return res.json({ success: true })
 	}).catch(function(error) { console.log(error); res.json({success: false, description: 'error'}) })
+	
 }
 
 tokenController.list = function(req, res, next){
 
-	if(req.headers.auth === undefined) return res.json({ success: false, description: 'No token provided' })
-	let token = req.headers.auth
+	let token = req.headers.token
+	if(token === undefined) return res.status(401).json({ success: false, description: 'No token provided' })
 
 	db.table('users').where('token', token).then((user) => {
 		if(user.length === 0) return res.json({ success: false, description: 'Token mismatch' })
@@ -27,26 +28,19 @@ tokenController.list = function(req, res, next){
 }
 
 tokenController.change = function(req, res, next){
-	if(req.headers.auth !== config.adminToken)
-		return res.status(401).json({ success: false, description: 'not-authorized'})
 
-	let type = req.body.type
-	let token = req.body.token
-
-	if(type === undefined) return res.json({ success: false, description: 'No type provided.' })
-	if(token === undefined) return res.json({ success: false, description: 'No token provided.' })
-	if(type !== 'client' && type !== 'admin') return res.json({ success: false, description: 'Wrong type provided.' })
-
-	db.table('tokens').where('name', type).update({ value: token, timestamp: Math.floor(Date.now() / 1000) })
-	.then(() => {
+	let token = req.headers.token
+	if(token === undefined) return res.status(401).json({ success: false, description: 'No token provided' })
 
-		if(type === 'client')
-			config.clientToken = token
-		else if(type === 'admin')
-			config.adminToken = token
-		
-		res.json({ success: true }) 
+	let newtoken = randomstring.generate(64)
+	
+	db.table('users').where('token', token).update({
+		token: newtoken,
+		timestamp:  Math.floor(Date.now() / 1000)
+	}).then((user) => {
+		res.json({ success: true, token: newtoken })
 	}).catch(function(error) { console.log(error); res.json({success: false, description: 'error'}) })
+	
 }
 
 module.exports = tokenController