Prüfen ob aufrufen des Email-Clients funktioniert hat

Per Email, Webservices oder ähnliches...
Antworten
Tim
Beiträge: 1
Registriert: 09.06.2011, 08:38

Prüfen ob aufrufen des Email-Clients funktioniert hat

Beitrag von Tim » 16.07.2011, 14:17

Hallo zusammen,

ich habe ein Dokument mit "Daten per Email senden Button" (XML), was auch soweit funktioniert. Falls ein Anwender keinen Email-Client eingerichtet hat, würde ich gerne ein Popup anzeigen lassen mit Alternativen. Ich finde einfach keine Möglichkeit zu prüfen ob das Aufrufen des Clients funktioniert hat. Ich hoffe Ihr könnt mir da weiterhelfen.

schönes Wochenende,

Gruß Tim

Edit: Ich sollte mir meine Beiträge besser noch einmal durchlesen....  Als Button wurde eine normale Schaltfläche verwendet. Das Javascript für das Senden der Daten hab ich von einer Seite kopiert. Es sieht in etwa so aus:

Code: Alles auswählen

// Get the Submit Action
var oSubmit = this.resolveNode("$..#submit"); 

// This is the form return e-mail. Its hard-coded
// so the form is always returned to the same address
var cToAddr = "formsAdmin@BigCorp.com";

// Get the client CC e-mail address
var cCCAddr = ClientData.email.rawValue;

// Set the subject and body text for the e-mail message 
var cSubLine = "Form returned from client"; 

var cBody = "Thank you for submitting your form.\n" + 	 "Save the mail attachment for your own records"; 	  

// Now Modify the target 
oSubmit.target = "mailto:" + cToAddr + "?cc=" + cCCAddr 	+ "&subject=" + cSubLine 	+ "&body=" + cBody;

Ich möchte nun per Javascript prüfen ob das Aufrufen des Email-Clients funktioniert hat. Wenn das nicht der Fall ist soll sich ein Popup öffnen mit Instruktionen für den User. Das Popup ist kein Problem, das Prüfen allerding schon. Gibt es da keinen Rückgabewert oder ähnliches?

Sorry wenn ich mich erst so undeutlich ausgedrückt habe....

Gruß Tim

Benutzeravatar
radzmar
Beiträge: 961
Registriert: 26.10.2011, 10:18

Prüfen ob aufrufen des Email-Clients funktioniert hat

Beitrag von radzmar » 26.10.2011, 19:17

Eigentlich bietet der Reader/Acrobat beim Senden von sich aus an eine Mail-Anwendung auszuwählen, sofern noch keine definiert wurde.
Falls nicht, gibt es schon eine Standard-Anwendung die das mailto-Protokoll verwendet.
In diesem Fall gibt der Reader/Acrobat die Daten halt an diese Anwendung.
Ob das dann erfolgreich war oder nicht, kann der Reader/Acrobat aber nicht mehr prüfen.

Du kannst dein Skript aber durch ein try-catch absichern.
Falls also das Auslösen des mailto-Protokolls generell scheitert, kannst du so eine Fehlermeldung anzeigen lassen oder irgendwas anderes machen.

try {
/ Get the Submit Action
var oSubmit = this.resolveNode("$..#submit");

// This is the form return e-mail. Its hard-coded
// so the form is always returned to the same address
var cToAddr = "formsAdmin@BigCorp.com";

// Get the client CC e-mail address
var cCCAddr = ClientData.email.rawValue;

// Set the subject and body text for the e-mail message
var cSubLine = "Form returned from client";

var cBody = "Thank you for submitting your form.\n" + "Save the mail attachment for your own records";

// Now Modify the target
oSubmit.target = "mailto:" + cToAddr + "?cc=" + cCCAddr + "&subject=" + cSubLine + "&body=" + cBody;
} catch(e) {
// app.alert("Senden ist fehlgeschlagen");
}

Antworten