public static function getK2Image($id, $k2params = NULL) { $app = JFactory::getApplication(); $k2params = JComponentHelper::getParams('com_k2store'); jimport('joomla.filesystem.file'); //get the params right first $image_source = $k2params->get('show_thumb_cart'); $image = ''; $image_path = ''; if ($image_source == 'within_text') { $item = K2StoreItem::_getK2Item($id); $image_path = K2StoreItem::getImages($item->introtext); $image = '<img src="' . $image_path . '" class="itemImg' . $k2params->get('cartimage_size', 'small') . '" />'; } elseif ($image_source == 'intro') { $image_size = $k2params->get('cartimage_size', 'small'); if ($image_size == 'Large') { $size = '_L'; } elseif ($image_size == 'Medium') { $size = '_M'; } else { $size = '_S'; } if (JFile::exists(JPATH_SITE . DS . 'media' . DS . 'k2' . DS . 'items' . DS . 'cache' . DS . md5("Image" . $id) . $size . '.jpg')) { $image_path = JURI::root() . 'media/k2/items/cache/' . md5("Image" . $id) . $size . '.jpg'; } } else { $image_path = ''; } return $image_path; }
function setquantities() { $app = JFactory::getApplication(); $product_id = $app->input->getInt('product_id'); $model = $this->getModel('productquantities'); $model->setState('filter_productid', $product_id); $items = $model->getAll(); $row = K2StoreItem::_getK2Item($product_id); K2StoreItem::doProductQuantitiesReconciliation($row->id); $ns = 'com_k2store.productquantities.setquantities'; $filter_order = $app->getUserStateFromRequest($ns . 'filter_order', 'filter_order', 'tbl.productquantity_id', 'cmd'); $filter_order_Dir = $app->getUserStateFromRequest($ns . 'filter_order_Dir', 'filter_order_Dir', '', 'word'); // table ordering $model->setState('direction', $filter_order_Dir); $model->setState('order', $filter_order); $view = $this->getView('productquantities', 'html'); $view->set('_controller', 'products'); $view->set('_view', 'productquantities'); $view->set('_action', "index.php?option=com_k2store&view=products&task=setquantities&product_id={$row->id}&tmpl=component"); $view->setModel($model, true); $view->assign('state', $model->getState()); $view->assign('row', $row); $view->assign('items', $model->getList()); $view->setLayout('setquantities'); $view->display(); }
public static function getAvailableQuantity($id, $attribute) { $db = JFactory::getDbo(); $query = $db->getQuery(true); $tableQuantity = JTable::getInstance('ProductQuantities', 'Table'); $tableProduct = JTable::getInstance('Products', 'Table'); $K2Item = K2StoreItem::_getK2Item($id); $tableProduct->load(array('product_id' => $id)); if (!isset($tableProduct->manage_stock) || $tableProduct->manage_stock == 0) { $tableProduct->quantity = '9999'; return $tableProduct; } $select[] = "quantities.quantity"; $select[] = "product.manage_stock"; $query->select($select); $query->from($tableProduct->getTableName() . " AS product"); $leftJoinCondition = $tableQuantity->getTableName() . " as quantities ON product.product_id = quantities.product_id "; $query->leftJoin($leftJoinCondition); $whereClause[] = "quantities.product_id = " . (int) $id; $whereClause[] = "quantities.product_attributes='" . $attribute . "'"; $whereClause[] = "product.manage_stock =1 "; $query->where($whereClause, "AND"); $db = JFactory::getDBO(); $db->setQuery((string) $query); $item = $db->loadObject(); if (empty($item)) { $return = new JObject(); $return->product_id = $id; $return->product_name = $K2Item->title; $return->quantity = 0; $return->manage_stock = $tableProduct->manage_stock; return $return; } return $item; }