From 589a056f9e7099d3b2aabb06803b24f8d14714dd Mon Sep 17 00:00:00 2001 From: thebrecht Date: Wed, 29 Feb 2012 03:01:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E5=85=A5=E4=BA=82=E6=95=B8=E7=94=A2?= =?UTF-8?q?=E7=94=9F=E6=96=B0=E5=AF=86=E7=A2=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- controllers/sign.js | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/controllers/sign.js b/controllers/sign.js index d16eccee95..a050b7b4e9 100644 --- a/controllers/sign.js +++ b/controllers/sign.js @@ -190,15 +190,17 @@ exports.search_pass = function(req,res,next){ exports.reset_pass = function(req,res,next){ var key = req.query.key; var name = req.query.name; + var new_pass = ''; User.findOne({name:name},function(err,user){ if(!user || md5(user.email+config.session_secret) != key){ res.render('notify/notify',{error: '信息有误,密码无法重置。'}); return; } - user.pass = md5('nodeclub'); + new_pass = random_password(); + user.pass = md5(new_pass); user.save(function(err){ - res.render('notify/notify',{success: '你的密码已被重置为:nodeclub,请立即用此密码登录后在设置页面更改密码。'}); + res.render('notify/notify',{success: '你的密码已被重置为:' + new_pass + ',请立即用此密码登录后在设置页面更改密码。'}); }); }); @@ -266,3 +268,14 @@ function md5(str){ str = md5sum.digest('hex'); return str; } +function random_password(passwd_size){ + var size = passwd_size || 6; + var code_string = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; + var max_num = code_string.length + 1; + var new_pass = ''; + while(size>0){ + new_pass += code_string.charAt(Math.floor(Math.random()* max_num)); + size--; + } + return new_pass; +} \ No newline at end of file