utils.js 998 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. function isValidEmail(email) {
  2. const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
  3. return emailRegex.test(email);
  4. }
  5. function isDueDatePassed(dueDate) {
  6. const now = new Date();
  7. const dueDateTime = new Date(dueDate);
  8. return dueDateTime < now;
  9. }
  10. function isDatePassed(dateA, dateB) {
  11. const dueDateA = new Date(dateA);
  12. const dueDateB = new Date(dateB);
  13. return dueDateA < dueDateB;
  14. }
  15. function validateDates(res, startDate, endDate, dueDate) {
  16. if (isDatePassed(startDate, dueDate)) {
  17. res.status(400).json({ 'message': 'Due date is after start date' });
  18. return false;
  19. }
  20. if (isDueDatePassed(dueDate)) {
  21. res.status(400).json({ 'message': 'Due date is in the past' });
  22. return false;
  23. }
  24. if (isDatePassed(endDate, startDate)) {
  25. res.status(400).json({ 'message': 'End date is before start date' });
  26. return false;
  27. }
  28. return true;
  29. }
  30. export {isValidEmail, isDueDatePassed, isDatePassed, validateDates};