function listProductUpdateData($products, $setUrl = 0) { $jshopConfig = JSFactory::getConfig(); $userShop = JSFactory::getUserShop(); $taxes = JSFactory::getAllTaxes(); if ($jshopConfig->product_list_show_manufacturer) { $manufacturers = JSFactory::getAllManufacturer(); } if ($jshopConfig->product_list_show_vendor) { $vendors = JSFactory::getAllVendor(); } if ($jshopConfig->show_delivery_time) { $deliverytimes = JSFactory::getAllDeliveryTime(); } $image_path = $jshopConfig->image_product_live_path; $noimage = $jshopConfig->noimage; JPluginHelper::importPlugin('jshoppingproducts'); $dispatcher = JDispatcher::getInstance(); foreach ($products as $key => $value) { $dispatcher->trigger('onListProductUpdateDataProduct', array(&$products, &$key, &$value)); $use_userdiscount = 1; if ($jshopConfig->user_discount_not_apply_prod_old_price && $products[$key]->product_old_price > 0) { $use_userdiscount = 0; } $products[$key]->_original_product_price = $products[$key]->product_price; $products[$key]->product_price_wp = $products[$key]->product_price; $products[$key]->product_price_default = 0; if ($jshopConfig->product_list_show_min_price) { if ($products[$key]->min_price > 0) { $products[$key]->product_price = $products[$key]->min_price; } } $products[$key]->show_price_from = 0; if ($jshopConfig->product_list_show_min_price && $value->different_prices) { $products[$key]->show_price_from = 1; } $products[$key]->product_price = getPriceFromCurrency($products[$key]->product_price, $products[$key]->currency_id); $products[$key]->product_old_price = getPriceFromCurrency($products[$key]->product_old_price, $products[$key]->currency_id); $products[$key]->product_price_wp = getPriceFromCurrency($products[$key]->product_price_wp, $products[$key]->currency_id); $products[$key]->product_price = getPriceCalcParamsTax($products[$key]->product_price, $products[$key]->tax_id); $products[$key]->product_old_price = getPriceCalcParamsTax($products[$key]->product_old_price, $products[$key]->tax_id); $products[$key]->product_price_wp = getPriceCalcParamsTax($products[$key]->product_price_wp, $products[$key]->tax_id); if ($userShop->percent_discount && $use_userdiscount) { $products[$key]->product_price_default = $products[$key]->_original_product_price; $products[$key]->product_price_default = getPriceFromCurrency($products[$key]->product_price_default, $products[$key]->currency_id); $products[$key]->product_price_default = getPriceCalcParamsTax($products[$key]->product_price_default, $products[$key]->tax_id); $products[$key]->product_price = getPriceDiscount($products[$key]->product_price, $userShop->percent_discount); $products[$key]->product_old_price = getPriceDiscount($products[$key]->product_old_price, $userShop->percent_discount); $products[$key]->product_price_wp = getPriceDiscount($products[$key]->product_price_wp, $userShop->percent_discount); } if ($jshopConfig->list_products_calc_basic_price_from_product_price) { $products[$key]->basic_price_info = getProductBasicPriceInfo($value, $products[$key]->product_price_wp); } else { $products[$key]->basic_price_info = getProductBasicPriceInfo($value, $products[$key]->product_price); } if ($value->tax_id) { $products[$key]->tax = $taxes[$value->tax_id]; } if ($jshopConfig->product_list_show_manufacturer && $value->product_manufacturer_id && isset($manufacturers[$value->product_manufacturer_id])) { $products[$key]->manufacturer = $manufacturers[$value->product_manufacturer_id]; } else { $products[$key]->manufacturer = new stdClass(); $products[$key]->manufacturer->name = ''; } if ($jshopConfig->admin_show_product_extra_field) { $products[$key]->extra_field = getProductExtraFieldForProduct($value); } else { $products[$key]->extra_field = ''; } if ($jshopConfig->product_list_show_vendor) { $vendordata = $vendors[$value->vendor_id]; $vendordata->products = SEFLink("index.php?option=com_jshopping&controller=vendor&task=products&vendor_id=" . $vendordata->id, 1); $products[$key]->vendor = $vendordata; } else { $products[$key]->vendor = ''; } if ($jshopConfig->hide_delivery_time_out_of_stock && $products[$key]->product_quantity <= 0) { $products[$key]->delivery_times_id = 0; $value->delivery_times_id = 0; } if ($jshopConfig->show_delivery_time && $value->delivery_times_id) { $products[$key]->delivery_time = $deliverytimes[$value->delivery_times_id]; } else { $products[$key]->delivery_time = ''; } $products[$key]->_display_price = getDisplayPriceForProduct($products[$key]->product_price); if (!$products[$key]->_display_price) { $products[$key]->product_old_price = 0; $products[$key]->product_price_default = 0; $products[$key]->basic_price_info['price_show'] = 0; $products[$key]->tax = 0; $jshopConfig->show_plus_shipping_in_product = 0; } if ($jshopConfig->product_list_show_qty_stock) { $products[$key]->qty_in_stock = getDataProductQtyInStock($products[$key]); } $image = getPatchProductImage($products[$key]->image, 'thumb'); $products[$key]->product_name_image = $products[$key]->image; $products[$key]->product_thumb_image = $image; if (!$image) { $image = $noimage; } $products[$key]->image = $image_path . "/" . $image; $products[$key]->template_block_product = "product.php"; if (!$jshopConfig->admin_show_product_labels) { $products[$key]->label_id = null; } if ($products[$key]->label_id) { $image = getNameImageLabel($products[$key]->label_id); if ($image) { $products[$key]->_label_image = $jshopConfig->image_labels_live_path . "/" . $image; } $products[$key]->_label_name = getNameImageLabel($products[$key]->label_id, 2); } if ($jshopConfig->display_short_descr_multiline) { $products[$key]->short_description = nl2br($products[$key]->short_description); } } if ($setUrl) { addLinkToProducts($products, 0, 1); } $dispatcher->trigger('onListProductUpdateData', array(&$products)); return $products; }
function ajax_attrib_select_and_price() { $db = JFactory::getDBO(); $jshopConfig = JSFactory::getConfig(); $display_price = JRequest::getVar('display_price'); $jshopConfig->setDisplayPriceFront($display_price); $product_id = JRequest::getInt('product_id'); $change_attr = JRequest::getInt('change_attr'); if ($jshopConfig->use_decimal_qty) { $qty = floatval(str_replace(",", ".", JRequest::getVar('qty', 1))); } else { $qty = JRequest::getInt('qty', 1); } if ($qty < 0) { $qty = 1; } $attribs = JRequest::getVar('attr'); if (!is_array($attribs)) { $attribs = array(); } $freeattr = array(); $dispatcher = JDispatcher::getInstance(); $dispatcher->trigger('onBeforeLoadDisplayAjaxAttrib', array(&$product_id, &$change_attr, &$qty, &$attribs, &$freeattr)); $product = JSFactory::getTable('product', 'jshop'); $product->load($product_id); $dispatcher->trigger('onBeforeLoadDisplayAjaxAttrib2', array(&$product)); $attributesDatas = $product->getAttributesDatas($attribs); $product->setAttributeActive($attributesDatas['attributeActive']); $attributeValues = $attributesDatas['attributeValues']; $product->setFreeAttributeActive($freeattr); $attributes = $product->getBuildSelectAttributes($attributeValues, $attributesDatas['attributeSelected'], 1); $rows = array(); foreach ($attributes as $k => $v) { $rows[] = '"id_' . $k . '":"' . json_value_encode($v->selects, 1) . '"'; } $pricefloat = $product->getPrice($qty, 1, 1, 1); $price = formatprice($pricefloat); $available = intval($product->getQty() > 0); $ean = $product->getEan(); $weight = $product->getWeight(); $rows[] = '"price":"' . json_value_encode($price) . '"'; $rows[] = '"pricefloat":"' . $pricefloat . '"'; $rows[] = '"available":"' . $available . '"'; $rows[] = '"ean":"' . json_value_encode($ean) . '"'; $rows[] = '"weight":"' . json_value_encode($weight) . '"'; $qty_in_stock = getDataProductQtyInStock($product); $rows[] = '"qty":"' . json_value_encode(sprintQtyInStock($qty_in_stock)) . '"'; $product->updateOtherPricesIncludeAllFactors(); $dispatcher->trigger('onBeforeDisplayAjaxAttrib', array(&$rows, &$product)); print '{' . implode(",", $rows) . '}'; die; }
public function getLoadProductData() { $jshopConfig = JSFactory::getConfig(); $dispatcher = JDispatcher::getInstance(); $product = $this->product; $product->load($this->product_id); $dispatcher->trigger('onBeforeLoadDisplayAjaxAttrib2', array(&$product)); $attributes = $product->getInitLoadAttribute($this->attribs); $product->setFreeAttributeActive($this->freeattr); $rows = array(); foreach ($attributes as $k => $v) { $rows['id_' . $k] = $v->selects; } $pricefloat = $product->getPrice($this->qty, 1, 1, 1); $price = formatprice($pricefloat); $available = intval($product->getQty() > 0); $displaybuttons = intval(intval($product->getQty() > 0) || $jshopConfig->hide_buy_not_avaible_stock == 0); $ean = $product->getEan(); $weight = formatweight($product->getWeight()); $basicprice = formatprice($product->getBasicPrice()); $rows['price'] = $price; $rows['pricefloat'] = $pricefloat; $rows['available'] = $available; $rows['ean'] = $ean; if ($jshopConfig->admin_show_product_basic_price) { $rows['basicprice'] = $basicprice; } if ($jshopConfig->product_show_weight) { $rows['weight'] = $weight; } if ($jshopConfig->product_list_show_price_default && $product->product_price_default > 0) { $rows['pricedefault'] = formatprice($product->product_price_default); } if ($jshopConfig->product_show_qty_stock) { $qty_in_stock = getDataProductQtyInStock($product); $rows['qty'] = sprintQtyInStock($qty_in_stock); } $product->updateOtherPricesIncludeAllFactors(); if (is_array($product->product_add_prices)) { foreach ($product->product_add_prices as $k => $v) { $rows['pq_' . $v->product_quantity_start] = formatprice($v->price); } } if ($product->product_old_price) { $old_price = formatprice($product->product_old_price); $rows['oldprice'] = $old_price; } $rows['displaybuttons'] = $displaybuttons; if ($jshopConfig->hide_delivery_time_out_of_stock) { $rows['showdeliverytime'] = $product->getDeliveryTimeId(); } if ($jshopConfig->use_extend_attribute_data) { $template_path = $jshopConfig->template_path . $jshopConfig->template . "/product"; $images = $product->getImages(); $videos = $product->getVideos(); $demofiles = $product->getDemoFiles(); if (!file_exists($template_path . "/block_image_thumb.php")) { $tmp = array(); foreach ($images as $img) { $tmp[] = $img->image_name; } $displayimgthumb = intval(count($images) > 1 || count($videos) && count($images)); $rows['images'] = $tmp; $rows['displayimgthumb'] = $displayimgthumb; } $view = $this->getView("product"); $view->setLayout("demofiles"); $view->assign('config', $jshopConfig); $view->assign('demofiles', $demofiles); $demofiles = $view->loadTemplate(); $rows['demofiles'] = $demofiles; if (file_exists($template_path . "/block_image_thumb.php")) { $product->getDescription(); $view = $this->getView("product"); $view->setLayout("block_image_thumb"); $view->assign('config', $jshopConfig); $view->assign('images', $images); $view->assign('videos', $videos); $view->assign('image_product_path', $jshopConfig->image_product_live_path); $dispatcher->trigger('onBeforeDisplayProductViewBlockImageThumb', array(&$view)); $block_image_thumb = $view->loadTemplate(); $view = $this->getView("product"); $view->setLayout("block_image_middle"); $view->assign('config', $jshopConfig); $view->assign('images', $images); $view->assign('videos', $videos); $view->assign('product', $product); $view->assign('noimage', $jshopConfig->noimage); $view->assign('image_product_path', $jshopConfig->image_product_live_path); $view->assign('path_to_image', $jshopConfig->live_path . 'images/'); $dispatcher->trigger('onBeforeDisplayProductViewBlockImageMiddle', array(&$view)); $block_image_middle = $view->loadTemplate(); $rows['block_image_thumb'] = $block_image_thumb; $rows['block_image_middle'] = $block_image_middle; } } $dispatcher->trigger('onBeforeDisplayAjaxAttribRows', array(&$rows, &$this)); return $rows; }
/** * get attributes html selects, price for select attribute */ function ajax_attrib_select_and_price() { $db = JFactory::getDBO(); $jshopConfig = JSFactory::getConfig(); $product_id = JRequest::getInt('product_id'); $change_attr = JRequest::getInt('change_attr'); if ($jshopConfig->use_decimal_qty) { $qty = floatval(str_replace(",", ".", JRequest::getVar('qty', 1))); } else { $qty = JRequest::getInt('qty', 1); } if ($qty < 0) { $qty = 0; } $attribs = JRequest::getVar('attr'); if (!is_array($attribs)) { $attribs = array(); } $freeattr = JRequest::getVar('freeattr'); if (!is_array($freeattr)) { $freeattr = array(); } JPluginHelper::importPlugin('jshoppingproducts'); $dispatcher = JDispatcher::getInstance(); $dispatcher->trigger('onBeforeLoadDisplayAjaxAttrib', array(&$product_id, &$change_attr, &$qty, &$attribs, &$freeattr)); $product = JTable::getInstance('product', 'jshop'); $product->load($product_id); $dispatcher->trigger('onBeforeLoadDisplayAjaxAttrib2', array(&$product)); $attributesDatas = $product->getAttributesDatas($attribs); $product->setAttributeActive($attributesDatas['attributeActive']); $attributeValues = $attributesDatas['attributeValues']; $product->setFreeAttributeActive($freeattr); $attributes = $product->getBuildSelectAttributes($attributeValues, $attributesDatas['attributeSelected']); $rows = array(); foreach ($attributes as $k => $v) { $v->selects = str_replace(array("\n", "\r", "\t"), "", $v->selects); $rows[] = '"id_' . $k . '":"' . str_replace('"', '\\"', $v->selects) . '"'; } $pricefloat = $product->getPrice($qty, 1, 1, 1); $price = formatprice($pricefloat); $available = intval($product->getQty() > 0); $displaybuttons = intval(intval($product->getQty() > 0) || $jshopConfig->hide_buy_not_avaible_stock == 0); $ean = $product->getEan(); $weight = formatweight($product->getWeight()); $basicprice = formatprice($product->getBasicPrice()); $rows[] = '"price":"' . $price . '"'; $rows[] = '"pricefloat":"' . $pricefloat . '"'; $rows[] = '"available":"' . $available . '"'; $rows[] = '"ean":"' . $ean . '"'; if ($jshopConfig->admin_show_product_basic_price) { $rows[] = '"basicprice":"' . $basicprice . '"'; } if ($jshopConfig->product_show_weight) { $rows[] = '"weight":"' . $weight . '"'; } if ($jshopConfig->product_list_show_price_default && $product->product_price_default > 0) { $rows[] = '"pricedefault":"' . formatprice($product->product_price_default) . '"'; } if ($jshopConfig->product_show_qty_stock) { $qty_in_stock = getDataProductQtyInStock($product); $rows[] = '"qty":"' . sprintQtyInStock($qty_in_stock) . '"'; } $product->updateOtherPricesIncludeAllFactors(); if (is_array($product->product_add_prices)) { foreach ($product->product_add_prices as $k => $v) { $rows[] = '"pq_' . $v->product_quantity_start . '":"' . str_replace('"', '\\"', formatprice($v->price)) . '"'; } } if ($product->product_old_price) { $old_price = formatprice($product->product_old_price); $rows[] = '"oldprice":"' . $old_price . '"'; } $rows[] = '"displaybuttons":"' . $displaybuttons . '"'; if ($jshopConfig->use_extend_attribute_data) { $images = $product->getImages(); $videos = $product->getVideos(); $demofiles = $product->getDemoFiles(); $tmp = array(); foreach ($images as $img) { $tmp[] = '"' . $img->image_name . '"'; } $displayimgthumb = intval(count($images) > 1 || count($videos) && count($images)); $rows[] = '"images":[' . implode(",", $tmp) . '],"displayimgthumb":"' . $displayimgthumb . '"'; $view_name = "product"; $view_config = array("template_path" => JPATH_COMPONENT . "/templates/" . $jshopConfig->template . "/" . $view_name); $view = $this->getView($view_name, getDocumentType(), '', $view_config); $view->setLayout("demofiles"); $view->assign('config', $jshopConfig); $view->assign('demofiles', $demofiles); $demofiles = $view->loadTemplate(); $demofiles = str_replace(array("\n", "\r", "\t"), "", $demofiles); $rows[] = '"demofiles":"' . str_replace('"', '\\"', $demofiles) . '"'; } $dispatcher->trigger('onBeforeDisplayAjaxAttrib', array(&$rows, &$product)); print '{' . implode(",", $rows) . '}'; die; }
/** * get attributes html selects, price for select attribute */ function ajax_attrib_select_and_price() { $db = JFactory::getDBO(); $jshopConfig = JSFactory::getConfig(); $product_id = JRequest::getInt('product_id'); $change_attr = JRequest::getInt('change_attr'); if ($jshopConfig->use_decimal_qty) { $qty = floatval(str_replace(",", ".", JRequest::getVar('qty', 1))); } else { $qty = JRequest::getInt('qty', 1); } if ($qty < 0) { $qty = 0; } $attribs = JRequest::getVar('attr'); if (!is_array($attribs)) { $attribs = array(); } $freeattr = JRequest::getVar('freeattr'); if (!is_array($freeattr)) { $freeattr = array(); } $dispatcher = JDispatcher::getInstance(); $dispatcher->trigger('onBeforeLoadDisplayAjaxAttrib', array(&$product_id, &$change_attr, &$qty, &$attribs, &$freeattr)); $product = JSFactory::getTable('product', 'jshop'); $product->load($product_id); $dispatcher->trigger('onBeforeLoadDisplayAjaxAttrib2', array(&$product)); $attributesDatas = $product->getAttributesDatas($attribs); $product->setAttributeActive($attributesDatas['attributeActive']); $attributeValues = $attributesDatas['attributeValues']; $product->setFreeAttributeActive($freeattr); $attributes = $product->getBuildSelectAttributes($attributeValues, $attributesDatas['attributeSelected']); $rows = array(); foreach ($attributes as $k => $v) { $rows[] = '"id_' . $k . '":"' . json_value_encode($v->selects, 1) . '"'; } $pricefloat = $product->getPrice($qty, 1, 1, 1); $price = formatprice($pricefloat); $available = intval($product->getQty() > 0); $displaybuttons = intval(intval($product->getQty() > 0) || $jshopConfig->hide_buy_not_avaible_stock == 0); $ean = $product->getEan(); $weight = formatweight($product->getWeight()); $basicprice = formatprice($product->getBasicPrice()); $min_kolichestvo = $product->min_kolichestvo; $rows[] = '"price":"' . json_value_encode($price) . '"'; $rows[] = '"pricefloat":"' . $pricefloat . '"'; $rows[] = '"available":"' . $available . '"'; $rows[] = '"min_kolichestvo":"' . $min_kolichestvo . '"'; $rows[] = '"ean":"' . json_value_encode($ean) . '"'; if ($jshopConfig->admin_show_product_basic_price) { $rows[] = '"basicprice":"' . json_value_encode($basicprice) . '"'; } if ($jshopConfig->product_show_weight) { $rows[] = '"weight":"' . json_value_encode($weight) . '"'; } if ($jshopConfig->product_list_show_price_default && $product->product_price_default > 0) { $rows[] = '"pricedefault":"' . json_value_encode(formatprice($product->product_price_default)) . '"'; } if ($jshopConfig->product_show_qty_stock) { $qty_in_stock = getDataProductQtyInStock($product); $rows[] = '"qty":"' . json_value_encode(sprintQtyInStock($qty_in_stock)) . '"'; } $product->updateOtherPricesIncludeAllFactors(); if (is_array($product->product_add_prices)) { foreach ($product->product_add_prices as $k => $v) { $rows[] = '"pq_' . $v->product_quantity_start . '":"' . json_value_encode(formatprice($v->price)) . '"'; } } if ($product->product_old_price) { $old_price = formatprice($product->product_old_price); $rows[] = '"oldprice":"' . json_value_encode($old_price) . '"'; } $rows[] = '"displaybuttons":"' . $displaybuttons . '"'; if ($jshopConfig->hide_delivery_time_out_of_stock) { $rows[] = '"showdeliverytime":"' . $product->getDeliveryTimeId() . '"'; } if ($jshopConfig->use_extend_attribute_data) { $template_path = $jshopConfig->template_path . $jshopConfig->template . "/product"; $images = $product->getImages(); $videos = $product->getVideos(); $demofiles = $product->getDemoFiles(); $tmp = array(); foreach ($images as $img) { $tmp[] = '"' . $img->image_name . '"'; } if (!file_exists($template_path . "/block_image_thumb.php")) { $displayimgthumb = intval(count($images) > 1 || count($videos) && count($images)); $rows[] = '"images":[' . implode(",", $tmp) . '],"displayimgthumb":"' . $displayimgthumb . '"'; } $view_name = "product"; $view_config = array("template_path" => $template_path); $view = $this->getView($view_name, getDocumentType(), '', $view_config); $view->setLayout("demofiles"); $view->assign('config', $jshopConfig); $view->assign('demofiles', $demofiles); $demofiles = $view->loadTemplate(); $rows[] = '"demofiles":"' . json_value_encode($demofiles, 1) . '"'; if (file_exists($template_path . "/block_image_thumb.php")) { $product->getDescription(); $view_name = "product"; $view_config = array("template_path" => $template_path); $view = $this->getView($view_name, getDocumentType(), '', $view_config); $view->setLayout("block_image_thumb"); $view->assign('config', $jshopConfig); $view->assign('images', $images); $view->assign('videos', $videos); $view->assign('image_product_path', $jshopConfig->image_product_live_path); $dispatcher->trigger('onBeforeDisplayProductViewBlockImageThumb', array(&$view)); $block_image_thumb = $view->loadTemplate(); $view_name = "product"; $view_config = array("template_path" => $template_path); $view = $this->getView($view_name, getDocumentType(), '', $view_config); $view->setLayout("block_image_middle"); $view->assign('config', $jshopConfig); $view->assign('images', $images); $view->assign('videos', $videos); $view->assign('product', $product); $view->assign('noimage', $jshopConfig->noimage); $view->assign('image_product_path', $jshopConfig->image_product_live_path); $view->assign('path_to_image', $jshopConfig->live_path . 'images/'); $dispatcher->trigger('onBeforeDisplayProductViewBlockImageMiddle', array(&$view)); $block_image_middle = $view->loadTemplate(); $rows[] = '"block_image_thumb":"' . json_value_encode($block_image_thumb, 1) . '"'; $rows[] = '"block_image_middle":"' . json_value_encode($block_image_middle, 1) . '"'; } } $dispatcher->trigger('onBeforeDisplayAjaxAttrib', array(&$rows, &$product)); print '{' . implode(",", $rows) . '}'; die; }
public function prepareView($back_value = array()) { $jshopConfig = JSFactory::getConfig(); $product = $this->product; if (!getDisplayPriceForProduct($product->product_price)) { $jshopConfig->attr_display_addprice = 0; } $back_value_attr = (array) $back_value['attr']; $this->attributes = $product->getInitLoadAttribute($back_value_attr); if (count($this->attributes)) { $_attributevalue = JSFactory::getTable('AttributValue', 'jshop'); $this->all_attr_values = $_attributevalue->getAllAttributeValues(); } else { $this->all_attr_values = array(); } $product->getExtendsData(); $product->product_basic_price_unit_qty = 1; if ($jshopConfig->admin_show_product_basic_price) { $product->getBasicPriceInfo(); } else { $product->product_basic_price_show = 0; } if ($product->product_template == "") { $product->product_template = "default"; } $_review = JSFactory::getTable('review', 'jshop'); $this->allow_review = $_review->getAllowReview(); if ($this->allow_review > 0) { $arr_marks = array(); $arr_marks[] = JHTML::_('select.option', '0', _JSHOP_NOT, 'mark_id', 'mark_value'); for ($i = 1; $i <= $jshopConfig->max_mark; $i++) { $arr_marks[] = JHTML::_('select.option', $i, $i, 'mark_id', 'mark_value'); } $this->text_review = ''; $this->select_review = JHTML::_('select.genericlist', $arr_marks, 'mark', 'class="inputbox"', 'mark_id', 'mark_value'); } else { $this->select_review = ''; $this->text_review = $_review->getText(); } if ($jshopConfig->product_show_manufacturer_logo || $jshopConfig->product_show_manufacturer) { $product->manufacturer_info = $product->getManufacturerInfo(); if (!isset($product->manufacturer_info)) { $product->manufacturer_info = new stdClass(); $product->manufacturer_info->manufacturer_logo = ''; $product->manufacturer_info->name = ''; } } else { $product->manufacturer_info = new stdClass(); $product->manufacturer_info->manufacturer_logo = ''; $product->manufacturer_info->name = ''; } if ($jshopConfig->product_show_vendor) { $vendorinfo = $product->getVendorInfo(); $vendorinfo->urllistproducts = SEFLink("index.php?option=com_jshopping&controller=vendor&task=products&vendor_id=" . $vendorinfo->id, 1); $vendorinfo->urlinfo = SEFLink("index.php?option=com_jshopping&controller=vendor&task=info&vendor_id=" . $vendorinfo->id, 1); $product->vendor_info = $vendorinfo; } else { $product->vendor_info = null; } if ($jshopConfig->admin_show_product_extra_field) { $product->extra_field = $product->getExtraFields(); } else { $product->extra_field = null; } if ($jshopConfig->admin_show_freeattributes) { $product->getListFreeAttributes(); foreach ($product->freeattributes as $k => $v) { if (!isset($back_value['freeattr'][$v->id])) { $back_value['freeattr'][$v->id] = ''; } $product->freeattributes[$k]->input_field = $this->getInputFreeAttribute($v->id, $back_value['freeattr'][$v->id]); } $attrrequire = $product->getRequireFreeAttribute(); $product->freeattribrequire = count($attrrequire); } else { $product->freeattributes = null; $product->freeattribrequire = 0; } if ($jshopConfig->product_show_qty_stock) { $product->qty_in_stock = getDataProductQtyInStock($product); } if (!$jshopConfig->admin_show_product_labels) { $product->label_id = null; } if ($product->label_id) { $image = getNameImageLabel($product->label_id); if ($image) { $product->_label_image = $jshopConfig->image_labels_live_path . "/" . $image; } $product->_label_name = getNameImageLabel($product->label_id, 2); } $product->_display_price = getDisplayPriceForProduct($product->getPriceCalculate()); if (!$product->_display_price) { $product->product_old_price = 0; $product->product_price_default = 0; $product->product_basic_price_show = 0; $product->product_is_add_price = 0; $product->product_tax = 0; $jshopConfig->show_plus_shipping_in_product = 0; } if (trim($product->description) == "") { $product->description = $product->short_description; } if ($jshopConfig->use_plugin_content) { changeDataUsePluginContent($product, "product"); } $product->hide_delivery_time = 0; if (!$product->getDeliveryTimeId()) { $product->hide_delivery_time = 1; } $product->button_back_js_click = "history.go(-1);"; $end_page_list = $this->getEndPageList(); if ($end_page_list && $jshopConfig->product_button_back_use_end_list) { $product->button_back_js_click = "location.href='" . jsFilterUrl($end_page_list) . "';"; } }