var MRIM = (function(){
	var _url = 'http://status.mail.ru/batch.js?';
	return {
		fetch: function(c){
		    var links = (c.tagName ? c : document.body).getElementsByTagName('i');
		    var mrim = {'el':[],'em':[],'t':[]}, mail = null;
		    for(var i = 0;i < links.length;i++) {
				mail = $(links[i]).readAttribute('email');
				if(!mail) continue;
				mrim.el.push(links[i]);
				mrim.em.push(mail);
				mrim.t.push(links[i].className.match('spr-mrim-13') ? '13' : '9');
		    }
			links = (c.tagName ? c : document.body).getElementsByTagName('a');
		    for(var i = 0;i < links.length;i++) {
				mail = $(links[i]).readAttribute('email');
				if(!mail) continue;
				mrim.el.push(links[i]);
				mrim.em.push(mail);
				mrim.t.push(links[i].className.match('spr-mrim-13') ? '13' : '9');
		    }
			this.get(mrim);
		},
		get: function(links) {
			this.links = links;
			var sc = document.body.appendChild(document.createElement('script'));
			sc.src = _url + links.em.join(',') + '&' + Math.floor(Math.random() * 10000);
			return;
		},
		update: function(c) {
			if(!c) return;if(!c.length) return;
			c = c.split('');
			var els = this.links.el;
			for(var i = 0; i < els.length; i++) 
				els[i].className += ' mrim-'+(c[i] == 0?'offline':c[i] == 1?'online':c[i] == 2?'away':'offline') + '_' + this.links.t[i];
		}
	};
})();
$(document).observe('dom:loaded', MRIM.fetch.bindAsEventListener(MRIM));
