123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- from mymontools.tools import build_q_for_fields_and_querydict
- from traps.models import Trap, CfgTrap
- ##############################################################################
- def build_q_for_trap_filter(params):
- fields = (
- 'hostname',
- 'trapoid',
- 'category',
- 'severity',
- 'trapread',
- )
- return build_q_for_fields_and_querydict(fields, params)
- def build_q_for_trap_exclude(params):
- fields = (
- 'exclude_hostname',
- 'exclude_trapoid',
- 'exclude_category',
- 'exclude_severity',
- 'exclude_trapread',
- )
- return build_q_for_fields_and_querydict(fields, params)
- def get_filtered_traps_for_querydict(params, sortorder='-id'):
- traps = Trap.objects.order_by(sortorder)
- return traps.filter( build_q_for_trap_filter(params) ).exclude( build_q_for_trap_exclude(params) )
- ##############################################################################
- def build_q_for_cfgtrap_filter(params):
- fields = (
- 'severity',
- 'category',
- )
- return build_q_for_fields_and_querydict(fields, params)
- def build_q_for_cfgtrap_exclude(params):
- fields = (
- 'exclude_severity',
- 'exclude_category',
- )
- return build_q_for_fields_and_querydict(fields, params)
- def get_filtered_cfgtraps_for_querydict(params, sortorder='trapname'):
- cfgtraps = CfgTrap.objects.order_by(sortorder)
- return cfgtraps.filter( build_q_for_trap_filter(params) ).exclude( build_q_for_trap_exclude(params) )
|