ginebra2/chrome/bedrockchrome/networkstatus.snippet/networkstatus.js
changeset 0 1450b09d0cfd
child 3 0954f5dd2cd0
child 5 0f2326c2a325
equal deleted inserted replaced
-1:000000000000 0:1450b09d0cfd
       
     1 /*!
       
     2   \file networkstatus.js This module contains the NetworkStatus class.
       
     3 */
       
     4 
       
     5 function NetworkStatus()
       
     6 {   
       
     7 	   // attach internal funcs
       
     8     this.setup = setupPage;
       
     9 
       
    10     // do setup
       
    11     this.setup();
       
    12 
       
    13     function onChromeComplete() 
       
    14     {
       
    15         window.pageController.pageLoadFinished.connect(
       
    16         function(ok) {
       
    17         	processLoadStatus(ok); 
       
    18         	var networkTimeoutId; 
       
    19 	        if (!ok && !window.pageController.loadCanceled ) {         	
       
    20         		showNetworkStatus();   
       
    21         		networkTimeoutId = setTimeout ( 'hideNetworkStatus()', 2000 ); 
       
    22  	        }  	        
       
    23         }                
       
    24         );
       
    25     } //End of onChromeComplete handler
       
    26            
       
    27    window.chrome.chromeComplete.connect(onChromeComplete);    
       
    28 }
       
    29 
       
    30 // "Private" methods
       
    31 function processLoadStatus(ok) {
       
    32 	  
       
    33     var htmlText = "Page load ok"; 
       
    34     if (!ok) 
       
    35         htmlText = window.localeDelegate.translateText("page_load_failed"); 
       
    36         var ele = document.getElementById("NetworkStatusTextId");
       
    37 	if (ele) {
       
    38             ele.innerHTML = htmlText; 
       
    39 	}  
       
    40 	else {
       
    41 	  	document.write(htmlText); 
       
    42 	}
       
    43 	  
       
    44 }
       
    45 
       
    46 // "Private" methods
       
    47 function setupPage() {
       
    48 //	  var image = 'networkstatus.snippet/icons/network_status_icon.png';
       
    49 	    
       
    50     var html =
       
    51         '<div class="networkStatusBox">' +
       
    52               '<table><tr>' +
       
    53 //                '<td class="networkStatusIcon">' +
       
    54 //                    '<img src="' + image + '" alt="">' +
       
    55 //                '</td>' +
       
    56                 '<td class="networkStatusText" id="NetworkStatusTextId">' +
       
    57                     'Replace with localized message text' +
       
    58                 '</td>' +
       
    59             '</tr></table>' +
       
    60         '</div>';
       
    61   document.write(html);
       
    62 }
       
    63 
       
    64 // "Private" method
       
    65 function showNetworkStatus() {
       
    66     window.snippets.NetworkStatusChromeId.setPosition(10,80); 
       
    67  	  window.snippets.NetworkStatusChromeId.show(true);
       
    68  	  window.snippets.NetworkStatusChromeId.repaint();
       
    69 } 	            
       
    70 
       
    71 // "private" method 
       
    72 function hideNetworkStatus() {
       
    73     window.snippets.NetworkStatusChromeId.setPosition(10,80); 
       
    74  	  window.snippets.NetworkStatusChromeId.hide();
       
    75  	  window.snippets.NetworkStatusChromeId.repaint(); 	        	
       
    76 }