custom.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. $(document).ready(function () {
  2. if ($('.main-alert').length) {
  3. setTimeout(function () {
  4. $('.main-alert').fadeTo(2000, 500).slideUp(500, function () {
  5. $(".main-alert").slideUp(500);
  6. })
  7. }, 3000);
  8. }
  9. let user = localStorage.getItem('user');
  10. if (user > 0) {
  11. let socket = new WebSocket(localStorage.getItem('socketAddress'));
  12. socket.onopen = function () {
  13. console.log("[WS] Connected. Listen messages for user " + user);
  14. };
  15. socket.onmessage = function (event) {
  16. let received = JSON.parse(event.data);
  17. if (parseInt(received.data.user_id) === parseInt(user)) {
  18. console.log(received);
  19. console.log(`[WS] Received data action: ${received.data.action}. Message: ${received.data.message}`);
  20. if(received.data.payload.download) {
  21. document.location.href = '/storage/export/' + received.data.payload.download;
  22. }
  23. if(received.data.payload.link) {
  24. document.location.href = received.data.payload.link;
  25. }
  26. setTimeout(function () {
  27. if (received.data.payload.error) {
  28. $('.alerts').append('<div class="main-alert2 alert alert-danger" role="alert">' + received.data.message + '</div>');
  29. } else {
  30. $('.alerts').append('<div class="main-alert2 alert alert-success" role="alert">' + received.data.message + '</div>');
  31. }
  32. setTimeout(function () {
  33. $('.main-alert2').fadeTo(2000, 500).slideUp(500, function () {
  34. $(".main-alert2").slideUp(500);
  35. })
  36. }, 3000);
  37. }, 1000
  38. );
  39. }
  40. };
  41. socket.onclose = function (event) {
  42. if (event.wasClean) {
  43. console.log(`[WS] Closed clear, code=${event.code} reason=${event.reason}`);
  44. } else {
  45. console.log('[WS] Connection lost', event);
  46. }
  47. };
  48. socket.onerror = function (error) {
  49. console.log(`[error] ${error}`);
  50. };
  51. }
  52. });