Files
progcode/web/public/assets/editorial/2018/bitrix-legacy-safe-seam-2018.svg
T
huncode c72a72b8f3
Build and deploy / deploy (push) Successful in 14s
revise late 2018 editorial articles
2026-07-31 10:09:53 +03:00

38 lines
3.7 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 760 880" role="img" aria-labelledby="title desc">
<title id="title">Защищённый шов вокруг обновления CODE в Bitrix</title>
<desc id="desc">Вертикальная карта legacy-модуля: форма передаёт ID и CODE в выделенный CodeWriter. Он проверяет инфоблок, обновляет одно поле и читает элемент обратно. Шаблон и интеграция остаются за границей шва.</desc>
<defs>
<linearGradient id="bg" x1="0" x2="1" y1="0" y2="1"><stop stop-color="#111827"/><stop offset="1" stop-color="#172554"/></linearGradient>
<filter id="shadow" x="-20%" y="-20%" width="140%" height="140%"><feDropShadow dx="0" dy="8" stdDeviation="9" flood-color="#020617" flood-opacity=".36"/></filter>
<marker id="arrow" markerWidth="12" markerHeight="12" refX="6" refY="10" orient="auto"><path d="M0,0 L12,0 L6,12 Z" fill="#7dd3fc"/></marker>
</defs>
<rect width="760" height="880" rx="28" fill="url(#bg)"/>
<g font-family="Inter,Arial,sans-serif">
<text x="52" y="62" fill="#f8fafc" font-size="29" font-weight="700">Маленький шов: только CODE</text>
<text x="52" y="93" fill="#94a3b8" font-size="20">Форма и интеграция не входят в одну функцию.</text>
<rect x="52" y="138" width="656" height="524" rx="26" fill="#0b1220" stroke="#38bdf8" stroke-width="2" stroke-dasharray="9 9"/>
<text x="78" y="174" fill="#7dd3fc" font-size="20" font-weight="700">ЗАЩИЩЁННЫЙ ШОВ</text>
<g filter="url(#shadow)">
<rect x="198" y="206" width="364" height="100" rx="18" fill="#1e293b" stroke="#475569"/>
<rect x="138" y="374" width="484" height="122" rx="18" fill="#0f3a53" stroke="#38bdf8"/>
<rect x="198" y="560" width="364" height="70" rx="18" fill="#172554" stroke="#818cf8"/>
</g>
<text x="380" y="245" text-anchor="middle" fill="#f8fafc" font-size="22" font-weight="700">Вход формы</text>
<text x="380" y="277" text-anchor="middle" fill="#cbd5e1" font-size="22">ID + новый CODE</text>
<text x="380" y="416" text-anchor="middle" fill="#f8fafc" font-size="23" font-weight="700">ProductCodeWriter</text>
<text x="380" y="447" text-anchor="middle" fill="#dbeafe" font-size="20">проверка инфоблока · Update(CODE)</text>
<text x="380" y="473" text-anchor="middle" fill="#dbeafe" font-size="20">повторная выборка</text>
<text x="380" y="603" text-anchor="middle" fill="#f8fafc" font-size="20" font-weight="700">Отчёт: changed / ошибка</text>
<path d="M380 306 V374" fill="none" stroke="#7dd3fc" stroke-width="4" marker-end="url(#arrow)"/>
<path d="M380 496 V560" fill="none" stroke="#7dd3fc" stroke-width="4" marker-end="url(#arrow)"/>
<rect x="52" y="714" width="294" height="108" rx="18" fill="#1e293b" stroke="#475569"/>
<rect x="414" y="714" width="294" height="108" rx="18" fill="#1e293b" stroke="#475569"/>
<text x="80" y="756" fill="#f8fafc" font-size="20" font-weight="700">Шаблон</text>
<text x="80" y="787" fill="#cbd5e1" font-size="20">вывод результата</text>
<text x="442" y="756" fill="#f8fafc" font-size="20" font-weight="700">Интеграция</text>
<text x="442" y="787" fill="#cbd5e1" font-size="20">следующий шаг</text>
<path d="M286 662 C250 679, 214 685, 200 714" fill="none" stroke="#64748b" stroke-width="3" marker-end="url(#arrow)"/>
<path d="M474 662 C510 679, 546 685, 560 714" fill="none" stroke="#64748b" stroke-width="3" marker-end="url(#arrow)"/>
</g>
</svg>