← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 3640: local vn - Used new jQuery upload lib in common instead of using ajaxfileupload.js

 

------------------------------------------------------------
revno: 3640
committer: Hieu <hieu.hispvietnam@xxxxxxxxx>
branch nick: dhis2
timestamp: Tue 2011-05-17 15:52:25 +0700
message:
  local vn - Used new jQuery upload lib in common instead of using ajaxfileupload.js
removed:
  local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/ajaxfileupload.js
modified:
  local/vn/dhis-service-excel-reporting/src/main/java/org/hisp/dhis/reportexcel/ExcelContentTypeMap.java
  local/vn/dhis-web-excel-reporting/src/main/resources/struts.xml
  local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/importDataParams.vm
  local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/imports.js


--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk

Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'local/vn/dhis-service-excel-reporting/src/main/java/org/hisp/dhis/reportexcel/ExcelContentTypeMap.java'
--- local/vn/dhis-service-excel-reporting/src/main/java/org/hisp/dhis/reportexcel/ExcelContentTypeMap.java	2011-03-25 09:11:30 +0000
+++ local/vn/dhis-service-excel-reporting/src/main/java/org/hisp/dhis/reportexcel/ExcelContentTypeMap.java	2011-05-17 08:52:25 +0000
@@ -51,6 +51,7 @@
 
         xlsContentTypes.add( APPLICATION + "xls" );
         xlsContentTypes.add( APPLICATION + "vnd.ms-excel" );
+        xlsContentTypes.add( APPLICATION + "octet-stream" );
 
         contentTypes.put( "xls", xlsContentTypes );
 

=== modified file 'local/vn/dhis-web-excel-reporting/src/main/resources/struts.xml'
--- local/vn/dhis-web-excel-reporting/src/main/resources/struts.xml	2011-05-16 09:05:22 +0000
+++ local/vn/dhis-web-excel-reporting/src/main/resources/struts.xml	2011-05-17 08:52:25 +0000
@@ -1041,8 +1041,7 @@
 			<param name="menuTreeHeight">220</param>
 			<param name="javascripts">../dhis-web-commons/ouwt/ouwt.js,
 				javascript/export.js,
-				javascript/imports.js,
-				javascript/ajaxfileupload.js</param>
+				javascript/imports.js</param>
 			<param name="stylesheets">style/style.css</param>
 		</action>
 

=== modified file 'local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/importDataParams.vm'
--- local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/importDataParams.vm	2011-05-11 08:13:37 +0000
+++ local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/importDataParams.vm	2011-05-17 08:52:25 +0000
@@ -13,7 +13,7 @@
 			<td width="18%" style=" width:25% ">$i18n.getString( 'select_excel_file' )</td>
 			<td width="82%">
 				<input type="file" id="upload" name="upload" onChange="enable('uploadButton');">
-				<input name="uploadButton" id="uploadButton" type="button" value="$i18n.getString( 'upload_file' )" onclick="validateUploadExcelImportByXML();" disabled />    
+				<input name="uploadButton" id="uploadButton" type="button" value="$i18n.getString( 'upload_file' )" onclick="validateUploadExcelImportByXML();" disabled />
 			</td>   
 		</tr>
 	</form>
@@ -34,9 +34,9 @@
 	</tr>  
 </table>
 	 
-<hr>
+<hr/>
 
-<br><br>
+<br/><br/>
 	<div id="showValue" style="display:none; width:100%" >		
 		<table>
 			<tr style="vertical-align:bottom;">
@@ -63,10 +63,11 @@
 		</tbody>
 		</table>
 	</div>
-<script language="javascript">	
 	
-	#if ( $!fileExcel && $!organisationUnit )
-		getPeriodsByExcelItemGroup( $("#excelItemGroupId").val() );
-	#end
-</script>
+	<script language="javascript">
+		#if ( $!fileExcel && $!organisationUnit )
+			getPeriodsByExcelItemGroup( $("#excelItemGroupId").val() );
+		#end
+	</script>
+
 </body>
\ No newline at end of file

