Speakeasy
Free speech for all (except spammers).
Overview
Download
Speakeasy, v1.2.2
(ZIP, 28KB)
Speakeasy makes it easy for your visitors to self-moderate their comments, keeping the conversation flowing whilst defending against spam bots.
It respects all of ExpressionEngine’s built-in comment preferences, so if a weblog doesn’t require comment moderation, or the commenter belongs to a member group that doesn’t require moderation, Speakeasy won’t poke its nose in.
When Speakeasy is required, it automatically sends the commenter an email containing a confirmation link. One click, and the comment is approved for display on your site.
Best of all, Speakeasy works with EE’s standard comment statuses, so if you ever decide to go Speakeasy-free, your site will continue to function as normal.
Requirements
Speakeasy requires PHP5 in order to function correctly. The Extension Settings page also expects a halfway-decent browser, so Internet Explorer 6 users should probably get their coats.
Installation and upgrading
Here’s how to install Speakeasy:
- Extract the ZIP file.
- Copy the
system/extensions/ext.speakeasy.phpfile to your/system/extensions/directory. - Copy the
system/extensions/speakeasyfolder to your/system/extensions/directory. - Copy the
system/language/english/lang.speakeasy.phpfile to your/system/language/english/directory. - Copy the
system/plugins/pi.speakeasy_pl.phpfile to your/system/plugins/directory. - Copy the
themes/cp_themes/default/speakeasyfolder to your/themes/cp_themes/default/directory. - If you’re installing Speakeasy for the first time, open the Extensions Manager, and enable the extension.
Getting started
Speakeasy comprises two parts: an extension and a plugin.
The extension handles general configuration, comment submission, and sending the confirmation email. The plugin, placed within a template of your choosing, handles the approval URLs.
Configuration
The Speakeasy extension enables configuration of the following settings:
- Activation URL (required)
- Activation email subject, body, and signature
- Whether Speakeasy should display a custom confirmation message. If this is set to “No” (the default), the user will be immediately redirected to the comment page. If it is set to “Yes”, the following settings may also be configured:
- The title of the custom message page
- The main heading of the custom message page
- The body text of the custom message page. Standard ExpressionEngine
XHTMLtypography is supported - The link text of the custom message page
- The amount of time (in seconds) to display the custom message message
The only required setting is the “Activation URL”. This is the template_group/template to use when generating the email activation URLs, and it must refer to a standard ExpressionEngine template_group/template, containing the Speakeasy plugin (see “Usage”, below).
Usage
Add the Speakeasy plugin code to the template_group/template that you specified in the extension settings. The plugin is a tag pair, containing three variables, {comment_approved}, {comment_id}, and {comment_url}.
Example usage:
{exp:speakeasy_pl}
{if comment_approved}
<p>Rock on! You can <a href="{comment_url}#{comment_id}">see your comment here</a>.</p>
{if:else}
<p>Boo! Something went wrong.</p>
{/if}
{/exp:speakeasy_pl}
Support
Support is provided via Get Satisfaction.
Credits
Speakeasy was originally developed for Matt Weinberg at Vector Media Group, for the Greentech Media website. A big thanks to both companies for allowing this addon to be released to the great unwashed (that’s you).
License
Speakeasy is made available under a Creative Commons Attribution-Noncommerical-Share Alike 3.0 Unported License. What a mouthful.
In practical terms, this means that you can copy, adapt, and distribute Speakeasy as much as you like, provided that you:
- Credit the original author (that’s me, folks)
- Don’t use any part of Speakeasy in a commercial product
- License your code in a similar fashion, so others can continue to benefit from your work
Warranty
Speakeasy is released as-is, without any warranty, express or implied. The author (Stephen Lewis) will endeavour to offer support to those of you gracious enough to use his addon, simply because he’s an all-round good egg. Should he fall under a bus, or just become excessively busy, support may be slow, and perhaps even surly.
Finally, Stephen Lewis, Experience Internet, Vector Media Group, and Greentech Media are not responsible for any mishaps, catastrophes, disasters, spillages, data loss, or hair loss that may be caused by the installation or use of Speakeasy. It’s worked great for us, but your experience may differ.
Change log
- 1.2.2
- Fixed bug whereby comment activation codes could (in rare cases) not be 10 characters long.
- 1.2.1
- Temporarily removed support for LG Addon Updater, due to a mysterious conflict.
- 1.2.0
- Added custom message extension settings.
- 1.1.3
- Fixed case-sensitivity bug when loading language file.
- Implemented
{comment_id}in plugin.
- 1.1.2
- Reinstated LG Addon Updater code, which I had inexplicably deleted at some point (duh).
- 1.1.1
- Tidied up CSS.
- Deleted obsolete images.
- Sorted out “About” page content and layout.
- Tidied up language file.
- Added some additional disclaimers regarding the liability of Vector Media Group and Greentech Media.
- Corrected the Creative Commons License link.
- Added symlink script for all the cool kids.
- 1.1.0
- Initial public release.
Need a custom ExpressionEngine addon?
Find out about our ExpressionEngine development services.