Shoutbox Plugin 2.2

It’s hard to believe it’s been eight months since I last posted. You can blame university for that. A very busy and at times quite stressful year, but it’s all over now. University is finished and I’m back home permanently, not counting the short break I’m leaving for tomorrow. With university out of the way I should be able to maintain more of a presence online than I have been in recent months, despite the inevitable job hunting that will be taking place soon. One of the things I should now be able to do however, is give all my plugins some long awaited attention. The first plugin to recieve such attention is the new and improved shoutbox plugin.

Shoutbox 2.2 boasts a number of new features and improvements, including some very common requests. Firstly, the plugin is written exclusively for MyBB 1.4 and will be released upon the public debut of 1.4. Because of this, the plugin makes use of the new plugin features which are available in MyBB 1.4, such as integrated update checking against the MyBB Mods database, and the ability to activate and deactivate the plugin without loosing all existing shout data.

Plugins Manager

With the new version comes a number of new settings for controlling the shoutbox. As before, the following options are available:

  • Number of shouts per page
  • Number of seconds before the page automatically refreshes (0 disables)
  • Number of consecutive shouts allowed before flood control takes effect (*more on this to follow)
  • Maximum shout length
  • Allow HTML
  • Allow MyCode
  • Allow Smilies
  • Allow [img] Code
  • Width of shoutbox popup window
  • Height of shoutbox popup window

In addition to the above, a number of new options are also available.

Minimum Shout Length: Fairly obvious, the minimum length of a shout.

Display Mode: Many times since the shoutbox plugin was first released, people have requested they be able to display the shoutbox on their forum index, rather than in a standalone window. Some have managed this through template editing and the use of iFrames, but no ideal solution was ever available. That is, until now. This new setting allows you to choose whether to show the shoutbox in a window or on the index page. Or, if you just can’t decide, you can have the best of both worlds and display the shoutbox in both ways. The shoutbox is fully integrated into the board index if you choose to display it there, with no template editing required and no use of iFrames. (*Screenshots to follow)

Shouts Per Page on Index: If you’re showing the shoutbox on the index page, you’re not likely to want it to show 25 shouts per page. But, if you’re also showing the shoutbox in a window (because you’re spoilt for choice), you’ll likely be equally as unhappy about only showing five shouts in the popup window. For this reason, the existing “Shouts Per Page” setting continues to control the number of shouts displayed per page in the popup window, but the new “Shouts Per Page on Index” setting allows you to specify a different number of shouts per page for the shoutbox on the index. What’s more, this particular setting is only visible when the “Display Mode” is set to “Index Only” or “Both”, to save confusion.

Shout Sorting Order: Another commonly requested feature is the option to reverse the shout sorting order. By default, shouts are shown in ascending order, with the newest shouts shown at the bottom of the page. This new setting allows you to change that so as new shouts are shown at the top of the page. Since this will inevitably mean that new shouts are then shown on the last shoutbox page rather than the first, the plugin knows which order has been selected and sends you to the correct default page accordingly.

Show Friendly Redirect Pages: Some users expressed a desire to disable friendly redirect pages for the shoutbox, since the page is generally quite small in windowed mode. This new option allows you to do just that.

Shoutbox Settings

So those are all the new shoutbox settings, but that’s not all there is that’s new…

The new shoutbox plugin is more customisable in terms of usergroup control. You can now specify exactly which usergroups are able to view the shoutbox, as well as control which groups can shout, edit and/or delete their own shouts, moderate the shoutbox and bypass the shout flood control. Note that some options such as editing, deleting and moderating are not available at all for the guests group.

Usergroup Controls

Surely, that’s it…isn’t it? Nope, there’s still something more to show you…

Since you can now activate and deactivate the plugin without loosing your existing data, your shoutbox is likely to become very full over time. For this reason, a new pruning tool has also been added to the admin panel. Upon installation of the shoutbox, a new “Shoutbox Pruning” menu option will appear in the “Tools and Maintenance” section. Like the log pruning tools, this tool will similarly prune the shouts table, deleting shouts which are older than the number of days specified. I’ll probably also include a tool for the new MyBB Task System which will, when enabled, automatically prune shouts at regular intervals, but I haven’t yet written one. Whether or not it should be released with the main plugin or as a seperate option also still needs to be decided.

