예제 #1
0
****************************************************************************
* PLEASE READ THE FULL TEXT  OF THE SOFTWARE  LICENSE   AGREEMENT  IN  THE *
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE.            *
****************************************************************************/
if (!defined('BOOTSTRAP')) {
    die('Access denied');
}
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    //
    // Creation gift certificate
    //
    if ($mode == 'create_gift_certificate') {
        $change_return_status = $_REQUEST['change_return_status'];
        if (!empty($_REQUEST['accepted'])) {
            $total = 0;
            $return_info = fn_get_return_info($change_return_status['return_id']);
            foreach ((array) $_REQUEST['accepted'] as $item_id => $v) {
                if (isset($v['chosen']) && $v['chosen'] == 'Y') {
                    $total += $v['amount'] * $return_info['items'][RETURN_PRODUCT_ACCEPTED][$item_id]['price'];
                }
            }
            if ($total > 0) {
                $certificate = fn_create_return_gift_certificate($return_info['order_id'], fn_format_price($total));
                $return_info['extra'] = unserialize($return_info['extra']);
                if (!isset($return_info['extra']['gift_certificates'])) {
                    $return_info['extra']['gift_certificates'] = array();
                }
                $return_info['extra']['gift_certificates'] = fn_array_merge($return_info['extra']['gift_certificates'], $certificate);
                $_data = array('extra' => serialize($return_info['extra']));
                db_query("UPDATE ?:rma_returns SET ?u WHERE return_id = ?i", $_data, $change_return_status['return_id']);
            }
예제 #2
0
파일: func.php 프로젝트: heg-arc-ne/cscart
function fn_rma_print_packing_slips($return_ids, $auth, $area = AREA)
{
    $view = Registry::get('view');
    $passed = false;
    if (!is_array($return_ids)) {
        $return_ids = array($return_ids);
    }
    $view->assign('reasons', fn_get_rma_properties(RMA_REASON));
    $view->assign('actions', fn_get_rma_properties(RMA_ACTION));
    $view->assign('order_status_descr', fn_get_simple_statuses(STATUSES_RETURN));
    foreach ($return_ids as $return_id) {
        $return_info = fn_get_return_info($return_id);
        if (empty($return_info) || $area == 'C' && $return_info['user_id'] != $auth['user_id']) {
            continue;
        }
        $order_info = fn_get_order_info($return_info['order_id']);
        if (empty($order_info)) {
            continue;
        }
        $passed = true;
        $view->assign('return_info', $return_info);
        $view->assign('order_info', $order_info);
        $view->assign('company_data', fn_get_company_placement_info($order_info['company_id']));
        $view->displayMail('addons/rma/print_slip.tpl', true, $area, $order_info['company_id']);
        if ($return_id != end($return_ids)) {
            echo "<div style='page-break-before: always;'>&nbsp;</div>";
        }
    }
    return $passed;
}
예제 #3
0
        return array(CONTROLLER_STATUS_OK, 'rma.details?return_id=' . $return_id);
    }
}
if (empty($auth['user_id']) && !isset($auth['order_ids']) && AREA == 'C') {
    return array(CONTROLLER_STATUS_REDIRECT, 'auth.login_form?return_url=' . urlencode(Registry::get('config.current_url')));
}
if ($mode == 'details' && !empty($_REQUEST['return_id'])) {
    $return_id = intval($_REQUEST['return_id']);
    // [Breadcrumbs]
    if (AREA != 'A') {
        fn_add_breadcrumb(__('return_requests'), "rma.returns");
        fn_add_breadcrumb(__('return_info'));
    }
    // [/Breadcrumbs]
    Registry::set('navigation.tabs', array('return_products' => array('title' => __('return_products_information'), 'js' => true), 'declined_products' => array('title' => __('declined_products_information'), 'js' => true)));
    $return_info = fn_get_return_info($return_id);
    if (AREA == 'C' && (empty($return_info) || $return_info['user_id'] != $auth['user_id'])) {
        return array(CONTROLLER_STATUS_DENIED);
    }
    if (AREA == 'A') {
        Registry::set('navigation.tabs.comments', array('title' => __('comments'), 'js' => true));
        Registry::set('navigation.tabs.actions', array('title' => __('actions'), 'js' => true));
        Tygh::$app['view']->assign('is_refund', fn_is_refund_action($return_info['action']));
        Tygh::$app['view']->assign('order_info', fn_get_order_info($return_info['order_id']));
    }
    $return_info['extra'] = !empty($return_info['extra']) ? unserialize($return_info['extra']) : array();
    if (!is_array($return_info['extra'])) {
        $return_info['extra'] = array();
    }
    Tygh::$app['view']->assign('reasons', fn_get_rma_properties(RMA_REASON));
    Tygh::$app['view']->assign('actions', fn_get_rma_properties(RMA_ACTION));