Silent-Mode – ohne Benutzereingaben
//SCRIPT :MCEXT.SENDMAIL.MCFSCR
//Helper: ÄÜÖßäöü
//Neues Verfahren für E-Mail über einen SMTP-Server.
//Pflichtparameter:
//- MailServer
//- MailUser
//- MailPassword
//- MailPort
//- AbsenderEmail
//- AbsenderName
//- EmpfaengerEmail (mehrere mit ; trennen)
//- Betreff
//Optionale Parameter:
//- Text
//- Attachments (mehrere mit ; trennen)
//- CC (mehrere mit ; trennen)
//- BCC (mehrere mit ; trennen)
//- IsHTML (wenn der Bodytext HTML formatiert ist)
//SSL / TLS Hinweis:
//Für Port 587 (STARTTLS) oder 465 (SSL) wird die Verschlüsselung automatisch aktiviert.
//In Klinik-Umgebungen wird in der Regel Port 587 empfohlen.
//Port 25 ist häufig gesperrt oder nicht verschlüsselt!
MAILSERVER="SMTP.IONOS.de"
MAILUSER="info@xxx.de"
MAILPASSWORD="*****"
MAILPORT="587"
ABSENDEREMAIL="info@xxx.de"
ABSENDERNAME="Klinik"
BETREFF="Test"
DS.ORDEREMAIL="xxx@gmx.de"
MAILTEXT=""
ANHANG=""
CC=""
BC=""
BODY_IS_HTML="false"
SCRIPT.LASTERROR=MCEXT.SENDMAIL{{MAILSERVER},{MAILUSER},{MAILPASSWORD},{MAILPORT},{ABSENDEREMAIL},{ABSENDERNAME},{DS.ORDEREMAIL},{BETREFF},{MAILTEXT},{ANHANG},{CC},{BC},{BODY_IS_HTML}}
IFBLOCK{SCRIPT.LASTERROR!}
RES=DLGMESSAGE{{SCRIPT.LASTERRORMSG}}
ENDIF
Mit Benutzereingaben
//SCRIPT :MCEXT.SENDMAIL.MCFSCR
//Helper: ÄÜÖßäöü
//Neues Verfahren für E-Mail über einen SMTP-Server.
//Pflichtparameter:
//- MailServer
//- MailUser
//- MailPassword
//- MailPort
//- AbsenderEmail
//- AbsenderName
//- EmpfaengerEmail (mehrere mit ; trennen)
//- Betreff
//Optionale Parameter:
//- Text
//- Attachments (mehrere mit ; trennen)
//- CC (mehrere mit ; trennen)
//- BCC (mehrere mit ; trennen)
//- IsHTML (wenn der Bodytext HTML formatiert ist)
//SSL / TLS Hinweis:
//Für Port 587 (STARTTLS) oder 465 (SSL) wird die Verschlüsselung automatisch aktiviert.
//In Klinik-Umgebungen wird in der Regel Port 587 empfohlen.
//Port 25 ist häufig gesperrt oder nicht verschlüsselt!
WIDTH="400"
HEIGHT="150"
INI_COLOR={APPPATH}\CONFIG\SYSTEM_COLOR.INI
THEME="DARK"
DS.ORDEREMAIL=""
START:
DS.ORDEREMAIL=MCEXT.DLGTEXT{Mail senden,Geben Sie die E-Mail Adresse des Empängers ein. Mehrere Empfänger mit ; getrennt!,{DS.ORDEREMAIL},{WIDTH},{HEIGHT},,mail,,0,false,{INI_COLOR},{THEME},Weiter}
IFBLOCK{DS.ORDEREMAIL=}
EXIT=EXITSCRIPT{}
ENDIF
NOCHMAL_BETREFF:
BETREFF="Geben Sie hier den Betreff ein..."
BETREFF=MCEXT.DLGTEXT{Mail senden,Sie müssen einen Betreff eingeben,{BETREFF},{WIDTH},{HEIGHT},,,,0,false,{INI_COLOR},{THEME},Weiter}
IFBLOCK{BETREFF=}
GO{NOCHMAL_BETREFF}
ELSEIF{BETREFF=CANCEL}
EXIT=EXITSCRIPT{}
ENDIF
//Beispiel für Anhang
ANHANG=""
ANHANG={APPPATH}\CONFIG\ZiNr.LST
CHECKFILE=""
ANHANG_TEXT=""
CHECKFILE=IFEXISTSFILE{{ANHANG}}
IFBLOCK{CHECKFILE=false}
ABFRAGE=MCEXT.DLGMSG{Anhang ist nicht vorhanden!,{ANHANG}{RET}{RET}Trotzdem senden?,,yesno,false,true,{WIDTH},{HEIGHT},{INI_COLOR},{THEME}}
IFBLOCK{ABFRAGE=NO}
EXIT=EXITSCRIPT{}
ENDIF
ANHANG=""
ELSE
ANHANG_TEXT={RET}Anbei erhalten Sie die gewünschte Datei:{RET}{RET}Anhang:{RET}{ANHANG}
ENDIF
ARR="Text;HTML"
ERG=""
ERG=MCEXT.DLGCOMBO{Wählen Sie das Body-Textformat,Format:,{ARR},,{WIDTH},{HEIGHT},{INI_COLOR},{THEME},Auswählen}
MAILTEXT=""
IFBLOCK{ERG=Text}
MAILTEXT=Sehr geehrte Damen und Herren,{RET}{RET}wir bedanken uns für die Zusammenarbeit.{RET}{RET}Mit besten Grüßen{RET}{RET}Ihr Team{RET}{RET}{ANHANG_TEXT}
ELSEIF{ERG=HTML}
MAILTEXT=<html><body><h2 style=color:#2F6DB3;>Testmail</h2><p>Hallo Welt,<br>heute ist der <b>{DATE}</b></p><p>{ANHANG_TEXT}</p></body></html>
ENDIF
TMP_MSG=""
TMP_MSG={TMP_MSG}Betreff: {BETREFF}{RET}{RET}{MAILTEXT}
ABFRAGE=MCEXT.DLGMSG{Mail senden an: {DS.ORDEREMAIL},{TMP_MSG},,yesno,false,true,{WIDTH},400,{INI_COLOR},{THEME}}
IFBLOCK{ABFRAGE=NO}
EXIT=EXITSCRIPT{}
ENDIF
//Die Default Settings können in einer INI-Datei komplett gelesen und gefüllt werden.
//In diesem Beispiel gibt es eine \CONFIG\MAIL_SETTINGS.INI mit der Sektion [MAIL_SETTINGS_SMTP]
GET_SENDMAIL=MCEXT.READ_SECTION{{APPPATH}\CONFIG\MAIL_SETTINGS.INI,MAIL_SETTINGS_SMTP}
IFBLOCK{GET_SENDMAIL!True}
DLG=MCEXT.DLGMSG{Fehler:,{GET_SENDMAIL},,ok,false,true,{WIDTH},{HEIGHT},{INI_COLOR},error}
EXIT=EXITSCRIPT{}
ENDIF
SCRIPT.LASTERROR=MCEXT.SENDMAIL{{MAILSERVER},{MAILUSER},{MAILPASSWORD},{MAILPORT},{ABSENDEREMAIL},{ABSENDERNAME},{DS.ORDEREMAIL},{BETREFF},{MAILTEXT},{ANHANG},{CC},{BC},true}
IFBLOCK{SCRIPT.LASTERROR!}
RES=DLGMESSAGE{{SCRIPT.LASTERRORMSG}}
ENDIF
Beispiel für …\CONFIG\MAIL_SETTINGS.INI
[MAIL_SETTINGS_SMTP]
MAILSERVER=SMTP.IONOS.de
MAILUSER=info@xxx.de
MAILPASSWORD=*****
MAILPORT=587
ABSENDEREMAIL=info@xxx.de
ABSENDERNAME=Klinik
CC=
BC=
