diff options
Diffstat (limited to 'views/default/icon/default.php')
| -rw-r--r-- | views/default/icon/default.php | 80 | 
1 files changed, 80 insertions, 0 deletions
| diff --git a/views/default/icon/default.php b/views/default/icon/default.php new file mode 100644 index 000000000..7f13a1189 --- /dev/null +++ b/views/default/icon/default.php @@ -0,0 +1,80 @@ +<?php +/** + * Generic icon view. + * + * @package Elgg + * @subpackage Core + * + * @uses $vars['entity']     The entity the icon represents - uses getIconURL() method + * @uses $vars['size']       topbar, tiny, small, medium (default), large, master + * @uses $vars['href']       Optional override for link + * @uses $vars['img_class']  Optional CSS class added to img + * @uses $vars['link_class'] Optional CSS class for the link + */ + +$entity = $vars['entity']; + +$sizes = array('small', 'medium', 'large', 'tiny', 'master', 'topbar'); +// Get size +if (!in_array($vars['size'], $sizes)) { +	$vars['size'] = "medium"; +} + +$class = elgg_extract('img_class', $vars, ''); + +if (isset($entity->name)) { +	$title = $entity->name; +} else { +	$title = $entity->title; +} +$title = htmlspecialchars($title, ENT_QUOTES, 'UTF-8', false); + +$url = $entity->getURL(); +if (isset($vars['href'])) { +	$url = $vars['href']; +} + +$icon_sizes = elgg_get_config('icon_sizes'); +$size = $vars['size']; + +if (!isset($vars['width'])) { +	$vars['width'] = $size != 'master' ? $icon_sizes[$size]['w'] : null; +} +if (!isset($vars['height'])) { +	$vars['height'] = $size != 'master' ? $icon_sizes[$size]['h'] : null; +} + +$img_params = array( +	'src' => $entity->getIconURL($vars['size']), +	'alt' => $title,	 +); + +if (!empty($class)) { +	$img_params['class'] = $class; +} + +if (!empty($vars['width'])) { +	$img_params['width'] = $vars['width']; +} + +if (!empty($vars['height'])) { +	$img_params['height'] = $vars['height']; +} + +$img = elgg_view('output/img', $img_params); + +if ($url) { +	$params = array( +		'href' => $url, +		'text' => $img, +		'is_trusted' => true, +	); +	$class = elgg_extract('link_class', $vars, ''); +	if ($class) { +		$params['class'] = $class; +	} + +	echo elgg_view('output/url', $params); +} else { +	echo $img; +} | 
