Advertisement
Guest User

chat.js

a guest
Nov 9th, 2012
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //id příspěvku
  2. var id=0;
  3. //čas obnovování
  4. var timer=5000;
  5. //čtecí a zapisovací objekt
  6. var ajax1 = (window.XMLHttpRequest ? new XMLHttpRequest() : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false));
  7. var ajax2 = (window.XMLHttpRequest ? new XMLHttpRequest() : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false));
  8. //čtení zpráv
  9. function zpravy(){
  10. if(!ajax1){
  11. alert("Tady AJAX neběží...");
  12. return true;
  13. }
  14. ajax1.onreadystatechange= function () {text(); } ;
  15. //požadavek na čtené nových příspěvků
  16. ajax1.open("GET", "chat.php?action=aktualizovat&id="+id, true);
  17. ajax1.send(null);
  18. return false;
  19. }
  20.  
  21. //zápis zpráv
  22. function posli(recipient){
  23. if(!ajax2){
  24. alert("Tady AJAX neběží...");
  25. return true;
  26. }
  27.  
  28. ajax2.onreadystatechange= function () {poslano(); } ;
  29. ajax2.open("POST", "chat.php?action=poslat", true);
  30. ajax2.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  31. //poslání hodnot z formuláře
  32. ajax2.send("chatText23="+document.form23.chatText23.value+"&name="+document.form23.name.value+"&recipient=23&sender=1");
  33. return false;
  34. }
  35.  
  36. //úkony po poslání zprávy
  37. function poslano(){
  38. if (ajax2.readyState == 4){
  39. if(ajax2.status == 200  || ajax2.status==0){
  40. //pokud se zpráva uložila, dojde k vymazání prvku se zprávou
  41. if(ajax2.responseText=="ok"){
  42. document.form23.chatText23.value="";
  43. zpravy();
  44. }
  45. else alert("Bohužel se nepodařilo zprávu odeslat ");
  46. }
  47. else alert("Chyba: "+ ajax2.status +":"+ ajax2.statusText);
  48. }
  49. }
  50. //vypsání získaných příspěvků
  51. function text(){
  52. var txt;
  53. var param= new Array();
  54. if (ajax1.readyState == 4){
  55. if(ajax1.status == 200  || ajax1.status==0){
  56. //rozdělení textového řetězce na text a id
  57. param=ajax1.responseText.split("|id=");
  58. //výpis do DIVu chtext
  59. document.getElementById("chtext23").innerHTML = param[0] + document.getElementById("chtext23").innerHTML;
  60. //uložení id nejaktuálnějšího příspěvku
  61. id=param[param.length-1];
  62. }
  63. else alert("Chyba: "+ ajax1.status +":"+ ajax1.statusText);
  64. }
  65. }
  66. //aktualizace příspěvků
  67. function aktualizovat(){
  68. window.setTimeout("aktualizovat()", timer);
  69. zpravy();
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement