The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Dion Dev Shoutbox v2.0 (uses AJAX) Details »» | |||||||||||||||||||||||||||||||
Preview:
http://www.diondev.com/vb Screenshots: (see attached) Features: - Uses AJAX so new shouts show up without the page having to be refreshed - Set the title and other language features to anything you want - Will ignore empty shouts, and ones that are being repeated one after the other - Enter how many shouts you want it to show - Enter how many days you want it to store shouts in the database (even forever) - Enable or disable guest shouting - Members names are linked to their profile pages - Admins can delete shouts directly through the shoutbox itself - A fully customizable shout archive with pagination - Works with any custom theme automatically - Parses BBcode, smilies, and images if you allow it to - Installation takes about 5 minutes and is all done through the admin CP - You can even modify the amount of time it waits in between checking for new shouts - Plus lots more! Installation instructions: 1.a) Extract the "ddshoutbox2.zip" file onto your computer using a program like winrar, or winzip 2. Log in to your admin CP, everything will be done within here 3.a) Go to Plugins & Products -> Manage Products 3.b) Click on the "[Add/Import Product]" link 3.c) Browse for the "product-ddsb2.xml" file 3.d) Click on the "Import" button 4. Upload all the ".js" and ".php" files into your main vbulletin directory (the same directory as index.php) 5 Decide where you want the shoutbox on your site (I recommend the top of your forum index) If you want the shoutbox at the top of your forum index, go to the "FORUMHOME" template, find: "<!-- / guest welcome message --> <br /> </if>" Copy and paste the contents of "template.txt" underneath. If you want it at the top of every page, go to the "navbar" template, find: "<!-- / nav buttons bar --> <br />" Copy and paste the contents of "template.txt" underneath. 6.a) Go to vBulletin Options -> vBulletin Options 6.b) Select "Dion Dev Shoutbox v2.0 Options" 6.c) Click on the "Edit Settings" button 6.d) Edit all of the values as you desire 6.e) Click on the "Save" button Additional options: 1. If you want to change the time in which it checks for new shouts, open up "shoutshow.js" with notepad, find "timeint = 2000" at the top of the file, and change "2000" to the time (in milliseconds) you want it to wait before checking for new shouts. 1 second equals 1000 milliseconds. If you want shouts to show up faster, set it to a lower number. If you are worried about server load, set it higher. Don't forget to upload it to your server after you change it so the new timer takes effect. 2. You can edit the shoutbox width and height by changing the iframe width="100%" and height="200" attributes from the "template.txt" file. You're done! Please donate anything you can spare to donations@diondev.com before removing my copyright notice. Download Now
Screenshots
Show Your Support
|
Comments |
#52
|
|||
|
|||
Expect version 2.1 within the next couple of weeks.
|
#53
|
|||
|
|||
Some noob questions and feedback.
Question 1 Is this shoutbox server intensive? Question 2 Will there be pruning after, say, 24 hours or 48 hours? Question 3 Can admin have the choice to position the the date/time be on the extremely left or right? Question 4 Will this work with forums with vBSEO installed? |
#54
|
|||
|
|||
Quote:
2. you set the pruning timer to however many days you want. 3. that can be done by editing one of the php files 4. yes |
#55
|
|||
|
|||
Question 1
Can this be styles to something like Inferno Shoutbox? i only have one question :-D download, i hate iframes, but this is the fast shoutbox around |
#56
|
||||
|
||||
thanks for this
Tagged, Nominated and Installed |
#57
|
|||
|
|||
nice simple shoutbox.
my only problem with it is that the ajax redraws the entire content of the text shown to the users every 2 seconds. You can increase the timer, but it's worthless as it makes the shoutbox feel laggy. The proper way to do it is to append only new content to the output div OR have a hash of the last output to the user, and redraw only if the hash changes (new content to display). |
#58
|
|||
|
|||
i made a quick hack to allow this shoutbox to work without redrawing constantly and add a userlist.
new table: Code:
CREATE TABLE `shoutbox_hash` ( `userid` int(11) NOT NULL default '0', `hash` varchar(128) NOT NULL default '0', `ts` int(10) NOT NULL default '0', UNIQUE KEY `userid` (`userid`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; at the top of showshout.php, above the <table> tag, I have added: Code:
ob_start (); at the bottom, just after the </table>, I added: Code:
$o = ob_get_contents (); ob_clean (); $hash = md5 ($o); $user_id = $vbulletin->userinfo['userid']; $q = "select hash from shoutbox_hash where userid = ".$user_id; $res = $db->query ($q); $row = mysql_fetch_assoc ($res); if ($_REQUEST['hash'] != '1' || $row['hash'] != $hash) { $t = time () - 60; $q = "select u.username, u.userid from user u, shoutbox_hash h where h.userid = u.userid and h.ts > $t order by u.username"; $res = $db->query ($q); $i = 0; $users = array (); while ($row = mysql_fetch_assoc ($res)) { $i++; $users[] = "<a target='_user' href='/member.php?u=".$row['userid']."'>".$row['username']."</a>"; } if ($i) { echo "<b>Users in chat</b>: ".implode (", ", $users)."<br>"; } echo $o; } $q = "replace into shoutbox_hash (userid, hash, ts) values (".$user_id.", '".$hash."', ".time ().")"; $db->query ($q); Code:
setInterval ("showshout('1');", 4000); Finally, I replaced the showshout() function with: Code:
function showshout(e) { htmlrequest = ajaxfunction(); if (htmlrequest == null) { alert ('Browser does not support HTTP requests'); return; } htmlrequest.open('GET', 'shoutshow.php?hash=' + e, true); htmlrequest.setRequestHeader('If-Modified-Since', 'Thu, 01 Jan 1970 00:00:00 GMT'); htmlrequest.onreadystatechange = statechanged; htmlrequest.send(null); } This change is a temp fix for me - it won't reduce server load, but it will reduce bandwidth consumption by a large margin. |
#59
|
|||
|
|||
mysql101, that is an excellent hack, and I will be testing it out myself and implementing it into the next version!
|
#60
|
|||
|
|||
Any way to add a shoutbox to a specific sub forum, i.e. "forumdisplay.php?f=57"? Thanks.
|
#61
|
|||
|
|||
I was thinking that once you generate the output for the display, it should be stored somewhere, and that is the only output used. Then whenever someone makes a post (to shoutinsert.php), you wipe it out. So anytime shoutshow.php is called and there is no stored content, you regenerate it.
That will reduce the server load portion. |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|