//*********************************************************************
//*                  CheckGroupPemissions 2021-10-24                  *
//*                   >> OnOutgoingMessageCheck <<                    *
//*                                                                   *
//* Dieses Script verhindert das Senden von Postings in Gruppen,      *
//* in welche /nicht/ gesendet werden sollte.                         *
//*                                                                   *
//* Funktionalitaet: [x] neutral                                      *
//*                  [ ] nur Basis_Modul                              *
//*                  [ ] nur Pathfinder                               *
//*                                                                   *
//* Datum     : 31.01.2009                                            *
//* Autoren   : Dietmar Vollmeier                                     *
//* Stand     : 24.10.2021                                            *
//*                                                                   *
//* DateiName : _i_CheckGroupPermissions.ds                           *
//* Einbindung: {$I _i_OOMC_CheckGroupPermissions}                    *
//* Aufruf    : Result := PermitSending (Message);                    *
//*********************************************************************
Procedure Init_PermitSending(Var G : TStringList);

Begin
//{-------------------------------------------------------------------}
//{                 Anwenderspezifische Einstellungen                 }
//{-------------------------------------------------------------------}

// Hier die Gruppen eintragen, in die ein Posting verhindert werden soll.
// Mehrere Einträge durch Komma trennen.
// Mehrzeiler durch '+' verbinden.
   G.CommaText := 'de.talk.tagesgeschehen';

end;
//{-------------------------------------------------------------------}
//{                       Ende der Einstellungen                      }
//{-------------------------------------------------------------------}

//{===================================================================}
//{           !!!  Ab hier bitte nichts mehr ändern  !!!              }
//{===================================================================}

//--[ Function PermitSending ]-----------------------------------------

Function PermitSending(M : TStringlist) : Boolean;
Var i : Integer;
    G : TStringList;

Begin
   // Grundsätzlich das Senden der Nachricht erlauben
   Result := True;

   G := TStringList.Create;
   Init_PermitSending(G);
   
   For i := 0 To G.Count - 1 Do
   Begin
      // Wenn eine verbotene Gruppe gefunden wurde, dann Senden verweigern
      // und Script beenden.
      If AnsiPos(G[i], M.Values['newsgroups']) > 0 Then
      Begin
         Result := False;
         G.Free;
         Exit;
      End;
   End;
   G.Free;
End;

//--[ Ende Function PermitSending ]------------------------------------