feat: add ci cd files dont edit those files
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
const CounterDay = require('../models/CounterDay');
|
||||
const {body, validationResult} = require('express-validator');
|
||||
const {_sr} = require('../plugins/serverResponses');
|
||||
const {res404, res500} = require('../plugins/controllersHelperFunctions');
|
||||
const fs = require('fs');
|
||||
const sharp = require('sharp');
|
||||
const moment = require('moment-jalaali');
|
||||
|
||||
/////////////////////////////////////////////////////////////////////// admin
|
||||
|
||||
module.exports.updateCounterDay = [
|
||||
[
|
||||
body('title')
|
||||
.notEmpty().withMessage(_sr['fa'].required.title),
|
||||
|
||||
body('publish')
|
||||
.optional().isBoolean().withMessage(_sr['fa'].format.boolean),
|
||||
|
||||
body('expireDate')
|
||||
.notEmpty().withMessage(`لطفا یک تاریخ تعیین کنید`),
|
||||
|
||||
],
|
||||
async (req, res) => {
|
||||
const errors = validationResult(req)
|
||||
if (!errors.isEmpty()) return res.status(422).json({
|
||||
validation: errors.mapped()
|
||||
});
|
||||
|
||||
|
||||
try {
|
||||
|
||||
const {title, publish , expireDate} = req.body;
|
||||
|
||||
const targetCounterDay = await CounterDay.findOne();
|
||||
|
||||
if (targetCounterDay) {
|
||||
targetCounterDay.title = title;
|
||||
targetCounterDay.publish = publish;
|
||||
targetCounterDay.expireDate = moment(expireDate).startOf('days');
|
||||
targetCounterDay._updatedBy = req.user._id;
|
||||
|
||||
await targetCounterDay.save();
|
||||
|
||||
return res.json({message: _sr['fa'].response.success_save});
|
||||
}else {
|
||||
const data = {
|
||||
title,
|
||||
publish,
|
||||
expireDate : moment(expireDate).startOf('days'),
|
||||
_creator : req.user._id,
|
||||
_updatedBy: req.user._id
|
||||
}
|
||||
|
||||
await CounterDay.create(data);
|
||||
|
||||
return res.json({message: _sr['fa'].response.success_save});
|
||||
}
|
||||
} catch (error) {
|
||||
return res500(res, `مشکلی در اجرای درخواست پیش آمده است`);
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
module.exports.getCounterDayByAdmin = [
|
||||
async (req, res) => {
|
||||
try {
|
||||
const targetCounterDay = await CounterDay.findOne();
|
||||
|
||||
if (!targetCounterDay) return res.json({title: '', publish: true , expireDate : ''});
|
||||
|
||||
return res.json(targetCounterDay);
|
||||
} catch (error) {
|
||||
return res500(res, `مشکلی در اجرای درخواست شما پیش آمده است`);
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
////////////////////////////////////////////////////////////////// public
|
||||
module.exports.getCounterDayByUser = [
|
||||
async (req, res) => {
|
||||
try {
|
||||
const targetCounterDay = await CounterDay.findOne({publish : true , expireDate : {$gte : new Date()}});
|
||||
|
||||
if (!targetCounterDay) return res.json(null);
|
||||
|
||||
return res.json(targetCounterDay);
|
||||
} catch (error) {
|
||||
return res500(res, `مشکلی در اجرای درخواست شما پیش آمده است`);
|
||||
}
|
||||
}
|
||||
]
|
||||
Reference in New Issue
Block a user