9,83 → 9,83 |
import com.gwtextux.client.widgets.upload.UploadDialog; |
import com.gwtextux.client.widgets.upload.UploadDialogListenerAdapter; |
|
|
/** |
* DAO un peu particulier car il crée une fenetre d'upload différente |
* suivant que le plugin Java est détecté ou non |
* DAO un peu particulier car il crée une fenetre d'upload différente suivant |
* que le plugin Java est détecté ou non |
* |
* |
*/ |
public class ImageUploaderAsynchroneDAO { |
|
|
/** |
* Modele associé au DAO |
*/ |
private static ImageModele iModele ; |
|
public ImageUploaderAsynchroneDAO(ImageModele im) |
{ |
iModele = im ; |
private static ImageModele iModele; |
|
public ImageUploaderAsynchroneDAO(ImageModele im) { |
iModele = im; |
} |
|
|
/** |
* Setteur pour le modele |
* @param im le modèle à associer au DAO |
* Setteur pour le modele |
* |
* @param im |
* le modèle à associer au DAO |
*/ |
public void setIModele(ImageModele im) |
{ |
iModele = im ; |
public void setIModele(ImageModele im) { |
iModele = im; |
} |
|
/** |
* Crée un panel d'upload simple aux fonctions réduites mais utilisant uniquement javascript |
* (pour les utilisateurs qui n'ont pas java) |
* Crée un panel d'upload simple aux fonctions réduites mais utilisant |
* uniquement javascript (pour les utilisateurs qui n'ont pas java) |
*/ |
@SuppressWarnings("unused") |
private static void appelerUploadSimple() |
{ |
|
UploadDialog up = new UploadDialog("Upload simple de fichiers") ; |
up.setUrl(iModele.getConfig().getServiceBaseUrl()+"/InventoryImage"); |
UrlParam id = new UrlParam("identifiant",iModele.getIdentifiant()) ; |
UrlParam[] params = {id} ; |
up.setBaseParams(params); |
up.setModal(true) ; |
|
up.addListener(new UploadDialogListenerAdapter() { |
|
private static void appelerUploadSimple() { |
|
UploadDialog up = new UploadDialog("Upload simple de fichiers"); |
up.setUrl(iModele.getConfig().getServiceBaseUrl() + "/InventoryImage"); |
UrlParam id = new UrlParam("identifiant", iModele.getIdentifiant()); |
UrlParam[] params = { id }; |
up.setBaseParams(params); |
up.setModal(true); |
|
up.addListener(new UploadDialogListenerAdapter() { |
|
public void onClose(Panel panel) { |
|
iModele.requeteTerminee() ; |
|
iModele.requeteTerminee(); |
} |
|
public void onUploadComplete(UploadDialog source) { |
|
iModele.requeteTerminee() ; |
|
|
iModele.requeteTerminee(); |
|
} |
|
|
}); |
|
up.show(); |
|
}); |
|
up.show(); |
|
} |
|
|
/** |
* Crée une fenêtre contenant une applet java pour uploader plusieurs fichiers à la fois avec quelques |
* fonctions avancées (nécessite le plugin java pour le navigateur) |
* Crée une fenêtre contenant une applet java pour uploader plusieurs |
* fichiers à la fois avec quelques fonctions avancées (nécessite le plugin |
* java pour le navigateur) |
*/ |
@SuppressWarnings("unused") |
private static void appelerUploadMultiple() |
{ |
|
private static void appelerUploadMultiple() { |
|
final Window nPan = new Window("Upload multiple"); |
nPan.setWidth(640) ; |
nPan.setWidth(640); |
|
final String warning = "<p class=\"warning_upload\"> A la fin de l'envoi, veuillez fermer la fenêtre pour accéder aux images. </p>" ; |
|
final String warning = "<p class=\"warning_upload\"> A la fin de l'envoi, veuillez fermer la fenêtre pour accéder aux images. </p>"; |
|
final String applet = "<applet code=\"wjhk.jupload2.JUploadApplet\" archive=\"wjhk.jupload.jar\" alt=\"\" mayscript=\"\" height=\"350\" width=\"625\">"; |
final String paramPostTarget = "<param name=\"postURL\" value=\""+iModele.getConfig().getServiceBaseUrl()+"/InventoryImage/\">"; |
final String paramPostTarget = "<param name=\"postURL\" value=\"" |
+ iModele.getConfig().getServiceBaseUrl() |
+ "/InventoryImage/\">"; |
final String paramUploadPolicy = "<param name=\"uploadPolicy\" value=\"PictureUploadPolicy\">"; |
final String paramMaxChunkSize = "<param name=\"maxChunkSize\" value=\"0\">"; |
final String paramMaxFileSize = "<param name=\"maxFileSize\" value=\"10000000\">"; |
92,52 → 92,42 |
final String paramTransmitMetaData = "<param name=\"pictureTransmitMetadata\" value=\"true\">"; |
final String paramFilesPerRequest = "<param name=\"nbFilesPerRequest\" value=\"1\">"; |
final String paramAllowedExtensions = "<param name=\"allowedFileExtensions\" value=\"jpg/jpeg/\">"; |
final String paramUploadSuccess = "<param name=\"stringUploadSuccess\" value=\"OK\">" ; |
final String paramUploadSuccess = "<param name=\"stringUploadSuccess\" value=\"OK\">"; |
final String paramShowLogWindow = "<param name=\"showLogWindow\" value=\"false\">"; |
final String paramFormdata = "<param name=\"formData\" value=\"postid\">" ; |
final String paramFormdata = "<param name=\"formData\" value=\"postid\">"; |
final String finApplet = "</applet>"; |
|
final String appelApplet = applet |
+ paramPostTarget |
+ paramUploadPolicy |
+ paramMaxChunkSize |
+ paramMaxFileSize |
+ paramTransmitMetaData |
+ paramFilesPerRequest |
+ paramAllowedExtensions |
+ paramUploadSuccess |
+ paramShowLogWindow |
+paramFormdata |
final String appelApplet = applet + paramPostTarget + paramUploadPolicy |
+ paramMaxChunkSize + paramMaxFileSize + paramTransmitMetaData |
+ paramFilesPerRequest + paramAllowedExtensions |
+ paramUploadSuccess + paramShowLogWindow + paramFormdata |
+ finApplet; |
|
final String htmlForm = |
"<form method=\"post\" name=\"postid\">" |
+"<input type=\"hidden\" name=\"identifiant\" value=\""+iModele.getIdentifiant()+"\">" |
+"</form>" ; |
|
nPan.setHtml(warning+appelApplet+htmlForm); |
|
nPan.setModal(true) ; |
|
final String htmlForm = "<form method=\"post\" name=\"postid\">" |
+ "<input type=\"hidden\" name=\"identifiant\" value=\"" |
+ iModele.getIdentifiant() + "\">" + "</form>"; |
|
nPan.setHtml(warning + appelApplet + htmlForm); |
|
nPan.setModal(true); |
|
nPan.addListener(new WindowListenerAdapter() { |
|
public void onClose(Panel panel) { |
|
|
public void onClose(Panel panel) { |
|
iModele.requeteTerminee() ; |
|
iModele.requeteTerminee(); |
|
} |
|
|
|
}); |
|
|
nPan.show(); |
} |
|
|
/** |
* Fonction javascript native qui détecte la présence du plugin java pour le navigateur |
* et appelle la méthode d'upload adaptée (appelerUploadSimple ou appelerUploadMultiple) |
* Fonction javascript native qui détecte la présence du plugin java pour le |
* navigateur et appelle la méthode d'upload adaptée (appelerUploadSimple ou |
* appelerUploadMultiple) |
*/ |
public static native void choisirMethodeUpload() /*-{ |
|