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

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

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

34.IsDelegate(UserID) – является ли пользователь делегатом

35.Load(UserID, Lower, Upper, ProjectID) – загрузить список задач

CTaskListDecoration

Внешнее представление списка задач во фронтофисе.

Методы

1.Load(UserID, First, Last, ProjectID, Owners, Types, Sort, Deleted) – загрузить список задач (с учетом фильтров)

2.Write(Object) – вывести список задач

CTasksList (БО)

Предназначение

Предназначен для показа списка задач, удолетворяющих параметрам и для хранения самих параметров. Основан на процедуре Tasks_List и на классе CXMLDOM.

Подключение

Класс находится в файле «/aspscripts/tasks/CTasksList.asp»

Свойства

1.XML - Экземпляр CXMLDOM

2.User - Кэширует ID пользователя

3.Lower - Нижняя граница для номера найденной задачи (используется для пейджинга)

4.Upper - Верхняя граница для номера найденной задачи (используется для пейджинга)

5.SettingsNode - Кэширует узел, хранящий настройки

6.nCount - Кэширует количество найденых задач

Методы

1.Общие

1.1.SQLS(Str) - Экранирование строки

1.2.AGetRS(SP, ByRef args, ByRef Names) – Загрузка

1.3.DelRS(Name) - удаление ненужного рекордсета

1.4.GetInfo(UserID) - Получение информации

1.5.GetTasks(UserID) - Получение самих задач

1.6.SetParam(name, value) - Установить параметр

1.7.Escape() - Экранирование XML-а

1.8.Output(FileName) - Вывод XML через XSL-шаблон, рекомендуется использовать шаблоны из tasks-templates.xsl для вывода задач.

1.9.Debug() - Стандартный Debug

1.10.Count() - Выводит количество выведенных записей задач

1.11.Total() - Выводит общее количество найденных задач

1.12.Task(I) - Создает экземпляр класса CTask

1.13.UsrTitle(UserID) - Имя Фамилия пользователя

2.Работа с настройками:

2.1.Settings - Список узлов настроек

2.2.ShowSettings(Names) - Устанавливает видимые настройки, и возвращает MAE-код, для вставки в RI. Преобразовавает XML через шаблон tasks-properties.xsl.

2.3.SaveSettings() - Сохранение текущих настроек в базу

2.4.SaveSettingsToSession(UniqueString) - Сохранение текущих настроек в объект Session

2.5.LoadSettingsDefault - Загрузка дефолтных настроек

2.6.LoadSettingsFromBase - Загрузка настроек из базы

2.7.LoadSettingsFromSession(UniqueString) - Загрузка настроек из объекта Session

2.8.LoadSettingsFromPost - Загрузка настроек из поста

Основные рекордсеты, используемые при работе с классом

 

Метод, загружающий рекордсет

Название рекордсета

описание

 

 

(название процедуры)

 

 

 

 

При создании

settings

Рекордсет, для хранения настроек отображения и их значений

 

Task.GetInfo

type

Строка таблицы [ObjectTypes] соответствующая типу Задачи.

 

(процедура Datatypes_GetType)

types

Строки таблицы [ObjectTypes] соответствующая всем

 

 

 

подтипам типа Задачи

 

 

 

 

 

 

 

 

Copyright © 2005 Individ company

Страница

 

 

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

241 из 241

 

users

Список пользователей, которые через Роли связаны с

 

 

Задачами

 

types-status

Связи подтипов со статусами

 

types-workflows

Связи подтипов со сценариями

 

types-fields

Связи подтипов с полями

(процедура

field-variants

Варианты полей типов «чекбоксы», «радиокнопки»,

Object_GetFieldVariants)

 

«ниспадающее меню»

 

field-users

Варианты полей типа «список пользователей»

 

field-folders

Варианты полей типа «список разделов»

 

field-materials

Варианты полей типа «список материалов»

(процедура Tasks_ListWorkflows)

workflows

Список всех сценариев

 

Nodes

Список всех узлов всех сценариев

 

Links

Список всех связей всех сценариев

(процедура Object_List)

projects

Список проектов

 

projects-total

Количество проектов

(процедура

delegated

Список пользователей, делегировавших теаущему

Users_TasksDelegation)

 

 

Task.GetTasks

objects

Список найденых задач (с учетом пейджинга)

(процедура Tasks_List)

total

Общее количество найденных задач

 

process

Список всех процессов которым принадлежат найденные

 

 

задачи

 

storage

Значения конструируемых полей у неудаленных найденных

 

 

задач

 

storage-archive

Значения конструируемых полей у удаленных найденных

 

 

задач

Пример использования

Загружаем общую информацию

Tasks.GetInfo RI.UsrID

Загружаем настройки пользователя

If Not(Tasks.LoadSettingsFromSession("tasks.asp")) Then

If Not(Tasks.LoadSettingsFromBase()) Then

Tasks.LoadSettingsDefault()

End If

End If

Выводим определенные настройки отбражения RI.Heading "", "Параметры отображения"

RI.Write Tasks.ShowSettings(Array("project", "priority", "active", "deleted",_ "executors", "types", "owner", "sort"))

Выборка задач, удовлетворяющих настройкам отображения

Tasks.GetTasks RI.UsrID

‘ Вывод получившихся задач

RI.Heading "", "Текущие задачи (" & Tasks.Total & ")" RI.Write Tasks.Output("tasks.xsl")

CTasksList (ФО)

Предназначен для получения списка задач с заданными настройками, работы с этими настройками и вывода задач. Аналогичен классу CTasksList (БО) с адаптацией для фронтофиса.

Свойства:

1.Lower – нижняя граница для номера найденной задачи (используется для пейджинга).

2.Upper – верхняя граница для номера найденной задачи (используется для пейджинга).

3.Count – количество задач в списке.

4.Setting (Name) – чтение или запись значения настройки с именем Name.

5.Name – подстрока для поиска в имени задачи.

6.SearchStr – строка для полнотекстового поиска по содержимому полей задачи.

7.Types – список исключений для типов задач.

8.Status – список статусов задач.

Copyright © 2005 Individ company

Страница

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

242 из 242

 

 

9.Executors – список исполнителей задач.

10.Workflows – список исключений для сценариев.

11.Priority – список приоритетов задач.

12.Owner – владелец задачи.

13.ProcessOwner – владелец процесса.

14.Executor – исполнитель задачи.

15.Project – проект для задачи.

16.Process – процесс для задачи.

17.Active – признак активности задачи.

18.Deleted – признак удаленной задачи.

19.Sort – тип сортировки списка задач.

20.Control – список пользователей для вывода задач у них на контроле.

21.ShowControl_ – признак вывода блока «На контроле».

Методы:

1.AGetRS (SP, ByRef Args, ByRef Names) – загрузка рекордсетов, являющихся результатом выполнения ХП с именем SP и параметрами Args. Рекордсеты получают имена из массива Names.

2.DelRS (Name) – удаление рекордсета с именем Name.

3.GetInfo (UserID) – получение информации о пользователе UserID.

4.GetTasks (UserID) – загрузка задач с учетом настроек.

5.SetParam (Name, Value) – установка параметра во внутреннем XML.

6.Escape – экранирование внутреннего XML.

7.Output (FileName) – вывод внутреннего XML через XSL-шаблон FileName.

8.Debug – вывод отладочной информации.

9.Total – общее количество задач, удовлетворяющих значениям настроек на момент вызова GetTasks.

10.Task (I) – возвращает объект класса CTask для задачи с индексом I.

11.ShowSettings (Names) – вывод элементов управления для настроек с именами Names.

12.LoadSettings (UserID) – стандартный механизм загрузки настроек пользователя UserID (использует LoadSettingsFrom…).

13.ResetSettings – сброс пользовательских настроек.

14.OverrideSettings – переопределение некоторых пользовательских натроек их значениями по умолчанию для фронтофиса.

15.LoadSettingsDefault – загрузка настроек по умолчанию.

16.LoadSettingsFromQS – загрузка настроек из QueryString.

17.LoadSettingsFromBase – загрузка настроек из БД.

18.SaveSettingsToBase – сохранение настроек в БД.

19.LoadSettingsFromPost – загрузка настроек из POST-а.

20.SettingsBlock (CurrentUser) – вывод блока стандартных настроек через ShowSettings

21.SettingsQS – возвращает строку, которую можно добавить к QueryString и из которой затем сможет произвести чтение настроек метод LoadSettingsFromQS.

22.PrintTasks (UserID, CurrentUser) – вывод списка задач в формате для печати.

23.ShowTasks (UserID, CurrentUser) – вывод списка задач.

24.PrintControl (UserID) – вывод списка задач на контроле в формате для печати.

25.ShowControl (UserID) – вывод списка задач на контроле.

26.ProcessForms (UserID, CurrentUser) – обработка POST-а с форм из списка задач и задач на контроле.

27.UserTitle (UserID) – возвращает имя пользователя с идентификатором UserID.

CTest

Класс предназначен для работы функциональности Тесты’. Располагается в каталоге текущей темы и подключается директивами:

<!--#include file="test-functions.asp" --> <!--#include file="CTest.asp" -->

Ниже описаны свойства и методы этого класса.

Свойства

 

1.

isInit – свойство, отвечающее за инициализацию теста

 

2.

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

 

3.

folderID – фолдер теста

 

4.

Title – имя теста

 

5.

Right – права на тест

 

6.

Description – описание теста

 

7.

QuestCount – количество вопросов в тесте

 

8.

MaxPoints – максимальное количество баллов, которое можно набрать в тесте

 

9.

MinPoints – минимальное количество баллов, которое можно набрать в тесте

 

 

 

 

 

Copyright © 2005 Individ company

Страница

 

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

243 из 243

10.FolderType – тип фолдера тесты

11.QuestsOnPage – количество вопросов теста отображаемое на одной странице

12.QuestionID(i) – список уникальных идентификаторов вопросов теста

13.Icons – иконки теста

Методы

1.GetInfo (FolderID, UserID) – обращение к базе данных на получение теста

2.GetFolderTestIcons(Rights , folderID) – права на фодер теста

3.ShowLogin – отображает форму логина для тестов

4.GetQuestionAnswersList(Qid) – получает список ответов для конкретного вопроса теста

5.isAnswersDone – возвращает true если были даны ответы на все вопросы теста

6.ProcessPost – обрабатывает пост ответов на вопросы

7.Show – отображает тест

8.GetResultInfo – возвращает результат прохождения теста

9.ShowResult – отображает результаты прохождения теста

CURI

Предназначен для работы со ссылками. Подключается автоматически, при подключении «/common/include/fo-init.asp» и «/include/bo-init.asp». Все методы класса для удобства использования возвращают ссылку на сам объект.

Свойства

1.Domain – домен

2.Path – путь

3.File – имя скрипта

4.Folder – идентификатор фолдера

5.Query – строка запроса

6.URL – возвращает текущее значение URI. Это свойство является свойством по умолчанию.

Методы

1.Root – инициализация. URI-указывает на корень

2.Self – выдает относительную ссылку на текущую страницу

3.Same (FileName) – выдает относительную ссылку на файл с текущим фолдером

4.Short (FileName, folder) – выдает относительный путь до файла в указанном фолдере

5.Theme (ThemeName) – устанавливает текущую тему

6.Full (ThemeName, FileName, FolderID) – выдает относительную ссылку на файл с темой и фолдером

7.ThisRequest () – устанавливает параметры URI на текущую страницу

8.SelfFullUrl() – выдает относительную ссылку на текущую страницу

9.Add (Name, Val) – добавляет параметр и его значение

10.Delete (Name) – удаляет параметр с именем Name

11.Go () – осуществляет переход по текущему состоянию URI.

Примеры использования

Перенапрвление на страницу "Access denied" с передачей URL возврата:

<%

Function DenyAccess(backurl)

if backurl = "" then backurl = URI.ThisRequest SystemInfo.URLAuthPage.Add("err","accessdeny").Add("backpage", backurl).Go

End function %>

Конструирует полный URL из имени темы, имени главного файла и ID раздела:

<%

Function MakeURL(ThemeName, FileName, FolderID)

set MakeURL = URI.Full(ThemeName, FileName, FolderID) End Function

%>

Конструирует полный URL из урла сервера , имени темы, имени главного файла и ID раздела:

<%

Function MakeFullURL(ServerUrl,ThemeName, FileName, FolderID) MakeFullURL = ServerUrl & URI.Full(ThemeName, FileName, FolderID)

End Function

Copyright © 2005 Individ company

Страница

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

244 из 244

 

 

%>

Конструирует относительный URL указывающий на файл той же темы из имени файла и ID:

<%

Function MakeShortURL(FileName, FolderID)

set MakeShortURL = URI.Short(FileName, FolderID) End Function

%>

Конструирует URL указывающий на текущий файл текущей темы текущего раздела с указанным окончанием:

<%

Function MakeSelfRefURL(URLSuffix)

set MakeSelfRefURL = URI.Self: MakeSelfRefURL.Query = MakeSelfRefURL.Query & URLSuffix

End Function %>

CUserInfo

Предназначен для авторизации, аутентификации пользователя и получения данных о нем. Подключается автоматически,

при подключении «/common/include/fo-init.asp»

Свойства

1.UserID – ID пользователя

2.ClientID – ID пользователя в таблице Clients. Используется ТОЛЬКО для совместимости в старых кусках кода

3.Login, Password, EMail – логин пароль емейл

4.FName, LName – первое/второе имя (имя / фамилия)

5.Picture – ID фотографии пользователя

6.LastLogin, LastEMail – логин и емейл с которыми пользователь последний раз был авторизован. Полезно для предзаполнения полей форм. Чтение/запись

7.PseudoLogin – последний использованный логин псевдопользователя (т.е. логин, введенный неавторизованным пользователем, пользователя с таким логином может реально не существовать в системе), используется для автозаполнения персонализированных форм. Чтение/запись.

8.SecureMode – уровень безопасности (режим авторизации) из настроек пользователя. Число

9.SecurityIsHi, SecurityIsStandart, SecurityIsLow – истина если пользователь имеет соответствующий уровень безопасности

10.NeedIPDeny, NeedWinDeny – истина если для пользователя установлены проверка IP/Windows-пользователя

11.IPDenied, WinLogonDenied – истина ели пользователь не был авторизован по причине несоответствия IP/Windows-

пользователя

12.SiteStateInfo(name) – чтение информации хранимой для этого сайта и этого пользователя в куках браузера

13.SiteSessionInfo(name,Value) – запись информации для этого сайта и этого пользователя в куки браузера. Время хранения информации сессия

14.SiteLongLifeInfo(name,Value) – запись информации для этого сайта и этого пользователя в куки браузера. Время хранения информации всегда

Методы

1.Authenticate() - Распознавание пользователя и получение его данных. Возвращает true (успех)/false (пользователь не зарегистрирован или неверный пароль или ему запрещена авторизация). При необходимости проверяется IP и Windows- пользователь.

2.Authorize (Byref key) - Авторизация (обеспечение дальнейшей узнаваемости) пользователя. Свойства UserID, Login, Password, EMail и SecureMode должны быть предварительно установлены. Производится установка всех кук, логгирование, генерация ключа авторизации. Возвращает ID учетной записи авторизации, в параметр запоминается ключ авторизации.

3.Logoff () - Чистка кук в соотвествии в уровнем безопасности.

4.GetInfo (sLogin, sPassword) - Получение данных пользователя по логину/паролю и заполнение свойств. Возвращает true (успех)/false (такой пользователь не зарегистрирован)

5.CheckIP() – Проверка запретов на IP

6.CheckWinUser() – Проверка запретов на Windows-пользователя.

7.SaitLogon (sLogin, sPassword, sComment) - Авторизация на сайте (установка всех кук, логгирование). Возвращает true (успех)/false (пользователь не зарегистрирован). sComment – комментарий события в логе.

