$end_date = $start_date + 15 * 24 * 3600; } $checkpoint_return = !$checkpoint_return; break; case '1m': $end_date = strtotime("+1 month", $start_date); break; } $last_payouts[$k]['amount'] = db_get_field("SELECT SUM(amount) FROM ?:aff_partner_actions WHERE partner_id = ?i AND approved = 'Y' AND date >= ?i AND date < ?i", $auth['user_id'], $start_date, $end_date); if ($max_amount < $last_payouts[$k]['amount']) { $max_amount = $last_payouts[$k]['amount']; } $last_payouts[$k]['range']['start'] = $start_date; $last_payouts[$k]['range']['end'] = $end_date - 1; $start_date = $end_date; --$k; } } if (empty($max_amount)) { $max_amount = 1; } $view->assign('total_commissions', db_get_field("SELECT SUM(amount) FROM ?:aff_partner_actions WHERE partner_id = ?i AND approved = 'Y'", $auth['user_id'])); $view->assign('max_amount', $max_amount); $view->assign('last_payouts', $last_payouts); $view->assign('partner', $partner_data); $partners = array($auth['user_id'] => fn_get_partners_tree_by_partner_id($auth['user_id'])); $view->assign('partners', $partners); $view->assign('affiliate_plans', fn_get_affiliate_plans_list()); } } /** /Body **/
} $statistic_search_data['amount_from'] = empty($statistic_search_data['amount_from']) ? 0 : floatval($statistic_search_data['amount_from']); if (!empty($statistic_search_data['amount_from'])) { $statistic_conditions .= db_quote(" AND (amount >= ?d) ", fn_convert_price($statistic_search_data['amount_from'])); } $statistic_search_data['amount_to'] = empty($statistic_search_data['amount_to']) ? 0 : floatval($statistic_search_data['amount_to']); if (!empty($statistic_search_data['amount_to'])) { $statistic_conditions .= db_quote(" AND (amount <= ?d) ", fn_convert_price($statistic_search_data['amount_to'])); } $view->assign('statistic_search', $statistic_search_data); $general_stats = db_get_hash_array("SELECT action, COUNT(action) as count, SUM(amount) as sum, AVG(amount) as avg, COUNT(distinct partner_id) as partners FROM ?:aff_partner_actions as actions WHERE {$statistic_conditions} GROUP BY action", 'action'); $general_stats['total'] = db_get_row("SELECT 'total' as action, COUNT(action) as count, SUM(amount) as sum, AVG(amount) as avg, COUNT(distinct partner_id) as partners FROM ?:aff_partner_actions as actions WHERE {$statistic_conditions}"); $view->assign('general_stats', $general_stats); $additional_stats = array(); $additional_stats['click_vs_show'] = empty($general_stats['show']['count']) ? '---' : (empty($general_stats['click']['count']) ? '0' : round($general_stats['click']['count'] / $general_stats['show']['count'] * 100, 1) . '% (' . intval($general_stats['click']['count']) . '/' . intval($general_stats['show']['count']) . ')'); $additional_stats['sale_vs_click'] = empty($general_stats['click']['count']) ? '---' : (empty($general_stats['sale']['count']) ? '0' : round($general_stats['sale']['count'] / $general_stats['click']['count'] * 100, 1) . '% (' . intval($general_stats['sale']['count']) . '/' . intval($general_stats['click']['count']) . ')'); $view->assign('additional_stats', $additional_stats); $list_plans = fn_get_affiliate_plans_list(); $view->assign('list_plans', $list_plans); $view->assign('affiliate_plan', fn_get_affiliate_plan_data_by_partner_id($auth['user_id'])); $sort_order = empty($_REQUEST['sort_order']) ? 'desc' : $_REQUEST['sort_order']; $sort_by = empty($_REQUEST['sort_by']) ? 'date' : $_REQUEST['sort_by']; $list_stats = fn_get_affiliate_actions($_SESSION['statistic_conditions'], array('sort_order' => $sort_order, 'sort_by' => $sort_by), true, @$_REQUEST['page']); $view->assign('sort_order', $sort_order == 'asc' ? 'desc' : 'asc'); $view->assign('sort_by', $sort_by); if (!empty($list_stats)) { $view->assign('list_stats', $list_stats); } $order_status_descr = fn_get_statuses(STATUSES_ORDER, true, true, true); $view->assign('order_status_descr', $order_status_descr); }
} } if (empty($max_amount)) { $max_amount = 1; } $view->assign('total_commissions', db_get_field("SELECT SUM(amount) FROM ?:aff_partner_actions WHERE partner_id = ?i AND approved = 'Y'", $_REQUEST['user_id'])); $view->assign('max_amount', $max_amount); $view->assign('last_payouts', $last_payouts); $view->assign('partner', $partner_data); $partners = fn_get_partners_tree($_REQUEST['user_id']); $view->assign('partners', $partners); $view->assign('affiliate_plans', fn_get_affiliate_plans_list(DESCR_SL)); } elseif ($mode == 'tree') { // [Breadcrumbs] fn_add_breadcrumb(fn_get_lang_var('affiliates'), "partners.manage"); // [/Breadcrumbs] $partners = fn_get_partners_tree(); $view->assign('partners', $partners); $view->assign('affiliate_plans', fn_get_affiliate_plans_list(DESCR_SL)); } elseif ($mode == 'manage') { $params = $_REQUEST; $params['user_type'] = 'P'; list($partners, $search) = fn_get_users($params, $auth, Registry::get('settings.Appearance.admin_elements_per_page'), 'affiliates'); $view->assign('search', $search); $view->assign('partners', $partners); $view->assign('affiliate_plans', fn_get_affiliate_plans_list(DESCR_SL)); $view->assign('countries', fn_get_countries(CART_LANGUAGE, true)); $view->assign('states', fn_get_all_states()); $view->assign('cur_date', TIME); } /** /Body **/