Всем привет!Да,предупреждаю всех,конвертация небезопасна для кэша,т.к. не всегда удается однозначно сделать преобразования кэша. Сначала просмотрите внимательно логи преобразований,и если все так,как хотели,только после этого нажимайте кнопку Move.
Дело в том, что в списке "Преобразование URL" у меня (и думаю у многих) есть старое проверенное правило, которое уже больше двух лет работает исправно:
#5#~#True#~#(handycache\.ru/component/option,com_smf/Itemid,\d+/topic,\d+)(\.\d+)?(;all)?[./].*#~#\1\2\3#~#False#~#True
Я для себя исправил на такое правило:
#5#~#True#~#(handycache\.ru/component/option,com_smf/Itemid,\d+/topic,\d+)(\.\d+)?(;all)?.*#~#\1\2\3#~#False#~#True
Нормально сохраняются с инета,и при конвертации не портит кэш
Добавлено: 25 Октября 2009, 15:11:06
Думаю, лучше сделать в MoveRenameFile свой отдельный список правил в формате RegExp для преобразования путей к файлам (а не URL), по которым будет работать расширение.
Пользователям придется самим изобретать правила преобразования для файлов,соответствующий добавлению нового правила преобразования УРЛ.Мне кажется, УРЛ -это основа,потому что запросы идут от браузера.
Тогда можно будет вообще уйти от промежуточного восстановления URL функцией CacheToURL_098b1(str) и неправильного повторного применения правил списка "Преобразование URL".
Зато появится функция по загрузке файла и воздействию регулярных выражений на имя файла.
Думаю, никакой сложности тут для пользователей не возникнет.
А мне хотелось еще так. Загрузил новый список правил правил и конвертнул кэш.
Можно на всякий случай обезопасить,типа откат.
Вот примерно код: везде вместо строки os.remove(XXX) заменить на os.rename(XXX,XXX..'#del')
И если все ОК,то в ТоталКоммандир найти эти файлы и удалить.
Думаю,лучше тщательно прорабатывать правила для Преобразования УРЛ,чтобы по второму кругу не портил кэш
З.Ы: Но над твоим предложением подумаю.