Pruning

So, you know about the new admin options for the shoutbox, but how does it look on the front-end? It probably comes as no great surprise that aesthetically, the shoutbox looks pretty much the same on the front-end, but it has been tweaked slightly. The following screenshots demonstrate the shoutbox displaying on both the index page and in a popup window.

Index Display Window Display

You may notice in the screenshots above that the refresh link has gone. Rather, it has combined with the shout button. In part, this is to make space for the link that takes its place, allowing users to enable or disable the automatic page refreshing, regardless of the default setting. This is done through a cookie stored on the users machine. If the disable cookie is flagged as enabled in the shoutbox, the page will not automaticaly refresh for that user. The disable auto refresh link changes, allowing the user to enable auto refresh again in the same way. Note however that if you disable auto refresh globally (by setting the limit to 0), users will not have the option to enable or disable the refresh.

That’s pretty much it for the new shoutbox plugin. It’s the most significant update the plugin has ever recieved and I really hope people enjoy it. I’ll probably release a beta version to the beta testers of MyBB 1.4 before my trip away for a few days. Updates will be coming for the Board Message and Downloads Section plugins soon, since they are regarded as my other priority plugins. Unfortunately, I simply haven’t had the time to get much done for these other plugins yet. Stay tuned however, I’ll post updates (for some other plugins also) in the coming weeks as I start to work through them.

