Exemplo n.º 1
0
    .exec(function (err, doc) {
      
      if (err) {
        callback(baucis.Error.Misconfigured({message: err}));
        return;
      }
      if (!doc) {
        callback(baucis.Error.NotFound());
        return;
      }

      auth.filterReadableProps.call(this, req, doc, function (err) {
        auth.permitCreate.call(this, req, doc, function (err) {
          var _doc = doc && doc._doc;

          if (err) {
            callback(baucis.Error.Forbidden({message: err}));
            return;
          }

          // don't copy auth list
          keys.forEach(function (key) {
            delete _doc[key];
          });

          _doc._id = ObjectId();
          model.insert(_doc, callback);
        });
      }.bind(this));
    }.bind(this));
Exemplo n.º 2
0
        .exec(function (err, doc) {
          if (err) {
            next(baucis.Error.Misconfigured({message: err}));
          } else if (!doc) {
            next(baucis.Error.NotFound());
          } else {
            auth.filterReadableProps.call(this, req, doc, function (err) {
              var contents;
              
              if (err) {
                next(baucis.Error.Misconfigured({message: err}));
              } else {
                contents = env.getProp(doc, key);
                if (!contents) {
                  contents = getDefaultContents(doc, key);
                }

                res.type(mimeType);
                res.send(contents);
              }
            });
          }
        }.bind(this));