Skip to content

Commit

Permalink
Make routeInfo use more obvious
Browse files Browse the repository at this point in the history
  • Loading branch information
terite committed Sep 27, 2012
1 parent 34cbf65 commit 2b4ffbd
Showing 1 changed file with 14 additions and 14 deletions.
28 changes: 14 additions & 14 deletions lib/restful.js
Expand Up @@ -207,22 +207,19 @@ exports.extendRouter = function (router, resources, options, respond) {
})
};

function _extend (router, resources, options, respond, routeInfoRef) {
function _extend (router, resources, options, respond, routeInfo) {

if (!Array.isArray(resources)){
resources = [resources];
}

if (!routeInfoRef)
routeInfoRef = [];
if (!routeInfo)
routeInfo = [];

resources.forEach(function (resource) {
var entity = resource.lowerResource,
param = options.param || ':id';

var routeInfo = routeInfoRef.slice(0);
routeInfo.push(entity);

//
// If we are not in strict mode, then extend the router with,
// some potentially helpful non-restful routes
Expand Down Expand Up @@ -255,7 +252,7 @@ function _extend (router, resources, options, respond, routeInfoRef) {
//
// Is there an easier way to tell if a parent exists?
//
var parentID = exports.buildResourceId(routeInfoRef, arguments);
var parentID = exports.buildResourceId(routeInfo, arguments);
options.parent.get(parentID, function(err, parent) {
if (err && err.status)
return respond(req, res, err.status, err);
Expand Down Expand Up @@ -283,7 +280,7 @@ function _extend (router, resources, options, respond, routeInfoRef) {
}
var cloned = utile.clone(options);

cloned.parentID = exports.buildResourceId(routeInfoRef, arguments);
cloned.parentID = exports.buildResourceId(routeInfo, arguments);
controller.create(req, res, resource, cloned, respond);
});

Expand All @@ -297,6 +294,9 @@ function _extend (router, resources, options, respond, routeInfoRef) {
// Check to see if resource has any children
//
if (resource._children && resource._children.length > 0) {

var childRouteInfo = routeInfo.concat(resource.lowerResource);

//
// For every child the resource has,
// recursively call the extendRouter method,
Expand All @@ -311,7 +311,7 @@ function _extend (router, resources, options, respond, routeInfoRef) {
//
clonedOptions.parent = resource;

_extend(paramScopedRouter, childResource, clonedOptions, respond, routeInfo);
_extend(paramScopedRouter, childResource, clonedOptions, respond, childRouteInfo);
});
}

Expand All @@ -337,7 +337,7 @@ function _extend (router, resources, options, respond, routeInfoRef) {
var handler = function () {
var req = this.req,
res = this.res,
_id = exports.buildResourceId(routeInfoRef, arguments);
_id = exports.buildResourceId(routeInfo, arguments);

preprocessRequest(req, resource, 'remote');
resource[m](_id, req.body, function(err, result){
Expand Down Expand Up @@ -373,7 +373,7 @@ function _extend (router, resources, options, respond, routeInfoRef) {
preprocessRequest(req, resource);

if (cloned.parent)
cloned.parentID = exports.buildResourceId(routeInfoRef, args);
cloned.parentID = exports.buildResourceId(routeInfo, args);

controller.create(req, res, resource, cloned, respond);
});
Expand All @@ -389,7 +389,7 @@ function _extend (router, resources, options, respond, routeInfoRef) {
if (!options.strict)
preprocessRequest(req, resource, 'show');

cloned._id = exports.buildResourceId(routeInfoRef, arguments);
cloned._id = exports.buildResourceId(routeInfo, arguments);
controller.get(req, res, resource, cloned, respond);
});

Expand All @@ -400,7 +400,7 @@ function _extend (router, resources, options, respond, routeInfoRef) {
var req = this.req,
res = this.res;

var _id = exports.buildResourceId(routeInfoRef, arguments);
var _id = exports.buildResourceId(routeInfo, arguments);
resource.destroy(_id, function (err, result) {
return err
? respond(req, res, 500, err)
Expand All @@ -418,7 +418,7 @@ function _extend (router, resources, options, respond, routeInfoRef) {
if (!options.strict)
preprocessRequest(req, resource);

var _id = exports.buildResourceId(routeInfoRef, arguments);
var _id = exports.buildResourceId(routeInfo, arguments);
resource.update(_id, req.body, function (err, result) {
var status = 204;
if (err) {
Expand Down

0 comments on commit 2b4ffbd

Please sign in to comment.