Contao-Camp 2024
Ergebnis 1 bis 11 von 11

Thema: Events, suche Hilfe nach misslungener Installation von Erweiterung

  1. #1
    Contao-Fan
    Registriert seit
    31.01.2016.
    Ort
    Kaufbeuren
    Beiträge
    473

    Standard Events, suche Hilfe nach misslungener Installation von Erweiterung

    Hallo zusammen,

    ich habe eine Erweiterung gesucht mit der man bei den Events einzelne Tage bei wiederkehrenden Wiederholungen ausschließen kann. Bis auf die Erweiterung kmielke/calendar-extended-bundle habe ich nichts entsprechendes finden können. Aber diese Installation der Erweiterung ging gründlich daneben und nicht nur das, jetzt habe ich auch noch massive Probleme unter den Events. Ich habe Contao 4.4.39 und wollte hier calendar-extended-bundle 1.0.6 installieren.

    Habe mal nachfolgend meine einzelnen Schritte wie ich vorgegangen bin aufgeführt:
    - Installation von calendar-extended-bundle durchgeführt.
    - Nach der Installation waren meine eigenen DCA-Felder in 6-facher Ausfertigung vorhanden.
    - Danach die DCA-Felder deinstalliert und wieder neu installiert.
    - Auch das brachte keine Veränderung.
    - Danach DCA-Felder und calendar-extended-bundle deinstalliert.
    - DCA-Felder neu installiert ohne zuvor calendar-extended-bundle wieder installiert zu haben.
    - Seit diesem Zeitpunkt lassen sich keine DCA-Felder mehr unter den Events einbinden.

    Was kann ich bitte tun, damit ich zumindest wieder meine DCA-Felder einbinden kann. Gibt es hierfür eine Lösung?
    Wäre sehr dankbar, wenn mir jemand dazu entsprechende Tipps und Infos geben könnte.


    Gruß
    Thomas

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Zitat Zitat von Thomasge Beitrag anzeigen
    - Nach der Installation waren meine eigenen DCA-Felder in 6-facher Ausfertigung vorhanden.
    Was genau meinst du damit?

  3. #3
    Contao-Fan
    Registriert seit
    31.01.2016.
    Ort
    Kaufbeuren
    Beiträge
    473

    Standard

    Also ich habe 4 DCA-Felder zur Texteingabe und 1 Feld als Checkbox erstellt. Die 4 Textfelder wurden unter den Eventdetails zwischen Veranstaltungsort und Teasertext sowie die Checkbox unter dem Teasertext eingebunden. Das alles hat bis zur Installation von der Erweiterung calendar-extended-bundle wunderbar funktioniert.
    Nach der Installation der Erweiterung waren zusätzlich zu meinen 5 DCA-Feldern, plötzlich die 4 Textfelder nochmals 5x untereinander unter der Checkbox dargestellt. Die Checkbox selbst war nur 1x zu sehen.
    Danach habe ich die Datei tl_calendar_event.php vom Server gelöscht, den Cache im Contao-Manager neu aufgebaut und die Datenbankeinträge mittels Installtool aktualisiert. In den Events kontrolliert ob die DCA-Felder noch dargestellt werden, waren sie nicht.
    Danach die Datei tl_calendar_event.php auf den Server hochgeladen, Cache neu aufgebaut und die Datenbankeinträge aktualisiert. In den Events kontrolliert, ob die 5 DCA-Felder wieder da waren. Sie wurden dargestellt, aber auch wieder zusätzlich 5x meine 4 Textfelder.
    Danach die Datei tl_calendar_event.php vom Server gelöscht, Cache neu aufgebaut und die Datenbankeinträge aktualisiert. Die Erweiterung im Contao Manage deinstalliert, Cache neu aufgebaut und die Datenbankeinträge aktualisiert.
    Danach die Erweiterung wieder im CM installiert, Cache neu aufgebaut und die Datenbankeinträge aktualisiert. Kontrolliert ob alles geklappt hat. Danach die Datei tl_calendar_event.php wieder auf den Server hochgeladen und den Cache neu aufgebaut. Im Installtool wurden nun keine Datenbankeinträge zur Aktualisierung mehr gefunden und die 5 DCA-Felder wurden auch nicht in den Events angelegt.
    Was könnte hier das Problem sein und wie kann ich das Installtool dazu bringen, dass man Datenbankeinträge für DCA-Felder wieder anlegen kann? Bei meinen Recherchen konnte ich dazu nichts passendes finden.
    Eigentlich würde die Erweiterung genau das machen, was ich mir gewünscht hatte, aber bei diesem massiven Problem nutzt es nicht, dies weiter installiert zu haben. Gibt es dafür eine Alternative, mit der man einzelne Tage vom den Serienterminen ausschließen kann? Aber vor allem wie kann ich Contao dazu bringen, dass DCA-Felder wieder angelegt werden?
    Danke!

  4. #4
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    Ohne deinen Code zu kennen ist es unmöglich die Fehlerursache zu identifizieren.

  5. #5
    Contao-Fan
    Registriert seit
    31.01.2016.
    Ort
    Kaufbeuren
    Beiträge
    473

    Standard

    Ich denke nicht, dass an meinem Code etwas nicht stimmt denn vor der Installation der Erweiterung calendar-extended-bundle hat ja noch alles noch einwandfrei funktioniert. Vielmehr dürfte bei der Installation von der Erweiterung etwas schiefgelaufen sein und dadurch jetzt Contao dieses Fehlverhalten hat.
    Hier einmal mein Code für die DCA-Felder:
    PHP-Code:
    <?php

    // Palettes
    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default'] = str_replace
    (
        
    'location',
        
    'location,actiontitle',
        
    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default']
    );

    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default'] = str_replace
    (
        
    'actiontitle',
        
    'actiontitle,localplace',
        
    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default']
    );

    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default'] = str_replace
    (
        
    'localplace',
        
    'localplace,membership',
        
    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default']
    );

    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default'] = str_replace
    (
        
    'membership',
        
    'membership,memberstrive',
        
    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default']
    );

    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default'] = str_replace
    (
        
    'teaser',
        
    'teaser,detailinfo',
        
    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default']
    );


    // Fields
    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['actiontitle'] = array
    (
        
    'label'                   => &$GLOBALS['TL_LANG']['tl_calendar_events']['actiontitle'],
        
    'exclude'                 => true,
        
    'inputType'               => 'text',
        
    'eval'                    => array('mandatory'=>true'maxlength'=>255'tl_class'=>'long'),
        
    'sql'                     => "varchar(255) NOT NULL default ''"
    );

    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['localplace'] = array
    (
        
    'label'                   => &$GLOBALS['TL_LANG']['tl_calendar_events']['localplace'],
        
    'exclude'                 => true,
        
    'inputType'               => 'text',
        
    'eval'                    => array('maxlength'=>255'tl_class'=>'long'),
        
    'sql'                     => "varchar(255) NOT NULL default ''"
    );

    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['membership'] = array
    (
        
    'label'                   => &$GLOBALS['TL_LANG']['tl_calendar_events']['membership'],
        
    'exclude'                 => true,
        
    'inputType'               => 'text',
        
    'eval'                    => array('mandatory'=>true'maxlength'=>255'tl_class'=>'long'),
        
    'sql'                     => "varchar(255) NOT NULL default ''"
    );

    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['memberstrive'] = array
    (
        
    'label'                   => &$GLOBALS['TL_LANG']['tl_calendar_events']['memberstrive'],
        
    'exclude'                 => true,
        
    'inputType'               => 'text',
        
    'eval'                    => array('mandatory'=>true'maxlength'=>255'tl_class'=>'long'),
        
    'sql'                     => "varchar(255) NOT NULL default ''"
    );

    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['detailinfo'] = array
    (
        
    'label'                   => &$GLOBALS['TL_LANG']['tl_calendar_events']['detailinfo'],
        
    'exclude'                 => true,
        
    'inputType'               => 'checkbox',
        
    'eval'                    => array('submitOnChange'=>true'tl_class'=>'long'),
        
    'sql'                     => "char(1) NOT NULL default ''"
    );

    ?>

  6. #6
    Contao-Nutzer
    Registriert seit
    29.03.2012.
    Beiträge
    62

    Standard

    Versuche mal deine Felder an einen anderen Ort zu platzieren. calendar_extended ersetzt auch die "location"

    Etwa so:
    PHP-Code:
    // Palettes 
    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default'] = str_replace 

        
    '{details_legend}'
        
    'actiontitle,{details_legend}'
        
    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['default'
    ); 
    ... 

  7. #7
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Verwende den PaletteManipulator.

  8. #8
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    Du ersetzt die Zeichenkette "location", egal ob es nun ein eigenes Feld ist oder Teil eines anderen Feldes (z.B. "location_name"). Dadurch entstehen die vielen Einfügungen. Warum du deine Felder nicht auf einmal einfügst, sondern jedes mal ein eingefügtes Feld wieder suchst und ersetzt bleibt mir schleierhaft.

    Wenn du den PaletteManipulator nutzt, wie von Spooky empfohlen, umgehst du das Problem.

    Hier der Auszug des DCAs der Calendar Extended Bundles, wo du erkennen kannst, dass es mehrere Locationfelder gibt:
    https://github.com/kmielke/calendar-...dar_events.php

  9. #9
    Contao-Fan
    Registriert seit
    31.01.2016.
    Ort
    Kaufbeuren
    Beiträge
    473

    Standard

    Danke für die Infos. Was in meinem vorletzten Beitrag vielleicht nicht so richtig herübergekommen ist das, dass mein derzeitiges Hauptproblem noch wo ganz anders liegt. Da ich angenommen hatte, dass bei der Installation etwas schiefgelaufen war, hatte ich die Erweiterung auch noch einmal deinstalliert. Seit diesem Zeitpunkt werden mir im Installtool keine Datenbankeinträge mehr angezeigt, wenn zusätzlicher Code in der Datei tl_calendar_event.php hinzugefügt wurde. Eine Neuinstallation der Erweiterung brachte auch keine Veränderung. Was kann ich nun tun, damit die Datenbankeinträge im Installtool angezeigt werden? Ohne die Aktualisierung der Datenbank, bekomme ich in den Events die DCA-Felder ja nicht eingebunden.

  10. #10
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Du musst bei der Fehlersuche strukturierter vorgehen. Daher arbeiten wir auch einzeln deine Probleme ab.

  11. #11
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.172

    Standard

    Hallo,

    erstmal ein Danke an alle, die hier unterstützen.

    @Thomas
    ich sehe hier kein Fehler in der Erweiterung. Die Erweiterung erweitert den Contao Standardkalender, und ist nicht immer kompatible mit anderen Erweiterungen, die das auch machen, bzw. sich mit den Events beschäftigen, wie z.B. Tags. Es kann durchaus zu Problemen führen, obwohl ich sowas hier noch nie gehört habe.
    Ich fürchte aber, dass ich im speziellen dir da nicht helfen kann, weil es ja jetzt um die Bereinigung deines Systems geht.
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •