TYPO3
7.6
Users
bogdan
Projects
Kapeli
Resources
Dash
Docsets
TYPO3
src
typo3
sysext
core
Classes
Imaging
IconProvider
BitmapIconProvider.php
Go to the documentation of this file.
1
<?php
2
namespace
TYPO3\CMS\Core\Imaging\IconProvider;
3
4
/*
5
* This file is part of the TYPO3 CMS project.
6
*
7
* It is free software; you can redistribute it and/or modify it under
8
* the terms of the GNU General Public License, either version 2
9
* of the License, or any later version.
10
*
11
* For the full copyright and license information, please read the
12
* LICENSE.txt file that was distributed with this source code.
13
*
14
* The TYPO3 project - inspiring people to share!
15
*/
16
17
use
TYPO3\CMS\Core\Imaging\Icon
;
18
use
TYPO3\CMS\Core\Imaging\IconProviderInterface
;
19
use
TYPO3\CMS\Core\Utility\GeneralUtility
;
20
use
TYPO3\CMS\Core\Utility\PathUtility
;
21
use
TYPO3\CMS\Core\Utility\StringUtility
;
22
26
class
BitmapIconProvider
implements
IconProviderInterface
27
{
32
public
function
prepareIconMarkup
(
Icon
$icon, array $options = array())
33
{
34
$icon->
setMarkup
($this->
generateMarkup
($icon, $options));
35
}
36
43
protected
function
generateMarkup
(
Icon
$icon, array $options)
44
{
45
if
(empty($options[
'source'
])) {
46
throw
new \InvalidArgumentException(
'['
. $icon->
getIdentifier
() .
'] The option "source" is required and must not be empty'
, 1440754980);
47
}
48
49
$source = $options[
'source'
];
50
51
if
(
StringUtility::beginsWith
($source,
'EXT:'
) || !
StringUtility::beginsWith
($source,
'/'
)) {
52
$source =
GeneralUtility::getFileAbsFileName
($source);
53
}
54
$source =
PathUtility::getAbsoluteWebPath
($source);
55
56
return
'<img src="'
. htmlspecialchars($source) .
'" width="'
. $icon->
getDimension
()->getWidth() .
'" height="'
. $icon->
getDimension
()->getHeight() .
'" />'
;
57
}
58
}
Generated on Wed Nov 11 2015 01:51:51 for TYPO3 by
1.8.3