- Aggiornato tutti i pacchetti del server all'ultima versione. - passato mongoose da versione 5 a versione 6
214 lines
4.1 KiB
JavaScript
Executable File
214 lines
4.1 KiB
JavaScript
Executable File
const mongoose = require('mongoose').set('debug', false);
|
|
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 BotSchema = new Schema({
|
|
idapp: {
|
|
type: String,
|
|
},
|
|
page: {
|
|
type: Number,
|
|
},
|
|
index: {
|
|
type: Number,
|
|
},
|
|
riga: {
|
|
type: Number,
|
|
},
|
|
active: {
|
|
type: Boolean,
|
|
},
|
|
lang: {
|
|
type: String,
|
|
},
|
|
main: {
|
|
type: Boolean,
|
|
},
|
|
label: {
|
|
type: String,
|
|
},
|
|
type: {
|
|
type: Number,
|
|
},
|
|
value: {
|
|
type: String,
|
|
},
|
|
visibility: {
|
|
type: Number, // VISIB_ALL, VISIB_ONLYIF_LOGGED, VISIB_ONLY_ADMIN
|
|
},
|
|
date_updated: {
|
|
type: Date,
|
|
},
|
|
});
|
|
|
|
BotSchema.statics.getFieldsForSearch = function () {
|
|
return [{ field: 'label', type: tools.FieldType.string }]
|
|
};
|
|
|
|
BotSchema.statics.executeQueryTable = function (idapp, params) {
|
|
params.fieldsearch = this.getFieldsForSearch();
|
|
return tools.executeQueryTable(this, idapp, params);
|
|
};
|
|
|
|
BotSchema.statics.DuplicateAllRecords = async function (idapporig, idappdest) {
|
|
|
|
return await tools.DuplicateAllRecords(this, idapporig, idappdest);
|
|
|
|
};
|
|
|
|
|
|
BotSchema.statics.generateBotMenuRecords = async function (idapp) {
|
|
|
|
try {
|
|
let arrrec = [
|
|
{
|
|
"page": 1,
|
|
"index": 1,
|
|
"riga": 1,
|
|
"active": true,
|
|
"label": "Vai al Sito",
|
|
"type": 3,
|
|
"value": "{host}",
|
|
"visibility": 0,
|
|
idapp,
|
|
"lang": "it",
|
|
"main": true
|
|
},
|
|
{
|
|
"page": 1,
|
|
"index": 1,
|
|
"riga": 2,
|
|
"active": true,
|
|
"label": "Il mio Profilo",
|
|
"type": 3,
|
|
"value": "{host}/my/{username}",
|
|
"visibility": 1,
|
|
idapp,
|
|
"lang": "it",
|
|
"main": true
|
|
},
|
|
{
|
|
"page": 1,
|
|
"index": 1,
|
|
"riga": 3,
|
|
"active": true,
|
|
"label": "Link da Condividere",
|
|
"type": 2,
|
|
"value": "{host}/registrati/{username}",
|
|
"visibility": 1,
|
|
idapp,
|
|
"lang": "it",
|
|
"main": true,
|
|
},
|
|
{
|
|
"page": 1,
|
|
"index": 2,
|
|
"riga": 1,
|
|
"active": true,
|
|
"label": "🔮 Help",
|
|
"type": 4,
|
|
"value": "",
|
|
"visibility": 0,
|
|
idapp,
|
|
"lang": "it",
|
|
"main": true,
|
|
},
|
|
{
|
|
"page": 1,
|
|
"index": 1,
|
|
"riga": 3,
|
|
"active": true,
|
|
"label": "💁♀️ Admin",
|
|
"type": 4,
|
|
"value": "",
|
|
"visibility": 5,
|
|
idapp,
|
|
"lang": "it",
|
|
"main": true
|
|
},
|
|
{
|
|
"page": 1,
|
|
"index": 2,
|
|
"riga": 2,
|
|
"active": true,
|
|
"label": "Imposta Foto Profilo",
|
|
"type": 4,
|
|
"value": "🖼 SetPicProfile",
|
|
"visibility": 1,
|
|
idapp,
|
|
"lang": "it",
|
|
"main": true
|
|
},
|
|
{
|
|
"page": 1,
|
|
"index": 2,
|
|
"riga": 3,
|
|
"active": true,
|
|
"label": "🛠 Strumenti",
|
|
"type": 1,
|
|
"value": "2",
|
|
"visibility": 1,
|
|
idapp,
|
|
"lang": "it",
|
|
"main": true,
|
|
},
|
|
{
|
|
"page": 2,
|
|
"index": 1,
|
|
"riga": 1,
|
|
"active": true,
|
|
"label": "🔑 Cambio Password",
|
|
"type": 4,
|
|
"value": "🔑 SetResetPwd",
|
|
"visibility": 1,
|
|
idapp,
|
|
"lang": "it",
|
|
},
|
|
{
|
|
"page": 2,
|
|
"index": 1,
|
|
"riga": 2,
|
|
"active": true,
|
|
"label": "👉🏻 Indietro",
|
|
"type": 1,
|
|
"value": "1",
|
|
"visibility": 1,
|
|
idapp,
|
|
"lang": "it",
|
|
}];
|
|
|
|
const ris = await MyBot.insertMany(arrrec);
|
|
|
|
return ris;
|
|
|
|
} catch (e) {
|
|
console.error('Err:', e);
|
|
}
|
|
|
|
}
|
|
BotSchema.statics.findAllIdApp = async function (idapp) {
|
|
const Bot = this;
|
|
|
|
const myfind = { idapp };
|
|
|
|
return await Bot.find(myfind).sort({ page: 1, lang: 1, riga: 1, index: 1 }).lean();
|
|
};
|
|
|
|
const MyBot = mongoose.model('Bot', BotSchema);
|
|
|
|
MyBot.createIndexes()
|
|
.then(() => { })
|
|
.catch((err) => { throw err; });
|
|
|
|
|
|
module.exports = { MyBot };
|