Разработка:Структура — различия между версиями
м («Разработка:Плагины и библиотеки» переименована в «Разработка:Структура») |
Alex (обсуждение | вклад) (Добавлена категория) |
||
(не показаны 4 промежуточные версии 3 участников) | |||
Строка 1: | Строка 1: | ||
− | + | ==Плагины== | |
− | == | + | ===Интерфейс пользователя=== |
− | + | Плагины данного типа реализуют веб-интерфейс пользователя. | |
* [[Разработка:im/exampleim | Пример плагина интерфейса]] | * [[Разработка:im/exampleim | Пример плагина интерфейса]] | ||
+ | * [[Разработка:im/admin | Интерфейс администратора]] | ||
* [[Разработка:im/persons | Управление списками участников]] | * [[Разработка:im/persons | Управление списками участников]] | ||
− | * [[Разработка:im/sel | | + | * [[Разработка:im/sel | Интерфейс приемной комиссии]] |
* [[Разработка:im/standard | Стандартный интерфейс первой страницы]] | * [[Разработка:im/standard | Стандартный интерфейс первой страницы]] | ||
− | ==Справочники== | + | ===Справочники=== |
− | * [[Разработка: | + | Классы для обращения к таблицам базы данных. Каждый плагин этого типа является ООП-интерфейсом доступа к одной одноименной таблице в базе данных, плагин сразу наследует основные операции для работы с таблицей, остальные операции должны быть объявлены как методы класса. |
− | * [[Разработка: | + | * [[Разработка:storages/examplest | Пример плагина справочника]] |
− | * [[Разработка: | + | * [[Разработка:storages/persons | Участники образовательного процесса]] |
+ | * [[Разработка:storages/contracts | Договор учащегося с учебным заведением]] | ||
+ | |||
+ | ===Дополнительные библиотеки=== | ||
+ | Плагин-библиотека (для плагинов, не выводящих интерфейса пользователя и не подходящих ни для одного другого типа, либо для повторно-используемых библиотек) | ||
+ | * [[Разработка:modlibs/examplelib | Пример модуля библиотеки ]] | ||
+ | * [[Разработка:modlibs/ama | Библиотека доступа к объектам Moodle]] | ||
+ | * [[Разработка:modlibs/nvg | Элементы навигации]] | ||
+ | * [[Разработка:modlibs/widgets | Дополнительные виджеты (формы, прогрессбар и т.д.)]] | ||
+ | |||
+ | ===Синхронизации=== | ||
+ | Плагин управления синхронизации с внешними базами данных | ||
+ | * [[Разработка:sync/examplesync| Пример плагина синхронизации]] | ||
+ | * [[Разработка:sync/personstom| Синхронизация справочника участников с пользователями Moodle]] | ||
+ | |||
+ | ===Рабочие процессы=== | ||
+ | Задают список возможных статусов объекта, возможные переходы между ними и действия, которые автоматически выполняются при переходе. | ||
+ | * [[Разработка:workflows/contracts| Рабочий процесс для договоров]] | ||
+ | * [[Разработка:workflows/examplewf| Пример плагина рабочего процесса]] | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ==Системные библиотеки== | + | ==Системные библиотеки FDO== |
* [[Разработка:lib/dof.php|Обьявление основного класса Электронного деканата]] | * [[Разработка:lib/dof.php|Обьявление основного класса Электронного деканата]] | ||
+ | |||
+ | ==Структура папок и файлов FDO== | ||
+ | * block_dof.php - объект блока Moodle, отвечает за отображение блока на страницах Moodle, а так же задает основные правила взаимодействия Moodle с FDO | ||
+ | * lib.php - файл инициализации FDO | ||
+ | * cfg/ - конфигурационные файлы | ||
+ | * cfg/тип_плагина/имя_плагина/ - папка с конфигурационными файломами, при наличие которых метод $DOF->plugin_path() возвращает путь к ним вместо пути в папки cfg/ внутри плагина | ||
+ | * db/ - файлы установки привилегий и баз данных, используемых ядром системы | ||
+ | * im/ - папка с плагинами интерфейса пользователя | ||
+ | * lang/ - языковые файлы ядра системы | ||
+ | * lib/ - основные библиотеки | ||
+ | * [[Разработка:lib/dof.php| lib/dof.php]] - класс основного объекта $DOF, через который выполняется доступ ко всем функциям FDO и функциям плагинов | ||
+ | * lib/im.php - объявление интерфейса класса для плагинов im | ||
+ | * lib/modlib.php - объявление интерфейса класса для плагинов modlib | ||
+ | * lib/plugin.php - объявление общего интерфейса плагинов (все методы, объявленные тут, должны быть определены в каждом плагине) | ||
+ | * lib/storage_base.php - объявление методов для основных операций с базой данных (get,delete,insert,update и других) | ||
+ | * lib/storage.php - объявление интерфейса класса для плагинов storage | ||
+ | * lib/sync.php - объявление интерфейса класса для плагинов sync | ||
+ | * lib/utils.php - библиотека полезных функций, для использования в ядре FDO и плагинах | ||
+ | * lib/workflow.php - объявление интерфейса класса для плагинов workflow | ||
+ | * modlibs/ - плагины библиотек | ||
+ | * storages/ - справочники | ||
+ | * sync/ - плагины синхронизации с любыми внешними данными | ||
+ | * workflows/ - плагины рабочих процессов | ||
+ | * тип_плагина/имя_плагина/init.php - файл с основным классом плагина (обязателен) | ||
+ | * im/имя_плагина/lib.php - основной подключаемый файл интерфейса, должен быть загружен из всех файлов, к которым пользователь может обратиться напрямую, внутри себя должен загружать im из корня FDO | ||
+ | * тип_плагина/имя_плагина/cfg/ - конфигурационные файлы плагина | ||
+ | * тип_плагина/имя_плагина/db - установочные файлы базы данных | ||
+ | * тип_плагина/имя_плагина/lang/код_языка/ - языковые файлы | ||
+ | |||
+ | [[Категория:Разработка]] |
Текущая версия на 17:29, 12 октября 2009
Содержание
Плагины
Интерфейс пользователя
Плагины данного типа реализуют веб-интерфейс пользователя.
- Пример плагина интерфейса
- Интерфейс администратора
- Управление списками участников
- Интерфейс приемной комиссии
- Стандартный интерфейс первой страницы
Справочники
Классы для обращения к таблицам базы данных. Каждый плагин этого типа является ООП-интерфейсом доступа к одной одноименной таблице в базе данных, плагин сразу наследует основные операции для работы с таблицей, остальные операции должны быть объявлены как методы класса.
- Пример плагина справочника
- Участники образовательного процесса
- Договор учащегося с учебным заведением
Дополнительные библиотеки
Плагин-библиотека (для плагинов, не выводящих интерфейса пользователя и не подходящих ни для одного другого типа, либо для повторно-используемых библиотек)
- Пример модуля библиотеки
- Библиотека доступа к объектам Moodle
- Элементы навигации
- Дополнительные виджеты (формы, прогрессбар и т.д.)
Синхронизации
Плагин управления синхронизации с внешними базами данных
Рабочие процессы
Задают список возможных статусов объекта, возможные переходы между ними и действия, которые автоматически выполняются при переходе.
Системные библиотеки FDO
Структура папок и файлов FDO
- block_dof.php - объект блока Moodle, отвечает за отображение блока на страницах Moodle, а так же задает основные правила взаимодействия Moodle с FDO
- lib.php - файл инициализации FDO
- cfg/ - конфигурационные файлы
- cfg/тип_плагина/имя_плагина/ - папка с конфигурационными файломами, при наличие которых метод $DOF->plugin_path() возвращает путь к ним вместо пути в папки cfg/ внутри плагина
- db/ - файлы установки привилегий и баз данных, используемых ядром системы
- im/ - папка с плагинами интерфейса пользователя
- lang/ - языковые файлы ядра системы
- lib/ - основные библиотеки
- lib/dof.php - класс основного объекта $DOF, через который выполняется доступ ко всем функциям FDO и функциям плагинов
- lib/im.php - объявление интерфейса класса для плагинов im
- lib/modlib.php - объявление интерфейса класса для плагинов modlib
- lib/plugin.php - объявление общего интерфейса плагинов (все методы, объявленные тут, должны быть определены в каждом плагине)
- lib/storage_base.php - объявление методов для основных операций с базой данных (get,delete,insert,update и других)
- lib/storage.php - объявление интерфейса класса для плагинов storage
- lib/sync.php - объявление интерфейса класса для плагинов sync
- lib/utils.php - библиотека полезных функций, для использования в ядре FDO и плагинах
- lib/workflow.php - объявление интерфейса класса для плагинов workflow
- modlibs/ - плагины библиотек
- storages/ - справочники
- sync/ - плагины синхронизации с любыми внешними данными
- workflows/ - плагины рабочих процессов
- тип_плагина/имя_плагина/init.php - файл с основным классом плагина (обязателен)
- im/имя_плагина/lib.php - основной подключаемый файл интерфейса, должен быть загружен из всех файлов, к которым пользователь может обратиться напрямую, внутри себя должен загружать im из корня FDO
- тип_плагина/имя_плагина/cfg/ - конфигурационные файлы плагина
- тип_плагина/имя_плагина/db - установочные файлы базы данных
- тип_плагина/имя_плагина/lang/код_языка/ - языковые файлы