Cyclos 4 PRO

wiki.cyclos.org

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

General documentation

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

Введение (Features)

Cyclos - это многофункциональное решение для интернет-банкинга, которое легко использовать и поддерживать, гибкое, безопасное и высоконастраиваемое. Cyclos поставляется с набором банковских и платежных опций, полной системой электронной коммерции и каналами доступа для мобильных устройств любого уровня. Мобильный канал предлагает масштабируемую и дешевую возможность для банков расширить свой охват и предложить банковское обслуживание без отделений. Cyclos используется местными банками, сетями C3, MFI, бартерными системами, community currencies и time banks. Динамическая структура Cyclos позволяет организациям «строить» выделенную платежную систему с нуля, просто изменяя конфигурацию (без необходимости вносить изменения в код).

Этот документ предоставляет вам углубленный обзор наборов функций Cyclos:

Список функций Cyclos 4

Предоставляет подробный обзор множества функций Cyclos 4. Звездочка помещается после функции, чтобы указать:

Системная информация Cyclos 4

Информация о структурных вопросах, касающихся Cyclos (архитектура, безопасность, тестирование, совместимость и хостинг)

Список функций

Пользовательские интерфейсы

Пользовательские функции

Удобство использования

Платежи

Банкинг

Информация о счете

Операторы счета

Конфигурация системы

Агенты / Брокеры

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

Онлайн-маркетплейс

Подарочные ваучеры / Баллы лояльности

Управление контентом

Переводы

Аналитика и отчетность

Управление системой

Обмен сообщениями

Корзина покупок

Пароли и аутентификация

SMS-банкинг

Мобильное приложение

Мобильный POS (Точка продаж)

Оповещения и логирование

Функции бартерной сети

Архитектура

Cyclos 4 построен на корпоративных технологиях Java. Клиент подключается к фронтенд-приложению Google Web Toolkit (GWT) или через один из интерфейсов (см. ниже). Сервер приложений защищен надежным слоем безопасности и использует Spring Framework. Службы на сервере приложений используют JPA (с помощью Querydsl) для связи с сервером базы данных PostGres. Все транзакции хранятся как двойные записи в бухгалтерской системе. Cyclos может работать как автономная система независимо от других валютных систем.
Страницу с обзором инструментов и фреймворков, используемых для проекта Cyclos, можно посмотреть на этой странице.
Бизнес-партнеры и клиенты Cyclos могут запросить доступ к углубленной архитектурной странице.

Совместимость (интерфейсы)

Весь уровень сервисов в Cyclos доступен как API веб-сервисов. Это сделает все функции Cyclos доступными для третьих сторон. Нативные Java-клиенты могут подключаться напрямую через Java remoting по HTTP(S). Клиенты на других языках могут использовать API с сообщениями JSON по HTTP(S). Также доступна клиентская библиотека PHP, которая отражает API сервисов, что значительно упрощает интеграцию.
Более подробную информацию об API, веб-сервисах и скриптинге можно посмотреть на странице документации Cyclos.

Безопасность

С самого начала команда разработчиков Cyclos следовала рекомендациям по безопасности, определенным стандартом ISO 27002. Код постоянно тестируется с помощью расширенного набора автоматизированных тестов безопасности. Разрешения и роли проверяются при каждом запросе на уровне внутренних служб. Были рассмотрены следующие области безопасности / моменты:

Для получения подробной информации, пожалуйста, просмотрите страницу безопасности

Тестирование

Перед любым программированием пишутся спецификации. Разработка Cyclos работает в соответствии с процессом «разработки через тестирование» (test driven development). Сначала разработчик пишет тестовые случаи (JUnit), а затем код реализации. Тестовые случаи Junit охватывают интеграционные и функциональные тесты, а также исключения. Мы используем фреймворки Maven и Jenkins для запуска тестов и автоматической сборки и развертывания Cyclos три раза в день. Если возникает какая-либо проблема, как программист, так и координатор уведомляются Jenkins.

Онлайн-среда для тестирования сборки доступна по адресу https://test.cyclos.org, различные партнеры имеют свою собственную среду (сеть) в этом экземпляре, чтобы они могли тестировать полную функциональность Cyclos с последними коммитами кода. Jenkins также предоставляет инструмент отчетности для покрытия тестирования, который помогает нам улучшать тестовые случаи.

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

