space allowed
This commit is contained in:
		
							
								
								
									
										43
									
								
								interface.py
									
									
									
									
									
								
							
							
						
						
									
										43
									
								
								interface.py
									
									
									
									
									
								
							@@ -6,7 +6,47 @@ import os.path
 | 
				
			|||||||
from os import listdir
 | 
					from os import listdir
 | 
				
			||||||
import random
 | 
					import random
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class ReverseProxied(object):
 | 
				
			||||||
 | 
					    '''Wrap the application in this middleware and configure the
 | 
				
			||||||
 | 
					    front-end server to add these headers, to let you quietly bind
 | 
				
			||||||
 | 
					    this to a URL other than / and to an HTTP scheme that is
 | 
				
			||||||
 | 
					    different than what is used locally.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    In nginx:
 | 
				
			||||||
 | 
					    location /myprefix {
 | 
				
			||||||
 | 
					        proxy_pass http://192.168.0.1:5001;
 | 
				
			||||||
 | 
					        proxy_set_header Host $host;
 | 
				
			||||||
 | 
					        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 | 
				
			||||||
 | 
					        proxy_set_header X-Scheme $scheme;
 | 
				
			||||||
 | 
					        proxy_set_header X-Script-Name /myprefix;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    :param app: the WSGI application
 | 
				
			||||||
 | 
					    '''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def __init__(self, app):
 | 
				
			||||||
 | 
					        self.app = app
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def __call__(self, environ, start_response):
 | 
				
			||||||
 | 
					        script_name = environ.get('HTTP_X_SCRIPT_NAME', '')
 | 
				
			||||||
 | 
					        if script_name:
 | 
				
			||||||
 | 
					            environ['SCRIPT_NAME'] = script_name
 | 
				
			||||||
 | 
					            path_info = environ['PATH_INFO']
 | 
				
			||||||
 | 
					            if path_info.startswith(script_name):
 | 
				
			||||||
 | 
					                environ['PATH_INFO'] = path_info[len(script_name):]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        scheme = environ.get('HTTP_X_SCHEME', '')
 | 
				
			||||||
 | 
					        if scheme:
 | 
				
			||||||
 | 
					            environ['wsgi.url_scheme'] = scheme
 | 
				
			||||||
 | 
					        real_ip = environ.get('HTTP_X_REAL_IP', '')
 | 
				
			||||||
 | 
					        if real_ip:
 | 
				
			||||||
 | 
					            environ['REMOTE_ADDR'] = real_ip
 | 
				
			||||||
 | 
					        return self.app(environ, start_response)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
web = Flask(__name__)
 | 
					web = Flask(__name__)
 | 
				
			||||||
 | 
					web.wsgi_app = ReverseProxied(web.wsgi_app)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@web.route("/", methods=['GET', 'POST'])
 | 
					@web.route("/", methods=['GET', 'POST'])
 | 
				
			||||||