=== removed file 'local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/ajaxfileupload.js'
--- local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/ajaxfileupload.js	2010-02-25 09:05:59 +0000
+++ local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/ajaxfileupload.js	1970-01-01 00:00:00 +0000
@@ -1,201 +0,0 @@
-
-jQuery.extend({
-	
-
-    createUploadIframe: function(id, uri)
-	{
-			//create frame
-            var frameId = 'jUploadFrame' + id;
-            
-            if(window.ActiveXObject) {
-                var io = document.createElement('<iframe id="' + frameId + '" name="' + frameId + '" />');
-                if(typeof uri== 'boolean'){
-                    io.src = 'javascript:false';
-                }
-                else if(typeof uri== 'string'){
-                    io.src = uri;
-                }
-            }
-            else {
-                var io = document.createElement('iframe');
-                io.id = frameId;
-                io.name = frameId;
-            }
-            io.style.position = 'absolute';
-            io.style.top = '-1000px';
-            io.style.left = '-1000px';
-
-            document.body.appendChild(io);
-
-            return io			
-    },
-    createUploadForm: function(id, fileElementId)
-	{
-		//create form	
-		var formId = 'jUploadForm' + id;
-		var fileId = 'jUploadFile' + id;
-		var form = $('<form  action="" method="POST" name="' + formId + '" id="' + formId + '" enctype="multipart/form-data"></form>');	
-		var oldElement = $('#' + fileElementId);
-		var newElement = $(oldElement).clone();
-		$(oldElement).attr('id', fileId);
-		$(oldElement).before(newElement);
-		$(oldElement).appendTo(form);
-		//set attributes
-		$(form).css('position', 'absolute');
-		$(form).css('top', '-1200px');
-		$(form).css('left', '-1200px');
-		$(form).appendTo('body');		
-		return form;
-    },
-
-    ajaxFileUpload: function(s) {
-        // TODO introduce global settings, allowing the client to modify them for all requests, not only timeout		
-        s = jQuery.extend({}, jQuery.ajaxSettings, s);
-        var id = new Date().getTime()        
-		var form = jQuery.createUploadForm(id, s.fileElementId);
-		var io = jQuery.createUploadIframe(id, s.secureuri);
-		var frameId = 'jUploadFrame' + id;
-		var formId = 'jUploadForm' + id;		
-        // Watch for a new set of requests
-        if ( s.global && ! jQuery.active++ )
-		{
-			jQuery.event.trigger( "ajaxStart" );
-		}            
-        var requestDone = false;
-        // Create the request object
-        var xml = {}   
-        if ( s.global )
-            jQuery.event.trigger("ajaxSend", [xml, s]);
-        // Wait for a response to come back
-        var uploadCallback = function(isTimeout)
-		{			
-			var io = document.getElementById(frameId);
-            try 
-			{				
-				if(io.contentWindow)
-				{
-					 xml.responseText = io.contentWindow.document.body?io.contentWindow.document.body.innerHTML:null;
-                	 xml.responseXML = io.contentWindow.document.XMLDocument?io.contentWindow.document.XMLDocument:io.contentWindow.document;
-					 
-				}else if(io.contentDocument)
-				{
-					 xml.responseText = io.contentDocument.document.body?io.contentDocument.document.body.innerHTML:null;
-                	xml.responseXML = io.contentDocument.document.XMLDocument?io.contentDocument.document.XMLDocument:io.contentDocument.document;
-				}						
-            }catch(e)
-			{
-				jQuery.handleError(s, xml, null, e);
-			}
-            if ( xml || isTimeout == "timeout") 
-			{				
-                requestDone = true;
-                var status;
-                try {
-                    status = isTimeout != "timeout" ? "success" : "error";
-                    // Make sure that the request was successful or notmodified
-                    if ( status != "error" )
-					{
-                        // process the data (runs the xml through httpData regardless of callback)
-                        var data = jQuery.uploadHttpData( xml, s.dataType );    
-                        // If a local callback was specified, fire it and pass it the data
-                        if ( s.success )
-                            s.success( data, status );
-    
-                        // Fire the global callback
-                        if( s.global )
-                            jQuery.event.trigger( "ajaxSuccess", [xml, s] );
-                    } else
-                        jQuery.handleError(s, xml, status);
-                } catch(e) 
-				{
-                    status = "error";
-                    jQuery.handleError(s, xml, status, e);
-                }
-
-                // The request was completed
-                if( s.global )
-                    jQuery.event.trigger( "ajaxComplete", [xml, s] );
-
-                // Handle the global AJAX counter
-                if ( s.global && ! --jQuery.active )
-                    jQuery.event.trigger( "ajaxStop" );
-
-                // Process result
-                if ( s.complete )
-                    s.complete(xml, status);
-
-                jQuery(io).unbind()
-
-                setTimeout(function()
-									{	try 
-										{
-											$(io).remove();
-											$(form).remove();	
-											
-										} catch(e) 
-										{
-											jQuery.handleError(s, xml, null, e);
-										}									
-
-									}, 100)
-
-                xml = null
-
-            }
-        }
-        // Timeout checker
-        if ( s.timeout > 0 ) 
-		{
-            setTimeout(function(){
-                // Check to see if the request is still happening
-                if( !requestDone ) uploadCallback( "timeout" );
-            }, s.timeout);
-        }
-        try 
-		{
-           // var io = $('#' + frameId);
-			var form = $('#' + formId);
-			$(form).attr('action', s.url);
-			$(form).attr('method', 'POST');
-			$(form).attr('target', frameId);
-            if(form.encoding)
-			{
-                form.encoding = 'multipart/form-data';				
-            }
-            else
-			{				
-                form.enctype = 'multipart/form-data';
-            }			
-            $(form).submit();
-
-        } catch(e) 
-		{			
-            jQuery.handleError(s, xml, null, e);
-        }
-        if(window.attachEvent){
-            document.getElementById(frameId).attachEvent('onload', uploadCallback);
-        }
-        else{
-            document.getElementById(frameId).addEventListener('load', uploadCallback, false);
-        } 		
-        return {abort: function () {}};	
-
-    },
-
-    uploadHttpData: function( r, type ) {
-        var data = !type;
-        data = type == "xml" || data ? r.responseXML : r.responseText;
-        // If the type is "script", eval it in global context
-        if ( type == "script" )
-            jQuery.globalEval( data );
-        // Get the JavaScript object, if JSON is used.
-        if ( type == "json" )
-            eval( "data = " + data );
-        // evaluate scripts within html
-        if ( type == "html" )
-            jQuery("<div>").html(data).evalScripts();
-			//alert($('param', data).each(function(){alert($(this).attr('value'));}));
-        return data;
-    }
-})
-