Мы используем Loadsophia для тестирования производительности. Этот сервис позволяет сравнивать результаты тестов производительности с течением времени, что помогает нам точно настраивать производительность.

В зависимости от проекта мы передаем серое и черное тестирование на аутсорсинг внешним компаниям, занимающимся безопасностью. Мобильное приложение и мобильные браузеры тестируются на всех мобильных телефонах, которые нам удается получить. Различные партнеры и внешние тестовые пользователи тестируют мобильное приложение. Как правило, мы сталкиваемся с несколькими ошибками, специфичными для телефона. Благодаря использованию GWT сгенерированный код на стороне клиента хорошо работает со всеми известными веб-браузерами.

Требования к хостингу

Cyclos может работать на веб-контейнере, таком как Apache Tomcat и Jetty, или на серверах приложений, таких как Glassfish, JBoss, IBM Websphere и Oracle Weblogic. Базой данных для Cyclos является база данных с открытым исходным кодом PostgreSQL. Минимальные требования к объему памяти для запуска одного экземпляра Cyclos составляют 500 Мб. Руководство по установке проведет вас через процесс установки.

Масштабируемость и доступность

База данных Cyclos была оптимизирована для поддержки кластеризации баз данных и синхронной репликации. Существуют различные подходы к обеспечению высокой доступности и решениям отказоустойчивости для Cyclos.

Синхронная репликация
В настоящее время мы используем для нашего хостинга решение, которое использует как синхронную, так и асинхронную репликацию. Оно предлагает отказоустойчивость, но не балансировку нагрузки, но с мощным главным сервером базы данных оно может обслуживать высокие нагрузки.
Amazon cloud с RDS
Cyclos может быть развернут в облачных сервисах Amazon с кластеризацией postgres.
Docker swarm
Мы планируем поддержку docker swarm, который предлагает встроенную кластеризацию. Начиная с версии 4.5, Cyclos можно развернуть как контейнер для платформы Docker.
Pgpool-II
Мы также работаем над полным решением для кластеризации баз данных с pgpool.

Примечание: Начиная с версии Cyclos 4.5 все изображения/картинки, документы и файлы могут храниться на внешнем файловом сервере или в сервисе хранения Amazon S3 (по умолчанию они хранятся в базе данных).

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

Технологии и фреймворки

Technologies & Frameworks

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

Техническая информация

Technical information

Техническая информация

Архитектура

Техническое проектирование

Обзор архитектуры

В процессе завершения последней версии Cyclos было проведено расширенное исследование различных решений (технологий, фреймворков и платформ) для Cyclos. Основные требования и ограничения для выбора были следующими:

Наш вывод заключается в том, что "Spring Framework" и "Google Web Tools (GWT)" предлагают лучшее решение для наших требований. Это текущая архитектура Cyclos:

Архитектура Cyclos 4

В приложении есть 4 концептуальных уровня:

Также Java-клиент может использовать RMI для прямого взаимодействия с уровнем безопасности сервисов (например, CRM-программное обеспечение).

Шаблон MVC

Архитектурный шаблон Model-View-Controller (Модель-Представление-Контроллер) применяется с GWT в Cyclos следующим образом:

Модель (Model)

VOs, DTOs и QueryParameters - все это наблюдаемые объекты (подклассы org.cyclos.model.Bean). Они поддерживают регистрацию слушателей для изменений свойств и имеют служебные методы для чтения и записи свойств, поскольку GWT не поддерживает рефлексию напрямую.

Контроллер (Controller)

Контроллер выступает посредником между Представлением и Моделью, получая данные из сервисов, обновляя компоненты Представления и отправляя данные обратно в сервисы для сохранения.
В Cyclos в роли Контроллеров выступают Страницы (подклассы org.cyclos.client.ui.Page). Они создают экземпляры компонентов представления (виджетов) и содержат ссылки на удаленные сервисы.
Методы Контроллера вызываются Представлением косвенно, например, onSearch(), onSave().
Когда Представлению требуются дополнительные данные (например, выбор категории объявления при регистрации объявления), ответственность Контроллера - получить эти данные и передать их представлению. Вероятно, в этом случае компонент представления будет иметь метод типа setAdCategories(Collection<AdCategoryVO>).

Представление (View)

Визуальное представление данных использует компонентные страницы. В основном страницы строятся путем расширения панели макета (например: SearchFiltersPanel, FormFlowPanel, DataTable, и т.д.) и включения элементов ввода, особенно полей (например: TextField, IntegerField, и т.д.).
Этот компонент показывает значения из Модели (например, <Module>Query) и обновляет их по мере того, как пользователь заполняет поля формы. Это делается с помощью механизма привязки. Класс Field имеет метод bind(), который принимает org.cyclos.model.Bean и имя свойства. Также есть ярлык для него на FormFlowPanel, который принимает имя свойства и поле. Когда привязка выполнена, значение свойства объекта модели автоматически отражается на значении поля, и любые обновления с любой стороны отражаются на другой.

Клиент

Клиентское приложение будет взаимодействовать с веб-сервером, отправляя/получая данные в формате JSON по HTTP.
Веб-сервер будет обращаться к уровню сервисов (в сервере приложений) через интерфейсы. Фактическая реализация будет получена через JNDI lookup, но конфигурация будет выполняться через Spring. Таким образом, мы можем прозрачно изменять локальные интерфейсы на удаленные (разные имена JNDI), когда веб-сервер работает в той же / другой JVM, что и сервер приложений.
Уровень сервисов реализован с использованием stateless session beans, которые используют JPA EntityManager для доступа к базе данных.

Область видимости сущностей

Сущности (отображенные с JPA) будут ограничены областью видимости реализации сервиса. Общение между сервисом и верхними уровнями будет осуществляться с использованием DTO и VO, а не самих сущностей. Обычно DTO будут содержать все редактируемые поля сущности, а VO будут содержать только поля, необходимые для конкретных страниц. Это решит некоторые проблемы:

Кроме того, когда необходимо загружать большие объемы данных (в основном отчеты и CSV-выгрузки), это должно обрабатываться на уровне сервисов, и загружаться должно только результирующее содержимое файла (PDF или CSV), а не сами сущности.

Перечисление модулей (Module Enum)

Cyclos4 организован в модули и подмодули. Список существующих модулей определен в перечислении org.cyclos.utils.Module в '''cyclos4-api-core'''. Кроме того, для каждого модуля существует соответствующее перечисление подмодулей, содержащее имеющиеся в нем подмодули.

Основная причина для подмодулей - позволить отправлять переводы приложения по запросу, а не отправлять все переводы сразу. То есть основной веб-клиент может запросить только переводы, необходимые для конкретной страницы.
Cyclos4 определяет специальный класс Enum, который перечисляет все модули, существующие в приложении. Enum находится в cyclos4_api, в пакете org.cyclos.model.Module. Также существуют различные перечисления подмодулей, которые определяют подмодули в каждом модуле.
Эти перечисления используются для генерации ключей перевода через реализации MessageKey, которые определены в Enum с областью видимости 'Module'.
Например, вызов перевода будет выглядеть так:
message(SystemKeys.Configurations.HEADING_ACTIVE)
Enum с областью видимости 'Module' (SystemKeys) содержит множество реализаций MessageKey.
Реализация MessageKey (Configurations) будет иметь метод, ссылающийся на подмодуль.
Подмодуль будет иметь метод, ссылающийся на модуль.
Файлы переводов можно найти в cyclos4_impl/src/META-INF/translations.
Пример выше будет расположен в файле ''Translation-SYSTEM.properties'', а ключ будет ''CONFIGURATIONS.headingActive''.

CRUD Сервисы

CRUDService в модели - это сервис, позволяющий выполнять основные операции с базой данных: Create (создать/сбросить), Read (загрузить), Update (сохранить) и Delete (удалить). Большинство интерфейсов Cyclos для сервисов расширяют этот интерфейс CRUDService. Только очень немногие сервисы в Cyclos расширяют nl.strohalm.cyclos.services.Service напрямую.

Макет

Скриншоты
Объяснение разделов и элементов макета

Безопасность

Мы не используем JAAS для безопасности, а наше собственное решение. Это потому, что JAAS обрабатывает только роли, а нам нужно больше. Пожалуйста, ознакомьтесь с параграфом о безопасности для полного обзора архитектуры безопасности.

Поток взаимодействия

Вот поток, который происходит, когда клиент вызывает метод сервиса:

  1. Запрос отправляется от клиента на сервер с использованием GWT-RPC или механизма связи Spring's HTTP invoker;
  2. HTTP-фильтр гарантирует, что получены некоторые основные данные о запросе, такие как сеть и канал;
  3. Сервлет Spring обрабатывает запрос и определяет метод сервиса, который нужно вызвать;
  4. Используется прокси к интерфейсу сервиса. Этот прокси использует ServiceFacade для вызова метода на сервере;
  5. Вызывается соответствующий класс ServiceSecurity, который применяет правило безопасности;
  6. Класс безопасности делегирует вызов фактической реализации сервиса через его локальный интерфейс сервиса;
  7. Наконец, реализация сервиса выполняет бизнес-логику.
Вызов метода сервиса
Техническая информация

Спецификация

 

Внимание: Написание спецификаций - это непрерывный процесс, и мы не можем гарантировать, что они всегда актуальны.
Модули и подмодули

Спецификации

На этой странице перечислены все спецификации. Для каждого подмодуля в Cyclos существует спецификация. Примеры подмодулей: "Комиссии счета", "Карты", "Адреса" и т.д. Для каждого подмодуля есть "компонент" в Jira и соответствующий "подмодуль" в структуре пакетов Cyclos. Подмодули сгруппированы в модули, такие как "Доступ", "Банкинг", "Управление контентом" и т.д. В этой вики мы используем следующие соглашения об именовании для подмодулей (спецификаций): <Имя_модуля>_<Имя_подмодуля>, например, "Access_Agreements_logs".

Основное приложение

Доступ

Банкинг

Управление контентом

Маркетплейс

Обмен сообщениями

Прочее

Система

Пользователи

Мобильное приложение

WebPOS

Страницы спецификаций

Specification pages

Страницы спецификаций

Система - Сети

Описание

Сети являются высшим уровнем категоризации в Cyclos. Краткое объяснение можно найти в разделе Сети в концепциях.

Бизнес-правила

Глобальные администраторы

Многосетевые администраторы

Область действия сети

Локальные и глобальные сущности

Примечание: Концепция локальных и глобальных сущностей может показаться сложной. Но для сетевого администратора это довольно просто. Для сетевого администратора будут просто некоторые сущности, которые он/она не может изменить. Они будут вести себя просто как 'встроенные' сущности. Которые можно либо использовать, либо нет.

Доступ

Совместимость

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

В деталях сети будет опция 'доступные сети'. Это должно показывать двухуровневый вариант выбора, сети и группы внутри сетей. (аналогично множественному выбору groupset/group). Таким образом, глобальный администратор может разрешить группам из определенных сетей выполнять операции (например, платежи) между ними. Конечно, администратору сначала нужно будет создать глобальную валюту, учетную запись и т.д. Сетевому администратору нужно будет добавить учетную запись и межсетевой тип транзакции в локальный продукт.

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

Уведомления

При создании новой сети будет отправлено уведомление. Идея в том, что в будущем системным администраторам можно будет назначать определенные сети для управления, а также предоставлять разрешение на создание новых сетей, которыми они, очевидно, могут управлять. Эти системные администраторы, вероятно, будут 'провайдерами услуг Cyclos', которые не будут иметь 'полных' прав системного администратора, таких как создание новых каналов и типов паролей. При создании новой сети полный системный администратор может захотеть быть проинформированным о создании новой сети.

Страницы

Страница поиска (фильтры)

Поля Тип Правила
Название Текст Позволяет администратору искать сеть с определенным именем.
Внутреннее имя Текст Позволяет администратору искать сеть с определенным внутренним именем.
Показывать только по умолчанию Логический Позволяет администратору искать сеть, помеченную как сеть по умолчанию.
Управляется группой Одиночный выбор с группами глобальных администраторов Позволяет администратору показывать сети, назначенные определенной группе глобальных администраторов
  • Значение по умолчанию "все".
Создать Кнопка действия Переходит на страницу сведений о сети для добавления новой сети выбранного типа.
  • Отображается слева (первый элемент).
  • Доступные варианты:
    • Пустая сеть: Открывает страницу редактирования для ручного создания новой Сети
    • Мастер сети: Запускает мастер для辅助ственного создания новой Сети
Сортировать по Кнопка действия Позволяет выбрать порядок списка результатов. Доступные варианты:
  • Дата создания (по умолчанию)
  • Имя


Результаты поиска (список)

* Автоматически показывает все сети, отсортированные по умолчанию по дате создания.
* Над списком слева находится кнопка сортировки (аналогично поиску пользователей) с опцией сортировки по дате создания или по алфавиту.
Отключенные сети отображаются зачеркнутыми в списке результатов поиска.

Поля Тип Правила
Название Текст Название сети.
Внутреннее имя Текст Внутреннее имя сети.
Переключиться Иконка Позволяет (по клику) переключиться на указанную сеть.
По умолчанию Иконка Показывает, какая сеть является сетью по умолчанию. Может быть только одна сеть по умолчанию. Эта сеть не перейдет в глобальный режим при доступе по основному URL. Например, communities.cyclos.org попадет в сеть 'communities', потому что она определена как сеть по умолчанию. Если бы это было не так, она попала бы в глобальный URL (communities.cyclos.org/global).
Удалить Иконка Удаляет эту Сеть. Возможно только если Сеть никогда не использовалась (не имеет данных).


Страница сведений

Поля Тип Правила
Название Текст Здесь можно указать название сети.
  • Максимум 50 символов.
  • Обязательное.
Внутреннее имя Текст Здесь можно указать внутреннее имя сети. Это необходимо для веб-сервисов.
  • Внутреннее имя может быть определено только на глобальном уровне (не сетевым администратором). К сети всегда можно получить доступ через глобальный URL и внутреннее имя как путь. Даже если корневой URL в конфигурации по умолчанию сети был изменен.
  • Максимум 50 символов.
  • Обязательное.
Описание Текст  
URL по умолчанию Только для чтения
  • Видимо только при редактировании (скрыто при создании).
Дата создания Только для чтения
  • Видимо только при редактировании (скрыто при создании).
Включено Логический Позволяет администратору отключить/включить группу.
  • По умолчанию отмечено как включено;
  • Если отключено, никакие связанные сущности/информация о сети недоступны в Cyclos.
По умолчанию Логический Позволяет администратору установить сеть как сеть по умолчанию. См. правила сопоставления сетей в разделе Бизнес-правила.
  • Когда сеть устанавливается как сеть по умолчанию, у предыдущей сети по умолчанию (если таковая была) флаг по умолчанию снимается.
  • Видимо только для глобальных администраторов (многосетевые администраторы не могут изменять, только просматривать это значение).
Родительская конфигурация Одиночный выбор Определяет конфигурацию, которая будет родительской для конфигурации по умолчанию сети.
  • В качестве опций должны отображаться все глобальные конфигурации.
  • Обязательное и редактируемое при вставке. Только для чтения при редактировании.
Управляется группами Ссылки Показывает ссылку для каждой из групп, которые управляют этой сетью.
Переключиться на эту сеть Кнопка действия Позволяет переключиться на сеть. Видимо после сохранения и включения сети.
Сохранить Кнопка действия Сохраняет сеть.


Страницы спецификаций

Системные конфигурации

Описание

Конфигурация определяет, как Cyclos выглядит, ощущается и ведет себя для групп вошедших пользователей или для гостей. Некоторые примеры параметров, которые можно установить в конфигурации: язык, адрес, макет адреса, формат чисел, почтовый сервер и многое другое.

Также большинство элементов управления контентом привязаны к теме. Например, для каждой конфигурации вы можете редактировать видимые баннеры. Однако эти элементы управления контентом редактируются через меню контента:

Бизнес-правила

Конфигурации определяются иерархическим образом. Существует одна, встроенная конфигурация, которая является системной по умолчанию. Эта системная конфигурация по умолчанию всегда является корнем любого дерева конфигураций. При создании новой конфигурации необходимо выбрать существующую «родительскую» конфигурацию, это может быть системная конфигурация по умолчанию или любая другая конфигурация, которой администратор имеет право управлять. Это означает, что все конфигурации происходят прямо или косвенно от (встроенной) системной конфигурации по умолчанию. Администратор может выбрать наследование параметров от соответствующей «родительской» конфигурации или настроить их (выбрав значок редактирования). Также можно «заблокировать» параметры (выбрав значок блокировки), когда параметры заблокированы, конфигурации нижнего уровня не могут их больше изменять. Конфигурации, имеющие дочерние конфигурации, не могут быть удалены. Кроме того, конфигурации могут быть установлены для определенных гостей (соответствующих параметру URL) и/или для конкретных пользователей (через группу и/или набор групп).

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

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

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

Применимость конфигурации

При просмотре Cyclos как гость (не вошедший в систему) конфигурация, которая будет применена, определяется URL (доменом или путем), к которому пользователь обращается. URL/путь определен в конфигурации.
Когда пользователь входит в Cyclos, будет применена конфигурация, привязанная к группе пользователя. Обратите внимание, что при этом не учитывается URL/путь доступа, определенный в конфигурации группы пользователя.
Пользователь может войти по URL/пути, определенному в конфигурации на более высоком уровне. Но единственная разница в том, что он входит по другому URL. То, что он видит (макет, страницы и т.д.), берется из конфигурации, привязанной к его группе пользователей.
Пример, система со следующими двумя конфигурациями:
* Config1: привязана к group1, URL: www.mybank.com
* Config2: привязана к group2, расширяет config1, путь: www.mybank.com/city
* Пользователь из group2 может получить доступ к обоим доменам, www.mybank.com/city и www.mybank.com. И получит тот же результат после входа в систему.
* Пользователь из group1 может получить доступ только по URL www.mybank.com

Ограничения

Правила для полей

Разрешения


Страницы

Поиск (фильтры)

Поля Тип Правила
Фильтр по группам Множественный выбор Позволяет фильтровать по группам
Название Текст Позволяет фильтровать по названию конфигурации
URL Текст Позволяет фильтровать по URL (определенному в конфигурации)
  • Видимо только в режиме расширенного поиска
Создать Мульти-кнопка действия При создании новой конфигурации необходимо выбрать существующую «родительскую» конфигурацию, это может быть системная конфигурация по умолчанию или любая другая конфигурация, которой администратор имеет право управлять. При нажатии на выбранную опцию открывается пустая страница сведений для создания новой конфигурации на основе выбранной «родительской» конфигурации.
Расширенный Кнопка действия Переключиться в расширенный режим
  • Видимо только в режиме простого поиска
Простой Кнопка действия Переключиться в простой режим
  • Видимо только в режиме расширенного поиска


Результаты поиска (список)

* Автоматически показывает все конфигурации, отображаемые иерархически и отсортированные по алфавиту по имени.

Поля Тип Правила
Название Текст (только чтение) Показывает название конфигурации и значок стрелки перед названием, указывающий на местоположение в иерархии конфигураций.
URL Текст (только чтение) URL конфигурации.
Предпросмотр Иконка Отображает настройки выбранных конфигураций в режиме только для просмотра. Он показывает «активную» конфигурацию, то есть объединяет все примененные настройки (включая унаследованные от конфигураций более высокого уровня).
Удалить Иконка Позволяет администратору удалить конфигурацию.
  • Видимо только если администратор имеет разрешение <permission id="SYSTEM_CONFIGURATION_MANAGE"/>.
  • Конфигурация может быть удалена только если она не используется и/или если у нее нет дочерних элементов.


 

Страница сведений

Поля Тип Правила
Родительская Текст (только чтение) Указывает, какая конфигурация является непосредственным родителем, от которого происходит новая конфигурация. Все конфигурации расширяются непосредственно от другой конфигурации, являющейся либо основной конфигурацией, которая является частью базы данных по умолчанию (системная по умолчанию), либо любой другой конфигурацией нижнего уровня.
  • Не видима для системной по умолчанию.
  • Определение реализовано на верхнем уровне, когда зафиксировано, не может быть изменено в нисходящей конфигурации.
Название Текст Название конфигурации.
  • Обязательное.
  • Должно быть уникальным.
  • Максимальная длина 100 символов.
