public function preUp()
 {
     parent::preUp();
     // get a mapping of current ids for later use
     $conn = Doctrine_Manager::getInstance()->connection();
     $episodes = $conn->execute('SELECT * FROM project_episodes')->fetchAll();
     $mapping = array();
     $afterDelete = array();
     foreach ($episodes as $episode) {
         if (empty($mapping[$episode['project_id'] . '-' . $episode['number'] . '-' . $episode['version']])) {
             $mapping[$episode['project_id'] . '-' . $episode['number'] . '-' . $episode['version']] = $episode['id'];
         } else {
             $afterDelete[] = $episode['id'];
         }
     }
     foreach ($episodes as $episode) {
         $rel = new Projects_Model_EpisodeRelease();
         $rel->vcodec = $episode['vcodec'];
         $rel->acodec = $episode['acodec'];
         $rel->container = $episode['container'];
         $rel->crc = $episode['crc'];
         $rel->released_at = $episode['released_at'];
         $rel->updated_by = $episode['updated_by'];
         $rel->created_at = $episode['created_at'];
         $rel->updated_at = $episode['updated_at'];
         $rel->episode_id = $mapping[$episode['project_id'] . '-' . $episode['number'] . '-' . $episode['version']];
         $rel->save();
         $rel->free();
     }
     Doctrine_Query::create()->delete('Projects_Model_Episode')->whereIn('id', $afterDelete)->execute();
 }
 public function preUp()
 {
     parent::preUp();
     if (class_exists('rtShopOrder')) {
         $query = Doctrine::getTable('rtShopOrder')->getQueryObject();
         $query->delete()->execute();
     }
 }
 public function postUp()
 {
     parent::postUp();
     // Set dates for all existing news
     $news = News_Model_NewsTable::getInstance()->findAll();
     foreach ($news as $article) {
         if ($article->public == 'yes') {
             $article->publish_date = $article->created_at;
             $article->save();
         }
     }
 }
 public function postUp()
 {
     parent::postUp();
     $q = Doctrine_Manager::getInstance()->getCurrentConnection();
     $q->exec('UPDATE petition p SET p.activity_at = (SELECT created_at FROM petition_signing ps WHERE ps.petition_id = p.id ORDER BY ps.id DESC LIMIT 1)');
 }
Example #5
0
 /**
  * Sets the default options for tables created using Doctrine_Migration_Base::createTable()
  * 
  * @param array $options
  */
 public static function setDefaultTableOptions(array $options)
 {
     self::$defaultTableOptions = $options;
 }
 public function tearDown()
 {
     Doctrine_Migration_Base::setDefaultTableOptions(array());
 }
 public function configureDoctrine(Doctrine_Manager $manager)
 {
     $manager->setCollate('utf8_unicode_ci');
     $manager->setCharset('utf8');
     Doctrine_Migration_Base::setDefaultTableOptions(array('type' => 'INNODB', 'charset' => 'utf8', 'collate' => 'utf8_unicode_ci'));
 }
Example #8
0
 /**
  * Add a add or remove index change.
  *
  * @param string $upDown       Whether to add the up(add) or down(remove) index change.
  * @param string $tableName    Name of the table
  * @param string $indexName    Name of the index
  * @param array  $definition   Array for the index definition
  *
  * @return void
  */
 public function index($upDown, $tableName, $indexName, array $definition = array())
 {
     parent::index($upDown, RokCommon_Doctrine::getPlatformInstance()->setTableName($tableName), $indexName, $definition);
 }
 public function postUp()
 {
     parent::postUp();
     $q = Doctrine_Manager::getInstance()->getCurrentConnection();
     $q->exec('UPDATE LOW_PRIORITY petition_signing_wave psw SET psw.contact_num = (SELECT count(*) FROM petition_signing_contact psc where psc.petition_signing_id = psw.petition_signing_id and psc.wave = psw.wave)');
 }