/** * Load Item model by product * * @param Mage_GoogleShopping_Model_Item $model * @return Mage_GoogleShopping_Model_Mysql4_Item */ public function loadByProduct($model) { if (!$model->getProduct() instanceof Varien_Object) { return $this; } $product = $model->getProduct(); $productId = $product->getId(); $storeId = $model->getStoreId() ? $model->getStoreId() : $product->getStoreId(); $read = $this->_getReadAdapter(); $select = $read->select(); if ($productId !== null) { $select->from($this->getMainTable())->where("product_id = ?", $productId)->where('store_id = ?', (int) $storeId); $data = $read->fetchRow($select); $data = is_array($data) ? $data : array(); $model->addData($data); } return $this; }
/** * Insert Item into Google Content * * @param Mage_GoogleShopping_Model_Item $item * @return Mage_GoogleShopping_Model_Service_Item */ public function insert($item) { $service = $this->getService(); $entry = $service->newEntry(); $item->getType()->convertProductToEntry($item->getProduct(), $entry); $entry = $service->insertItem($entry); $published = $this->convertContentDateToTimestamp($entry->getPublished()->getText()); $item->setGcontentItemId($entry->getId())->setPublished($published); $expires = $this->_getAttributeValue($entry, 'expiration_date'); if ($expires) { $expires = $this->convertContentDateToTimestamp($expires); $item->setExpires($expires); } return $this; }