def fields_add_pcapfile(obj, keyword = 'pcapfile', initial=None): field = TableField(keyword='pcapfile', label='PCAP File', field_cls=FileSelectField, field_kwargs={'widget': FileInput}) field.save() obj.fields.add(field)
def fields_add_time_selection(obj, initial_duration=None, durations=None): #starttime = TableField(keyword = 'starttime', # label = 'Start Time', # field_cls = DateTimeField, # field_kwargs = { 'widget' : ReportSplitDateTimeWidget }, # required=False) #starttime.save() #obj.criteria.add(starttime) if durations is None: durations = DURATIONS endtime = TableField(keyword='endtime', label='End Time', field_cls=DateTimeField, field_kwargs={'widget': ReportSplitDateTimeWidget}, required=False) endtime.save() obj.fields.add(endtime) duration = ( TableField( keyword='duration', label='Duration', initial=initial_duration, field_cls=DurationField, #field_kwargs = { 'widget': DurationWidget }, field_kwargs={'choices': durations}, required=False)) duration.save() obj.fields.add(duration)
def fields_add_filterexpr(obj, keyword='shark_filterexpr', initial=None): field = TableField(keyword=keyword, label='Shark Filter Expression', help_text='Traffic expression using Shark filter syntax', initial=initial, required=False) field.save() obj.fields.add(field)
def fields_add_filterexpr(obj, keyword='profiler_filterexpr', initial=None): field = TableField(keyword=keyword, label='Profiler Filter Expression', help_text=('Traffic expression using Profiler Advanced ' 'Traffic Expression syntax'), initial=initial, required=False) field.save() obj.fields.add(field)
def fields_add_filterexpr(obj, keyword='shark_filterexpr', initial=None): field = TableField( keyword=keyword, label='Shark Filter Expression', help_text='Traffic expression using Shark filter syntax', initial=initial, required=False) field.save() obj.fields.add(field)
def fields_add_device_selection(obj, keyword='device', label='Device', module=None, enabled=None): field = TableField(keyword=keyword, label=label, field_cls=forms.ChoiceField, pre_process_func=Function(device_selection_preprocess, {'module': module, 'enabled': enabled})) field.save() obj.fields.add(field)
def fields_add_resolution(obj, initial=None, resolutions=('1m', '15m', '1h', '6h'), special_values=None): field = TableField(keyword='resolution', label='Data Resolution', field_cls=DurationField, field_kwargs={'choices': resolutions, 'special_values': special_values}, initial=initial) field.save() obj.fields.add(field)
def fields_add_business_hour_fields(report, default_start='8:00am', default_end='5:00pm', default_timezone='US/Eastern', default_weekends=False): fields_add_time_selection(report, initial_duration="1 week") TIMES = ['%d:00am' % h for h in range(1, 13)] TIMES.extend(['%d:00pm' % h for h in range(1, 13)]) business_hours_start = TableField( keyword='business_hours_start', label='Start Business', initial=default_start, field_cls=forms.ChoiceField, field_kwargs={'choices': zip(TIMES, TIMES)}, required=True) business_hours_start.save() report.fields.add(business_hours_start) business_hours_end = TableField( keyword='business_hours_end', label='End Business', initial=default_end, field_cls=forms.ChoiceField, field_kwargs={'choices': zip(TIMES, TIMES)}, required=True) business_hours_end.save() report.fields.add(business_hours_end) business_hours_tzname = TableField(keyword='business_hours_tzname', label='Business Timezone', initial=default_timezone, field_cls=forms.ChoiceField, field_kwargs={ 'choices': zip(pytz.common_timezones, pytz.common_timezones) }, required=True) business_hours_tzname.save() report.fields.add(business_hours_tzname) business_hours_weekends = TableField(keyword='business_hours_weekends', field_cls=forms.BooleanField, label='Business includes weekends', initial=default_weekends, required=False) business_hours_weekends.save() report.fields.add(business_hours_weekends)
def fields_add_time_selection(obj, initial_duration=None, durations=None): if durations is None: durations = DURATIONS endtime = TableField(keyword='endtime', label='End Time', field_cls=DateTimeField, field_kwargs={'widget': ReportSplitDateTimeWidget}, required=False) endtime.save() obj.fields.add(endtime) duration = TableField(keyword='duration', label='Duration', initial=initial_duration, field_cls=DurationField, field_kwargs={'choices': durations}, required=False) duration.save() obj.fields.add(duration)
def fields_add_business_hour_fields(obj, initial_business_hours_start='8:00am', initial_business_hours_end='5:00pm', initial_business_hours_tzname='US/Eastern', initial_business_hours_weekends=False, **kwargs): kwargs['initial_duration'] = kwargs.get('initial_duration', '1w') fields_add_time_selection(obj, **kwargs) TIMES = ['%d:00am' % h for h in range(1, 13)] TIMES.extend(['%d:00pm' % h for h in range(1, 13)]) business_hours_start = TableField(keyword='business_hours_start', label='Start Business', initial=initial_business_hours_start, field_cls=forms.ChoiceField, field_kwargs={'choices': zip(TIMES, TIMES)}, required=True) business_hours_start.save() obj.fields.add(business_hours_start) business_hours_end = TableField(keyword='business_hours_end', label='End Business', initial=initial_business_hours_end, field_cls=forms.ChoiceField, field_kwargs={'choices': zip(TIMES, TIMES)}, required=True) business_hours_end.save() obj.fields.add(business_hours_end) business_hours_tzname = TableField(keyword='business_hours_tzname', label='Business Timezone', initial=initial_business_hours_tzname, field_cls=forms.ChoiceField, field_kwargs={'choices': zip(pytz.common_timezones, pytz.common_timezones)}, required=True) business_hours_tzname.save() obj.fields.add(business_hours_tzname) business_hours_weekends = TableField(keyword='business_hours_weekends', field_cls=forms.BooleanField, label='Business includes weekends', initial=initial_business_hours_weekends, required=False) business_hours_weekends.save() obj.fields.add(business_hours_weekends)
def fields_add_time_selection(obj, show_duration=True, initial_duration=None, durations=None, show_start=False, initial_start_time='now-1h', initial_start_date='now-1h', show_end=True, initial_end_time='now-0', initial_end_date='now-0',): if show_start: field = TableField(keyword='starttime', label='Start Time', field_cls=DateTimeField, field_kwargs={'widget': ReportSplitDateTimeWidget, 'widget_attrs': {'initial_time': initial_start_time, 'initial_date': initial_start_date}}, required=False) field.save() obj.fields.add(field) if show_end: field = TableField(keyword='endtime', label='End Time', field_cls=DateTimeField, field_kwargs={'widget': ReportSplitDateTimeWidget, 'widget_attrs': {'initial_time': initial_end_time, 'initial_date': initial_end_date}}, required=False) field.save() obj.fields.add(field) if show_duration: if durations is None: durations = DURATIONS field = TableField(keyword='duration', label='Duration', initial=initial_duration, field_cls=DurationField, field_kwargs={'choices': durations}, required=False) field.save() obj.fields.add(field)