web interface add delete file function, debug
This commit is contained in:
14
interface.py
14
interface.py
@ -5,12 +5,15 @@ from flask import Flask, render_template, request, redirect, send_file, Response
|
||||
import variables as var
|
||||
import util
|
||||
from datetime import datetime
|
||||
import os
|
||||
import os.path
|
||||
import shutil
|
||||
import random
|
||||
from werkzeug.utils import secure_filename
|
||||
import errno
|
||||
import media
|
||||
import logging
|
||||
import time
|
||||
|
||||
|
||||
class ReverseProxied(object):
|
||||
@ -163,6 +166,17 @@ def index():
|
||||
var.botamusique.pause()
|
||||
var.botamusique.launch_music(int(request.form['play_music']))
|
||||
|
||||
elif 'delete_music_file' in request.form and ".." not in request.form['delete_music_file']:
|
||||
path = var.config.get('bot', 'music_folder') + request.form['delete_music_file']
|
||||
logging.info("web interface delete file " + path)
|
||||
os.remove(path)
|
||||
|
||||
elif 'delete_folder' in request.form and ".." not in request.form['delete_folder']:
|
||||
path = var.config.get('bot', 'music_folder') + request.form['delete_folder']
|
||||
logging.info("web interface delete folder " + path)
|
||||
shutil.rmtree(path)
|
||||
time.sleep(0.1)
|
||||
|
||||
elif 'action' in request.form:
|
||||
action = request.form['action']
|
||||
if action == "randomize":
|
||||
|
@ -608,6 +608,9 @@ class MumbleBot:
|
||||
def launch_music(self, index=-1):
|
||||
uri = ""
|
||||
music = None
|
||||
if var.playlist.length() == 0:
|
||||
return
|
||||
|
||||
if index == -1:
|
||||
music = var.playlist.current_item()
|
||||
else:
|
||||
|
@ -25,15 +25,22 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form action="./download" method="get" class="directory">
|
||||
<input type="text" value="{{ subdirpath }}" name="directory" hidden>
|
||||
<button type="submit" class="btn btn-primary btn-sm btn-space"><i class="fa fa-download" aria-hidden="true"></i></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<a data-toggle="collapse"
|
||||
data-target="#multiCollapse-{{ subdirid }}" aria-expanded="true"
|
||||
aria-controls="multiCollapse-{{ subdirid }}" href="#"><i class="fa fa-folder" aria-hidden="true"></i> <small>{{ subdirpath }}/</small></a>
|
||||
|
||||
<div class="btn-group" style="float: right;">
|
||||
<form action="./download" method="get" class="directory">
|
||||
<input type="text" value="{{ subdirpath }}" name="directory" hidden>
|
||||
<button type="submit" class="btn btn-primary btn-sm btn-space"><i class="fa fa-download" aria-hidden="true"></i></button>
|
||||
</form>
|
||||
<form method="post">
|
||||
<input type="text" value="{{ subdirpath }}" name="delete_folder" hidden>
|
||||
<button type="submit" class="btn btn-danger btn-sm btn-space"><i class="fas fa-trash-alt"></i></button>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
<div class="collapse multi-collapse" id="multiCollapse-{{ subdirid }}">
|
||||
{{- dirlisting(subdirobj, subdirpath) -}}
|
||||
@ -65,12 +72,19 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<small><i class="fa fa-music" aria-hidden="true"></i> {{ filepath }}</small>
|
||||
|
||||
<div class="btn-group" style="float: right;">
|
||||
<form action="./download" method="get" class="file file_download">
|
||||
<input type="text" value="{{ filepath }}" name="file" hidden>
|
||||
<button type="submit" class="btn btn-primary btn-sm btn-space"><i class="fa fa-download" aria-hidden="true"></i></button>
|
||||
</form>
|
||||
</div>
|
||||
<small><i class="fa fa-music" aria-hidden="true"></i> {{ filepath }}</small>
|
||||
<form method="post">
|
||||
<input type="text" value="{{ filepath }}" name="delete_music_file" hidden>
|
||||
<button type="submit" class="btn btn-danger btn-sm btn-space"><i class="fas fa-trash-alt"></i></button>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
{% endfor %}
|
||||
{%- endif %}
|
||||
|
Reference in New Issue
Block a user