//********************************************************************* //* EditHTML - 2020-10-10 * //* >> OnBeforeSavingMessage << * //* * //* Dieses Skript formatiert Nachrichten im HTML-Format so, dass der * //* Text größer angezeigt wird, da die dialoginterne Anzeige zu klein * //* ist. * //* * //* Funktionalitaet: [x] neutral (benoetigt Dialog_Functions.ds!) * //* [ ] nur Basis_Modul * //* [ ] nur Pathfinder * //* * //* Datum : 24.04.2014 - ueberarbeitet am: 10.10.2020 * //* Autor : Heiko Rost * //* * //* DateiName : _i_OBSaveM_EditHTML.ds * //* Einbindung: {$I _i_OBSaveM_EditHTML.ds} * //* Aufruf : Not_Error := EditHTML (Not_Error, Message, IsEmail, * //* Error_Func); * //********************************************************************* Procedure Init_EditHTML ( Var FontSize_HTML : String); begin //{-------------------------------------------------------------------} //{ Anwenderspezifische Einstellungen } //{-------------------------------------------------------------------} // FontSize_HTML: // Die Schriftgröße, die im <font>-Tag angegeben wird. Den besten // Wert muss jeder für sich selbst festlegen. // Lege hier eine individuelle Schriftgroesse fest: FontSize_HTML := '5'; //{-------------------------------------------------------------------} //{ Ende der Einstellungen } //{-------------------------------------------------------------------} end; //{===================================================================} //{ !!! Ab hier bitte nichts mehr ändern !!! } //{===================================================================} //-------[ Function EditHTML ]----------------------------------------- function EditHTML (var fbkResult : Boolean; Message : TStringlist; IsEmail : boolean; Error_Func : String) : Boolean; var FontSize_HTML : String; i : integer; begin // Rückgabewert entsprechend vorheriger Scriptprobleme setzen Result := fbkResult; // Wenn bereits irgendein Script einen Fehler verursacht hat, // dann muss der User benachrichtigt werden If not Result Then begin WriteToLog ('==== ANFANG =======================================' ,4); WriteToLog ('Script *** EditHTML *** wird weiterhin ausgefuehrt' ,4); WriteToLog ('Script ' + Error_Func + ' hat diese WARNUNG verursacht!' ,4); WriteToLog ('==== ENDE =========================================' ,4); end; if (Message.Count > 0) and (IsEMail = false) Then begin Init_EditHTML ( FontSize_HTML ); Try If ansipos ( 'text/html', GetHeader ('Content-Type: ', Message)) > 0 then begin i := Message.IndexOf ('') + 1; Message.insert (i, '<font size="' + FontSize_HTML +'">'); Message.Text := StringReplace(Message.Text,'<pre>','<pre><font size="'+FontSize_HTML+'">',[rfReplaceAll]); // Message.Text := StringReplace(Message.Text,'</pre>','</pre>',[rfReplaceAll]); Message.Text := StringReplace(Message.Text,'<tt>','<tt><font size="'+FontSize_HTML+'">',[rfReplaceAll]); // Message.Text := StringReplace(Message.Text,'</tt>','</tt>',[rfReplaceAll]); end; // if Except // Bei Problemen den User benachrichtigen. begin WriteToLog ('FEHLER im Script *** Init_EditHTML ***' ,4); WriteToLog ('From : ' + GetHeader('From: ', Message), 4); WriteToLog ('Newsgroups : ' + GetHeader('Newsgroups: ', Message), 4); WriteToLog ('Date : ' + GetHeader('Date: ', Message), 4); WriteToLog ('Message-ID : ' + GetHeader('Message-ID: ', Message), 4); Error_Func := '*** Init_EditHTML ***'; Result := false; end; // Except end; // Try ... Except end; // If end; // function