42 lines
1.3 KiB
PHP
42 lines
1.3 KiB
PHP
|
<?php
|
||
|
class Cms_CategoryLanguages extends Doctrine_Record
|
||
|
{
|
||
|
public function setUp()
|
||
|
{
|
||
|
$this->setAttribute(Doctrine::ATTR_COLL_KEY, 'language_id');
|
||
|
$this->hasOne('Cms_Category as category', array('local' => 'category_id', 'foreign' => 'id', 'onDelete' => 'CASCADE'));
|
||
|
}
|
||
|
|
||
|
public function setTableDefinition()
|
||
|
{
|
||
|
$this->hasColumn('name', 'string',256);
|
||
|
$this->hasColumn('category_id', 'integer',11);
|
||
|
$this->hasColumn('language_id', 'integer',11);
|
||
|
$this->option('collate', 'utf8_unicode_ci');
|
||
|
$this->option('charset', 'utf8');
|
||
|
$this->option('type', 'INNODB');
|
||
|
$this->index('index_category', array('fields' => 'category_id'));
|
||
|
$this->index('index_language', array('fields' => 'language_id'));
|
||
|
}
|
||
|
}
|
||
|
class Cms_Category extends Doctrine_Record
|
||
|
{
|
||
|
|
||
|
public function setUp()
|
||
|
{
|
||
|
$this->ownsMany('Cms_CategoryLanguages as langs', array('local' => 'id', 'foreign' => 'category_id'));
|
||
|
}
|
||
|
|
||
|
public function setTableDefinition()
|
||
|
{
|
||
|
$this->hasColumn('created', 'timestamp');
|
||
|
$this->hasColumn('parent', 'integer', 11);
|
||
|
$this->hasColumn('position', 'integer', 3);
|
||
|
$this->hasColumn('active', 'integer', 11);
|
||
|
$this->option('collate', 'utf8_unicode_ci');
|
||
|
$this->option('charset', 'utf8');
|
||
|
$this->option('type', 'INNODB');
|
||
|
$this->index('index_parent', array('fields' => 'parent'));
|
||
|
}
|
||
|
}
|