Update of /server/cvs/freexp In directory m6s15:/tmp/cvs-serv28627 Modified Files: maggi.pas Log Message: MW: - Es werden jetzt die langen Maus-IDs zur Verkettung verwendet.
--- /server/cvs/freexp/maggi.pas 2008/12/26 18:37:13 1.35 +++ /server/cvs/freexp/maggi.pas 2008/12/28 10:35:26 1.36 @@ -8,7 +8,7 @@ { Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der } { Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. } { --------------------------------------------------------------- } -{ $Id: maggi.pas,v 1.35 2008/12/26 18:37:13 mw Exp $ } +{ $Id: maggi.pas,v 1.36 2008/12/28 10:35:26 mw Exp $ } { ZConnect <-> Magic/Quick - Konvertierer } { PM 04/92 } @@ -75,6 +75,7 @@ mausKF : boolean = true; { fb: Filter f?r Kommentare } MausIT_files : boolean = false; { ITI/ITG -> Box.IT* } OldXPComp : boolean = false; { XP 3.12 Kompatibilitt: F-TO -> X-XP-FTO } + SmallMaus : boolean = false; { Kurze Maus-IDs verwenden } { attrCrash = $0002; } { header.attrib: Crashmail } { attrFile = $0010; } { File attached } @@ -173,6 +174,7 @@ var f1,f2 : file; bretter : integer; brettp : array[1..maxbrett] of ^brett; + tstr : string; { 01/2000 oh : wird zum Einlesen der Customizable Headerlines bentigt } @@ -187,6 +189,7 @@ writeln('MAGGI - Magic/Quick/Maus/ZConnect Converter (c) 1992-1999 Peter Mandrella'); writeln(xp_display,'-Version ',verstr,betastr,' ',x_copyright, ' by ',author_name,' <',author_mail,'>'); + writeln ('NextGeneration Maggi for Maustausch and FreeXP'); writeln; end; @@ -197,14 +200,15 @@ writeln('QuickMail: MAGGI [-qz|zq] [-g] <Eingabe> <Ausgabe>'); writeln('MausTausch: MAGGI [-sz|zs] -bBox -hBretthierarchie [-i] <Eingabe> <Ausgabe>'); writeln; - writeln(' -mz = MagicNET -> ZConnect -sz = MausTausch -> ZConnect'); - writeln(' -zm = ZConnect -> MagicNET -zs = ZConnect -> MausTausch'); - writeln(' -mn = MagicNET -> Netcall -i = Infofiles bestellen'); - writeln(' -m = Message-IDs erzeugen -o = Outfile erzeugen'); + writeln(' -mz = MagicNET -> ZConnect -sz = MausTausch -> ZConnect'); + writeln(' -zm = ZConnect -> MagicNET -zs = ZConnect -> MausTausch'); + writeln(' -mn = MagicNET -> Netcall -i = Infofiles bestellen'); + writeln(' -m = Message-IDs erzeugen -o = Outfile erzeugen'); writeln; - writeln(' -qz = QuickNET -> ZConnect -pz = ProNET -> ZConnect'); - writeln(' -zq = ZConnect -> QuickNet -zp = ZConnect -> ProNet'); - writeln(' -g = GS-Mailbox -312 = Kompatibilittsmodus zu 3.12'); + writeln(' -qz = QuickNET -> ZConnect -pz = ProNET -> ZConnect'); + writeln(' -zq = ZConnect -> QuickNet -zp = ZConnect -> ProNet'); + writeln(' -g = GS-Mailbox -312 = Kompatibilittsmodus zu 3.12'); + writeln(' -sMaus = Kurze Maus MSGIDs verwenden'); halt(1); end; @@ -262,7 +266,12 @@ else if _is('on') then MausON:=false else if _is('kf') then mausKF:=false else if _is('it') then MausIT_Files:=true - else if _is('312') then OldXPComp := true + else if _is('312') then + begin + OldXPComp := true; + SmallMaus := true; + end + else if _is('sMaus') then SmallMaus := true else if (left(s,1)='/') or (left(s,1)='-') then parerr else if infile='' then infile:=s else if outfile='' then outfile:=s @@ -1236,6 +1245,25 @@ writeln(t,':---'); end; + function INT2MAUS(a:string):string; + var f:text; + r,s,t:string; + begin + if exist('INT2MAUS.IDS') then begin + assign(f,'INT2MAUS.IDS'); + reset(f); + readln(f,t); {Erstmal Kopf ueberlesen} + readln(f,t); + repeat + readln(f,r); + readln(f,s); + readln(f,t); + until ((r=a) or eof(f)); + close (f); + if r=a then INT2MAUS:=s else INT2MAUS:=''; + end else INT2MAUS:=''; + end; + begin new(buf); reset(f1,1); @@ -1317,11 +1345,43 @@ writeln(t,'DL') else writeln(t,'DN'); + {ref = org_xref => INT2MAUS} + {MW 11/2003} + if ((ref<>'') and (ref=org_xref) and SmallMaus=false) then begin + if (length(ref)-pos('@',ref)<5) then org_xref:=INT2MAUS(ref) else + begin + ref:=''; + org_xref:=''; + end; + end; + if ref<>'' then begin - if org_xref<>'' then - writeln(t,'R',org_xref); + if SmallMaus then + begin + if org_xref<>'' then + writeln(t,'R',org_xref); + end + else + begin + if length(org_xref)>length(ref) then + begin + {Kompatbilitätsmodus mit altem Maggi} + tstr:=ref; + ref:=org_xref; + org_xref:=tstr; + {Swap Variable} + end; + writeln(t,'R',ref); + end; if komzu then begin - if org_xref='' then writeln(t,'R',ref); + if SmallMaus then + begin + if org_xref='' then writeln(t,'R',ref); + end + else + begin + if org_xref='' then writeln(t,'-',ref); + end; { fb: Wildwestverkettung nur bei G?K und PM. Ist nach Maus-Specs. nicht ntig, aber der Kompatiblitt wegen } if left(ustr(ReplyGroup),length(bretth))=bretth then @@ -1329,9 +1389,16 @@ writeln(t,':Kommentar zu ',ref,' in der Gruppe ', ustr(mid(ReplyGroup,length(bretth)+1))); end - else - writeln(t,'-',ref); + else begin + if SmallMaus then + writeln(t,'-',ref) + else + begin + if org_xref<>'' then writeln(t,'-',org_xref) else + if (length(ref)-pos('@',ref)<5) then writeln(t,'-',ref); + end; end; + end; if AmReplyTo<>'' then writeln(t,':Followup-To: ',mid(AmReplyTo,length(bretth)+1)); end; @@ -1686,8 +1753,17 @@ nehmen } 'Y' : gate:=left(s,80); { /fb } - 'I' : org_msgid:=left(s,120); - 'R' : org_xref:=left(s,120); + 'I' : if SmallMaus then + org_msgid:=left(s,120) + else + begin + org_msgid:=msgid; {MW 11/2003} + msgid:=left(s,120); + end; + 'R' : if SmallMaus then + org_xref:=left(s,120) + else + ref:=left(s,120); 'N' : realname:=left(s,40); 'D' : if s<>'' then case s[1] of 'M' : distribution:='MausNet'; @@ -1711,7 +1787,10 @@ end; end; {/fb} - '-' : ref:=left(s,120); + '-' : If SmallMaus then + ref:=left(s,120); + else + org_xref:=left(s,120); {MW 11/2003} end; s:=c+s; end; @@ -1722,7 +1801,18 @@ datum:=zdate; setzdate(hd); end; if msgid='#LOG' then for i:=1 to lines do - writeln(log,tbuf^[i].s^) + if SmallMaus then + writeln(log,tbuf^[i].s^) + else + begin {MW 11/2003} + if tbuf^[i].s^[1]='=' then writeln(log,'!'+tbuf^[i].s^) else + if tbuf^[i].s^[1]+tbuf^[i].s^[2]='!=' then begin + tstr:=tbuf^[i].s^; + delete(tstr,1,1); + writeln(log,tstr); + end + else writeln(log,tbuf^[i].s^); + end else begin inc(nn); write(#13,'Nachrichten: ',nn); @@ -1839,7 +1929,10 @@ end. { $Log: maggi.pas,v $ - Revision 1.35 2008/12/26 18:37:13 mw + Revision 1.36 2008/12/28 10:35:26 mw + MW: - Es werden jetzt die langen Maus-IDs zur Verkettung verwendet. + + Revision 1.35 2008-12-26 18:37:13 mw - Aktualisierung auf Version 3.45 Revision 1.34 2008-01-01 20:59:24 mw
------------------------------------------------------------------------ FreeXP CVS-Mailingliste CVS-List@freexp.de http://www.freexp.de/cgi-bin/mailman/listinfo/cvs-list