api.rest Формирование ссылок для выполнения действий без перехода в интерфейс системы

При переходе по ссылке выполняется:

  1. заданное действие с объектом;
  2. выводится сообщение для пользователя в отдельном окне: "операция выполнена успешно" или "%текст ошибки%" (если действие не выполнено).
  • api.rest.create(fqn, attributes)

    api.rest.create(fqn, attributes, login_or_accesskey)

    api.rest.createWithUserUUID(fqn, attributes, login_or_accesskey)

    Генерация URL-ссылки для добавления объекта указанного класса и типа с определенными атрибутами.

    Параметры метода:

    • fqn — fqn типа (класса) добавляемого объекта
    • attributes — ассоциативный массив, содержащий атрибуты создаваемого объекта: ключ— код атрибута, значение — значение атрибута
    • login_or_accesskey — логин или ключ авторизации пользователя для входа в систему (по имени пользователя или по uuid пользователя)

    Возвращает строку, содержащую URL-ссылку для добавления объекта указанного типа/класса с определенными атрибутами.

    Пример 1. Ссылка для создания отдела с названием "новый отдел" с ключом авторизации:

    <a href="${api.rest.create('ou$ou', ['title' : 'новый отдел'], api.auth.getAccessKey('username'))}">Создать новый отдел</a>

    <a href="${api.rest.create('ou$ou', ['title' : 'новый отдел'], 'username')}">Создать новый отдел</a>

    <a href="${api.rest.createWithUserUUID('ou', ['title' : 'новый отдел'], 'userUUID')}">Создать новый отдел</a>

    Пример 2. Ссылка для создания отдела с названием "новый отдел" с указанием логина и пароля или через прозрачную аутентификацию (Kerberos):

    <a href="${api.rest.create('ou$ou', ['title' : 'новый отдел'])}">Создать новый отдел</a>

  • api.rest.edit(obj, attributes)

    api.rest.edit(obj, attributes, login_or_accesskey)

    api.rest.editWithUserUUID(obj, attributes, login_or_accesskey)

    Генерация URL-ссылки для редактирования определенных атрибутов указанного объекта.

    Параметры метода:

    • obj — объект, атрибуты которого будут изменены при переходе по ссылке
    • attributes — ассоциативный массив, содержащий атрибуты, значение которых будет изменено при редактировании объекта: ключ— код атрибута, значение — значение атрибута
    • login_or_accesskey — логин или ключ авторизации пользователя для входа в систему (по имени пользователя или по uuid пользователя).

    Возвращает строку, содержащую URL-ссылку для редактирования определенных атрибутов указанного объекта.

    Пример 1. Ссылка для редактирования названия объекта (title) с ключом авторизации:

    <a href="${api.rest.edit(subject, ['title' : 'new title'], api.auth.getAccessKey('username'))}">Переименовать в 'new title'</a>

    <a href="${api.rest.edit(subject, ['title' : 'new title'], 'username')}">Переименовать в 'new title'</a>

    <a href="${api.rest.editWithUserUUID(subject, ['title' : 'new title'], 'userUUID')}">Переименовать в 'new title'</a>

    Пример 2. Ссылка для редактирования названия объекта (title) с указанием логина и пароля или через прозрачную аутентификацию:

    <a href="${api.rest.edit(subject, ['title' : 'new title'])}">Переименовать в 'new title'</a>

  • api.rest.delete(obj)

    api.rest.delete(obj, login_or_accesskey)

    api.rest.deleteWithUserUUID(obj, login_or_accesskey)

    Генерация URL-ссылки для удаления указанного объекта.

    Параметры метода:

    • obj — объект, который будет удален при переходе по ссылке
    • login_or_accesskey — логин или ключ авторизации пользователя для входа в систему (по имени пользователя или по uuid пользователя)

    Возвращает строку, содержащую URL-ссылку для удаления указанного объекта.

    Пример 1. Ссылка для удаления объекта с ключом авторизации:

    <a href="${api.rest.delete(subject, api.auth.getAccessKey('username'))}">Удалить</a>

    <a href="${api.rest.delete(subject, 'username')}">Удалить</a>

    <a href="${api.rest.deleteWithUserUUID(subject, 'userUUID')}">Удалить</a>

    Пример 2. Ссылка для удаления объекта с указанием логина и пароля или через прозрачную аутентификацию:

    <a href="${api.rest.delete(subject)}">Удалить</a>

  • api.rest.find(fqn, attributes)

    api.rest.find(fqn, attributes, login_or_accesskey)

    api.rest.findWithUserUUID(fqn, attributes[, login_or_accesskey])

    Генерация URL-ссылки для поиска объекта. По ссылке открывается страница с результатами поиска.

    Параметры метода:

    • fqn — fqn типа (класса) добавляемого объекта;
    • attributes — ассоциативный массив: ключ— код атрибута, значение — значение атрибута;
    • login_or_accesskey — логин или ключ авторизации пользователя для входа в систему (по имени пользователя или по uuid пользователя)

    Возвращает строку, содержащую URL-ссылку для поиска объекта.

    Пример. Ссылка для удаления объекта с ключом авторизации:

    <a href="${api.rest.find('ou', [:], api.auth.getAccessKey('username'))}">Получить список отделов</a>

    <a href="${api.rest.find('ou', [:], 'username')}">Получить список отделов</a>

    <a href="${api.rest.findWithUserUUID('ou', [:], 'userUUID')}">Получить список отделов</a>

  • api.rest.get(obj)

    api.rest.get(obj, login_or_accesskey)

    api.rest.getWithUserUUID(obj)

    api.rest.getWithUserUUID(obj, login_or_accesskey)

    Генерация URL-ссылки для получения объекта. По ссылке открывается страница с атрибутами указанного объекта.

    Параметры метода:

    • obj — объект, который будет получен при переходе по ссылке;
    • login_or_accesskey — логин или ключ авторизации пользователя для входа в систему (по имени пользователя или по uuid пользователя).

    Возвращает строку, содержащую URL-ссылку для получения объекта.

    Пример. Ссылка для получения объекта с ключом авторизации:

    <a href="${api.rest.get(subject, api.auth.getAccessKey('username'))}">Получить объект</a>

    <a href="${api.rest.get(subject, 'username')}">Получить объект</a>

    <a href="${api.rest.getWithUserUUID(subject, 'userUUID')}">Получить объект</a>

Для работы с api.rest через и Internet Explorer предлагается использовать решение Json. Описание решения: http://www.codeproject.com/Tips/216175/View-JSON-in-Internet-Explorer.