Пример #1
0
 private function _getActivityStream()
 {
     $act = new CActivityStream();
     $html = $act->getHTML('', '', null, 0, '', '', true, COMMUNITY_SHOW_ACTIVITY_MORE);
     return $html;
 }
Пример #2
0
 function repost($response, $actId, $from = 'frontpage')
 {
     JPlugin::loadLanguage('plg_activitycomment', JPATH_ADMINISTRATOR);
     $my = CFactory::getUser();
     if ($my->id == 0) {
         $response->addScriptCall('alert', 'NOT ALLOWED');
         return $response->sendResponse();
     }
     $db = JFactory::getDBO();
     $query = 'SELECT * FROM #__community_activities WHERE `id`=' . $db->Quote($actId);
     $db->setQuery($query);
     $activity = $db->loadObject();
     // Add activity logging
     CFactory::load('libraries', 'activities');
     $actor = CFactory::getUser($activity->actor);
     $act = new stdClass();
     $author = '<a href="' . CRoute::_('index.php?option=com_community&view=profile&userid=' . $my->id) . '">' . $my->getDisplayName() . '</a>';
     $act->cmd = 'activitycomment.repost';
     $act->actor = $my->id;
     $act->target = 0;
     $act->title = JText::sprintf('%1$s,', $author) . ' ' . $activity->title;
     $act->content = $activity->content;
     $act->app = $activity->app;
     $act->cid = $my->id;
     CActivityStream::add($act);
     $friendsModel =& CFactory::getModel('friends');
     CFactory::load('helpers', 'time');
     $memberSince = cGetDate($my->registerDate);
     $friendIds = $friendsModel->getFriendIds($my->id);
     include_once JPATH_COMPONENT . DS . 'libraries' . DS . 'activities.php';
     $act = new CActivityStream();
     $config = CFactory::getConfig();
     if ($from == 'frontpage') {
         $html = $act->getHTML('', '', null, $config->get('maxacitivities'));
     } else {
         $html = $act->getHTML($my->id, $friendIds, $memberSince, 10);
     }
     $response->addAssign('activity-stream-container', 'innerHTML', $html);
     return $response->sendResponse();
 }
Пример #3
0
 private function _getActivityStream()
 {
     CFactory::load('libraries', 'activities');
     $act = new CActivityStream();
     $html = $act->getHTML('', '', null, 0, '', '', true, COMMUNITY_SHOW_ACTIVITY_MORE);
     return $html;
 }
Пример #4
0
 /**
  * Return newsfeed html block
  */
 function _getNewsfeedHTML()
 {
     jimport('joomla.utilities.date');
     $mainframe =& JFactory::getApplication();
     $config = CFactory::getConfig();
     $my = CFactory::getUser();
     //$user 			= CFactory::getActiveProfile();
     $userid = JRequest::getVar('userid', $my->id);
     $user = CFactory::getUser($userid);
     $params =& $user->getParams();
     $activities = CFactory::getModel('activities');
     $appModel = CFactory::getModel('apps');
     $friendsModel = CFactory::getModel('friends');
     $html = '';
     $activityLimit = !empty($params) ? $params->get('activityLimit', '') : '';
     if (empty($activityLimit)) {
         $activityLimit = $config->get('maxactivities');
     }
     $memberSince = CTimeHelper::getDate($user->registerDate);
     $friendIds = $friendsModel->getFriendIds($user->id);
     include_once JPATH_COMPONENT . DS . 'libraries' . DS . 'activities.php';
     $act = new CActivityStream();
     return $act->getHTML($user->id, $friendIds, $memberSince, $activityLimit, '', '');
 }
