Всего 125 956 комментариев

Иван Бочкарев
04 мая 2022, 10:58
0
Вы сообщили разработчикам о найденной ошибке с TV (Изображение)?
Avex
04 мая 2022, 10:42
0
Я пока решил на старой версии он стабильная новая много ещё ошибок и багов.
Думаю через года 2 сделают уже нормально, если да же tv поле изображения или документ при выводе в шаблон ошибку дают.
Это говорит о многом.
Николай Савин
04 мая 2022, 09:35
0
То есть ты не смог собрать компонент из исходника, а виноват MODX3?
Компонент для MODX3 лежит вот здесь
github.com/halftrainedharry/Gallery
Для сборки и установки компонента из исходника нужно запустить файл /_build/build.transport.php
Роман
04 мая 2022, 09:06
0
Может следуют тут прописать полную ссылку:
&pageLinkScheme=`/[[+uri]]/[[+pageVarKey]]-[[+page]]`
Avex
04 мая 2022, 09:06
0
Ушёл на версию 2.8.4, года 2 точно нету смыла устанавливать 3 версию, шума больше чем результата.
Avex
04 мая 2022, 09:03
0
Установил не рабочую версию, заменил файлы и так же не работает
Avex
04 мая 2022, 08:54
0
При установке выходит ошибка Файл Gallery-417aa530b383fd47f2b73602acbcf6cf10788ac0.zip имеет недопустимое название для транспортного пакета
Avex
04 мая 2022, 08:52
0
Я так и не понял как скачать и установить?
Иван Бочкарев
04 мая 2022, 07:42
0
Открою секрет Cообщество не равно официальному репозиторию, где как раз фиксируются проблемы и их решают.

Вы сделаете большое дело если опишите и зарегистрируете проблему github.com/modxcms/revolution/issues/new?assignees=&labels=bug&template=bug_report.md
Avex
04 мая 2022, 07:30
0
печально очень запустили уже почти всё сделал и тут та же проблема, а половина плагинов не работает(
Николай Савин
03 мая 2022, 16:53
0
В этом случае в процессоре нужно добавить выборку данных из дополнительной таблицы. Тогда они будут доступны как родные в JS
Николай Савин
03 мая 2022, 16:52
0
Вряд ли из-за прав. Скорее просто плагин не успевал выполнить задачу за доступное время. А в консольном режиме ограничения времени на выполнение PHP скрипта нет. Он может и неделю выполняться.
Pakos Fakos
03 мая 2022, 14:23
0
спасибо за статью, но у меня другой вопрос, а что если вы хотите, чтобы это новое поле (трек-номер) брало данные из другой таблицы с уже вставленными номерами?
Я имею в виду вместо текстового поля выпадающее меню для выбора числа из определенной таблицы -> столбца. Как в этом случае добавить связь между выпадающим меню, конкретным столбцом из другой таблицы и Order?
Vladimir
03 мая 2022, 12:18
0
Кстати да заработало, можно кратко почему оно не работало из консоли? типо из-за прав? но ведь оно работало как плагин. Конечно сделал не так всё как вы сказали, но для компании для которой нужно всё быстро и чтоб работало сойдёт, да и пока нет знаний чтобы сделать как вы сказали

<?php

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

define('MODX_API_MODE', true);
require dirname(dirname((__FILE__))) . '/index.php';



$BASE_PATH = dirname(dirname((__FILE__)));
$CORE_PATH = "{$BASE_PATH}/core/";


$dir_name = "{$BASE_PATH}/media";

$phpThumb = $modx->getService('modphpthumb', 'modPhpThumb', "{CORE_PATH}model/phpthumb/", array());

function optimezieImg($pathToImage, $phpThumb){
    global $modx;
    $params = array();
    if (exif_imagetype($pathToImage) == IMAGETYPE_JPEG)
    {

        $params = array(
            'w' => 1920,
            'f' => 'jpeg',
            'q' => 80,
        );

    }
    elseif (exif_imagetype($pathToImage) == IMAGETYPE_PNG)
    {

        $params = array(
            'w' => 1920,
            'f' => 'png',
            'q' => 80,
        );

    }
    elseif (exif_imagetype($pathToImage) == IMAGETYPE_GIF)
    {
        return;
    }
    
    
    
    $phpThumb->setSourceFilename($pathToImage);

    foreach ($params as $k => $v)
    {
        $phpThumb->setParameter($k, $v);
    }

    if ($phpThumb->GenerateThumbnail())
    {
        if (!$phpThumb->renderToFile($pathToImage))
        {
            $modx->log(1, 'Ошибка сохранения изображения в [' . $pathToImage . ']');
        }
    }
    else
    {
        $modx->log(1, print_r($phpThumb->debugmessages, 1));
    }    
}



$directoryIterator = new RecursiveDirectoryIterator($dir_name);
$iteratorOverIterator = new RecursiveIteratorIterator($directoryIterator, RecursiveIteratorIterator::CHILD_FIRST);

$allowedExts = array('jpg','png','jpeg');

$files = array();

foreach ($iteratorOverIterator as $file) {
    
    if ($file->isFile()) {
        $currentFileExt = pathinfo($file->getFilename(), PATHINFO_EXTENSION);
        if(in_array($currentFileExt, $allowedExts)){
            array_push($files, $file->getPathname());
        }
    } 
}

foreach ($files as $file) {
    
    optimezieImg($file, $phpThumb);
    
}


echo 'Done';
Николай Савин
03 мая 2022, 11:57
0
Ну для начала идея — не использовать для таких задач плагин.
Это некорректно с точки зрения архитектуры (плагин по своей сути это функция). А также плагин ограничен максимальным временем выполнения PHP скрипта.

Такие задачи выполняются в CLI режиме. То есть создайте отдельный php файл, подключите туда MODX, перенесите ваш код. Желательно переделать в класс и использовать ООП. И выполняйте код в консольном режиме.
Александр Сенькин
03 мая 2022, 11:51
0
Версия 3.0 еще официально не открыли для «безопасного» перехода на неё. Большие проекты, да и вообще кроме тестовых проектов желательно не переезжать пока что… Не все пакеты готовы к переезду… Уверен работы разработчикам хватает чтобы закрыть львиную долю багов и ошибок, ваше не исключение и вот сейчас не решить ваш вопрос. Прошу откатите на прежнюю версию «если есть такой вариант»
Vladimir
03 мая 2022, 11:25
0
Можно как их оптимизировать разом? вверху полу рабочий скрипт, собирает все картинки но выдаёт ошибку, мол плохие картинки. Использовать phpthumbof и так далее через тэги, нет не выход, с ними постоянно проблемы с кэшем, что делает только хуже, по этому нужно сделать чтобы все существующие картинки прогнал через сам себя встроенный phpthumb, великолепно справляется со своей работой, в качестве плагина на загрузку файлов
Vladimir
03 мая 2022, 11:02
0
Есть у кого-нибудь идеи?