Allowed canViewCharacter to take in a character instead of a charId to save a database read

This commit is contained in:
Stefan Zermatten
2019-02-11 10:17:43 +02:00
parent 0260824c2f
commit 3343f8a813

View File

@@ -5,12 +5,14 @@ canEditCharacter = function(charId, userId){
return (userId === char.owner || _.contains(char.writers, userId));
};
canViewCharacter = function(charId, userId){
canViewCharacter = function(char, userId){
userId = userId || Meteor.userId();
var char = Characters.findOne(
charId,
{fields: {owner: 1, writers: 1, readers: 1, "settings.viewPermission": 1}}
);
if (typeof char !== 'object'){
char = Characters.findOne(
charId,
{fields: {owner: 1, writers: 1, readers: 1, "settings.viewPermission": 1}}
);
}
if (!char) return true;
return userId === char.owner ||
char.settings.viewPermission === "public" ||