window.onerror=null;
/*
 * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
 * Digest Algorithm, as defined in RFC 1321.
 * Version 2.2 Copyright (C) Paul Johnston 1999 - 2009
 * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
 * Distributed under the BSD License
 * See http://pajhome.org.uk/crypt/md5 for more info.
 */
var hexcase=0;function hex_md5(a){return rstr2hex(rstr_md5(str2rstr_utf8(a)))}function hex_hmac_md5(a,b){return rstr2hex(rstr_hmac_md5(str2rstr_utf8(a),str2rstr_utf8(b)))}function md5_vm_test(){return hex_md5("abc").toLowerCase()=="900150983cd24fb0d6963f7d28e17f72"}function rstr_md5(a){return binl2rstr(binl_md5(rstr2binl(a),a.length*8))}function rstr_hmac_md5(c,f){var e=rstr2binl(c);if(e.length>16){e=binl_md5(e,c.length*8)}var a=Array(16),d=Array(16);for(var b=0;b<16;b++){a[b]=e[b]^909522486;d[b]=e[b]^1549556828}var g=binl_md5(a.concat(rstr2binl(f)),512+f.length*8);return binl2rstr(binl_md5(d.concat(g),512+128))}function rstr2hex(c){try{hexcase}catch(g){hexcase=0}var f=hexcase?"0123456789ABCDEF":"0123456789abcdef";var b="";var a;for(var d=0;d<c.length;d++){a=c.charCodeAt(d);b+=f.charAt((a>>>4)&15)+f.charAt(a&15)}return b}function str2rstr_utf8(c){var b="";var d=-1;var a,e;while(++d<c.length){a=c.charCodeAt(d);e=d+1<c.length?c.charCodeAt(d+1):0;if(55296<=a&&a<=56319&&56320<=e&&e<=57343){a=65536+((a&1023)<<10)+(e&1023);d++}if(a<=127){b+=String.fromCharCode(a)}else{if(a<=2047){b+=String.fromCharCode(192|((a>>>6)&31),128|(a&63))}else{if(a<=65535){b+=String.fromCharCode(224|((a>>>12)&15),128|((a>>>6)&63),128|(a&63))}else{if(a<=2097151){b+=String.fromCharCode(240|((a>>>18)&7),128|((a>>>12)&63),128|((a>>>6)&63),128|(a&63))}}}}}return b}function rstr2binl(b){var a=Array(b.length>>2);for(var c=0;c<a.length;c++){a[c]=0}for(var c=0;c<b.length*8;c+=8){a[c>>5]|=(b.charCodeAt(c/8)&255)<<(c%32)}return a}function binl2rstr(b){var a="";for(var c=0;c<b.length*32;c+=8){a+=String.fromCharCode((b[c>>5]>>>(c%32))&255)}return a}function binl_md5(p,k){p[k>>5]|=128<<((k)%32);p[(((k+64)>>>9)<<4)+14]=k;var o=1732584193;var n=-271733879;var m=-1732584194;var l=271733878;for(var g=0;g<p.length;g+=16){var j=o;var h=n;var f=m;var e=l;o=md5_ff(o,n,m,l,p[g+0],7,-680876936);l=md5_ff(l,o,n,m,p[g+1],12,-389564586);m=md5_ff(m,l,o,n,p[g+2],17,606105819);n=md5_ff(n,m,l,o,p[g+3],22,-1044525330);o=md5_ff(o,n,m,l,p[g+4],7,-176418897);l=md5_ff(l,o,n,m,p[g+5],12,1200080426);m=md5_ff(m,l,o,n,p[g+6],17,-1473231341);n=md5_ff(n,m,l,o,p[g+7],22,-45705983);o=md5_ff(o,n,m,l,p[g+8],7,1770035416);l=md5_ff(l,o,n,m,p[g+9],12,-1958414417);m=md5_ff(m,l,o,n,p[g+10],17,-42063);n=md5_ff(n,m,l,o,p[g+11],22,-1990404162);o=md5_ff(o,n,m,l,p[g+12],7,1804603682);l=md5_ff(l,o,n,m,p[g+13],12,-40341101);m=md5_ff(m,l,o,n,p[g+14],17,-1502002290);n=md5_ff(n,m,l,o,p[g+15],22,1236535329);o=md5_gg(o,n,m,l,p[g+1],5,-165796510);l=md5_gg(l,o,n,m,p[g+6],9,-1069501632);m=md5_gg(m,l,o,n,p[g+11],14,643717713);n=md5_gg(n,m,l,o,p[g+0],20,-373897302);o=md5_gg(o,n,m,l,p[g+5],5,-701558691);l=md5_gg(l,o,n,m,p[g+10],9,38016083);m=md5_gg(m,l,o,n,p[g+15],14,-660478335);n=md5_gg(n,m,l,o,p[g+4],20,-405537848);o=md5_gg(o,n,m,l,p[g+9],5,568446438);l=md5_gg(l,o,n,m,p[g+14],9,-1019803690);m=md5_gg(m,l,o,n,p[g+3],14,-187363961);n=md5_gg(n,m,l,o,p[g+8],20,1163531501);o=md5_gg(o,n,m,l,p[g+13],5,-1444681467);l=md5_gg(l,o,n,m,p[g+2],9,-51403784);m=md5_gg(m,l,o,n,p[g+7],14,1735328473);n=md5_gg(n,m,l,o,p[g+12],20,-1926607734);o=md5_hh(o,n,m,l,p[g+5],4,-378558);l=md5_hh(l,o,n,m,p[g+8],11,-2022574463);m=md5_hh(m,l,o,n,p[g+11],16,1839030562);n=md5_hh(n,m,l,o,p[g+14],23,-35309556);o=md5_hh(o,n,m,l,p[g+1],4,-1530992060);l=md5_hh(l,o,n,m,p[g+4],11,1272893353);m=md5_hh(m,l,o,n,p[g+7],16,-155497632);n=md5_hh(n,m,l,o,p[g+10],23,-1094730640);o=md5_hh(o,n,m,l,p[g+13],4,681279174);l=md5_hh(l,o,n,m,p[g+0],11,-358537222);m=md5_hh(m,l,o,n,p[g+3],16,-722521979);n=md5_hh(n,m,l,o,p[g+6],23,76029189);o=md5_hh(o,n,m,l,p[g+9],4,-640364487);l=md5_hh(l,o,n,m,p[g+12],11,-421815835);m=md5_hh(m,l,o,n,p[g+15],16,530742520);n=md5_hh(n,m,l,o,p[g+2],23,-995338651);o=md5_ii(o,n,m,l,p[g+0],6,-198630844);l=md5_ii(l,o,n,m,p[g+7],10,1126891415);m=md5_ii(m,l,o,n,p[g+14],15,-1416354905);n=md5_ii(n,m,l,o,p[g+5],21,-57434055);o=md5_ii(o,n,m,l,p[g+12],6,1700485571);l=md5_ii(l,o,n,m,p[g+3],10,-1894986606);m=md5_ii(m,l,o,n,p[g+10],15,-1051523);n=md5_ii(n,m,l,o,p[g+1],21,-2054922799);o=md5_ii(o,n,m,l,p[g+8],6,1873313359);l=md5_ii(l,o,n,m,p[g+15],10,-30611744);m=md5_ii(m,l,o,n,p[g+6],15,-1560198380);n=md5_ii(n,m,l,o,p[g+13],21,1309151649);o=md5_ii(o,n,m,l,p[g+4],6,-145523070);l=md5_ii(l,o,n,m,p[g+11],10,-1120210379);m=md5_ii(m,l,o,n,p[g+2],15,718787259);n=md5_ii(n,m,l,o,p[g+9],21,-343485551);o=safe_add(o,j);n=safe_add(n,h);m=safe_add(m,f);l=safe_add(l,e)}return Array(o,n,m,l)}function md5_cmn(h,e,d,c,g,f){return safe_add(bit_rol(safe_add(safe_add(e,h),safe_add(c,f)),g),d)}function md5_ff(g,f,k,j,e,i,h){return md5_cmn((f&k)|((~f)&j),g,f,e,i,h)}function md5_gg(g,f,k,j,e,i,h){return md5_cmn((f&j)|(k&(~j)),g,f,e,i,h)}function md5_hh(g,f,k,j,e,i,h){return md5_cmn(f^k^j,g,f,e,i,h)}function md5_ii(g,f,k,j,e,i,h){return md5_cmn(k^(f|(~j)),g,f,e,i,h)}function safe_add(a,d){var c=(a&65535)+(d&65535);var b=(a>>16)+(d>>16)+(c>>16);return(b<<16)|(c&65535)}function bit_rol(a,b){return(a<<b)|(a>>>(32-b))};
//отправка формы по нажатию Enter
function submitForm(){
            if (event.keyCode == 13 || event.keyCode == Keyboard.ENTER){
            loginform.pwd.value = hex_md5(loginform.pwd.value);
            loginform.submit();
            }
    }
//проверка сообщений
function check(value) {
            var req = new JsHttpRequest();
    req.open(null, '/includes/check_mail.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
                document.getElementById('mail').innerHTML = req.responseText;
        }
    }
}
//проверка кредитной линии
function cred(value) {
            var req = new JsHttpRequest();
    req.open(null, '/includes/check_cred.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
                document.getElementById('creds').innerHTML = 'Ваша кредитная линия<br><span class="bill_big">'+req.responseText;
		document.getElementById('cred_left').innerHTML = '<b>Кредитная линия:</b>&nbsp;<span style="font-weight:bold;font-size:11px;color:#ff0000;">'+req.responseText+'&nbsp;&nbsp;<a href="/bank" class="fill" style="font-weight:bold;"><strong>пополнить</strong></a>';
	}
    }
}
//проверка кредитной линии
function updateGifts(value) {
            var req = new JsHttpRequest();
    req.open(null, '/includes/check_cred.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
		document.getElementById('cred_left').innerHTML = '<b>Кредитная линия:</b>&nbsp;<span style="font-weight:bold;font-size:11px;color:#ff0000;">'+req.responseText+'&nbsp;&nbsp;<a href="/bank" class="fill" style="font-weight:bold;"><strong>пополнить</strong></a>';
	}
    }
}
//обновление предупреждений
function updateWarns(value) {
	 document.getElementById('warnings').innerHTML = '<span style="color:#ff0000">Предупреждений в чате: '+value+'</span>';
}
//сброс статистики
function reset_stats(value) {
	document.getElementById('change_stats').innerHTML = '<table cellpadding=0 cellspacing=0 align="center" valign="top" height="150"> \
                        <tr> \
                                <td align="center"> \
                                	<img src="/images/ajax-loader.gif" width="50" height="50"><br/><br/>подождите...  \
                                </td> \
                        </tr> \
                        <tr> \
        			<td align="left" colspan="2" style="padding-bottom:8px;"> \
                			<img src="/images/hr.png" width="578" height="2" border="0"> \
        			</td> \
			</tr> \
                </table>';
	var req = new JsHttpRequest();
    req.open(null, '/includes/stats_backend.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
                if(req.responseText == 'ok'){
        		window.location = "?reset=ok";
                }else if(req.responseText == 'no'){
                        window.location = "?reset=no";
                }else{
                        document.getElementById('change_stats').innerHTML = req.responseText;
                }
	}
    }
}
//смена ника
function change_nick(value) {
	document.getElementById('change_nick').innerHTML = '<table cellpadding=0 cellspacing=0 align="center" valign="top" height="150"> \
                        <tr> \
                                <td align="center"> \
                                	<img src="/images/ajax-loader.gif" width="50" height="50"><br/><br/>подождите...  \
                                </td> \
                        </tr> \
                        <tr> \
        			<td align="left" colspan="2" style="padding-bottom:8px;"> \
                			<img src="/images/hr.png" width="578" height="2" border="0"> \
        			</td> \
			</tr> \
                </table>';
	var req = new JsHttpRequest();
    req.open(null, '/includes/nick_backend.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
        	if(req.responseText == 'ok'){
        		window.location = "?nick_changed=ok";
                }else{
                        document.getElementById('change_nick').innerHTML = req.responseText;
                }
	}
    }
}

//предлжение никнэймов
function suggest(value) {
            var req = new JsHttpRequest();
    req.open(null, 'suggest.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            document.getElementById('debug').innerHTML = req.responseText;
        }
    }
}
//заполнение поля никнэймов
function fillname(name){
document.form.to.value = name;
document.getElementById('debug').innerHTML = '';
}
function fillname2(name){
document.search.username.value = name;
document.getElementById('debug').innerHTML = '';
document.search.submit();
}
//спрятать Suggest
function hide(){
document.getElementById('debug').innerHTML = '';
}
//проверка доступности никнэймов
function checknick(value) {
    document.getElementById('debug').innerHTML = '<center><img src="/images/spinner_grey.gif" width=16 height=16></center>';
    var req = new JsHttpRequest();
    req.open(null, '../smpl_backend.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            document.getElementById('debug').innerHTML = req.responseText;
        }
    }
}
//удаление из блеклиста
function removebl(value) {
    document.getElementById('blacklist').innerHTML = '<img src="/images/spinner_grey.gif" width=16 height=16>';
    var req = new JsHttpRequest();
    req.open(null, '../bl_backend.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            document.getElementById('blacklist').innerHTML = req.responseText;
        }
    }
}
//предложение дружбы
function addfriend(value) {
    document.getElementById('friendship').innerHTML = '<span style="COLOR:#ff0000;font-weight:bold;FONT-SIZE: 10px !important;">Отправляю...</span>';
    var req = new JsHttpRequest();
    req.open(null, '../fr_backend.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            document.getElementById('friendship').innerHTML = req.responseText;
        }
    }
}
//добавление в блеклист
function addenemy(value) {
    document.getElementById('enemy').innerHTML = '<span style="COLOR:#ff0000;font-weight:bold;FONT-SIZE: 10px !important;">Добавляю...</span>';
    var req = new JsHttpRequest();
    req.open(null, '../newbl_backend.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            document.getElementById('enemy').innerHTML = req.responseText;
        }
    }
}
function erase() {
document.getElementById('debug').innerHTML = '&nbsp;<a href="javascript:void(0);" class="mail" title="Проверить, не занят ли этот ник" onclick="if(document.regFormBody.newlogin.value.length > 2){checknick(document.regFormBody.newlogin.value)}">Проверьте, не занят ли этот ник</a>';
}
// Подвижный DIV
     var flag=false;
     var shift_x;
     var shift_y;
  
