function delete_guest()
{
    global $db, $t, $vars;
    if (!$vars['confirm']) {
        $g = $db->get_guest($vars['guest_id']);
        display_confirm("Delete newsletter: {$g['guest_name']}", "\n        <center>Do you really want to delete guest: {$g['guest_name']}?\n        </center>\n        ");
        return;
    } elseif ($vars['confirm'] != 'Yes') {
        display_edit_form();
        return;
    }
    $g = $db->get_guest($vars['guest_id']);
    $db->delete_guest($vars['guest_id']);
    $db->delete_guest_threads($vars['guest_id']);
    $t->assign('msg', "Guest deleted");
    $t->assign('link', 'newsletter_guests.php');
    $t->display("admin/newsletter_guest_saved.html");
}
$import_filename = $config['root_dir'] . "/admin/imp.csv";
$vars = get_input_vars();
switch ($vars['action']) {
    case 'do_import':
        admin_html_redirect("import_f.php?action=do_real_import", $title = 'Import...', $text = 'Import processing may take some time, please be patient');
        break;
    case 'do_real_import':
        $vars = $_SESSION['import_vars'];
        check_demo();
        do_import();
        print "<br /><strong>Import finsihed. {$total_added} records added</strong><br />\n        Please don't forget to remove import file amember/admin/imp.csv";
        break;
    case 'upload':
        check_demo();
        if ($lines = get_first_lines(20)) {
            display_confirm($lines);
            $_SESSION['import_vars'] = $vars;
            break;
        }
    case 'check_form':
        check_demo();
        if (!file_exists($import_filename)) {
            fatal_error("Please upload CSV file for import: /amember/admin/imp.csv. Please upload file and press 'Refresh' button (F5)", 0);
        }
        if (check_form()) {
            display_upload_form();
            break;
        }
    default:
        display_form();
}
Exemple #3
0
function payment_save()
{
    $vars = $GLOBALS['vars'];
    global $db, $t;
    set_date_from_smarty('begin_date', $vars);
    set_date_from_smarty('expire_date', $vars);
    global $payment_additional_fields;
    foreach ($payment_additional_fields as $f) {
        $fname = $f['name'];
        if ($f['validate_func']) {
            foreach ((array) $f['validate_func'] as $func) {
                if (!function_exists($func)) {
                    fatal_error("Validation function '{$func}' for field: '{$fname}' not defined. Internal error", 0);
                }
                if ($err = $func($vars, $fname)) {
                    fatal_error("Cannot update payment: {$err}", 0);
                }
            }
        }
        if (isset($vars[$fname])) {
            $vars['data'][$fname] = $vars[$fname];
        }
        unset($vars[$fname]);
    }
    $oldp = $db->get_payment($vars['payment_id']);
    if ($vars['completed'] != $oldp['completed'] && count((array) $oldp['data'][0]['BASKET_PRODUCTS']) > 1) {
        if (!$vars['confirm']) {
            display_confirm('This change will affect multiple payments', "This payment\n        record is a 'parent' invoice for multiple subscriptions.\n        If you want to change status (paid/not-paid) for all\n        subscriptions in the batch, click YES, if you want to\n        change status only for one product, click NO.\n        ");
        } elseif ($vars['confirm'] == 'Yes') {
            // confirmed
            if ($vars['completed']) {
                $vars['completed'] = 0;
                $err = $db->update_payment($vars['payment_id'], $vars);
                $vars['completed'] = 1;
                if ($err) {
                    fatal_error("Cannot update payment info: {$err}");
                }
                $db->finish_waiting_payment($vars['payment_id'], $oldp['paysys_id'], $vars['receipt_id'], '', $x = array());
                $oldp = $db->get_payment($vars['payment_id']);
                $vars['amount'] = $oldp['amount'];
                $t->assign('link', "users.php?action=payments&member_id={$oldp['member_id']}");
                $t->display("admin/user_saved.html");
                return;
                ///////////////////////////!!!!!!!!!!!!!
            } else {
                foreach ($db->get_user_payments($oldp['member_id'], 1) as $p) {
                    if ($p['data'][0]['ORIG_ID'] == $oldp['payment_id']) {
                        $db->delete_payment($p['payment_id']);
                    }
                }
                $vars['amount'] = array_sum($oldp['data'][0]['BASKET_PRICES']);
            }
        }
    }
    $err = $db->update_payment($vars['payment_id'], $vars);
    admin_log("Payment/subscription record changed", 'members', $oldp['member_id']);
    if ($err) {
        fatal_error("Cannot update payment info: {$err}");
    }
    $t->assign('link', "users.php?action=payments&member_id={$oldp['member_id']}");
    $t->display("admin/user_saved.html");
}
function delete_thread()
{
    global $db, $t, $vars;
    if (!$vars['confirm']) {
        $tr = $db->get_thread($vars['thread_id']);
        display_confirm("Delete thread: {$tr['thread_title']}", "\n        <center>Do you really want to delete newsletter thread: {$tr['thread_title']}?\n        </center>\n        ");
        return;
    } elseif ($vars['confirm'] != 'Yes') {
        display_edit_form();
        return;
    }
    $tr = $db->get_thread($vars['thread_id']);
    $db->delete_thread($vars['thread_id']);
    $t->assign('msg', "Thread deleted");
    $t->assign('link', 'newsletter_threads.php');
    $t->display("admin/newsletter_thread_saved.html");
}
function delete()
{
    global $product_id, $vars;
    global $db, $t;
    $pr = $db->get_product($product_id);
    $c_act = $db->users_find_by_product_c($product_id, $include_expired = 0);
    $c_all = $db->users_find_by_product_c($product_id, $include_expired = 1);
    $c_exp = $c_all - $c_act;
    $c_exp = $c_exp ? "({$c_exp} expired)" : "";
    if ($vars['confirm'] != '' && $vars['confirm'] != 'Yes') {
        header("Location: products.php");
        exit;
    }
    if ($c_all && $vars['confirm'] != 'Yes') {
        display_confirm("Really delete a product?", "There are {$c_all} user(s) {$c_exp} having subscription\n        to this product. It is <b><font color=red>VERY DANGEROUS</font></b> to delete product if\n        someone subscribed.\n        <br />\n        Please delete these customers or re-subscribe them to another product using \n        <a href='mass_subscribe.php'>Mass Subscribe</a> function.<br />       \n        <br />\n        As immediate workaround, you may hide this product using 'Scope' field<br />\n        <br />\n        If you anyway want to delete product [{$pr['title']}], you may click <font color=red>YES</font>,\n        please keep in mind that <font color=red>RESTORE WILL BE IMPOSSIBLE</font>.\n        ");
        exit;
    }
    if ($vars['confirm'] == 'Yes' || !$c_all) {
        $err = $db->delete_product($product_id, $c_all > 0);
        if ($err) {
            fatal_error("Cannot delete product: {$err}");
        }
        admin_log("Product deleted {$vars['product_id']}");
        $t->assign('msg', 'Product deleted');
        $t->assign('url', "products.php");
        $t->display("admin/product_saved.html");
    }
}
function delete_newsletter()
{
    global $db, $t, $vars;
    if (!$vars['confirm']) {
        $nl = $db->get_newsletter($vars['archive_id']);
        display_confirm("Delete newsletter: {$nl['subject']}", "\n        <center>Do you really want to delete newsletter: {$nl['subject']}?\n        </center>\n        ");
        return;
    } elseif ($vars['confirm'] != 'Yes') {
        display_edit_form();
        return;
    }
    $db->delete_newsletter($vars['archive_id']);
    $t->assign('msg', "Newsletter deleted");
    $t->assign('link', 'newsletter_archive.php');
    $t->display("admin/newsletter_archive_saved.html");
}