diff --git a/lib/cartodb/signed_maps.js b/lib/cartodb/signed_maps.js index 6931337f..11cfa72e 100644 --- a/lib/cartodb/signed_maps.js +++ b/lib/cartodb/signed_maps.js @@ -162,6 +162,8 @@ o.authorizedByCert = function(cert, auth) { // o.isAuthorized = function(signer, map_id, auth, callback) { var that = this; + var redisClient; + var db = that.db_signatures; var authorized = false; var certificate_id_list; var missing_certificates = []; @@ -169,9 +171,15 @@ o.isAuthorized = function(signer, map_id, auth, callback) { console.log("Check auth from signer '" + signer + "' on map '" + map_id + "' with auth '" + auth + "'"); } Step( - function getMapSignatures() { + function getRedisClient() { + that.redis_pool.acquire(db, this); + }, + function getMapSignatures(err, client) { + if ( err ) throw err; + redisClient = client; var map_sig_key = _.template(that.key_map_sig, {signer:signer, map_id:map_id}); - that._redisCmd('SMEMBERS', [ map_sig_key ], this); + redisClient.SMEMBERS(map_sig_key, this); + //that._redisCmd('SMEMBERS', [ map_sig_key ], this); }, function getCertificates(err, crt_lst) { if ( err ) throw err; @@ -186,7 +194,8 @@ o.isAuthorized = function(signer, map_id, auth, callback) { return crt_lst; } var map_crt_key = _.template(that.key_map_crt, {signer:signer}); - that._redisCmd('HMGET', [ map_crt_key ].concat(crt_lst), this); + //that._redisCmd('HMGET', [ map_crt_key ].concat(crt_lst), this); + redisClient.HMGET(map_crt_key, crt_lst, this); }, function checkCertificates(err, certs) { if ( err ) throw err; @@ -223,6 +232,7 @@ o.isAuthorized = function(signer, map_id, auth, callback) { + " missing certificates: " + missing_certificates + " (TODO: give cleanup instructions)"); } + if ( redisClient ) that.redis_pool.release(db, redisClient); callback(err, authorized); } );