
catrope at svn
Nov 16, 2009, 1:34 PM
Post #1 of 1
(42 views)
Permalink
|
|
SVN: [59149] branches/usability/acaifix
|
|
http://www.mediawiki.org/wiki/Special:Code/MediaWiki/59149 Revision: 59149 Author: catrope Date: 2009-11-16 21:34:25 +0000 (Mon, 16 Nov 2009) Log Message: ----------- usability: Merge r59048 (ClickTracking fix) and r59146 (partial; OptIn fix) from trunk to acaifix Modified Paths: -------------- branches/usability/acaifix/ClickTracking/SpecialClickTracking.php branches/usability/acaifix/OptIn/SpecialOptIn.php Property Changed: ---------------- branches/usability/acaifix/ClickTracking/ branches/usability/acaifix/OptIn/ branches/usability/acaifix/OptIn/SpecialOptIn.php Property changes on: branches/usability/acaifix/ClickTracking ___________________________________________________________________ Added: svn:mergeinfo + /branches/REL1_15/phase3/extensions/UsabilityInitiative/ClickTracking:51646 /trunk/extensions/UsabilityInitiative/ClickTracking:56151-57234,58926,58973-58974,59048 /trunk/phase3/extensions/UsabilityInitiative/ClickTracking:56213,56215-56216,56218,56325,56334-56336,56338,56340,56343,56345,56347,56350,57154-57447 Modified: branches/usability/acaifix/ClickTracking/SpecialClickTracking.php =================================================================== --- branches/usability/acaifix/ClickTracking/SpecialClickTracking.php 2009-11-16 21:26:18 UTC (rev 59148) +++ branches/usability/acaifix/ClickTracking/SpecialClickTracking.php 2009-11-16 21:34:25 UTC (rev 59149) @@ -494,12 +494,14 @@ * @param maxTime max day (YYYYMMDD) * NOTE: once some of the constraints have been finalized, this will use more of the Database functions and not raw SQL */ - static function getTimeConstraintsStatement( $minTime, $maxTime ){ + static function getTimeConstraintsStatement( $minTime, $maxTime ){ if($minTime == 0 || $maxTime == 0){ return ''; } else { - + //the dates are stored in the DB as MW_TIMESTAMP formats, add the zeroes to fix that + $minTime .= "000000"; + $maxTime .= "000000"; return "WHERE `action_time` >= '$minTime' AND `action_time` <= '$maxTime'"; } Property changes on: branches/usability/acaifix/OptIn ___________________________________________________________________ Added: svn:mergeinfo + /branches/REL1_15/phase3/extensions/UsabilityInitiative/OptIn:51646 /trunk/extensions/UsabilityInitiative/OptIn:56151-57234,58926,58973-58974,59146 /trunk/phase3/extensions/UsabilityInitiative/OptIn:56213,56215-56216,56218,56325,56334-56336,56338,56340,56343,56345,56347,56350,57154-57447 Modified: branches/usability/acaifix/OptIn/SpecialOptIn.php =================================================================== --- branches/usability/acaifix/OptIn/SpecialOptIn.php 2009-11-16 21:26:18 UTC (rev 59148) +++ branches/usability/acaifix/OptIn/SpecialOptIn.php 2009-11-16 21:34:25 UTC (rev 59149) @@ -66,6 +66,12 @@ $par = $wgRequest->getVal( 'from', $par ); $this->mOriginTitle = Title::newFromText( $par ); + + // Verify that $this->mOriginTitle is not Special:Userlogout + if ( $this->mOriginTitle && $this->mOriginTitle->getNamespace() == NS_SPECIAL && + SpecialPage::resolveAlias( $this->mOriginTitle->getText() ) == 'Userlogout' ) { + $this->mOriginTitle = null; + } if ( $this->mOriginTitle ) { $this->mOrigin = $this->mOriginTitle->getPrefixedDBKey(); $this->mOriginQuery = $wgRequest->getVal( 'fromquery' ); @@ -93,17 +99,17 @@ } else { - if ( $wgRequest->getVal( 'opt' ) == 'in' ) - // Just opted in + if ( $wgRequest->getVal( 'opt' ) == 'in' && $wgUser->isLoggedIn() ) + // Will be opted in in this request $wgOut->setPageTitle( wfMsg( 'optin-title-justoptedin' ) ); else // About to opt in $wgOut->setPageTitle( wfMsg( 'optin-title-optedout' ) ); } - if ( $wgRequest->getCheck( 'opt' ) ) { + if ( $wgRequest->getCheck( 'opt' ) && $wgUser->isLoggedIn() ) { if ( $wgRequest->getVal( 'opt' ) === 'in' ) { - if ( self::checkToken() ) { + if ( self::checkToken() && !self::isOptedIn( $wgUser ) ) { self::optIn( $wgUser ); $wgOut->addWikiMsg( 'optin-success-in' ); @@ -117,21 +123,28 @@ array( 'type' => $wgJsMimeType ), 'js2AddOnloadHook( function() { $j.post( "' . $url . '", optInGetPOSTData() ); } );' ) ); + } else if ( self::isOptedIn( $wgUser ) ) { + // User is already opted in but + // reloaded the page or tried to opt in + // again. Fake success + $wgOut->addWikiMsg( 'optin-success-in' ); } else + // Token didn't match $this->showForm( self::isOptedIn( $wgUser ) ? 'out' : 'in' ); - } else if ( $wgRequest->getVal( 'opt' ) == 'feedback' ) { + } else if ( $wgRequest->getVal( 'opt' ) == 'feedback' && self::isOptedIn( $wgUser ) ) { if ( $wgRequest->wasPosted() ) { $this->saveSurvey( $wgOptInFeedBackSurvey, 'feedback' ); $wgOut->addWikiMsg( 'optin-success-feedback' ); } else $this->showForm( 'feedback' ); - } else if ( $wgRequest->getVal( 'opt' ) == 'browser' ) { + } else if ( $wgRequest->getVal( 'opt' ) == 'browser' && self::isOptedIn( $wgUser ) ) { $this->saveSurvey( $wgOptInBrowserSurvey, 'in' ); $wgOut->disable(); } else { - if ( self::checkToken() ) { + // Opt out + if ( self::checkToken() && self::isOptedIn( $wgUser ) ) { self::optOut( $wgUser ); $this->saveSurvey( $wgOptInSurvey, 'out' ); $wgOut->addWikiMsg( 'optin-success-out' ); Property changes on: branches/usability/acaifix/OptIn/SpecialOptIn.php ___________________________________________________________________ Modified: svn:mergeinfo - /branches/REL1_15/phase3/extensions/UsabilityInitiative/OptIn/SpecialOptIn.php:51646 /trunk/extensions/UsabilityInitiative/OptIn/SpecialOptIn.php:56151-57234,57956,58926,58973-58974 /trunk/phase3/extensions/UsabilityInitiative/OptIn/SpecialOptIn.php:56213,56215-56216,56218,56325,56334-56336,56338,56340,56343,56345,56347,56350,57154-57447 + /branches/REL1_15/phase3/extensions/UsabilityInitiative/OptIn/SpecialOptIn.php:51646 /trunk/extensions/UsabilityInitiative/OptIn/SpecialOptIn.php:56151-57234,57956,58926,58973-58974,59146 /trunk/phase3/extensions/UsabilityInitiative/OptIn/SpecialOptIn.php:56213,56215-56216,56218,56325,56334-56336,56338,56340,56343,56345,56347,56350,57154-57447 _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS [at] lists https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs
|