Remove Old Auto Pay from recurring Invoice in favor of the saved cards.

This commit is contained in:
johnnyq 2025-08-27 20:04:49 -04:00
parent da0892f9e3
commit 1638538fb4
3 changed files with 5 additions and 72 deletions

View File

@ -1525,59 +1525,6 @@ if (isset($_GET['email_invoice'])) {
}
if (isset($_POST['add_recurring_payment'])) {
$recurring_invoice_id = intval($_POST['recurring_invoice_id']);
$account = intval($_POST['account']);
$currency_code = sanitizeInput($_POST['currency_code']);
$payment_method = sanitizeInput($_POST['payment_method']);
// Get Recurring Info for logging and alerting
$sql = mysqli_query($mysqli, "SELECT * FROM recurring_invoices WHERE recurring_invoice_id = $recurring_invoice_id");
$row = mysqli_fetch_array($sql);
$recurring_invoice_prefix = sanitizeInput($row['recurring_invoice_prefix']);
$recurring_invoice_number = intval($row['recurring_invoice_number']);
$recurring_invoice_amount = floatval($row['recurring_invoice_amount']);
$client_id = intval($row['recurring_invoice_client_id']);
mysqli_query($mysqli,"INSERT INTO recurring_payments SET recurring_payment_currency_code = '$currency_code', recurring_payment_account_id = $account, recurring_payment_method = '$payment_method', recurring_payment_recurring_invoice_id = $recurring_invoice_id");
// Get Payment ID for reference
$recurring_payment_id = mysqli_insert_id($mysqli);
logAction("Recurring Invoice", "Auto Payment", "$session_name created Auto Pay for Recurring Invoice $recurring_invoice_prefix$recurring_invoice_number in the amount of " . numfmt_format_currency($currency_format, $recurring_invoice_amount, $currency_code), $client_id, $recurring_invoice_id);
flash_alert("Automatic Payment created for <strong>$recurring_invoice_prefix$recurring_invoice_number</strong>");
redirect();
}
if (isset($_GET['delete_recurring_payment'])) {
$recurring_payment_id = intval($_GET['delete_recurring_payment']);
// Get recurring Invoice ID
$recurring_invoice_id = intval(getFieldById('recurring_payments', $recurring_payment_id, 'recurring_payment_recurring_invoice_id'));
// Get the invoice total and details
$sql = mysqli_query($mysqli,"SELECT * FROM recurring_invoices WHERE recurring_invoice_id = $recurring_invoice_id");
$row = mysqli_fetch_array($sql);
$recurring_invoice_prefix = sanitizeInput($row['recurring_invoice_prefix']);
$recurring_invoice_number = intval($row['recurring_invoice_number']);
$client_id = intval($row['recurring_invoice_client_id']);
mysqli_query($mysqli,"DELETE FROM recurring_payments WHERE recurring_payment_id = $recurring_payment_id");
logAction("Recurring Invoice", "Auto Payment", "$session_name removed auto Pay from Recurring Invoice $recurring_invoice_prefix$recurring_invoice_number", $client_id, $recurring_invoice_id);
flash_alert("Auto Payment Removed for Recurring Invoice <strong>$recurring_invoice_prefix$recurring_invoice_number</strong>", 'error');
redirect();
}
if (isset($_GET['force_recurring'])) {
$recurring_invoice_id = intval($_GET['force_recurring']);

View File

@ -138,26 +138,14 @@ if (isset($_GET['recurring_invoice_id'])) {
<div class="row">
<div class="col-4">
<div class="col-2">
<?php if ($recurring_invoice_email_notify) { ?>
<a href="post.php?recurring_invoice_email_notify=0&recurring_invoice_id=<?php echo $recurring_invoice_id; ?>" class="btn btn-primary"><i class="fas fa-fw fa-bell mr-2"></i>Email Notify</a>
<?php } else { ?>
<a href="post.php?recurring_invoice_email_notify=1&recurring_invoice_id=<?php echo $recurring_invoice_id; ?>" class="btn btn-outline-danger"><i class="fas fa-fw fa-bell-slash mr-2"></i>Email Notify</a>
<?php } ?>
<?php if ($recurring_payment_recurring_invoice_id) { ?>
<a class="btn btn-outline-secondary" href="post.php?delete_recurring_payment=<?php echo $recurring_payment_id; ?>">
<i class="fas fa-fw fa-times-circle mr-2"></i>Disable AutoPay (<?php echo $recurring_payment_method ?>)
</a>
<?php } else { ?>
<a class="btn btn-secondary" href='#' data-toggle="modal" data-target="#addRecurringPaymentModal<?php echo $recurring_invoice_id; ?>">
<i class="fas fa-fw fa-redo-alt mr-2"></i>Create AutoPay
</a>
<?php require_once "modals/recurring_invoice/recurring_payment_add.php"; ?>
<?php } ?>
</div>
<div class="col-4">
<div class="col-3">
<?php $sql_saved_payments = mysqli_query($mysqli, "SELECT * FROM client_saved_payment_methods WHERE saved_payment_client_id = $client_id");
if (mysqli_num_rows($sql_saved_payments) > 0) { ?>
<form class="form" action="post.php" method="post">
@ -180,12 +168,10 @@ if (isset($_GET['recurring_invoice_id'])) {
</select>
</div>
</form>
<?php } else { ?>
<a href="saved_payment_method.php">Add a Payment Method</a>
<?php } ?>
<?php } ?>
</div>
<div class="col-4">
<div class="col-7">
<div class="dropdown dropleft text-center float-right">
<button class="btn btn-secondary" type="button" data-toggle="dropdown">
<i class="fas fa-ellipsis-v"></i>

View File

@ -255,7 +255,7 @@ $num_rows = mysqli_fetch_row(mysqli_query($mysqli, "SELECT FOUND_ROWS()"));
</select>
</form>
<?php } else { ?>
<a href="saved_payment_method.php">Add a Payment Method</a>
No Cards on File
<?php } ?>
</td>
<td>