API: Allow renewal of membership with upcoming expiry

This commit is contained in:
nikolark committed 2015-08-18 22:35:29 +02:00
1 parent f2bd23efad
commit f33ffa23df
2 files changed
+10 -9

No files matched your search

+1 -1
View File
@@ -267,7 +267,7 @@ function add_or_renew_membership($user_id, $purchased=NULL) {
/* Membership expiry */
/* One year from today (default) */
if( $purchased == NULL ) {
if( $purchased == NULL || $purchased === false) {
$purchased = date_create();
}
/* ...or one year from specified date */
+9 -8
View File
@@ -57,16 +57,17 @@ $conn = get_db_connection(DB_FETCHMODE_ASSOC);
/* Existing user? */
$user = get_user($data['user_id']);
/* Don't allow renewal if valid membership exists. */
if( $user['membership_status'] !== 0 ) {
if($user['expires'] === '') {
// Life long
return_json_response(array('error' => 'Cannot renew, user with id '.$data['user_id'].' has a life long membership.'), 409);
}
return_json_response(array('error' => 'Cannot renew, user with phone '.$data['user_id'].' has a valid membership until: '.$user['expires']), 409);
if( $user['expires'] === '' ) {
// Life long
return_json_response(array('error' => 'Cannot renew, user with id '.$data['user_id'].' has a life long membership.'), 409);
}
$today_plus_1_month = date_create("+1 month");
if( $user['membership_status'] !== 0 && clean_date($user['expires']) >= $today_plus_1_month ) {
return_json_response(array('error' => 'Cannot renew, user id '.$data['user_id'].' has a valid membership until: '.$user['expires']), 409);
}
$first_user_membership = $user['expires'] === '0000-00-00';
/* Validate optional purchase_date */
/* Validate optional purchased (date) */
$purchased = NULL;
if( isset($data['purchased']) ) {
$purchased = clean_date($data['purchased']);
@@ -105,5 +106,5 @@ try {
send_membership_confirmation_mail($user[0], $first_user_membership);
/* Return encrypted user object */
/* Return user object */
return_json_response(array('user' => $user) );