consolidate all repos to one for archive

This commit is contained in:
2025-01-28 13:46:42 +01:00
commit a6610fbc7a
5350 changed files with 2705721 additions and 0 deletions

View File

@@ -0,0 +1,186 @@
const { now } = require('mongoose');
var MdataModel = require('../models/mdataModel.js');
/**
* mdataController.js
*
* @description :: Server-side logic for managing mdatas.
*/
module.exports = {
/**
* mdataController.list()
*/
list: function (req, res) {
MdataModel.find({answering_id: null})
.sort({timestamp: -1})
.exec( function (err, mdatas)
{
if (err) {
return res.status(500).json({
message: 'Error when getting mdata.',
error: err
});
}
var data =[];
data.mdatas = mdatas;
return res.render('mdata/list', data);
});
},
/**
* mdataController.show()
*/
show: function (req, res) {
var id = req.params.id;
MdataModel.findOne({_id: id}, function (err, mdata) {
if (err) {
return res.status(500).json({
message: 'Error when getting mdata.',
error: err
});
}
if (!mdata) {
return res.status(404).json({
message: 'No such mdata'
});
}
MdataModel.findOne({_id: mdata.answer}, function (err, currectAns) {
if (err) {
return res.status(500).json({
message: 'Error when getting mdata.',
error: err
});
}
mdata.cur = currectAns;
MdataModel.find({answering_id: id, _id:{$ne: mdata.answer }})
.sort({timestamp:-1})
.exec( function (err, answers) {
if (err) {
return res.status(500).json({
message: 'Error when getting mdata.',
error: err
});
}
mdata.answers = answers;
mdata.selectAns = (mdata.user_id == req.session.userId)
return res.render('mdata/show', mdata);
});
});
});
},
listmy: function (req, res) {
MdataModel.find( {user_id : req.session.userId }, function (err, mdatas) {
if (err) {
return res.status(500).json({
message: 'Error when getting mdata.',
error: err
});
}
var data =[];
data.mdatas = mdatas;
return res.render('mdata/my', data);
});
},
/**
* mdataController.create()
*/
create: function (req, res) {
var mdata = new MdataModel({
user_id : req.session.userId,
title : req.body.title,
question : req.body.question,
timestamp : Date.now(),
answering_id : req.body.answering_id
});
mdata.save(function (err, mdata) {
if (err) {
return res.status(500).json({
message: 'Error when creating mdata',
error: err
});
}
return res.redirect('/mdata');
//return res.status(201).json(mdata);
});
},
/**
* mdataController.update()
*/
update: function (req, res) {
var id = req.params.id;
var ans = req.params.ans;
MdataModel.findOne({_id: id}, function (err, mdata) {
if (err) {
return res.status(500).json({
message: 'Error when getting mdata',
error: err
});
}
if (!mdata) {
return res.status(404).json({
message: 'No such mdata'
});
}
mdata.user_id = req.body.user_id ? req.body.user_id : mdata.user_id;
mdata.title = req.body.title ? req.body.title : mdata.title;
mdata.question = req.body.question ? req.body.question : mdata.question;
mdata.timestamp = req.body.timestamp ? req.body.timestamp : mdata.timestamp;
mdata.tags = req.body.tags ? req.body.tags : mdata.tags;
mdata.answering_id = req.body.answering_id ? req.body.answering_id : mdata.answering_id;
mdata.answer = ans ? ans : mdata.answer;
mdata.save(function (err, mdata) {
if (err) {
return res.status(500).json({
message: 'Error when updating mdata.',
error: err
});
}
return res.redirect('/mdata');
});
});
},
/**
* mdataController.remove()
*/
remove: function (req, res) {
var id = req.params.id;
MdataModel.findByIdAndRemove(id, function (err, mdata) {
if (err) {
return res.status(500).json({
message: 'Error when deleting the mdata.',
error: err
});
}
return res.redirect('/mdata/my');
});
},
publish: function(req, res){
return res.render('mdata/publish');
}
};

View File

@@ -0,0 +1,138 @@
var PhotoModel = require('../models/photoModel.js');
/**
* photoController.js
*
* @description :: Server-side logic for managing photos.
*/
module.exports = {
/**
* photoController.list()
*/
list: function (req, res) {
PhotoModel.find()
.populate('postedBy')
.exec(function (err, photos) {
if (err) {
return res.status(500).json({
message: 'Error when getting photo.',
error: err
});
}
var data = [];
data.photos = photos;
return res.render('photo/list', data);
});
},
/**
* photoController.show()
*/
show: function (req, res) {
var id = req.params.id;
PhotoModel.findOne({_id: id}, function (err, photo) {
if (err) {
return res.status(500).json({
message: 'Error when getting photo.',
error: err
});
}
if (!photo) {
return res.status(404).json({
message: 'No such photo'
});
}
return res.json(photo);
});
},
/**
* photoController.create()
*/
create: function (req, res) {
var photo = new PhotoModel({
name : req.body.name,
path : "/images/"+req.file.filename,
postedBy : req.session.userId,
views : 0,
likes : 0
});
photo.save(function (err, photo) {
if (err) {
return res.status(500).json({
message: 'Error when creating photo',
error: err
});
}
//return res.status(201).json(photo);
return res.redirect('/mdata');
});
},
/**
* photoController.update()
*/
update: function (req, res) {
var id = req.params.id;
PhotoModel.findOne({_id: id}, function (err, photo) {
if (err) {
return res.status(500).json({
message: 'Error when getting photo',
error: err
});
}
if (!photo) {
return res.status(404).json({
message: 'No such photo'
});
}
photo.name = req.body.name ? req.body.name : photo.name;
photo.path = req.body.path ? req.body.path : photo.path;
photo.postedBy = req.body.postedBy ? req.body.postedBy : photo.postedBy;
photo.views = req.body.views ? req.body.views : photo.views;
photo.likes = req.body.likes ? req.body.likes : photo.likes;
photo.save(function (err, photo) {
if (err) {
return res.status(500).json({
message: 'Error when updating photo.',
error: err
});
}
return res.json(photo);
});
});
},
/**
* photoController.remove()
*/
remove: function (req, res) {
var id = req.params.id;
PhotoModel.findByIdAndRemove(id, function (err, photo) {
if (err) {
return res.status(500).json({
message: 'Error when deleting the photo.',
error: err
});
}
return res.status(204).json();
});
},
publish: function(req, res){
return res.render('photo/publish');
}
};

