#!hs2 ####################################################################### # Das Script überprüft, ob bei einem User-Account neue Mails # # dazugekommen sind. # # Das funktioniert auch, wenn die Mails im Hamster nicht gelöscht # # werden, also dauerhaft im Verzeichnis HamPath\username\ liegen. # # # # Autor : Daniel Kopp Email: daniel.kopp@bigfoot.de 28.5.2000 # # # ####################################################################### # # # Beim ersten Aufruf legt das Script für jeden Benutzer eine Datei # # mit dem Namen username.mail im Hamster-Verzeichnis an. # # In dieser Datei stehen die Nummern der vorhandenen Mails. # # Ab dem 2. Aufruf wird überprüft, ob neue Mails hinzugekommen sind. # # Gegebenenfalls wird ein Fenster mit Absender und Subject ausgegeben # # # ####################################################################### # # # Achtung: ist schon eine Datei mit dem Namen username.mail vorhanden # # so wird diese ohne Gnade überschrieben! # # # ####################################################################### if (!HamWaitIdle) var ( $namen ) var ( $name ) varset ( $i, 0 ) var ( $k ) var ( $mails ) var ( $read ) var ( $header ) var ( $mail ) var ( $mailcount ) $namen = ListAlloc $mails = ListAlloc $read = ListAlloc ListDirs( $namen, HamPath + "Mails\*." ) while( $i < ListCount( $namen ) ) $name = ListGet( $namen, $i ) $mailcount=0 if ($name!="Mail.Out") ListClear ( $mails ) ListClear ( $read ) $header=chr (13) + chr (10) ListFiles ( $mails, HamPath + "\Mails\" + $name + "\*.msg" ) if (FileExists(HamPath + "\" + $name + ".mail")) ListLoad ($read, HamPath + "\" + $name + ".mail") $k=0 while ($k < ListCount( $mails )) $mail=ListIndexOf ( $read , ListGet ($mails, $k)) if ($mail="-1") if (($mailcount%15=0) && ($mailcount)) MsgBox( "Mehr als " + $mailcount + " neue Mails für "_ + $name+$header,"Neue Mails für "+$name) $header=chr (13) + chr (10) endif mailfrom(ListGet($mails, $k)) inc ($mailcount) endif inc ( $k ) endwhile if ($mailcount) if ($mailcount=1) MsgBox("eine neue Mail für " + $name+$header,"1 Mail für "_ +$name) else if ($mailcount>15) MsgBox( "Restliche Mail(s) von insgesamt: "+ $mailcount_ + " neuen Mails für " + $name+$header,_ "Neue Mails für "+$name) else MsgBox( $mailcount + " neue Mails für " + $name_ + $header,"Neue Mails für "+$name) endif endif endif else MsgBox ("mail-Datei für " + $name + " eingerichtet") endif ListSave ( $mails, HamPath + "\" + $name + ".mail") endif inc( $i ) endwhile ListFree ($namen) ListFree ($mails) ListFree ($read) quit sub mailfrom($toread) var ( $text ) var ( $abs ) var ( $subj ) varset ( $index, 0 ) varset ( $fertig, 0 ) $text = ListAlloc if (FileExists(HamPath + "Mails\" + $name + "\" + $toread)) ListLoad($text , HamPath + "Mails\" + $name + "\" + $toread) while (($index