PDA

View Full Version : Mini Mods - Random Logo/Image Rotator


hawaiibillT
11-04-2013, 11:00 PM
Something like this could already be here but I figured someone might have a use for it. A simple php file to randomly rotate images. I use it to rotate my logos. I've only uses it on 4.2.1 but it should work on all versions of VB as its worked on everything from nuke to wordpress so far.

INSTRUCTIONS
1. Modify the $folder setting in the configuration section.
2. Add image types if needed (most users can ignore that part).
3. Upload this file (rotate.php) to your webserver. I recommend uploading it to the same folder as the images you are going to use. images/rotate/rotate.php.
4.Edit your style by adding to where your logo image is called. In the default style its in
the header template <img src="http://examples.com/images/rotate/rotate.php" alt="{vb:rawphrase x_powered_by_vbulletin, {vb:raw vboptions.bbtitle}}" /> Other styles might be in a different template. One I have its in navbar.
5. You can also specify a single image to display like this:

<img src="http://example.com/rotate.php?img=gorilla.jpg">

This would specify that an image named "gorilla.jpg" located
in the image-rotation folder should be displayed.

<?php

/*

AUTOMATIC IMAGE ROTATOR
Version 2.2 - December 4, 2003
Copyright (c) 2002-2003 Dan P. Benjamin, Automatic, Ltd.
All Rights Reserved.


/* ------------------------- CONFIGURATION -----------------------


Set $folder to the full path to the location of your images.
For example: $folder = '/user/me/example.com/images/';
If the rotate.php file will be in the same folder as your
images then you should leave it set to $folder = '.';

*/


$folder = '.';


/*

Most users can safely ignore this part. If you're a programmer,
keep reading, if not, you're done. Go get some coffee.

If you'd like to enable additional image types other than
gif, jpg, and png, add a duplicate line to the section below
for the new image type.

Add the new file-type, single-quoted, inside brackets.

Add the mime-type to be sent to the browser, also single-quoted,
after the equal sign.

For example:

PDF Files:

$extList['pdf'] = 'application/pdf';

CSS Files:

$extList['css'] = 'text/css';

You can even serve up random HTML files:

$extList['html'] = 'text/html';
$extList['htm'] = 'text/html';

Just be sure your mime-type definition is correct!

*/

$extList = array();
$extList['gif'] = 'image/gif';
$extList['jpg'] = 'image/jpeg';
$extList['jpeg'] = 'image/jpeg';
$extList['png'] = 'image/png';


// You don't need to edit anything after this point.


// --------------------- END CONFIGURATION -----------------------

$img = null;

if (substr($folder,-1) != '/') {
$folder = $folder.'/';
}

if (isset($_GET['img'])) {
$imageInfo = pathinfo($_GET['img']);
if (
isset( $extList[ strtolower( $imageInfo['extension'] ) ] ) &&
file_exists( $folder.$imageInfo['basename'] )
) {
$img = $folder.$imageInfo['basename'];
}
} else {
$fileList = array();
$handle = opendir($folder);
while ( false !== ( $file = readdir($handle) ) ) {
$file_info = pathinfo($file);
if (
isset( $extList[ strtolower( $file_info['extension'] ) ] )
) {
$fileList[] = $file;
}
}
closedir($handle);

if (count($fileList) > 0) {
$imageNumber = time() % count($fileList);
$img = $folder.$fileList[$imageNumber];
}
}

if ($img!=null) {
$imageInfo = pathinfo($img);
$contentType = 'Content-type: '.$extList[ $imageInfo['extension'] ];
header ($contentType);
readfile($img);
} else {
if ( function_exists('imagecreate') ) {
header ("Content-type: image/png");
$im = @imagecreate (100, 100)
or die ("Cannot initialize new GD image stream");
$background_color = imagecolorallocate ($im, 255, 255, 255);
$text_color = imagecolorallocate ($im, 0,0,0);
imagestring ($im, 2, 5, 5, "IMAGE ERROR", $text_color);
imagepng ($im);
imagedestroy($im);
}
}

?>

Name the php file whatever you want and change the call name to that file.

ForceHSS
11-05-2013, 06:31 PM
should of been posted in Template Modifications

hawaiibillT
11-05-2013, 07:34 PM
woops, still learning my way around. is it moveable?

ForceHSS
11-05-2013, 08:17 PM
woops, still learning my way around. is it moveable?
You will need to request a mod or admin to move it.

TheLastSuperman
11-06-2013, 02:28 AM
Moved ;) however if my memory serves me correct... this has been posted before if not included with something else can't recall 100% though so leaving for now if I find the duplicate I'll let you know and remedy the situation then if not we may never know like a tootsie roll pop :p.

ozzy47
11-06-2013, 02:50 AM
It was here, https://vborg.vbsupport.ru/showthread.php?t=267742&highlight=rotate.php

here, https://vborg.vbsupport.ru/showthread.php?t=267142&highlight=rotate.php

Mod version here, https://vborg.vbsupport.ru/showthread.php?t=228130&highlight=rotate.php

TheLastSuperman
11-06-2013, 03:26 AM
Thanks Ozzy I knew it was here somewhere! With that being said hawaiibillT I'm going to graveyard this since it's already been released more than once apparently and w/ good info on how to include/use it etc. We do appreciate the contribution and effort though on your part, never hesitate to post something because not everything is out just so happens every so often it is, no worries ;).