Add map filtering
parent
f91c854363
commit
980af625d7
|
@ -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))
|
||||
|
|
|
@ -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 %}
|
||||
|
||||
|
|
Loading…
Reference in New Issue