mirror of
https://github.com/Mibew/java.git
synced 2025-01-22 17:40:35 +03:00
Added strings 'Away' and 'Up to date' at users page to localization
This commit is contained in:
parent
24deb150d2
commit
6b18c2868a
@ -7,29 +7,29 @@
|
||||
*/
|
||||
Ajax.PeriodicalUpdater=Class.create();
|
||||
Class.inherit(Ajax.PeriodicalUpdater,Ajax.Base,{initialize:function(a){this.setOptions(a);this._options.onComplete=this.requestComplete.bind(this);this._options.onException=this.handleException.bind(this);this._options.onTimeout=this.handleTimeout.bind(this);this._options.timeout=5E3;this.frequency=this._options.frequency||2;this.updater={};this.update()},handleException:function(){this._options.handleError&&this._options.handleError("offline, reconnecting");this.stopUpdate();this.timer=setTimeout(this.update.bind(this),
|
||||
1E3)},handleTimeout:function(){this._options.handleError&&this._options.handleError("timeout, reconnecting");this.stopUpdate();this.timer=setTimeout(this.update.bind(this),1E3)},stopUpdate:function(){if(this.updater._options)this.updater._options.onComplete=void 0;clearTimeout(this.timer)},update:function(){if(this._options.updateParams)this._options.parameters=this._options.updateParams();this.updater=new Ajax.Request(this._options.url,this._options)},requestComplete:function(a){try{var b=Ajax.getXml(a);
|
||||
b?(this._options.updateContent||Ajax.emptyFunction)(b):this._options.handleError&&this._options.handleError("reconnecting")}catch(c){}this.timer=setTimeout(this.update.bind(this),this.frequency*1E3)}});
|
||||
var HtmlGenerationUtils={popupLink:function(a,b,c,d,f,g,j){return'<a href="'+a+'"'+(j!=null?' class="'+j+'"':"")+' target="_blank" title="'+b+'" onclick="this.newWindow = window.open(\''+a+"', '"+c+"', 'toolbar=0,scrollbars=0,location=0,status=1,menubar=0,width="+f+",height="+g+",resizable=1');this.newWindow.focus();this.newWindow.opener=window;return false;\">"+d+"</a>"},generateOneRowTable:function(a){return'<table class="inner"><tr>'+a+"</tr></table>"},viewOpenCell:function(a,b,c,d,f,g,j,n,m,o){var g=
|
||||
2,b=b+"?thread="+c,e="<td>";e+=f||d?HtmlGenerationUtils.popupLink(n||!d?b:b+"&viewonly=true",localized[f?0:1],"ImCenter"+c,a,640,480,null):'<a href="#">'+a+"</a>";e+="</td>";f&&(e+='<td class="icon">',e+=HtmlGenerationUtils.popupLink(b,localized[0],"ImCenter"+c,'<img src="'+webimRoot+'/images/tbliclspeak.gif" width="15" height="15" border="0" alt="'+localized[0]+'">',640,480,null),e+="</td>",g++);d&&(e+='<td class="icon">',e+=HtmlGenerationUtils.popupLink(b+"&viewonly=true",localized[1],"ImCenter"+
|
||||
c,'<img src="'+webimRoot+'/images/tbliclread.gif" width="15" height="15" border="0" alt="'+localized[1]+'">',640,480,null),e+="</td>",g++);m&&(e+='<td class="icon">',e+=HtmlGenerationUtils.popupLink(o+"?thread="+c,localized[6],"ImTracked"+c,'<img src="'+webimRoot+'/images/tblictrack.gif" width="15" height="15" border="0" alt="'+localized[6]+'">',640,480,null),e+="</td>",g++);j!=""&&(e+='</tr><tr><td class="firstmessage" colspan="'+g+'"><a href="javascript:void(0)" title="'+j+'" onclick="alert(this.title);return false;">',
|
||||
e+=j.length>30?j.substring(0,30)+"...":j,e+="</a></td>");return HtmlGenerationUtils.generateOneRowTable(e)},banCell:function(a,b){return'<td class="icon">'+HtmlGenerationUtils.popupLink(webimRoot+"/operator/ban.php?"+(b?"id="+b:"thread="+a),localized[2],"ban"+a,'<img src="'+webimRoot+'/images/ban.gif" width="15" height="15" border="0" alt="'+localized[2]+'">',720,480,null)+"</td>"},viewVisOpenCell:function(a,b,c,d,f){var g="<td>";g+=f?HtmlGenerationUtils.popupLink(b+"?visitor="+c,localized[7],"ImCenter"+
|
||||
c,a,640,480,null):'<a href="#">'+a+"</a>";g+="</td>";g+='<td class="icon">';a=HtmlGenerationUtils.popupLink(d+"?visitor="+c,localized[6],"ImTracked"+c,'<img src="'+webimRoot+'/images/tblictrack.gif" width="15" height="15" border="0" alt="'+localized[6]+'">',640,480,null);a=a.replace("scrollbars=0","scrollbars=1");g+=a;g+="</td>";return HtmlGenerationUtils.generateOneRowTable(g)}};Ajax.ThreadListUpdater=Class.create();
|
||||
1E3)},handleTimeout:function(){this._options.handleError&&this._options.handleError("timeout, reconnecting");this.stopUpdate();this.timer=setTimeout(this.update.bind(this),1E3)},stopUpdate:function(){if(this.updater._options)this.updater._options.onComplete=void 0;clearTimeout(this.timer)},update:function(){if(this._options.updateParams)this._options.parameters=this._options.updateParams();this.updater=new Ajax.Request(this._options.url,this._options)},requestComplete:function(a){try{var c=Ajax.getXml(a);
|
||||
c?(this._options.updateContent||Ajax.emptyFunction)(c):this._options.handleError&&this._options.handleError("reconnecting")}catch(b){}this.timer=setTimeout(this.update.bind(this),1E3*this.frequency)}});
|
||||
var HtmlGenerationUtils={popupLink:function(a,c,b,d,g,h,i){return'<a href="'+a+'"'+(null!=i?' class="'+i+'"':"")+' target="_blank" title="'+c+'" onclick="this.newWindow = window.open(\''+a+"', '"+b+"', 'toolbar=0,scrollbars=0,location=0,status=1,menubar=0,width="+g+",height="+h+",resizable=1');this.newWindow.focus();this.newWindow.opener=window;return false;\">"+d+"</a>"},generateOneRowTable:function(a){return'<table class="inner"><tr>'+a+"</tr></table>"},viewOpenCell:function(a,c,b,d,g,h,i,l,k,n){var h=
|
||||
2,c=c+"?thread="+b,e="<td>",e=g||d?e+HtmlGenerationUtils.popupLink(l||!d?c:c+"&viewonly=true",localized[g?0:1],"ImCenter"+b,a,640,480,null):e+('<a href="#">'+a+"</a>"),e=e+"</td>";g&&(e=e+'<td class="icon">'+HtmlGenerationUtils.popupLink(c,localized[0],"ImCenter"+b,'<img src="'+webimRoot+'/images/tbliclspeak.gif" width="15" height="15" border="0" alt="'+localized[0]+'">',640,480,null),e+="</td>",h++);d&&(e=e+'<td class="icon">'+HtmlGenerationUtils.popupLink(c+"&viewonly=true",localized[1],"ImCenter"+
|
||||
b,'<img src="'+webimRoot+'/images/tbliclread.gif" width="15" height="15" border="0" alt="'+localized[1]+'">',640,480,null),e+="</td>",h++);k&&(e=e+'<td class="icon">'+HtmlGenerationUtils.popupLink(n+"?thread="+b,localized[6],"ImTracked"+b,'<img src="'+webimRoot+'/images/tblictrack.gif" width="15" height="15" border="0" alt="'+localized[6]+'">',640,480,null),e+="</td>",h++);""!=i&&(e=e+('</tr><tr><td class="firstmessage" colspan="'+h+'"><a href="javascript:void(0)" title="'+i+'" onclick="alert(this.title);return false;">')+
|
||||
(30<i.length?i.substring(0,30)+"...":i),e+="</a></td>");return HtmlGenerationUtils.generateOneRowTable(e)},banCell:function(a,c){return'<td class="icon">'+HtmlGenerationUtils.popupLink(webimRoot+"/operator/ban.php?"+(c?"id="+c:"thread="+a),localized[2],"ban"+a,'<img src="'+webimRoot+'/images/ban.gif" width="15" height="15" border="0" alt="'+localized[2]+'">',720,480,null)+"</td>"},viewVisOpenCell:function(a,c,b,d,g){var h="<td>",h=g?h+HtmlGenerationUtils.popupLink(c+"?visitor="+b,localized[7],"ImCenter"+
|
||||
b,a,640,480,null):h+('<a href="#">'+a+"</a>"),h=h+'</td><td class="icon">',a=HtmlGenerationUtils.popupLink(d+"?visitor="+b,localized[6],"ImTracked"+b,'<img src="'+webimRoot+'/images/tblictrack.gif" width="15" height="15" border="0" alt="'+localized[6]+'">',640,480,null),a=a.replace("scrollbars=0","scrollbars=1");return HtmlGenerationUtils.generateOneRowTable(h+a+"</td>")}};Ajax.ThreadListUpdater=Class.create();
|
||||
Class.inherit(Ajax.ThreadListUpdater,Ajax.Base,{initialize:function(a){this.setOptions(a);this._options.updateParams=this.updateParams.bind(this);this._options.handleError=this.handleError.bind(this);this._options.updateContent=this.updateContent.bind(this);this._options.lastrevision=0;this.threadTimers={};this.delta=0;this.t=this._options.table;this.t2=this._options.visitors_table;this.periodicalUpdater=new Ajax.PeriodicalUpdater(this._options);this.old_visitors={};this.visitors={};this.visitorTimers=
|
||||
{}},updateParams:function(){return"since="+this._options.lastrevision+"&status="+this._options.istatus+(this._options.showonline?"&showonline=1":"")+(this._options.showvisitors?"&showvisitors=1":"")},setStatus:function(a){this._options.status.innerHTML=a},handleError:function(a){this.setStatus(a)},updateThread:function(a){function b(a,b,c,d){if(a=CommonUtils.getCell(c,b,a))a.innerHTML=d}for(var c,d,f,g=!1,j=!1,n=!1,m=null,o=null,e=0;e<a.attributes.length;e++){var l=a.attributes[e];if(l.nodeName==
|
||||
"id")c=l.nodeValue;else if(l.nodeName=="stateid")d=l.nodeValue;else if(l.nodeName=="state")f=l.nodeValue;else if(l.nodeName=="canopen")j=!0;else if(l.nodeName=="canview")g=!0;else if(l.nodeName=="canban")n=!0;else if(l.nodeName=="ban")m=l.nodeValue;else if(l.nodeName=="banid")o=l.nodeValue}e=CommonUtils.getRow("thr"+c,this.t);if(d=="closed")e&&this.t.deleteRow(e.rowIndex),this.threadTimers[c]=null;else{var l=NodeUtils.getNodeValue(a,"name"),q=NodeUtils.getNodeValue(a,"addr"),p=NodeUtils.getNodeValue(a,
|
||||
"time"),t=NodeUtils.getNodeValue(a,"agent"),s=NodeUtils.getNodeValue(a,"modified"),u=NodeUtils.getNodeValue(a,"message"),r="<td>"+NodeUtils.getNodeValue(a,"useragent")+"</td>";m!=null&&(r="<td>"+NodeUtils.getNodeValue(a,"reason")+"</td>");n&&(r+=HtmlGenerationUtils.banCell(c,o));r=HtmlGenerationUtils.generateOneRowTable(r);a=CommonUtils.getRow("t"+d,this.t);n=CommonUtils.getRow("t"+d+"end",this.t);if(e!=null&&(e.rowIndex<=a.rowIndex||e.rowIndex>=n.rowIndex))this.t.deleteRow(e.rowIndex),e=this.threadTimers[c]=
|
||||
null;if(e==null){if(e=this.t.insertRow(a.rowIndex+1),e.className=m=="blocked"&&d!="chat"?"ban":"in"+d,e.id="thr"+c,this.threadTimers[c]=[p,s,d],CommonUtils.insertCell(e,"name","visitor",null,null,HtmlGenerationUtils.viewOpenCell(l,this._options.agentservl,c,g,j,m,u,d!="chat",this._options.showvisitors,this._options.trackedservl)),CommonUtils.insertCell(e,"contid","visitor","center",null,q),CommonUtils.insertCell(e,"state","visitor","center",null,f),CommonUtils.insertCell(e,"op","visitor","center",
|
||||
null,t),CommonUtils.insertCell(e,"time","visitor","center",null,this.getTimeSince(p)),CommonUtils.insertCell(e,"wait","visitor","center",null,d!="chat"?this.getTimeSince(s):"-"),CommonUtils.insertCell(e,"etc","visitor","center",null,r),d=="wait"||d=="prio")return!0}else this.threadTimers[c]=[p,s,d],e.className=m=="blocked"&&d!="chat"?"ban":"in"+d,b(this.t,e,"name",HtmlGenerationUtils.viewOpenCell(l,this._options.agentservl,c,g,j,m,u,d!="chat",this._options.showvisitors,this._options.trackedservl)),
|
||||
b(this.t,e,"contid",q),b(this.t,e,"state",f),b(this.t,e,"op",t),b(this.t,e,"time",this.getTimeSince(p)),b(this.t,e,"wait",d!="chat"?this.getTimeSince(s):"-"),b(this.t,e,"etc",r);return!1}},updateQueueMessages:function(){function a(a,b){var c=$(b),j=$(b+"end");if(c==null||j==null)return!1;return c.rowIndex+1<j.rowIndex}var b=$("statustd");if(b){var c=a(this.t,"twait")||a(this.t,"tprio")||a(this.t,"tchat");b.innerHTML=c?"":this._options.noclients;b.height=c?5:30}},getTimeSince:function(a){var a=Math.floor(((new Date).getTime()-
|
||||
a-this.delta)/1E3),b=Math.floor(a/60),c="";a%=60;a<10&&(a="0"+a);b>=60&&(c=Math.floor(b/60),b%=60,b<10&&(b="0"+b),c+=":");return c+b+":"+a},updateTimers:function(){for(var a in this.threadTimers)if(this.threadTimers[a]!=null){var b=this.threadTimers[a],c=CommonUtils.getRow("thr"+a,this.t);if(c!=null){var d=function(a,b,c,d){if(a=CommonUtils.getCell(c,b,a))a.innerHTML=d};d(this.t,c,"time",this.getTimeSince(b[0]));d(this.t,c,"wait",b[2]!="chat"?this.getTimeSince(b[1]):"-")}}},updateThreads:function(a){var b=
|
||||
!1,c=NodeUtils.getAttrValue(a,"time"),d=NodeUtils.getAttrValue(a,"revision");if(c)this.delta=(new Date).getTime()-c;if(d)this._options.lastrevision=d;for(c=0;c<a.childNodes.length;c++)d=a.childNodes[c],d.tagName=="thread"&&this.updateThread(d)&&(b=!0);this.updateQueueMessages();this.updateTimers();this.setStatus(this._options.istatus?"Away":"Up to date");b&&(playSound(webimRoot+"/sounds/new_user.wav"),window.focus(),updaterOptions.showpopup&&alert(localized[5]))},updateOperators:function(a){var b=
|
||||
$("onlineoperators");if(b){for(var c=[],d=0;d<a.childNodes.length;d++){var f=a.childNodes[d];if(f.tagName=="operator"){var g=NodeUtils.getAttrValue(f,"name"),f=NodeUtils.getAttrValue(f,"away")!=null;c[c.length]='<img src="'+webimRoot+"/images/op"+(f?"away":"online")+'.gif" width="12" height="12" border="0" alt="'+localized[1]+'"> '+g}}b.innerHTML=c.join(", ")}},updateVisitorsTimers:function(){for(var a in this.visitorTimers)if(this.visitorTimers[a]!=null){var b=this.visitorTimers[a],c=CommonUtils.getRow("vis"+
|
||||
a,this.t2);if(c!=null){var d=function(a,b,c,d){if(a=CommonUtils.getCell(c,b,a))a.innerHTML=d};d(this.t2,c,"time",this.getTimeSince(b[0]));d(this.t2,c,"modified",this.getTimeSince(b[1]));b[2]!=null&&d(this.t2,c,"invitationtime",this.getTimeSince(b[2]))}}},updateVisitor:function(a){function b(a,b,c,d){if(a=CommonUtils.getCell(c,b,a))a.innerHTML=d}for(var c,d=0;d<a.attributes.length;d++){var f=a.attributes[d];if(f.nodeName=="id")c=f.nodeValue}for(var f=NodeUtils.getNodeValue(a,"addr"),g=NodeUtils.getNodeValue(a,
|
||||
"username"),j=NodeUtils.getNodeValue(a,"useragent"),n=NodeUtils.getNodeValue(a,"time"),m=NodeUtils.getNodeValue(a,"modified"),o=NodeUtils.getNodeValue(a,"invitations"),e=NodeUtils.getNodeValue(a,"chats"),l=null,q=null,a=a.getElementsByTagName("invitation")[0],d=0;d<a.childNodes.length;d++){var p=a.childNodes[d];if(p.tagName=="operator")l=p.firstChild.nodeValue;else if(p.tagName=="invitationtime")q=p.firstChild.nodeValue}p=l==null?"free":"invited";d=CommonUtils.getRow("vis"+c,this.t2);a=CommonUtils.getRow("vis"+
|
||||
p,this.t2);p=CommonUtils.getRow("vis"+p+"end",this.t2);if(d!=null&&(d.rowIndex<=a.rowIndex||d.rowIndex>=p.rowIndex))this.t2.deleteRow(d.rowIndex),d=this.visitorTimers[c]=null;d==null?(d=this.t2.insertRow(a.rowIndex+1),d.id="vis"+c,this.visitorTimers[c]=[n,m,q],CommonUtils.insertCell(d,"username","visitor",null,null,HtmlGenerationUtils.viewVisOpenCell(g,this._options.inviteservl,c,this._options.trackedservl,l==null)),CommonUtils.insertCell(d,"addr","visitor","center",null,f),CommonUtils.insertCell(d,
|
||||
"time","visitor","center",null,this.getTimeSince(n)),CommonUtils.insertCell(d,"modified","visitor","center",null,this.getTimeSince(m)),CommonUtils.insertCell(d,"operator","visitor","center",null,l!=null?l:"-"),CommonUtils.insertCell(d,"invitationtime","visitor","center",null,l!=null?this.getTimeSince(q):"-"),CommonUtils.insertCell(d,"invitations","visitor","center",null,o+" / "+e),CommonUtils.insertCell(d,"useragent","visitor","center",null,j)):(this.visitorTimers[c]=[n,m,q],b(this.t2,d,"username",
|
||||
HtmlGenerationUtils.viewVisOpenCell(g,this._options.inviteservl,c,this._options.trackedservl,l==null)),b(this.t2,d,"addr",f),b(this.t2,d,"operator",l!=null?l:"-"),b(this.t2,d,"time",this.getTimeSince(n)),b(this.t2,d,"modified",this.getTimeSince(m)),b(this.t2,d,"invitationtime",l!=null?this.getTimeSince(q):"-"),b(this.t2,d,"invitations",o+" / "+e),b(this.t2,d,"useragent",j));this.visitors[c]=1;return!1},removeOldVisitors:function(){for(id in this.old_visitors)if(this.visitors[id]===void 0){var a=CommonUtils.getRow("vis"+
|
||||
id,this.t2);a&&this.t2.deleteRow(a.rowIndex);this.visitorTimers[id]=null}},updateVisitorsList:function(a){var b=$("visstatustd");if(b)b.innerHTML=a>0?"":this._options.novisitors,b.height=a>0?5:30},updateVisitors:function(a){this.old_visitors=this.visitors;this.visitors={};for(var b=0,c=0;c<a.childNodes.length;c++){var d=a.childNodes[c];d.tagName=="visitor"&&(b++,this.updateVisitor(d))}this.updateVisitorsTimers();this.removeOldVisitors();this.updateVisitorsList(b)},updateContent:function(a){if(a.tagName==
|
||||
"update")for(var b=0;b<a.childNodes.length;b++){var c=a.childNodes[b];c.tagName=="threads"?this.updateThreads(c):c.tagName=="operators"?this.updateOperators(c):c.tagName=="visitors"&&this.updateVisitors(c)}else a.tagName=="error"?this.setStatus(NodeUtils.getNodeValue(a,"descr")):this.setStatus("reconnecting")}});
|
||||
function togglemenu(){if($("sidebar")&&$("wcontent")&&$("togglemenu"))$("wcontent").className=="contentnomenu"?($("sidebar").style.display="block",$("wcontent").className="contentinner",$("togglemenu").innerHTML=localized[4]):($("sidebar").style.display="none",$("wcontent").className="contentnomenu",$("togglemenu").innerHTML=localized[3])}var webimRoot="";Behaviour.register({"#togglemenu":function(a){a.onclick=function(){togglemenu()}}});
|
||||
EventHelper.register(window,"onload",function(){webimRoot=updaterOptions.wroot;new Ajax.ThreadListUpdater({table:$("threadlist"),status:$("connstatus"),istatus:0,visitors_table:$("visitorslist")}.extend(updaterOptions||{}));updaterOptions.havemenu||togglemenu()});
|
||||
{}},updateParams:function(){return"since="+this._options.lastrevision+"&status="+this._options.istatus+(this._options.showonline?"&showonline=1":"")+(this._options.showvisitors?"&showvisitors=1":"")},setStatus:function(a){this._options.status.innerHTML=a},handleError:function(a){this.setStatus(a)},updateThread:function(a){function c(a,d,b,c){if(a=CommonUtils.getCell(b,d,a))a.innerHTML=c}for(var b,d,g,h=!1,i=!1,l=!1,k=null,n=null,e=0;e<a.attributes.length;e++){var f=a.attributes[e];if("id"==f.nodeName)b=
|
||||
f.nodeValue;else if("stateid"==f.nodeName)d=f.nodeValue;else if("state"==f.nodeName)g=f.nodeValue;else if("canopen"==f.nodeName)i=!0;else if("canview"==f.nodeName)h=!0;else if("canban"==f.nodeName)l=!0;else if("ban"==f.nodeName)k=f.nodeValue;else if("banid"==f.nodeName)n=f.nodeValue}e=CommonUtils.getRow("thr"+b,this.t);if("closed"==d)e&&this.t.deleteRow(e.rowIndex),this.threadTimers[b]=null;else{var f=NodeUtils.getNodeValue(a,"name"),m=NodeUtils.getNodeValue(a,"addr"),j=NodeUtils.getNodeValue(a,"time"),
|
||||
q=NodeUtils.getNodeValue(a,"agent"),p=NodeUtils.getNodeValue(a,"modified"),r=NodeUtils.getNodeValue(a,"message"),o="<td>"+NodeUtils.getNodeValue(a,"useragent")+"</td>";null!=k&&(o="<td>"+NodeUtils.getNodeValue(a,"reason")+"</td>");l&&(o+=HtmlGenerationUtils.banCell(b,n));o=HtmlGenerationUtils.generateOneRowTable(o);a=CommonUtils.getRow("t"+d,this.t);l=CommonUtils.getRow("t"+d+"end",this.t);if(null!=e&&(e.rowIndex<=a.rowIndex||e.rowIndex>=l.rowIndex))this.t.deleteRow(e.rowIndex),e=this.threadTimers[b]=
|
||||
null;if(null==e){if(e=this.t.insertRow(a.rowIndex+1),e.className="blocked"==k&&"chat"!=d?"ban":"in"+d,e.id="thr"+b,this.threadTimers[b]=[j,p,d],CommonUtils.insertCell(e,"name","visitor",null,null,HtmlGenerationUtils.viewOpenCell(f,this._options.agentservl,b,h,i,k,r,"chat"!=d,this._options.showvisitors,this._options.trackedservl)),CommonUtils.insertCell(e,"contid","visitor","center",null,m),CommonUtils.insertCell(e,"state","visitor","center",null,g),CommonUtils.insertCell(e,"op","visitor","center",
|
||||
null,q),CommonUtils.insertCell(e,"time","visitor","center",null,this.getTimeSince(j)),CommonUtils.insertCell(e,"wait","visitor","center",null,"chat"!=d?this.getTimeSince(p):"-"),CommonUtils.insertCell(e,"etc","visitor","center",null,o),"wait"==d||"prio"==d)return!0}else this.threadTimers[b]=[j,p,d],e.className="blocked"==k&&"chat"!=d?"ban":"in"+d,c(this.t,e,"name",HtmlGenerationUtils.viewOpenCell(f,this._options.agentservl,b,h,i,k,r,"chat"!=d,this._options.showvisitors,this._options.trackedservl)),
|
||||
c(this.t,e,"contid",m),c(this.t,e,"state",g),c(this.t,e,"op",q),c(this.t,e,"time",this.getTimeSince(j)),c(this.t,e,"wait","chat"!=d?this.getTimeSince(p):"-"),c(this.t,e,"etc",o);return!1}},updateQueueMessages:function(){function a(a,b){var c=$(b),i=$(b+"end");return null==c||null==i?!1:c.rowIndex+1<i.rowIndex}var c=$("statustd");if(c){var b=a(this.t,"twait")||a(this.t,"tprio")||a(this.t,"tchat");c.innerHTML=b?"":this._options.noclients;c.height=b?5:30}},getTimeSince:function(a){var a=Math.floor(((new Date).getTime()-
|
||||
a-this.delta)/1E3),c=Math.floor(a/60),b="",a=a%60;10>a&&(a="0"+a);60<=c&&(b=Math.floor(c/60),c%=60,10>c&&(c="0"+c),b+=":");return b+c+":"+a},updateTimers:function(){for(var a in this.threadTimers)if(null!=this.threadTimers[a]){var c=this.threadTimers[a],b=CommonUtils.getRow("thr"+a,this.t);if(null!=b){var d=this.getTimeSince(c[0]),g=CommonUtils.getCell("time",b,this.t);if(g)g.innerHTML=d;c="chat"!=c[2]?this.getTimeSince(c[1]):"-";if(b=CommonUtils.getCell("wait",b,this.t))b.innerHTML=c}}},updateThreads:function(a){var c=
|
||||
!1,b=NodeUtils.getAttrValue(a,"time"),d=NodeUtils.getAttrValue(a,"revision");if(b)this.delta=(new Date).getTime()-b;if(d)this._options.lastrevision=d;for(b=0;b<a.childNodes.length;b++)d=a.childNodes[b],"thread"==d.tagName&&this.updateThread(d)&&(c=!0);this.updateQueueMessages();this.updateTimers();this.setStatus(this._options.istatus?localized[8]:localized[9]);c&&(playSound(webimRoot+"/sounds/new_user.wav"),window.focus(),updaterOptions.showpopup&&alert(localized[5]))},updateOperators:function(a){var c=
|
||||
$("onlineoperators");if(c){for(var b=[],d=0;d<a.childNodes.length;d++){var g=a.childNodes[d];if("operator"==g.tagName){var h=NodeUtils.getAttrValue(g,"name"),g=null!=NodeUtils.getAttrValue(g,"away");b[b.length]='<img src="'+webimRoot+"/images/op"+(g?"away":"online")+'.gif" width="12" height="12" border="0" alt="'+localized[1]+'"> '+h}}c.innerHTML=b.join(", ")}},updateVisitorsTimers:function(){for(var a in this.visitorTimers)if(null!=this.visitorTimers[a]){var c=this.visitorTimers[a],b=CommonUtils.getRow("vis"+
|
||||
a,this.t2);if(null!=b){var d=function(a,b,c,d){if(a=CommonUtils.getCell(c,b,a))a.innerHTML=d};d(this.t2,b,"time",this.getTimeSince(c[0]));d(this.t2,b,"modified",this.getTimeSince(c[1]));null!=c[2]&&d(this.t2,b,"invitationtime",this.getTimeSince(c[2]))}}},updateVisitor:function(a){function c(a,b,c,d){if(a=CommonUtils.getCell(c,b,a))a.innerHTML=d}for(var b,d=0;d<a.attributes.length;d++){var g=a.attributes[d];if("id"==g.nodeName)b=g.nodeValue}for(var g=NodeUtils.getNodeValue(a,"addr"),h=NodeUtils.getNodeValue(a,
|
||||
"username"),i=NodeUtils.getNodeValue(a,"useragent"),l=NodeUtils.getNodeValue(a,"time"),k=NodeUtils.getNodeValue(a,"modified"),n=NodeUtils.getNodeValue(a,"invitations"),e=NodeUtils.getNodeValue(a,"chats"),f=null,m=null,a=a.getElementsByTagName("invitation")[0],d=0;d<a.childNodes.length;d++){var j=a.childNodes[d];if("operator"==j.tagName)f=j.firstChild.nodeValue;else if("invitationtime"==j.tagName)m=j.firstChild.nodeValue}j=null==f?"free":"invited";d=CommonUtils.getRow("vis"+b,this.t2);a=CommonUtils.getRow("vis"+
|
||||
j,this.t2);j=CommonUtils.getRow("vis"+j+"end",this.t2);if(null!=d&&(d.rowIndex<=a.rowIndex||d.rowIndex>=j.rowIndex))this.t2.deleteRow(d.rowIndex),d=this.visitorTimers[b]=null;null==d?(d=this.t2.insertRow(a.rowIndex+1),d.id="vis"+b,this.visitorTimers[b]=[l,k,m],CommonUtils.insertCell(d,"username","visitor",null,null,HtmlGenerationUtils.viewVisOpenCell(h,this._options.inviteservl,b,this._options.trackedservl,null==f)),CommonUtils.insertCell(d,"addr","visitor","center",null,g),CommonUtils.insertCell(d,
|
||||
"time","visitor","center",null,this.getTimeSince(l)),CommonUtils.insertCell(d,"modified","visitor","center",null,this.getTimeSince(k)),CommonUtils.insertCell(d,"operator","visitor","center",null,null!=f?f:"-"),CommonUtils.insertCell(d,"invitationtime","visitor","center",null,null!=f?this.getTimeSince(m):"-"),CommonUtils.insertCell(d,"invitations","visitor","center",null,n+" / "+e),CommonUtils.insertCell(d,"useragent","visitor","center",null,i)):(this.visitorTimers[b]=[l,k,m],c(this.t2,d,"username",
|
||||
HtmlGenerationUtils.viewVisOpenCell(h,this._options.inviteservl,b,this._options.trackedservl,null==f)),c(this.t2,d,"addr",g),c(this.t2,d,"operator",null!=f?f:"-"),c(this.t2,d,"time",this.getTimeSince(l)),c(this.t2,d,"modified",this.getTimeSince(k)),c(this.t2,d,"invitationtime",null!=f?this.getTimeSince(m):"-"),c(this.t2,d,"invitations",n+" / "+e),c(this.t2,d,"useragent",i));this.visitors[b]=1;return!1},removeOldVisitors:function(){for(id in this.old_visitors)if(void 0===this.visitors[id]){var a=CommonUtils.getRow("vis"+
|
||||
id,this.t2);a&&this.t2.deleteRow(a.rowIndex);this.visitorTimers[id]=null}},updateVisitorsList:function(a){var c=$("visstatustd");if(c)c.innerHTML=0<a?"":this._options.novisitors,c.height=0<a?5:30},updateVisitors:function(a){this.old_visitors=this.visitors;this.visitors={};for(var c=0,b=0;b<a.childNodes.length;b++){var d=a.childNodes[b];"visitor"==d.tagName&&(c++,this.updateVisitor(d))}this.updateVisitorsTimers();this.removeOldVisitors();this.updateVisitorsList(c)},updateContent:function(a){if("update"==
|
||||
a.tagName)for(var c=0;c<a.childNodes.length;c++){var b=a.childNodes[c];"threads"==b.tagName?this.updateThreads(b):"operators"==b.tagName?this.updateOperators(b):"visitors"==b.tagName&&this.updateVisitors(b)}else"error"==a.tagName?this.setStatus(NodeUtils.getNodeValue(a,"descr")):this.setStatus("reconnecting")}});
|
||||
function togglemenu(){if($("sidebar")&&$("wcontent")&&$("togglemenu"))"contentnomenu"==$("wcontent").className?($("sidebar").style.display="block",$("wcontent").className="contentinner",$("togglemenu").innerHTML=localized[4]):($("sidebar").style.display="none",$("wcontent").className="contentnomenu",$("togglemenu").innerHTML=localized[3])}var webimRoot="";Behaviour.register({"#togglemenu":function(a){a.onclick=function(){togglemenu()}}});
|
||||
EventHelper.register(window,"onload",function(){webimRoot=updaterOptions.wroot;new Ajax.ThreadListUpdater({table:$("threadlist"),status:$("connstatus"),istatus:0,visitors_table:$("visitorslist")}.extend(updaterOptions||{}));updaterOptions.havemenu||togglemenu()});
|
@ -326,7 +326,7 @@ Class.inherit( Ajax.ThreadListUpdater, Ajax.Base, {
|
||||
}
|
||||
this.updateQueueMessages();
|
||||
this.updateTimers();
|
||||
this.setStatus(this._options.istatus ? "Away" : "Up to date");
|
||||
this.setStatus(this._options.istatus ? localized[8] : localized[9]);
|
||||
if( newAdded ) {
|
||||
playSound(webimRoot+'/sounds/new_user.wav');
|
||||
window.focus();
|
||||
|
@ -377,6 +377,8 @@ page_settings.tab.invitationthemes=Invitation themes preview
|
||||
pending.menu.hide=Hide menu >>
|
||||
pending.menu.show=Show menu >>
|
||||
pending.popup_notification=A new visitor is waiting for an answer.
|
||||
pending.status.away=Away
|
||||
pending.status.online=Up to date
|
||||
pending.status.setaway=Set status as "Away"
|
||||
pending.status.setonline=Set status as "Available"
|
||||
pending.table.ban=Ban this visitor
|
||||
|
@ -375,6 +375,8 @@ page_settings.tab.invitationthemes=
|
||||
pending.menu.hide=Спрятать меню >>
|
||||
pending.menu.show=Показать меню >>
|
||||
pending.popup_notification=Новый посетитель ожидает ответа.
|
||||
pending.status.away=Îòîøåë
|
||||
pending.status.online=Äîñòóïåí
|
||||
pending.status.setaway=Выставить статус "Отошел"
|
||||
pending.status.setonline=Выставить статус "Доступен"
|
||||
pending.table.ban=Пометить посетителя как нежелательного
|
||||
|
@ -36,7 +36,9 @@ var localized = new Array(
|
||||
"<?php echo htmlspecialchars(getlocal("pending.menu.hide")) ?>",
|
||||
"<?php echo htmlspecialchars(getlocal("pending.popup_notification")) ?>",
|
||||
"<?php echo getlocal("pending.table.tracked") ?>",
|
||||
"<?php echo getlocal("pending.table.invite") ?>"
|
||||
"<?php echo getlocal("pending.table.invite") ?>",
|
||||
"<?php echo getlocal("pending.status.away") ?>",
|
||||
"<?php echo getlocal("pending.status.online") ?>"
|
||||
);
|
||||
var updaterOptions = {
|
||||
url:"<?php echo $webimroot ?>/operator/update.php",wroot:"<?php echo $webimroot ?>",
|
||||
|
Loading…
Reference in New Issue
Block a user