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
 }
Beispiel #2
0
 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());
 }