protected function initialize_facet($reply_set, $query, $config) { $facets = array(); if (property_exists($reply_set, 'facets') && property_exists($reply_set->facets, 'facet')) { foreach ($reply_set->facets->facet as $facet) { $helper = new AfsFacetHelper($facet, $query, $config, $this->get_meta()->get_feed()); $facets[$helper->get_id()] = $helper; } } $facet_mgr = $query->get_facet_manager(); if ($facet_mgr->has_facets()) { sort_array_by_key(array_keys($facet_mgr->get_facets()), $facets); } $this->facets = array_values($facets); // preserve compatibility }
public function testRetrieveStickyness() { $input = json_decode('{ "afs:t": "FacetTree", "node": [ { "key": "false", "labels": [ { "label": "BAD" } ], "items": 67 } ], "layout": "TREE", "type": "BOOL", "id": "FOO", "labels": [ { "label": "String facet" } ], "sticky": "true" }'); $config = new AfsHelperConfiguration(); $helper = new AfsFacetHelper($input, new AfsQuery(), $config); $this->assertEquals($helper->get_label(), "String facet"); $this->assertEquals('FOO', $helper->get_id()); $this->assertEquals(AfsFacetType::BOOL_TYPE, $helper->get_type()); $this->assertEquals(AfsFacetLayout::TREE, $helper->get_layout()); $this->assertEquals(true, $helper->is_sticky()); }