Add map filtering

master
informatic 2020-04-14 22:18:22 +02:00
parent f91c854363
commit 980af625d7
2 changed files with 8 additions and 2 deletions

View File

@ -78,12 +78,18 @@ class IndexView(AdminSecurityMixin, flask_admin.AdminIndexView):
class MapView(AdminSecurityMixin, flask_admin.BaseView):
@flask_admin.expose('/')
def index(self):
mode = request.args.get('mode', 'all')
if mode == 'new':
query = FaceshieldRequest.query.filter(FaceshieldRequest.shipping_latitude != None, FaceshieldRequest.status == Status.new)
else:
query = FaceshieldRequest.query.filter(FaceshieldRequest.shipping_latitude != None, FaceshieldRequest.status != Status.spam, FaceshieldRequest.status != Status.rejected)
mapdata = [
{
key: getattr(request, key).name if isinstance(getattr(request, key), enum.Enum) else getattr(request, key)
for key in ['id', 'entity_info', 'shipping_latitude', 'shipping_longitude', 'status', 'handling_orga']
}
for request in FaceshieldRequest.query.filter(FaceshieldRequest.shipping_latitude != None, FaceshieldRequest.status != Status.spam, FaceshieldRequest.status != Status.rejected)
for request in query
]
return self.render('admin_map.html', mapdata=mapdata, focus=request.args.get('id', None))

View File

@ -1,6 +1,6 @@
{% extends "admin/master.html" %}
{% block body %}
<h2 class="page-header">Map</h2>
<h2 class="page-header">Map <div class="pull-right"><a href="/admin/map/?mode=new" class="btn btn-danger btn-sm">New</a> <a href="/admin/map/" class="btn btn-success btn-sm">All</a></div></h2>
<div id="map" style="width: 100%; height: 800px"></div>
{% endblock %}