Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Saitistika 4.0.Руководство разработчика.2005

.pdf
Скачиваний:
11
Добавлен:
23.08.2013
Размер:
3.22 Mб
Скачать

Данные о документе

Предназначение: техническая документация Последнее изменение: 14 апреля 2005 г.

Конфиденциальность

Поставляется в составе дистрибутива

Saitistika 4.0.

Руководство разработчика.

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

1 из 1

 

 

Оглавление

 

Оглавление......................................................................................................................................................................................

2

Общие положения...........................................................................................................................................................................

4

Архитектура системы .....................................................................................................................................................................

5

Базовые понятия, уровни ............................................................................................................................................................

5

Работа нескольких копий системы .............................................................................................................................................

7

Доменная структура....................................................................................................................................................................

8

Директорно-файловая структура................................................................................................................................................

9

Ключевые сущности системы...................................................................................................................................................

11

Объектная модель .....................................................................................................................................................................

13

База данных...................................................................................................................................................................................

18

Общие принципы ......................................................................................................................................................................

18

Бэкофис.........................................................................................................................................................................................

19

Общие принципы ......................................................................................................................................................................

19

Интерфейс.................................................................................................................................................................................

21

Фронтофис ....................................................................................................................................................................................

32

Общие принципы ......................................................................................................................................................................

32

Структура HTML ......................................................................................................................................................................

34

Структура CSS ..........................................................................................................................................................................

37

Навигация..................................................................................................................................................................................

39

Быстрое освоение системы...........................................................................................................................................................

41

Создание нового фронтофиса...................................................................................................................................................

42

Разработка нового модуля ........................................................................................................................................................

61

Перевод фронтофиса на другие языки .....................................................................................................................................

62

Подсистемы ..................................................................................................................................................................................

64

Подсистема управления структурой.........................................................................................................................................

64

Подсистема управления шаблонами ........................................................................................................................................

70

Подсистема управления пользователями .................................................................................................................................

73

Подсистема регистрации и авторизации ..................................................................................................................................

77

Подсистема персонализации ....................................................................................................................................................

80

Подсистема прав доступа .........................................................................................................................................................

82

Подсистема безопасности.........................................................................................................................................................

85

Подсистема журналирования ...................................................................................................................................................

88

Подсистема статистики.............................................................................................................................................................

95

Подсистема кэширования .........................................................................................................................................................

98

Подсистема обработки ошибок ...............................................................................................................................................

100

Подсистема поиска ..................................................................................................................................................................

101

Подсистема конфигурирования...............................................................................................................................................

103

Подсистема Workflow..............................................................................................................................................................

108

Подсистема быстрого редактирования....................................................................................................................................

112

Контентные модули.....................................................................................................................................................................

115

Новости ....................................................................................................................................................................................

115

Контент ....................................................................................................................................................................................

119

Буклет.......................................................................................................................................................................................

125

Интерактивные модули ...............................................................................................................................................................

127

Голосования .............................................................................................................................................................................

127

Форумы ....................................................................................................................................................................................

130

Чаты .........................................................................................................................................................................................

133

Тесты........................................................................................................................................................................................

138

Формы ......................................................................................................................................................................................

142

Списки рассылки......................................................................................................................................................................

147

Баннерная система ...................................................................................................................................................................

155

e-Business .....................................................................................................................................................................................

161

Задачи.......................................................................................................................................................................................

161

Проекты....................................................................................................................................................................................

167

Магазин....................................................................................................................................................................................

170

Классы, функции и хранимые процедуры...................................................................................................................................

180

Общие правила по работе с классами и функциями ...............................................................................................................

180

Справочник классов.................................................................................................................................................................

181

Справочник функций...............................................................................................................................................................

253

Справочник хранимых процедур.............................................................................................................................................

261

Системные компоненты и внешние модули ...............................................................................................................................

267

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

2 из 2

Визуальный редактор...............................................................................................................................................................

267

Загрузчик изображений для визуального редактора...............................................................................................................

268

Программа установки ..............................................................................................................................................................

269

Обработчик MAE .....................................................................................................................................................................

272

Загрузчик мультипартовых форм ............................................................................................................................................

273

Компонент отображения картинок из базы данных................................................................................................................

277

Компонент интеграции с Windows Task Scheduler..................................................................................................................

278

ISAPI-расширение для доступа к файлам................................................................................................................................

281

Несистематизированные наработки ............................................................................................................................................

283

Импорт данных ........................................................................................................................................................................

284

Глобальная замена контента в БД ...........................................................................................................................................

296

Процедуры ...............................................................................................................................................................................

298

Функции и приемы ..................................................................................................................................................................

300

Глоссарий.....................................................................................................................................................................................

302

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

3 из 3

 

 

Общие положения

Руководство предназначено как для разработчиков компании-производителя Saitistika, так и для конечных Покупателей системы. Однако принцип использования документа для этих категорий пользователей может отличаться на основании «Лицензионного соглашения» к продукту Saitistika.

Стиль и сложность описания рассчитаны на программиста с опытом разработки веб-систем на платформе Windows/IIS/SQL не менее 1 года.

Для более наглядного описания в некоторых местах используется вымышленный проект «Project». Поэтому, применять названия путей, переменных и т.п. следует с соответствующими исправлениями относительно Вашего проекта.

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

4 из 4

 

 

Архитектура системы

Архитектура системы описывает общие принципы работы и демонстрирует основные компоненты и составляющие системы.

Базовые понятия, уровни

Сайты, работающие на Saitistika состоят из трех взаимосвязанных частей:

1.База Данных (БД, Database)

2.Бэкофис (Интерфейс управления, BackOffice)

3.Фронтофис (Внешнее представление веб-системы, FrontOffice)

Рисунок 1. Уровни системы

База Данных

Для разработчика ключевым элементом в этой схеме является база данных. В ней сходятся все запросы и потоки данных со всех составляющих системы. В базе данных хранится структура и материалы сайта, а также служебная информация, необходимая для работы системы. Информация попадает в БД через бэкофис (а также частично через фронтофис), там она накапливается и обрабатывается, и затем при помощи фронтофиса доставляется пользователям. База данных единая для всех веб-сайтов, работающих под управлением одной копии Saitistika.

Бэкофис

Основной инструмент администраторов и операторов всех типов веб-системы. Представляет собой веб-сайт, доступ к которому осуществляется через браузер Internet Explorer. Все операции, которые осуществляются через бэкофис, визуализированы в виде веб-форм на веб-страницах. Бэкофис, как правило, является неизменным как по своей структуре и функционалу, так и по внешнему виду. Эволюционирует от версии к версии, не претерпевая при этом коренных изменений.

Основные функции бэкофиса:

1.Изменения структуры или информационного наполнения сайта

2.Работа с темами (шаблонами)

3.Модерирование интерактивов всех типов

4.Управление пользователями

Бэкофис по результатам действий пользователей:

1.Изменения в БД

2.Изменения в файловой структуре.

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

5 из 5

 

 

В файловой структуре хранятся большие объемы информации, которые с различных точек зрения (исторически сложившихся традиций, совместимости, производительности и т.п.) разумнее хранить в виде файлов. К такой информации относятся изображения, файлы, присоединенные к объектам системы, файлы, загруженные пользователями фронтофиса, и т.п.

Фронтофис

По сути своей представляет внешнее представление веб-сайта, предназначенное для целевой аудитории пользователей. Под управлением одной копии системы может работать несколько веб-сайтов (несколько фронтофисов на один бэкофис), каждый из которых должен располагаться на отдельном домене. Каждый веб-сайт работает с одной и той же БД, но со своим набором шаблонов, которые обеспечивают вывод структуры и содержания в определенном дизайне, с уникальной логикой отображения и взаимодействия страниц и т.п.

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

6 из 6

 

 

Работа нескольких копий системы

На одной физической машине могут присутствовать несколько копий Saitistika (или несколько ее фрагментов). При этом соответствующие уровни (например, «База данных») могут работать в рамках одной копии сервера (MS SQL Server).

Рисунок 2. Работа нескольких копий системы

Веб-сайты и базы данных разных копий Saitistika с точки зрения IIS и SQL Server между собой равнозначны и не зависят друг от друга.

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

7 из 7

 

 

Доменная структура

Домены системы делятся на 3 группы:

1.Домен бэкофиса (всегда 1)

2.Домены фронтофисов (1 или несколько)

3.Домены отладочных версий сайтов (по 1 на каждый домен фронтофиса)

Рисунок 3. Схема логической организации доменов

Названия доменов внутри каждой группы и между группами никак не зависят друг от друга. Использование приставки «satistika.» к началу домена для обозначения фронтофиса является лишь рекомендацией для общей унификации, но не требованием.

Технически каждый домен может иметь несколько алиасов, но при организации связей между доменами (например, генерации ссылки на страницы фронтофисов из бэкофиса) для каждого сервера используется 1 конкретный домен.

На практике домены отладочных версий фронтофисов используются редко (см. описание «Подсистемы управления шаблонами»).

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

8 из 8

 

 

Директорно-файловая структура

Для каждого домена (как бэкофиса, так и фронтофисов) существует своя корневая физическая директория. Эти директории не являются вложенными.

Рисунок 4. Схема структуры файлов системы

Описание

1.Значительная часть файлов является общей (например, картинки одного материала могут выводиться на нескольких доменах, если материал опубликован сразу на нескольких фронтофисах)

2.На практике 90-99% общего объема файлов сосредоточена в «Общих файлах»

3.Для того, чтобы общие файлы не храниться по несколько раз, все они хранятся только в директорной структуре бэкофиса, а на фронтофисах средствами IIS созданы виртуальные директории, ссылающиеся на соответствующие директории бэкофиса.

Таким образом, например, одна и та же физическая картинка материала для системы из N фронтофисов имеет (N+1) http- адресов:

http://saitistika.project.ru/common/data/pub/images/articles/1456/122.gif http://www.project.ru/common/data/pub/images/articles/1456/122.gif http://www.project2.ru/common/data/pub/images/articles/1456/122.gif

Описание директорий

Бэкофис

 

Директория

 

Описание

 

 

/

 

Корневая папка бэкофиса.

 

 

/aspscripts/

 

ASP-скрипты и XSL-шаблоны интерфейса управления функциональностями

 

 

 

Saitistika.

 

 

/common/

 

Общая директория для бэкофиса и фронтофисов. Подробное описание см. ниже.

 

/auth/

 

Файлы NTLM аутентификации.

 

 

/config/

 

Общие конфигурационные файлы.

 

 

/data/

 

Данные, которые управляются из бэкофиса и используются во фронтофисе.

 

/PreviewThemes/

 

Темы для предварительного просмотра.

 

 

/pub/

 

Данные, которые должны возвращаться при непосредственном запросе от

 

 

 

браузера. Например, баннеры. Там же хранятся файлы, загружаемые

 

 

 

пользователем.

 

 

/Themes/

 

Темы (шаблоны).

 

 

 

 

 

 

 

 

Copyright © 2005 Individ company

Страница

 

 

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

9 из 9

/include/

 

 

Файлы с общими функциями.

/scripts/

 

 

Общие скрипты для всех фронтофисов

/Configurator/

 

 

Системная функциональность «Конфигуратор».

/errors/

 

 

Страницы ошибок, настраиваемые в IIS

/images/

 

 

Здесь хранятся картинки для «Визуального Редактора».

/include/

 

 

Файлы с общими функциями бэкофиса.

/ISAPI/

 

 

ISAPI-расширения сайта.

/Pictures/

 

 

Картинки. Исключение из общего правила. Исторически сложилось, что они

 

 

 

хранятся здесь.

/Scripts/

 

 

MAE-скрипты для интерфейса.

/vbscripts/

 

 

Скрипты для функциональности «Scheduler».

/VR/

 

 

Функциональность «Визуальный Редактор».

/w3c/

 

 

Файлы, обеспечивающие совместимость сайта со стандартом P3P

Фронтофис - физические директории

Директория

Описание

/

Корневая папка фронтофиса

/errors/

Страницы ошибок, настраиваемые в IIS

/images/

Стандартная директория для картинок (изображения дизайна, шаблонов и т.п.). Изображения

 

объектов системы хранятся в другом месте - /common/data/pub/

Фронтофис – виртуальные директории

Директория

 

 

Описание

/common/

 

 

Линкуется на /common/ бэкофиса

 

 

 

Через нее запрашиваются все файлы объектов системы, выводимые на

 

 

 

фронтофисе

/files/

 

 

Линкуется на /common/data/pub/files/ бэкофиса

 

 

 

Сокращенный путь для общих неисполняемых файлов на всех фронтофисах

/pubimages/

 

 

Ассоциируется с ISAPI-расширением.

 

 

 

Через нее выводятся изображения, хранящиеся в базе данных

/Themes/

 

 

Линкуется на /common/data/Themes бэкофиса

 

 

 

Через нее осуществляется подключение скриптов фронтофиса

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

10 из 10