@@ -21,7 +61,8 @@ def index():
 | 
				
			|||||||
        if 'add_music' in request.form and ".." not in request.form['add_music']:
 | 
					        if 'add_music' in request.form and ".." not in request.form['add_music']:
 | 
				
			||||||
            var.playlist.append(request.form['add_music'])
 | 
					            var.playlist.append(request.form['add_music'])
 | 
				
			||||||
        if 'add_folder' in request.form and ".." not in request.form['add_folder']:
 | 
					        if 'add_folder' in request.form and ".." not in request.form['add_folder']:
 | 
				
			||||||
            var.playlist.extend(files[request.form['add_folder']])
 | 
					            dir_files = [request.form['add_folder'] + '/' + i for i in files[request.form['add_folder']]]
 | 
				
			||||||
 | 
					            var.playlist.extend(dir_files)
 | 
				
			||||||
        elif 'delete_music' in request.form:
 | 
					        elif 'delete_music' in request.form:
 | 
				
			||||||
            try:
 | 
					            try:
 | 
				
			||||||
                var.playlist.remove(request.form['delete_music'])
 | 
					                var.playlist.remove(request.form['delete_music'])
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -130,7 +130,6 @@ class MumbleBot:
 | 
				
			|||||||
                    self.mumble.users[text.actor].send_message('<br>'.join(files))
 | 
					                    self.mumble.users[text.actor].send_message('<br>'.join(files))
 | 
				
			||||||
                else:
 | 
					                else:
 | 
				
			||||||
                    self.mumble.users[text.actor].send_message(self.config.get('strings', 'no_file'))
 | 
					                    self.mumble.users[text.actor].send_message(self.config.get('strings', 'no_file'))
 | 
				
			||||||
 | 
					 | 
				
			||||||
            else:
 | 
					            else:
 | 
				
			||||||
                self.mumble.users[text.actor].send_message(self.config.get('strings', 'bad_command'))
 | 
					                self.mumble.users[text.actor].send_message(self.config.get('strings', 'bad_command'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -168,7 +167,6 @@ class MumbleBot:
 | 
				
			|||||||
                time.sleep(0.1)
 | 
					                time.sleep(0.1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (self.thread is None or not raw_music) and len(var.playlist) != 0:
 | 
					            if (self.thread is None or not raw_music) and len(var.playlist) != 0:
 | 
				
			||||||
                print("plop")
 | 
					 | 
				
			||||||
                var.current_music = var.playlist[0]
 | 
					                var.current_music = var.playlist[0]
 | 
				
			||||||
                var.playlist.pop(0)
 | 
					                var.playlist.pop(0)
 | 
				
			||||||
                self.launch_play_file()
 | 
					                self.launch_play_file()
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,6 +3,8 @@
 | 
				
			|||||||
    <meta charset="UTF-8">
 | 
					    <meta charset="UTF-8">
 | 
				
			||||||
    <title></title>
 | 
					    <title></title>
 | 
				
			||||||
    <link rel="stylesheet" href="{{ url_for('static', filename='index.css') }}">
 | 
					    <link rel="stylesheet" href="{{ url_for('static', filename='index.css') }}">
 | 
				
			||||||
 | 
					    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
 | 
				
			||||||
 | 
					    <META HTTP-EQUIV="Expires" CONTENT="-1">
 | 
				
			||||||
</head>
 | 
					</head>
 | 
				
			||||||
<body>
 | 
					<body>
 | 
				
			||||||
<a href="."><h5>Refresh</h5></a>
 | 
					<a href="."><h5>Refresh</h5></a>
 | 
				
			||||||
@@ -22,7 +24,7 @@
 | 
				
			|||||||
    <ul>
 | 
					    <ul>
 | 
				
			||||||
        {% for m in playlist %}
 | 
					        {% for m in playlist %}
 | 
				
			||||||
        <li>{{ m }}
 | 
					        <li>{{ m }}
 | 
				
			||||||
            <form method="post"><input type=text value={{ m }} name="delete_music" hidden><input type="submit" value="X"></form>
 | 
					            <form method="post"><input type=text value="{{ m }}" name="delete_music" hidden><input type="submit" value="X"></form>
 | 
				
			||||||
        </li>
 | 
					        </li>
 | 
				
			||||||
        {% endfor %}
 | 
					        {% endfor %}
 | 
				
			||||||
    </ul>
 | 
					    </ul>
 | 
				
			||||||
@@ -32,10 +34,9 @@
 | 
				
			|||||||
    <form method="post"><input type=text value={{ dir }} name="add_folder" hidden><input type="submit" value="add all folder"></form>
 | 
					    <form method="post"><input type=text value={{ dir }} name="add_folder" hidden><input type="submit" value="add all folder"></form>
 | 
				
			||||||
    <br>
 | 
					    <br>
 | 
				
			||||||
    <ul>
 | 
					    <ul>
 | 
				
			||||||
 | 
					 | 
				
			||||||
        {% for m in all_files[dir] %}
 | 
					        {% for m in all_files[dir] %}
 | 
				
			||||||
        <li>
 | 
					        <li>
 | 
				
			||||||
            <form method="post"><input type=text value="{{ dir }}/{{ m }}" name="add_music" hidden><input type="submit" value={{ m }}></form>
 | 
					            <form method="post"><input type=text value="{{ dir }}/{{ m }}" name="add_music" hidden><input type="submit" value="{{ m }}"></form>
 | 
				
			||||||
        </li>
 | 
					        </li>
 | 
				
			||||||
        {% endfor %}
 | 
					        {% endfor %}
 | 
				
			||||||
    </ul>
 | 
					    </ul>
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user