summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorSean Fridman <fridman@mail.sfsu.edu>2015-04-08 18:28:26 -0400
committerSean Fridman <fridman@mail.sfsu.edu>2015-04-08 18:28:26 -0400
commitbb3d8da23279dc2e4cf275b08b03148b3980fb01 (patch)
tree880f4885f3a0beeb21376438ec603b2e52d32edc /app
parente2e9e4bb6a9e90687292961526a82ac881f2f3bb (diff)
Fix bug where views didn't resolve resource correctly
Diffstat (limited to 'app')
-rw-r--r--app/index.js2
-rw-r--r--app/node_modules/okview/index.js12
2 files changed, 9 insertions, 5 deletions
diff --git a/app/index.js b/app/index.js
index 0e83363..792c10a 100644
--- a/app/index.js
+++ b/app/index.js
@@ -152,7 +152,7 @@ OKCMS.prototype._createQueries = function(queryConfig, resourceCache) {
queryConfig = [queryConfig];
return queryConfig.map(function(config) {
var type = config.type;
- var resource = resourceCache.get(type);
+ var resource = resourceCache.get(type, config.query);
if (!resource)
throw new Error('Query configured with nonexistent resource');
// Default to "select all" query
diff --git a/app/node_modules/okview/index.js b/app/node_modules/okview/index.js
index e9c0bfe..c245b0c 100644
--- a/app/node_modules/okview/index.js
+++ b/app/node_modules/okview/index.js
@@ -51,8 +51,11 @@ function OKView(options) {
this._fetchTemplateData = unbound ? fetchUnbound : fetchBound;
function fetchUnbound(id) {
- // TODO Janky
- return fetchTemplateData(meta, [queries[0].get(id)]);
+ var resource = queries[0].resource;
+ return fetchTemplateData(meta, [OKQuery({
+ resource: resource,
+ query: id
+ })]);
}
function fetchBound() {
@@ -150,9 +153,10 @@ function fetchTemplateData(meta, queries) {
.then(function(results) {
var metadata = results.shift();
var normalized = results.reduce(function(cache, result, i) {
- // Huh? Bail
- if (!result)
+ // Could be just some rogue request
+ if (!result) {
return cache;
+ }
var resource = queries[i].resource;
var type = queries[i].type;
var manyResult = isarray(result);