1. Мы продолжаем публиковать интересные статьи на тему SocialEngine 4. Одна из статей посвящена правильному выбору сервера для вашей социальной сети, а другая содержит советы по увеличению производительности платформы. Также мы добавили большую статью о пользовательских уровнях. Ознакомиться со статьями вы можете в разделе Вопросы и Ответы SocialEngine 4.
  2. Вам кажется, что ваша версия SocialEngine 4, работает медленно?

    Голосуйте. Пишите свою версию системы, железо на чем работает и количество пользователей. Будем увеличивать производительность :-) Подробнее

  3. В связи с участившимися случаями попыток продажи пользователями форума различных "сборок" коммерческих социальных платформ, обычно основанных на SocialEngine 3, вводится новое правило для форума. Запрещается создание тем или размещение в уже созданных предложений о продаже или размещение ссылок на сайты, где происходит продажа "сборок". Пользователи, которые продолжат свою коммерческую деятельность в данном направлении, будут заблокированы. Подробнее.
  4. Мы рады сообщить о выходе первого российского продукта для платформы phpFox 2-3. Продукт Interkassa-Sprypay Gateway Payment, позволит вам начать прием платежей в России без особых проблем. Зарабатывайте на платных подарках или получайте доходы с платной рекламы как на Facebook. Продукт работает со всеми модулями, которые используют платежные шлюзы.

    Все подробности о продукте в этой теме.

Лента активности как в facebook

Discussion in 'Моды - Mods' started by Hayasa, Sep 3, 2010.

  1. Hayasa Thread starter User


    Offline
    • Знаменитый
    Message Count:
    634
    Likes Received:
    161
    My version of phpFox:
    3.0.0
    Автоматическая отправка уведомлений по электронной почте для всех тех пользователей, которые комментировали в ленте активности.

    Сейчас phpFox отправляет уведомление по электронной почте только владельцу ленты. Это может показаться странным, как FaceBook уведомляет всех пользователей, участвующих в ленте.

    :: Установка ::

    1. Добавить следующие настройки на своем сайте (AdminCP -> Settings -> Add New Setting)
    (Эта функция будет доступна в AdminCP -> Settings -> System Settings -> Module Settings -> Feed)

    Код:

    Product: phpFox
    Module: feed
    Groups: Content Formatting
    Variable: crop_comment_in_notification_email_to
    Type: Integer
    Value: 255

    Title: Уведомлении ленты по электронной почте
    Info: Количество символов в комментарии, который будет отображаться в содержании уведомления по электронной почте.

    2. Добавить следующие две фразы (AdminCP -> Extension -> Language -> Add Phrase):
    Код:

    Product: phpfox
    Module: feed
    Varname: full_name_left_a_comment_on_owner_name_feed_to_view_this_comment
    Text: {full_name} left a comment on {owner_name}'s update.

    {full_name} wrote:
    <blockquote><em>{comment}</em></blockquote>

    To view this comment, follow the link below:
    <a href="{link}">{link}</a>

    Код:

    Product: phpfox
    Module: feed
    Varname: full_name_left_a_comment_on_owner_name_feed
    Text:
    {full_name} left a comment on the {owner_name}'s update.

    3. Открыть файл /module/feed/include/service/callback.class.php.
    Найти функцию
    PHP-код:

    public function addComment($aVals, $iUserId = null, $sUserName = null)
    В этой функции, перейдите на линию 67 и добавить следующий код:

    PHP-код:

    // POSSIBLE SOLUTION BY FERN. This can be a plug-in (if the hook will exist someday) or be added in the next version.
    // CAUTION, as it could generate a lot of e-mails.

    // Get the comment from the database
    $sComment = $this->database()->select('ct.text')
    ->from(Phpfox::getT('comment_text'), 'ct')
    ->where('ct.comment_id = '.$aVals['comment_id'])
    ->execute('getField');

    // Get the comment text and crop it according to the feed setting
    $sParsedComment = substr($sComment, 0, Phpfox::getParam('feed.crop_comment_in_notification_email_to'));

    // Get the owner's full name and user id of those who have posted a comment in the specific feed
    $aUsersToMail = $this->database()->select('u.full_name as owner_name, c.user_id')
    ->from(Phpfox::getT('comment'), 'c')
    ->join($this->_sTable, 'f', 'c.item_id = f.feed_id')
    ->join(Phpfox::getT('user'), 'u', 'u.user_id = f.user_id')
    ->where('c.item_id = '.$aFeed['feed_id'])
    ->group('c.user_id')
    ->execute('getSlaveRows');

    foreach($aUsersToMail as $aUser)
    {
    // if the feed owner has posted a comment, there is no need to notify him twice.
    if ($aFeed['user_id'] != $aUser['user_id'])
    {
    // Send the e-mail to the current user in the list of users that have commented in the feed.
    Phpfox::getLib('mail')->to($aUser['user_id'])
    ->subject(array
    ('feed.full_name_left_a_comment_on_owner_name_feed', array(
    'full_name' => $sUserName,
    'owner_name' => $aUser['owner_name'],
    'site_title' => Phpfox::getParam('core.site_title')
    )
    )
    )
    ->message(array
    ('feed.full_name_left_a_comment_on_owner_name_feed_to_view_this_comment', array(
    'full_name' => $sUserName,
    'owner_name' => $aUser['owner_name'],
    'comment' => $sParsedComment,
    'site_title' => Phpfox::getParam('core.site_title'),
    'link' => $sLink
    )
    )
    )
    ->notification('comment.add_new_comment')
    ->send();
    }

    // Also, add a site notification to the current user in the list of users that have commented in the feed.
    Phpfox::getService('notification.process')->add('comment_feed', $aFeed['feed_id'], $aUser['user_id'], array(
    'title' => '',
    'user_id' => Phpfox::getUserId(),
    'image' => Phpfox::getUserBy('user_image'),
    'server_id' => Phpfox::getUserBy('server_id')
    )
    );
    }
    // END OF FERN'S SOLUTION!


    Готово!

    Это изменение будет автоматически отправлять уведомления по электронной почте тем, кто комментировал в ленте активности.
  2. goleaf Novice member


    Offline
    Message Count:
    12
    Likes Received:
    0
    я сделал это, но через некоторое время начались появляться комментарии недельной и больше давности. версия 2.0.5
  3. fam User


    Offline
    Message Count:
    82
    Likes Received:
    0
    My version of phpFox:
    3.0.0
    Находка для спамеров!!!

Share This Page

All rights reserved SocEngine.ru ©