Esempio n. 1
0
 /**
  * Restore pricing information when restoring a product
  * @param   int
  * @param   string
  * @param   array
  * @param   int
  */
 public function restoreVersion($intId, $strTable, $arrData, $intVersion)
 {
     if ($strTable != Product::getTable()) {
         return;
     }
     $arrData = SubtableVersion::find(ProductPrice::getTable(), $intId, $intVersion);
     if (null !== $arrData) {
         \Database::getInstance()->query("DELETE FROM tl_iso_product_pricetier WHERE pid IN (SELECT id FROM " . ProductPrice::getTable() . " WHERE pid={$intId})");
         \Database::getInstance()->query("DELETE FROM " . ProductPrice::getTable() . " WHERE pid={$intId}");
         foreach ($arrData['prices'] as $arrRow) {
             \Database::getInstance()->prepare("INSERT INTO " . ProductPrice::getTable() . " %s")->set($arrRow)->execute();
         }
         foreach ($arrData['tiers'] as $arrRow) {
             \Database::getInstance()->prepare("INSERT INTO tl_iso_product_pricetier %s")->set($arrRow)->execute();
         }
     }
 }
Esempio n. 2
0
 /**
  * Load page IDs from product categories table
  *
  * @param mixed          $varValue
  * @param \DataContainer $dc
  *
  * @return mixed
  */
 public function load($varValue, \DataContainer $dc)
 {
     $objCategories = ProductCategory::findBy('pid', $dc->id);
     SubtableVersion::initialize($dc->table, $dc->id, ProductCategory::getTable(), null === $objCategories ? array() : $objCategories->fetchAll());
     return null === $objCategories ? array() : $objCategories->fetchEach('page_id');
 }