eventListener.xml 0100777 0000000 0000000 00000001041 13317403010 011351 0 ustar 00
wcf\system\html\output\node\HtmlOutputNodeProcessor
beforeProcess
wcf\system\event\listener\ClickAndLoadImgListener
files.tar 0100777 0000000 0000000 00000021000 13317445303 007622 0 ustar 00 lib/ 0040777 0000000 0000000 00000000000 13317402544 006565 5 ustar 00 lib/system/ 0040777 0000000 0000000 00000000000 13317402544 010111 5 ustar 00 lib/system/event/ 0040777 0000000 0000000 00000000000 13317402544 011232 5 ustar 00 lib/system/event/listener/ 0040777 0000000 0000000 00000000000 13317403061 013052 5 ustar 00 lib/system/event/listener/ClickAndLoadImgListener.class.php 0100777 0000000 0000000 00000001754 13317405050 021311 0 ustar 00 userCanSkipClickAndLoad || isset($_COOKIE['clickandload'])) {
$clickandloadprocess = '0';
} else {
$clickandloadprocess = '1';
}
if ($clickandloadprocess) {
$elements = $eventObj->getDocument()->getElementsByTagName('img');
foreach ($elements as $element) {
$class = $element->getAttribute('class');
if (!preg_match('~\bsmiley\b~', $class)) {
$src = $element->getAttribute('src');
$alt = $element->getAttribute('alt');
$element = $eventObj->renameTag($element, 'img-clickandload');
$element->setAttribute('src', $src);
if ($alt) {
$element->setAttribute('alt', $alt);
}
}
}
}
}
}
lib/system/html/ 0040777 0000000 0000000 00000000000 13317402544 011055 5 ustar 00 lib/system/html/output/ 0040777 0000000 0000000 00000000000 13317402544 012415 5 ustar 00 lib/system/html/output/node/ 0040777 0000000 0000000 00000000000 13317402544 013342 5 ustar 00 lib/system/html/output/node/HtmlOutputNodeImgClickandload.class.php 0100777 0000000 0000000 00000003534 13317361057 023050 0 ustar 00 getAttribute('class');
if (!preg_match('~\bsmiley\b~', $class)) {
//set rand ID
$id = rand();
//save original data
$src = $element->getAttribute('src');
$datavalid = $element->getAttribute('data-valid');
$srcset = $element->getAttribute('srcset');
$alt = $element->getAttribute('alt');
//set placeholder image
$img = $element->ownerDocument->createElement('img');
$img->setAttribute('src', WCF::getPath() . 'images/play-circle.svg');
//set script
$img->setAttribute('onclick', "clickandload('" . $id . "')");
//set new attributes
$img->setAttribute('data-src', $src);
if ($srcset) {
$img->setAttribute('srcset', $srcset);
}
if ($class) {
$img->setAttribute('class', $class . ' clickandload ' .$id);
} else {
$img->setAttribute('class', 'clickandload ' .$id);
}
if ($datavalid) {
$img->setAttribute('data-valid', $datavalid);
}
if ($srcset) {
$img->setAttribute('srcset', $srcset);
}
if ($alt) {
$img->setAttribute('alt', $alt);
}
//insert new image
$element->parentNode->insertBefore($img, $element);
$img->appendChild($element);
//delete old image
DOMUtil::removeNode($element);
}
}
}
} package.xml 0100777 0000000 0000000 00000006553 13317445277 010157 0 ustar 00
1.0.0 Beta 2
2018-07-05
]]>
com.woltlab.wcf