View File

@@ -0,0 +1,122 @@
var TagsModel = require('../models/tagsModel.js');
/**
* tagsController.js
*
* @description :: Server-side logic for managing tagss.
*/
module.exports = {
/**
* tagsController.list()
*/
list: function (req, res) {
TagsModel.find(function (err, tagss) {
if (err) {
return res.status(500).json({
message: 'Error when getting tags.',
error: err
});
}
return res.json(tagss);
});
},
/**
* tagsController.show()
*/
show: function (req, res) {
var id = req.params.id;
TagsModel.findOne({_id: id}, function (err, tags) {
if (err) {
return res.status(500).json({
message: 'Error when getting tags.',
error: err
});
}
if (!tags) {
return res.status(404).json({
message: 'No such tags'
});
}
return res.json(tags);
});
},
/**
* tagsController.create()
*/
create: function (req, res) {
var tags = new TagsModel({
name : req.body.name
});
tags.save(function (err, tags) {
if (err) {
return res.status(500).json({
message: 'Error when creating tags',
error: err
});
}
return res.status(201).json(tags);
});
},
/**
* tagsController.update()
*/
update: function (req, res) {
var id = req.params.id;
TagsModel.findOne({_id: id}, function (err, tags) {
if (err) {
return res.status(500).json({
message: 'Error when getting tags',
error: err
});
}
if (!tags) {
return res.status(404).json({
message: 'No such tags'
});
}
tags.name = req.body.name ? req.body.name : tags.name;
tags.save(function (err, tags) {
if (err) {
return res.status(500).json({
message: 'Error when updating tags.',
error: err
});
}
return res.json(tags);
});
});
},
/**
* tagsController.remove()
*/
remove: function (req, res) {
var id = req.params.id;
TagsModel.findByIdAndRemove(id, function (err, tags) {
if (err) {
return res.status(500).json({
message: 'Error when deleting the tags.',
error: err
});
}
return res.status(204).json();
});
}
};

View File

@@ -0,0 +1,161 @@
var UserModel = require('../models/userModel.js');
/**
* userController.js
*
* @description :: Server-side logic for managing users.
*/
module.exports = {
/**
* userController.list()
*/
list: function (req, res) {
UserModel.find(function (err, users) {
if (err) {
return res.status(500).json({
message: 'Error when getting user.',
error: err
});
}
return res.json(users);
});
},
/**
* userController.show()
*/
show: function (req, res) {
var id = req.params.id;
UserModel.findOne({_id: id}, function (err, user) {
if (err) {
return res.status(500).json({
message: 'Error when getting user.',
error: err
});
}
if (!user) {
return res.status(404).json({
message: 'No such user'
});
}
return res.json(user);
});
},
/**
* userController.create()
*/
create: function (req, res) {
var user = new UserModel({
username : req.body.username,
password : req.body.password,
email : req.body.email
});
user.save(function (err, user) {
if (err) {
return res.status(500).json({
message: 'Error when creating user',
error: err
});
}
//return res.status(201).json(user);
return res.redirect('/users/login');
});
},
/**
* userController.update()
*/
update: function (req, res) {
var id = req.params.id;
UserModel.findOne({_id: id}, function (err, user) {
if (err) {
return res.status(500).json({
message: 'Error when getting user',
error: err
});
}
if (!user) {
return res.status(404).json({
message: 'No such user'
});
}
user.username = req.body.username ? req.body.username : user.username;
user.password = req.body.password ? req.body.password : user.password;
user.email = req.body.email ? req.body.email : user.email;
user.save(function (err, user) {
if (err) {
return res.status(500).json({
message: 'Error when updating user.',
error: err
});
}
return res.json(user);
});
});
},
/**
* userController.remove()
*/
remove: function (req, res) {
var id = req.params.id;
UserModel.findByIdAndRemove(id, function (err, user) {
if (err) {
return res.status(500).json({
message: 'Error when deleting the user.',
error: err
});
}
return res.status(204).json();
});
},
showRegister: function(req, res){
res.render('user/register');
},
showLogin: function(req, res){
res.render('user/login');
},
login: function(req, res, next){
UserModel.authenticate(req.body.username, req.body.password, function(err, user){
if(err || !user){
var err = new Error('Wrong username or paassword');
err.status = 401;
return next(err);
}
req.session.userId = user._id;
res.redirect('/mdata');
});
},
logout: function(req, res, next){
if(req.session){
req.session.destroy(function(err){
if(err){
return next(err);
} else{
return res.redirect('/');
}
});
}
}
};