function payment_plans($category = array()) { return \query\payments::while_plans($category); }
$ab_del = $GLOBALS['me']->is_admin; if ($ab_edt) { echo '<div class="bulk_options">'; if ($GLOBALS['me']->is_admin) { echo '<button class="btn" name="delete" data-delete-msg="' . $LANG['delete_msg'] . '">' . $LANG['delete_all'] . '</button> '; } echo $LANG['action'] . ': <select name="action">'; foreach (array('paid' => $LANG['paid'], 'unpaid' => $LANG['unpaid'], 'delivered' => $LANG['delivered'], 'undelivered' => $LANG['undelivered']) as $k => $v) { echo '<option value="' . $k . '">' . $v . '</option>'; } echo '</select> <button class="btn" name="set_action">' . $LANG['set_all'] . '</button>'; echo '</div>'; } foreach (\query\payments::while_invoices(array_merge(array('orderby' => isset($_GET['orderby']) ? urldecode($_GET['orderby']) : 'date desc'), $options)) as $item) { echo '<li> <input type="checkbox" name="id[' . $item->ID . ']" /> <div style="display: table;"> <img src="' . \query\main::user_avatar($item->user_avatar) . '" alt="" /> <div class="info-div"> <h2>' . ($item->paid ? '<span class="msg-success">' . $item->state . '</span>' : '<span class="msg-alert">' . $item->state . '</span>') . ' ' . $item->user_name . ' <span class="fright date">' . date('Y.m.d, ' . (\query\main::get_option('hour_format') == 12 ? 'g:i A' : 'G:i'), strtotime($item->date)) . '</span></h2> <div class="info-bar">' . $LANG['form_amount'] . ': ' . $item->price_format . ' <span class="info"><span>' . $LANG['pmts_form_gateway'] . ': ' . $item->gateway . ' <br /> ' . $item->details . '</span></span> / ' . $LANG['pmts_form_delivered'] . ': ' . ($item->delivered ? '<span class="msg-success">' . $LANG['yes'] . '</span>' : '<span class="msg-error">' . $LANG['no'] . '</span>') . '</div> </div></div>
</div> </section>'; } if ($GLOBALS['me']->is_admin) { echo '<section class="el-row"> <h2>' . $LANG['payments'] . ' <a href="#" class="updown" data-set="payments">' . (isset($_SESSION['ses_set']['payments']) && ($show_payments = $_SESSION['ses_set']['payments']) ? 'S' : 'R') . '</a></h2> <div class="el-row-body"' . (!empty($show_payments) ? ' style="display: none;"' : '') . '> <ul class="announce-box abdash"> <li>' . $LANG['today'] . ':<b>' . sprintf(PRICE_FORMAT, \site\utils::money_format((double) \query\payments::payments(array('show' => 'paid', 'date' => strtotime('today')))['sum'])) . '</b></li> <li>' . $LANG['yesterday'] . ':<b>' . sprintf(PRICE_FORMAT, \site\utils::money_format((double) \query\payments::payments(array('show' => 'paid', 'date' => strtotime('-2 days 00:00:00') . ',' . strtotime('today')))['sum'])) . '</b></li> <li>' . $LANG['this_week'] . ':<b>' . sprintf(PRICE_FORMAT, \site\utils::money_format((double) \query\payments::payments(array('show' => 'paid', 'date' => strtotime('last week 00:00:00')))['sum'])) . '</b></li> <li>' . $LANG['this_month'] . ':<b>' . sprintf(PRICE_FORMAT, \site\utils::money_format((double) \query\payments::payments(array('show' => 'paid', 'date' => strtotime('first day of this month 00:00:00')))['sum'])) . '</b></li> </ul> </section>'; } echo '<ul class="elements-list">'; if (ab_to(array('stores' => 'view'))) { echo '<li> <div class="info-div"><b>' . \query\main::stores() . '</b> ' . strtolower($LANG['stores']) . '</div> <div class="options"> <a href="?route=stores.php&action=list">' . $LANG['view'] . '</a> <a href="?route=stores.php&action=add">' . $LANG['add'] . '</a> </div> </li>'; } if (ab_to(array('coupons' => 'view'))) {
} } } else { if (($payment_direct_token = $payment->execute_direct_payment()) && isset($_SESSION['payment_direct_token']) && ($_SESSION['payment_direct_token'] = $payment_direct_token)) { unset($_SESSION['payment_direct_token']); try { $answer = $payment->execute_payment(); echo '<div class="success">' . $LANG['payments_msg_confirmed'] . '</div>'; /* Action after purchase, add credits or something ... */ // add user credits $delivered = \user\update::add_credits($GLOBALS['me']->ID, $plan->credits); // update transaction // state, userID, paid, delivered, transactionID \query\payments::update_payment(array($answer['state'], $GLOBALS['me']->ID, 1, $delivered, $answer['id'])); } catch (Exception $e) { echo '<div class="error">' . $e->getMessage() . '</div>'; } } } $csrf = $_SESSION['payment_csrf'] = \site\utils::str_random(10); echo '<div class="table">'; echo '<section> <h2>' . $LANG['payments_title_infos'] . '</h2> <ul class="table2"> <li><span>' . $LANG['form_price'] . ':</span> <b>' . $plan->price_format . '</b></li> <li><span>' . $LANG['form_plan'] . ':</span> <b>' . $plan->name . '</b></li> <li><span>' . $LANG['form_credits'] . ':</span> <b>' . $plan->credits . '</b></li>
public static function delete_payment_plan_image($id) { global $db; if (!$GLOBALS['me']->is_admin) { return false; } $id = (array) $id; $stmt = $db->stmt_init(); $stmt->prepare("UPDATE " . DB_TABLE_PREFIX . "p_plans SET image = '' WHERE id = ?"); foreach ($id as $ID) { if (\query\payments::plan_exists($ID)) { $plan = \query\payments::plan_infos($ID); $stmt->bind_param("i", $ID); $stmt->execute(); if (!empty($plan->image)) { @unlink(DIR . '/' . $plan->image); } } } @$stmt->close(); return true; }