Subversion Repositories eFlore/Archives.cel-v2

Rev

Rev 18 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
12 aperonnet 1
package org.tela_botanica.client.modeles;
2
 
3
import com.gwtext.client.widgets.Window;
4
import com.gwtextux.client.widgets.upload.UploadDialog;
5
 
6
 
7
/**
8
 * DAO un peu particulier car il crée une fenetre d'upload différente
9
 * suivant que le plugin Java est détecté ou non
10
 *
11
 *
12
 */
13
public class ImageUploaderAsynchroneDAO {
14
 
15
 
16
	private static void appelerUploadSimple()
17
	{
18
 
19
		 UploadDialog up = new UploadDialog("Upload simple de fichiers") ;
20
		 up.setUrl("jrest/InventoryImage");
21
		 up.show();
22
 
23
	}
24
 
25
	private static void appelerUploadMultiple()
26
	{
27
		final Window nPan = new Window("Upload multiple");
28
		nPan.setSize(640, 800);
29
 
30
		final String applet = "<applet code=\"wjhk.jupload2.JUploadApplet\" archive=\"wjhk.jupload.jar\" alt=\"\" mayscript=\"\" height=\"770\" width=\"625\">";
31
		final String paramPostTarget = "<param name=\"postURL\" value=\"jrest/InventoryImage/\">";
32
		final String paramUploadPolicy = "<param name=\"uploadPolicy\" value=\"PictureUploadPolicy\">";
33
		final String paramMaxChunkSize = "<param name=\"maxChunkSize\" value=\"0\">";
34
		final String paramMaxFileSize = "<param name=\"maxFileSize\" value=\"10000000\">";
35
		final String paramMaxPicHeight = "<param name=\"maxPicHeight\" value=\"1200\">" ;
36
		final String paramMaxPicWidth = "<param name=\"maxPicWidth\" value=\"1600\">" ;
37
		final String paramTransmitMetaData = "<param name=\"pictureTransmitMetadata\" value=\"true\">";
38
		final String paramFilesPerRequest = "<param name=\"nbFilesPerRequest\" value=\"1\">";
39
		final String paramAllowedExtensions = "<param name=\"allowedFileExtensions\" value=\"jpg/jpeg/\">";
40
		final String paramUploadSuccess = "<param name=\"stringUploadSuccess\" value=\"OK\">" ;
41
		final String paramShowLogWindow = "<param name=\"showLogWindow\" value=\"false\">";
42
		final String finApplet = "</applet>";
43
 
44
		final String appelApplet = applet
45
				+ paramPostTarget
46
				+ paramUploadPolicy
47
				+ paramMaxChunkSize
48
				+ paramMaxFileSize
49
				+ paramMaxPicHeight
50
				+ paramMaxPicWidth
51
				+ paramTransmitMetaData
52
				+ paramFilesPerRequest
53
				+ paramAllowedExtensions
54
				+ paramUploadSuccess
55
				+ paramShowLogWindow
56
				+ finApplet;
57
 
58
		nPan.setHtml(appelApplet);
59
		nPan.show();
60
	}
61
 
62
	public static native void choisirMethodeUpload() /*-{
63
 
64
	  	var agt=navigator.userAgent.toLowerCase();
65
		var ie  = (agt.indexOf("msie") != -1);
66
		var ns  = (navigator.appName.indexOf("Netscape") != -1);
67
		var win = ((agt.indexOf("win")!=-1) || (agt.indexOf("32bit")!=-1));
68
		var mac = (agt.indexOf("mac")!=-1);
69
 
70
		function detectIE(ClassID,name) { result = false; document.write('<SCRIPT LANGUAGE=VBScript>\n on error resume next \n result = IsObject(CreateObject("' + ClassID + '"))</SCRIPT>\n'); if (result) return name+','; else return ''; }
71
		function detectNS(ClassID,name) { n = ""; if (nse.indexOf(ClassID) != -1) if (navigator.mimeTypes[ClassID].enabledPlugin != null) n = name+","; return n; }
72
 
73
		if (ie && win) {	pluginlist = detectIE("Adobe.SVGCtl","SVG Viewer") + detectIE("SWCtl.SWCtl.1","Shockwave Director") + detectIE("ShockwaveFlash.ShockwaveFlash.1","Shockwave Flash") + detectIE("rmocx.RealPlayer G2 Control.1","RealPlayer") + detectIE("QuickTimeCheckObject.QuickTimeCheck.1","QuickTime") + detectIE("MediaPlayer.MediaPlayer.1","Windows Media Player") + detectIE("PDF.PdfCtrl.5","Acrobat Reader"); }
74
		if (ns || !win) {
75
				nse = ""; for (var i=0;i<navigator.mimeTypes.length;i++) nse += navigator.mimeTypes[i].type.toLowerCase();
76
				pluginlist = detectNS("image/svg-xml","SVG Viewer") + detectNS("application/x-director","Shockwave Director") + detectNS("application/x-shockwave-flash","Shockwave Flash") + detectNS("audio/x-pn-realaudio-plugin","RealPlayer") + detectNS("video/quicktime","QuickTime") + detectNS("application/x-mplayer2","Windows Media Player") + detectNS("application/pdf","Acrobat Reader");
77
		}
78
 
79
		pluginlist += navigator.javaEnabled() ? "Java," : "";
80
		if (pluginlist.length > 0) pluginlist = pluginlist.substring(0,pluginlist.length-1);
81
 
82
	  if(pluginlist.indexOf("Java")!=-1)
83
	  {
84
	  	@org.tela_botanica.client.modeles.ImageUploaderAsynchroneDAO::appelerUploadMultiple()() ;
85
	  }
86
	  else
87
	  {
88
	  	@org.tela_botanica.client.modeles.ImageUploaderAsynchroneDAO::appelerUploadSimple()() ;
89
	  }
90
 
91
	}-*/;
92
 
93
}