|
|
|
|
@ -316,6 +316,23 @@ if (isSandstorm && Meteor.isServer) { |
|
|
|
|
Migrations.add('enforce-public-visibility-for-sandstorm', () => { |
|
|
|
|
Boards.update('sandstorm', { $set: { permission: 'public' }}); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
// Monkey patch to work around the problem described in
|
|
|
|
|
// https://github.com/sandstorm-io/meteor-accounts-sandstorm/pull/31
|
|
|
|
|
const _httpMethods = HTTP.methods; |
|
|
|
|
HTTP.methods = (newMethods) => { |
|
|
|
|
Object.keys(newMethods).forEach((key) => { |
|
|
|
|
if (newMethods[key].auth) { |
|
|
|
|
newMethods[key].auth = function() { |
|
|
|
|
const sandstormID = this.req.headers['x-sandstorm-user-id']; |
|
|
|
|
const user = Meteor.users.findOne({"services.sandstorm.id": sandstormID}); |
|
|
|
|
return user && user._id; |
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
_httpMethods(newMethods); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (isSandstorm && Meteor.isClient) { |
|
|
|
|
|