Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > General > Member Archives
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Rotate your logos Details »»
Rotate your logos
Version: , by Sparkz Sparkz is offline
Developer Last Online: Oct 2013 Show Printable Version Email this Page

Version: Unknown Rating:
Released: 05-06-2002 Last Update: Never Installs: 0
 
No support by the author.

This template mod randomly picks an image from a specified folder to be used as the forum logo.

In your phpinclude-template, add this code:
PHP Code:
$logos = array();
$logodir "images/";

function 
make_seed() {
    list(
$usec$sec) = explode(' 'microtime());
    return (float) 
$sec + ((float) $usec 100000);
}
srand(make_seed());

if (
$handle opendir($logodir)) {
    while (
false !== ($file readdir($handle))) { 
        if (
$file != "." && $file != "..") { 
            
array_push ($logos$logodir $file); 
        } 
    }
    
closedir($handle);
    
// $logo = rand(0, count ($logos));
    
$logo rand(0count ($logos) - 1); // Corrected a small bug
    
$titleimage $logos[$logo];

Change the value of $logodir to the directory where you have your logos.

and in your header-template, change { titleimage} to $titleimage

That should be it, really.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #12  
Old 05-07-2002, 05:15 PM
tkieffer's Avatar
tkieffer tkieffer is offline
 
Join Date: May 2002
Posts: 7
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nifty! It's all fixed.

You get a big shiny golden star in my book!
Reply With Quote
  #13  
Old 05-08-2002, 12:26 PM
geniuscrew's Avatar
geniuscrew geniuscrew is offline
 
Join Date: Nov 2001
Location: UK
Posts: 346
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by Sparkz
Besides, this saves bandwidth, as it is server side.

Using DHTML, you'd have to pass the whole list if images to the client, plus the code to actually do the pick which image to show.
That's why i don't use it lol

Nice 'hack' though :bunny:
Reply With Quote
  #14  
Old 05-08-2002, 01:30 PM
Sparkz's Avatar
Sparkz Sparkz is offline
 
Join Date: Nov 2001
Posts: 544
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If you only have a few images to rotate, you could just set the content of $logos manually. Would result in a bit less processing time.

Something like:
PHP Code:
$logodir "images/";
$logos = array
(
   
$logodir "filename.png",
   
$logodir "filename2.png"
);

function 
make_seed() {
    list(
$usec$sec) = explode(' 'microtime());
    return (float) 
$sec + ((float) $usec 100000);
}
srand(make_seed());

$logo rand(0count ($logos) - 1);
$titleimage $logos[$logo]; 
Would save the server from having to list the directory every time a page was loaded.
Reply With Quote
  #15  
Old 05-10-2002, 01:13 PM
tkieffer's Avatar
tkieffer tkieffer is offline
 
Join Date: May 2002
Posts: 7
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Excellent! I upgraded to the predefined array and it is noticably faster.
Reply With Quote
  #16  
Old 06-23-2002, 09:35 PM
afterlab's Avatar
afterlab afterlab is offline
 
Join Date: Oct 2001
Location: Dallas, TX
Posts: 327
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Is there anyway that I can get it show the random image plus a link for each one. Basically, all I need is another variable that just displays the filename, without the directory, and extensions.
Reply With Quote
  #17  
Old 06-28-2002, 12:13 PM
afterlab's Avatar
afterlab afterlab is offline
 
Join Date: Oct 2001
Location: Dallas, TX
Posts: 327
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Anyone? [BUMP]
Reply With Quote
  #18  
Old 06-28-2002, 03:21 PM
Sparkz's Avatar
Sparkz Sparkz is offline
 
Join Date: Nov 2001
Posts: 544
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Try this:
PHP Code:
$logodir "images/";
$logos = array
(
   array (
$logodir "filename.png","http://mylink/"),
   array (
$logodir "filename2.png","http://anotherlink/")
);

function 
make_seed() {
    list(
$usec$sec) = explode(' 'microtime());
    return (float) 
$sec + ((float) $usec 100000);
}
srand(make_seed());

$logo rand(0count ($logos) - 1);
list (
$titleimage$titleurl) = $logos[$logo]; 
Now you can use $titleimage and $titleurl in your templates.
Reply With Quote
  #19  
Old 06-28-2002, 09:52 PM
afterlab's Avatar
afterlab afterlab is offline
 
Join Date: Oct 2001
Location: Dallas, TX
Posts: 327
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Worked perfect, thanks.
Reply With Quote
  #20  
Old 06-28-2002, 11:53 PM
Sparkz's Avatar
Sparkz Sparkz is offline
 
Join Date: Nov 2001
Posts: 544
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

My pleasure
Reply With Quote
  #21  
Old 06-28-2002, 11:56 PM
Sparkz's Avatar
Sparkz Sparkz is offline
 
Join Date: Nov 2001
Posts: 544
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Just looked at your site... Like what you did with this mod
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 06:09 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04902 seconds
  • Memory Usage 2,323KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (3)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete