Разработка:С чего начать — различия между версиями
Johnleft (обсуждение | вклад) (→freedeansoffice.: дописал этот раздел и раздел с вопросами) |
Alex (обсуждение | вклад) (Добавлена категория) |
||
(не показано 6 промежуточных версий 3 участников) | |||
Строка 8: | Строка 8: | ||
## чтобы на нем работали apache, php, mysql. | ## чтобы на нем работали apache, php, mysql. | ||
## На него надо скопировать в соответствующую папку файлы moodle. | ## На него надо скопировать в соответствующую папку файлы moodle. | ||
− | ## В | + | ## В СУБД создать БД с таким же именем, которое было на прежнем ПК. |
## Занести туда все таблицы из прежней БД. | ## Занести туда все таблицы из прежней БД. | ||
## Задать логин и пароль на доступ к БД, которые использовались для этого на предыдущем ПК. Логин и пароль прописаны в файле /htdocs/config.php (см структуру папок). | ## Задать логин и пароль на доступ к БД, которые использовались для этого на предыдущем ПК. Логин и пароль прописаны в файле /htdocs/config.php (см структуру папок). | ||
Строка 35: | Строка 35: | ||
## role_assignments - кому, какая роль, когда, в каком контексте разрешена. | ## role_assignments - кому, какая роль, когда, в каком контексте разрешена. | ||
# Для создания и модификации таблиц лучше использовать встроенный редактор таблиц. | # Для создания и модификации таблиц лучше использовать встроенный редактор таблиц. | ||
− | ## Чтобы его открыть надо перейте по ссылке разное->XMLDB редактор, блока "Администрирование". Результатом работы является файл install.xml, который лежит в папке соответствующего модуля. | + | ## Чтобы его открыть надо перейте по ссылке разное->XMLDB редактор, блока "Администрирование". Результатом работы является файл install.xml, который лежит в папке соответствующего модуля. Подробную справку по работе с XMLDB-редактором можно найти в статье [[Разработка:XMLDB]]. |
## Чтобы сделать это с помощью функций, используйте библиотеку /htdocs/lib/ddllib.php. Пример ее использования можно найти в moodle или dof в файле upgrade.php | ## Чтобы сделать это с помощью функций, используйте библиотеку /htdocs/lib/ddllib.php. Пример ее использования можно найти в moodle или dof в файле upgrade.php | ||
+ | |||
== freedeansoffice. == | == freedeansoffice. == | ||
# Установка модуля описана [[Администрирование:Установка|здесь]]. | # Установка модуля описана [[Администрирование:Установка|здесь]]. | ||
− | # Со структурой модуля можно ознакомиться [[Разработка:Структура|тут]]. | + | # Со структурой модуля можно ознакомиться [[Разработка:Структура|тут]]. Внимательно ознакомьтесь с ней и со структурой плагинов. Посмотрите как реализованы примеры плагинов разных типов. Чтобы все правильно работало, нужно, чтобы были соблюдены требования к наличию структуры минимального набора файлов плагина. |
− | + | # Создайте плагин [[Разработка:Создание плагина|по образцу]], и обратите внимание, какие методы и как надо определять, чтобы плагин корректно устанавливался и работал. | |
− | + | # Работа справочников основана на стандартных методах, которые описаны в /dof/lib/storage_base.php. | |
− | + | # Внимательно изучите файл /dof/lib/dof.php и содержащиеся в нем методы. Ими вам придется пользоваться постоянно. Например, | |
− | + | ## Чтобы в каком-то модуле получить запись из таблицы, с которой работает examplest, надо написать конструкцию типа '''$rec = $DOF->storage('examplest')->get($id);''' | |
− | + | ## Когда надо вывести на экран строку текста "Идет обработка данных...", который задан в модуле widgets типа modlib, то используется команда '''$str = $DOF->get_string('proccessing','widgets',null,'modlib');''' | |
− | $rec = $DOF->storage('examplest')->get($id); | + | ## С помощью метода plugin_path вы получаете путь к файлам и папкам плагинов. Этот метод следует использовать для подключения библиотек и других подобных случаях. |
− | + | ## Метод url_im позволяет получить www-адрес странички в плагине типа im. | |
− | $str = $DOF->get_string('proccessing','widgets',null,'modlib'); | + | |
− | |||
− | |||
== Вопросы для самоконтроля == | == Вопросы для самоконтроля == | ||
Для того, чтобы убедиться, что вы в минимальной степени ориентируетесь в moodle и freedeansoffice ответьте на вопросы, написанные ниже. | Для того, чтобы убедиться, что вы в минимальной степени ориентируетесь в moodle и freedeansoffice ответьте на вопросы, написанные ниже. | ||
− | Если вы | + | Если вы можете найти ответы на них, то разберетесь и с вопросами, которые возникнут в процессе работы над плагинами. |
− | |||
=== Вопросы по moodle. === | === Вопросы по moodle. === | ||
# Какие данные хранятся в таблицах БД moodle? | # Какие данные хранятся в таблицах БД moodle? | ||
Строка 92: | Строка 90: | ||
# Каково назначение плагина ama? | # Каково назначение плагина ama? | ||
## Как получить методы для работы с курсами, группами, пользователями? | ## Как получить методы для работы с курсами, группами, пользователями? | ||
+ | |||
+ | [[Категория:Разработка]] |
Текущая версия на 17:28, 12 октября 2009
Чтобы успешно работать над проектом кроме общих навыков программирования следует ориентироваться в архитектуре и реализации moodle и deansoffice. Ниже описаны краткие сведения, которые могут помочь разработчику освоить эти системы. Символ / написанный в начале пути папок здесь обозначает корневую папку moodle или блока dof.
Содержание
moodle.
- Подробности по работе с moodle можно найти на http://moodle.org.
- Структура папок описана тут.
- Установка moodle описана здесь.
- Чтобы перенести работающую систему на другой компьютер, надо
- чтобы на нем работали apache, php, mysql.
- На него надо скопировать в соответствующую папку файлы moodle.
- В СУБД создать БД с таким же именем, которое было на прежнем ПК.
- Занести туда все таблицы из прежней БД.
- Задать логин и пароль на доступ к БД, которые использовались для этого на предыдущем ПК. Логин и пароль прописаны в файле /htdocs/config.php (см структуру папок).
- Для установки блока или модуля в moodle надо
- скопировать его в папку /htdocs/blocks или /htdocs/mod соответственно.
- Зайти в администрирование->уведомления.
- Прочитать сообщение об успешной установке.
- При работе с системой придется использовать ее функции.
- Они лежат в папке /htdocs/lib.
- А также в папках lib модулей, установленных в системе.
- И в файлах с суффиксом lib.php.
- Наиболее нужными из них являются файлы
- moodlelib.php - в нем лежат часто употребляемые функции общего назначения, определяеются многие константы.
- datalib.php - набор функций для получения часто используемых данных из БД.
- dmllib.php - функции для взаимодействия с БД.
- weblib.php - функции для формирования элементов веб странички. Таких как заголовок, кнопка, форма и т.п.
- Для перевода интерфейса на русский язык в moodle используются языковые файлы локализации.
- Они лежат в папке /moodledata/lang/ru_utf8.
- Для изменения перевода надо перейти по ссылкам блока администрирование язык->редактирование языка->редактирование слов или фраз.
- Результат редактирования сохраняется в папке /moodledata/lang/ru_utf8_local.
- Все большинство данных moodle хранит в БД. Для работы с различными элементами системы используются одноименные таблицы.
- user - данные о пользователях.
- roles - роли системы
- context - описывает контексты (уровни) системы. Примеры - сайт, курс, блок, элемент курса, экземпляр курса.
- role_capabilities - что разрешено роли в конкретном контексте.
- role_assignments - кому, какая роль, когда, в каком контексте разрешена.
- Для создания и модификации таблиц лучше использовать встроенный редактор таблиц.
- Чтобы его открыть надо перейте по ссылке разное->XMLDB редактор, блока "Администрирование". Результатом работы является файл install.xml, который лежит в папке соответствующего модуля. Подробную справку по работе с XMLDB-редактором можно найти в статье Разработка:XMLDB.
- Чтобы сделать это с помощью функций, используйте библиотеку /htdocs/lib/ddllib.php. Пример ее использования можно найти в moodle или dof в файле upgrade.php
freedeansoffice.
- Установка модуля описана здесь.
- Со структурой модуля можно ознакомиться тут. Внимательно ознакомьтесь с ней и со структурой плагинов. Посмотрите как реализованы примеры плагинов разных типов. Чтобы все правильно работало, нужно, чтобы были соблюдены требования к наличию структуры минимального набора файлов плагина.
- Создайте плагин по образцу, и обратите внимание, какие методы и как надо определять, чтобы плагин корректно устанавливался и работал.
- Работа справочников основана на стандартных методах, которые описаны в /dof/lib/storage_base.php.
- Внимательно изучите файл /dof/lib/dof.php и содержащиеся в нем методы. Ими вам придется пользоваться постоянно. Например,
- Чтобы в каком-то модуле получить запись из таблицы, с которой работает examplest, надо написать конструкцию типа $rec = $DOF->storage('examplest')->get($id);
- Когда надо вывести на экран строку текста "Идет обработка данных...", который задан в модуле widgets типа modlib, то используется команда $str = $DOF->get_string('proccessing','widgets',null,'modlib');
- С помощью метода plugin_path вы получаете путь к файлам и папкам плагинов. Этот метод следует использовать для подключения библиотек и других подобных случаях.
- Метод url_im позволяет получить www-адрес странички в плагине типа im.
Вопросы для самоконтроля
Для того, чтобы убедиться, что вы в минимальной степени ориентируетесь в moodle и freedeansoffice ответьте на вопросы, написанные ниже. Если вы можете найти ответы на них, то разберетесь и с вопросами, которые возникнут в процессе работы над плагинами.
Вопросы по moodle.
- Какие данные хранятся в таблицах БД moodle?
- Где хранятся логин и пароль на доступ к БД moodle?
- Как перенести систему на другой компьютер/сервер, не устанавливая ее из дистрибутива?
- В каких таблицах хранится информация о
- пользователях системы?
- ролях?
- полномочиях?
- контекстах полномочий?
- оценках?
- курсах?
- элементах курсов?
- Какова структура папок moodle?
- Где лежат элементы курса?
- Где лежат библиотеки функций?
- Какие функции лежат в файлах moodlelib.php, weblib.php, dmllid.php, datalib.php
- В каких файлах лежат функции для работы с
- БД?
- элементами интерфейса?
- В каком файле лежит слово "уведомление", которое выводится в блоке "администрирование"?
- Как создавать таблицы через xmldb-редактор?
- Как писать функции обновления таблиц через xmldb?
- Как установить новый блок?
Вопросы по freedeansoffice.
- Как он устанавливается в moodle?
- Какова структура папок блока freedeansoffice?
- Какова структура папок его плагинов?
- Какие методы надо обязательно определять при создании плагина к dof?
- В каком файле лежат стандартные методы для работы с таблицами?
- Где лежат и как называются методы, с помощью которых
- выводится сообщение на экран?
- можно получить путь к плагину?
- путь к файлу внутри плагина?
- выводится навигационная панель?
- выводятся шапка и подвал страницы?
- выводятся блоки в модуле freedeansoffice?
- Каково назначение плагина ama?
- Как получить методы для работы с курсами, группами, пользователями?