Описание Текст Здесь можно поместить пояснительный текст для конфигурации.
Основной URL Текст Корневой URL.
  • Должен быть действительным URL. Либо URL основного веб-приложения, включая внутреннее имя сети (например, commmunities.cyclos.org/network1), либо «собственный» домен, разрешаемый на IP-адрес домена основного веб-приложения (например, http://www.mydomain.org, указывающий на communities.cyclos.org).
  • Не должно существовать 2 конфигураций с одинаковой комбинацией корневого URL.
  • Редактируется только глобальными администраторами.
URL путь Текст Путь от корневого URL для区分ния этой конфигурации от других в той же сети. Например, если корневой путь глобальной конфигурации по умолчанию - http://www.server.org, а внутреннее имя сети - 'England', то путь 'London' будет соответствовать запросам к http://www.server.org/england/london.
  • Не может содержать: Может содержать только буквы, цифры, точки, дефисы или знаки плюс
  • Максимум 50 символов.
  • Следующие зарезервированные слова нельзя использовать как имя пути: cyclos, js, images, content, web-rpc, java-rpc
  • Нет опции 'путь' в конфигурации сети по умолчанию или Глобальной конфигурации по умолчанию.
Используется группами Ссылки Показывает группы, currently использующие эту конфигурацию, со ссылками на страницу сведений
  • Пользователи, которые не вошли в систему (гости), обращающиеся с Корневым URL или Путем (см. выше), получат текущую конфигурацию
  • Вошедшие пользователи могут получить доступ только к конфигурациям, в которых указана их группа.
  • Нет опции 'Используется группами' в Глобальной конфигурации по умолчанию.
Данные пользователя
Поля профиля с контролем конфиденциальности Множественный выбор Выбранные поля будут включены в списки контроля конфиденциальности (см.: Конфигурация системы - Конфигурация пользователя - Списки контроля конфиденциальности)
Требовать e-mail Логический Определяет, требуется ли электронная почта для пользователей с этой конфигурацией.
Уникальный e-mail Логический Определяет, должен ли e-mail быть уникальным.
  • Появляется только в конфигурациях верхнего уровня (глобальная, сетевая по умолчанию)
  • Примечание Отмена уникальности e-mail effectively отключает e-mail как метод идентификации для доступа или выполнения/получения платежей в этой конфигурации и ее受影响ных дочерних конфигурациях. Пожалуйста, действуйте осторожно.
Проверять e-mail при Множественный выбор Определяет, когда e-mail должен быть подтвержден пользователем
  • видимо только когда выбран "Требовать e-mail"
  • Доступные опции:
    • Публичная регистрация
    • Регистрация администраторами
    • Регистрация брокерами
    • Регистрация участником
    • Регистрация оператора участником
    • Изменение email самим пользователем
    • Изменение email администратором
    • Изменение email брокером
    • Импортированные пользователи
Настройка конфиденциальности email по умолчанию Одиночный выбор Когда пользователь регистрируется или изменяет свой профиль, он может определить, скрывать или показывать свой email для других. Здесь администратор может выбрать значение по умолчанию для этой настройки. Как правило, для бизнесов это значение будет видимым, а для потребителей - скрытым. Опции:
  • Приватный (Скрыт для других пользователей)
  • Видим для других пользователей
Требовать изображение профиля Логический Когда выбрано, пользователь должен загрузить изображение профиля при регистрации.
Изображение по умолчанию для новых зарегистрированных пользователей Изображение Когда пользователи регистрируются без загрузки изображения профиля, показывается изображение по умолчанию для всей системы. С помощью этой настройки можно иметь настроенные изображения профиля по умолчанию для каждой конфигурации/группы.
Генерируемое имя для входа Логический Определяет, будут ли новые пользователи с этой конфигурацией иметь автоматически сгенерированные имена пользователей (когда отмечено) или им нужно будет предоставить имя пользователя вручную (когда не отмечено). Когда имя пользователя генерируется автоматически, длина будет максимальной, установленной в поле "Длина генерируемого имени для входа". Имя пользователя будет целым числом, когда будет достигнуто максимальное количество цифр, будет добавлена еще одна цифра.
Длина генерируемого имени для входа Целое число Длина генерируемых имен пользователей.
  • Видимо только когда отмечен checkbox "Генерируемое имя для входа".
Регулярное выражение для имени для входа Текст Определяет регулярную маску, используемую для проверки введенных вручную имен пользователей.
  • Видимо только когда checkbox "генерируемое имя для входа" не отмечен (имя пользователя вводится вручную).
  • Использует стандартные регулярные выражения Java http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html
  • Если используются веб-сервисы, пожалуйста, не разрешайте использование двоеточия ":", потому что оно используется для разделения имени пользователя и пароля. Так что не добавляйте "\p" или "\:".
Длина имени пользователя Диапазон целых чисел Определяет минимальное и максимальное количество символов для имен пользователей.
  • Видимо только когда checkbox "Генерируемое имя для входа" не отмечен.
Индивидуальная директория документов Одиночный выбор Конфигурация менеджера контента, в свойствах cyclos


Каналы (Вкладка)

Каналы описаны на выделенной вики-странице.