- Dynamic Pages (MyPage)
- Uploading files to the Server FTP.
This commit is contained in:
67
src/server/models/gallery.js
Normal file
67
src/server/models/gallery.js
Normal file
@@ -0,0 +1,67 @@
|
||||
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 GallerySchema = new Schema({
|
||||
idapp: {
|
||||
type: String,
|
||||
},
|
||||
author_username: {
|
||||
type: String,
|
||||
},
|
||||
title: {
|
||||
type: String,
|
||||
},
|
||||
directory: {
|
||||
type: String,
|
||||
},
|
||||
list: [
|
||||
{
|
||||
imagefile: {
|
||||
type: String
|
||||
},
|
||||
order: {
|
||||
type: Number
|
||||
},
|
||||
alt: {
|
||||
type: String
|
||||
},
|
||||
description: {
|
||||
type: String
|
||||
}
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
GallerySchema.statics.getFieldsForSearch = function () {
|
||||
return ['title']
|
||||
};
|
||||
|
||||
GallerySchema.statics.executeQueryTable = function (idapp, params) {
|
||||
params.fieldsearch = this.getFieldsForSearch();
|
||||
return tools.executeQueryTable(this, idapp, params);
|
||||
};
|
||||
|
||||
GallerySchema.statics.findAllIdApp = async function (idapp) {
|
||||
const Gallery = this;
|
||||
|
||||
const myfind = { idapp };
|
||||
|
||||
return await Gallery.find(myfind, (err, arrrec) => {
|
||||
return arrrec
|
||||
});
|
||||
};
|
||||
|
||||
const Gallery = mongoose.model('Gallery', GallerySchema);
|
||||
|
||||
module.exports = { Gallery };
|
||||
@@ -35,6 +35,10 @@ const MailingListSchema = new Schema({
|
||||
type: Boolean,
|
||||
default: true
|
||||
},
|
||||
wrongerr: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
lastid_newstosent: {
|
||||
type: String
|
||||
}
|
||||
@@ -52,7 +56,7 @@ MailingListSchema.statics.executeQueryTable = function (idapp, params) {
|
||||
MailingListSchema.statics.findAllIdAppSubscribed = function (idapp) {
|
||||
const MailingList = this;
|
||||
|
||||
const myfind = { idapp, statesub: true };
|
||||
const myfind = { idapp, statesub: true, wrongerr: {$ne: true} };
|
||||
|
||||
// Extract only the Teacher where in the users table the field permissions is set 'Teacher' bit.
|
||||
|
||||
@@ -61,6 +65,26 @@ MailingListSchema.statics.findAllIdAppSubscribed = function (idapp) {
|
||||
});
|
||||
};
|
||||
|
||||
MailingListSchema.statics.getnumSent = async function (idapp, idmailinglist) {
|
||||
const MailingList = this;
|
||||
|
||||
const myfind = { idapp, statesub: true, lastid_newstosent: idmailinglist };
|
||||
|
||||
// Extract only the Teacher where in the users table the field permissions is set 'Teacher' bit.
|
||||
|
||||
return await MailingList.find(myfind).count();
|
||||
};
|
||||
|
||||
MailingListSchema.statics.isOk = async function (idapp, iduser, idmailinglist) {
|
||||
const MailingList = this;
|
||||
|
||||
const myfind = { idapp, _id: iduser, statesub: true, lastid_newstosent: {$ne: idmailinglist } };
|
||||
|
||||
// Extract only the Teacher where in the users table the field permissions is set 'Teacher' bit.
|
||||
|
||||
return await MailingList.find(myfind).count() > 0;
|
||||
};
|
||||
|
||||
MailingListSchema.statics.findAllIdApp = async function (idapp) {
|
||||
const MailingList = this;
|
||||
|
||||
|
||||
@@ -54,6 +54,10 @@ const NewstosentSchema = new Schema({
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
processing_job: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
error_job: {
|
||||
type: String,
|
||||
}
|
||||
@@ -76,6 +80,7 @@ NewstosentSchema.statics.findNewsletter_To_Send = function (idapp) {
|
||||
datetoSent: { $gte: tools.IncDateNow(-1000 * 60 * 60) },
|
||||
activate: true,
|
||||
starting_job: false,
|
||||
processing_job: false,
|
||||
finish_job: false,
|
||||
idapp
|
||||
})
|
||||
@@ -85,6 +90,29 @@ NewstosentSchema.statics.findNewsletter_To_Send = function (idapp) {
|
||||
});
|
||||
};
|
||||
|
||||
NewstosentSchema.statics.endJob = async function (id) {
|
||||
const Newstosent = this;
|
||||
|
||||
myjobnews = await Newstosent.findOne({ _id: id });
|
||||
if (!!myjobnews) {
|
||||
myjobnews.datefinishJob = new Date();
|
||||
myjobnews.finish_job = true;
|
||||
|
||||
await myjobnews.save()
|
||||
}
|
||||
};
|
||||
|
||||
NewstosentSchema.statics.processingJob = async function (id, state) {
|
||||
const Newstosent = this;
|
||||
|
||||
myjobnews = await Newstosent.findOne({ _id: id });
|
||||
if (!!myjobnews) {
|
||||
myjobnews.processing_job = state;
|
||||
|
||||
await myjobnews.save()
|
||||
}
|
||||
};
|
||||
|
||||
NewstosentSchema.statics.findNewsletterPending_To_Send = function (idapp) {
|
||||
const Newstosent = this;
|
||||
|
||||
@@ -94,6 +122,7 @@ NewstosentSchema.statics.findNewsletterPending_To_Send = function (idapp) {
|
||||
activate: true,
|
||||
starting_job: true,
|
||||
finish_job: false,
|
||||
processing_job: false,
|
||||
lastemailsent_Job: { $gte: tools.IncDateNow(-1000 * 60 * 60 * 8) },
|
||||
idapp
|
||||
}).then((rec) => {
|
||||
|
||||
Reference in New Issue
Block a user