Beginner
55 сообщений
Мужчина
|
Code <table border="0" cellpadding="0" cellspacing="0" width="200px" id="proFile"> <tr><td><a href="javascript://" onclick="mpm.pm(4)" class="proava" title="Массовая рассылка">Написать сообщение</a></td></tr> </table>
<script type="text/javascript"> var mpm = { noava: 'http://umodul.ru/temp/img/noavatar.png', audio: 'http://umodul.ru/mfl/sound/message.mp3',
suic: '-4985:3157.5:5167.5:1053.5', myid: 47, users: [], inter: [], typing: [], rus: 'ёйцукенгшщзхъфывапролджэячсмитьбю.ЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,"№;:?', en: [/`/g, /q/g, /w/g, /e/g, /r/g, /t/g, /y/g, /u/g, /i/g, /o/g, /p/g, /\[/g, /\]/g, /a/g, /s/g, /d/g, /f/g, /g/g, /h/g, /j/g, /k/g, /l/g, /;/g, /'/g, /z/g, /x/g, /c/g, /v/g, /b/g, /n/g, /m/g, /,/g, /\./g, /\//g, /~/g, /Q/g, /W/g, /E/g, /R/g, /T/g, /Y/g, /U/g, /I/g, /O/g, /P/g, /\{/g, /\}/g, /A/g, /S/g, /D/g, /F/g, /G/g, /H/g, /J/g, /K/g, /L/g, /:/g, /"/g, /Z/g, /X/g, /C/g, /V/g, /B/g, /N/g, /M/g, /</g, />/g, /\?/g, /@/g, /#/g, /\$/g, /\^/g, /&/g], pm: function(getid){ if(_uWnd.getbyname('mpm'+getid)){return false;} var us = mpm.users(getid); new _uWnd('mpm'+getid,us.login,400,100,{align:'left',shadow:1,resize:0,autosize:1,min:1,customButtons:{'uHelp': [true, function(){ new _uWnd('mpmHelp','Помощь',300,200,{align:'left',autosize:1,resize:0},'<fieldset><legend><b>Горячие клавиши</b></legend><b>Ctrl+Enter</b> - Перенос на новую строку при условии что включена функция отправки по нажатию Enter<hr><b>Ctrl+E</b> - Исправить неверную раскладку клавиатуры</fieldset>'); }]},oncontent:function(){ $('#txt_mpm'+getid).keypress(function(e){ if($('#ent_mpm'+getid).is(':checked')){ if(e.ctrlKey && e.keyCode == 13){$(this).val($(this).val()+'\n'); return false;} if(e.keyCode == 13){mpm.new_(getid); return false;} if(e.ctrlKey && (e.which == 1091 || e.which == 101)){ var data = $(this).val(); for(var i = 0, len = mpm.rus.length; i<len; i++){ data = data.replace(mpm.en[i], mpm.rus[i]); } $(this).val(data); return false; } for(var i = 0, len = mpm.typing.length; i<len; i++){ if(mpm.typing[i].id == getid && mpm.typing[i].num < 3){ mpm.typing[i].num = mpm.typing[i].num+2; } } } }); $.getJSON('http://umodul.ru/m4/isocial_at_ua?uid='+mpm.suic+'&getpm=1&out='+getid+'&callback=?', function(d){ $('#mpm'+getid).append(mpm.temp(d.data, getid)); mpm.inter.push(getid); mpm.typing.push({id:getid, num:0}); }); }, onclose:function(){ for(var i = 0, len = mpm.inter.length; i<len; i++){ if(mpm.inter[i] == getid){ mpm.inter.splice(i,1); } } for(var i = 0, len = mpm.typing.length; i<len; i++){ if(mpm.typing[i].id == getid){ mpm.typing.splice(i,1); } } }},'<fieldset><legend><b>Диалог</b></legend><div style="height:300px;overflow:auto" id="smpm'+getid+'"><div id="mpm'+getid+'"></div></div></fieldset><fieldset><legend><b>Сообщение</b></legend><textarea style="resize:none;height:90px;width:100%" class="dis_mpm'+getid+'" id="txt_mpm'+getid+'"></textarea></fieldset><fieldset><input type="button" class="dis_mpm'+getid+'" onclick="mpm.new_('+getid+')" value="Отправить"> <input class="dis_mpm'+getid+'" type="checkbox" checked="checked" id="ent_mpm'+getid+'">Отправлять по нажатию Enter</fieldset>'); },
new_: function(id){ $('.dis_mpm'+id).attr('disabled', true); $.getJSON('http://umodul.ru/m4/isocial_at_ua?uid='+mpm.suic+'&send=1&c='+encodeURIComponent($('#txt_mpm'+id).val())+'&in='+id+'&callback=?', function(d){ if($.trim($('#txt_mpm'+id).val()) != ''){ for(var i = 0, len = mpm.typing.length; i<len; i++){ if(mpm.typing[i].id == id){ mpm.typing[i].num = 0; } } mpm.add(d.html, mpm.myid, id); $('#smpm'+id).animate({scrollTop:$('#mpm'+id).height()}, 350); $('#txt_mpm'+id).val(''); }else{return $('.dis_mpm'+id).attr('disabled', false);} if(d.data != ''){ _uWnd.alert('<br>'+d.data,'Ошибка',{close:1,w:250,h:80,tm:3000,align:'center'}); } $('.dis_mpm'+id).attr('disabled', false); }); },
ajax: function(){ $.getJSON('http://umodul.ru/m4/isocial_at_ua?uid='+mpm.suic+'&get=1&callback=?', function(d){ if(d.data != ''){ var arrdat = d.data.split(','); for(var i = 0, len = arrdat.length; i<len; i++){ for(var n = 0, len_n = mpm.inter.length; n<len_n; n++){ if(arrdat[i] == mpm.inter[n]){ arrdat.splice(i,1); } } } if(!arrdat.length){ _uWnd.close('nps'); return false; } var data = ''; for(var i = 0, len = arrdat.length; i<len; i++){ var us = mpm.users(arrdat[i]); data += '<a href="javascript://" onclick="mpm.pm('+arrdat[i]+')">От "'+us.login+'"</a><br>'; } new _uWnd('nps', 'Новые сообщение', 240, 110, {autosize:0, x: _uWnd.getdims().clientW - 250, y: _uWnd.getdims().clientH - 120, alert: 1, resize: 0, notaskbar: 1, fadetype: 2, fadespeed: 500, fadeclosetype: 1, fadeclosespeed: 500, align: 'left'},''+data+'</fieldset>'); }else{_uWnd.close('nps');} setTimeout(mpm.ajax, 1500); }); },
temp: function(data, id){ if(data == ''){return '';} var us = mpm.users(id); return '<table width="100%" border="0" summary="'+id+'"><tr><td style="width:50px;vertical-align:top"><a href="/index/8-'+id+'" target="_blank"><img style="max-width:40px" src="'+us.ava+'" border="0"></a></td><td style="vertical-align:top" class="mpm_add">'+data+'</td></tr></table><hr>'; },
add: function(data, id, to){ data = data.replace(/\n/g, '<br>'); if($('#mpm'+to+' table:last').attr('summary') == id){ $('#mpm'+to+' .mpm_add:last').append('<div>'+data+'</div>'); }else{ $('#mpm'+to).append(mpm.temp(data, id)); } },
sound: function(){ $('body').append('<embed type="application/x-shockwave-flash" src="http://umodul.ru/mfl/flash/audio.swf?song_url='+mpm.audio+'&autoplay=1&loop=0" width="0" height="0">'); },
users: function(id){ if(typeof mpm.users[id] != 'undefined'){ var d = { ava: mpm.users[id].ava, login: mpm.users[id].login, id: id }; return d; } var xml = $.ajax({ type: 'GET', url: '/api/index/8-'+id, dataType: 'xml', async: false }).responseText; var ava = $(xml).find('member:contains("USER_AVATAR")').find('string').text(); mpm.users[id] = { ava: ava == '' ? mpm.noava : ava, login: $(xml).find('member:contains("USER_USERNAME")').find('string').text() }; var d = { ava: mpm.users[id].ava, login: mpm.users[id].login, id: id }; return d; } };
mpm.ajax(); setInterval(function(){ for(var i = 0, len = mpm.typing.length; i<len; i++){ if(mpm.typing[i].num>0){ mpm.typing[i].num--; } } }, 1000); setInterval(function(){ for(var i = 0, len = mpm.inter.length; i<len; i++){ var typing = ''; for(var n = 0, len2 = mpm.typing.length; n<len2; n++){ if(mpm.typing[n].id == mpm.inter[n]){ typing = mpm.typing[n].num; } } $.getJSON('http://umodul.ru/m4/isocial_at_ua?uid='+mpm.suic+'&getpm=1&out='+mpm.inter[i]+'&typing='+typing+'&callback=?', function(d){ _uWnd.setTitle('mpm'+d.id, d.typing!='0' ? mpm.users[d.id].login+' Пишет сообщение...' : mpm.users[d.id].login); if(d.data != ''){ mpm.sound(); mpm.add(d.data, d.id, d.id); $('#smpm'+d.id).animate({scrollTop:$('#mpm'+d.id).height()}, 350); } }); } }, 800); </script> <style>.xt-uHelp {background-position: 0 -300px;} .xt-uHelp-over {background-position: -15px -300px;}</style>
|
|
|
|
|
|