Example #1
0
 }
 Tygh::$app['view']->assign('product_data', $product_data);
 Tygh::$app['view']->assign('taxes', $taxes);
 $product_options = fn_get_product_options($_REQUEST['product_id'], DESCR_SL);
 if (!empty($product_options)) {
     $has_inventory = false;
     foreach ($product_options as $p) {
         if ($p['inventory'] == 'Y') {
             $has_inventory = true;
             break;
         }
     }
     Tygh::$app['view']->assign('has_inventory', $has_inventory);
 }
 Tygh::$app['view']->assign('product_options', $product_options);
 list($global_options) = fn_get_product_global_options();
 Tygh::$app['view']->assign('global_options', $global_options);
 // If the product is electronnicaly distributed, get the assigned files
 list($product_files) = fn_get_product_files(array('product_id' => $_REQUEST['product_id']));
 list($product_file_folders) = fn_get_product_file_folders(array('product_id' => $_REQUEST['product_id']));
 $files_tree = fn_build_files_tree($product_file_folders, $product_files);
 $sharing_company_id = Registry::get('runtime.company_id') ? Registry::get('runtime.company_id') : $product_data['company_id'];
 // Preview URL only exists for companies that have this product shared
 if (fn_allowed_for('ULTIMATE') && !in_array($sharing_company_id, $product_data['shared_between_companies'])) {
     $preview_url = null;
 } else {
     $preview_url = fn_get_preview_url("products.view?product_id={$_REQUEST['product_id']}", $product_data, $auth['user_id']);
 }
 Tygh::$app['view']->assign('view_uri', $preview_url);
 Tygh::$app['view']->assign('product_file_folders', $product_file_folders);
 Tygh::$app['view']->assign('product_files', $product_files);
Example #2
0
    // Options list
    //
} elseif ($mode == 'manage') {
    $params = $_REQUEST;
    list($product_options, $search) = fn_get_product_global_options($params, Registry::get('settings.Appearance.admin_elements_per_page'), DESCR_SL);
    Registry::get('view')->assign('product_options', $product_options);
    Registry::get('view')->assign('search', $search);
    Registry::get('view')->assign('object', 'global');
    if (empty($product_options) && defined('AJAX_REQUEST')) {
        $ajax->assign('force_redirection', fn_url('product_options.manage'));
    }
    //
    // Apply options to products
    //
} elseif ($mode == 'apply') {
    list($product_options, $search) = fn_get_product_global_options();
    Registry::get('view')->assign('product_options', $product_options);
    //
    // Update option
    //
} elseif ($mode == 'update') {
    $product_id = !empty($_REQUEST['product_id']) ? $_REQUEST['product_id'] : 0;
    $o_data = fn_get_product_option_data($_REQUEST['option_id'], $product_id);
    if (fn_allowed_for('ULTIMATE') && !empty($_REQUEST['product_id'])) {
        Registry::get('view')->assign('shared_product', fn_ult_is_shared_product($_REQUEST['product_id']));
        Registry::get('view')->assign('product_company_id', db_get_field('SELECT company_id FROM ?:products WHERE product_id = ?i', $_REQUEST['product_id']));
    }
    if (isset($_REQUEST['object'])) {
        Registry::get('view')->assign('object', $_REQUEST['object']);
    }
    Registry::get('view')->assign('option_data', $o_data);
Example #3
0
    fn_add_breadcrumb(fn_get_product_name($_REQUEST['product_id']), "products.update?product_id={$_REQUEST['product_id']}&selected_section=options");
    // I think this should be removed, not good, must be done on xml menu level
    Registry::set('navigation.selected_tab', 'catalog');
    Registry::set('navigation.subsection', 'products');
    $exceptions = fn_get_product_exceptions($_REQUEST['product_id']);
    $product_options = fn_get_product_options($_REQUEST['product_id'], DESCR_SL, true);
    $product_data = fn_get_product_data($_REQUEST['product_id'], $auth, DESCR_SL, '', true, true, true, true);
    $view->assign('product_options', $product_options);
    $view->assign('exceptions', $exceptions);
    $view->assign('product_data', $product_data);
    //
    // Options list
    //
} elseif ($mode == 'manage') {
    $params = $_REQUEST;
    list($product_options, $search, $product_options_count) = fn_get_product_global_options($params, Registry::get('settings.Appearance.admin_elements_per_page'), DESCR_SL);
    $view->assign('product_options', $product_options);
    $view->assign('object', 'global');
    if (empty($product_options) && defined('AJAX_REQUEST')) {
        $ajax->assign('force_redirection', "product_options.manage");
    }
    //
    // Apply options to products
    //
} elseif ($mode == 'apply') {
    $condition = fn_get_company_condition('p.company_id', true, '', true);
    $product_options = db_get_array("SELECT p.*, d.* FROM ?:product_options as p LEFT JOIN ?:product_options_descriptions as d ON d.option_id = p.option_id AND d.lang_code = ?s WHERE p.product_id = 0 {$condition}", DESCR_SL);
    $view->assign('product_options', $product_options);
    //
    // Update option
    //