http://www.mediawiki.org/wiki/Special:Code/MediaWiki/85725
Revision: 85725 Author: ashley Date: 2011-04-09 15:28:14 +0000 (Sat, 09 Apr 2011) Log Message: ----------- EmailCapture: *minor coding style tweaks *fix table name in EmailCaptureHooks.php *check for MediaWiki environment in main setup file *removed some pseudocode from SpecialEmailCapture.php in favor of real code Modified Paths: -------------- trunk/extensions/EmailCapture/EmailCapture.i18n.php trunk/extensions/EmailCapture/EmailCapture.php trunk/extensions/EmailCapture/EmailCaptureHooks.php trunk/extensions/EmailCapture/SpecialEmailCapture.php trunk/extensions/EmailCapture/api/ApiEmailCapture.php Modified: trunk/extensions/EmailCapture/EmailCapture.i18n.php =================================================================== --- trunk/extensions/EmailCapture/EmailCapture.i18n.php 2011-04-09 15:18:15 UTC (rev 85724) +++ trunk/extensions/EmailCapture/EmailCapture.i18n.php 2011-04-09 15:28:14 UTC (rev 85725) @@ -1,6 +1,6 @@ <?php /** - * Internationalisation for EmailCapture extension + * Internationalisation file for EmailCapture extension. * * @file * @ingroup Extensions @@ -14,6 +14,7 @@ $messages['en'] = array( 'emailcapture' => 'Email Capture', 'emailcapture-desc' => 'Capture email addresses, and allow users to verify them through email', + 'emailcapture-failure' => "Your email was '''not''' verified.", 'emailcapture-response-subject' => '{{SITENAME}} Email Verification', 'emailcapture-response-body' => 'To verify your email address, following this link: $1 @@ -24,4 +25,5 @@ $3 Thank you for verifying your email address.', + 'emailcapture-success' => 'Your email was successfully verified.', ); Modified: trunk/extensions/EmailCapture/EmailCapture.php =================================================================== --- trunk/extensions/EmailCapture/EmailCapture.php 2011-04-09 15:18:15 UTC (rev 85724) +++ trunk/extensions/EmailCapture/EmailCapture.php 2011-04-09 15:28:14 UTC (rev 85725) @@ -1,17 +1,20 @@ <?php /** * EmailCapture extension - * + * * @file * @ingroup Extensions - * + * @version 0.3.0 * @author Trevor Parscal <tre...@wikimedia.org> * @license GPL v2 or later - * @version 0.3.0 + * @link http://www.mediawiki.org/wiki/Extension:EmailCapture Documentation */ +if ( !defined( 'MEDIAWIKI' ) ) { + die( "This is not a valid entry point to MediaWiki.\n" ); +} + /* Configuration */ - $wgEmailCaptureSendAutoResponse = true; $wgEmailCaptureAutoResponse = array( 'from' => $wgPasswordSender, @@ -21,16 +24,17 @@ 'content-type' => null, ); -/* Setup */ - +// Extension credits that will show up on Special:Version $wgExtensionCredits['other'][] = array( 'path' => __FILE__, 'name' => 'EmailCapture', - 'author' => array( 'Trevor Parscal' ), + 'author' => 'Trevor Parscal', 'version' => '0.3.0', 'url' => 'http://www.mediawiki.org/wiki/Extension:EmailCapture', 'descriptionmsg' => 'emailcapture-desc', ); + +/* Setup */ $dir = dirname( __FILE__ ) . '/'; $wgExtensionMessagesFiles['EmailCapture'] = $dir . 'EmailCapture.i18n.php'; // API @@ -40,6 +44,6 @@ $wgAutoloadClasses['EmailCaptureHooks'] = $dir . 'EmailCaptureHooks.php'; $wgHooks['LoadExtensionSchemaUpdates'][] = 'EmailCaptureHooks::loadExtensionSchemaUpdates'; $wgHooks['ParserTestTables'][] = 'EmailCaptureHooks::parserTestTables'; -// SpecialPage -$wgAutoloadClasses['SpecialEmailCapture'] = $dir . "SpecialEmailCapture.php"; -$wgSpecialPages['EmailCapture'] = 'SpecialEmailCapture'; +// Special page +$wgAutoloadClasses['SpecialEmailCapture'] = $dir . 'SpecialEmailCapture.php'; +$wgSpecialPages['EmailCapture'] = 'SpecialEmailCapture'; \ No newline at end of file Modified: trunk/extensions/EmailCapture/EmailCaptureHooks.php =================================================================== --- trunk/extensions/EmailCapture/EmailCaptureHooks.php 2011-04-09 15:18:15 UTC (rev 85724) +++ trunk/extensions/EmailCapture/EmailCaptureHooks.php 2011-04-09 15:28:14 UTC (rev 85725) @@ -1,8 +1,6 @@ <?php /** * Hooks for EmailCapture extension - * - * @author tparscal */ class EmailCaptureHooks { /** @@ -18,7 +16,7 @@ } else { $dir = dirname( __FILE__ ); $db = $updater->getDB(); - if ( !$db->tableExists( 'article_feedback' ) ) { + if ( !$db->tableExists( 'email_capture' ) ) { // Initial install tables $updater->addExtensionUpdate( array( 'addTable', Modified: trunk/extensions/EmailCapture/SpecialEmailCapture.php =================================================================== --- trunk/extensions/EmailCapture/SpecialEmailCapture.php 2011-04-09 15:18:15 UTC (rev 85724) +++ trunk/extensions/EmailCapture/SpecialEmailCapture.php 2011-04-09 15:28:14 UTC (rev 85725) @@ -1,23 +1,30 @@ <?php + class SpecialEmailCapture extends SpecialPage { - function __construct() { + public function __construct() { parent::__construct( 'EmailCapture', 'emailcapture' ); } - function execute( $par ) { + public function execute( $par ) { global $wgOut, $wgRequest; $this->setHeaders(); $code = $wgRequest->getVal( 'verify' ); if ( $verify !== null ) { - // $affectedRows = ( UPDATE email_capture SET (ec_veified = 1) WHERE ec_code = $code ) - // if ( $affectedRows ) { - // show success - // } else { - // show failure - // } + $dbw = wfGetDB( DB_MASTER ); + $affectedRows = $dbw->update( + 'email_capture', + array( 'ec_verified' => 1 ), + array( 'ec_code' => $code ), + __METHOD__ + ); + if ( $affectedRows ) { + $wgOut->addWikiMsg( 'emailcapture-success' ); + } else { + $wgOut->addWikiMsg( 'emailcapture-failure' ); + } // exit } // Show simple form for submitting verification code Modified: trunk/extensions/EmailCapture/api/ApiEmailCapture.php =================================================================== --- trunk/extensions/EmailCapture/api/ApiEmailCapture.php 2011-04-09 15:18:15 UTC (rev 85724) +++ trunk/extensions/EmailCapture/api/ApiEmailCapture.php 2011-04-09 15:28:14 UTC (rev 85725) @@ -1,4 +1,5 @@ <?php + class ApiEmailCapture extends ApiBase { public function __construct( $query, $moduleName ) { parent::__construct( $query, $moduleName, '' ); @@ -10,7 +11,7 @@ // Validation if ( !isset( $params['email'] ) ) { $this->dieUsageMsg( array( 'missingparam', 'email' ) ); - } else if ( !User:isValidEmailAddr( $params['email'] ) ) { + } elseif ( !User:isValidEmailAddr( $params['email'] ) ) { $this->dieUsage( 'The email address does not appear to be valid', 'invalidemail' ); } _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs