НАЧАЛО >> Меню сайта >> Назначение Menu📄 Скачать в DOCX
Menu является инфраструктурным модулем навигации. Он читает записи страниц из базы ИРБИС 128, строит иерархию пунктов, проверяет право VIEW, признак публикации и формирует ссылки для шаблонов.
Основные элементы:
LoadMenu собирает верхний уровень и один вложенный уровень меню по идентификатору страницы;RebuildGlobalMenu перестраивает глобальное дерево меню и сохраняет его во флаге MenuGlobalRebuild;RebuildGlobal запускает перестроение через очередь;Show выводит пользовательское меню через шаблон, используя кэш во Flags;TrunkMenuToUser удаляет из дерева пункты, недоступные текущему пользователю;IsShowMenuItem проверяет доступность отдельного пункта;SyncMaterializedItems публикует portal entrypoint и navigation items в штатные записи PAGE через dry-run/apply;ExplainMaterializedItemVisibility объясняет видимость materialized-пункта без раскрытия скрытого target.Ссылки строятся по полю 1: обычная ссылка ведет на ?id=<page>, включаемый контент может браться из SID-файла записи. Для защиты имени кэша используется нормализация текущего HTTP-хоста.
Materialized-навигация не делает Menu владельцем TaskPortal, WorkflowView или WorkflowScreen: эти модули поставляют target metadata, а Menu хранит только PAGE-пункт, порядок, кэш и безопасную диагностику.