=== modified file 'local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/imports.js'
--- local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/imports.js	2011-05-11 08:13:37 +0000
+++ local/vn/dhis-web-excel-reporting/src/main/webapp/dhis-web-excel-reporting/javascript/imports.js	2011-05-17 08:52:25 +0000
@@ -322,81 +322,52 @@
 
 function validateUploadExcelImportByJSON(){
 
-	$.ajaxFileUpload
-	(
+	jQuery( "#upload" ).upload( 'validateUploadExcelImport.action',
+		{ 'draft': true },
+		function ( data )
 		{
-			url:'validateUploadExcelImport.action',
-			secureuri:false,
-			fileElementId:'upload',
-			dataType: 'json',
-			success: function (data, status)
-			{
-				if ( typeof( data.response ) != 'undefined' )
-				{
-					if( data.response != 'success' )
-					{
-						setMessage( data.message );
-					}
-					else
-					{
-						uploadExcelImport();
-					}
-				}
-			},
-			error: function (data, status, e)
-			{
-				alert(e);
-			}
-		}
+			if ( data.response == 'error' )
+			{              
+				setMessage( data.message );
+			}
+			else
+			{
+				uploadExcelImport();
+			}
+		}, 'json'
 	);
 }
 
 function validateUploadExcelImportByXML(){
 
-	$.ajaxFileUpload
-	(
+	jQuery( "#upload" ).upload( 'validateUploadExcelImport.action',
+		{ 'draft': true },
+		function ( data )
 		{
-			url:'validateUploadExcelImport.action?draft=true',
-			secureuri:false,
-			fileElementId:'upload',
-			dataType: 'xml',
-			success: function (data, status)
-			{
-				data = data.getElementsByTagName('message')[0];
-				var type = data.getAttribute("type");
-				
-				if ( type == 'error' )
-				{              
-					setMessage( data.firstChild.nodeValue );
-				}
-				else
-				{
-					uploadExcelImport();
-				}
-			},
-			error: function (data, status, e)
-			{
-				alert(e);
-			}
-		}
+			data = data.getElementsByTagName('message')[0];
+			var type = data.getAttribute("type");
+			
+			if ( type == 'error' )
+			{              
+				setMessage( data.firstChild.nodeValue );
+			}
+			else
+			{
+				uploadExcelImport();
+			}
+		}, 'xml'
 	);
 }
 	
 function uploadExcelImport(){
-
-	$.ajaxFileUpload
-	(
-		{
-			url:'uploadExcelImport.action?draft=true',
-			secureuri:false,
-			fileElementId:'upload',
-			dataType: 'xml',
-			success: function (data, status)
-			{
+	
+	jQuery( "#upload" ).upload( 'uploadExcelImport.action',
+		{ 'draft': true },
+		function( data, e ) {
+			try {
 				window.location.reload();
-			},
-			error: function (data, status, e)
-			{
+			}
+			catch(e) {
 				alert(e);
 			}
 		}