8.Logon (sLogin, sPassword, sComment, URL) - Полная авторизация на сайте и на БО (установка всех кук, логгирование). Возвращает false если пользователь не зарегистрирован, иначе производится редирект на БО, а оттуда на URL указанный в последнем параметре. URL должен задаваться в полном формате (с http:// и доменом). sComment – комментарий события в логе.

9.GetRegInfo() - Возвращает 2-мерный массив регистрационных данных пользователя из настраиваемых полей

Copyright © 2005 Individ company

Страница

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

245 из 245

 

 

регистрации.

CUserSession

Класс CUserSession выполняет следующие задачи:

1.Логирование событий

Класс CUserSession автоматически записывает событие «Начало сессии пользователя» при начале новой сессии пользователя. Класс поддерживает т.н. стек событий, в начале которого всегда находится событие «начало сессии пользователя» и никогда не удаляется из него (исключением является ситуация “Session Timeout”, которая обрабатывается автоматически и ID сессии заменяется на новый. Ситуация “Session Timeout” возникает, если со времени предыдущей загрузки страницы прошло больше времени, чем установлено на соответствующей странице в БО. После этого при следующей загрузке страницы автоматически создается новая сессия).

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

2.Различие анонимных пользователей

Класс CUserSession выполняет также функцию различия анонимных пользователей. Для каждого нового пользователя, зашедшего в ФО, создается запись в таблице Clients с новым ID и логином вида GuestN, где N равняется ID записи в Clients. Также пользователю ставится кука гостя, значение которой можно получить из свойства GuestClient. Значение куки также равняется ID записи в Clients для гостя. Далее на сайте БО системы ставится кука гостя, если ее нет. Если в БО кука гостя есть, то ее значение передается в ФО и ID гостя корректируется с помощью вызова ChangeGuestToGuest. Также корректируется и кука гостя. Таким образом пользователь, зашедший на один из фронтофисов системы как аноним, имеет тот же ID, что и на других фронтофисах.

3.Управление авторизацией пользователей через asp-img

Эта группа содержит в основном внутренние (Private) методы для авторизации пользователя на всех сайтах ФО и БО при авторизации его на одном каком-либо сайте. Public-методы из этой группы служат для использования классом CUserInfo. Таким образом, классы CUserInfo и CUserSession управляют авторизацией пользователей автоматически при вызове функции UserInfo.Authorize. Дополнительных действий от разработчика не требуется.

Механизм управления авторизацией пользователя таков: при вызове UserSession.BuildRegistrationList из UserInfo.Authorize класс создает список серверов, на которых требуется дополнительная авторизация. При следующей загрузке страницы функция WriteHooks выводит по одному asp-img на каждый такой сервер, которые и выполняют авторизацию на этих серверах. Послевывода asp-img для всех серверов список серверов очищается и при следующей загрузке страницы вывода asp-img не происходит.

Свойства:

1.IsGuest – свойство read only, вовращающее True, если текущий пользователь является гостем, False иначе.

2.GuestClient – свойство read only, возвращает ID записи в Clients для текущего гостя. Если текущий пользователь не является гостем, то значение свойства равно нулю.

3.UserID – возвращает ID текущего пользователя (авторизованного или просто узнанного)

Методы:

1.Общие

1.1.WriteHooks() служит для вывода на страницы фронтофиса скриптов, записывающих дополнительные параметры. Вызов этого метода следует вставлять на все страницы фронтофиса внутрь тега <body> и желательно ближе к началу страницы (можно в файле common-top.asp). Метод как результат выводит серию пустых картинок размером 1х1 без рамки, после которых идет тег <br>. Картинки (asp-img), выводимые этим методом, служат для выполнения различных действий на сервере, с которого выводится картинка.

2.Логирование событий

2.1.Initialize() – инициализация объекта CUserSession, включающая в себя логирование начала новой сесии. Этот метод требуется обязательно вызвать у основного объекта класса CUserSession, создаваемого на странице, после завершения инициализации страницы. Если для каких-то целей создаются новые экземпляры класса, то вызывать этот метод для них необязательно.

2.2.NewEvent( EventType, ObjectID, ObjectType, AdditionalParams, StaticString, Status, Reserved, IsTopLevel, Push ) – Эта

Copyright © 2005 Individ company

Страница

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

246 из 246

 

 

функция добавляет новое событие и возвращает его идентификатор. Значение всех параметров кроме двух последних аналогично значению соответствующих параметров функции AddEvent. Параметр IsTopLevel указывает, следует ли считать это событие событием, связанным напрямую с событием верхнего уровня (началом сессии) или событием, связанным с событием текущего уровня. Если IsTopLevel = True, то перед добавлением события вызывается функция GoTop(). Параметр Push определяет, стоит ли записывать событие в стек (Замечание: события со статусом <> 0 никогда не записываются в стек).

2.3.NewEventSS(EventType, ObjectID, ObjectType, AdditionalParams, ErrorStr, Status, Reserved, IsTopLevel, Push ) – то же,

что и метод NewEvent, но суммарная строка (параметр StaticString) генерируется автоматически из информации, предоставленной через другие параметры. ErrorStr – строка сообщения об ошибке, добавляемая к сгенерированной суммарной строке.

2.4.Attach( EventID, IsTopLevel, Push ) – Эта функция связывает уже добавленное событие с событием текущего уровня

( IsTopLevel = False ) или с событием верхнего уровня ( IsTopLevel = True ). Если IsTopLevel = True, то перед связыванием события вызывается функция GoTop(). Параметр Push определяет, стоит ли записывать событие в стек (в стек записываются только события с ненулевыми идентификаторами). Функция возвращает идентификатор события (EventID).

2.5.GetLastParent() – Эта функция возвращает идентификатор события текущего уровня.

2.6.GoBack(num) – Эта функция производит откат стека на num уровней и возвращает идентификатор события нового текущего уровня.

2.7.GoTop() – Эта функция очищает стек событий, оставляя в нем только событие «начало сессии пользователя» и возвращает его идентификатор.

2.8.PersonalNewParent( Name, EventType, ObjectID, ObjectType, AdditionalParams, StaticString, Status, Reserved, Push ) – Эта функция добавляет новое событие с параметрами EventType, ObjectID, ObjectType, AdditionalParams, StaticString, Status и Groups, связывая его идентификатор с именем Name. Добавленное событие связывается с событием текущего уровня в стеке событий. Если Push = True и Status = 0, то идентификатор добавленного события также записывается в стек. Функция возвращает идентификатор добавленного события.

2.9.PersonalNewParentSS(Name, EventType, ObjectID, ObjectType, AdditionalParams, ErrorStr, Status, Reserved, Push ) – то же, что и метод PersonalNewParent, но суммарная строка (параметр StaticString) генерируется автоматически из информации, предоставленной через другие параметры. ErrorStr – строка сообщения об ошибке, добавляемая к сгенерированной суммарной строке.

2.10.PersonalNewChild( Name, EventType, ObjectID, ObjectType, AdditionalParams, StaticString, Status, Reserved, Push ) – Эта функция добавляет новое событие с параметрами EventType, ObjectID, ObjectType, AdditionalParams, StaticString, Status и Groups, связывая его с идентификатором, сопоставленным имени Name. Идентификатор добавленного события записывается в стек событий, если событие было добавлено успешно, статус события нулевой и Push = True. Функция возвращает идентификатор добавленного события.

2.11.PersonalNewChildSS(Name, EventType, ObjectID, ObjectType, AdditionalParams, ErrorStr, Status, Reserved, Push ) – то же, что и метод PersonalNewChild, но суммарная строка (параметр StaticString) генерируется автоматически из информации, предоставленной через другие параметры. ErrorStr – строка сообщения об ошибке, добавляемая к сгенерированной суммарной строке.

2.12.PersonalAttach( Name, EventID, Link, Push ) – Эта функция сопоставляет идентификатор EventID уже добавленного события с именем Name. Если Link = True, то событие также связывается с событием текущего уровня в стеке событий. Если Push = True, то событие добавляется в стек событий. Функция возвращает идентификатор события

(EventID).

2.13.PersonalLink( Name, EventID, Push ) – Эта функция связывает уже добавленное событие с идентификатором EventID с событием, идентификатор которого сопоставлен имени Name. Если Push = True, то событие также добавляется в стек событий. Функция возвращает идентификатор события (EventID).

2.14.PersonalGet( Name ) – Эта функция возвращает идентификатор события, сопоставленного имени Name.

3.Различие анонимных пользователей

3.1.ChangeGuestToUser(uID)– заменяет все записи в Events для текущего гостя на записи для данного пользователя и удаляет куку гостя.

3.2.ChangeGuestToAuthorized(), ChangeGuestToCurrentUser() – вызывают предыдущую функцию, в качестве параметра которой первая функция передает ID авторизованного пользователя, вторая – ID текущего (авторизованного или узнанного) пользователя

3.3.ChangeGuestToGuest(cID) – заменяет все записи в Events и куку гостя с текущего гостя на указанного.

4.Управление авторизацией пользователей через asp-img

4.1.BuildRegistrationList(id, key) – строит список серверов и сохраняет дополнительно параметры id и key для авторизации.

4.2.RegAuthorize(id, key, v) – авторизует на текущем сервере с параметрами id, key. Параметр v в настоящее время не используется. Функция служит для вызова из asp-img, управляющего авторизацией, и работает как для ФО, так и для БО.

CUserSettings

Класс для доступа к произвольным пользовательским настройкам. Настройки организуются в логически связанные блоки.

Copyright © 2005 Individ company

Страница

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

247 из 247

 

 

Свойства

1.Name – название блока настроек.

Методы

1.Setting(Name, Value) – установить настроку с именем Name в значение Value.

2.Setting(Name) – получить значение настройки с именем Name.

3.IsSaved() – проверить, сохранялся ли блок настроек в базе данных.

4.Add(Name, Value) – добавить в блок настройку с именем Name и значением Value.

5.Load() – загрузить настройки из базы данных.

6.Save() – сохранить настройки в базе данных.

Пример

Dim Settings : Set Settings = New CUserSettings Settings.Name = "project"

Settings.Add "sample1", "qwerty" Settings.Add "sample2", "1" Settings.Add "sample3", "27.08.2003" If Settings.IsSaved Then

Settings.Load() End If

Settings.Setting("sample1") = "uiop" Response.Write Settings.Setting("sample1") Settings.Save()

CVoting

Предназначен для работы с глосованием на фронтофисе. Является вспомогательным классом при работе с классом CVotings.

Свойства:

1.IsInit – возвращает True, еслиобъект был правильно проинициализирован, иначе False.

2.Count – количество вариантов ответа.

3.CanVote – признак возможности голосования в настоящий момент текущим пользователем.

4.ID (Index) – идентификатор варианта ответа с индексом Index.

5.Text (Index) – текст варианта ответа с индексом Index.

6.VotesCount (Index) – количество проголосовавших за вариант ответа с индексом Index.

7.VotesPercent (Index) – процент голосов за вариант ответа с индексом Index.

Методы:

1.GetInfo (Voting) – получение информации о голосовании с идентификатором Voting.

2.ShowResultsInTable – этот метод предназначен для вызова из класса CVotings, выводит результаты в списке голосований.

3.ShowVoting – вывод формы голосования (в случае возможности голосования) или результатов голосования, а также обработка POST-а с формы голосования.

4.ShowResults – вывод результатов голосования.

CVotings

Предназначен для работы со списком голосований на фронтофисе. С его помощью можно как вывести список всех голосований, так и выбрать случайным или специальным образом одно голосование.

Свойства:

1.IsInit – возвращает True, еслиобъект был правильно проинициализирован, иначе False.

2.Count – количество голосований в списке.

3.ID (Index) – идентификатор голосования с индексом Index.

4.Quest (Index) – вопрос голосования с индексом Index.

5.Priority (Index) – приоритет голосования с индексом Index.

6.DateStart (Index) – дата начала голосования с индексом Index.

7.DateEnd (Index) – дата завершения голосования с индексом Index.

8.Votes (Index) – количество проголосовавших в голосовании с индексом Index.

9.MultiOption (Index) – признак возможности выбора в голосовании с индексом Index нескольких вариантов ответа.

10.Options (Index) – количество вариантов ответа в голосовании с индексом Index.

11.Changed (Index) – дата изменения свойств голосования с индексом Index.

12.CanVote (Index) – признак возможности голосования текущего пользователя для индекса Index.

13.PageCount – количество страниц пейджинга (поддержка пейджинга).

14.PageFirst – номер первого голосования на текущей странице (поддержка навигации).

Copyright © 2005 Individ company

Страница

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

248 из 248

 

 

15.PageLast – номер последнего голосования на текущей странице (поддержка навигации).

16.HasPrevPage – признак наличия предыдущей страницы (поддержка навигации).

17.HasCurrentPage – признак наличия текущей страницы (поддержка навигации).

18.HasNextPage – признак наличия следующей страницы (поддержка навигации).

19.PrevPageFirst – номер первого голосования на предыдущей странице (поддержка навигации).

20.PrevPageLast – номер последнего голосования на предыдущей странице (поддержка навигации).

21.NextPageFirst – номер первого голосования на следующей странице (поддержка навигации).

22.NextPageLast – номер последнего голосования на следующей странице (поддержка навигации).

23.PrevPageTitle – заголовок предыдущей страницы (поддержка навигации).

24.PageTitle – заголовок текущей страницы (поддержка навигации).

25.NextPageTitle – заголовок следующей страницы (поддержка навигации).

26.Voting (Index) – возвращает объект класса CVoting для голосования с индексом Index.

27.RandomVoting – возвращает объект класса CVoting для случайного голосования. При этом случайное голосоание выбирается только при первом вызове этого свойства, последующие вызовы свойства возвращают тот же объект. При выборе случайного голосования из списка являются те голосования, на которые пользователь можетголосовать. Голосование, на которое пользователь не может голосовать, возвращается только при отсутствии в списке голосований с возможностью голосования.

Методы:

1.GetInfo – загрузка списка голосований для текущего сервера.

2.Show – вывод списка голосований для сборной страницы результатов голосований.

3.Navigation – вывод навигации по страницам (предыдущая, текущая, следующая).

Примеры использования:

Вывод списка результатов голосований

Dim Votings : Set Votings = New CVotings

Votings.GetInfo

Votings.Navigation

Votings.Show

Votings.Navigation

Вывод всех результатов всех голосований, на которые пользователь не может голосовать, в цикле.

Dim Votings, I : Set Votings = New CVotings

Votings.GetInfo

For I = 0 To Votings.Count

If Not Votings.CanVote(I) Then Votings.Voting(I).ShowResults

Next

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

Dim Votings : Set Votings = New CVotings

Votings.GetInfo

Votings.RandomVoting.ShowVoting

CWebDirectory

Представляет директорию IIS для использования на странице настроек поиска файлов в классах CIndexing, CIndexingScope и CIndexingScopes.

Свойства:

1.ADsPath – путь к директории в формате ADSI.

2.VirtPath – виртуальный путь к директории.

3.PhysPath – физический путь к директории.

4.IsRoot – возвращает True, если объект представляет из себя корень веб-сайта, иначе False.

5.IsVirtual – возвращает True, если объект представляет из себя виртуальную директорию IIS.

6.SiteNumber – номер, присвоенный серверу, на котором находится директория, в базе данных.

7.XML – возвращает содержимое объекта в формате XML.

8.Children – возвращает одномерный массив поддиректорий.

9.Obj – возвращает объект ADSI, надстройкой над которым является данный объект.

Copyright © 2005 Individ company

Страница

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

249 из 249

 

 

Методы:

1.Init (DirObj, Parent_OrBinding) – инициализация объекта. DirObj может представлять:

1.1.Веб-сервер (класс ADSI – IIsWebServer), при этом параметр Parent_Or_Binding должен содержать строку в формате <IP>:<Port>:<url>, которая обычно используется в IIS для назначения портов, IP-адресов и host-заголовков для веб- сайта.

1.2.Виртуальная директория (класс ADSI – IisWebVirtualDir), при этом параметр Parent_Or_Binding должен содержать ссылку на уже созданный объект класса CWebDirectory, содержащий наддиректорию.

CWebForm

Предназначен для вывода конструируемой формы на странице, проверки заполнения полей и записи в базу информации, введенной пользователем. Подключается директивой <!--#include file="CWebForm.asp"-->

Свойства

1.ErrorMessage – сообщение об ошибке при заполнения формы.

2.SuccessMessage – сообщение об успешном заполнении формы.

Методы

1.IsInvalid – возвращает признак (true/false) неправильности заполнения полей.

2.IsSubmitted – возвращает признак (true/false) того, что форма отправлена на сервер.

3.Load(FolderID) – загрузить свойства и поля формы по идентификатору раздела формы.

4.WriteAnchor – вывести якорь, на который будет отправлятся форма.

5.Write(SubmitName, FormAction, Uploader) – вывести форму на страницу. SubmitName – атрибут name тега <input type=”submit”>. FormAction – имя скрипта, на который отправляются данные формы. Uploader – объект «DrASP.Upl» для доступа к заполненным полям.

6.Validate(Uploader) – проверить правильность заполнения формы. Uploader - объект «DrASP.Upl» для доступа к заполненным полям.

7.Submit(Uploader) – если поля заполнены правильно, записать результаты заполнения формы в базу данных. Uploader - объект «DrASP.Upl» для доступа к заполненным полям.

CWorkflow

Предназначен для работы со сценариями. Для подключения классов, используемых при работе со сценариями, следует воспользоваться директивой <!--#include virtual="/include/cworkflowclasses.asp"-->

Константы

1.Workflow_Err_NoStartNode – признак отсутствия начального узла

2.Workflow_Err_NoEndNode - признак отсутствия конечных узлов

3.Workflow_Err_NoPath - признак отсутствия связи между начальным узлом и конечным узлом.

4.Workflow_Err_NoNodeRoles – существуют узлы, в которых не назначены роли

5.Workflow_Err_NoLinkRoles – существуют связи, для которых не назначены роли.

Свойства

1.ID – идентификатор сценария

2.Name – название сценария

3.Description – описание сценария

4.Active – признак активности сценария

5.Valid – признак правильности сценария

6.InvalidReasons – битовое поле. Уточнение, по каким признакам сценарий оценивается как неправильный.

7.Error – сообщение об ошибке

8.LinkCount – количество связей в сценарии

9.LinkStatus( Index ) – статус связи. Index – номер связи.

Методы

1.Check(Reasons) – проверка сценария на правильность. Критерии правильности, которым сценарий не отвечает, возвращаются в переменной Reasons.

2.Load(Workflow, User) – загрузка из БД данных о сценарии. Workflow – идентификатор сценария. User – идентификатор

пользователя

3.GetRS(SQL, NamesArray) – формирование XML-документа на основе данных, возвращаемах SQL-оператором, заданным параметром SQL. NamesArray – массив строк. Значения элементов этого массива будут присвоены атрибутам Name результирующих наборов данных в XML-документе.

4.AGetRS(SP, attr, Names) – см. описание класса CXMLDOM

Copyright © 2005 Individ company

Страница

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

250 из 250