2016-12-12 15:00:56 +09:00
const getSettingFromJSON = function ( setting , defaultValue ) {
2016-04-11 10:23:23 +09:00
if ( Meteor . isServer && Meteor . settings && typeof Meteor . settings [ setting ] !== "undefined" ) { // if on the server, look in Meteor.settings
2016-02-16 15:08:30 +09:00
return Meteor . settings [ setting ] ;
2017-04-28 09:25:29 +09:00
} else if ( Meteor . isServer && Meteor . settings && Meteor . settings . private && typeof Meteor . settings . private [ setting ] !== "undefined" ) { // if on the server, look in Meteor.settings.private
return Meteor . settings . private [ setting ] ;
2016-04-11 10:23:23 +09:00
} else if ( Meteor . settings && Meteor . settings . public && typeof Meteor . settings . public [ setting ] !== "undefined" ) { // look in Meteor.settings.public
2016-02-16 15:08:30 +09:00
return Meteor . settings . public [ setting ] ;
2016-12-12 15:00:56 +09:00
} else if ( defaultValue ) {
return defaultValue ;
2016-04-15 15:42:14 +09:00
} else {
return undefined ;
}
}
2016-12-12 15:00:56 +09:00
export const getSetting = getSettingFromJSON ;
2016-04-15 15:42:14 +09:00
2016-12-12 15:00:56 +09:00
// Settings collection is deprecated
// getSetting = function (setting, defaultValue) {
2016-04-15 15:42:14 +09:00
2016-12-12 15:00:56 +09:00
// const collection = Telescope.settings.collection;
2016-04-15 15:42:14 +09:00
2016-12-12 15:00:56 +09:00
// if (typeof getSettingFromJSON(setting) !== "undefined") { // if on the server, look in Meteor.settings
2016-02-16 15:08:30 +09:00
2016-12-12 15:00:56 +09:00
// return getSettingFromJSON(setting);
2016-04-11 10:23:23 +09:00
2016-12-12 15:00:56 +09:00
// } else if (collection && collection.findOne() && typeof collection.findOne()[setting] !== "undefined") { // look in collection
2016-04-11 10:23:23 +09:00
2016-12-12 15:00:56 +09:00
// return Telescope.settings.collection.findOne()[setting];
2016-02-16 15:08:30 +09:00
2016-12-12 15:00:56 +09:00
// } else if (typeof defaultValue !== 'undefined') { // fallback to default
2016-02-16 15:08:30 +09:00
2016-12-12 15:00:56 +09:00
// return defaultValue;
2016-02-16 15:08:30 +09:00
2016-12-12 15:00:56 +09:00
// } else { // or return undefined
2016-02-16 15:08:30 +09:00
2016-12-12 15:00:56 +09:00
// return undefined;
// }
// };