function display($tpl = null) { $comquick2cartHelper = new comquick2cartHelper(); $input = JFactory::getApplication()->input; $layout = $input->get('layout', 'default'); $option = $input->get('option', ''); $this->params = JFactory::getApplication()->getParams('com_quick2cart'); // check for multivender COMPONENT PARAM // vm: commented for task #20773 /* $isMultivenderOFFmsg=$comquick2cartHelper->isMultivenderOFF(); if(!empty($isMultivenderOFFmsg)) { print $isMultivenderOFFmsg; return false; }*/ if ($layout == 'default') { // product page //DECLARATION SECTION $this->client = $client = "com_quick2cart"; $this->pid = 0; $this->item_id = $item_id = $input->get('item_id', ''); JLoader::import('cart', JPATH_SITE . DS . 'components' . DS . 'com_quick2cart' . DS . 'models'); $model = new Quick2cartModelcart(); if (empty($item_id)) { // # if entry is not present in kart_item return false; } // retrun store_id,role etc with order by role,store_id $this->store_role_list = $comquick2cartHelper->getStoreIds(); // GETTING AUTHORIZED STORE ID $storeHelper = new storeHelper(); $this->store_list = $storeHelper->getuserStoreList(); // GETTING PRICE $this->price = $price = $model->getPrice($item_id, 1); // return array of price //GETTING ITEM COMPLEATE DETAIL (attributes and its option wil get) //$itemDetail=$model->getItemCompleteDetail($item_id); //getting stock min max,cat,store_id $this->itemdetail = $model->getItemRec($item_id); if (!empty($this->itemdetail)) { ///get attributes $this->attributes = $model->getAttributes($item_id); // for RELEATED PROD FROM CATEGORY $product_path = JPATH_SITE . DS . 'components' . DS . 'com_quick2cart' . DS . 'helpers' . DS . 'product.php'; if (!class_exists('productHelper')) { //require_once $path; JLoader::register('productHelper', $product_path); JLoader::load('productHelper'); } $productHelper = new productHelper(); // get free products media file $this->mediaFiles = $productHelper->getProdmediaFiles($item_id); $this->prodFromCat = $productHelper->getSimilarProdFromCat($this->itemdetail->category, $this->item_id); $this->prodFromSameStore = $productHelper->prodFromSameStore($this->itemdetail->store_id, $this->item_id); $this->peopleAlsoBought = $productHelper->peopleAlsoBought($this->item_id); $this->peopleWhoBought = $productHelper->peopleWhoBought($this->item_id); //print_r($this->peopleWhoBought);die; $social_options = ''; $route = $comquick2cartHelper->getProductLink($this->item_id); // Jilke $dispatcher = JDispatcher::getInstance(); JPluginHelper::importPlugin('system'); $result = $dispatcher->trigger('onProductDisplaySocialOptions', array($this->item_id, 'com_quick2cart.productpage', $this->itemdetail->name, $route)); //Call the plugin and get the result if (!empty($result)) { $social_options = $result[0]; } $this->social_options = $social_options; $this->showBuyNowBtn = $productHelper->isInStockProduct($this->itemdetail); } } elseif ($layout == 'popupslide') { $this->item_id = $item_id = $input->get('qtc_prod_id', ''); JLoader::import('cart', JPATH_SITE . DS . 'components' . DS . 'com_quick2cart' . DS . 'models'); $model = new Quick2cartModelcart(); if (empty($item_id)) { // # if entry is not present in kart_item return false; } $this->itemdetail = $model->getItemRec($item_id); } $this->item = $this->itemdetail; $this->_prepareDocument(); parent::display($tpl); }
/** * This function used to show product's detail's and allow to buy. * * @param integer $pId product id. * @param string $parent client eg com_content etc. * @param array $qtcExtraParam eg array('hideFreeDdownloads'=>true,'hideOriginalPrice'=>true, * 'hideDiscountPrice'=>true,'hideAttributes'=>true) * * @return html. * * @since 1.6 */ public function getBuynow($pId, $parent, $qtcExtraParam = array()) { // LOAD product HELPER $path = JPATH_SITE . '/components/com_quick2cart/helpers/product.php'; if (!class_exists('productHelper')) { // Require_once $path; JLoader::register('productHelper', $path); JLoader::load('productHelper'); } // Require_once (JPATH_SITE . '/components/com_quick2cart/models/cart.php'); $app = JFactory::getApplication(); $html = ''; JLoader::register("quick2cartViewcart", JPATH_SITE . "/components/com_quick2cart/views/cart/view.html.php"); $layout = 'pushtocart'; $view = new quick2cartViewcart(); // $view->_basePath = JPATH_ROOT . '/components/com_quick2cart'; $view->addTemplatePath(JPATH_SITE . '/components/com_quick2cart/views/cart/tmpl'); $view->addTemplatePath(JPATH_SITE . '/templates/' . $app->getTemplate() . '/html/com_quick2cart/cart'); // JModel::addIncludePath(JPATH_SITE . '/components/com_quick2cart/models/cart.php'); $comparams = JComponentHelper::getParams('com_quick2cart'); JLoader::import('cart', JPATH_SITE . '/components/com_quick2cart/models'); $model = new Quick2cartModelcart(); // $item_id = $model->getitemid($pId, $parent); $itemidAndState = $model->getitemidAndState($pId, $parent); // # if entry is not present in kart_item if (empty($itemidAndState['item_id']) || empty($itemidAndState['state'])) { return false; } $item_id = $itemidAndState['item_id']; // Return array of price $price = $model->getPrice($item_id, 1); $itemAttrDetail = $model->getItemCompleteAttrDetail($item_id); $comquick2cartHelper = new comquick2cartHelper(); $productHelper = new productHelper(); $hasprice = $this->hasAttributePrice($itemAttrDetail); // Get free products media file $mediaFiles = $productHelper->getProdmediaFiles($item_id); $orderWithZeroPrice = $comparams->get('orderWithZeroPrice', 0); $qtcShowBuyNow = 0; if ($orderWithZeroPrice == 0 && ($price > 0 && $hasprice)) { // Product final price has some price and attribute has currency values $qtcShowBuyNow = 1; } $view->assign('price', $price); $view->assign('_basePath', JPATH_SITE . '/components/com_quick2cart'); $view->set('_controller', 'cart'); $view->set('_view', 'cart'); $view->set('_doTask', true); $view->set('hidemenu', true); $view->setModel($model, true); $view->setLayout($layout); $itemdetail = $model->getItemRec($item_id); $showBuyNowBtn = $productHelper->isInStockProduct($itemdetail); $view->assign('showBuyNowBtn', $showBuyNowBtn); $view->assign('stock', $itemdetail->stock); $view->assign('min_quantity', $itemdetail->min_quantity); $view->assign('max_quantity', $itemdetail->max_quantity); $view->assign('slab', $itemdetail->slab); $view->assign('product_id', $pId); $view->assign('parent', $parent); // Get attributes $attributes = $model->getAttributes($item_id); $view->assign('attributes', $attributes); $view->assign('mediaFiles', $mediaFiles); $view->assign('params', $comparams); $view->assign('qtcExtraParam', $qtcExtraParam); ob_start(); $view->display(); $html = ob_get_contents(); ob_end_clean(); return $html; }