Пример #1
0
 /**
  * Prepare and create triggers for target_table table
  */
 protected function _createTriggers()
 {
     $sqlTrigger = $this->_factory->getMagentoDbSqlTrigger();
     foreach ($sqlTrigger->getEventTypes() as $event) {
         $body = $this->_prepareBody($event);
         // Set trigger's data
         $sqlTrigger->reset();
         $sqlTrigger->setTarget($this->_targetTable);
         $sqlTrigger->setEvent($event);
         $objTrigger = $this->_factory->getMagentoDbObjectTrigger($this->_connection, $sqlTrigger->getName());
         // Drop trigger before insert with updated body
         if ($objTrigger->isExists()) {
             $objTrigger->drop();
         }
         // Create trigger only if trigger's body is not empty
         if (!empty($body)) {
             $sqlTrigger->setBody($body);
             $this->_connection->query((string) $sqlTrigger);
         }
     }
 }