///
///Note: web services param names have not importance. However 'paramorder' must match the function params order.
///And all web services param names defined into 'wsparams' should be included into 'paramorder' (otherwise they will not be used)
- $this->descriptions['tmp_create_user'] = array( 'wsparams' => array('username'=> PARAM_RAW, 'firstname'=> PARAM_RAW, 'lastname'=> PARAM_RAW, 'email'=> PARAM_RAW, 'password'=> PARAM_RAW),
- 'return' => array('userid' => PARAM_RAW));
+ $this->descriptions['tmp_create_user'] = array( 'params' => array('username'=> PARAM_RAW, 'firstname'=> PARAM_RAW, 'lastname'=> PARAM_RAW, 'email'=> PARAM_RAW, 'password'=> PARAM_RAW),
+ 'optionalparams' => array( ),
+ 'return' => array('userid' => PARAM_RAW));
- $this->descriptions['tmp_get_users'] = array( 'wsparams' => array('search'=> PARAM_ALPHANUM),
- 'return' => array('user' => array('id' => PARAM_RAW, 'auth' => PARAM_RAW, 'confirmed' => PARAM_RAW, 'username' => PARAM_RAW, 'idnumber' => PARAM_RAW,
+ $this->descriptions['tmp_get_users'] = array( 'params' => array('search'=> PARAM_ALPHANUM),
+ 'optionalparams' => array( ),
+ 'return' => array('user' => array('id' => PARAM_RAW, 'auth' => PARAM_RAW, 'confirmed' => PARAM_RAW, 'username' => PARAM_RAW, 'idnumber' => PARAM_RAW,
'firstname' => PARAM_RAW, 'lastname' => PARAM_RAW, 'email' => PARAM_RAW, 'emailstop' => PARAM_RAW,
'lang' => PARAM_RAW, 'theme' => PARAM_RAW, 'timezone' => PARAM_RAW, 'mailformat' => PARAM_RAW)));
- $this->descriptions['tmp_delete_user'] = array( 'wsparams' => array('username'=> PARAM_ALPHANUM, 'mnethostid'=> PARAM_NUMBER),
- 'return' => array('result' => PARAM_BOOL));
+ $this->descriptions['tmp_delete_user'] = array( 'params' => array('username'=> PARAM_ALPHANUM, 'mnethostid'=> PARAM_NUMBER),
+ 'optionalparams' => array( ),
+ 'return' => array('result' => PARAM_BOOL));
- $this->descriptions['tmp_update_user'] = array( 'wsparams' => array('username'=> PARAM_ALPHANUM, 'mnethostid'=> PARAM_NUMBER, 'newusername' => PARAM_ALPHANUM, 'firstname' => PARAM_ALPHANUM),
- 'return' => array('result' => PARAM_BOOL));
+ $this->descriptions['tmp_update_user'] = array( 'params' => array('username'=> PARAM_ALPHANUM, 'mnethostid'=> PARAM_NUMBER),
+ 'optionalparams' => array( 'newusername' => PARAM_ALPHANUM, 'firstname' => PARAM_ALPHANUM),
+ 'return' => array('result' => PARAM_BOOL));
}
/**
* Retrieve all user
- * @param string $search
+ * @param array $params
+ * ->search string
* @return object user
*/
- static function tmp_get_users($search) {
+ static function tmp_get_users($params) {
+
$selectioncriteria = new stdClass();
- $selectioncriteria->search = $search;
+ $selectioncriteria->search = $params['search'];
return user_api::tmp_get_users('firstname ASC', 999999, 0, 'id, auth, confirmed, username, idnumber, firstname, lastname, email, emailstop, lang, theme, timezone, mailformat', $selectioncriteria);
}
/**
* Create a user
- * @param string $username
- * @param string $firstname
- * @param string $lastname
- * @param string $email
- * @param string $password
+ * @param array $params
+ * @param $username string
+ * ->firstname string
+ * ->lastname string
+ * ->email string
+ * ->password string
* @return integer id of new user
*/
- static function tmp_create_user($username, $firstname, $lastname, $email, $password) {
+ static function tmp_create_user($params) {
$user = array();
- $user['username'] = $username;
- $user['firstname'] = $firstname;
- $user['lastname'] = $lastname;
- $user['email'] = $email;
- $user['password'] = $password;
+ $user['username'] = $params['username'];
+ $user['firstname'] = $params['firstname'];
+ $user['lastname'] = $params['lastname'];
+ $user['email'] = $params['email'];
+ $user['password'] = $params['password'];
return user_api::tmp_create_user($user);
}
/**
* Delete a user
* @global object $DB
- * @param string $username
- * @param integer $mnethostid
+ * @param array $params
+ * ->username string
+ * ->mnethostid integer
* @return boolean true if success
*/
- static function tmp_delete_user($username, $mnethostid) {
+ static function tmp_delete_user($params) {
global $DB;
- $user = $DB->get_record('user', array('username'=>$username, 'mnethostid'=>$mnethostid));
+ $user = $DB->get_record('user', array('username'=>$params['username'], 'mnethostid'=>$params['mnethostid']));
/// PLEASE UNCOMMENT HERE ONCE AUTHENTICATION IS IMPLEMENTED - $USER/context need to be set here
// if (has_capability('moodle/user:delete', get_context_instance(CONTEXT_SYSTEM))) {
return delete_user($user); //this function is in moodlelib.php
// }
}
+
/**
* Update some user information
* @global object $DB
- * @param string $username
- * @param integer $mnethostid
- * @param string $newusername
- * @param string $firstname
- * @return boolean true if success
+ * @param array $params
+ * ->username string
+ * ->mnethostid integer
+ * ->newusername string
+ * ->firstname string
+ * @return bool true if success
*/
- static function tmp_update_user($username, $mnethostid, $newusername, $firstname) {
+ static function tmp_update_user($params) {
global $DB;
- $user = $DB->get_record('user', array('username'=>$username, 'mnethostid'=>$mnethostid));
- $user->username = $newusername;
- $user->firstname = $firstname;
-
+ $user = $DB->get_record('user', array('username'=>$params['username'], 'mnethostid'=>$params['mnethostid']));
+
+ if (!empty($params['newusername'])) {
+ $user->username = $params['newusername'];
+ }
+ if (!empty($params['firstname'])) {
+ $user->firstname = $params['firstname'];
+ }
+
return user_api::tmp_update_user($user);
}
</types>
<message name="tmp_get_usersRequest">
- <part name="search" type="xsd:string"/>
+ <part name="params" type="xsd:object"/>
</message>
<message name="tmp_get_usersResponse">
<part name="user" type="xsd:object"/>
</message>
<message name="tmp_create_userRequest">
- <part name="username" type="xsd:string"/>
- <part name="firstname" type="xsd:string"/>
-
- <part name="lastname" type="xsd:string"/>
- <part name="email" type="xsd:string"/>
- <part name="password" type="xsd:string"/>
+ <part name="params" type="xsd:object"/>
</message>
<message name="tmp_create_userResponse">
<part name="userid" type="xsd:string"/>
<part name="user" type="xsd:object"/>
</message>
<message name="tmp_delete_userRequest">
- <part name="username" type="xsd:string"/>
- <part name="mnethostid" type="xsd:integer"/>
+ <part name="params" type="xsd:object"/>
</message>
<message name="tmp_delete_userResponse">
<part name="result" type="xsd:object"/>
</message>
<message name="tmp_update_userRequest">
- <part name="username" type="xsd:string"/>
- <part name="mnethostid" type="xsd:integer"/>
- <part name="newusername" type="xsd:string"/>
- <part name="firstname" type="xsd:string"/>
+ <part name="params" type="xsd:object"/>
</message>
<message name="tmp_update_userResponse">