Пример #5
0
 /**
  *
  * @param type $filter
  * @param type $userId
  * @param type $view
  * @param type $showMore
  * @return type 
  */
 public function getActivitiesByFilter($filter = 'all', $userId = 0, $view = '', $showMore = true)
 {
     $config = CFactory::getConfig();
     $act = new CActivityStream();
     if ($userId == 0) {
         // Legacy code, some module might still use the old code
         $user = CFactory::getRequestUser();
     } else {
         $user = CFactory::getUser($userId);
     }
     jimport('joomla.utilities.date');
     $friendsModel = CFactory::getModel('friends');
     $memberSince = CTimeHelper::getDate($user->registerDate);
     //$friendIds = $friendsModel->getFriendIds($user->id);
     $friendIds = $user->getFriendIds();
     switch ($filter) {
         case "active-profile":
             $target = array($user->id);
             $params =& $user->getParams();
             $actLimit = $view == 'profile' ? $params->get('activityLimit', $config->get('maxactivities')) : $config->get('maxactivities');
             $html = $act->getHTML($user->id, $target, '', $actLimit, $view, '', true, $showMore, null, false, 'active-profile');
             break;
         case "me-and-friends":
             $user =& JFactory::getUser();
             $html = $act->getHTML($user->id, $friendIds, $memberSince, 0, $view, '', true, $showMore, null, false, 'me-and-friends');
             break;
         case "active-user-and-friends":
         case "active-profile-and-friends":
             $params =& $user->getParams();
             $actLimit = $view == 'profile' ? $params->get('activityLimit', $config->get('maxactivities')) : $config->get('maxactivities');
             $html = $act->getHTML($user->id, $friendIds, $memberSince, $actLimit, $view, '', true, $showMore, null, false, 'active-profile-and-friends');
             break;
         case "all":
         default:
             $html = $act->getHTML('', '', null, 0, $view, '', true, $showMore);
             break;
     }
     return $html;
 }
Пример #6
0
 /**
  *
  * @param type $filter
  * @param type $userId
  * @param type $view
  * @param type $showMore
  * @return type
  */
 public static function getActivitiesByFilter($filter = 'all', $userId = 0, $view = '', $showMore = true, $filters = array())
 {
     jimport('joomla.utilities.date');
     $config = CFactory::getConfig();
     $act = new CActivityStream();
     if ($userId == 0) {
         // Legacy code, some module might still use the old code
         $user = CFactory::getRequestUser();
     } else {
         $user = CFactory::getUser($userId);
     }
     $memberSince = CTimeHelper::getDate($user->registerDate);
     $friendIds = $user->getFriendIds();
     /**
      * Filter
      * @todo This's applied into the old code we need improve it later
      */
     switch ($filter) {
         case 'photo':
         case 'group':
         case 'status':
         case 'video':
         case 'event':
             //$html = $act->getHTML('', '', null, 0, $view, '', true, $showMore, null, false, 'all', 0);
             break;
         case "active-profile":
             $target = array($user->id);
             $params = $user->getParams();
             $actLimit = $view == 'profile' ? $params->get('activityLimit', $config->get('maxactivities')) : $config->get('maxactivities');
             $html = $act->getHTML($user->id, $target, '', $actLimit, $view, '', true, $showMore, null, false, 'active-profile');
             break;
         case "me-and-friends":
             $user = JFactory::getUser();
             $html = $act->getHTML($user->id, $friendIds, $memberSince, 0, $view, '', true, $showMore, null, false, 'me-and-friends');
             break;
         case "active-user-and-friends":
         case "active-profile-and-friends":
             $params = $user->getParams();
             $actLimit = $view == 'profile' ? $params->get('activityLimit', $config->get('maxactivities')) : $config->get('maxactivities');
             $html = $act->getHTML($user->id, $friendIds, $memberSince, $actLimit, $view, '', true, $showMore, null, false, 'active-profile-and-friends');
             break;
         case "all":
         default:
             $html = $act->getHTML('', '', null, 0, $view, '', true, $showMore, null, false, 'all', 0, $filters);
             break;
     }
     return $html;
 }
Пример #7
0
 /**
  * Show listing of group with the most recent activities
  */
 public function showActiveGroup()
 {
     $groupModel = CFactory::getModel('groups');
     $activityModel = CFactory::getModel('activities');
     $act = new CActivityStream();
     $html = $act->getHTML('', '', null, 10, 'groups');
     return $html;
 }
