| Server IP : 195.130.67.5 / Your IP : 216.73.217.154 Web Server : Microsoft-IIS/10.0 System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586 User : IUSR ( 0) PHP Version : 7.4.19 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Old Sites/ict/wp-content/plugins/smart-slider-3/Nextend/Framework/Image/ |
Upload File : |
<?php
namespace Nextend\Framework\Image;
use Nextend\Framework\Asset\Js\Js;
use Nextend\Framework\Filesystem\Filesystem;
use Nextend\Framework\Image\Joomla\JoomlaImage;
use Nextend\Framework\Image\WordPress\WordPressImage;
use Nextend\Framework\Misc\Base64;
use Nextend\Framework\Pattern\SingletonTrait;
use Nextend\Framework\ResourceTranslator\ResourceTranslator;
class Image {
use SingletonTrait;
/**
* @var AbstractPlatformImage
*/
private static $platformImage;
public function __construct() {
self::$platformImage = new WordPressImage();
}
public static function init() {
if (!self::$platformImage) {
new Image();
}
}
public static function enqueueHelper() {
$parameters = array(
'siteKeywords' => ResourceTranslator::getResourceIdentifierKeywords(),
'imageUrls' => ResourceTranslator::getResourceIdentifierUrls(),
'protocolRelative' => ResourceTranslator::isProtocolRelative()
);
$parameters['placeholderImage'] = '$ss3-frontend$/images/placeholder/image.png';
$parameters['placeholderRepeatedImage'] = '$ss3-frontend$/images/placeholder/image.png';
Js::addFirstCode('new _N2.ImageHelper(' . json_encode($parameters) . ');');
}
public static function initLightbox() {
self::$platformImage->initLightbox();
}
public static function onImageUploaded($filename) {
self::$platformImage->onImageUploaded($filename);
}
public static function SVGToBase64($image) {
$ext = pathinfo($image, PATHINFO_EXTENSION);
if ($ext == 'svg' && ResourceTranslator::isResource($image)) {
return 'data:image/svg+xml;base64,' . Base64::encode(Filesystem::readFile(ResourceTranslator::toPath($image)));
}
return ResourceTranslator::toUrl($image);
}
}