JmodelLegacy — migration undefined

Для обновления Джумлы со старых 1.5 до 2.5 используют плагин JUpgrade. Редкостной кривизны модуль. Вначале выяснилось, что он скачивает с офф. сайта последнюю версию Джумлы 2.5.9 а работать умеет только с 2.5.4. Ну ладно. Находим нужную ему версию. Скачиваем, распаковываем в /jupgrade, ставим нужные галочки, чтобы плагин брал уже распакованую Джумлу и не дергался. Хех.

Все тормозится на этапе migration undefined . Включаем debug и видим длиннейшую простыню ошибок.  В самом начале, что то вроде Fatal error: Class 'JModelLegacy' not found

Этой дурацкой ошибкой забиты все интернеты. На форуме разработчков JUpgrade ответа нет. Сплошное шаманство. Перепробовал все виды камланий, которые пришли в голову разработчикам и другим специалистам по Джумле, но победить проблему не удалось.

В результате пришлось идти своим путем. Раз уж это "JModelLegacy not found", то надо попробовать его воткнуть и помотреть, что получится. Находим файл legacy.php . Он находится в Joomle 2.5  в папке /libraries/cms/model/.

Копируем его в /jupgrade/installation/ . И правим 2 файла.
/jupgrade/installation/models/configuration.php
/jupgrade/installation/models/db.php

Добавляем require_once JPATH_INSTALLATION.'/legacy.php'; Где нибудь после jimport. Бинго! Инсталляция прошла на ура.

You may also like...