Пример #8
0
 /**
  * Update the status of current user
  */
 public function ajaxUpdate($message = '')
 {
     if (!COwnerHelper::isRegisteredUser()) {
         return $this->ajaxBlockUnregister();
     }
     $mainframe =& JFactory::getApplication();
     $objResponse = new JAXResponse();
     //@rule: In case someone bypasses the status in the html, we enforce the character limit.
     $config = CFactory::getConfig();
     if (JString::strlen($message) > $config->get('statusmaxchar')) {
         $message = JString::substr($message, 0, $config->get('statusmaxchar'));
     }
     //trim it here so that it wun go into activities stream.
     $message = JString::trim($message);
     $my = CFactory::getUser();
     $status =& $this->getModel('status');
     $status->update($my->id, $message);
     //set user status for current session.
     $today =& JFactory::getDate();
     $message2 = empty($message) ? ' ' : $message;
     $my->set('_status', $message2);
     $my->set('_posted_on', $today->toMySQL());
     $profileid = JRequest::getVar('userid', 0, 'GET');
     if (COwnerHelper::isMine($my->id, $profileid)) {
         $objResponse->addScriptCall("joms.jQuery('#profile-status span#profile-status-message').html('" . addslashes($message) . "');");
     }
     CFactory::load('helpers', 'string');
     $message = CStringHelper::escape($message);
     if (!empty($message)) {
         $act = new stdClass();
         $act->cmd = 'profile.status.update';
         $act->actor = $my->id;
         $act->target = $my->id;
         CFactory::load('helpers', 'linkgenerator');
         // @rule: Autolink hyperlinks
         $message = CLinkGeneratorHelper::replaceURL($message);
         // @rule: Autolink to users profile when message contains @username
         $message = CLinkGeneratorHelper::replaceAliasURL($message);
         $privacyParams = $my->getParams();
         $act->title = '{actor} ' . $message;
         $act->content = '';
         $act->app = 'profile';
         $act->cid = $my->id;
         $act->access = $privacyParams->get('privacyProfileView');
         CFactory::load('libraries', 'activities');
         CActivityStream::add($act);
         //add user points
         CFactory::load('libraries', 'userpoints');
         CUserPoints::assignPoint('profile.status.update');
         //now we need to reload the activities streams
         $friendsModel = CFactory::getModel('friends');
         $memberSince = CTimeHelper::getDate($my->registerDate);
         $friendIds = $friendsModel->getFriendIds($my->id);
         include_once JPATH_COMPONENT . DS . 'libraries' . DS . 'activities.php';
         $act = new CActivityStream();
         $params =& $my->getParams();
         $limit = !empty($params) ? $params->get('activityLimit', '') : '';
         $html = $act->getHTML($my->id, $friendIds, $memberSince, $limit);
         $status = $my->getStatus();
         $status = addslashes($status);
         $objResponse->addScriptCall("joms.jQuery('#profile-status-message').html('" . $status . "');");
         $objResponse->addScriptCall("joms.jQuery('title').val('" . $status . "');");
         $objResponse->addAssign('activity-stream-container', 'innerHTML', $html);
     }
     return $objResponse->sendResponse();
 }
Пример #9
0
<?php

/**
 * @copyright (C) 2013 iJoomla, Inc. - All rights reserved.
 * @license GNU General Public License, version 2 (http://www.gnu.org/licenses/gpl-2.0.html)
 * @author iJoomla.com <*****@*****.**>
 * @url https://www.jomsocial.com/license-agreement
 * The PHP code portions are distributed under the GPL license. If not otherwise stated, all images, manuals, cascading style sheets, and included JavaScript *are NOT GPL, and are released under the IJOOMLA Proprietary Use License v1.0
 * More info at https://www.jomsocial.com/license-agreement
 */
