Руководтсво администратора/разработчика

Документация

Проектирование персональных страниц

Контекст выполнения страницы/блока


Контекст данных

При обращении к странице происходит ее HTML-генерация (сборка страницы) с использование полученных из запросов данных, а также ряда системных переменных.

На самом деле, контекст - это всего лишь структура данных с заполененными полями, а именно: (точка означает обращение к корню контекста -  самой структуре)

  • .Data - структура, содержащая данные запроса/ов
    • для единичного запроса (на странице используется один запрос) данных находятся по адресу .Data.default.Data
    • для нескольких запросов (на странице используются несколько запросов) данные будут находится по адресам .Data.Название_запроса_указанного_в_конфигурации.Data
  • .Configuration - объект конфигурации текущего модуля (с обработанными @-функциями в рамках текущего контекста данных) (см. Конфигурации)
  • .ConfigurationRaw - объект конфигурации текущего модуля без обрабтки указанных в конфигурации @-функций (см. Конфигурации)
  • .Page - объект текущей страницы
  • .Metric - код метрики, указанной в поле "Метрика" в настройках приложения
  • .Value.Host - адрес сайта
    .Value.Path - путь текущей страницы
    .Value.Prefix -путь к файлам шаблона, относительно корня
    .Value.Domain - добавочный путь относительно адреса сайта (Например, ru/ru)
    .Value.CDN - путь размещения стилей и скриптов шаблона
    .Value.URL - параметры из адресной строки (после ?)
    .Value.Rand - случайное 6-ти значное число
    .Value.Referer - адрес предыдущей страницы
    .Value.RequestURI - адрес страницы
    .Value.Request - объект запроса (используется в ф-ции dogparse)
    .Value.Profile - объект сессии текущего пользователя.

Подробное описание

$.Value.Profile - Представляет собой объект со следующими полями:

  •     Hash (тип: string) - случайное число для сгенерированной страницы
  •     Email (тип: string) - эл.адрес пользователя
  •     Uid (тип: string) - идентификатор пользователя
  •     First_name (тип: string) - имя
  •     Last_name (тип: string) - фамилия
  •     Photo (тип: string) - аватара
  •     Age (тип: string) - возраст
  •     City (тип: string) - город
  •     Country (тип: string) - страна
  •     Status (тип: string) - поля Status в профиле (иногда необходимо для доп.фильтрации)
  •     Raw - массив объектов (тип: Data) пользователя
  •     Tables - массив объектов (тип: Data) доступных пользователю таблиц
  •     Roles - массив объектов (тип: Data) ролей пользователя
  •     Homepage (тип: string) - домашняя страница в Studio
  •     Maket (тип: string) - тип макета (горизонтальный/вертикальный)
  •     UpdateFlag (тип: bool) - доступный обновления
  •     UpdateData - массив объектов (тип: Data) доступных для обновления
  •     CurrentRole - объект (тип: Data) текущей роли
  •     CurrentProfile - объкт (тип: Data) текущего профиля
  •     Navigator - массив указателей на элементы навигатора Studio