Author: ktlili
Date: Fri Oct 12 18:19:46 2007
New Revision: 18857

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18857&repname=
=3Djahia
Log:
JAHIA-2465: Ajax memory leak: =

--> update chat: any ajax call if disconnected + un-reference variable

Modified:
    branches/JAHIA-5-0-SP-BRANCH/core/src/webapp/jsp/jahia/topbar/chat.inc

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/webapp/jsp/jahia/topbar/cha=
t.inc
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/webapp/jsp/jahia/topbar/chat.inc&rev=3D18857&repname=3Djah=
ia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/webapp/jsp/jahia/topbar/chat.inc =
(original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/webapp/jsp/jahia/topbar/chat.inc =
Fri Oct 12 18:19:46 2007
@@ -14,7 +14,8 @@
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
---%><%@ page import=3D"org.jahia.bin.Jahia" %>
+--%>
+<%@ page import=3D"org.jahia.bin.Jahia" %>
 <%@ page import=3D"org.jahia.services.usermanager.JahiaLDAPUser" %>
 <%@ page import=3D"org.jahia.ajax.chat.chatAction" %>
 =

@@ -26,67 +27,121 @@
      * @version $Id: $
      */
 =

+    //String chatstatus=3D(String) session.getAttribute("chatstatus");
+    String connectionstatus =3D (String) session.getAttribute("chatserverc=
onnection");
+    if (connectionstatus =3D=3D null) connectionstatus =3D "true";
+    boolean isReachable =3D connectionstatus.trim().equalsIgnoreCase("true=
");
+    if (chatstatus =3D=3D null) {
+        chatstatus =3D "false";
+    }
 =

-       //String chatstatus=3D(String) session.getAttribute("chatstatus");
-    String connectionstatus=3D(String)session.getAttribute("chatserverconn=
ection");
-    if(connectionstatus =3D=3D null) connectionstatus=3D"true";
-    boolean isReachable=3D  connectionstatus.trim().equalsIgnoreCase("true=
");
-    if(chatstatus=3D=3Dnull) chatstatus=3D"false";
-
-       String ajaxpath1 =3D path + "/ajaxaction/Chat";//url of ajax call
+    String ajaxpath1 =3D path + "/ajaxaction/Chat";//url of ajax call
     //messaging window
     String chaturl =3D path + "/jsp/jahia/chat/chat.jsp";
     String usericon =3D path + "/jsp/jahia/engines/images/businessman0.gif=
";
     String usericonon =3D path + "/jsp/jahia/engines/images/businessman.gi=
f";
     String usermsgicon =3D path + "/jsp/jahia/engines/images/businessman1.=
gif";//the jumping icon
 =

-        // inactive chat GUI
-    if(!isReachable){
+
 %>
- <table border=3D"0" cellspacing=3D"0" cellpadding=3D"0">
-    <tr valign=3D"top"><td><img src=3D"<content:serverHttpPath />/jsp/jahi=
a/engines/images/pix.gif" width=3D"1" height=3D"12"/></td>
+
+<script language=3D"javascript">
+    function callStatus() {
+    <%
+       if(displayChat){
+    %>
+        //start the IM notifier
+
+        notifywatch();
+
+        //start the IM user list
+        notifyUserList();
+
+        //start the IM notifier
+        if (chatOnline =3D=3D "true") {
+            notifier.currentlyExecuting =3D false;
+            listUpdater.currentlyExecuting =3D false;
+        } else {
+            notifier.currentlyExecuting =3D true;
+            listUpdater.currentlyExecuting =3D true;
+        }
+
+
+    <%if (isReachable) {%>
+        if (chatOnline =3D=3D "true") {
+
+            $('chatswitch').style.color =3D "#33AA33";
+            $('usericon').src =3D "<%=3Dusericonon%>";
+            notifier.currentlyExecuting =3D false;
+
+        } else {
+            $('usericon').src =3D "<%=3Dusericon%>"
+            $('chatswitch').style.color =3D "#555555";
+            notifier.currentlyExecuting =3D true;
+            listUpdater.currentlyExecuting =3D true;
+        }
+    <%}%>
+    <%}%>
+    }
+</script>
+
+<%if (!isReachable) {%>
+<table border=3D"0" cellspacing=3D"0" cellpadding=3D"0">
+    <tr valign=3D"top">
+        <td><img src=3D"<content:serverHttpPath />/jsp/jahia/engines/image=
s/pix.gif" width=3D"1" height=3D"12"/></td>
         <td><img src=3D"<content:serverHttpPath />/jsp/jahia/engines/image=
s/fondp1.gif" width=3D"6" height=3D"12"/></td>
         <td bgcolor=3D"#EEEEEE">
             <a href=3D"" id=3D"chatswitch" style=3D"color:#555555" title=
=3D"server unreachable">Chat&nbsp;</a>
 =

-                </td>
+        </td>
         <td rowspan=3D"2">
-        <img src=3D"<content:serverHttpPath />/jsp/jahia/engines/images/pi=
x.gif" width=3D"4" height=3D"12"/></td>
-        <td rowspan=3D"2"><img id=3D"usericon" src=3D"<%=3Dusericon%>" wid=
th=3D"16" height=3D"16" border=3D"0" align=3D"top" ><img src=3D"<content:se=
rverHttpPath />/jsp/jahia/chat/delete.gif" width=3D"16" height=3D"16" borde=
r=3D"0" align=3D"top" alt=3D"server unreachable" >
-        </td></tr>
-        <tr>
-        <td colspan=3D"3"><img src=3D"<content:serverHttpPath />/jsp/jahia=
/engines/images/pix.gif" width=3D"1" height=3D"8"/></td>
-        </tr>
+            <img src=3D"<content:serverHttpPath />/jsp/jahia/engines/image=
s/pix.gif" width=3D"4" height=3D"12"/></td>
+        <td rowspan=3D"2"><img id=3D"usericon" src=3D"<%=3Dusericon%>" wid=
th=3D"16" height=3D"16" border=3D"0" align=3D"top"><img
+                src=3D"<content:serverHttpPath />/jsp/jahia/chat/delete.gi=
f" width=3D"16" height=3D"16" border=3D"0" align=3D"top"
+                alt=3D"server unreachable">
+        </td>
+    </tr>
+    <tr>
+        <td colspan=3D"3"><img src=3D"<content:serverHttpPath />/jsp/jahia=
/engines/images/pix.gif" width=3D"1" height=3D"8"/>
+        </td>
+    </tr>
 </table>
 <%
-    } else {
-        // standard chat GUI
+} else {
+    // standard chat GUI
 %>
 =

 <script language=3D"javascript">
 =

-// call to the current status
-callStatus();
+// functions ajax  called by an body's onload event
+//callStatus();
 =

 //default values
 =

-var chaturl =3D "<%=3Dchaturl%>";//url of the jsp page to display conversa=
tion
-var freqCall =3D <%=3DchatAction.frequencyRequest%>;//polling frequency (d=
efault 5)
-var displayListTime =3D 16000;// time of display list
-
-var chatOnline =3D "<%=3Dchatstatus%>";//default state of the chat
-var currentUserKey =3D "<%=3Duser.getUserKey()%>";//our userkey
+var chaturl =3D "<%=3Dchaturl%>";
+//url of the jsp page to display conversation
+var freqCall =3D <%=3DchatAction.frequencyRequest%>;
+//polling frequency (default 5)
+var displayListTime =3D 16000;
+// time of display list
+
+var chatOnline =3D "<%=3Dchatstatus%>";
+//default state of the chat
+var currentUserKey =3D "<%=3Duser.getUserKey()%>";
+//our userkey
 var thetimeout;
 var theLDAP =3D "<%=3DJahiaLDAPUser.USERKEY_LDAP_PREFIX%>";
 =

 //  notifiers/pollers
-var notifier;// IM presence poller
-var listUpdater; // IM userlist updater
+var notifier;
+// IM presence poller
+var listUpdater;
+// IM userlist updater
 =

 var theChatWindow;
 var theparent;
 var ConnectionOK =3D true;
-var listDisplayed=3Dfalse;
+var listDisplayed =3D false;
 =

 //default state
 var ConnectionChecked =3D false;
@@ -137,9 +192,10 @@
 =

     if (!listDisplayed) {
         Effect.Appear('selectchat');
-        listDisplayed=3Dtrue;
-        listUpdater.currentlyExecuting=3Dfalse;//running the listUpdater
-        if(thetimeout && thetimeout!=3Dnull) {
+        listDisplayed =3D true;
+        listUpdater.currentlyExecuting =3D false;
+        //running the listUpdater
+        if (thetimeout && thetimeout !=3D null) {
             //alert("clearing");
             clearTimeout(thetimeout);
         }
@@ -147,169 +203,242 @@
 =

     }
 =

+    p =3D null;
+    h =3D null;
+
 }
 =

 function hideUsersList() {
-    Effect.Fade('selectchat');//hide the list
-    listDisplayed=3Dfalse;// flag
-    if(thetimeout && thetimeout!=3Dnull) clearTimeout(thetimeout);
-    listUpdater.currentlyExecuting=3Dtrue;//stopping the list updater
+    Effect.Fade('selectchat');
+    //hide the list
+    listDisplayed =3D false;
+    // flag
+    if (thetimeout && thetimeout !=3D null) {
+        clearTimeout(thetimeout);
+    }
+    listUpdater.currentlyExecuting =3D true;
+    //stopping the list updater
 }
 =

 =

 // open discussion popup chatdisplay
 function openChat(key, width, height, toffline) {
-    if (!ConnectionOK) return;
+    if (!ConnectionOK) {
+        return;
+    }
     var params =3D "width=3D" + width + ",height=3D" + height + ",resizabl=
e=3Dyes,scrollbars=3Dyes,status=3Dno";
     var url =3D chaturl + "?userkey=3D" + key;
-    if(toffline!=3D'') url=3Durl+"&offsince=3D"+toffline;
+    if (toffline !=3D '') {
+        url =3D url + "&offsince=3D" + toffline;
+    }
     var myname =3D key.substring(0, key.indexOf(":"));
     //alert(params+ " "+url+" "+name);
-    if (!theChatWindow || theChatWindow.closed) theChatWindow =3D window.o=
pen(url, "", params);
-    else theChatWindow.focus();
-    //win.name =3D myname;
+    if (!theChatWindow || theChatWindow.closed) {
+        theChatWindow =3D window.open(url, "", params);
+    }
+    else {
+        theChatWindow.focus();
+    }
+    params =3D null;
+    url =3D null;
 }
 =

 // just simple error alert
 function displayError(request) {
 =

-    if (!ConnectionChecked)alert("AJAX error code http:" + request.status =
+ " " + request.statusText);
+    if (!ConnectionChecked) {
+        alert("AJAX error code http:" + request.status + " " + request.sta=
tusText);
+    }
     //document.write(request.responseText);
     ConnectionOK =3D false;
     ConnectionChecked =3D true;
     chatOnline =3D "false";
-    notifier.currentlyExecuting =3D true;//stopping
-    listUpdater.currentlyExecuting=3Dtrue;
+    notifier.currentlyExecuting =3D true;
+    //stopping
+    listUpdater.currentlyExecuting =3D true;
     $('usericon').src =3D "<%=3Dusericon%>"
-       $('chatswitch').style.color =3D "#555555";
+    $('chatswitch').style.color =3D "#555555";
 =

 }
 =

 =

 // AJAX Functions CALLS #################################
-// get chatstatus of user
-function callStatus(){
-       if(!ConnectionOK) return;
-    var url =3D '<%=3Dajaxpath1%>';
-    var pars =3D 'op=3Dstatus';
-    var callonline =3D new Ajax.Request(url, {parameters: pars, onSuccess:=
 getStatus, onFailure: displayError});
-}
-
 =

 =

 // starting the chat
 function online() {
-    if(!ConnectionOK) return;
+    if (!ConnectionOK) {
+        return;
+    }
     var url =3D '<%=3Dajaxpath1%>';
     var pars =3D 'op=3Donline';
     var callonline =3D new Ajax.Request(url, {parameters: pars, onSuccess:=
 getUsers, onFailure: displayError});
+
+    // un-reference
+    url =3D null;
+    pars =3D null;
+    callonline =3D null;
 }
 =

 //stopping the chat
 function offline() {
-    if(!ConnectionOK) return;
+    if (!ConnectionOK) {
+        return;
+    }
     var url =3D '<%=3Dajaxpath1%>';
     var pars =3D 'op=3Doffline';
     var callonline =3D new Ajax.Request(url, {parameters: pars, onFailure:=
 displayError});
-    // ignoring the response
+
+    // un-reference
+    url =3D null;
+    pars =3D null;
+    callonline =3D null;
 }
 =

 // to call the list of users
 function getUsers() {
-   if(!ConnectionOK) return;
-   //alert("calling userlist");
-    var url =3D '<%=3Dajaxpath1%>';
-    var call =3D new Ajax.Request(url, {onComplete: showUserList, onFailur=
e: displayError});
+    if (chatOnline =3D=3D "true") {
+        if (!ConnectionOK) {
+            return;
+        }
+        //alert("calling userlist");
+        var url =3D '<%=3Dajaxpath1%>';
+        var call =3D new Ajax.Request(url, {onComplete: showUserList, onFa=
ilure: displayError});
+
+        // un-reference
+        url =3D null;
+        call =3D null;
+    }
 }
 =

-function notifywatch(){
-       //the ajax periodical object
-    if(!ConnectionOK) return;
+function notifywatch() {
+    //the ajax periodical object
+    if (!ConnectionOK) {
+        return;
+    }
     notifier =3D new PeriodicalExecuter(getMessagesCount, freqCall);
+
 }
-        // to poll the count of waiting messages
-function getMessagesCount(){
-     //alert('getMessagesCount');
-    if(!ConnectionOK) return;
-     var url =3D '<%=3Dajaxpath1%>';
+// to poll the count of waiting messages
+function getMessagesCount() {
+    //alert('getMessagesCount');
+    if (!ConnectionOK) {
+        return;
+    }
+    var url =3D '<%=3Dajaxpath1%>';
     var pars =3D 'op=3Dwaiting';
     var call =3D new Ajax.Request(url, {parameters: pars, onComplete: noti=
fy, onFailure: displayError});
+
+    // un-reference
+    url =3D null;
+    pars =3D null;
+    call =3D null;
 }
 =

 function notifyUserList() {
-    if (!ConnectionOK) return;
+    if (!ConnectionOK) {
+        return;
+    }
     //alert("starting userlist");
     listUpdater =3D new PeriodicalExecuter(getUsers, 4);
+
 }
 =

 =

 // AJAX Functions Process RESPONSES #################################
 // to display status
-function getStatus(request){
-       var xdoc =3D request.responseXML;
-       value1 =3D xdoc.getElementsByTagName('status')[0].firstChild.data;
-       //alert("call getstatus=3Dresponse:"+value1);
-       chatOnline=3Dvalue1;
-       if(value1=3D=3D"true"){
+function getStatus(request) {
+    var xdoc =3D request.responseXML;
+    var status =3D xdoc.getElementsByTagName('status')[0].firstChild.data;
+    //alert("call getstatus=3Dresponse:"+value1);
+    chatOnline =3D status;
+    if (status =3D=3D "true") {
         $('chatswitch').style.color =3D "#33AA33";
-        $('usericon').src=3D"<%=3Dusericonon%>";
-        notifier.currentlyExecuting=3Dfalse;
+        $('usericon').src =3D "<%=3Dusericonon%>";
+        notifier.currentlyExecuting =3D false;
     } else {
-       $('usericon').src=3D"<%=3Dusericon%>"
+        $('usericon').src =3D "<%=3Dusericon%>"
         $('chatswitch').style.color =3D "#555555";
-        notifier.currentlyExecuting=3Dtrue;
+        notifier.currentlyExecuting =3D true;
     }
+
+    // un-reference
+    xdoc =3D null;
+    status =3D null;
 }
 =

-function notify(request){
-     var xdoc =3D request.responseXML;
-    value1 =3D xdoc.getElementsByTagName('waitingcount')[0].firstChild.dat=
a;
+function notify(request) {
+    var xdoc =3D request.responseXML;
+    var waitingcount =3D xdoc.getElementsByTagName('waitingcount')[0].firs=
tChild.data;
     //alert("mcount"+value1);
-    if(value1>0){
-      $('usericon').src=3D"<%=3Dusermsgicon%>";
+    if (waitingcount > 0) {
+        $('usericon').src =3D "<%=3Dusermsgicon%>";
     } else {
-       $('usericon').src=3D"<%=3Dusericonon%>";
+        $('usericon').src =3D "<%=3Dusericonon%>";
     }
+
+    // un-reference
+    xdoc =3D null;
+    waitingcount =3D null;
 }
 // to show the userlist
 function showUserList(request) {
     var xdoc =3D request.responseXML;
-
     var users =3D $A(xdoc.getElementsByTagName('user'));
     var stringusers =3D "";
     var endlink =3D "</a><br/>";
-    var mcount=3D0;
+    var mcount =3D 0;
     // iterator in users and alert box for each users
 =

     users.each(function(node) {
         //alert(node.firstChild.data);
-        var username =3D node.firstChild.data;//the userkey
-        var ucount=3D0;
-        var offline_since=3D"";
+        var username =3D node.firstChild.data;
+        //the userkey
+        var ucount =3D 0;
+        var offline_since =3D "";
         //alert(node.childNodes.length);
 =

-        if(node.childNodes.length>1) ucount=3Dnode.childNodes[1].firstChil=
d.data;
-               if(node.childNodes.length>2) 
offline_since=3Dnode.childNodes[2].firstChi=
ld.data;
+        if (node.childNodes.length > 1) {
+            ucount =3D node.childNodes[1].firstChild.data;
+        }
+        if (node.childNodes.length > 2) {
+            offline_since =3D node.childNodes[2].firstChild.data;
+        }
 =

-        mcount=3Dmcount+ucount;
+        mcount =3D mcount + ucount;
         if (currentUserKey !=3D username) {
             var userkey =3D "'" + username + "'";
-            if(username.indexOf(":") !=3D -1) username =3D username.substr=
ing(0, username.indexOf(":"));
-            if(username.indexOf("<%=3DJahiaLDAPUser.USERKEY_LDAP_PREFIX%>"=
) !=3D -1) {
+            if (username.indexOf(":") !=3D -1) username =3D username.subst=
ring(0, username.indexOf(":"));
+            if (username.indexOf("<%=3DJahiaLDAPUser.USERKEY_LDAP_PREFIX%>=
") !=3D -1) {
                 //ldap case
-                var ukey=3Dusername.split("<%=3DJahiaLDAPUser.USERKEY_LDAP=
_PREFIX%>");
-                username=3Dukey[0]+ukey[1];
+                var ukey =3D username.split("<%=3DJahiaLDAPUser.USERKEY_LD=
AP_PREFIX%>");
+                username =3D ukey[0] + ukey[1];
 =

             }
-                       var titlelink=3D"<content:engineResourceBundle 
resourceName=3D"org.jahi=
a.chat.window.message.prefix"/>&nbsp;" + username;
-if(offline_since!=3D"") titlelink=3Dusername+"&nbsp;<content:engineResourc=
eBundle resourceName=3D"org.jahia.chat.window.message.offline"/>&nbsp;"+off=
line_since;
-                       var golink=3D"javascript:openChat(" + userkey + 
",550,680,'');";
-if(offline_since!=3D"") golink=3D"javascript:openChat(" + userkey + ",550,=
680,'"+offline_since+"');";
+            var titlelink =3D "<content:engineResourceBundle resourceName=
=3D"org.jahia.chat.window.message.prefix"/>&nbsp;" + username;
+            if (offline_since !=3D ""){
+                titlelink =3D username + "&nbsp;<content:engineResourceBun=
dle resourceName=3D"org.jahia.chat.window.message.offline"/>&nbsp;" + offli=
ne_since;
+            }
+            var golink =3D "javascript:openChat(" + userkey + ",550,680,''=
);";
+            if (offline_since !=3D ""){
+                golink =3D "javascript:openChat(" + userkey + ",550,680,'"=
 + offline_since + "');";
+            }
 =

-            stringusers =3D stringusers + "<a href=3D\""+golink+"\" title=
=3D\"" +titlelink+ "\"><img src=3D\"<%=3Dusericonon%>\" width=3D\"16\" heig=
ht=3D\"16\" border=3D\"0\"/>" +"&nbsp;"+username+"&nbsp;("+ucount+")" + off=
line_since + endlink+"<br/>";
+            stringusers =3D stringusers + "<a href=3D\"" + golink + "\" ti=
tle=3D\"" + titlelink + "\"><img src=3D\"<%=3Dusericonon%>\" width=3D\"16\"=
 height=3D\"16\" border=3D\"0\"/>" + "&nbsp;" + username + "&nbsp;(" + ucou=
nt + ")" + offline_since + endlink + "<br/>";
             //alert(stringusers);
+
+            // un-reference
+            userkey =3D null;
+            titlelink =3D null;
         }
-    });//end function node
+        // un-reference
+        username =3D null;
+        ucount =3D null;
+        offline_since =3D null;
+        node =3D null;
+        delete node;
+    });
+    //end function node
 =

     if (stringusers !=3D '' && chatOnline =3D=3D "true") {
 =

@@ -324,87 +453,74 @@
     } else {
         hideUsersList();
     }
+
+    // un-reference
+    xdoc =3D null;
+    users =3D null;
+    stringusers =3D null;
+    endlink =3D null;
+    mcount =3D null;
 }
 =

- // a switch function (on/off)
+// a switch function (on/off)
 function chatswitch() {
-    if(ConnectionOK) {
-    if (chatOnline =3D=3D"true") {
-        chatOnline =3D "false";
-        offline();
-        notifier.currentlyExecuting=3Dtrue;
-        //alert("the chat is off");
-       hideUsersList();
-               $('usericon').src=3D"<%=3Dusericon%>"
-        $('chatswitch').style.color =3D "#555555";
+    if (ConnectionOK) {
+        if (chatOnline =3D=3D "true") {
+            chatOnline =3D "false";
+            offline();
+            notifier.currentlyExecuting =3D true;
+            //alert("the chat is off");
+            hideUsersList();
+            $('usericon').src =3D "<%=3Dusericon%>"
+            $('chatswitch').style.color =3D "#555555";
 =

 =

-    } else {
-        chatOnline =3D "true";
-        online();
-        //alert("the chat is on");
-        $('chatswitch').style.color =3D "#33AA33";
-        $('usericon').src=3D"<%=3Dusericonon%>";
-        notifier.currentlyExecuting=3Dfalse;
+        } else {
+            chatOnline =3D "true";
+            online();
+            //alert("the chat is on");
+            $('chatswitch').style.color =3D "#33AA33";
+            $('usericon').src =3D "<%=3Dusericonon%>";
+            notifier.currentlyExecuting =3D false;
 =

 =

-    }
         }
+    }
 }
- <%
-    if(displayChat){
- %>
-//start the IM notifier
-notifywatch();
-
-//start the IM user list
-notifyUserList();
-listUpdater.currentlyExecuting=3Dtrue;//stopping the list updater
-<%
-}
-%>
-
 </script>
 =

 <%
-    if(displayChat){
+    if (displayChat) {
 %>
 =

 <table border=3D"0" cellspacing=3D"0" cellpadding=3D"0">
-    <tr id=3D"chatBoxFirstRow" valign=3D"top"><td><img src=3D"<content:ser=
verHttpPath />/jsp/jahia/engines/images/pix.gif" width=3D"1" height=3D"12"/=
></td><td><img
-        src=3D"<content:serverHttpPath />/jsp/jahia/engines/images/fondp1.=
gif" width=3D"6" height=3D"12"/></td>
+    <tr id=3D"chatBoxFirstRow" valign=3D"top">
+        <td><img src=3D"<content:serverHttpPath />/jsp/jahia/engines/image=
s/pix.gif" width=3D"1" height=3D"12"/></td>
+        <td><img
+                src=3D"<content:serverHttpPath />/jsp/jahia/engines/images=
/fondp1.gif" width=3D"6" height=3D"12"/></td>
         <td bgcolor=3D"#EEEEEE">
-            <a href=3D"javascript:chatswitch()" id=3D"chatswitch" title=3D=
"<content:engineResourceBundle resourceName=3D"org.jahia.chat.status"/>">Ch=
at&nbsp;</a>
+            <a href=3D"javascript:chatswitch()" id=3D"chatswitch"
+               title=3D'<content:engineResourceBundle resourceName=3D"org.=
jahia.chat.status"/>'>Chat&nbsp;</a>
 =

-                </td><td rowspan=3D"2">
-        <img src=3D"<content:serverHttpPath />/jsp/jahia/engines/images/pi=
x.gif" width=3D"4" height=3D"12"/></td><td rowspan=3D"2"><img id=3D"userico=
n" src=3D"<%=3Dusericon%>" width=3D"16" height=3D"16" border=3D"0" align=3D=
"top" onMouseOver=3D"getUsers()"><div id=3D"list" style=3D"position:absolut=
e; top:50px; left: 210px; width:150px;"><div id=3D"selectchat" class=3D"sel=
ectchat" style=3D"display: none; background-color: #eee; width:100px; borde=
r-width: 1px; border-style: solid; border-color: white;"></div>
-</div>
-        </td></tr>
-        <tr>
-        <td colspan=3D"3"><img src=3D"<content:serverHttpPath />/jsp/jahia=
/engines/images/pix.gif" width=3D"1" height=3D"8"/></td>
-        </tr>
+        </td>
+        <td rowspan=3D"2">
+            <img src=3D"<content:serverHttpPath />/jsp/jahia/engines/image=
s/pix.gif" width=3D"4" height=3D"12"/></td>
+        <td rowspan=3D"2"><img id=3D"usericon" src=3D"<%=3Dusericon%>" wid=
th=3D"16" height=3D"16" border=3D"0" align=3D"top"
+                             onMouseOver=3D"getUsers()">
+
+            <div id=3D"list" style=3D"position:absolute; top:50px; left: 2=
10px; width:150px;">
+                <div id=3D"selectchat" class=3D"selectchat"
+                     style=3D"display: none; background-color: #eee; width=
:100px; border-width: 1px; border-style: solid; border-color: white;"></div>
+            </div>
+        </td>
+    </tr>
+    <tr>
+        <td colspan=3D"3"><img src=3D"<content:serverHttpPath />/jsp/jahia=
/engines/images/pix.gif" width=3D"1" height=3D"8"/>
+        </td>
+    </tr>
 </table>
-<script language=3D"javascript">
-
-//chat state onload
-//alert("chatonline:"+chatOnline);
-if(chatOnline=3D=3D"true"){
-
-$('chatswitch').style.color =3D "#33AA33";
-$('usericon').src=3D"<%=3Dusericonon%>";
-notifier.currentlyExecuting=3Dfalse;
-
-} else {
-
-
-$('usericon').src=3D"<%=3Dusericon%>"
-$('chatswitch').style.color =3D "#555555";
-notifier.currentlyExecuting=3Dtrue;
-listUpdater.currentlyExecuting=3Dtrue;
-}
-
-</script>
 <%
         }
     }
-%>
\ No newline at end of file
+%>
+

_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to