def devicehistory_view(request, **_): """Device history search results view""" selection = { 'organization': request.GET.getlist('org'), 'category': request.GET.getlist('cat'), 'room__location': request.GET.getlist('loc'), 'room': request.GET.getlist('room'), 'netbox': request.GET.getlist('netbox'), 'groups': request.GET.getlist('netboxgroup'), 'module': request.GET.getlist('module'), 'mode': request.GET.getlist('mode'), } grouped_history = None valid_params = [ 'to_date', 'from_date', 'eventtype', 'group_by', 'netbox', 'room' ] if len(set(valid_params) & set(request.GET.keys())) >= 1: form = DeviceHistoryViewFilter(request.GET) else: form = DeviceHistoryViewFilter() if form.is_valid(): # We need to handle locations as they are tree-based selection['room__location'] = add_descendants( selection['room__location']) alert_history = fetch_history(selection, form) grouped_history = group_history_and_messages( alert_history, get_messages_for_history(alert_history), form.cleaned_data['group_by'], ) # Quickselect expects 'loc' and not 'location' selection['loc'] = selection['room__location'] del selection['room__location'] info_dict = { 'active': { 'device': True }, 'search_description': describe_search_params(selection), 'selection': selection, 'history': grouped_history, 'title': 'NAV - Device History', 'navpath': [ ('Home', '/'), ('Device History', reverse('devicehistory-search')), ], 'form': form, } return render(request, 'devicehistory/history_view.html', info_dict)
def devicehistory_view(request): """Device history search results view""" selection = { 'organization': request.REQUEST.getlist('org'), 'category': request.REQUEST.getlist('cat'), 'room__location': request.REQUEST.getlist('loc'), 'room': request.REQUEST.getlist('room'), 'netbox': request.REQUEST.getlist('netbox'), 'module': request.REQUEST.getlist('module'), 'mode': request.REQUEST.getlist('mode') } grouped_history = None valid_params = ['to_date', 'from_date', 'eventtype', 'group_by', 'netbox', 'room'] if len(set(valid_params) & set(request.REQUEST.keys())) >= 1: form = DeviceHistoryViewFilter(request.REQUEST) else: form = DeviceHistoryViewFilter() if form.is_valid(): alert_history = fetch_history(selection, form) grouped_history = group_history_and_messages( alert_history, get_messages_for_history(alert_history), form.cleaned_data['group_by'] ) # Quickselect expects 'loc' and not 'location' selection['loc'] = selection['room__location'] del selection['room__location'] info_dict = { 'active': {'device': True}, 'search_description': describe_search_params(selection), 'selection': selection, 'history': grouped_history, 'title': 'NAV - Device History', 'navpath': [ ('Home', '/'), ('Device History', reverse('devicehistory-search')), ], 'form': form } return render_to_response( 'devicehistory/history_view.html', info_dict, RequestContext(request) )