1
0
Fork 0
MySQLDumper/application/views/helpers/GetIcon.php

88 Zeilen
2,4 KiB
PHP

2011-06-10 21:55:32 +00:00
<?php
/**
* This file is part of MySQLDumper released under the GNU/GPL 2 license
* http://www.mysqldumper.net
*
* @package MySQLDumper
* @subpackage View_Helpers
* @version SVN: $Rev$
* @author $Author$
*/
/**
* Get img-tag for icon
*
* @package MySQLDumper
* @subpackage View_Helpers
*/
class Msd_View_Helper_GetIcon extends Zend_View_Helper_Abstract
2011-06-10 21:55:32 +00:00
{
/**
* Get html-img-tag for icon image
*
2012-11-05 19:30:10 +00:00
* @throws Msd_Exception
*
* @param string $name Icon name
* @param string $title HTML title tag
* @param int $size Size in Pixel (defines the sub folder to load from)
2011-06-10 21:55:32 +00:00
*
* @return string
*/
public function getIcon($name, $title = '', $size = null)
2011-06-10 21:55:32 +00:00
{
static $baseUrl = false;
if (!$baseUrl) {
$baseUrl = Zend_Controller_Front::getInstance()->getBaseUrl();
}
2012-11-05 19:30:10 +00:00
$icons = $this->_getIconFilenames();
2011-06-10 21:55:32 +00:00
if (!isset($icons[$name])) {
throw new Msd_Exception(
'GetIcon: unknown icon \'' . $name . '\' requested'
2011-06-10 21:55:32 +00:00
);
}
$img = '<img src="' . $baseUrl . '/%s/%s" alt="%s" title="%s" />';
$config = Msd_Registry::getConfig();
if ($size !== null) {
$img = '<img src="' . $baseUrl . '/%s/%sx%s/%s" alt="%s" title="%s" />';
2011-06-10 21:55:32 +00:00
$ret = sprintf(
$img,
$config->getParam('paths.iconPath'),
2011-06-10 21:55:32 +00:00
$size,
$size,
$icons[$name],
$title, $title
);
} else {
$ret = sprintf(
$img,
$config->getParam('paths.iconPath'),
2011-06-10 21:55:32 +00:00
$icons[$name],
$title,
$title
);
}
return $ret;
}
/**
* Get default values from defaultConfig.ini
*
* @return object
*/
private function _getIconFilenames()
2011-06-10 21:55:32 +00:00
{
static $icons = false;
if (!$icons) {
$config = $this->view->config;
$file = realpath(
2012-08-04 10:40:48 +00:00
APPLICATION_PATH . '/../public/'
. $config->getParam('paths.iconPath') . '/icon.ini'
2011-06-10 21:55:32 +00:00
);
$iconsIni = new Zend_Config_Ini($file, 'icons');
$icons = $iconsIni->toArray();
2011-06-10 21:55:32 +00:00
unset($iconsIni);
}
return $icons;
}
}