Framework  3.9
FacetManager Class Reference

Public Member Functions

 __construct ($id, $target)
 
 addFacet ($title, $facet)
 
 onTagItem ($item, $attrs)
 
 writeScript ()
 
 drawForm ()
 

Public Attributes

 $id
 
 $target
 
 $facets
 

Detailed Description

Definition at line 50 of file facet_manager.inc.

Constructor & Destructor Documentation

◆ __construct()

FacetManager::__construct (   $id,
  $target 
)

Definition at line 56 of file facet_manager.inc.

57  {
58  $this->id = $id;
59  $this->target = $target;
60  $this->facets = array();
61 
62  $this->target->addFacetTaggingHandler(array($this, onTagItem));
63  }
onTagItem($item, $attrs)

Member Function Documentation

◆ addFacet()

FacetManager::addFacet (   $title,
  $facet 
)

Definition at line 65 of file facet_manager.inc.

66  {
67  $this->facets[$title] = $facet;
68  $facet->manager = $this;
69 
70  return $facet;
71  }

◆ drawForm()

FacetManager::drawForm ( )

Definition at line 101 of file facet_manager.inc.

102  {
103 ?>
104 <div id='<?echo $this->id?>' class='facet_form'>
105 <?
106  foreach($this->facets as $title => $facet)
107  {
108 ?>
109 <span style='display: inline-block'><label for='<?echo $facet->getID()?>'><?echo $title?></label>
110 <?
111  $facet->drawFacet();
112 ?>
113 </span>
114 <?
115  }
116 ?>
117 </div>
118 <?
119  }

◆ onTagItem()

FacetManager::onTagItem (   $item,
  $attrs 
)

Definition at line 73 of file facet_manager.inc.

74  {
75  if ($item instanceof AbstractSearchResult)
76  {
77  $item = $item->item;
78  }
79 
80  foreach ($this->facets as $title => $facet)
81  {
82  $attrs = $facet->onTagItem($item, $attrs);
83  }
84 
85  return $attrs;
86  }

◆ writeScript()

FacetManager::writeScript ( )

Definition at line 88 of file facet_manager.inc.

89  {
90  $script = "<script type=\"text/javascript\">\nwindow.addEvent('domready', function()\n{\n\tvar {$this->target->getID()}_facet_manager = new FacetManager('{$this->target->getID()}');\n";
91 
92  foreach($this->facets as $facet)
93  {
94  $script .= $facet->writeScript();
95  }
96 
97  $script .= "\n});\n</script>";
98  return $script;
99  }

Member Data Documentation

◆ $facets

FacetManager::$facets

Definition at line 54 of file facet_manager.inc.

◆ $id

FacetManager::$id

Definition at line 52 of file facet_manager.inc.

◆ $target

FacetManager::$target

Definition at line 53 of file facet_manager.inc.


The documentation for this class was generated from the following file: