oprava chatu, tabulátory default tip
authorFrantišek Kučera <franta-hg@frantovo.cz>
Tue, 23 Apr 2013 21:43:37 +0200
changeset 204bebec432330a
parent 203 ac7c8d18831b
oprava chatu, tabulátory
java/nekurak.net-web/web/js/chat.js
     1.1 --- a/java/nekurak.net-web/web/js/chat.js	Sun Feb 12 19:42:39 2012 +0100
     1.2 +++ b/java/nekurak.net-web/web/js/chat.js	Tue Apr 23 21:43:37 2013 +0200
     1.3 @@ -5,126 +5,125 @@
     1.4  var poradoveCislo = 0;
     1.5  
     1.6  function setRychlostObnovy(interval) {
     1.7 -    clearTimeout(t);
     1.8 -    intervalObnovy = interval;
     1.9 -    spustCasovac();
    1.10 +	clearTimeout(t);
    1.11 +	intervalObnovy = interval;
    1.12 +	spustCasovac();
    1.13  }
    1.14  
    1.15  function getXmlHttpRequestObject() {
    1.16 -    if (window.XMLHttpRequest) {
    1.17 +	if (window.XMLHttpRequest) {
    1.18  	return new XMLHttpRequest();
    1.19 -    } else if(window.ActiveXObject) {
    1.20 +	} else if(window.ActiveXObject) {
    1.21  	return new ActiveXObject("Microsoft.XMLHTTP");
    1.22 -    } else {
    1.23 +	} else {
    1.24  	alert("Nepodporovaný prohlížeč.");
    1.25  	return null;
    1.26 -    }
    1.27 +	}
    1.28  }
    1.29  
    1.30  /** Náš AJAXový objekt. */
    1.31  var ajax = getXmlHttpRequestObject();
    1.32  
    1.33  function getMistnost() {
    1.34 -    return document.getElementById("odesilaciFormular").mistnost.value;
    1.35 +	return document.getElementById("odesilaciFormular").mistnost.value;
    1.36  }
    1.37  
    1.38  function getOd() {
    1.39 -    return document.getElementById("odesilaciFormular").od.value;
    1.40 +	return document.getElementById("odesilaciFormular").od.value;
    1.41  }
    1.42  
    1.43  function getZprava() {
    1.44 -    return document.getElementById("odesilaciFormular").text.value;
    1.45 +	return document.getElementById("odesilaciFormular").text.value;
    1.46  }
    1.47  
    1.48  function vymazTextZpravy() {
    1.49 -    document.getElementById("odesilaciFormular").text.value = "";
    1.50 +	document.getElementById("odesilaciFormular").text.value = "";
    1.51  }
    1.52  
    1.53  function ajaxOdesli() {
    1.54 -    if (ajax.readyState == 4 || ajax.readyState == 0) {
    1.55 +	if (ajax.readyState == 4 || ajax.readyState == 0) {
    1.56  	ajax.open("POST", "?akce=chat&akceChat=odesli&mistnost=" + encodeURIComponent(getMistnost()) + "&od=" + encodeURIComponent(getOd()) + "&zprava=" + encodeURIComponent(getZprava()), true);
    1.57  	ajax.onreadystatechange = function() {
    1.58 -	    if (ajax.readyState == 4) {
    1.59 +		if (ajax.readyState == 4) {
    1.60  		vymazTextZpravy();
    1.61  		aktualizujVypisZprav();
    1.62 -	    }
    1.63 +		}
    1.64  	};
    1.65  	ajax.send(null);
    1.66 -    }
    1.67 +	}
    1.68  }
    1.69  
    1.70  function aktualizujVypisZprav() {
    1.71 -    if (ajax.readyState == 4 || ajax.readyState == 0) {
    1.72 +	if (ajax.readyState == 4 || ajax.readyState == 0) {
    1.73  	ajax.open("POST", "?akce=chat&akceChat=vypis&mistnost=" + encodeURIComponent(getMistnost()), true);
    1.74  	ajax.onreadystatechange = function() {
    1.75 -	    if (ajax.readyState == 4) {
    1.76 +		if (ajax.readyState == 4) {
    1.77  		zpracujZpravy(ajax.responseXML);
    1.78  		document.getElementById("vypisZprav").scrollTop = 100000;
    1.79 -	    }
    1.80 +		}
    1.81  	};
    1.82  	ajax.send(null);
    1.83 -    }
    1.84 +	}
    1.85  }
    1.86  
    1.87  function ziskejVnitrekXML(data, element) {
    1.88 -    try {
    1.89 +	try {
    1.90  	return data.getElementsByTagName(element)[0].firstChild.nodeValue;
    1.91 -    } catch (e) {
    1.92 +	} catch (e) {
    1.93  	return "";
    1.94 -    }
    1.95 +	}
    1.96  }
    1.97  
    1.98  function zpracujZpravy(xmlOdpoved) {
    1.99 -    var vypisZprav = document.getElementById("vypisZprav");
   1.100 -    var zpravy = xmlOdpoved.getElementsByTagName("zprava");
   1.101 -    vypisZprav.innerHTML = "";
   1.102 -    var elementUl = document.createElement("ul");
   1.103 -    vypisZprav.appendChild(elementUl);
   1.104 +	var vypisZprav = document.getElementById("vypisZprav");
   1.105 +	var zpravy = xmlOdpoved.getElementsByTagName("zprava");
   1.106 +	vypisZprav.innerHTML = "";
   1.107 +	var elementUl = document.createElement("ul");
   1.108 +	vypisZprav.appendChild(elementUl);
   1.109  
   1.110 -    for (i = 0; i < zpravy.length; i++) {
   1.111 -	var od = ziskejVnitrekXML(zpravy[i], "od");
   1.112 -	var text = ziskejVnitrekXML(zpravy[i], "text");
   1.113 -	var kdy = ziskejVnitrekXML(zpravy[i], "kdy");
   1.114 -	var overeny = ziskejVnitrekXML(zpravy[i], "overeny");
   1.115 -	poradoveCislo = ziskejVnitrekXML(zpravy[i], "poradoveCislo");
   1.116 -
   1.117 -	var elementLi = document.createElement("li");
   1.118 -	elementLi.title = kdy;
   1.119 -
   1.120 -	var elementOd = document.createElement("strong");
   1.121 -	elementOd.textContent = od;
   1.122 -	elementLi.appendChild(elementOd);
   1.123 -	elementLi.appendChild(document.createTextNode(": "));
   1.124 -
   1.125 -	var elementText = document.createElement("span");
   1.126 -	elementText.textContent = text;
   1.127 -
   1.128 -	/**
   1.129 -	 * Ověřený je takový uživatel,
   1.130 -	 * který se přihlásil normálně přes Jabber a vstoupil do místnosti pod svojí přezdívkou.
   1.131 -	 * Uživatelé z webu jsou anonymové a připojují se k XMPP pod společným účtem.
   1.132 -	 * Svoji přezdívku si vyplňují sami a přenášíme ji zvlášť.
   1.133 -	 * Proto odlišíme tyto dvě skupiny uživatelů jinou barvou jejich příspěvku.
   1.134 -	 */
   1.135 -	if (overeny == "true") {
   1.136 +	for (i = 0; i < zpravy.length; i++) {
   1.137 +		var od = ziskejVnitrekXML(zpravy[i], "od");
   1.138 +		var text = ziskejVnitrekXML(zpravy[i], "text");
   1.139 +		var kdy = ziskejVnitrekXML(zpravy[i], "kdy");
   1.140 +		var overeny = ziskejVnitrekXML(zpravy[i], "overeny");
   1.141 +		poradoveCislo = ziskejVnitrekXML(zpravy[i], "poradoveCislo");
   1.142 +	
   1.143 +		var elementLi = document.createElement("li");
   1.144 +		elementLi.title = kdy;
   1.145 +	
   1.146 +		var elementOd = document.createElement("strong");
   1.147 +		elementOd.textContent = od;
   1.148 +		elementLi.appendChild(elementOd);
   1.149 +		elementLi.appendChild(document.createTextNode(": "));
   1.150 +	
   1.151 +		var elementText = document.createElement("span");
   1.152 +		elementText.textContent = text;
   1.153 +	
   1.154 +		/**
   1.155 +		 * Ověřený je takový uživatel,
   1.156 +		 * který se přihlásil normálně přes Jabber a vstoupil do místnosti pod svojí přezdívkou.
   1.157 +		 * Uživatelé z webu jsou anonymové a připojují se k XMPP pod společným účtem.
   1.158 +		 * Svoji přezdívku si vyplňují sami a přenášíme ji zvlášť.
   1.159 +		 * Proto odlišíme tyto dvě skupiny uživatelů jinou barvou jejich příspěvku.
   1.160 +		 */
   1.161 +		if (overeny == "true") {
   1.162 +			// zprávu můžeme zvýraznit
   1.163 +		} else {
   1.164 +			elementText.style.color = "#444444";
   1.165 +		}
   1.166 +		elementLi.appendChild(elementText);
   1.167 +	
   1.168 +		elementUl.appendChild(elementLi);
   1.169  	}
   1.170 -	    // zprávu můžeme zvýraznit
   1.171 -	} else {
   1.172 -	    elementText.style.color = "#444444";
   1.173 -	}
   1.174 -	elementLi.appendChild(elementText);
   1.175 -
   1.176 -	elementUl.appendChild(elementLi);
   1.177 -    }
   1.178  }
   1.179  
   1.180  var t;
   1.181  
   1.182  function spustCasovac() {
   1.183 -    aktualizujVypisZprav();
   1.184 -    
   1.185 -    t = setTimeout(function () {
   1.186 +	aktualizujVypisZprav();
   1.187 +	
   1.188 +	t = setTimeout(function () {
   1.189  	aktualizujVypisZprav();
   1.190  	spustCasovac();
   1.191 -    }, intervalObnovy);
   1.192 +	}, intervalObnovy);
   1.193  }
   1.194 \ No newline at end of file