💥网盘管理独立出来,可添加\删除\编辑网盘

PyOne3.0
abbeyokgo 5 years ago
parent 2ad8054bac
commit 09320ab27c
  1. 52
      admin.py
  2. 2
      templates/admin/cache.html
  3. 5
      templates/admin/layout.html
  4. 2
      templates/admin/manage.html
  5. 1
      templates/admin/offdownload.html
  6. 41
      templates/admin/pan_manage.html
  7. 55
      templates/admin/rm_pan.html

@ -110,13 +110,6 @@ def setting():
set('ARIA2_SCHEME',ARIA2_SCHEME)
set('show_secret',show_secret)
set('password',new_password)
####网盘信息处理
for k,v in request.form.to_dict().items():
if 'share_path' in k or 'other_name' in k:
user=re.findall('\[(.*?)\]',k)[0]
key=re.findall('(.*)\[',k)[0]
print('setting {}\'s {}\'s value {}'.format(user,key,v))
set(key,v,user)
# reload()
rd.set('title',title)
rd.set('tj_code',tj_code)
@ -128,10 +121,6 @@ def setting():
rd.set('ARIA2_SCHEME',ARIA2_SCHEME)
rd.set('show_secret',show_secret)
rd.set('password',new_password)
config_path=os.path.join(config_dir,'config.py')
with open(config_path,'r') as f:
text=f.read()
rd.set('users',re.findall('od_users=([\w\W]*})',text)[0])
flash('更新成功')
return render_template('admin/setting.html')
return render_template('admin/setting.html')
@ -555,6 +544,26 @@ def install():
return resp
@admin.route('/',methods=['GET','POST'])
@admin.route('/panage',methods=['GET','POST'])
def panage():
if request.method=='POST':
####网盘信息处理
for k,v in request.form.to_dict().items():
if 'share_path' in k or 'other_name' in k:
user=re.findall('\[(.*?)\]',k)[0]
key=re.findall('(.*)\[',k)[0]
print('setting {}\'s {}\'s value {}'.format(user,key,v))
set(key,v,user)
config_path=os.path.join(config_dir,'config.py')
with open(config_path,'r') as f:
text=f.read()
rd.set('users',re.findall('od_users=([\w\W]*})',text)[0])
flash('更新成功')
return render_template('admin/pan_manage.html')
return render_template('admin/pan_manage.html')
@admin.route('/add_pan',methods=["POST","GET"])
def add_pan():
if request.method=='POST':
@ -582,3 +591,24 @@ def add_pan():
return render_template('admin/add_pan.html')
return render_template('admin/add_pan.html')
@admin.route('/rm_pan',methods=["POST","GET"])
def rm_pan():
if request.method=='POST':
pan=request.form.get('user')
od_users.pop(pan)
config_path=os.path.join(config_dir,'config.py')
with open(config_path,'r') as f:
old_text=f.read()
with open(config_path,'w') as f:
old_od=re.findall('od_users={[\w\W]*}',old_text)[0]
new_od='od_users='+json.dumps(od_users,indent=4,ensure_ascii=False)
new_text=old_text.replace(old_od,new_od,1)
f.write(new_text)
key='users'
rd.delete(key)
items.delete_many({'user':pan})
data=dict(msg='删除盘符[{}]成功'.format(pan),status=1)
return jsonify(data)
return render_template('admin/rm_pan.html')

@ -3,7 +3,7 @@
{%block content%}
<div class="mdui-container-fluid">
<div class="mdui-typo">
<h1> 更新缓存 <small>更新本地文件列表</small></h1>
<h1>更新列表</h1>
</div>
<div class="mdui-row">
<div class="mdui-col-xs-2">

@ -129,6 +129,11 @@
<div class="mdui-list-item-content">更新列表</div>
</a>
<a href="{{url_for('admin.panage')}}" class="mdui-list-item">
<i class="mdui-list-item-icon mdui-icon material-icons">&#xe2be;</i>
<div class="mdui-list-item-content">网盘管理</div>
</a>
<a href="{{url_for('admin.manage')}}" class="mdui-list-item">
<i class="mdui-list-item-icon mdui-icon material-icons">&#xe2bf;</i>
<div class="mdui-list-item-content">文件管理</div>

@ -50,6 +50,8 @@ a:hover {
<button class="mdui-btn mdui-btn-icon" onclick="setPasswd('{{path}}')" mdui-tooltip="{{'{'}}content: '设置密码'{{'}'}}"><i class="mdui-icon material-icons">&#xe32a;</i> </button>
<button class="mdui-btn mdui-btn-icon" onclick="setReadMe('{{path}}')" mdui-tooltip="{{'{'}}content: '设置README'{{'}'}}"><i class="mdui-icon material-icons">&#xe0d8;</i> </button>
<button class="mdui-btn mdui-btn-icon" onclick="setHead('{{path}}')" mdui-tooltip="{{'{'}}content: '设置HEAD'{{'}'}}"><i class="mdui-icon material-icons">&#xe89c;</i> </button>
</div>
<div class="mdui-toolbar mdui-color-theme">
<button class="mdui-btn mdui-btn-icon" onclick="uploadLocalFile('{{path}}')" mdui-tooltip="{{'{'}}content: '本地上传文件至onedrive'{{'}'}}"><i class="mdui-icon material-icons">&#xe2c3;</i> </button>
<button class="mdui-btn mdui-btn-icon" onclick="AddFolder('{{path}}')" mdui-tooltip="{{'{'}}content: '创建文件夹'{{'}'}}"><i class="mdui-icon material-icons">&#xe2cc;</i> </button>
<button class="mdui-btn mdui-btn-icon" onclick="OffDownload('{{path}}')" mdui-tooltip="{{'{'}}content: '离线下载'{{'}'}}"><i class="mdui-icon material-icons">&#xe2c4;</i> </button>

@ -5,6 +5,7 @@
</div>
<div class="mdui-toolbar mdui-color-theme">
<button class="mdui-btn mdui-btn-icon" onclick="AddLink()" mdui-tooltip="{{'{'}}content: '添加任务'{{'}'}}"><i class="mdui-icon material-icons">&#xe250;</i></button>
<button class="mdui-btn mdui-btn-icon" onclick="window.open('http://www.torrent.org.cn/');" mdui-tooltip="{{'{'}}content: '种子转磁力'{{'}'}}"><i class="mdui-icon material-icons">&#xe428;</i></button>
</div>
<div class="nexmoe-item">
<div class="mdui-row">

@ -0,0 +1,41 @@
{%extends 'admin/layout.html'%}
{%block content%}
<div class="mdui-container-fluid">
<div class="mdui-typo">
<h1> 网盘管理 <small>添加网盘/删除网盘/编辑网盘</small></h1>
</div>
<div class="mdui-row">
<div class="mdui-col-xs-2">
<button class="mdui-btn mdui-btn-raised mdui-ripple" onclick="window.location.href='{{url_for("admin.add_pan")}}'">添加盘位</button>
</div>
<div class="mdui-col-xs-2">
<button class="mdui-btn mdui-btn-raised mdui-ripple mdui-color-theme-accent" onclick="window.location.href='{{url_for("admin.rm_pan")}}'">删除网盘</button>
</div>
<div class="mdui-col-xs-8"></div>
</div>
<form action="{{url_for('admin.panage')}}" method="POST">
<div class="mdui-textfield">
<h4>网盘信息编辑</h4>
{%for user in get_od_user()%}
{%if user[1]!='添加网盘'%}
<div class="mdui-panel" mdui-panel>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">{{user[1]}}</div>
<div class="mdui-panel-item-body">
<h5>显示名称</h5>
<input class="mdui-textfield-input" type="text" name="other_name[{{user[0]}}]" placeholder="请输入显示名称" value="{{user[1]}}" />
<h5>分享目录</h5>
<input class="mdui-textfield-input" type="text" name="share_path[{{user[0]}}]" placeholder="请输入分享目录" value="{{user[3]}}" />
</div>
</div>
</div>
{%endif%}
{%endfor%}
</div>
<button type="submit" class="mdui-btn mdui-color-theme-accent mdui-ripple mdui-float-right">
<i class="mdui-icon material-icons">&#xe161;</i> 保存
</button>
</form>
</div>
{%endblock content%}

@ -0,0 +1,55 @@
{%extends 'admin/layout.html'%}
{%block content%}
<div class="mdui-container-fluid">
<div class="mdui-typo">
<h1>删除网盘 <small>谨慎操作!</small></h1>
</div>
<div class="mdui-table-fluid">
<table class="mdui-table mdui-table-hoverable">
<thead>
<tr>
<th>删除</th>
<th>盘符</th>
<th>网盘名称</th>
<th>共享目录</th>
</tr>
</thead>
<tbody>
{%for user in get_od_user()%}
<tr>
<td><i class="mdui-list-item-icon mdui-icon material-icons" onclick="rmPan('{{user[0]}}')">delete</i></td>
<td>{{user[0]}}</td>
<td>{{user[1]}}</td>
<td>{{user[3]}}</td>
</tr>
{%endfor%}
</tbody>
</table>
</div>
</div>
<script type="text/javascript">
function rmPan(pan){
if (!confirm("确定删除?")) {
return;
}
$.ajax({
type: "POST",
url: "{{url_for('admin.rm_pan')}}",
dataType: 'json',
data: {user:pan},
beforeSend: function(xhr) {
var index = layer.load(2, {
shade: [0.1, '#fff'] //0.1透明度的白色背景
});
},
success: function(result) {
alert(result.msg);
window.location.reload();
},
complete: function(xhr) {
$('#layui-layer-shade1').remove();
}
});
}
</script>
{%endblock content%}
Loading…
Cancel
Save