function fields_check_params(&$vars) { $err = array(); set_date_from_smarty('beg_date', $vars); set_date_from_smarty('end_date', $vars); if (!count($vars['fields'])) { $err[] = "Please select one or more fields to continue"; } settype($vars['max_values'], 'integer'); if ($vars['max_values'] <= 0) { $err[] = "Please enter a valid integer for 'Max Values' field"; } return $err; }
* * Please direct bug reports,suggestions or feedback to the cgi-central forums. * http://www.cgi-central.net/forum/ * * aMember PRO is a commercial software. Any distribution is strictly prohibited. * */ include "../config.inc.php"; $t = new_smarty(); include "login.inc.php"; $vars = get_input_vars(); extract($vars, EXTR_OVERWRITE); if ($clear) { $vars = get_input_vars(); $tt = array(); set_date_from_smarty('dat', $vars); if ($vars['dat'] >= date('Y-m-d')) { fatal_error("Please select date before today", 0); } if ($vars['access_log']) { $tt[] = "access_log"; $db->clear_access_log($vars['dat']); } if ($vars['admin_log']) { $tt[] = "admin_log"; $db->clear_admin_log($vars['dat']); } if ($vars['error_log']) { $tt[] = "error_log"; $db->clear_error_log($vars['dat']); }
} function get_payments_by_string($vars) { global $db, $t; $count = 20; list($all_count, $all_amount, $all_tax) = $db->get_payments_c($vars['beg_date'], $vars['end_date'], intval($vars['only_completed']), $vars['list_by'], null, 1, $vars['q'], $vars['q_where']); $list = $db->get_payments($vars['beg_date'], $vars['end_date'], intval($vars['only_completed']), $vars['start'], $count, $vars['list_by'], null, 1, $vars['q'], $vars['q_where']); return array($all_count, $all_amount, $list, $all_tax); } if ($vars['beg_dateDay']) { set_date_from_smarty('beg_date', $vars); } elseif ($vars['beg_date'] == '') { $vars['beg_date'] = date('Y-m-d'); } if ($end_dateDay) { set_date_from_smarty('end_date', $vars); } elseif ($vars['end_date'] == '') { $vars['end_date'] = date('Y-m-d'); } if ($vars['beg_date'] > $vars['end_date']) { $s = $vars['beg_date']; $vars['beg_date'] = $vars['end_date']; $vars['end_date'] = $s; } $t->assign('beg_date', $vars['beg_date']); $t->assign('end_date', $vars['end_date']); if ($vars['type'] == 'string') { list($all_count, $all_amount, $list, $all_tax) = get_payments_by_string($vars); } else { list($all_count, $all_amount, $list, $all_tax) = get_payments_by_date($vars); }
function payment_add() { $vars = $GLOBALS['vars']; global $db, $t; global $payment_additional_fields, $config; 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); } } } $vars['data'][$fname] = $vars[$fname]; unset($vars[$fname]); } set_date_from_smarty('begin_date', $vars); set_date_from_smarty('expire_date', $vars); if ($config['use_tax'] && !$vars['incl_tax']) { $vars['amount'] = $vars['amount'] + $vars['tax_amount']; } $err = $db->add_payment($vars); if ($err) { fatal_error("Cannot add payment: {$err}"); } admin_log("Payment/subscription record added", 'members', $vars['member_id']); $t->assign('link', "users.php?member_id={$vars['member_id']}&action=payments"); $t->assign('member_id', $vars['member_id']); $t->display("admin/user_saved.html"); }
function do_export() { global $vars; global $db; if ($vars['date_check'] == "on") { $dt = get_input_vars(); $start_date = set_date_from_smarty('range_start', $dt); $end_date = set_date_from_smarty('range_end', $dt); } else { $start_date = '0000-00-00'; $end_date = '2099-12-31'; } $members = array(); if ($vars['send_file']) { header('Cache-Control: maxage=3600'); header('Pragma: public'); header("Content-type: application/csv"); $dat = date('Ymd'); header("Content-Disposition: attachment; filename=amember-{$dat}.csv"); } else { header("Content-type: text/plain"); } define('REC_LIMIT', 1024); if (count($vars['product_name']) > 0) { $prod = join(",", $vars['product_name']); } else { $prod = ''; } foreach ($vars['subscr_type'] as $subscr_type) { switch ($subscr_type) { case 'any': if ($subscr_type == 'any') { $cmpl = 0; } case 'completed': if ($subscr_type == 'completed') { $cmpl = 1; } case 'not_completed': if ($subscr_type == 'not_completed') { $cmpl = -1; } list($count, $sumx) = $db->get_payments_c($start_date, $end_date, $cmpl, 'add', $prod); $used_member_id = array(); for ($i = 0; $i < $count; $i += REC_LIMIT) { $list1 = $db->get_payments($start_date, $end_date, $cmpl, $i, REC_LIMIT, 'add', $prod); foreach ($list1 as $l) { if ($vars['multi_type'] == 'discard' && $used_member_id[$l['member_id']]++) { continue; } if (!isset($members[$l['member_id']])) { $members[$l['member_id']] = $db->get_user($l['member_id']); } $members[$l['member_id']]['PAYMENTS'][$l['payment_id']] = $l; } print_rows($members); $members = array(); } break; case 'active': $yesterday = date('Y-m-d', time() - 3600 * 24); $count = $db->users_find_by_date_c($yesterday, 'date_range', $start_date, $end_date, $prod); for ($i = 0; $i < $count; $i += REC_LIMIT) { $members1 = $db->users_find_by_date($yesterday, 'date_range', $i, REC_LIMIT, $start_date, $end_date, $prod); $dat = date('Y-m-d'); foreach ($members1 as $u) { $members[$u['member_id']] = $u; $list = $db->get_user_payments($u['member_id'], 1); foreach ($list as $l) { $tmadd = explode(' ', $l['tm_added']); if ($l['begin_date'] > $dat || $l['expire_date'] < $dat || $tmadd[0] < $start_date || $tmadd[0] > $end_date) { continue; } if (count($vars['product_name']) > 0 && !in_array($l['product_id'], $vars['product_name'])) { continue; } $members[$u['member_id']]['PAYMENTS'][$l['payment_id']] = $l; } } print_rows($members); $members = array(); } break; case 'expired': $today = date('Y-m-d', time()); $count = $db->users_find_by_date_c($today, 'expire_date_range', $start_date, $end_date, $prod); for ($i = 0; $i < $count; $i += REC_LIMIT) { $members1 = $db->users_find_by_date($today, 'expire_date_range', $i, REC_LIMIT, $start_date, $end_date, $prod); $dat = date('Y-m-d'); foreach ($members1 as $u) { $members[$u['member_id']] = $u; $list = $db->get_user_payments($u['member_id'], 1); foreach ($list as $l) { $tmadd = explode(' ', $l['tm_added']); if ($l['begin_date'] > $dat || $l['expire_date'] > $dat || $tmadd[0] < $start_date || $tmadd[0] > $end_date) { continue; } if (count($vars['product_name']) > 0 && !in_array($l['product_id'], $vars['product_name'])) { continue; } $members[$u['member_id']]['PAYMENTS'][$l['payment_id']] = $l; } } print_rows($members); $members = array(); } break; case 'expired_users': $count = $db->get_users_list_c("%", 2); for ($i = 0; $i < $count; $i += REC_LIMIT) { $members1 = $db->get_users_list("%", 2, $i, $REC_LIMIT); foreach ($members1 as $u) { $members[$u['member_id']] = $u; } print_rows($members); $members = array(); } break; default: fatal_error("Unknown Subscription Type: Please select one", 0); } if ($subscr_type == 'all') { break; } } }
function income_check_params(&$vars) { set_date_from_smarty('beg_date', $vars); set_date_from_smarty('end_date', $vars); return array(); }
function save_batch() { global $db, $t, $vars; // validate first $error = array(); if ($vars['use_count'] <= 0) { $error[] = 'Please enter numeric Coupons Usage Count'; } if ($vars['member_use_count'] <= 0) { $error[] = 'Please enter numeric Member Coupons Usage Count'; } if ($vars['discount_v'] <= 0) { $error[] = 'Please enter numeric discount value'; } if ($error) { $t->assign('error', $error); edit_batch(); return 0; } set_date_from_smarty('begin_date', $vars); set_date_from_smarty('expire_date', $vars); $vars['discount'] = trim("{$vars['discount_v']} {$vars['discount_t']}"); if ($vars['disable_date']) { unset($vars['begin_date']); unset($vars['expire_date']); } admin_log("Coupon batch changed", "coupons", $vars['batch_id']); $db->coupons_batch_edit($vars['batch_id'], $vars); view_batch(); }