+ #
+ # check if XML file exists
+ #
+ unless (-e $mainfile) {
+ print ${$template->scrap(
+ $assign->{'error'},
+ {
+ $assign->{'errorText'} => "Es existieren keine Nachrichten für diesen Monat."
+ }
+ )};
+ return;
+ }
+
+ #
+ # try locking and read/parse threads
+ #
+ my ($threads, $locked);
+ unless ($locked = lock_file($mainfile) and $threads = get_all_threads($mainfile, KILL_DELETED)) {
+ print ${$template->scrap(
+ $assign->{'error'},
+ {
+ $assign->{'errorText'} => "Fehler beim Locking."
+ }
+ )};
+ return;
+ }
+ unlock_file($mainfile);