Формулировка проблемы: для упрощения работы методологов ARTA Synergy необходимо заменить интерфейс конфигуратора на основе IDE Codiad.
Решение: в виду большого объема поставленной задачи она будет разделена на несколько логических частей. Данная задача описывает отделение GUI от server-side.
Новый конфигуратор должен быть реализован на основе IDE Codiad. При этом необходимо избавиться от всего backend-а (написанного на PHP) следующим образом:
Страница аутентификации: вставить заглушку, пускающую в приложение с любым логином и паролем;
Поиск в дереве: убрать поле поиска и иконку (соответственно, необходимость в отправке поискового запроса и обработки его результатов отпадает);
Поиск по содержимому: заменить иконку (взять иконку поиска в дереве). Вместо содержимого диалога поиска вставить заглушку;
Панель проектов (нижний левый угол): убрать полностью;
Дерево навигатора: вместо отображения структуры папки проекта на сервере необходимо отображать содержимое JSON-заглушки, в которой могут быть узлы четырёх видов:
раздел (например, «Записи») -
понятие (например, «Реестры») -
сущность (например, «Реестр о командировании») -
категория свойств системы (например, «Региональные настройки») -
Замечание
В «разделы» могут входить понятия и категории свойств системы, а «сущности» - только в «понятия».
Открытие файла (по двойному клику в дереве навигатора): вместо содержимого файла во вкладке нужно отобразить произвольный текст в формате JSON (должно работать только по двойному клику по сущностям и категориям свойств системы);
Правая панель: убрать разделы «Plugins», «Administration», «System» и пункт «Help». Вместо «Save» и «Save all» вставить заглушки, всегда возвращающие успешный результат; в содержимое диалогов «Settings» и «Password» вставить заглушки;
Нижняя панель: использовать заглушку для диалога «Settings».
Допускается использовать заглушки в других местах, если этого требует избавление от серверного кода.
Все использованные заглушки в исходном коде должна предварять строка
комментария со словом STUB
и описанием заглушки.
В итоге проект не должен содержать никакого серверного кода.