Awight has uploaded a new change for review.
https://gerrit.wikimedia.org/r/195050
Change subject: Handle dates more carefully in recurring messages
......................................................................
Handle dates more carefully in recurring messages
The message timestamp on subscription signup messages was being set incorrectly
to the current time or the payment date. This wouldn't have corrupted data,
because the timestamp is not stored nor used for currency conversion, but it
was a problem for tests where the currency is mocked by exact time.
Change-Id: I04fe4365d8933d714b96a13af07ad864c7017897
---
M sites/all/modules/queue2civicrm/recurring/recurring.module
1 file changed, 10 insertions(+), 3 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/wikimedia/fundraising/crm
refs/changes/50/195050/1
diff --git a/sites/all/modules/queue2civicrm/recurring/recurring.module
b/sites/all/modules/queue2civicrm/recurring/recurring.module
index 2ebf20d..6d6d302 100644
--- a/sites/all/modules/queue2civicrm/recurring/recurring.module
+++ b/sites/all/modules/queue2civicrm/recurring/recurring.module
@@ -497,7 +497,9 @@
function recurring_normalize_paypal_msg( $msg ) {
$msg_normalized = array();
- $timestamp = ( !isset( $msg[ 'payment_date' ] ) || !strlen( $msg[
'payment_date' ] )) ? strtotime( "now" ) : strtotime( $msg[ 'payment_date' ] );
+ if ( isset( $msg['payment_date'] ) ) {
+ $msg_normalized['date'] = strtotime( $msg['payment_date'] );
+ }
// the subscription id
$msg_normalized[ 'subscr_id' ] = $msg[ 'subscr_id' ];
@@ -612,8 +614,11 @@
} elseif( $msg[ 'txn_type' ] == 'subscr_cancel' ) {
$msg_normalized[ 'cancel_date' ] = strtotime( $msg[ 'subscr_date' ] );
}
+ if ( !isset( $msg_normalized['date'] ) ) {
+ $msg_normalized['date'] = strtotime( $msg['subscr_date'] );
+ }
}
-
+
if ( $msg[ 'txn_type' ] == 'subscr_modify' ) {
$msg_normalized[ 'modified_date' ] = $msg[ 'subscr_effective' ];
}
@@ -631,7 +636,9 @@
$msg_normalized[ 'gateway' ] = ( !empty( $msg['gateway'] ) ? $msg['gateway']
: 'paypal' );
- $msg_normalized[ 'date' ] = $timestamp;
+ if ( !isset( $msg_normalized['date'] ) ) {
+ $msg_normalized['date'] = time();
+ }
// FIXME: so dirty.
foreach ( $msg as $key => $value ) {
--
To view, visit https://gerrit.wikimedia.org/r/195050
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I04fe4365d8933d714b96a13af07ad864c7017897
Gerrit-PatchSet: 1
Gerrit-Project: wikimedia/fundraising/crm
Gerrit-Branch: master
Gerrit-Owner: Awight <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits