[3.3] CF Welcome Post Topic (fork)

In diesem Forum können Extension-Autoren ihre Extensions vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Benutzeravatar
chris1278
Mitglied
Beiträge: 3562
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

[3.3] CF Welcome Post Topic (fork)

Beitrag von chris1278 »

Name der Extension:CF Welcome Post Topic (fork)
Autor: Chris1278

Version der Extension: 2.0.0

Voraussetzungen:
  • phpbb 3.3.0 aufwärts
  • php 7.1<8.3@dev
Download:

folgt

Beschreibung der Extension

Der Ursprung dieses Forks ist folgende Erweiterung:

[ABD] Welcome Topic/Post Robot


Start des Forks mit Verion 2.0.0
Ich habe diesen Fork um einiges Verbessert. Nachfolgend eine Liste der Änderungen:
  • Admin Controller angepasst und auf Controller Basis umgeschrieben
  • Eigene Tabelle abgelegt damit man dort den Betreff und den Beitragstext speichern kann. Das war nötig damit man auch größere Texte speichern kann.
  • Es wird ein Dummy User angelegt. Weil beim ändern des Beitragserstellers muss an einer Stelle eine ID eingetragen werden. Wenn der Admin ein Benutzer einträgt der nicht in der Benutzerdatenbank des Forums war, wurde der Beitrag immer mit dem Namen des neuen Benutzers als Beitragsersteller gepostet. Praktisch begrüßte sich der Benutzer selber. Jetzt wird der Beitragsersteller während des Durchlaufs geändert und der Name des Beitragserstellers ist immer der im ACP hinterlegte Benutzer. Der Name wird dann bei dem Dummy User entsprechend geändert aber die User ID bleibt die selbe. Mit dem Dummy User kann man sich auch nicht einloggen und der hat auch sonst keine Berechtigung. Es liegt dem Admin aber frei diesen entsprechend auszustatten. Der Dummy User wird in keine Gruppe eingetragen und hat auch sonst keine Funktion.
  • Die listener.php geändert:
    • Die Datenbank Parameter für die Tabelle phpbb_config geändert
    • Es mussten einige SQL Abfragen in die Listener.php integriert werden auch schon deswegen da ich die Texte jetzt individuell über eine eigens dafür angelegte Tabelle laufen lassen. Es ist jetzt möglich für jede im Forum installierte Sprache einen Betreff sowie Text zu hinterlegen. Dieser wird dann als Vorlage genutzt um den Benutzer in seiner ausgewählten Sprache mit einem Beitrag zu begrüßen.
    • Folgende Optionen wurden noch geändert was die Thematik angeht Beitragsersteller:
      • Aus der Datenbank werden die vorher angelegten Informationen ausgelesen:
        • Benutzername
        • Benutzer Farbe (Gruppenfarbe)
        • Benutzer ID
      Das hat den Hintergrund, da sofern der Benutzer existiert, das die ID und der Benutzername sowie die Benutzer Farbe benötigt werden um die Änderungen an bestimmten Stellen zu machen.
      Es werden an folgenden Stellen nach dem erstellen aber noch vor Beendigung des Durchlaufs getätigt sofern die Benutzer ID die eigentlich hinterlegt sein sollte existiert:
      • Änderung des Beitragserstellers inklusive der Korrekten Gruppenfarbe in den Tabellen:
        • phpbb_posts
        • phpbb_topics

        Sollte wieder erwarten die Benutzer ID leer sein, was durchaus passieren kann da man im ACP auch einen Namen eintragen kann der nicht als Benutzer registriert ist, oder sollte der Benutzer im nachhinein gelöscht sein so wird der Begrüßungsbeitrag dennoch erstellt jedoch ist der Beitragsersteller dann der Benutzer der sich registriert selber.
        Da aber in jedem fall ein Benutzername hinterlegt ist wird im Beitrag selber auch der im ACP angelegte Benutzername im Text eingetragen sofern der entsprechende Platzhalter existiert.
  • Das ACP Modul auf Controller Basis umgestellt da das alte noch für die ganz alte phpbb Version konzipiert war.
  • Im ACP Controller diverse abfragen eingefügt da die Erweiterung durch die Umprogrammierung ein paar Funktionen hinzu bekommen hat.
  • Folgende Funktionen und Änderungen im ACP Modul sind dazu gekommen bzw. haben sich geändert:
    • Der Absender ist jetzt auch (sofern korrekt eingestellt) der Beitragsersteller. Hier für kann man mittels Benutzer Auswahl so wie man es auch bei der Option "Benutzer verwalten" im ACP machen kann den Benutzer durch eine Liste Suchen und Einfügen. Dadurch werden folgende Werte für den Benutzer in der Datenbank hinterlegt welche später für die Bearbeitung des erstellten Willkommens Beitrages benötigt werden. Es ist einfacher diese Daten einmal im ACP zu erstellen als jedes mal beim Beitrag erstellen abzurufen und zu sortieren was man benötigt.

      Folgende Informationen zu dem Ausgewählten Benutzer werden in der Datenbank hinterlegt:
      • Benutzername
      • Benutzer Farbe (Gruppenfarbe)
      • Benutzer ID
    • Dann kann man das Forum in welchem der Beitrag erscheinen soll mittels eines Drop-Down Menus (select) auswählen.
    • Mittels Sprachauswahl kann man Betreff und Text des Beitrages anlegen. Sollte noch kein Text in der Standard-Sprache des Forums installiert sein kann man erstmal nur eben diesen anlegen, auch lässt sich die Funktion erst dann aktivieren.
    • Der Beitragstext lässt sich genau so formatieren wie mit dem normalen Beitrags Editor im Forum.
    • Im ACP ist eine Übersicht über die vorhandenen Einträge aufgeführt.
  • Die Php Version wurde auf 7.1 erhöht
  • Die Extension für Toogle Control Kompatibel gemacht
  • Diverse weitere Code Optimierungen.
Zuletzt geändert von chris1278 am 17.05.2024 20:17, insgesamt 5-mal geändert.
Benutzeravatar
seb81
Mitglied
Beiträge: 64
Registriert: 04.02.2011 09:39
Wohnort: NRW

Re: Automatisches Begrüßungsthema für Neu registrierte Benutzer.

Beitrag von seb81 »

Zum Glück habe ich noch einmal in den Beitrag geschaut. Es ist klasse, dass Chris sich die Sache noch einmal anschaut (er hatte die EXT damals ja schon aus dem Winterschlaf geholt). Das freut mich, besonders weil ich mir vorstellen kann, dass einige mehr von dieser Ext Gebrauch machen könnten oder sich darüber sehr freuen würden. Was die Auswahl des Posters (der den Begrüßungsbeitrag erstellt) angeht: Es wäre natürlich super, wenn das genauso einfach einzustellen wäre wie bei der Auto-PN (eine andere Ext: https://www.phpbb.com/customise/db/exte ... e_welcome/ ). Grundsätzlich kann ich zum Begrüßungsbeitrag noch sagen: So wie die Ext jetzt ist, wird dieser erstellt, wenn der Benutzer sich tatsächlich das erste Mal anmeldet (also wenn er sein Konto per E-Mail freischalten muss und hat, passiert auch nach dem Freischalten erst mal nichts. Er muss sich dann noch anmelden. Dann erst wird automatisch unter seinem Namen der Beitrag erstellt, was ich auch ok finde). Vielleicht hilft die Info ja ein wenig?
Zuletzt geändert von LukeWCS am 05.05.2024 12:16, insgesamt 1-mal geändert.
Grund: Unnötiges Vollzitat entfernt
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2194
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: Automatisches Begrüßungsthema für Neu registrierte Benutzer.

Beitrag von LukeWCS »

@seb81

Erneute moderative Ansage: bitte keine unnötigen Vollzitate! Vollzitat gelöscht.
Möge das Backup mit dir sein. Immer.

Erweiterungen - Infos zur artgerechten Haltung
phpBB Ext Check - Analysesystem für phpBB Erweiterungen (Entwickler Werkzeug)
TomLB
Mitglied
Beiträge: 154
Registriert: 09.11.2019 13:38
Kontaktdaten:

Re: Automatisches Begrüßungsthema für Neu registrierte Benutzer.

Beitrag von TomLB »

Fragen:

Kann man auswählen in welchem Thema der auto Beitrag erstellt wird?

Wie ist das, wenn der "Bot" nur beim 1. Login aktiv wird,
und der Admin im ACP alle Sitzungsdaten löscht,
Ist dann jeder wieder "neu" für den Bot?

Danke an den Umprogrammierer, so eine Ext kann ich gebrauchen :wink:
LG, Tom
Board 3.3.8 | PHP 8.2 | https://www.v-stromforum.de
Benutzeravatar
chris1278
Mitglied
Beiträge: 3562
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: Automatisches Begrüßungsthema für Neu registrierte Benutzer.

Beitrag von chris1278 »

Man kann logischerweise auswählen in welchem forum man die Beiträge erstellen möchte:

[ externes Bild ]

Das mit den Sitzungsdaten ist egal. Weil es wird ja ein Beitrag erstellt der in der Datenbank wie ein normaler Beitrag gespeichert wird. Dieser Bleibt auch dann erhalten. Macht ja sonst keinen Sinn.

Der Beitrag wird aber erst erstellt wenn der Benutzer sich das erste mal nach der Registrierung eingeloggt hat.

Beispiel:

Schritt 1: Der Benutzer registriert sich.

Schritt 2: je nach Variante.

Variante1: Ist die Einstellung Keine Aktivierung (direkter Zugang ohne Prüfung) eingestellt, wird der Benutzer direkt nach erfolgreicher Registrierung ja direkt eingeloggt. Und der Beitrag automatisch im ausgewählten Forum erstellt.

Variante 2: Ist die Einstellung Durch den Benutzer ( Verifizierung durch Email Adresse) eingestellt, muss der Benutzer sich Registrieren und anschließend seinen Account mit der Email Aktivieren. Danach wird sobald er sich einloggt der Beitrag erstellt. Auch hier muss sich der Benutzer mit dem aktivierten Account erst einloggen.

Variante 3: Ist die Einstellung Durch einen Administrator eingestellt, so muss der Benutzer sich auch hier registrieren und der Admin muss diesen Freischalten. Auch hier muss der Benutzer sich dann mit seinem Freigeschalteten Account erst einloggen und dann wird der Beitrag erstellt.

Kann sein das ich das später anders mache und diesen Beitrag mit erstellen des Benutzers kombiniere und nicht mit dem ersten Login. Dazu muss ich aber noch weitere Tests machen.

Ich will erstmal eine Erweiterung draus machen die funktioniert.
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2194
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: Automatisches Begrüßungsthema für Neu registrierte Benutzer.

Beitrag von LukeWCS »

Chris, da du dich jetzt der Sache angenommen hast und an einem Fork arbeitest, ist das Forum "Extension Suche/Anfrage" nicht mehr der richtige Rahmen dafür. Ich werde das Thema jetzt teilen und nach "Extensions in Entwicklung" verschieben. Ich würde dazu ab der folgenden Position abtrennen:

viewtopic.php?p=1427099#p1427099

Dann kannst du Titel und Startbeitrag ja selbst anpassen. Oder willst du das komplette Thema verschoben haben? Letzteres sehe ich aber als weniger sinnvoll an, da es ja erst ab der verlinkten Position um einen Fork geht.
Möge das Backup mit dir sein. Immer.

Erweiterungen - Infos zur artgerechten Haltung
phpBB Ext Check - Analysesystem für phpBB Erweiterungen (Entwickler Werkzeug)
Benutzeravatar
chris1278
Mitglied
Beiträge: 3562
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: Automatisches Begrüßungsthema für Neu registrierte Benutzer.

Beitrag von chris1278 »

Ja du kannst den jetzt abtrennen wie du das vorhast. Ich werde den Beitrag und den Betreff dann anpassen wenn ich die erste version hochlade.

Hier schon mal zwischen schritt:

Eingabe maske im ACP:

[ externes Bild ]

Das ganze sähe dann so aus:

[ externes Bild ]


Mus jetzt noch ein paar Fehler ausmerzen. Und dann noch ein paar editierungs Funktionen und so hinzufügen. Denke bin auf einem Guten weg.
Benutzeravatar
Mike-on-Tour
Supporter
Supporter
Beiträge: 1091
Registriert: 13.01.2020 21:09
Kontaktdaten:

Re: [3.3] CF Welcome Topic Robot (fork)

Beitrag von Mike-on-Tour »

chris1278 hat geschrieben: 05.05.2024 13:36 Mus jetzt noch ein paar Fehler ausmerzen.
Zum Beispiel die String-Eingaben aus dem ACP-Template mittels $this->request->variable('beispiel', '', true) zu übernehmen, damit alle Zeichen außerhalb von ASCII korekt übernommen werden, z.B. die deutschen Umlaute.
Benutzeravatar
chris1278
Mitglied
Beiträge: 3562
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: [3.3] CF Welcome Topic Robot (fork)

Beitrag von chris1278 »

Ja das hab ich schon. Das hatte ich vergessen. ohne das true wandelt ders net richtig um.
Benutzeravatar
chris1278
Mitglied
Beiträge: 3562
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: [3.3] CF Welcome Post Topic (fork)

Beitrag von chris1278 »

So ich hab den Startbeitrag schon mal angepasst. Sobald die Tests und die Sprachpakete fertig sind wird die erste Version ausgerollt.
Antworten

Zurück zu „Extensions in Entwicklung“