UNIX_TIMESTAMP() LIMIT 1", array( postRequestElement('coupon_code'), getMemberId() ), __FILE__, __LINE__); // Is there an entry? if (SQL_NUMROWS($result) == 1) { // Load data $content = SQL_FETCHARRAY($result); // Run pre-filter $content = runFilterChain('pre_cash_coupon', $content); // Mark it as "cashed" SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_coupons` SET `cashed_on`=NOW(), `coupon_code`=NULL WHERE `coupon_code`='%s' AND `userid`=%s LIMIT 1", array( postRequestElement('coupon_code'), getMemberId() ), __FILE__, __LINE__); // Does it work? if (SQL_HASZEROAFFECTED()) { // Abort it here, it always must work reportBug(__FILE__, __LINE__, 'User coupon cannot be updated! coupon_id=' . $content['coupon_id']); } // END - if // Update count as well SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_coupon_data` SET `total_cashed`=`total_cashed`+1 WHERE `id`=%s AND `total_cashed` < `total_created` LIMIT 1", array(bigintval($content['coupon_id'])), __FILE__, __LINE__); // Does it work? if (SQL_HASZEROAFFECTED()) { // Abort it here, it always must work reportBug(__FILE__, __LINE__, 'Coupon data cannot be updated! coupon_id=' . $content['coupon_id']); } // END - if // Run post filter chain $content = runFilterChain('post_cash_coupon', $content); // Display message displayMessage('{%message,MEMBER_COUPON_CODE_CASHED=' . $content['points'] . '%}'); } else { // No coupon found displayMessage('{--MEMBER_COUPON_CODE_ALREADY_CASHED--}'); } // Free the result SQL_FREERESULT($result); } else { // No code entered! displayMessage('{--MEMBER_COUPON_CODE_EMPTY--}'); } } elseif (isFormSent('change')) { // Change receive status, depending on its current state if (isUserDataEnabled('receiving_coupons')) { // Unsubscribe from coupons $message = '{--MEMBER_COUPON_RECEIVE_STATUS_UNSUBSCRIBED--}'; $newStatus = 'N'; } else { // Subscribe to coupons $message = '{--MEMBER_COUPON_RECEIVE_STATUS_SUBSCRIBED--}'; $newStatus = 'Y'; } // And change it in the database SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `receiving_coupons`='%s' WHERE `userid`=%s LIMIT 1", array($newStatus, getMemberId()), __FILE__, __LINE__); // Did something change? if (!SQL_HASZEROAFFECTED()) { // Records have been updated displayMessage($message); } else { // Nothing changed! displayMessage('{--MEMBER_COUPON_RECEIVE_STATUS_UNCHANGED--}'); } } else { // Load form template loadTemplate('member_cash_coupon', false); } // [EOF] ?>