[svn r19193] Fixes to the SOAP return format

skala
Yannick Warnier 16 years ago
parent d1b7c33056
commit 59b19291b6
  1. 35
      main/webservices/courses_list.soap.php

@ -21,17 +21,33 @@ $server->configureWSDL('WSCourseList', 'urn:WSCourseList');
/* Register DokeosWSCourseList function */
// Register the data structures used by the service
$server->wsdl->addComplexType(
'courseDetails',
'complexType',
'struct',
'all',
'',
array(
'name'=>'code' , 'type'=>'xsd:string',
'name'=>'title' , 'type'=>'xsd:string',
'name'=>'url' , 'type'=>'xsd:string',
'name'=>'teacher', 'type'=>'xsd:string',
'name'=>'language','type'=>'xsd:string',
)
);
$server->wsdl->addComplexType(
'courseList',
'complexType',
'struct',
'all',
'array',
'',
'SOAP-ENC:Array',
array(),
array(
'username' => array('name' => 'username', 'type' => 'xsd:string'),
'signature' => array('name' => 'signature', 'type' => 'xsd:string'),
'visibilities' => array('name' => 'visibilities', 'type' => 'xsd:string'),
)
array('ref'=>'SOAP:ENC:arrayType',
'wsdl:arrayType'=>'tns:courseDetails[]')
),
'tns:courseDetails'
);
// Register the method to expose
@ -39,7 +55,7 @@ $server->register('DokeosWSCourseList', // method name
array('username' => 'xsd:string',
'signature' => 'xsd:string',
'visibilities' => 'xsd:string'), // input parameters
array('return' => 'xsd:array'), // output parameters
array('return' => 'xsd:Array'), // output parameters
'urn:WSCourseList', // namespace
'urn:WSCourseList#DokeosWSCourseList', // soapaction
'rpc', // style
@ -92,10 +108,9 @@ function DokeosWSCourseList($username, $signature, $visibilities='public') {
return array('error_msg'=>'Security check failed');
}
$courses_list_tmp = CourseManager::get_courses_list(null,null,null,null,$vis[$visibility]);
foreach ( $courses_list_tmp as $index => $course )
{
foreach ( $courses_list_tmp as $index => $course ) {
$course_info = CourseManager::get_course_information($course['code']);
$courses_list[$course['code']] = array('title'=>mb_convert_encoding($course_info['title'],'UTF-8',$charset),'url'=>api_get_path(WEB_COURSE_PATH).$course_info['directory'].'/','teacher'=>mb_convert_encoding($course_info['tutor_name'],'UTF-8',$charset),'language'=>$course_info['course_language']);
$courses_list[] = array('code'=>$course['code'],'title'=>mb_convert_encoding($course_info['title'],'UTF-8',$charset),'url'=>api_get_path(WEB_COURSE_PATH).$course_info['directory'].'/','teacher'=>mb_convert_encoding($course_info['tutor_name'],'UTF-8',$charset),'language'=>$course_info['course_language']);
}
}
return $courses_list;

Loading…
Cancel
Save