addClass() public method

add class to the element
Since: 2.2.0
public addClass ( string $className = null ) : Element
$className string name of the classes
return Element
 /**
  * testClass
  *
  * @since 2.2.0
  *
  * @param array $className
  * @param string $expect
  *
  * @dataProvider providerClass
  */
 public function testClass($className = array(), $expect = null)
 {
     /* setup */
     $element = new Html\Element();
     $element->init('a');
     /* actual */
     $actual = $element->addClass($className[0])->removeClass($className[1])->render();
     /* compare */
     $this->assertEquals($expect, $actual);
 }
Example #2
0
 /**
  * render the breadcrumb trail as an unordered list
  *
  * @since 2.1.0
  *
  * @return string
  */
 public function render()
 {
     $output = Hook::trigger('breadcrumbStart');
     $outputItem = null;
     /* breadcrumb keys */
     $breadcrumbKeys = array_keys($this->_breadcrumbArray);
     $lastKey = end($breadcrumbKeys);
     /* html elements */
     $linkElement = new Html\Element();
     $linkElement->init('a');
     $itemElement = new Html\Element();
     $itemElement->init('li');
     $listElement = new Html\Element();
     $listElement->init('ul', ['class' => $this->_optionArray['className']['list']]);
     /* collect item output */
     foreach ($this->_breadcrumbArray as $key => $value) {
         $title = array_key_exists('title', $value) ? $value['title'] : null;
         $route = array_key_exists('route', $value) ? $value['route'] : null;
         if ($title) {
             $outputItem .= '<li>';
             /* create a link */
             if ($route) {
                 $outputItem .= $linkElement->attr('href', $this->_registry->get('parameterRoute') . $route)->text($title);
             } else {
                 $outputItem .= $title;
             }
             $outputItem .= '</li>';
             /* add divider */
             if ($key !== $lastKey) {
                 $outputItem .= $itemElement->addClass($this->_optionArray['className']['divider'])->text($this->_optionArray['divider']);
             }
         }
     }
     /* collect list output */
     if ($outputItem) {
         $output = $listElement->html($outputItem);
     }
     $output .= Hook::trigger('breadcrumbEnd');
     return $output;
 }