httprint.js 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. function uploadFile() {
  2. let photo = document.getElementById("upload-file").files[0];
  3. let copies = document.getElementById("copies").value;
  4. let formData = new FormData();
  5. formData.append("file", photo);
  6. formData.append("copies", copies);
  7. var uploadField = document.getElementById("upload-file");
  8. fetch("/api/upload", {method: "POST", body: formData})
  9. .then(function(response) {
  10. return response.json();
  11. })
  12. .then(function(reply) {
  13. if (reply && !reply.error) {
  14. $.toast({
  15. text: reply.message || "file sent to printer",
  16. heading: "DONE!",
  17. icon: "success",
  18. showHideTransition: "fade",
  19. allowToastClose: true,
  20. hideAfter: false,
  21. stack: 5,
  22. position: "top-center"
  23. });
  24. } else {
  25. $.toast({
  26. text: reply.message || "unable to print file",
  27. heading: "ERROR!",
  28. icon: "error",
  29. showHideTransition: "fade",
  30. allowToastClose: true,
  31. hideAfter: 5000,
  32. stack: 5,
  33. position: "top-center"
  34. });
  35. }
  36. uploadField.value = null;
  37. })
  38. .catch(function(err) {
  39. console.log(err);
  40. $.toast({
  41. text: "failed to send file",
  42. heading: "ERROR!",
  43. icon: "error",
  44. showHideTransition: "fade",
  45. allowToastClose: true,
  46. hideAfter: 5000,
  47. stack: 5,
  48. position: "top-center"
  49. });
  50. uploadField.value = null;
  51. });
  52. }
  53. document.addEventListener("DOMContentLoaded", function(event) {
  54. let pbutton = document.getElementById("print-btn");
  55. pbutton.addEventListener("click", function(event) {
  56. uploadFile();
  57. });
  58. });