Ankündigung

Einklappen
Keine Ankündigung bisher.

Interaktion: Contao Mitglieder und CC

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Interaktion: Contao Mitglieder und CC

    Hallo Zusammen,

    ich bin auf der Suche nach einer Lösung für eine Art Partnerportal - CustomCatalog scheint sich da ganz gut zu eignen. Jetzt wollte ich einmal Fragen, in wieweit man den Katalog mit den Contao internen Mitgliedern verknüpfen kann. Ziele wäre, dass die Partner einen Login haben, über den sie evtl. sogar ihr Profil verwalten können, jedoch nicht direkt "live" veröffentlichen, sondern eine Art Änderungsantrag abschicken und erst wenn der freigegeben wurde, werden die Änderungen veröffentlicht.

    Kann mit CC die Mitgliederfunktion von Contao um eigene Felder/Funktionen erweitert und die Daten dann auch über CC Module gesammelt ausgegeben bzw. gefiltert werden oder liefert CC selbst eine Art Login/User Verwaltung mit?

    Ist eine derartige Umsetzung mit CustomCatalog möglich?

    Danke schonmal und Grüße
    Manuel
    Zuletzt geändert von PROSIS_Marketing; 10.10.2022, 13:44.

  • #2
    Hi Manuel!

    Wir haben CustomCatalog selber für unser Partnerportal verwendet: https://partner.premium-contao-themes.com/

    Mitglieder können sich über das FE-Modul Login von Contao in einen geschützten Bereich anmelden. Also alles Contao Bordmittel.
    Die Daten können im geschützten Bereich mit dem CustomCatalog AddOn Frontend-Editing von den Mitgliedern gewartet werden.

    Es kann also die User-Verwaltung über Contao geschehen.

    P.s.: An dieser Stelle muss ich aber zugeben, dass ich nicht so tief in dieser Materie drinnen bin. Ist schon eine Weile her, dass wir dies realisiert haben. Tim ist hier der richtige CC-Experte. Er ist diese Woche aber noch in Urlaub. Bei Detailfragen kann Tim dir da sicherlich besser weiterhelfen.

    Schöne Grüße
    Tom






    *********************
    Neu: Kostenloser Contao Installer 3.0
    *********************
    Contao und Erweiterungen in wenigen Sekunden laden, installieren und updaten - ohne Composer oder Contao Manager.

    Kommentar


    • #3
      Hi Tom,

      vielen Dank erstmal für die Rückmeldung - das klingt ja soweit ganz gut.
      Sprich mit CC können dann auch die Contao internen Felder für Mitglieder erweitert werden? Wie sieht es z.B. mit Fileuploads von Mitgliedern aus... ist das auch möglich? Weißt du da weiter oder soll ich auf Tim nächste Woche warten, auch im Hinblick auf das "Freigabe vor Veröffentlichung" Thema?

      Liebe Grüße
      Manuel

      Kommentar


      • #4
        Wir haben es andersrum. Die Felder die wir zusätzlich benötigen wie Upload von Dateien, Profildaten usw. sind im Katalog gespeichert. Wir haben hier eine Verknüpfung von Contao Mitglied zu unserem CustomCatalog Partner.

        Ja, sicherlich ist es für weitere Detailfragen besser aufs Tims Rückkehr nächste Woche zu warten.
        *********************
        Neu: Kostenloser Contao Installer 3.0
        *********************
        Contao und Erweiterungen in wenigen Sekunden laden, installieren und updaten - ohne Composer oder Contao Manager.

        Kommentar


        • #5
          Ah okay - habt ihr bzgl. der Interaktion zwischen internen Contao Tabellen und CC (bsp. Members und eigene Felder) Beispiele bzg. Konfigurationshinweise? In der Doku konnte ich dazu nichts finden (nur zum Thema "Neue Tabelle anlegen").

          Kommentar


          • #6
            Nein, aktuell leider nicht.
            *********************
            Neu: Kostenloser Contao Installer 3.0
            *********************
            Contao und Erweiterungen in wenigen Sekunden laden, installieren und updaten - ohne Composer oder Contao Manager.

            Kommentar


            • #7
              Zitat von PROSIS_Marketing Beitrag anzeigen
              Hallo Zusammen,

              ich bin auf der Suche nach einer Lösung für eine Art Partnerportal - CustomCatalog scheint sich da ganz gut zu eignen. Jetzt wollte ich einmal Fragen, in wieweit man den Katalog mit den Contao internen Mitgliedern verknüpfen kann. Ziele wäre, dass die Partner einen Login haben, über den sie evtl. sogar ihr Profil verwalten können, jedoch nicht direkt "live" veröffentlichen, sondern eine Art Änderungsantrag abschicken und erst wenn der freigegeben wurde, werden die Änderungen veröffentlicht.

              Kann mit CC die Mitgliederfunktion von Contao um eigene Felder/Funktionen erweitert und die Daten dann auch über CC Module gesammelt ausgegeben bzw. gefiltert werden oder liefert CC selbst eine Art Login/User Verwaltung mit?

              Ist eine derartige Umsetzung mit CustomCatalog möglich?

              Danke schonmal und Grüße
              Manuel
              CC erlaubt mit seinen eigenen Feldern bestehende Contao Tabellen zu verwalten und zu erweitern. Sprich, neue Felder etc. anzulegen.

              Daraufhin kann CC auch eine Liste mit diesen Daten ausgeben (ganz normale CC-Liste) und kann sein Bandbreite an Filtern etc. anwenden.
              -> Ja, du kannst quasi mit CC eine Mitgliederliste ausgeben, die die Mitgliederdaten aus (tl_member) fährt.

              Hier ist ein Beispiel, wo ich mitgearbeitet habe und dort diese Verknüpfung erstellt habe: https://www.branchenloesung-forst.ch...enznehmer.html
              Sämtliche Daten sind Mitgliederdaten mit allen Rechten, die Contaos Mitglieder erlauben. Die Ausgabe erfolgt via CC.
              http://www.premium-contao-themes.com

              Kommentar


              • #8
                Ich habe jetzt einmal Versucht, die Tabellen wie du beschrieben hast zu verknüpfen, allerdings gibt die CC-Liste keine Contao-internen Felder als Option, sondern nur die über CC angelegten:
                Klicke auf die Grafik für eine vergrößerte Ansicht

Name: tl_member.png
Ansichten: 108
Größe: 39,4 KB
ID: 25984

                Auch im Filter können Felder wie z.B. Firma oder Vorname nicht verwendet werden. Das reguläre Contao Auflistungsmodul stellt jedoch alles zur Verfügung.
                Muss man da noch separat etwas anlegen?

                Bzgl. der "Freigabe" Funktion (also Partner ändert etwas, Änderung soll aber erst nach Freigabe durch uns live gehen) - ist das mit Contao und CC Bordmitteln machbar oder muss man da tiefer reingehen?

                Danke und Grüße

                Kommentar


                • #9
                  Filter können nur für existierende Attribute angewendet werden. Contao-eigene Felder sind für CC unbekannt bzw. für die Filter gibt es keine Grundlage welcher Art das Feld ist.
                  Du kannst das austricksen und Attribute erstellen mit den Alias der Contao-eigenen Felder z.B. "company" = "Firma" usw. Es entstehen dann zwar Dopplungen in der Eingabemaske, aber technisch hast du dann den Grundaufbau.
                  Die Dopplungen kann man im Nachgang über eine DCA config sicher auch kaschieren. Das ganze ist aber schon sehr speziell und übersteigt den möglichen Support hier über das Forum.
                  Zuletzt geändert von Tim; 27.10.2022, 07:11.
                  http://www.premium-contao-themes.com

                  Kommentar


                  • #10
                    Ich hänge mich hier nochmal ran. Wir nutzen auch in der ein oder anderen Installation die CC Tabelle erweitern Möglichkeit, z.B. mit Mitgliedern.
                    Nach wie vor ein Dorn im Auge ist das Datenbank Update in diesem Fall.

                    Hier wird immer vorgeschlagen, die z.B. in der Mitgliedertabelle ergänzten CC-Felder zu löschen. Zumindest wenn über den Contao Manager regulär der Cache geleert wird und die Datenbankprüfung angestoßen wird.
                    Anbei mal ein Screenshot:

                    Ein Falscher Klick und alle Felder werden gelöscht, inkl. Inhalte. Das ist für den Produktiveinsatz mehr als gefährlich.

                    Könntet ihr hier nicht eingreifen und Contao beibringen, dass die Tabelle erweitert wurde?

                    Kommentar


                    • #11
                      Das Thema hatte ich lange mit Prosis am Wickel. Die durch den Manager erstellen dca Dateien umfassen nicht die Daten aus CC und der Manager triggert die Contao-eigenen Hooks nicht, die das Install-Tool z.B. triggert. Hier entsteht die Diskrepanz zwischen normalen Contao / Install-Tool und Manager. Der Manager muss hier nachlegen.

                      Ich habe einen Fix/Workaround (ich weiss gar nicht genau, wie man es nennen soll) dafür in einer kommenden CC Version vorgesehen, in dem für erweiterte Tabellen die DCA Konfiguration hardcodiert als Erweiterung erstellt wird.

                      Bis dahin kann der Manager via dcaconfig besänftigt werden. Hier ein Beispiel für die Felddefintionen einige Felder (Feldnamen natürlich tauschen):

                      Code:
                      // CC default
                      
                      $GLOBALS['TL_DCA']['tl_member']['config']['sql']['keys']['id'] = "primary";
                      $GLOBALS['TL_DCA']['tl_member']['config']['sql']['keys']['pid'] = "index";
                      $GLOBALS['TL_DCA']['tl_member']['config']['sql']['keys']['tstamp'] = "index";
                      $GLOBALS['TL_DCA']['tl_member']['config']['sql']['keys']['sorting'] = "index";
                      $GLOBALS['TL_DCA']['tl_member']['fields']['id']['sql'] = "int(10) unsigned NOT NULL auto_increment";
                      $GLOBALS['TL_DCA']['tl_member']['fields']['pid']['sql'] = "int(10) unsigned NOT NULL default '0'";
                      $GLOBALS['TL_DCA']['tl_member']['fields']['tstamp']['sql'] = "int(10) unsigned NOT NULL default 0";
                      $GLOBALS['TL_DCA']['tl_member']['fields']['sorting']['sql'] = "int(10) unsigned NOT NULL default '0'";
                      $GLOBALS['TL_DCA']['tl_member']['fields']['ptable']['sql'] = "varchar(64) NOT NULL default ''";
                      
                      // eigene CC Felder
                      $GLOBALS['TL_DCA']['tl_member']['fields']['textfeld1']['sql'] = "varchar(255) NOT NULL default ''";
                      $GLOBALS['TL_DCA']['tl_member']['fields']['textfeld2']['sql'] = "varchar(255) NOT NULL default ''";
                      $GLOBALS['TL_DCA']['tl_member']['fields']['select1']['sql'] = "varchar(64) NOT NULL default ''";
                      $GLOBALS['TL_DCA']['tl_member']['fields']['textfeld3']['sql'] = "varchar(255) NOT NULL default ''";
                      Zuletzt geändert von Tim; 22.12.2022, 07:44.
                      http://www.premium-contao-themes.com

                      Kommentar


                      • #12
                        Hallo Tim,

                        vielen Dank für den künftigen Workaround.
                        Ich denke auch, dass wir uns hier nicht auf den Manager verlassen dürfen.
                        Dafür ist es zu riskant im Live Betrieb.

                        Ich teste es mal über die dcaconfig und gebe Bescheid.

                        Kommentar


                        • #13
                          Der Manager muss in gleichem Maße Contaos Hooks respektieren, wie das Install-Tool. Das wird sonst für viele Erweiterungen ein Problem geben.
                          http://www.premium-contao-themes.com

                          Kommentar


                          • #14
                            Alles klar, hat funktioniert mit contao/dca/tl_member.php und den entsprechenden Einträgen!

                            Kommentar


                            • #15
                              Hi Tim,

                              aus irgendeinem Grund ist die letzte Nachricht hier wieder verschwunden, deshalb nochmal:

                              Bei Verwendung des geodata Moduls findet man in der generierten DCA nur einen Eintrag für 'geodata':

                              PHP-Code:
                              $GLOBALS['TL_DCA']['tl_member']['fields']['geodata']['sql'] = "varchar(255) NOT NULL default ''"
                              Es fehlen aber Einträge für geodata_country, geodata_zipcode, geodata_city, geodata_street.

                              Kommentar

                              Lädt...
                              X