Archived
1
0
Fork 0

app/library/ViewHelper/Icon.php: rewritten for Font Awesome

This commit is contained in:
Henrik Hautakoski 2018-04-11 20:44:15 +02:00
parent fcabc45602
commit 023bead0d9

View file

@ -9,21 +9,42 @@ namespace Httpcb\ViewHelper;
*/ */
class Icon extends AbstractHelper class Icon extends AbstractHelper
{ {
protected $_prefix = [
'brand' => 'fab',
'regular' => 'far',
'solid' => 'fas'
];
public function icon($name, $args = array()) public function icon($name, $args = array())
{ {
list($prefix, $name) = $this->_parseName($name);
$classes = array( $classes = array(
'icon', 'icon',
'ion-' . $name $prefix,
'fa-' . $name
); );
if (is_array($args)) { if (is_array($args)) {
foreach($args as $arg) { foreach($args as $arg) {
$classes[] .= 'ion-' . $arg; $classes[] .= 'fa-' . $arg;
} }
} }
$classes = implode(' ', $classes); $classes = implode(' ', $classes);
return '<i class="' . $classes . '"></i>'; return '<i class="' . $classes . '"></i>';
} }
protected function _parseName($name)
{
$parts = explode('/', $name);
if (count($parts) > 1) {
$prefix = $parts[0];
$name = $parts[1];
} else {
$prefix = 'regular';
}
return array($this->_prefix[$prefix], $name);
}
} }