combine.fm/lib/lookup.js

30 lines
708 B
JavaScript
Raw Normal View History

2015-01-06 12:58:57 +00:00
"use strict";
var path = require('path');
var services = [];
require("fs").readdirSync(path.join(__dirname, "services")).forEach(function(file) {
var service = require(path.join(__dirname, "services", file));
if (service.search) {
services.push(service);
}
});
module.exports = function(url) {
var matchedService;
services.some(function(service) {
matchedService = service.match(url) ? service : null;
return matchedService;
});
if (matchedService) {
return matchedService.parseUrl(url).timeout(10000).then(function(result) {
return matchedService.lookupId(result.id, result.type).then(function(item) {
return item;
});
});
}
return false;
};