Esempio n. 1
0
    Registry::set('navigation.tabs', array('general' => array('title' => fn_get_lang_var('general'), 'js' => true), 'linked_products' => array('title' => fn_get_lang_var('products'), 'js' => true), 'paids' => array('title' => fn_get_lang_var('orders'), 'js' => true)));
    if ($subscription['order_id'] == $subscription['order_ids']) {
        $last_status = $subscription['order_info']['status'];
        $pay_order = $subscription['order_id'];
    } else {
        $pay_order = substr($subscription['order_ids'], strrpos($subscription['order_ids'], ',') + 1);
        $last_order = fn_get_order_short_info($pay_order);
        $last_status = $last_order['status'];
    }
    if (!fn_subscription_is_paid($last_status)) {
        $view->assign('subscription_pay_order_id', $pay_order);
    }
    $view->assign('subscription', $subscription);
} elseif ($mode == 'search') {
    $additional_data = array('plan_options' => true);
    if (!empty($auth['user_id'])) {
        $additional_data['user_id'] = $auth['user_id'];
    } elseif (!empty($auth['order_ids'])) {
        $additional_data['order_ids'] = $auth['order_ids'];
    } else {
        return array(CONTROLLER_STATUS_REDIRECT, "auth.login_form?return_url=" . urlencode(Registry::get('config.current_url')));
    }
    list($subscriptions, $search) = fn_get_recurring_subscriptions($_REQUEST, $additional_data);
    $view->assign('subscriptions', $subscriptions);
    $view->assign('search', $search);
} elseif ($mode == 'unsubscribe') {
    if (!empty($_REQUEST['subscription_id'])) {
        fn_change_recurring_subscription_status($_REQUEST['subscription_id'], 'U');
    }
    return array(CONTROLLER_STATUS_REDIRECT, "subscriptions.search");
}
Esempio n. 2
0
    fn_add_breadcrumb(fn_get_lang_var('rb_subscriptions'), "subscriptions.manage.reset_view");
    fn_add_breadcrumb(fn_get_lang_var('search_results'), "subscriptions.manage.last_view");
    Registry::set('navigation.tabs', array('general' => array('title' => fn_get_lang_var('general'), 'js' => true), 'linked_products' => array('title' => fn_get_lang_var('products'), 'js' => true), 'paids' => array('title' => fn_get_lang_var('orders'), 'js' => true)));
    $view->assign('subscription', $subscription);
} elseif ($mode == 'manage') {
    list($subscriptions, $search) = fn_get_recurring_subscriptions($_REQUEST);
    $view->assign('subscriptions', $subscriptions);
    $view->assign('search', $search);
} elseif ($mode == 'delete') {
    if (!empty($_REQUEST['subscription_id'])) {
        fn_delete_recurring_subscriptions((array) $_REQUEST['subscription_id']);
    }
    return array(CONTROLLER_STATUS_REDIRECT, "subscriptions.manage");
} elseif ($mode == 'update_status') {
    $old_status = db_get_field("SELECT status FROM ?:recurring_subscriptions WHERE subscription_id = ?i", $_REQUEST['id']);
    if (!fn_change_recurring_subscription_status($_REQUEST['id'], $_REQUEST['status'], $old_status, fn_get_notification_rules($_REQUEST), true)) {
        $ajax->assign('return_status', $old_status);
    }
    exit;
} elseif ($mode == 'charge') {
    define('ORDER_MANAGEMENT', true);
    if (!empty($_REQUEST['subscription_id'])) {
        fn_charge_subscription($_REQUEST['subscription_id']);
        fn_set_notification('N', fn_get_lang_var('notice'), fn_get_lang_var('rb_subscription_charged'));
    }
    return array(CONTROLLER_STATUS_REDIRECT, "subscriptions.manage");
} elseif ($mode == 'confirmation') {
    // [Breadcrumbs]
    fn_add_breadcrumb(fn_get_lang_var('orders'), "orders.manage");
    // [/Breadcrumbs]
    $view->assign('order_ids', $_SESSION['order_ids']);