defined('_JEXEC') or die('Restricted access');
include_once JPATH_BASE . '/components/com_community/defines.community.php';
require_once JPATH_BASE . '/components/com_community/libraries/core.php';
include_once COMMUNITY_COM_PATH . '/libraries/activities.php';
include_once COMMUNITY_COM_PATH . '/helpers/time.php';
JFactory::getLanguage()->isRTL() ? CTemplate::addStylesheet('style.rtl') : CTemplate::addStylesheet('style');
$activities = new CActivityStream();
$maxEntry = $params->get('max_entry', 10);
$stream = $activities->getHTML('', '', null, $maxEntry, '');
require JModuleHelper::getLayoutPath('mod_activitystream', $params->get('layout', 'default'));
Пример #10
0
 public function ajaxGetActivities($filter, $user_id = 0, $view = '')
 {
     $objResponse = new JAXResponse();
     include_once JPATH_COMPONENT . DS . 'libraries' . DS . 'activities.php';
     $config = CFactory::getConfig();
     $act = new CActivityStream();
     if ($user_id == 0) {
         // Legacy code, some module might still use the old code
         $user = CFactory::getRequestUser();
     } else {
         $user = CFactory::getUser($user_id);
     }
     //@todo: need to check if the user_id, is a private profile and not
     // a friend!. Disallow for viewing it!
     switch ($filter) {
         case "active-profile":
             $target = array($user->id);
             $params =& $user->getParams();
             $actLimit = $view == 'profile' ? $params->get('activityLimit', $config->get('maxactivities')) : $config->get('maxactivities');
             $data = $act->getHTML($user->id, $target, "", $actLimit);
             break;
         case "me-and-friends":
             $user =& JFactory::getUser();
             $filter = $this->getActivitiesFilter($user->id, $user->registerDate);
             $data = $act->getHTML($user->id, $filter->friendIds, $filter->memberSince, 0, '', '', true, COMMUNITY_SHOW_ACTIVITY_MORE);
             break;
         case "active-user-and-friends":
         case "active-profile-and-friends":
             $filter = $this->getActivitiesFilter($user->id, $user->registerDate);
             $params =& $user->getParams();
             $actLimit = $view == 'profile' ? $params->get('activityLimit', $config->get('maxactivities')) : $config->get('maxactivities');
             $data = $act->getHTML($user->id, $filter->friendIds, $filter->memberSince, $actLimit);
             break;
         case "all":
         default:
             $data = $act->getHTML('', '', null, 0, '', '', true, COMMUNITY_SHOW_ACTIVITY_MORE);
             break;
     }
     $objResponse->addAssign('activity-stream-container', 'innerHTML', $data);
     $objResponse->addScriptCall("joms.filters.hideLoading();");
     return $objResponse->sendResponse();
 }