function start_drag(itemToMove,e){
     if(!e) e = window.event;
     flag=true;
     shift_x = e.clientX-parseInt(itemToMove.style.left);
     shift_y = e.clientY-parseInt(itemToMove.style.top);
  
     if(e.stopPropagation) e.stopPropagation();
     else e.cancelBubble = true;
     if(e.preventDefault) e.preventDefault();
     else e.returnValue = false;
}
  
function end_drag(){ flag=false; }
  
function dragIt(itemToMove,e){
     if(!flag) return;
     if(!e) e = window.event;
     itemToMove.style.left = (e.clientX-shift_x) + "px";
     itemToMove.style.top = (e.clientY-shift_y) + "px";
  
     if(e.stopPropagation) e.stopPropagation();
     else e.cancelBubble = true;
     if(e.preventDefault) e.preventDefault();
     else e.returnValue = false;
}
//подгонка DIV на весь браузер
window.onresize = fnReSize; 
window.onload = fnReSize; 
function WindowHeight() 
{ 
if (window.innerHeight) 
return window.innerWidth; 
else if (document.body && document.body.offsetHeight) 
return document.body.offsetHeight; 
else 
return 0; 
} 
function fnReSize() 
{ 
if (document.getElementById("dark")!=null) 
dark.style.height=""+WindowHeight()+"px" 
}
// online помощник
        //открываем
function Assistant_open(page){
assistStep(page);
setTimeout(function()
{
$('#assist').fadeIn('fast');
},2000);
}
        //закрываем
function Assistant_close(value){
if(value == 'off'){
        var req = new JsHttpRequest();
        req.open(null, '/includes/assist_state.php', true);
        req.send( { q: value } );
        }
$('#assist').fadeOut('fast')
$('#assist_min').fadeOut('fast');
}
        //минимизируем
function Assistant_open_min(value, page){
if(page!=null){
assistStep(page);
}
if(value == 'min'){
        var req = new JsHttpRequest();
        req.open(null, '/includes/assist_state.php', true);
        req.send( { q: value } );
        }
$('#assist').fadeOut('fast')
$('#assist_min').fadeIn('fast');
}
        //разворачиваем
function Assistant_open_max(value){
if(value == 'on'){
        var req = new JsHttpRequest();
        req.open(null, '/includes/assist_state.php', true);
        req.send( { q: value } );
        }
$('#assist_min').fadeOut('fast');
$('#assist').fadeIn('fast');
}
//переключаем шаги помощника
function assistStep(value) {
document.getElementById('content').innerHTML = '<table cellpadding="0" cellspacing="0" border="0" align="center" valign="top" width="100%"><tr><td style="cursor:move;"><table cellpadding="0" cellspacing="0" border="0" align="left" valign="top"><tr><td class="fellow"><div class="fellow'+value+'"></div></td></div><td class="help_text"><div class="help_text"><div style="padding:60px 0 0 105px;"><img src="/images/facebox/loading.gif" width="32" height="32"></div></div></td></tr></table></td></tr></table>';
    var req = new JsHttpRequest();
    req.open(null, '/assist_steps.php', true);
    req.send( { q: value } );
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            document.getElementById('content').innerHTML = req.responseText;
        }
    }
}

