mirror of
				https://github.com/pierre42100/ComunicWeb
				synced 2025-11-04 12:14:12 +00:00 
			
		
		
		
	Network errors can be handled by the app
This commit is contained in:
		
							
								
								
									
										14
									
								
								assets/css/common/network/networkError.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								assets/css/common/network/networkError.css
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
/**
 | 
			
		||||
 * Network error stylesheet
 | 
			
		||||
 *
 | 
			
		||||
 * @author Pierre HUBERT
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#networkErrorMessage {
 | 
			
		||||
	position: fixed;
 | 
			
		||||
	bottom: 2px;
 | 
			
		||||
	left: 1px;
 | 
			
		||||
	width: 300px;
 | 
			
		||||
	max-width: 100%;
 | 
			
		||||
	text-align: justify;
 | 
			
		||||
}
 | 
			
		||||
@@ -51,6 +51,17 @@ ComunicWeb.common.api.makeAPIrequest = function(apiURI, params, requireLoginToke
 | 
			
		||||
    apiXHR.onreadystatechange = function(){
 | 
			
		||||
        //We continue only if request is terminated
 | 
			
		||||
        if(apiXHR.readyState == 4){
 | 
			
		||||
 | 
			
		||||
            //Check if response code is 0
 | 
			
		||||
            if(apiXHR.status == 0){
 | 
			
		||||
                //An error occured
 | 
			
		||||
                ComunicWeb.common.network.setStatus(false);
 | 
			
		||||
            }
 | 
			
		||||
            else{
 | 
			
		||||
                //It is a success
 | 
			
		||||
                ComunicWeb.common.network.setStatus(true);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            //Prepare result
 | 
			
		||||
            var result = JSON.parse(apiXHR.responseText);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -202,6 +202,11 @@ var ComunicWeb = {
 | 
			
		||||
			 * Make a get request
 | 
			
		||||
			 */
 | 
			
		||||
			getRequest: function(url, cache, GETnextAction){},
 | 
			
		||||
 | 
			
		||||
			/**
 | 
			
		||||
			 * Update the status of the network
 | 
			
		||||
			 */
 | 
			
		||||
			setStatus: function(success){},
 | 
			
		||||
		},
 | 
			
		||||
 | 
			
		||||
		/**
 | 
			
		||||
 
 | 
			
		||||
@@ -63,4 +63,44 @@ ComunicWeb.common.network = {
 | 
			
		||||
		//Perform request
 | 
			
		||||
		xhrRequest.send(null);
 | 
			
		||||
	},
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Update the status of the network
 | 
			
		||||
	 * 
 | 
			
		||||
	 * @param {Boolean} success True for a successful request, false else
 | 
			
		||||
	 * @return {Boolean} True for a success
 | 
			
		||||
	 */
 | 
			
		||||
	setStatus: function(success){
 | 
			
		||||
 | 
			
		||||
		//If the request is the success, hide error message
 | 
			
		||||
		if(success){
 | 
			
		||||
			//Check if an error message was present on the screen
 | 
			
		||||
			if(byId("networkErrorMessage")){
 | 
			
		||||
				//Hide it
 | 
			
		||||
				byId("networkErrorMessage").style.display = "none";
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		
 | 
			
		||||
		//If we encountered a network error, display an error message
 | 
			
		||||
		if(!success){
 | 
			
		||||
			//Log state
 | 
			
		||||
			ComunicWeb.debug.logMessage("NETWORK ERROR : It's seems a network request has just echoed... Please check the network !");
 | 
			
		||||
 | 
			
		||||
			//Check if error message exists or not
 | 
			
		||||
			if(!byId("networkErrorMessage")){
 | 
			
		||||
				//Create error message contener
 | 
			
		||||
				var networkErrorMessage = createElem("div", document.body);
 | 
			
		||||
				networkErrorMessage.id = "networkErrorMessage";
 | 
			
		||||
 | 
			
		||||
				//Create a callout element within it
 | 
			
		||||
				var errorName = "<i class='fa fa-warning'></i> "+"Network error";
 | 
			
		||||
				var errorMessage = "It seems that there is a network error, and Comunic can't access to the Internet anymore... Please check your internet connexion...";
 | 
			
		||||
				var errorCallout = ComunicWeb.common.messages.createCalloutElem(errorName, errorMessage, "danger");
 | 
			
		||||
				networkErrorMessage.appendChild(errorCallout)
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			//Make sure the error message is visible on the screen
 | 
			
		||||
			byId("networkErrorMessage").style.display = "block";
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
};
 | 
			
		||||
@@ -23,6 +23,7 @@ $config['CSSfiles'] = array(
 | 
			
		||||
    //App stylesheets
 | 
			
		||||
    "%PATH_ASSETS%css/common/global.css",
 | 
			
		||||
    "%PATH_ASSETS%css/common/page/waitSplashScreen.css",
 | 
			
		||||
    "%PATH_ASSETS%css/common/network/networkError.css",
 | 
			
		||||
 | 
			
		||||
    //Components stylesheets
 | 
			
		||||
    "%PATH_ASSETS%css/components/menuBar.css",
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user