Thanks to the good offices of Server Logistics (providers of the Complete MySQL package) and Jonas Luster (who gave me the database import command I actually needed) I brought my local copy of WordPress back up to speed last night and was able to test the Gatekeeper update script. Thus, WP-Gatekeeper RC2 makes its debut.
Here’s what changed:
- Added “reset to default” links for the challenges and the markup template on the management page. Remember that if you say “OK” to the pop-up dialog box, the data will be reset to install default and there’s no going back.
- Fixed a bug where logged-in users still had to answer the Gatekeeper challenge. Now there should be no challenge for logged-in users. This assumes that your install allows people to register and log in, of course. (Thanks, ColdForged!)
- Tweaked the scanning routines to be more cross-platform friendly, the form scanning to be kinder to 1.5 themes that were ported from 1.2 installs, and fixed (I think) a slash-insertion bug that could affect the markup template. (Thanks, Scott!)
- Added theme-root support. (Thanks, Terrence!)
- Changed the
gatekeeper_default_templateoption to be called
That last change was the original motivation to create the update script, since the plugin would break without updating the option name. While I was at it, I decided to throw in routines to let users of the 1.0b1 version migrate their challenges over to version 1.5 and then delete the old tables.
So if you’ve run any previous version of WP-Gatekeeper, you’ll need to download and run the update script. It’s called wp-gk-rc2-update.php. To run it, uncompress the archive and drop the PHP file into your main WordPress directory, then load it up in a Web browser. From there, the script should walk you through the update procedure. If you’ve only ever used GK 1.5 RC1, then it will be two steps and painless. If you were running 1.0b1, then it’ll be three or so steps and still painless. (Unless of course I have bugs, in which case there may be pain.)
Basically, you’ll need to run the updater either immediately before you install the RC2 plugin, or immediately after. In the interval between the two, there will be trouble. I’m sorry, but I don’t know of a way toclose that window. My recommendation is to run the update script and then drop the plugin into your plugins directory as soon as the updater finishes. However many seconds passes between the two will be the window of possible breakage.
So there you have it. Assuming no problems are encountered, the plugin will reach 1.5 final within the next week. Let me know if you hit any roadblocks or see ways in which the code can be improved.
Update: problems have been encountered. The automatic-placement routines seem to have failed, so no challenge will appear unless you use the
gatekeeper_pose_challenge() call in your comment form template. This means nobody will be able to post unless they’re logged in (and maybe not even then). I’ll post an update as soon as I figure out what’s failing and how to fix it. Sorry for any inconvenience!