示例#1
0
    def get_context_data(self, **kwargs):
        context = super(MachineEventsView, self).get_context_data(**kwargs)
        for ms in self.ms_list:
            context['serial_number'] = ms.machine.serial_number
            if ms.system_info and ms.system_info.computer_name:
                context['computer_name'] = ms.system_info.computer_name
                break

        # pagination
        page = context['page_obj']
        if page.has_next():
            qd = self.request.GET.copy()
            qd['page'] = page.next_page_number()
            context['next_url'] = "?{}".format(qd.urlencode())
        if page.has_previous():
            qd = self.request.GET.copy()
            qd['page'] = page.previous_page_number()
            context['previous_url'] = "?{}".format(qd.urlencode())
        event_types = []
        total_events = 0

        # event types selection
        request_event_type = self.request.GET.get('event_type')
        for event_type, count in frontend_store.event_types_with_usage(
                context['serial_number']).items():
            total_events += count
            event_types.append((event_type,
                                request_event_type == event_type,
                                "{} ({})".format(event_type.replace('_', ' ').title(), count)))
        event_types.sort()
        event_types.insert(0, ('',
                               request_event_type in [None, ''],
                               'All ({})'.format(total_events)))
        context['event_types'] = event_types
        return context
示例#2
0
 def get_context_data(self, **kwargs):
     context = super(MachineEventsView, self).get_context_data(**kwargs)
     context['inventory'] = True
     context['machine'] = self.machine
     page = context['page_obj']
     if page.has_next():
         qd = self.request.GET.copy()
         qd['page'] = page.next_page_number()
         context['next_url'] = "?{}".format(qd.urlencode())
     if page.has_previous():
         qd = self.request.GET.copy()
         qd['page'] = page.previous_page_number()
         context['previous_url'] = "?{}".format(qd.urlencode())
     event_types = []
     total_events = 0
     request_event_type = self.request.GET.get('event_type')
     for event_type, count in frontend_store.event_types_with_usage(self.machine['serial_number']).items():
         total_events += count
         event_types.append((event_type,
                             request_event_type == event_type,
                             "{} ({})".format(event_type.replace('_', ' ').title(), count)))
     event_types.sort()
     event_types.insert(0, ('',
                            request_event_type in [None, ''],
                            'All ({})'.format(total_events)))
     context['event_types'] = event_types
     return context