protected function _getFilters() { $en_estado_filter = ['fieldType' => 'checklist', 'label' => 'Estado', 'placeholder' => 'Selecione os Estados', 'filter' => ['param' => 'En_Estado', 'value' => 'IN({val})']]; $en_municipio_filter = ['fieldType' => 'text', 'label' => 'Município', 'isInline' => false, 'isArray' => false, 'placeholder' => 'Selecione os Municípios', 'filter' => ['param' => 'En_Municipio', 'value' => 'ILIKE(*{val}*)']]; $ent_filters = parent::_getFilters(); $mod_filters = []; foreach ($ent_filters as $entity => $filters) { $mod_filters[$entity] = []; if (in_array($entity, ['space', 'agent'])) { $mod_filters[$entity][] = $en_estado_filter; $mod_filters[$entity][] = $en_municipio_filter; } foreach ($filters as $filter) { if (!(isset($filter['fieldType']) && $filter['fieldType'] === 'checkbox-verified')) { $mod_filters[$entity][] = $filter; } } } return $mod_filters; }
function register() { parent::register(); $app = App::i(); $app->hook('app.register', function (&$registry) { $group = null; $registry['entity_type_groups']['MapasCulturais\\Entities\\Space'] = array_filter($registry['entity_type_groups']['MapasCulturais\\Entities\\Space'], function ($item) use(&$group) { if ($item->name === 'Bibliotecas') { $group = $item; return $item; } else { return null; } }); $registry['entity_types']['MapasCulturais\\Entities\\Space'] = array_filter($registry['entity_types']['MapasCulturais\\Entities\\Space'], function ($item) use($group) { if ($item->id >= $group->min_id && $item->id <= $group->max_id) { return $item; } else { return null; } }); }); }
function register() { parent::register(); $app = App::i(); $app->hook('app.register', function (&$registry) { $group = null; $registry['entity_type_groups']['MapasCulturais\\Entities\\Space'] = array_filter($registry['entity_type_groups']['MapasCulturais\\Entities\\Space'], function ($item) use(&$group) { if ($item->name === 'Museus') { $group = $item; return $item; } else { return null; } }); $registry['entity_types']['MapasCulturais\\Entities\\Space'] = array_filter($registry['entity_types']['MapasCulturais\\Entities\\Space'], function ($item) use($group) { if ($item->id >= $group->min_id && $item->id <= $group->max_id) { return $item; } else { return null; } }); }); $terms = ['Antropologia e Etnografia', 'Arqueologia', 'Arquivístico', 'Artes Visuais', 'Ciências Naturais e História Natural', 'Ciência e Tecnologia', 'História', 'Imagem e Som', 'Virtual', 'Outros']; $taxo_def = new \MapasCulturais\Definitions\Taxonomy(101, 'mus_area', 'Tipologia de Acervo', $terms, false, true); $app->registerTaxonomy('MapasCulturais\\Entities\\Space', $taxo_def); }