public function buildFilterList(array $params) { $factory = new \App_ListFilter_FilterFactory(); $fields = AuditLogFilterFields::getWhiteList(); $factory->setWhiteList($fields); $filterList = $factory->constructFilter($params); $filterList->setResourceId(AuditLogFilterFields::getResourceId()); $filterList->setValidators(AuditLogFilterFields::getValidatorSpec()); return $filterList->isValid() ? $filterList : null; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params) { $factory = new \App_ListFilter_FilterFactory(); $factory->setWhiteList(UserConfigFilterFields::getWhiteList()); $factory->setSortingFieldName('_sortBy'); $factory->setSortingWhiteList(UserConfigSortingFields::getWhiteList()); $filterList = $factory->constructFilter($params); $filterList->setResourceId(UserConfigFilterFields::getResourceId()); return $filterList->isValid() ? $filterList : null; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params) { $factory = new \App_ListFilter_FilterFactory(); $factory->setWhiteList(WatcherFilterFields::getWhiteList()); $factory->setSortingFieldName('_sortBy'); $factory->setSortingWhiteList(WatcherSortingFields::getWhiteList()); $filterList = $factory->constructFilter($params); $filterList->addExtraData('filterType', 'watcher'); $filterList->setResourceId(WatcherFilterFields::getResourceId()); return $filterList->isValid() ? $filterList : null; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params) { $factory = new \App_ListFilter_FilterFactory(); $fields = APIIdFilterFields::getWhiteList(); $factory->setWhiteList($fields); $sortingFields = APIIdFilterFields::getWhiteList(); $factory->setSortingWhiteList($sortingFields); $filterList = $factory->constructFilter($params); $filterList->addExtraData('filterType', 'apiId'); $filterList->setResourceId(APIIdFilterFields::getResourceId()); return $filterList->isValid() ? $filterList : null; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params) { $factory = new \App_ListFilter_FilterFactory(); $factory->setWhiteList(AlarmRuleFilterFields::getWhiteList()); $filterList = $factory->constructFilter($params); $filterList->setResourceId(AlarmRuleFilterFields::getResourceId()); if (!$filterList->isValid()) { $filterList = $factory->constructFilter(array()); } $filterList->addExtraData('filterType', 'alarmRule'); \App::log()->debug('Unused filters [' . implode(',', $factory->getUnusedList()) . ']'); return $filterList; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params, $throwEx = false) { $factory = new \App_ListFilter_FilterFactory(); $fields = PreBillFilterFields::getWhiteList(); $factory->setWhiteList($fields); $filterList = $factory->constructFilter($params); $filterList->addExtraData('filterType', 'prebill'); $filterList->setValidators(PreBillFilterFields::getValidatorSpec()); $filterList->setThrowExceptionOnValidationFail($throwEx); $filterList = $filterList->isValid() ? $filterList : new \App_ListFilter(); $filterList->setResourceId(PreBillFilterFields::getResourceId()); \App::log()->debug('Unused filters [' . implode(',', $factory->getUnusedList()) . ']'); return $filterList; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params, $org = null) { if (empty($org)) { throw new InvalidArgumentException('No organization provided'); } $params['organizationId'] = $org->getId(); $factory = new \App_ListFilter_FilterFactory(); $fields = TemplateFilterFields::getWhiteList(); $factory->setWhiteList($fields); $filterList = $factory->constructFilter($params); $filterList->addExtraData('filterType', 'template'); $filterList->setResourceId(TemplateFilterFields::getResourceId()); \App::log()->debug('Unused filters [' . implode(',', $factory->getUnusedList()) . ']'); return $filterList->isValid() ? $filterList : null; }
public function buildFilterList(array $params) { $factory = new \App_ListFilter_FilterFactory(); $factory->setWhiteList(ReportFilterFields::getWhiteList()); $factory->setGroupingWhiteList(ReportGroups::getWhiteList()); if (!isset($params[ReportFilterFields::REPORT_TYPE])) { $e = new MissingParameterException("You must filter report by type"); $e->setParamName(ReportFilterFields::REPORT_TYPE); throw $e; } $map = array(ReportModel::PRESENCE_DAILY => ReportModel::REPORT_GROUPS_SUPERVISION, ReportModel::PRESENCE_MONTHLY => ReportModel::REPORT_GROUPS_SUPERVISION, ReportModel::LOCATION_DAILY => ReportModel::REPORT_GROUPS_SUPERVISION, ReportModel::LOCATION_MONTHLY => ReportModel::REPORT_GROUPS_SUPERVISION, ReportModel::OPENED_SUP_ALARMS_DAILY => ReportModel::REPORT_GROUPS_SUPERVISION, ReportModel::OPENED_SUP_ALARMS_MONTHLY => ReportModel::REPORT_GROUPS_SUPERVISION, ReportModel::CLOSED_SUP_ALARMS_DAILY => ReportModel::REPORT_GROUPS_SUPERVISION, ReportModel::CLOSED_SUP_ALARMS_MONTHLY => ReportModel::REPORT_GROUPS_SUPERVISION, ReportModel::ACCUMULATED_SUMMARY_DAILY => ReportModel::REPORT_GROUPS_SUPERVISION, ReportModel::EXPENSE_DETAIL_MONTHLY => ReportModel::REPORT_GROUPS_CHARGES_DETAIL, ReportModel::EXPENSE_DETAIL_DAILY => ReportModel::REPORT_GROUPS_CHARGES_DETAIL, ReportModel::CONSUMPTION_DETAIL_DAILY => ReportModel::REPORT_GROUPS_CHARGES_DETAIL, ReportModel::SUBSCRIPTION_BASE_MONTHLY => ReportModel::REPORT_GROUPS_SUBSCRIPTION_BASE, ReportModel::SUBSCRIPTION_SNAPSHOT_DAILY => ReportModel::REPORT_GROUPS_SUBSCRIPTION_SNAPSHOT, ReportModel::KPI_MONTHLY => ReportModel::REPORT_GROUPS_KPI, ReportModel::CONSUMPTION_DAILY => ReportModel::REPORT_GROUPS_CONSUMPTION, ReportModel::SMIP_CONSUMPTION_MONTHLY => ReportModel::REPORT_GROUPS_SMIP_CONSUMPTION, ReportModel::SMIP_CONSUMPTION_DAILY => ReportModel::REPORT_GROUPS_SMIP_CONSUMPTION); if (!isset($map[$params[ReportFilterFields::REPORT_TYPE]])) { throw new InvalidArgumentException("Invalid report type"); } $params[ReportFilterFields::REPORT_GROUP] = $map[$params[ReportFilterFields::REPORT_TYPE]]; $filterList = $factory->constructFilter($params); $filterList->setResourceId(ReportFilterFields::getResourceId()); $filterList->addExtraData('filterType', 'report'); \App::log()->debug('Unused filters [' . implode(',', $factory->getUnusedList()) . ']'); return $filterList; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter */ public function buildStatusHistoryFilterList(array $params) { $factory = new \App_ListFilter_FilterFactory(); $factory->setWhiteList(StatusHistoryFilterFields::getWhiteList()); return $factory->factory($params, StatusHistoryFilterFields::getResourceId(), 'simStatusHistory', StatusHistoryFilterFields::getValidatorSpec()); }
public function testWhiteListAndBlackList() { $rawFilters = array('fieldName1' => "equal", 'fieldName2' => ">greaterThan", 'fieldName3' => "<lessThan", 'fieldName4' => "^like", 'fieldName5' => "bet!<>ween", 'fieldName6' => "!<>between", 'fieldName7' => "between!<>", 'fieldName8' => "<>", 'fieldName9' => "!", 'fieldName10' => "!>", 'fieldName11' => "<", 'fieldName12' => "!^"); $whiteList = array('fieldName1', 'fieldName2', 'fieldName3', 'NoFieldName'); $blackList = array('fieldName1'); $factory = new App_ListFilter_FilterFactory(); $factory->setWhiteList($whiteList); $factory->setBlackList($blackList); $filter = $factory->constructFilter($rawFilters); $this->assertNotNull($filter); $this->assertInstanceOf("App_ListFilter", $filter); $filters = $filter->getFilters(); $this->assertEquals(2, count($filters)); }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params) { /** * Check if ICC parameter exists and if it's valid */ /* REMOVED according to GLOBALPORTAL-12528 (https://jira.tid.es/browse/GLOBALPORTAL-12528) if (!empty($params['icc'])) { if (!$this->luhn($params['icc'])) { throw new AppEx\InvalidArgumentException('Invalid search query'); } } */ /** * Check if IMSI parameter exists and if it's valid */ if (!empty($params['imsi'])) { $imsis = explode('<>', $params['imsi']); if (count($imsis) == 2) { /** * Is it a range of IMSIs? */ /* REMOVED according to GLOBALPORTAL-12528 (https://jira.tid.es/browse/GLOBALPORTAL-12528) if (preg_match('/^[0-9]{15}$/', trim($imsis[0])) && preg_match('/^[0-9]{15}$/', trim($imsis[1]))) { */ $params['imsi'] = $imsis[0] . '<>' . $imsis[1]; /* REMOVED according to GLOBALPORTAL-12528 (https://jira.tid.es/browse/GLOBALPORTAL-12528) } else { throw new AppEx\InvalidArgumentException('Invalid search query'); } */ } else { /* REMOVED according to GLOBALPORTAL-12528 (https://jira.tid.es/browse/GLOBALPORTAL-12528) if (!preg_match('/^[0-9]{15}$/', trim($params['imsi']))) { throw new AppEx\InvalidArgumentException('Invalid search query'); } */ } } $factory = new \App_ListFilter_FilterFactory(); $factory->setWhiteList(StockFilterFields::getWhiteList()); $factory->getSortingWhiteList(StockSortingFields::getWhiteList()); $filterList = $factory->constructFilter($params); if (!$filterList->isValid()) { $filterList = new \App_ListFilter(); } $filterList->setResourceId(StockFilterFields::getResourceId()); $filterList->addExtraData('filterType', 'stock'); \App::log()->debug('Unused filters [' . implode(',', $factory->getUnusedList()) . ']'); return $filterList; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params) { $factory = new \App_ListFilter_FilterFactory(); $fields = UserFilterFields::getWhiteList(); if (!isset($params[UserFilterFields::ORGANIZATION_ID])) { $orgs = array(\App::getOrgUserLogged()->id); $orgService = OrgService::getInstance(); if ($childrenType = $orgService->getChildrenTypeByOrg(\App::getOrgUserLogged())) { $orgFilter = $orgService->buildFilterList(array('type' => $childrenType, OrgFilterFields::PARENT_ID => \App::getOrgUserLogged()->id)); $list = $orgService->listAll($childrenType, array('filterList' => $orgFilter, 'count' => 1000)); foreach ($list->getItems() as $item) { $orgs[] = $item->id; } } $params[UserFilterFields::ORGANIZATION_ID] = '[' . implode(',', $orgs) . ']'; } $factory->setWhiteList($fields); $sortingFields = UserSortingFields::getWhiteList(); $factory->setSortingWhiteList($sortingFields); $filterList = $factory->constructFilter($params); $filterList->addExtraData('filterType', 'user'); $filterList->setResourceId(UserFilterFields::getResourceId()); return $filterList->isValid() ? $filterList : null; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params) { if (!isset($params['type']) || !in_array($params['type'], array(OrgMasterModel::ORG_TYPE, OrgServiceProviderModel::ORG_TYPE, OrgCustomerModel::ORG_TYPE, OrgAggregatorModel::ORG_TYPE))) { return; } $orgType = $params['type']; unset($params['type']); if ($orgType === OrgServiceProviderModel::ORG_TYPE && \App::getOrgUserLogged()->getType() === OrgServiceProviderModel::ORG_TYPE) { if (!isset($params[ServiceProviderFilterFields::SERVICE_PROVIDER_ID_FOR_COMMERCIALS])) { $params[ServiceProviderFilterFields::SERVICE_PROVIDER_ID_FOR_COMMERCIALS] = \App::getOrgUserLogged()->id; } } $factory = new \App_ListFilter_FilterFactory(); $filterFieldsMap = array(OrgMasterModel::ORG_TYPE => '\\Application\\Model\\Filter\\Organization\\MasterFilterFields', OrgServiceProviderModel::ORG_TYPE => '\\Application\\Model\\Filter\\Organization\\ServiceProviderFilterFields', OrgCustomerModel::ORG_TYPE => '\\Application\\Model\\Filter\\Organization\\CustomerFilterFields', OrgAggregatorModel::ORG_TYPE => '\\Application\\Model\\Filter\\Organization\\AggregatorFilterFields'); $filterFieldsValidatorsMap = array(OrgMasterModel::ORG_TYPE => MasterFilterFields::getValidatorSpec(), OrgServiceProviderModel::ORG_TYPE => ServiceProviderFilterFields::getValidatorSpec(), OrgCustomerModel::ORG_TYPE => CustomerFilterFields::getValidatorSpec(), OrgAggregatorModel::ORG_TYPE => AggregatorFilterFields::getValidatorSpec()); if (isset($filterFieldsMap[$orgType])) { $class = $filterFieldsMap[$orgType]; $factory->setWhiteList($class::getWhiteList()); } $filterList = $factory->constructFilter($params); if (isset($class)) { $filterList->setResourceId($class::getResourceId()); } \App::log()->debug('Unused filters [' . implode(',', $factory->getUnusedList()) . ']'); $filterList->setValidators($filterFieldsValidatorsMap[$orgType]); return $filterList->isValid() ? $filterList : null; }
/** * Builds a filter list based on params. * @param array $params * @return App_ListFilter | null */ public function buildFilterList(array $params, $throwEx = false) { $factory = new \App_ListFilter_FilterFactory(); $factory->setWhiteList(ServicePackFilterFields::getWhiteList()); $factory->setSortingWhiteList(ServicePackFilterFields::getWhiteList()); $filterList = $factory->constructFilter($params); $filterList->setResourceId(ServicePackFilterFields::getResourceId()); $filterList->setValidators(ServicePackFilterFields::getValidatorSpec()); $filterList->setThrowExceptionOnValidationFail($throwEx); if (!$filterList->isValid()) { $filterList = $factory->constructFilter(array()); } $filterList->addExtraData('filterType', 'servicePack'); \App::log()->debug('Unused filters [' . implode(',', $factory->getUnusedList()) . ']'); return $filterList; }