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

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

  3. В связи с участившимися случаями попыток продажи пользователями форума различных "сборок" коммерческих социальных платформ, обычно основанных на SocialEngine 3, вводится новое правило для форума. Запрещается создание тем или размещение в уже созданных предложений о продаже или размещение ссылок на сайты, где происходит продажа "сборок". Пользователи, которые продолжат свою коммерческую деятельность в данном направлении, будут заблокированы. Подробнее.

4.1.x Отображение в списке обновлений только непрочитанных новостей

Discussion in 'Моды / Хаки - Mods / Hacks' started by newton, Feb 15, 2011.

  1. newton Thread starter User


    Offline
    Message Count:
    83
    Likes Received:
    5
    My version of phpFox:
    3.0.0
    Нашел на *****************

    Создаем второй пагинатор в application\modules\Activity\Model\DbTable\notifications.php (помещаем данный код после первого пагинатора):

    PHP:
     public function getNotificationsPaginator2(User_Model_User $user)
       {
         
    $enabledNotificationTypes = array();
         foreach( 
    Engine_Api::_()->getDbtable('NotificationTypes''activity')->getNotificationTypes() as $type ) {
           
    $enabledNotificationTypes[] = $type->type;
         }
     
         
    $select $this->select()
           ->
    where('user_id = ?'$user->getIdentity())
           ->
    where('`type` IN(?)'$enabledNotificationTypes)
     ->
    where('`read` = ?'0)
           ->
    order('date DESC')
           ;
     
         return 
    Zend_Paginator::factory($select);
       }
    далее идем в application\modules\activity\controllers\notificationscontroller.php, ищем там

    PHP:
    public function pulldownAction()
       {
         
    $page $this->_getParam('page');
         
    $viewer Engine_Api::_()->user()->getViewer();
         if (
    $page 1) {   $this->view->notifications $notifications Engine_Api::_()->getDbtable('notifications''activity')->getNotificationsPaginator($viewer);
         }
     
         if( 
    $notifications->getCurrentItemCount() <= || $page $notifications->getCurrentPageNumber() ) {
           
    $this->_helper->viewRenderer->setNoRender(true);
           return;
         }
     
         
    // Force rendering now
         
    $this->_helper->viewRenderer->postDispatch();
         
    $this->_helper->viewRenderer->setNoRender(true);
       }
    и заменяем на

    PHP:
     public function pulldownAction()
       {
         
    $page $this->_getParam('page');
         
    $viewer Engine_Api::_()->user()->getViewer();
         if (
    $page 1) {   $this->view->notifications $notifications Engine_Api::_()->getDbtable('notifications''activity')->getNotificationsPaginator($viewer);
         } else {    
    $this->view->notifications $notifications Engine_Api::_()->getDbtable('notifications''activity')->getNotificationsPaginator2($viewer); }
     
    //    $this->view->notifications = $notifications = Engine_Api::_()->getDbtable('notifications', 'activity')->getNotificationsPaginator($viewer);
         
    $notifications->setCurrentPageNumber($page);
     
         if( 
    $notifications->getCurrentItemCount() <= || $page $notifications->getCurrentPageNumber() ) {
           
    $this->_helper->viewRenderer->setNoRender(true);
           return;
         }
     
         
    // Force rendering now
         
    $this->_helper->viewRenderer->postDispatch();
         
    $this->_helper->viewRenderer->setNoRender(true);
       }
    и все)) работает 100% - гораздо удобнее, чем стандартный вариант

    либо просто распакуйте прикрепленный архив в корень сайта

    View attachment Updates..zip
    shturval likes this.
  2. Milka Novice member


    Offline
    Message Count:
    3
    Likes Received:
    0
    А прочитанные удаляются и не остаются на странице /activity/notifications?
  3. newton Thread starter User


    Offline
    Message Count:
    83
    Likes Received:
    5
    My version of phpFox:
    3.0.0
    нет, там остаются. удаляются только из списка новостей.
  4. demon-shi Novice member


    Offline
    Message Count:
    28
    Likes Received:
    0
    Извиняюсь, может не по теме...
    А как сделать, чтобы показывались обновления и новости только от друзей пользователя?
  5. newton Thread starter User


    Offline
    Message Count:
    83
    Likes Received:
    5
    My version of phpFox:
    3.0.0
    demon-shi, /admin/activity/settings - там настраивается.
  6. leonid_bt User


    Offline
    Message Count:
    94
    Likes Received:
    0
    Проблема в 4.1.3
    Не работает кнопка ↓ Показать предыдущие записи ↓
    Просто нажимается и ничего не догружает
  7. ntsandre Novice member


    Offline
    Message Count:
    3
    Likes Received:
    0
    4.1.3
    произвел все замены, выводит вот это: 1.png
  8. sader90 Novice member


    Offline
    Message Count:
    37
    Likes Received:
    0
    а ты на какой версии тестил?? ато на 4.1.6 поставить хотел, да не хочется все гробить в ошибках)
  9. StormMan User


    Offline
    Message Count:
    247
    Likes Received:
    63
    sader90, что гробить? Делаешь бекап файлов, и если не работает - то возвращаешь всё как было :)
  10. medensev User


    Offline
    Message Count:
    39
    Likes Received:
    8
    My version of SE:
    4.1.7
    Спасибо! На SE 4.1.7 все отлично работает;)

Share This Page

All rights reserved SocEngine.ru ©