diff --git a/plugins/l2tp/index.py b/plugins/l2tp/index.py
index 7f46c419d..7f24a8b1e 100755
--- a/plugins/l2tp/index.py
+++ b/plugins/l2tp/index.py
@@ -141,6 +141,20 @@ def delUser():
if ret[1] == '':
return public.returnJson(True, '删除成功!:' + ret[0])
return public.returnJson(False, '删除失败:' + ret[0])
+
+
+def modUser():
+ args = getArgs()
+ data = checkArgs(args, ['username', 'password'])
+ if not data[0]:
+ return data[1]
+
+ ret = public.execShell('echo ' + args['username'] + '|l2tp -d')
+ if ret[1] == '':
+ return public.returnJson(True, '修改成功!:' + ret[0])
+ return public.returnJson(False, '修改失败:' + ret[0])
+
+
if __name__ == "__main__":
func = sys.argv[1]
if func == 'status':
@@ -161,5 +175,7 @@ if __name__ == "__main__":
print addUser()
elif func == 'del_user':
print delUser()
+ elif func == 'mod_user':
+ print modUser()
else:
print 'error'
diff --git a/plugins/l2tp/js/l2tp.js b/plugins/l2tp/js/l2tp.js
index 3e616dced..7d7942d8d 100755
--- a/plugins/l2tp/js/l2tp.js
+++ b/plugins/l2tp/js/l2tp.js
@@ -72,7 +72,7 @@ function userList(){
con += '
'+
'' + list[i]['user']+' | ' +
'' + list[i]['pwd']+' | ' +
- '改密|删除 |
';
+ '改密|删除 | ';
}
con += '';
@@ -93,16 +93,11 @@ function addUser(){
\
\
\
- \
\
\
"
});
- $('#add_close').click(function(){
- layer.close(loadOpen);
- });
-
$('#add_ok').click(function(){
_data = {};
_data['username'] = $('#username').val();
@@ -124,3 +119,32 @@ function delUser(username){
});
}
+function modUser(username){
+ var loadOpen = layer.open({
+ type: 1,
+ title: '修改密码',
+ area: '240px',
+ content:""
+ });
+
+ $('#mod_ok').click(function(){
+ _data = {};
+ _data['username'] = username;
+ _data['password'] = $('#password').val();
+ var loadT = layer.msg('正在获取...', { icon: 16, time: 0, shade: 0.3 });
+ lpPost('add_user', _data, function(data){
+ var rdata = $.parseJSON(data.data);
+ layer.close(loadOpen);
+ layer.msg(rdata.msg,{icon:rdata.status?1:2,time:2000,shade: [0.3, '#000']});
+ setTimeout(function(){userList();},2000);
+ });
+ });
+}
+
diff --git a/plugins/l2tp/scripts/l2tp.sh b/plugins/l2tp/scripts/l2tp.sh
index 8cd0b23e0..72b769a63 100644
--- a/plugins/l2tp/scripts/l2tp.sh
+++ b/plugins/l2tp/scripts/l2tp.sh
@@ -783,6 +783,26 @@ mod_user(){
echo "Username ${user}'s password has been changed."
}
+
+mod_user2(){
+ if [ $1 == ''];then
+ echo 'user name cannot be empty'
+ exit 1
+ fi
+
+ if [ $2 == ''];then
+ echo 'password cannot be empty'
+ exit 1
+ fi
+ user=$1
+ pass=$2
+ sed -i "/^\<${user}\>/d" /etc/ppp/chap-secrets
+ echo "${user} l2tpd ${pass} *" >> /etc/ppp/chap-secrets
+ echo "Username ${user}'s password has been changed."
+}
+
+
+
# Main process
action=$1
if [ -z ${action} ] && [ "`basename $0`" != "l2tp" ]; then
@@ -803,7 +823,7 @@ case ${action} in
del_user
;;
-m|--mod)
- mod_user
+ mod_user2
;;
-h|--help)
echo "Usage: `basename $0` -l,--list List all users"