示例#1
0
 /**
  * @return Constructor.
  */
 public function __construct(BASE_CLASS_WidgetParameter $paramObj)
 {
     parent::__construct($paramObj);
     $userId = $paramObj->additionalParamList['entityId'];
     // privacy check
     $viewerId = OW::getUser()->getId();
     $ownerMode = $userId == $viewerId;
     $modPermissions = OW::getUser()->isAuthorized('newsfeed');
     if (!$ownerMode && !$modPermissions) {
         $privacyParams = array('action' => NEWSFEED_BOL_Service::PRIVACY_ACTION_VIEW_MY_FEED, 'ownerId' => $userId, 'viewerId' => $viewerId);
         $event = new OW_Event('privacy_check_permission', $privacyParams);
         try {
             OW::getEventManager()->trigger($event);
         } catch (RedirectException $e) {
             $this->setVisible(false);
             return;
         }
     }
     $feed = $this->createFeed('user', $userId);
     $isBloacked = BOL_UserService::getInstance()->isBlocked(OW::getUser()->getId(), $userId);
     if (OW::getUser()->isAuthenticated() && OW::getUser()->isAuthorized('base', 'add_comment')) {
         if ($isBloacked) {
             $feed->addStatusMessage(OW::getLanguage()->text("base", "user_block_message"));
         } else {
             $visibility = NEWSFEED_BOL_Service::VISIBILITY_FULL;
             $feed->addStatusForm('user', $userId, $visibility);
         }
     }
     $feed->setDisplayType(NEWSFEED_CMP_Feed::DISPLAY_TYPE_ACTIVITY);
     $this->setFeed($feed);
 }
示例#2
0
 /**
  * @return Constructor.
  */
 public function __construct(BASE_CLASS_WidgetParameter $paramObj)
 {
     parent::__construct($paramObj);
     $feed = $this->createFeed('my', OW::getUser()->getId());
     $feed->setDisplayType(NEWSFEED_CMP_Feed::DISPLAY_TYPE_ACTIVITY);
     if (OW::getUser()->isAuthorized('newsfeed', 'allow_status_update')) {
         $feed->addStatusForm('user', OW::getUser()->getId());
     }
     $this->setFeed($feed);
 }
示例#3
0
 /**
  * @return Constructor.
  */
 public function __construct(BASE_CLASS_WidgetParameter $paramObj)
 {
     parent::__construct($paramObj);
     $feed = $this->createFeed('site', null);
     $feed->setDisplayType(NEWSFEED_CMP_Feed::DISPLAY_TYPE_ACTIVITY);
     $enabled = OW::getConfig()->getValue('newsfeed', 'index_status_enabled');
     if ($enabled && OW::getUser()->isAuthenticated() && OW::getUser()->isAuthorized('newsfeed', 'allow_status_update')) {
         $feed->addStatusForm('user', OW::getUser()->getId());
     }
     $this->setFeed($feed);
 }
示例#4
0
 /**
  * @return Constructor.
  */
 public function __construct(BASE_CLASS_WidgetParameter $paramObj)
 {
     parent::__construct($paramObj);
     $this->feedId = $paramObj->additionalParamList['entityId'];
     $this->feedType = $paramObj->additionalParamList['entity'];
     $event = new OW_Event('feed.on_widget_construct', array('feedId' => $this->feedId, 'feedType' => $this->feedType));
     OW::getEventManager()->trigger($event);
     $data = $event->getData();
     $data = array_merge($this->defaultParams, $data);
     foreach ($data['widget'] as $setting => $value) {
         $this->setSettingValue($setting, $value);
     }
     $feed = $this->createFeed($this->feedType, $this->feedId);
     $feed->setDisplayType(NEWSFEED_CMP_Feed::DISPLAY_TYPE_ACTIVITY);
     if ($data['statusForm']) {
         $visibility = NEWSFEED_BOL_Service::VISIBILITY_FULL - NEWSFEED_BOL_Service::VISIBILITY_SITE;
         $feed->addStatusForm($this->feedType, $this->feedId, $visibility);
     }
     $this->setFeed($feed);
 }