Parent Directory
|
Revision Log
Some news form this commit:
<?php
/**
* Created on 05/03/2008
*
* Moodle api layer main import
*
* @author Ferran Recio
* @author David Castro Garcia
*/
if (!isset($CFG->dirroot)) {
require_once ('../config.php');
}
//require api layer support library
$api_dir = dirname(__FILE__);
require_once ($api_dir.'/lib.php');
if (!isset($_SESSION['API_INFO'])) {
$_SESSION['API_INFO'] = false;
}
$API_INFO = &$_SESSION['API_INFO'];
if (isset($API_INFO) && $API_INFO) {
$global_apis = mdl_get_declared_apis ();
if ($global_apis) {
foreach ($global_apis as $api) {
//check if is a special api (mod, block... whatever)
$func_prefix = 'mdl';
$apiname = $api;
$parts = explode('.',$api,2);
$file_path = '';
if (count($parts)>1) {
//check files
$file_path = $CFG->dirroot.'/'.$parts[0].'/'.$parts[1].'/api.lib.php';
if (!file_exists($file_path)) {
$file_path = $api_dir.'/'.$parts[0].'/'.$parts[1].'.lib.php';
}
$func_prefix = $parts[0];
$apiname = $parts[1];
} else {
$file_path = $api_dir.'/apis/'.$api.'.lib.php';
}
if (file_exists($file_path)) {
require_once ($file_path);
//check if api info is loaded
if (!mdl_is_api_info_loaded ($api)) {
$info_func = $func_prefix.'_'.$apiname.'_info';
if (function_exists($info_func)) {
$api_info = $info_func();
if (!$api_info || !mdl_add_api_info ($api,$api_info)) die ("ERROR importing $api");
}
}
}
}
}
} else {
//include all global apis units
$global_apis = mdl_dir_files ($api_dir.'/apis','.lib.php');
if ($global_apis) {
foreach ($global_apis as $api) {
$api_name = substr($api,0,strlen($api)-8);
if ($api_name == 'config') continue;
require_once ($api_dir.'/apis/'.$api);
//get api info
$info_func = 'mdl_'.$api_name.'_info';
if (function_exists($info_func)) {
$api_info = $info_func();
if (!$api_info || !mdl_add_api_info ($api_name,$api_info)) die ("ERROR importing $api_name");
}
}
}
}
//print_object (mdl_get_global_api());
//print_object (mdl_course_get_course_by_user(4));
//print_object (mdl_course_get_courses());
?>
| Moodle CVS Admin | ViewVC Help |
| Powered by ViewVC 1.0.7 |