Fixed some caching issues and list issue

When leaving a server, it is now removed from the known list. Also, the
list "removeElement" function is improved to actually work!
This commit is contained in:
hydrabolt
2015-08-12 23:33:27 +01:00
parent f306d7bd5e
commit 5fc8a096c1
2 changed files with 13 additions and 12 deletions

View File

@@ -238,17 +238,18 @@ exports.Client.prototype.createServer = function( _name, _region, cb ) {
} }
exports.Client.prototype.leaveServer = function( server, cb ){ exports.Client.prototype.leaveServer = function( server, cb ) {
var client = this; var client = this;
request request
.del( Endpoints.SERVERS + "/" + server.id) .del( Endpoints.SERVERS + "/" + server.id )
.set( "authorization", client.token ) .set( "authorization", client.token )
.end( function(err, res){ .end( function( err, res ) {
if ( !res.ok ) { if ( !res.ok ) {
cb( err ); cb( err );
} else { } else {
client.serverList.removeElement( server );
cb( null ); cb( null );
} }
} ); } );
@@ -277,7 +278,7 @@ exports.Client.prototype.createInvite = function( channel, options, cb ) {
if ( !res.ok ) { if ( !res.ok ) {
cb( err ); cb( err );
} else { } else {
cb( false, new Invite(res.body) ); cb( false, new Invite( res.body ) );
} }
} ) } )

View File

@@ -28,14 +28,14 @@ exports.List.prototype.removeIndex = function( index ) {
exports.List.prototype.removeElement = function( child ) { exports.List.prototype.removeElement = function( child ) {
var index = this.contents.indexOf( child ); for ( _element in this.contents ) {
var element = this.contents[_element];
if ( index === -1 ) { if ( child[ this.discriminator ] == element[ this.discriminator ] ) {
return false; this.removeIndex( _element, 1 );
}
} }
this.removeIndex( index ); return false;
} }
exports.List.prototype.concatSublists = function( whereList, discriminator ) { exports.List.prototype.concatSublists = function( whereList, discriminator ) {
@@ -81,8 +81,8 @@ exports.List.prototype.deepFilter = function( keys, value, onlyOne ) {
var child = this.contents[ index ]; var child = this.contents[ index ];
var buffer = child; var buffer = child;
for(key of keys){ for ( key of keys ) {
buffer = buffer[key]; buffer = buffer[ key ];
} }
if ( buffer == value ) { if ( buffer == value ) {