mirror of https://github.com/vector-im/riot-web
Add reject button and impl
parent
3db86b1f59
commit
668234be4c
|
@ -63,6 +63,25 @@ module.exports = React.createClass({
|
||||||
this.setState(this.getInitialState());
|
this.setState(this.getInitialState());
|
||||||
},
|
},
|
||||||
|
|
||||||
|
onRejectButtonClicked: function(ev) {
|
||||||
|
var self = this;
|
||||||
|
this.setState({
|
||||||
|
rejecting: true
|
||||||
|
});
|
||||||
|
MatrixClientPeg.get().leave(this.props.roomId).done(function() {
|
||||||
|
dis.dispatch({ action: 'view_next_room' });
|
||||||
|
self.setState({
|
||||||
|
rejecting: false
|
||||||
|
});
|
||||||
|
}, function(err) {
|
||||||
|
console.error("Failed to reject invite: %s", err);
|
||||||
|
self.setState({
|
||||||
|
rejecting: false,
|
||||||
|
rejectError: err
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
onConferenceNotificationClick: function() {
|
onConferenceNotificationClick: function() {
|
||||||
dis.dispatch({
|
dis.dispatch({
|
||||||
action: 'place_call',
|
action: 'place_call',
|
||||||
|
@ -106,7 +125,7 @@ module.exports = React.createClass({
|
||||||
|
|
||||||
var myUserId = MatrixClientPeg.get().credentials.userId;
|
var myUserId = MatrixClientPeg.get().credentials.userId;
|
||||||
if (this.state.room.currentState.members[myUserId].membership == 'invite') {
|
if (this.state.room.currentState.members[myUserId].membership == 'invite') {
|
||||||
if (this.state.joining) {
|
if (this.state.joining || this.state.rejecting) {
|
||||||
return (
|
return (
|
||||||
<div className="mx_RoomView">
|
<div className="mx_RoomView">
|
||||||
<Loader />
|
<Loader />
|
||||||
|
@ -116,6 +135,7 @@ module.exports = React.createClass({
|
||||||
var inviteEvent = this.state.room.currentState.members[myUserId].events.member.event;
|
var inviteEvent = this.state.room.currentState.members[myUserId].events.member.event;
|
||||||
// XXX: Leaving this intentionally basic for now because invites are about to change totally
|
// XXX: Leaving this intentionally basic for now because invites are about to change totally
|
||||||
var joinErrorText = this.state.joinError ? "Failed to join room!" : "";
|
var joinErrorText = this.state.joinError ? "Failed to join room!" : "";
|
||||||
|
var rejectErrorText = this.state.rejectError ? "Failed to reject invite!" : "";
|
||||||
return (
|
return (
|
||||||
<div className="mx_RoomView">
|
<div className="mx_RoomView">
|
||||||
<RoomHeader ref="header" room={this.state.room} simpleHeader="Room invite"/>
|
<RoomHeader ref="header" room={this.state.room} simpleHeader="Room invite"/>
|
||||||
|
@ -123,7 +143,9 @@ module.exports = React.createClass({
|
||||||
<div>{inviteEvent.user_id} has invited you to a room</div>
|
<div>{inviteEvent.user_id} has invited you to a room</div>
|
||||||
<br/>
|
<br/>
|
||||||
<button ref="joinButton" onClick={this.onJoinButtonClicked}>Join</button>
|
<button ref="joinButton" onClick={this.onJoinButtonClicked}>Join</button>
|
||||||
|
<button onClick={this.onRejectButtonClicked}>Reject</button>
|
||||||
<div className="error">{joinErrorText}</div>
|
<div className="error">{joinErrorText}</div>
|
||||||
|
<div className="error">{rejectErrorText}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in New Issue