public static function _init() { static::$_properties['type']['validation']['in_array'][] = \Config::get('timeline.types'); static::$_properties['foreign_table']['validation']['in_array'][] = Site_Util::get_accept_timeline_foreign_tables(); static::$_properties['public_flag']['form'] = \Site_Form::get_public_flag_configs(); static::$_properties['public_flag']['validation']['in_array'][] = \Site_Util::get_public_flags(); if (is_enabled('notice')) { static::$_observers['MyOrm\\Observer_InsertNotice'] = array('events' => array('after_insert'), 'update_properties' => array('foreign_table' => array('timeline' => 'value'), 'foreign_id' => array('id' => 'property'), 'type_key' => array('create' => 'value'), 'member_id_from' => array('member_id' => 'property'))); static::$_observers['MyOrm\\Observer_DeleteNotice'] = array('events' => array('before_delete'), 'conditions' => array('foreign_table' => array('timeline' => 'value'), 'foreign_id' => array('id' => 'property'))); } if (\Config::get('timeline.articles.cache.is_use')) { // 更新・削除時に timeline の cache を削除 static::$_observers['MyOrm\\Observer_UpdateTimeline'] = array('events' => array('after_update'), 'check_changed' => array('check_properties' => array('body', 'source', 'source_uri', 'public_flag', 'sort_datetime' => array('ignore_property' => 'comment_count')))); static::$_observers['MyOrm\\Observer_DeleteTimeline'] = array('events' => array('before_delete')); } if (\Config::get('timeline.importanceLevel.isEnabled')) { // 更新時に timeline の importance_level を更新 static::$_observers['MyOrm\\Observer_UpdateTimelineImportanceLevel'] = array('events' => array('before_update')); } }