Personal blog written from scratch using Node.js, Bootstrap, and MySQL. https://jrtechs.net
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
1.2 KiB

  1. const Promise = require('promise');
  2. const sql = require('../utils/sql');
  3. module.exports=
  4. {
  5. /**
  6. * Responsible for querying the database and displaying all
  7. * categories that the blog has in the sidebar
  8. *
  9. * @param res
  10. * @return {*|Promise}
  11. */
  12. main: function(res)
  13. {
  14. return new Promise(function(resolve, reject)
  15. {
  16. res.write("<div class=\"w3-card w3-margin\">");
  17. res.write("<div class=\"w3-container w3-padding\"><h4>Categories</h4></div>");
  18. res.write("<ul class=\"w3-ul w3-hoverable w3-white\">");
  19. sql.getCategories().then(function(categories)
  20. {
  21. categories.forEach(function(cat)
  22. {
  23. //res.write(cat.name);
  24. res.write("<li class=\"w3-padding-16\">");
  25. res.write("<a href='/category/" + cat.url + "'><span class=\"w3-large\">" + cat.name + "</span><br></a>");
  26. res.write("</li>");
  27. });
  28. res.write("</ul></div>");
  29. resolve();
  30. })
  31. });
  32. }
  33. };