|
|
|
@ -4661,7 +4661,7 @@ function WSSubscribeUserToCourse($params) |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
if ($debug) { |
|
|
|
if ($debug) { |
|
|
|
error_log('WSSubscribeUserToCourse NOT subscribed: '); |
|
|
|
error_log('WSSubscribeUserToCourse NOT subscribed.'); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@ -4873,11 +4873,27 @@ $server->wsdl->addComplexType( |
|
|
|
'secret_key' => ['name' => 'secret_key', 'type' => 'xsd:string'], |
|
|
|
'secret_key' => ['name' => 'secret_key', 'type' => 'xsd:string'], |
|
|
|
] |
|
|
|
] |
|
|
|
); |
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Prepare output params, in this case will return an array |
|
|
|
|
|
|
|
$server->wsdl->addComplexType( |
|
|
|
|
|
|
|
'UserWithExtraFields', |
|
|
|
|
|
|
|
'complexType', |
|
|
|
|
|
|
|
'struct', |
|
|
|
|
|
|
|
'all', |
|
|
|
|
|
|
|
'', |
|
|
|
|
|
|
|
[ |
|
|
|
|
|
|
|
'user_id' => ['name' => 'user_id', 'type' => 'xsd:string'], |
|
|
|
|
|
|
|
'firstname' => ['name' => 'firstname', 'type' => 'xsd:string'], |
|
|
|
|
|
|
|
'lastname' => ['name' => 'lastname', 'type' => 'xsd:string'], |
|
|
|
|
|
|
|
'extra_fields' => ['name' => 'extra_fields', 'type' => 'xsd:string'], |
|
|
|
|
|
|
|
] |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
// Register the method to expose |
|
|
|
// Register the method to expose |
|
|
|
$server->register( |
|
|
|
$server->register( |
|
|
|
'WSGetUserFromUsername', // method name |
|
|
|
'WSGetUserFromUsername', // method name |
|
|
|
['GetUserFromUsername' => 'tns:GetUserArgUsername'], // input params |
|
|
|
['GetUserFromUsername' => 'tns:GetUserArgUsername'], // input params |
|
|
|
['return' => 'tns:User'], // output parameters |
|
|
|
['return' => 'tns:UserWithExtraFields'], // output parameters |
|
|
|
'urn:WSRegistration', // namespace |
|
|
|
'urn:WSRegistration', // namespace |
|
|
|
'urn:WSRegistration#WSGetUserFromUsername', // soapaction |
|
|
|
'urn:WSRegistration#WSGetUserFromUsername', // soapaction |
|
|
|
'rpc', // style |
|
|
|
'rpc', // style |
|
|
|
@ -4900,6 +4916,79 @@ function WSGetUserFromUsername($params) |
|
|
|
return returnError(WS_ERROR_SECRET_KEY); |
|
|
|
return returnError(WS_ERROR_SECRET_KEY); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Get user id |
|
|
|
|
|
|
|
$user_data = api_get_user_info_from_username($params['username']); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$result = []; |
|
|
|
|
|
|
|
$result['user_id'] = ''; |
|
|
|
|
|
|
|
$result['firstname'] = ''; |
|
|
|
|
|
|
|
$result['lastname'] = ''; |
|
|
|
|
|
|
|
$result['extra_fields'] = ''; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (empty($user_data)) { |
|
|
|
|
|
|
|
// If user was not found, there was a problem |
|
|
|
|
|
|
|
if ($debug) { |
|
|
|
|
|
|
|
error_log('User not found :('); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
$result['user_id'] = $user_data['user_id']; |
|
|
|
|
|
|
|
$result['firstname'] = $user_data['firstname']; |
|
|
|
|
|
|
|
$result['lastname'] = $user_data['lastname']; |
|
|
|
|
|
|
|
$result['email'] = $user_data['email']; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Get extra fields |
|
|
|
|
|
|
|
$fieldValue = new ExtraFieldValue('user'); |
|
|
|
|
|
|
|
$extra = $fieldValue->getAllValuesByItem($result['user_id']); |
|
|
|
|
|
|
|
$result['extra_fields'] = json_encode($extra); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ($debug) { |
|
|
|
|
|
|
|
error_log('User found :) return value '.print_r($result, 1)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return $result; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$server->wsdl->addComplexType( |
|
|
|
|
|
|
|
'GetUserArgUsernameWithOriginal', |
|
|
|
|
|
|
|
'complexType', |
|
|
|
|
|
|
|
'struct', |
|
|
|
|
|
|
|
'all', |
|
|
|
|
|
|
|
'', |
|
|
|
|
|
|
|
[ |
|
|
|
|
|
|
|
'username' => ['name' => 'username', 'type' => 'xsd:string'], |
|
|
|
|
|
|
|
'original_user_id_name' => ['name' => 'original_user_id_name', 'type' => 'xsd:string'], |
|
|
|
|
|
|
|
'original_user_id_value' => ['name' => 'original_user_id_value', 'type' => 'xsd:string'], |
|
|
|
|
|
|
|
'secret_key' => ['name' => 'secret_key', 'type' => 'xsd:string'], |
|
|
|
|
|
|
|
] |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
// Register the method to expose |
|
|
|
|
|
|
|
$server->register( |
|
|
|
|
|
|
|
'WSUpdateUserOriginalIdFromUsername', // method name |
|
|
|
|
|
|
|
['WSUpdateUserOriginalIdFromUsername' => 'tns:GetUserArgUsernameWithOriginal'], // input params |
|
|
|
|
|
|
|
['return' => 'tns:User'], // output parameters |
|
|
|
|
|
|
|
'urn:WSRegistration', // namespace |
|
|
|
|
|
|
|
'urn:WSRegistration#WSGetUserFromUsername', // soapaction |
|
|
|
|
|
|
|
'rpc', // style |
|
|
|
|
|
|
|
'encoded', // use |
|
|
|
|
|
|
|
'This service get user information by username' // documentation |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// define the method WSGetUserFromUsername |
|
|
|
|
|
|
|
function WSUpdateUserOriginalIdFromUsername($params) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
global $debug; |
|
|
|
|
|
|
|
if ($debug) { |
|
|
|
|
|
|
|
error_log('WSUpdateUserOriginalIdFromUsername'); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if ($debug) { |
|
|
|
|
|
|
|
error_log('$params: '.print_r($params, 1)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!WSHelperVerifyKey($params)) { |
|
|
|
|
|
|
|
return returnError(WS_ERROR_SECRET_KEY); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
$result = []; |
|
|
|
$result = []; |
|
|
|
|
|
|
|
|
|
|
|
// Get user id |
|
|
|
// Get user id |
|
|
|
@ -4920,18 +5009,27 @@ function WSGetUserFromUsername($params) |
|
|
|
$result['lastname'] = $user_data['lastname']; |
|
|
|
$result['lastname'] = $user_data['lastname']; |
|
|
|
$result['email'] = $user_data['email']; |
|
|
|
$result['email'] = $user_data['email']; |
|
|
|
|
|
|
|
|
|
|
|
// Get extra fields |
|
|
|
$resultUpdate = UserManager::update_extra_field_value( |
|
|
|
|
|
|
|
$user_data['user_id'], |
|
|
|
|
|
|
|
$params['original_user_id_name'], |
|
|
|
|
|
|
|
$params['original_user_id_value'] |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
$fieldValue = new ExtraFieldValue('user'); |
|
|
|
$fieldValue = new ExtraFieldValue('user'); |
|
|
|
$extra = $fieldValue->getAllValuesByItem( |
|
|
|
$extraList = $fieldValue->getAllValuesByItem( |
|
|
|
$result['user_id'] |
|
|
|
$result['user_id'] |
|
|
|
); |
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
$result['extra'] = $extra; |
|
|
|
$result['extra'] = $extraList; |
|
|
|
|
|
|
|
|
|
|
|
if ($debug) { |
|
|
|
if ($debug) { |
|
|
|
error_log('User found :) return value '.print_r($result, 1)); |
|
|
|
if ($resultUpdate) { |
|
|
|
|
|
|
|
error_log('User updated :) '); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
error_log('User not updated :('); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
error_log('$result: '.print_r($result, 1)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
return $result; |
|
|
|
return $result; |
|
|
|
|