Use /rooms/$room_id/state/m.room.member/$user_id to change the membership of another user

paul/schema_breaking_changes
Emmanuel ROHEE 2014-09-03 18:33:36 +02:00
parent 8a7c1d6a00
commit 5dd1a738f8
2 changed files with 15 additions and 3 deletions

View File

@ -165,13 +165,25 @@ angular.module('matrixService', [])
// TODO: Use PUT with transaction IDs
return doRequest("POST", path, undefined, data);
},
// Change the membership of an another user
setMembership: function(room_id, user_id, membershipValue) {
// The REST path spec
var path = "/rooms/$room_id/state/m.room.member/$user_id";
path = path.replace("$room_id", encodeURIComponent(room_id));
path = path.replace("$user_id", user_id);
return doRequest("PUT", path, undefined, {
membership: membershipValue
});
},
// Bans a user from from a room
ban: function(room_id, user_id, reason) {
var path = "/rooms/$room_id/ban/";
path = path.replace("$room_id", encodeURIComponent(room_id));
return doRequest("PUT", path, undefined, {
return doRequest("POST", path, undefined, {
user_id: user_id,
reason: reason
});

View File

@ -289,7 +289,7 @@ angular.module('RoomController', ['ngSanitize', 'mFileInput'])
var user_id = args[1];
// Set his state in the room as leave
promise = matrixService.membershipChange($scope.room_id, user_id, "leave");
promise = matrixService.setMembership($scope.room_id, user_id, "leave");
}
break;
@ -314,7 +314,7 @@ angular.module('RoomController', ['ngSanitize', 'mFileInput'])
var user_id = args[1];
// Reset the user membership to leave to unban him
promise = matrixService.membershipChange($scope.room_id, user_id, "leave");
promise = matrixService.setMembership($scope.room_id, user_id, "leave");
}
break;