/** * Returns an instance of class (singleton pattern implementation). * * @return NEWSFEED_CLASS_ContentProvider */ public static function getInstance() { if (self::$classInstance === null) { self::$classInstance = new self(); } return self::$classInstance; }
public function genericInit() { $eventHandler = $this; OW::getEventManager()->bind('feed.action', array($eventHandler, 'action')); OW::getEventManager()->bind('feed.activity', array($eventHandler, 'activity')); OW::getEventManager()->bind('feed.delete_activity', array($eventHandler, 'removeActivity')); OW::getEventManager()->bind('feed.get_all_follows', array($eventHandler, 'getAllFollows')); OW::getEventManager()->bind('feed.install_widget', array($eventHandler, 'installWidget')); OW::getEventManager()->bind('feed.delete_item', array($eventHandler, 'deleteAction')); OW::getEventManager()->bind('feed.get_status', array($eventHandler, 'getStatus')); OW::getEventManager()->bind('feed.remove_follow', array($eventHandler, 'removeFollow')); OW::getEventManager()->bind('feed.is_follow', array($eventHandler, 'isFollow')); OW::getEventManager()->bind('feed.after_status_update', array($eventHandler, 'statusUpdate')); OW::getEventManager()->bind('feed.after_status_update', array($eventHandler, 'userFeedStatusUpdate')); OW::getEventManager()->bind('feed.after_like_added', array($eventHandler, 'addLike')); OW::getEventManager()->bind('feed.after_like_removed', array($eventHandler, 'removeLike')); OW::getEventManager()->bind('feed.add_follow', array($eventHandler, 'addFollow')); OW::getEventManager()->bind('feed.on_entity_add', array($eventHandler, 'entityAdd')); OW::getEventManager()->bind('feed.on_activity', array($eventHandler, 'onActivity')); OW::getEventManager()->bind('feed.after_activity', array($eventHandler, 'afterActivity')); OW::getEventManager()->bind('feed.get_item_permalink', array($eventHandler, 'getActionPermalink')); OW::getEventManager()->bind('feed.clear_cache', array($eventHandler, 'deleteActionSet')); OW::getEventManager()->bind('feed.after_comment_add', array($eventHandler, 'afterComment')); OW::getEventManager()->bind('feed.is_inited', array($eventHandler, 'isFeedInited')); OW::getEventManager()->bind('admin.add_auth_labels', array($eventHandler, 'onCollectAuthLabels')); OW::getEventManager()->bind('plugin.privacy.get_action_list', array($eventHandler, 'onPrivacyCollectActions')); OW::getEventManager()->bind('plugin.privacy.on_change_action_privacy', array($eventHandler, 'onPrivacyChange')); OW::getEventManager()->bind('base_add_comment', array($eventHandler, 'addComment')); OW::getEventManager()->bind('base_delete_comment', array($eventHandler, 'deleteComment')); OW::getEventManager()->bind(OW_EventManager::ON_USER_UNREGISTER, array($eventHandler, 'userUnregister')); OW::getEventManager()->bind(OW_EventManager::ON_USER_BLOCK, array($eventHandler, 'userBlocked')); OW::getEventManager()->bind(OW_EventManager::ON_PLUGINS_INIT, array($eventHandler, 'afterAppInit')); //OW::getEventManager()->bind('base.on_get_user_status', array($eventHandler, 'getUserStatus')); OW::getEventManager()->bind('base_add_comment', array($eventHandler, 'onCommentNotification')); OW::getEventManager()->bind('feed.after_like_added', array($eventHandler, 'onLikeNotification')); OW::getEventManager()->bind('notifications.collect_actions', array($eventHandler, 'collectNotificationActions')); OW::getEventManager()->bind('feed.on_item_render', array($eventHandler, 'genericItemRender')); OW::getEventManager()->bind('feed.on_item_render', array($eventHandler, 'onFeedItemRenderContext')); $credits = new NEWSFEED_CLASS_Credits(); OW::getEventManager()->bind('usercredits.on_action_collect', array($credits, 'bindCreditActionsCollect')); $onceInited = OW::getConfig()->getValue('newsfeed', 'is_once_initialized'); if ($onceInited === null) { if (OW::getConfig()->configExists('newsfeed', 'is_once_initialized')) { OW::getConfig()->saveConfig('newsfeed', 'is_once_initialized', 1); } else { OW::getConfig()->addConfig('newsfeed', 'is_once_initialized', 1); } $event = new OW_Event('feed.after_first_init', array('pluginKey' => 'newsfeed')); OW::getEventManager()->trigger($event); } NEWSFEED_CLASS_ContentProvider::getInstance()->init(); }