function JB_expire_membership(&$invoice_row, $send_email = true) { $now = gmdate("Y-m-d H:i:s"); $sql = "UPDATE membership_invoices SET `status`='Expired', member_end='{$now}' WHERE invoice_id='" . JB_escape_sql($invoice_row['invoice_id']) . "' "; JB_mysql_query($sql) or JB_mail_error(mysql_error() . $sql); JB_stop_membership($invoice_row); if (JB_EMAIL_MEMBER_EXP_SWITCH == 'YES' && $send_email) { if ($invoice_row['user_type'] == 'E') { // employers $sql = "Select * from employers WHERE ID='" . JB_escape_sql($invoice_row['user_id']) . "'"; } elseif ($invoice_row['user_type'] == 'C') { $sql = "Select * from users WHERE ID='" . JB_escape_sql($invoice_row['user_id']) . "'"; } $result = JB_mysql_query($sql) or JB_mail_error(mysql_error() . $sql); $e_row = mysql_fetch_array($result, MYSQL_ASSOC); //$invoice_row = JB_get_subscription_invoice_row ($row['invoice_id']); // reload invoice $template_r = JB_get_email_template(120, $e_row['lang']); $template = mysql_fetch_array($template_r); $msg = $template['EmailText']; $from = $template['EmailFromAddress']; $from_name = $template['EmailFromName']; $subject = $template['EmailSubject']; $msg = str_replace("%FNAME%", $e_row['FirstName'], $msg); $msg = str_replace("%LNAME%", $e_row['LastName'], $msg); $msg = str_replace("%SITE_NAME%", JB_SITE_NAME, $msg); $msg = str_replace("%INVOICE_CODE%", "S" . $invoice_row['invoice_id'], $msg); $msg = str_replace("%ITEM_NAME%", $invoice_row['item_name'], $msg); $msg = str_replace("%MEM_START%", JB_get_formatted_time(JB_get_local_time($invoice_row['member_date'])), $msg); $msg = str_replace("%MEM_END%", JB_get_formatted_time(JB_get_local_time($invoice_row['member_end'])), $msg); $msg = str_replace("%MEM_DURATION%", $invoice_row['months_duration'], $msg); $msg = str_replace("%INVOICE_AMOUNT%", JB_convert_to_default_currency_formatted($invoice_row['currency_code'], $invoice_row['amount']), $msg); $msg = str_replace("%PAYMENT_METHOD%", $invoice_row['payment_method'], $msg); $msg = str_replace("%SITE_CONTACT_EMAIL%", JB_SITE_CONTACT_EMAIL, $msg); $msg = str_replace("%SITE_URL%", JB_BASE_HTTP_PATH, $msg); $to = $e_row['Email']; $to_name = jb_get_formatted_name($e_row['FirstName'], $e_row['LastName']); $email_id = JB_queue_mail($to, $to_name, $from, $from_name, $subject, $msg, '', 120); JB_process_mail_queue(1, $email_id); } }
function JB_reverse_membership_invoice($invoice_id, $reason) { $invoice_row = JB_get_membership_invoice_row($invoice_id); if ($invoice_row['status'] == 'Completed') { $sql = "UPDATE membership_invoices SET `status`='Reversed', reason='" . jb_escape_sql($reason) . "' WHERE invoice_id='" . jb_escape_sql($invoice_id) . "'"; $result = JB_mysql_query($sql) or JB_mail_error("[{$sql}]" . mysql_error()); // Deactivate the memberships: if ($invoice_row['user_type'] == 'E') { // employers $sql = "UPDATE `employers` SET membership_active = 'N' WHERE ID='" . jb_escape_sql($invoice_row['user_id']) . "' "; JB_mysql_query($sql) or JB_mail_error("[{$sql}]" . mysql_error()); } elseif ($invoice_row['user_type'] == 'C') { // candidates $sql = "UPDATE `users` SET membership_active = 'N' WHERE ID='" . jb_escape_sql($invoice_row['user_id']) . "' "; JB_mysql_query($sql) or JB_mail_error("[{$sql}]" . mysql_error()); } JB_stop_membership($invoice_row); } }