Компонент "Мои патчи" v.1.0.0

+22
3.84K
Представляю широкой публике свою первую разработку.
Компонент "Мои патчи" v.1.0.0
Установка стандартным (для ICMS2) способом.

ВНИМАНИЕ!!!

Disclaimer.
Данный компонент имеет деструктивные функции!
То есть компонент изменяет содержимое файлов InstantCMS. Впрочем для этого компонент и писался. joke
Поэтому использование компонента подразумевает использование на свой страх и риск.
Мною были предприняты всевозможные защиты "от дурака", но идеального кода не бывает.
Поэтому пользуйтесь данным компонентом с осторожностью!
А на живых сайта — с двойной осторожностью.
Как говорится, автор никакой ответственности за причиненные убытки не несет. glasses

Небольшая инструкция
1. Создаете патч, описывая его назначение.
2. Добавляете в созданный патч файлы которые необходимо изменить, с указанием что на что нужно поменять.
В данной версии возможно поменять код только в одном месте. То есть, если заменяемый код встретится несколько раз в файле — то сработает "ловушка" и будет выведено предупреждение. В дальнейшем, возможно, будет разработан механизм для определения количества мест для замены.
3. После внесения всех файлов — для применения всех "включенных" патчей необходимо нажать клавишу "Применить". Применение патчей каждый раз производится заново.
4. Как патчи так и файлы в патчах можно включать/выключать. Понятное дело, что выключенные патчи/файлы в процессе патчения участия не принимают.
5. Поле "порядок" определяет порядок применения патчей. То есть сначала все файлы для патчения сортируются по порядку патчей и уже в самом патче по порядку файлов.
6. Для восстановление системы в первоначальное состояние используйте клавишу "Восстановить". При этом все измененные файлы возвращаются в исходное состояние, а все патчи выключаются.
7. Если при редактировании патча буде удален файл, который больше нигде (имеется ввиду в наборах других патчей) не используется, то данный файл восстанавливается в своё первоначальное состояние автоматически (без использования клавиши "Восстановить").
8. Если после применения патчей что-то пошло не так и Вы не можете восстановить систему клавишей "Восстановить", то зайдите по фтп на свой сервер и просто переименуйте сохраненные оригиналы патченных файлов (имя_патченного_файла.*.original) в его первоначальное имя. (убрав приставку .original)


1. Добавляет три новых стиля. Два из них для индикации применения патча/файлов (применен или есть ошибки). Один стиль для иконки в админ панели
2. Изменяется схема обработки массива с параметром "flag" в grid-шаблонах, только для компонента "mypatch"
3. Создается иконка компонента в админ панели.

1. Возможность не изменять, а (при необходимости) создавать новые файлы.
2. Выгрузка/загрузка патчей из текстовых (или *.cvs ?) файлов, для более удобного обмена патчами, чтобы не вбивать все ручками.
3. Обработка более одного фрагмента заменяемого кода в одном файле. Сейчас это тоже можно сделать — но немного извратным способом.
4. Включение/отключение комментариев в изменяемом файле. Сейчас место где производится замена по умолчанию обозначается так:
Тема на форуме о ходе работы над компонентом.

Прошу строго не судить. Здравая критика приветствуется.
C удовольствием выслушаю все замечания и пожелания zst

Приятных всем хаков! dance
+2
Raiden Raiden 9 лет назад #
Спасибо за проделанную работу!
""
0
Dost Dost 9 лет назад #
Интересно, посмотрим)
0
Май Май 9 лет назад #
Круто!
А как устанавливать стандартным для двойки способом? Я что-то пропустил видимо, в документации не нашел информацию об этом.
Кстати, наверное стоит разработчикам в свои компоненты класть ридми по установке, это нужно для новичков и невежественных крестьян вроде меня )
0
Скорпион Скорпион 9 лет назад #
Уважаемый ну от Вас слышать такие вопросы...... scratch Вы же вроде (по моим наблюдениям) не новичек в движке glasses
Стандартный способ описан в видео уроке по созданию дистрибутива компоненты фотобаттл,
Короче....в админке топаете в раздел "компоненты". Там вверхнем левом углу есть "установить пакет дополнения. Ну а дальше должно быть интиутивно понятно.
0
Май Май 9 лет назад #
Дак я ж просто пользователь системы, не разраб, поэтому видео для разрабов не смотрю. Спасибо.
0
Май Май 9 лет назад #
А еще дурацкий вопрос, а как на локале устанавливать, на денвер, там же нет ftp. Ну вот не устанавливал я еще ни разу компоненты на двойку zst
0
Скорпион Скорпион 9 лет назад #
Ну тогда как обычно :)
Распаковываем архив - и все из папки pakage переносим в систему.
Переносим СОДЕРЖИМОЕ папки - а не саму папку!
НИ ОДИН ФАЙЛ при этом заменен не будет - там усе свое.
Потом нужно открыть файл install.sql - обязательно ЗАМЕНИТЬ cms_ у имен таблиц на префикс используемый в вашей базе движка.
По умолчанию - это cms_
Именно так......с подчеркиванием.
После это копируете исправленный код в phpMyAdmin в SQL запрос и выполняете его.
Если запрос выполнен был без ошибок - можете заходить в админку - в компоненты и там должен появится компонент "Мои патчи".
Ну а дальше пробуйте.
+2
Скорпион Скорпион 9 лет назад #
Блин....кстати сейчас написал и понял - Вам увы не получится им воспользоватся :(
Так как компоненту необходим доступ к FTP.
А раз его нету - то он для Вас бесполезен к сожалению.

Я тоже долгое время сидел на денвере...но пора "взрослеть" - гляньте в сторону OpenServer
Мои рекомендации...
0
Andrey Andrey 9 лет назад #
в openserver все предусмотрено, пользуюсь давно и полностью доволен
0
Raiden Raiden 9 лет назад #
Скорпион , Спасибо за совет, пожалуй тоже перейду на опенсервер)
0
Май Май 9 лет назад #
Ок, спасибо
0
SpideR SpideR 9 лет назад #
Молодец, Скорпион!

Просил, просил, предлагал и в итоге сделал сам.

Желаю развития вашему модулю, а вам удачи в ваших начинаниях.

Спасибо!
+1
Скорпион Скорпион 9 лет назад #
Спасибо за спасибо :)
Очень приятно слышать такое. Значит не зря старался dance
0
PolarOne PolarOne 9 лет назад #
мне показалось или чем-то напоминает vqmod на OC движке шопа? Не вчитывался, мб и ошибаюсь.

Еще от автора

Патч (исправление ошибки установки компонентов по FTP) для компонента "Мои патчи"
Моё видение причины возникающей ошибки при установки компонентов через FTP и исправление данной ошибки в виде патча для моего компонента.
Изменение реквизитов главного администратора (ICMS2)
Да простят меня разработчики, но в связи со своей забывчивостью, периодически мне необходимо "сбрасывать" пароли администратора на своих сай
Патч (включение DIV + отключение очистки) для компонента "Мои патчи"
Этим небольшим патчем я открываю новую рубрику у себя в блоге, в котором буду собирать патч-файлы.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.