Инвертировать сообщения в переписках

ScripTop

Проверенные
Сообщения
101
Решения
1
Реакции
6
Баллы
8,120
Как сделать чтобы новые были сверху, а старые снизу?
 
ScripTop, нужно открыть файл library/ControllerPublic/Conversation.php, перейти к методу actionView, в массиве $viewParams найти элемент messages и заменить на
'messages' => array_reverse($messages),
 
нужно открыть файл library/ControllerPublic/Conversation.php
.не нужно так делать, это плохой совет. Никогда не нужно править файлы.

Включаем дебаг, создаём аддон (admin.php?add-ons/add) с любым именем и любым ИД.
1506572077921.png

Потом создаём папку по названию вашего аддона в library

Создаём в нём файл Listener.php и вставляем в него следующий код:

PHP:
<?php

class {Папка вашего аддона}_Listener
{
    const _ = '{Папка вашего аддона}_';

    public static function lc($class, &$extend)
    {
        $extend[] = self::_ . $class;
    }
}

Потом идём сюда admin.php?code-event-listeners/add и делаем так, только заменяем в методе на ваше имя
1506572374364.png


Позже создаём в папке вашего аддона папки XenForo/ControllerPublic и в ControllerPublic создаём файл Conversation.php


И в нём пишем такой код, естественно заменяя папку на свою

PHP:
<?php

class {Папка вашего аддона}_XenForo_ControllerPublic_Conversation extends XFCP_{Папка вашего аддона}_XenForo_ControllerPublic_Conversation
{
    public function actionView()
    {
        $parent = parent::actionView();
        if ($parent instanceof XenForo_ControllerResponse_View)
        {
            $params = &$parent->params;
            $params['messages'] = array_reverse($params['messages']);
        }
        return $parent;
    }
}
 
Последнее редактирование модератором:
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу