Новости Joomla

Вышли релизы безопасности Joomla 6.1.1 и Joomla 5.4.6

Релиз безопасности Joomla 6.1.1 и Joomla 5.4.6

Проект Joomla! рад сообщить о выходе Joomla 6.1.1 и Joomla 5.4.6. Это релизы безопасности и исправления ошибок для серий 5.x и 6.x.

0 Пользователей и 1 Гость просматривают эту тему.
  • 10 Ответов
  • 2730 Просмотров
*

slogic

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Есть компонент. После его установки разворачиваются доп. таблицы в базе. При деинсталляции таблицы убиваются. Очевидно, обновление такого компоента через удаление/установку нового нельзя делать. Надо писать патч-компонент. Это мое видение. Может есть более толковый механизм? Например, при установке новой версии компонента в Joomla, где стоит старая версия, выполнять патчинг и обновление файлов. Был бы идеальный вариант.
*

era

  • Администратор
  • 1588
  • 392 / 5
  • В туалете лучше быть пользователем, чем админом.
В Joomla 1.5 можно добавить в XML-файл параметр method="upgrade":
Код
<?xml version="1.0" encoding="utf-8"?>
<install type="component" version="1.5.0" method="upgrade">
*

slogic

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
А можно подробнее, на что влияет "upgrade"?
Здесь ( http://docs.joomla.org/Components:xml_installfile ) вообще атрибут method не упоминается.
*

era

  • Администратор
  • 1588
  • 392 / 5
  • В туалете лучше быть пользователем, чем админом.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Хм, а что, Google отменили? Странно, мне казалось имея название атрибута и его значение найти что он делает проще простого.

Если кратко - то позволяет устанавливать расширение поверх уже установленной копии. Т.е. в этом случае не будет ошибки, что расширение уже установлено, все файлы из устанавливаемого дистрибутива будут безусловно записаны поверх имеющихся. Но если в новом дистрибутиве какие-то файлы уже неактуальны - они не будут удаляться, а останутся на сервере.
*

slogic

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Посмотрел исходник фреймворка. "upgrade" влияет только на возможность перезаписи файлов. Не понятно, как влияет на исполнение <sql> блока. Как мне сделать, чтобы в upgrade режиме выполнились только определенные sql файлы? Ведь при обычной установке я предварительно удаляю существующие таблицы, а при обновлении мне надо только модфицировать структуру таблиц.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Ну я в компоненте JComments таблицы создаю только если их нет, в обработчике установщика делаю необходимые обновления структуры, а на тот случай, если вдруг пользователь удалит компонент - у меня при удалении таблицы не трогаются. Да, это оставляет их в базе на тот случай, если пользователь решил отказаться от использования данного компонента, но во всех остальных случаях - бережет время и нервы.
*

slogic

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Неприемлемый для меня вариант. В моем случае нервы бережет точное соотв. структуры таблиц. В общем, понятно как надо извращаться. А в вашем случае наверное при деинсталляции стоит спросить пользователя, оставлять таблицы или нет в файле uninstall.php. Это самый корректный вариант.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
В моем случае нервы бережет точное соотв. структуры
таблиц.
ну за 3 года никаких проблем со структурой таблиц не было, а менял я ее раз 8 (и расширял, и менял индексы)...

В общем, понятно как надо извращаться. А в вашем случае наверное при деинсталляции стоит спросить пользователя, оставлять таблицы или нет в файле uninstall.php. Это самый корректный вариант.
Более правильно дать инструкции по удалению таблиц в ручном режиме, ибо я уверен, что 8 из 10 автоматом кликнут на удаление, а потом будут спрашивать на форуме как восстановить удаленное. Да и как показывает практика, компонент либо нравится сразу и надолго, либо не нравится и его удаляют в течении суток, и тогда в таблицах нет данных, а пустые таблицы есть не просят.
*

slogic

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
... в обработчике установщика делаю необходимые обновления структуры
Кстати, я вначале пытался сделать изменение структуры с пом. тэга <sql>, полагая что ALTER TABLE IGNORE заткнет ошибки, в случае если поля уже есть, которые я хочу вставить. Оказывается, что IGNORE влияет на другое. И тоже пришлось перемещать код по изменению структуры в обработчик, потому что любая ошибка в <sql> прерывает установку. Жаль, что Джумловцы не поддержали атрибут у тэга "sql", например "silent=1", было бы очень элегантное решение.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Жаль, что Джумловцы не поддержали атрибут у тэга "sql", например "silent=1", было бы очень элегантное решение.
ну сделай реализацию такого функционала применимо к Joomla 1.6 и предложи разработчикам в виде патча - есть шанс, что включат. В 1.5 уже ничего нового добавлять не будут 100%...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Автоматическое обновление модуля. Реально?

Автор mr.shusty

Ответов: 23
Просмотров: 4210
Последний ответ 25.06.2014, 00:27:24
от fsv
Требуется создание новых компонентов и модернизация существующих

Автор t-a-p

Ответов: 0
Просмотров: 1183
Последний ответ 25.05.2014, 12:56:22
от t-a-p
Обновления собственных компонентов

Автор Keanor

Ответов: 6
Просмотров: 1798
Последний ответ 09.01.2012, 15:42:17
от Keanor
Разработка компонентов для Joomla 1.5 (функциональность admin-панели)

Автор klubnichkaaa

Ответов: 13
Просмотров: 8895
Последний ответ 12.06.2011, 22:21:12
от max.mix
[how to] Как использовать группы пользователе CB в написании своих компонентов

Автор nonick

Ответов: 1
Просмотров: 2156
Последний ответ 15.07.2010, 02:33:48
от nonick