1: <?php
2:
3: namespace Thelia\Model\map;
4:
5: use \RelationMap;
6: use \TableMap;
7:
8:
9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
21: class FolderTableMap extends TableMap
22: {
23:
24: 25: 26:
27: const CLASS_NAME = 'Thelia.Model.map.FolderTableMap';
28:
29: 30: 31: 32: 33: 34: 35:
36: public function initialize()
37: {
38:
39: $this->setName('folder');
40: $this->setPhpName('Folder');
41: $this->setClassname('Thelia\\Model\\Folder');
42: $this->setPackage('Thelia.Model');
43: $this->setUseIdGenerator(true);
44:
45: $this->addPrimaryKey('id', 'Id', 'INTEGER', true, null, null);
46: $this->addColumn('parent', 'Parent', 'INTEGER', true, null, null);
47: $this->addColumn('link', 'Link', 'VARCHAR', false, 255, null);
48: $this->addColumn('visible', 'Visible', 'TINYINT', false, null, null);
49: $this->addColumn('position', 'Position', 'INTEGER', false, null, null);
50: $this->addColumn('created_at', 'CreatedAt', 'TIMESTAMP', false, null, null);
51: $this->addColumn('updated_at', 'UpdatedAt', 'TIMESTAMP', false, null, null);
52: $this->addColumn('version', 'Version', 'INTEGER', false, null, 0);
53: $this->addColumn('version_created_at', 'VersionCreatedAt', 'TIMESTAMP', false, null, null);
54: $this->addColumn('version_created_by', 'VersionCreatedBy', 'VARCHAR', false, 100, null);
55:
56: }
57:
58: 59: 60:
61: public function buildRelations()
62: {
63: $this->addRelation('Image', 'Thelia\\Model\\Image', RelationMap::ONE_TO_MANY, array('id' => 'folder_id', ), 'CASCADE', 'RESTRICT', 'Images');
64: $this->addRelation('Document', 'Thelia\\Model\\Document', RelationMap::ONE_TO_MANY, array('id' => 'folder_id', ), 'CASCADE', 'RESTRICT', 'Documents');
65: $this->addRelation('Rewriting', 'Thelia\\Model\\Rewriting', RelationMap::ONE_TO_MANY, array('id' => 'folder_id', ), 'CASCADE', 'RESTRICT', 'Rewritings');
66: $this->addRelation('ContentFolder', 'Thelia\\Model\\ContentFolder', RelationMap::ONE_TO_MANY, array('id' => 'folder_id', ), 'CASCADE', 'RESTRICT', 'ContentFolders');
67: $this->addRelation('FolderI18n', 'Thelia\\Model\\FolderI18n', RelationMap::ONE_TO_MANY, array('id' => 'id', ), 'CASCADE', null, 'FolderI18ns');
68: $this->addRelation('FolderVersion', 'Thelia\\Model\\FolderVersion', RelationMap::ONE_TO_MANY, array('id' => 'id', ), 'CASCADE', null, 'FolderVersions');
69: }
70:
71: 72: 73: 74: 75: 76:
77: public function getBehaviors()
78: {
79: return array(
80: 'timestampable' => array (
81: 'create_column' => 'created_at',
82: 'update_column' => 'updated_at',
83: 'disable_updated_at' => 'false',
84: ),
85: 'i18n' => array (
86: 'i18n_table' => '%TABLE%_i18n',
87: 'i18n_phpname' => '%PHPNAME%I18n',
88: 'i18n_columns' => 'title, description, chapo, postscriptum',
89: 'i18n_pk_name' => NULL,
90: 'locale_column' => 'locale',
91: 'default_locale' => NULL,
92: 'locale_alias' => '',
93: ),
94: 'versionable' => array (
95: 'version_column' => 'version',
96: 'version_table' => '',
97: 'log_created_at' => 'true',
98: 'log_created_by' => 'true',
99: 'log_comment' => 'false',
100: 'version_created_at_column' => 'version_created_at',
101: 'version_created_by_column' => 'version_created_by',
102: 'version_comment_column' => 'version_comment',
103: ),
104: );
105: }
106:
107: }
108: