This repository has been archived on 2024-09-05. You can view files and clone it, but cannot push or open issues or pull requests.
shimmie2/ext/random_list/main.php
DrudexSoftware e54c8439cb Random List now displays actual random images...
Also arrowkey navigation extension now supports Random List extension
2013-03-10 07:53:09 +01:00

50 lines
1.9 KiB
PHP

<?php
/*
* Name: Random List
* Author: Drudex Software <support@drudexsoftware.com>
* Link: http://www.drudexsoftware.com
* License: GPLv2
* Description: Allows displaying a page with random images
* Documentation:
*/
class RandomList extends Extension {
public function onPageRequest(PageRequestEvent $event) {
global $config, $page;
if($event->page_matches("random")) {
// set vars
$images_per_page = $config->get_int("random_images_list_count", 12);
$random_images = array();
$random_html = "<b>Refresh the page to view more images</b>
<div class='shm-image-list'>";
// generate random images
for ($i = 0; $i < $images_per_page; $i++)
array_push($random_images, Image::by_random());
// create html to display images
foreach ($random_images as $image)
$random_html .= $this->build_random_html($image);
// display it
$random_html .= "</div>";
$page->add_block(new Block("Random Images", $random_html));
}
}
private function build_random_html(Image $image, $query=null) {
$i_id = int_escape($image->id);
$h_view_link = make_link("post/view/$i_id", $query);
$h_thumb_link = $image->get_thumb_link();
$h_tip = html_escape($image->get_tooltip());
$tsize = get_thumbnail_size($image->width, $image->height);
return "
<a href='$h_view_link' class='thumb shm-thumb' data-post-id='$i_id'>
<img id='thumb_$i_id' height='{$tsize[1]}' width='{$tsize[0]}' class='lazy' data-original='$h_thumb_link' src='/lib/static/grey.gif'><noscript>
<img id='thumb_$i_id' height='{$tsize[1]} width='{$tsize[0]} src='$h_thumb_link'></noscript></a>
";
}
}
?>