123456789101112131415161718192021222324252627282930313233343536 |
- from mymontools.tools import build_q_for_fields_and_querydict
- from .models import State, CfgState
- ##############################################################################
- def build_q_for_state_filter(params):
- fields = (
- 'hostname',
- 'state',
- 'sub',
- 'start_time',
- 'stop_time',
- 'read',
- )
- return build_q_for_fields_and_querydict(fields, params)
- def build_q_for_state_exclude(params):
- fields = (
- 'exclude_state',
- 'exclude_sub',
- 'exclude_start_time',
- 'exclude_stop_time',
- )
- return build_q_for_fields_and_querydict(fields, params)
- def get_filtered_states_for_querydict(params, sortorder='-id'):
- states = State.objects.order_by(sortorder)
- return states.filter( build_q_for_state_filter(params) ).exclude( build_q_for_state_exclude(params) )
|