util.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. const db = require("./db.js");
  2. const VALID_EXTENSIONS = new Set([
  3. "png",
  4. "jpg",
  5. "jpeg",
  6. "bmp",
  7. ]);
  8. function isDevelopment() {
  9. return process.env.NODE_ENV == "dev";
  10. }
  11. function shouldShowMaintenanceMessage(serverId) {
  12. if(process.env.NODE_ENV != "dev")
  13. return false;
  14. return !db.get("devServers").includes(serverId).value();
  15. }
  16. function isValidImage(fileName) {
  17. let extPosition = fileName.lastIndexOf(".");
  18. if(extPosition < 0)
  19. return false;
  20. let ext = fileName.substring(extPosition + 1).toLowerCase();
  21. return VALID_EXTENSIONS.has(ext);
  22. }
  23. function isAuthorised(member) {
  24. if (db.get("editors.users").includes(member.id).value())
  25. return true;
  26. if (db.get("editors.roles").intersectionWith(member.roles.keyArray()).isEmpty().value())
  27. return false;
  28. return true;
  29. }
  30. module.exports = {
  31. isAuthorised: isAuthorised,
  32. isValidImage: isValidImage,
  33. shouldShowMaintenanceMessage: shouldShowMaintenanceMessage,
  34. isDevelopment: isDevelopment,
  35. documentation: {}
  36. };