1
0
Fork 0
mirror of https://github.com/fastogt/fastocloud_admin.git synced 2025-03-09 23:38:52 +00:00

Get playlist by service ID

This commit is contained in:
topilski 2019-06-04 23:42:14 -04:00
parent edaef13a4d
commit 5e10d75651
2 changed files with 12 additions and 2 deletions

View file

@ -36,7 +36,7 @@ class User(UserMixin, Document):
type = IntField(default=Type.USER)
settings = EmbeddedDocumentField(Settings, default=Settings)
servers = ListField(ReferenceField(ServiceSettings), default=[])
servers = ListField(ReferenceField(ServiceSettings, reverse_delete_rule=PULL), default=[])
def logout(self):
session.pop(SERVER_POSITION_SESSION_FIELD)
@ -46,6 +46,9 @@ class User(UserMixin, Document):
self.servers.append(server)
self.save()
def remove_server(self, server: ServiceSettings):
server.delete()
def set_current_server_position(self, pos: int):
session[SERVER_POSITION_SESSION_FIELD] = pos

View file

@ -123,6 +123,13 @@ class ServiceView(FlaskView):
return '<pre>{0}</pre>'.format(server.view_playlist())
return '''<pre>Not found, please create server firstly.</pre>'''
def playlist(self, sid):
server = ServiceSettings.objects(id=sid).first()
if server:
return server.generate_playlist(), 200
return jsonify(status='failed'), 404
@login_required
def view_log(self):
server = current_user.get_current_server()
@ -175,7 +182,7 @@ class ServiceView(FlaskView):
sid = request.form['sid']
server = ServiceSettings.objects(id=sid).first()
if server:
server.delete()
current_user.remove_server(server)
return jsonify(status='ok'), 200
return jsonify(status='failed'), 404