19 Comments »

  1. aglioeolio said,

    June 27, 2008 @ 23:32

    amazing shoutbox plugin
    new plugins compatible to 1.4 brand together with the public release will be awesome :D

    One thing I would like to get in a download Mod to mybb is external links… Maybe you can release this new version with this feature, with “source link” required, maybe.

    Thanks for your effort in mybb developing

  2. Musicalmidget’s Blog » Blog Archive » Board Messages Plugin 2.0 said,

    July 6, 2008 @ 23:26

    [...] Musicalmidget’s Blog Still looking for a good tagline « Shoutbox Plugin 2.2 [...]

  3. shadow82x said,

    July 7, 2008 @ 19:54

    It’s looking very good. I’m glad your making use of the myBB1.4 release. Looks like you spent a lot of time on it. :)

  4. ethernet said,

    July 11, 2008 @ 05:17

    any idea when this be released to the public because i would live to test it

  5. musicalmidget said,

    July 11, 2008 @ 13:18

    The new version of the shoutbox is written for MyBB 1.4 so my intention is to release it at the same time as 1.4. That said however, I may post a beta version in the meantime for users of the 1.4 beta to test.

  6. Paretje said,

    July 19, 2008 @ 22:42

    Musicalmidget, wouldn’t it be better to control if the “Display Mode” setting is setted to show the shoutbox on the index when you are adding the refresh code on the page?

  7. Satish said,

    July 26, 2008 @ 02:47

    HEY Musicalmidget … it’s Really COOL..

    One word thought what Kind of Admin theme is you are using in the Screenshots you Provided Above?

  8. musicalmidget said,

    July 26, 2008 @ 11:32

    Satish, the admin theme in the above screenshots is the default theme in MyBB 1.4. You can get hold of the 1.4 beta by applying to join the public 1.4 beta group on the community forums if you’d like to try it for yourself.

    Paretje, the auto refresh variable is added to the header template on activation of the plugin, but that variable is only turned into the actual refresh code if auto refresh is enabled. When doing so, the plugin detects in which mode the shoutbox is being displayed and generates the correct refresh code accordingly. Is this what you were meaning?

    I should shortly be releasing an updated beta version of the plugin over on MyBB Mods which fixes a small number of bugs which were reported in the current beta. Hopefully it should be the final beta version before the final version of the plugin is released. Please all feel free to download and test, reporting all bugs through the community forums.

  9. Paretje said,

    July 30, 2008 @ 12:11

    Well, what is mean is this: in the current code, you control if the refresh is disabled, or is zero:

    function shoutbox_refresh()
    {
    global $mybb, $sb_refresh;

    $sb_refresh = '';
    if($mybb->settings['sb_refresh_time'] > 0 && $_COOKIE['sb_refresh_disable'] != ‘1′)
    {
    if($mybb->input['view_mode'] != ‘window’)
    {
    $sb_refresh = ’settings['sb_refresh_time'].’;URL=index.php” />’;
    }
    else
    {
    $sb_refresh = ’settings['sb_refresh_time'].’;URL=index.php?go_to=shoutbox&view_mode=window#bottom” />’;
    }
    }
    }

    But this means that this is always shown on each page … Each page is reloaded, not only the shoutbox and the index page …


    function shoutbox_refresh()
    {
    global $mybb, $sb_refresh;

    $sb_refresh = '';
    if($mybb->settings['sb_refresh_time'] > 0 && $_COOKIE['sb_refresh_disable'] != ‘1′ && strpos($_SERVER['PHP_SELF'], ‘index.php’) !== false)
    {
    if($mybb->input['view_mode'] != ‘window’)
    {
    $sb_refresh = ’settings['sb_refresh_time'].’;URL=index.php” />’;
    }
    else
    {
    $sb_refresh = ’settings['sb_refresh_time'].’;URL=index.php?go_to=shoutbox&view_mode=window#bottom” />’;
    }
    }
    }

    With that change, the refresh code is only added on the index.php page, and not on the rest of the board ;)

  10. musicalmidget said,

    August 1, 2008 @ 00:11

    Apologies for the misunderstanding. That is indeed how the plugin should have worked in the first place. I’ll get that fixed for the next release. Thanks! :)

  11. Rohabu said,

    August 8, 2008 @ 07:36

    Hi Musicalmidget, looks really cool and has the functionality i’ve missed in other shoutboxes.

    One question: Is there any chance to get the Shoutbox shown on the right side of the Forum (as it worked with the sideboxes plugin in V. 1.2)

  12. DarkWolf said,

    August 16, 2008 @ 03:50

    Hello!
    I have to said that this is a very cool plugin. I’m testing it on my forums and I found a little bug… When other users shout sometimes his message appears twice, I don’t know if you understand me.

    My english is very poor. =X

    Greetings!

  13. Das-Isch said,

    August 25, 2008 @ 11:14

    Hey there,

    great plugin, but have you ever thought about the settings-option to show the date and time of each shout? That would incredibly improve this plugin and the decision could be done on the settings page.

    Greetings

  14. musicalmidget said,

    August 25, 2008 @ 16:19

    Rohabu, there’s no built-in ability to display the shoutbox on the side of the forum. The plugin and templates would have to be modified in order to achieve this.

    Das-Isch, if you hover over a shout you should be able to see the date and time it was made. However, I may add the option to display it without the need to hover in the next version of the plugin.

    I’m currently working on the bugs which have been reported and hope to release the final version of 2.2 in the near future. As yet, I’ve been unable to reproduce the error of duplicate shouts…

  15. Das-Isch said,

    August 26, 2008 @ 22:19

    musicalmidget: Ah, I see. That’s at least that information I needed, but a configurable date-appereance would be great as well!

    Thanks, Greetings.

  16. Lu5ck said,

    August 30, 2008 @ 19:19

    Hi, is it possible to add the shoutbox to sidebox?

  17. ByteHunter said,

    October 7, 2008 @ 17:29

    Hi . I have dovnloaded your XhouBox plugin but I can`t find this file in the rar :
    Plugin/admin/modules/tools/shoutbox.php
    Please send me the download link :)

  18. ByteHunter said,

    October 7, 2008 @ 18:11

    WoW . I don`t need it :) . Thanks for this powerfull plugin :)

  19. musicalmidget said,

    October 11, 2008 @ 10:57

    ByteHunter, that file is no longer required so it was removed from the plugin. No need to worry about it being missing.

RSS feed for comments on this post · TrackBack URI

Leave a Comment