Files
freeplanet_serverside/server/models/settings.js
Paolo Arena 0d776589f0 - Fixed pagination not refreshing the data...
- Start creating single page of an Event
2019-11-06 22:29:29 +01:00

75 lines
1.5 KiB
JavaScript

const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const tools = require('../tools/general');
mongoose.Promise = global.Promise;
mongoose.level = "F";
// Resolving error Unknown modifier: $pushAll
mongoose.plugin(schema => {
schema.options.usePushEach = true
});
const SettingsSchema = new Schema({
idapp: {
type: String,
},
key: {
type: String,
},
type: {
type: Number,
},
value_str: {
type: String,
},
value_date: {
type: Date,
},
value_num: {
type: Number,
}
});
SettingsSchema.statics.executeQueryTable = function (idapp, params) {
return tools.executeQueryTable(this, idapp, params);
};
SettingsSchema.statics.getValDbSettings = function (idapp, key) {
return Settings.findOne({ idapp, key })
.then((myrec) => {
console.log('getValDbSettings', myrec, 'idapp', idapp);
if (myrec) {
if (myrec.type === tools.FieldType.date)
return myrec.value_date;
if (myrec.type === tools.FieldType.number)
return myrec.value_num;
else
return myrec.value_str;
} else {
return ''
}
}).catch((err) => {
console.error('getValDbSettings', err);
return null;
});
};
SettingsSchema.statics.findAllIdApp = function (idapp) {
const Settings = this;
const myfind = { idapp };
return Settings.find(myfind, (err, arrrec) => {
return arrrec
});
};
const Settings = mongoose.model('Settings', SettingsSchema);
module.exports = { Settings };