Version: 0.5, by MoMan
Developer Last Online: Oct 2022
Category: New Posting Features -
Version: 3.8.x
Rating:
Released: 09-13-2011
Last Update: 09-17-2011
Installs: 55
Template Edits
Re-useable Code Additional Files Is in Beta Stage
No support by the author.
An auto-save feature was recently added to vB4, so I figured it would be nice if we vB3 users could also get something similar
While this this isn't a server-side solution, I think that it's still pretty solid, as it relies on the localStorage system in your browser, which is supported by Safari, FF 3.5+, Opera, Chrome, and IE8+.
I have tested this on FF6, the latest Safari and Chrome, and IE9. I wrote it with IE8 in mind, but haven't tested IE8 as my forum skin doesn't support it (yup, it's a terrible browser).
For now, I am marking this as a beta release until we're sure it works in all browsers that support localStorage and there aren't any outstanding bugs.
Where does this work?
Quick reply
New reply/New thread
PM quick reply
New PM
PM regular reply
Anywhere else you want, given that the page contains a form named "vbform" and a textarea named "message" (or the vbulletin wysiwyg editor)
How does this work?
You can start typing a post, close your browser, open the same page, and the post will still be there. Note that this mod keys data by URL in order to avoid collisions.
The mod automatically and silently restores posts when possible. However, if the editor already contains something when you load the page (i.e. PM quick reply), then you will receive a prompt asking you whether or not you want to work with the recovered text.
This mod works even if you disable the WYSIWYG editor and it will quite likely work with older versions of vB all the way down to 3.5.
Installation
Installation is simple.
[1]Download the attached file (or download the file directly and skip step 2)
[2]Change the extension to .js from .js.txt
[3]Upload it to your forum's clientscript directory
[4]Add the following code to the bottom of your forum templates* wherever you want this mod to work:
If you don't care about http overhead, you can put this code in your footer template as it will die gracefully on pages without an editor. However, I recommend only putting it in templates that use it. On my forum, I've added it to the following templates: SHOWTHREAD, newreply, newthread, pm_showpm, pm_newpm On top of that, if you don't allow guests to post, wrap the code in a member-only conditional: <if condition="$show['member']">...</if>
*the script tags must be placed after the editor text area element; this doesn't necessarily have to be the very end of the template, although it's good practice to do so
License:
You are free to use, modify, re-post and re-distribute the code as long as you credit me in the script comments. Improvements and derivatives are welcome!
Note: This is a CLIENT-SIDE mod. Please be sure that any issues you may report aren't related to the fact that a. your browser is misconfigured or b. you are using an old/unsupported browser.
I've uploaded version 0.5. This introduces some efficiency fixes: if a user erases their post while typing it, it will now be completely removed from the browser storage (instead of being replaced by an empty string).
Also, an auto-save is no longer triggered simply by hovering your mouse over the text. This introduced some issues with quick reply, as you could technically submit your post and then get the auto-save system to store it after it had been submitted.
Awesome, will install this on 3.8.5, quick question first, will this cause any significant increase in server load on a biggish forum (over 500 000 posts)?
Awesome, will install this on 3.8.5, quick question first, will this cause any significant increase in server load on a biggish forum (over 500 000 posts)?
It's a client-side script, doesn't involve the server at all