/
Dmitry-F
/
cbt_tool
Обзор
Документация
Войти
/
Dmitry-F
/
cbt_tool
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
bin/form_audit
95 строк
4 KB
Dmitriy-Filatov
🧹 ФИНАЛЬНАЯ СТЕРИЛИЗАЦИЯ ИНФРАСТРУКТУРЫ
17 мар 2026, 10:59
17 мар 2026, 10:59
d3fec0b
Код
Авторство
О чём код?
#!/bin/bash echo "=========================================" echo "🔍 АУДИТ FORM_CONTROLLER (РАЗОВЫЙ)" echo "=========================================" echo "" REPORT_FILE="/tmp/form_audit.txt" # 1. Проверка файла контроллера echo "📁 1. Файл form_controller.js" > "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" if [ -f "app/javascript/controllers/form_controller.js" ]; then echo "✅ Файл существует" >> "$REPORT_FILE" echo " Размер: $(wc -l < app/javascript/controllers/form_controller.js | tr -d ' ') строк" >> "$REPORT_FILE" echo "" >> "$REPORT_FILE" echo " Первые 10 строк:" >> "$REPORT_FILE" head -10 app/javascript/controllers/form_controller.js | sed 's/^/ /' >> "$REPORT_FILE" else echo "❌ Файл НЕ НАЙДЕН" >> "$REPORT_FILE" fi echo "" >> "$REPORT_FILE" # 2. Проверка регистрации в index.js echo "📁 2. Регистрация в index.js" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" if grep -q "form_controller" app/javascript/controllers/index.js; then echo "✅ Контроллер упоминается в index.js" >> "$REPORT_FILE" grep -n "form_controller" app/javascript/controllers/index.js | sed 's/^/ /' >> "$REPORT_FILE" else echo "⚠️ Контроллер НЕ упоминается в index.js (но может регистрироваться автоматически)" >> "$REPORT_FILE" fi echo "" >> "$REPORT_FILE" # 3. Проверка наличия в importmap echo "📁 3. Importmap" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" if grep -q "controllers" config/importmap.rb; then echo "✅ Контроллеры запинены в importmap" >> "$REPORT_FILE" else echo "❌ Контроллеры НЕ запинены" >> "$REPORT_FILE" fi echo "" >> "$REPORT_FILE" # 4. Проверка HTML-атрибутов в форме echo "📁 4. Атрибуты в форме" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" FORM_FILE="engines/smer_diary/app/views/smer_diary/entries/_form.html.erb" if [ -f "$FORM_FILE" ]; then if grep -q "data-controller=\"form\"" "$FORM_FILE"; then echo "✅ data-controller=\"form\" есть" >> "$REPORT_FILE" else echo "❌ data-controller=\"form\" ОТСУТСТВУЕТ" >> "$REPORT_FILE" fi if grep -q "data-form-target=\"toggleButton\"" "$FORM_FILE"; then echo "✅ data-form-target=\"toggleButton\" есть" >> "$REPORT_FILE" else echo "❌ data-form-target=\"toggleButton\" ОТСУТСТВУЕТ" >> "$REPORT_FILE" fi if grep -q "data-form-target=\"bekFields\"" "$FORM_FILE"; then echo "✅ data-form-target=\"bekFields\" есть" >> "$REPORT_FILE" else echo "❌ data-form-target=\"bekFields\" ОТСУТСТВУЕТ" >> "$REPORT_FILE" fi else echo "❌ Файл формы не найден" >> "$REPORT_FILE" fi echo "" >> "$REPORT_FILE" # 5. Инструкция по ручной проверке echo "📁 5. Инструкция по ручной проверке" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" echo "1. Открой браузер (F12 → Console)" >> "$REPORT_FILE" echo "2. Обнови страницу с формой СМЭР" >> "$REPORT_FILE" echo "3. Найди строку: ✅ [Stimulus] Registered: form (controllers/form_controller)" >> "$REPORT_FILE" echo "4. Если её нет — контроллер не зарегистрирован" >> "$REPORT_FILE" echo "5. Нажми кнопку 'Развернуть' — должна появиться ошибка в консоли" >> "$REPORT_FILE" cat "$REPORT_FILE" | pbcopy echo "" echo "✅ АУДИТ ВЫПОЛНЕН. Результат в буфере обмена." echo "" grep -E "✅|❌|⚠️" "$REPORT_FILE" | head -10 echo ""