main.js 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. var myObj = 0;
  2. var button = document.getElementById("button");
  3. var result = document.getElementById('result');
  4. var emoji = document.querySelectorAll(".emoji-item");
  5. var canvasIcon = document.querySelector(".draw img");
  6. var canvasBar = document.querySelector(".canvas");
  7. for (var i = 0; i < emoji.length; i++) {
  8. emoji[i].onclick = function(){
  9. var xmlhttp = new XMLHttpRequest();
  10. xmlhttp.open("POST", "http://students.a-level.com.ua:10012");
  11. xmlhttp.onreadystatechange = function(){
  12. if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
  13. console.log(xmlhttp.responseText);
  14. }
  15. }
  16. xmlhttp.send(JSON.stringify({ func: 'addMessage', nick: "p", message: this.getAttribute("src")}))
  17. }
  18. }
  19. var cansvasIsVisible = false;
  20. canvasIcon.onclick = function(){
  21. if(!cansvasIsVisible){
  22. canvasBar.style.visibility = "visible";
  23. cansvasIsVisible = true;
  24. }
  25. else{
  26. canvasBar.style.visibility = "hidden";
  27. cansvasIsVisible = false;
  28. }
  29. }
  30. //
  31. button.onclick = function(){
  32. var xmlhttp = new XMLHttpRequest();
  33. var myNick = document.getElementById('input1').value;
  34. var myMessage = document.getElementById('input2').value;
  35. xmlhttp.open("POST", "http://students.a-level.com.ua:10012");
  36. xmlhttp.onreadystatechange = function(){
  37. if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
  38. console.log(xmlhttp.responseText);
  39. }
  40. }
  41. xmlhttp.send(JSON.stringify({ func: 'addMessage', nick: myNick, message: myMessage}))
  42. }
  43. //
  44. setInterval(function(){
  45. var xmlhttp = new XMLHttpRequest();
  46. xmlhttp.open("POST", "http://students.a-level.com.ua:10012");
  47. //xmlhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
  48. xmlhttp.onreadystatechange = function(){
  49. if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
  50. var obj = JSON.parse(xmlhttp.responseText).data;
  51. console.log(obj)
  52. var resObj = Object.keys(obj);
  53. myObj += obj.length;
  54. for (var i = 0; i < obj.length; i++) {
  55. if(typeof obj[i].message != "object" && obj[i].message && obj[i].message.indexOf('youtube') > -1){
  56. var iframe = document.createElement("iframe");
  57. var str = "https://www.youtube.com/embed/";
  58. var index1 = obj[i].message.indexOf('=') + 1;
  59. if(obj[i].message.indexOf('&') > -1){
  60. var index2 = obj[i].message.indexOf('&');
  61. str2 = obj[i].message.slice(index1,index2);
  62. }
  63. else{
  64. str2 = obj[i].message.slice(index1);
  65. }
  66. console.log(str2);
  67. iframe.setAttribute("src",str + str2);
  68. result.innerHTML += obj[i].nick + ": ";
  69. result.appendChild(iframe);
  70. result.innerHTML += '<br>';
  71. }
  72. else if(typeof obj[i].message != "object" && obj[i].message && /(https?:\/\/.*\.(?:png|jpg))/i.test(obj[i].message)){ // obj[i].message.indexOf('.jpg') > -1
  73. var img = document.createElement("img");
  74. img.setAttribute("src",obj[i].message);
  75. result.innerHTML += obj[i].nick + ": ";
  76. result.appendChild(img);
  77. result.innerHTML += '<br>';
  78. }
  79. else if(typeof obj[i].message != "object" && obj[i].message && obj[i].message.indexOf('.gif') > -1){
  80. var img = document.createElement("img");
  81. img.setAttribute("src",obj[i].message);
  82. result.innerHTML += obj[i].nick + ": ";
  83. result.appendChild(img);
  84. result.innerHTML += '<br>';
  85. }
  86. else{
  87. result.innerHTML += "<div><span>" + obj[i].nick + "</span><br> "+ obj[i].message + '</div>';
  88. }
  89. }
  90. }
  91. }
  92. xmlhttp.send(JSON.stringify({ func: 'getMessages', messageId: myObj}));
  93. }
  94. ,3000);