Пример #11
0
 /**
  * Update the status of current user
  */
 public function ajaxUpdate($message = '')
 {
     $filter = JFilterInput::getInstance();
     $message = $filter->clean($message, 'string');
     $cache = CFactory::getFastCache();
     $cache->clean(array('activities'));
     if (!COwnerHelper::isRegisteredUser()) {
         return $this->ajaxBlockUnregister();
     }
     $mainframe =& JFactory::getApplication();
     $objResponse = new JAXResponse();
     //@rule: In case someone bypasses the status in the html, we enforce the character limit.
     $config = CFactory::getConfig();
     if (JString::strlen($message) > $config->get('statusmaxchar')) {
         $message = JString::substr($message, 0, $config->get('statusmaxchar'));
     }
     //trim it here so that it wun go into activities stream.
     $message = JString::trim($message);
     $my = CFactory::getUser();
     $status =& $this->getModel('status');
     // @rule: Spam checks
     if ($config->get('antispam_akismet_status')) {
         CFactory::load('libraries', 'spamfilter');
         $filter = CSpamFilter::getFilter();
         $filter->setAuthor($my->getDisplayName());
         $filter->setMessage($message);
         $filter->setEmail($my->email);
         $filter->setURL(CRoute::_('index.php?option=com_community&view=profile&userid=' . $my->id));
         $filter->setType('message');
         $filter->setIP($_SERVER['REMOTE_ADDR']);
         if ($filter->isSpam()) {
             $objResponse->addAlert(JText::_('COM_COMMUNITY_STATUS_MARKED_SPAM'));
             return $objResponse->sendResponse();
         }
     }
     $status->update($my->id, $message);
     //set user status for current session.
     $today =& JFactory::getDate();
     $message2 = empty($message) ? ' ' : $message;
     $my->set('_status', $message2);
     $my->set('_posted_on', $today->toMySQL());
     $profileid = JRequest::getVar('userid', 0, 'GET');
     if (COwnerHelper::isMine($my->id, $profileid)) {
         $objResponse->addScriptCall("joms.jQuery('#profile-status span#profile-status-message').html('" . addslashes($message) . "');");
     }
     CFactory::load('helpers', 'string');
     $message = CStringHelper::escape($message);
     if (!empty($message)) {
         $act = new stdClass();
         $act->cmd = 'profile.status.update';
         $act->actor = $my->id;
         $act->target = $my->id;
         CFactory::load('helpers', 'linkgenerator');
         // @rule: Autolink hyperlinks
         $message = CLinkGeneratorHelper::replaceURL($message);
         // @rule: Autolink to users profile when message contains @username
         $message = CLinkGeneratorHelper::replaceAliasURL($message);
         CFactory::load('libraries', 'activities');
         $privacyParams = $my->getParams();
         $act->title = '{actor} ' . $message;
         $act->content = '';
         $act->app = 'profile';
         $act->cid = $my->id;
         $act->access = $privacyParams->get('privacyProfileView');
         $act->comment_id = CActivities::COMMENT_SELF;
         $act->comment_type = 'profile.status';
         $act->like_id = CActivities::LIKE_SELF;
         $act->like_type = 'profile.status';
         CActivityStream::add($act);
         //add user points
         CFactory::load('libraries', 'userpoints');
         CUserPoints::assignPoint('profile.status.update');
         //now we need to reload the activities streams
         $friendsModel = CFactory::getModel('friends');
         $memberSince = CTimeHelper::getDate($my->registerDate);
         $friendIds = $friendsModel->getFriendIds($my->id);
         //include_once(JPATH_COMPONENT . DS.'libraries'.DS.'activities.php');
         $act = new CActivityStream();
         $params =& $my->getParams();
         $limit = !empty($params) ? $params->get('activityLimit', '') : '';
         $html = $act->getHTML($my->id, $friendIds, $memberSince, $limit);
         $status = $my->getStatus();
         $status = addslashes($status);
         $objResponse->addScriptCall("joms.jQuery('#.-message').html('" . $status . "');");
         $objResponse->addScriptCall("joms.jQuery('title').val('" . $status . "');");
         $objResponse->addAssign('activity-stream-container', 'innerHTML', $html);
     }
     return $objResponse->sendResponse();
 }
 * More info at https://www.jomsocial.com/license-agreement
 */
defined('_JEXEC') or die('Restricted access');
include_once JPATH_BASE . '/components/com_community/defines.community.php';
require_once JPATH_BASE . '/components/com_community/libraries/core.php';
include_once COMMUNITY_COM_PATH . '/libraries/activities.php';
include_once COMMUNITY_COM_PATH . '/helpers/time.php';
$svgPath = CFactory::getPath('template://assets/icon/joms-icon.svg');
include_once $svgPath;
JFactory::getLanguage()->isRTL() ? CTemplate::addStylesheet('style.rtl') : CTemplate::addStylesheet('style');
$activities = new CActivityStream();
$maxEntry = $params->get('limit', 20);
$user = CFactory::getUser();
//$stream = $activities->getHTML('', '', null, $maxEntry, '');
switch ($params->get('stream_type', 0)) {
    case 0:
        $stream = $activities->getHTML('', '', null, $maxEntry, '');
        break;
    case 1:
        $stream = $activities->getHTML(CFactory::getUser()->id, '', '', $maxEntry, '', '', true, false, null, false, 'active-profile', 0, array('apps' => 'profiles'));
        break;
    case 2:
        $stream = $activities->getHTML(CFactory::getUser()->id, '', '', $maxEntry, '', '', true, false, null, false, 'active-profile', 0, array('apps' => 'groups'));
        break;
    case 3:
        $stream = $activities->getHTML(CFactory::getUser()->id, '', '', $maxEntry, '', '', true, false, null, false, 'active-profile', 0, array('apps' => 'events'));
        break;
    default:
        $stream = $activities->getHTML('', '', null, $maxEntry, '');
}
require JModuleHelper::getLayoutPath('mod_community_activitystream', $params->get('layout', 'default'));