Contao-Camp 2024
Ergebnis 1 bis 32 von 32

Thema: Integration Fullcalendar ?

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

    Standard Integration Fullcalendar ?

    Hallo Community,

    ich habe darüber nachgedacht, das jQuery Fullcalendar Plugin in calendar_extended zu integrieren.

    Es gibt zwar schon eine Erweiterung, die die Nutzung des Plugins in Contao erleichtert, aber das reicht mir so nicht.

    Vorgestellt habe ich mir folgendes:
    - ein FE Modul, über das der Fullcalendar konfiguriert wird.
    - verschieben von Events
    - bearbeiten von Events (möglicherweise nicht alle Felder)
    - erstellen von Events (möglicherweise nicht alle Felder, Nachbearbeitung im BE?)

    Aber ich muss mir noch Gedanken machen, wie ich da vernünftig mit den Wiederholungen umgehe, wie sie calendar_extended bietet.

    Was haltet ihr davon?

    Danke
    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  2. #2
    Contao-Nutzer
    Registriert seit
    08.02.2013.
    Beiträge
    81

    Standard

    super super
    ist genau was ich brauche
    schöne grüße manoelo

  3. #3
    AG Pressearbeit
    Community-Moderator
    Buchautor 'Contao für Webdesigner'
    Avatar von planepix
    Registriert seit
    05.06.2009.
    Ort
    Stuttgart
    Beiträge
    6.464
    Partner-ID
    107
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Kester,

    Daten aus einem Google-Kalender auch optisch besser in eine Website zu integrieren, hat mit dieser Lösung sicher etwas.
    ---------------------------------
    Beste Grüße planepix
    Contao für Webdesigner (Website), Twitter: @contaowebdesign
    weitzeldesign
    Contao-Sprechstunde
    Contao Schulungen: https://www.weitzeldesign.com/cms-co...chulungen.html
    Contao Jahrbuch: www.contao-jahrbuch.de
    Contao Agenturtag: www.contao-agenturtag.de
    Contao Stammtisch Stuttgart: www.contao-stammtisch-stuttgart.de
    Contao 4 Erfahrungen als Gitbook: https://app.gitbook.com/@planepix/s/...-mit-contao-4/
    Contao 4 & Manager Hosterhinweise: https://github.com/contao/contao-manager/wiki

    Schon wieder ein Update?
    Glücklich sind die, die den Wert erkennen – und wertschätzen.
    „Muss man machen wie beim Zahnarzt. Der bestraft einen auch mit hohen Rechnungen wenn man die Pflege vernachlässigt.”

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

    Standard

    Moin Moin,

    hier mal ein kleiner Status zum Thema.

    Es gibt ein Modul mit einem entsprechenden Template, dass die Darstellung des fullcalendar macht. Die fullcalendar Konfiguration soll mal über das Modul gesteuert werden. Man kann aber alles im Template machen.

    Was bisher klappt:
    - laden der Events via Ajax
    - verschieben der Events (Datum)
    - vergrößern/verkleinern der Events (Zeit)

    Wo ich dran bin:
    - editieren von Events

    Dazu habe ich mir folgendes überlegt.
    Für das Editieren der Events muss ein Formular erstellt werden, dass die Felder aus der Tabelle tl_calendar_events enthält, die geändert werden sollen. Alle Felder müssen den Präfix edit_ haben, denn nur die werden berücksichtigt. Das Formular kann im Modul gewählt werden, so dass man verschiedene Formulare für verschiedene Zwecke erstellen kann. Das Formular wird im Template angegeben.

    PHP-Code:
    <div id="event_formular" style="display:none;">
        <?php echo $this->event_formular?>
    </div>
    Bei Klick auf ein Event werden die Event-Daten aus der DB geladen und an das Formular übergeben. Es werden nur die Felder berücksichtigt, die den Präfix haben.

    Was ist noch offen:
    Das speichern der Events...

    Ein ganz großes Fragezeichen sind die Wiederholungen. Möglicherweise werden die in der ersten Phase ignoriert...

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  5. #5
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    Hallo in die Runde,
    hallo Kester,

    ich finde die Idee hervorragend und beobachte diese Idee mit großer Spannung.

    Seit langer Zeit verwende ich den fullcalendar als bloßes Plugin außerhalb von Contao.

    Im Contao habe ich das Modul von Martin Kozianka seit längerem in Verwendung. Leider hat das so seine Eigenheiten (um es mit Kester zu sagen: es reicht mir so nicht...) und meine Kontaktversuche zu Herrn Kozianka bezüglich mancher Eigenheiten im Code sind bis dato vergeblich gewesen. Also musste ich das Modul umschreiben. Das macht mir aber bei den Updates viel Mühe. Dann muss man wieder alles überarbeiten.

    Von daher finde ich es eine hervorragende Idee, fullcalendar in calendar_extended einzubauen. Dazu hätte ich auch viele Vorschläge und Wünsche .

    Ich möchte Dich also ermutigen Kester!

    Ich selbst habe bereits die unten genannten Funktionen realisiert:
    • laden von Events via AJAX (wobei nur das sichtbare Zeitfenster verwendet wird um Bandbreite zu reduzieren)
    • verschieben und resizen von Events
    • externes Drag & Drop
    • erfassen und editieren von Events (via jquery-ui dialog)
    • generieren von JSON-Antworten für periodische Events (wöchentlich, jährlich)

    und etwas abseitige Anforderungen (die möglw. nicht jeden interessieren)...
    • generieren von kirchlichen beweglichen Feiertagen (Advent, Weihnachtstage, Osterfestkreis, Pfingsten, Johanni etc.) bis zum Jahr 2037 auf der Basis der Gaussschen Osterformel und der beiden kirchlichen Festkreise (für mich von Bedeutung wegen der von mir betreuten kirchlichen Websites)
    • statische weltliche Weiertage, wie 1. Mai oder 3.Oktober etc.

    Was noch fehlt sind die
    • landesspezifischen Schulferien...
    • Google-Calendar einbinden


    Zyklische Events haben mich auch zum knobeln angeregt. Man kann das aber, seitdem fullcalendar mit moment rechnet, durch array_intersect super lösen. array_intersect liefert Termin-Arrays als Schnittmenge für das Anzeigefenster (also den vom fc gerade gezeigten Datumsbereich) sehr einfach mit wenigen Codezeilen. Array_intersect hat noch darüber hinaus den Vorteil, dass man durch die Schnittmenge und die Größe des Arrays einen Zähler für die n-te Wiederholung ableiten kann, der dann zeigt, das wievielte Mal beispw. der Sohn in der kommenden Woche seinen Geigenunterricht hat .

    Leider habe ich keine Zeit, aus meinem Code ein Contao-Mudul zu erstellen. Zudem habe leider ich auch keine Erfahrung damit, wie man beispielsweise ein modifiziertes Modul (z.B. kozianka/fullcalendar) wieder bei github einchecken könnte. Daher - man möge mir verzeihen - schreibe ich dieses Posting hier.

    Mein Code erfüllt wahrscheinlich keine hohen Standards, aber ich kann ihn gern zur Verfügung stellen, wenn Interesse besteht? Zumindest kann man dann den Code nach einer Überarbeiitung (Audit) woanders verwenden? Möglw. auch im calendar_extended? Dann spart man vielleicht etwas Zeit und Mühe??

    Wäre das sinnvoll?

    Herzliche Grüße vom
    Theo

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

    Standard

    Hallo Theo,

    danke für die Info. Einiges habe ich da ja auch in Arbeit, und Zeit ist in der Tat so eine Sache. Wenn du möchtest, kannst du mit deinen Code per PN schicken, und ich schaue, was ich davon gut in der Erweiterung verwenden kann. Wenn das für ich ok. Aber du hast es ja angeboten.

    Evtl. habe ich der kalten dunkleren Jahreszeit etwas mehr Zeit dafür.

    Danke
    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  7. #7
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    Hallo Kester,

    bitte um Entschuldigung ob meiner verzögerten Antwort. Ich bin gerade dabei alles relevante in ein Zip zu packen. Dann schicke ich es Dir zu! Also es dauert noch ein zwei Tage...

    Herzliche Grüße
    vom Theo

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

    Standard

    Ist kein Problem. [emoji106][emoji16]
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

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

    Standard Integration Fullcalendar ?

    Hallo an alle,

    ich habe eine erste Version, die ihr euch zu Testzwecken mal ansehen könnt. Ich würde mich über Feedback freuen.
    Die Version liegt im Github unter: https://github.com/kmielke/calendar_extended, ist aber noch nicht final.

    Was geht:
    - Fullcalendar Module anlegen
    - aktuell können nur Events ohne Wiederholungen bearbeitet werden
    - Templates für Contao und Google Calendar. Für Google Calendar bitte der Fullcalendar Doku folgen

    Die Bearbeitung sieht aktuell so aus, dass Events ohne Wiederholungen im Fullcalendar verschoben und verkleinert, bzw. vergrößert werden können. Das ganze als angemeldeter FE User.

    Für eine evtl. manuelle Installation fehlender Komponenten bitte einfach in die composer.json schauen.

    Bin mal gespannt.

    Gruß Kester
    Geändert von kmielke (14.12.2016 um 16:07 Uhr)
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  10. #10
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    Hallo Kester!

    also ich bin noch nicht so firm mit der Entwicklung. Ich habe versucht, calendar_extended jetzt über die Paketverwaltung unter Contao 3.5.19 zu installieren und dort die (ich nehme an) soeben eingecheckte 3.5.x-dev von heute 14:39 Uhr. Das gelingt mir so nicht. Der Composer der Paketverwaltung sagt, es gibt Fehler. Das Modul kann so nicht installiert werden.

    Ich hoffe, es ist nicht unhöflich, diese Anfängerfrage zu stellen: Wie kann ich das Paket noch installieren? Einfach kopieren??

    Ich nehme erstmal an, es ist mein Fehler und nichts im Paket.

    Grüße vom
    Theo

    Composer sagt:
    screenshot-development.domain.de 2016-12-14 16-40-46.png
    Geändert von theobald (14.12.2016 um 16:45 Uhr)

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

    Standard

    Schaue ich mir morgen mal an.

    Alternative: gehe in dein Contao Root Verzeichnis.

    composer require bower-asset/jquery-ui
    und
    composer require bower-asset/fullcalendar

    Und dann das ZIP aus dem Github im Modules Ordner entpacken.

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  12. #12
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    ok - kurze Rückmeldung...
    composer require bower-asset/jquery-ui
    geht bei mir nicht, bower und npm sind bei mir ohnehin nicht installiert. Was geht ist in

    /domain.de/composer/

    Code:
    php composer.phar require bower-asset/jquery-ui
    das ergibt

    Code:
      [InvalidArgumentException]
      Could not find package bower-asset/jquery-ui at any version for your minimum-stability (dev). Check the package spelling or you
      r minimum-stability
    ZIP aus dem github runterladen und entpacken geht. Fullcalendar Module anlegen geht auch. DB-update ist ok. Am Frontend bekomme ich dann beim rendern des Moduls:

    Code:
    Warning: filemtime(): stat failed for /www/htdocs/usrxxx/development.xx.de//vendor/bower-asset/jquery-ui/themes/ui-lightness/jquery-ui.min.css in system/modules/core/library/Contao/Controller.php on line 822
    
    #0 [internal function]: __error(2, 'filemtime(): st...', '/www/htdocs/w00...', 822, Array)
    #1 system/modules/core/library/Contao/Controller.php(822): filemtime('/www/htdocs/w00...')
    #2 system/modules/core/classes/FrontendTemplate.php(102): Contao\Controller::replaceDynamicScriptTags('...')
    #3 system/modules/core/pages/PageRegular.php(190): Contao\FrontendTemplate->output(true)
    #4 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #5 index.php(20): Contao\FrontendIndex->run()
    #6 {main}
    
    Fatal error: Uncaught exception Exception with message File /vendor/bower-asset/jquery-ui/themes/ui-lightness/jquery-ui.min.css does not exist thrown in system/modules/core/library/Contao/Combiner.php on line 134
    
    #0 system/modules/core/library/Contao/Controller.php(825): Contao\Combiner->add('/vendor/bower-a...', false, NULL)
    #1 system/modules/core/classes/FrontendTemplate.php(102): Contao\Controller::replaceDynamicScriptTags('...')
    #2 system/modules/core/pages/PageRegular.php(190): Contao\FrontendTemplate->output(true)
    #3 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #4 index.php(20): Contao\FrontendIndex->run()
    #5 {main}
    /vendor/ gibts doch eigentlich nur im composer-verzeichnis. Dort ist der Namensraum kmielke aber nicht drin.

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

    Standard

    die jQuery-iu Komponenten werden nur für den Dialog-Kram verwendet, den ich für das Bearbeiten der Events nutzen will, der aber noch nicht wirklich "aktiv" ist. Nimm die Sachen mal aus dem Template.

    $GLOBALS['TL_USER_CSS'][] = '/vendor/bower-asset/jquery-ui/themes/ui-lightness/jquery-ui.min.css|static';
    $GLOBALS['TL_JAVASCRIPT'][] = '/vendor/bower-asset/jquery-ui/jquery-ui.min.js|static';

    Dann sind die zumindest schon mal weg.

    Gruß
    Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  14. #14
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    ok - läuft soweit ...

    habs nicht im Template auskommentiert, sondern den Baum in /vendor/bower-asset/* nachgebaut. Die Sourcen (jquery-ui, moment etc.) hatte ich noch vorrätig...
    Ich sehe nun den fullcalendar. Wird alles soweit korrekt dargestellt.
    Ich bekomme aber z.Zt. noch keine Events angezeigt (Events sind vorhanden...), obwohl ein XHR POST gesendet wird - leider kommt keine Antwort.
    Bin jetzt noch nicht weiter gekommen. Habe die Klassen und die DCAs mal angesehen, aber leider auf die Schnelle keinen Code gefunden, der den Request 'fetchEvents' verarbeitet...

    Aber Danke! Scheint soweit zu funktionieren!

    Viele Grüße.
    Theo

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

    Standard

    Hallo Theo,

    ich habe noch was geändert. Ich habe die Zuordnung von CSS und JS aus dem Template genommen, und mache das jetzt im Modul. Und ich habe die nötigen Sourcen jetzt im eigenen assets Ordner untergebracht. Das Installieren von Abhängigkeiten ist also nicht mehr nötig.

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  16. #16
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    Hallo Kester,

    kurze Rückmeldung. Installation läuft fehlerfrei durch. Leider sehe ich meine Events noch nicht im fullcalendar. Hatte aber leider auch noch keine Zeit, nochmals nach der Ursache zu suchen.

    Herzliche Grüße.
    Theo

  17. #17
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    Hallo Kester,

    also jetzt habe ichs hin bekommen...

    ersetzt man im Template cal_fc_default.html5

    Code:
    // Fullcalendar events
    events: {  
      url: '<?php echo $this->url; ?>',
      type: 'POST',
      data: {type : 'fetchEvents'},
      error: function() {
        alert('there was an error while fetching events!');
      }
    },
    durch

    Code:
    eventSources: [
      {
         url:   window.location,
         type:  'POST',
         data:  {
           type: 'fetchEvents',
           REQUEST_TOKEN: "<?php echo REQUEST_TOKEN; ?>",
        },
        error: function() {
          alert('Beim Laden der Daten ist ein Fehler aufgetreten!');
        },
      }
    ],
    bekommt man die Events alle zu sehen...

    Vor allem ist das REQEST_TOKEN beim Contao wichtig. Auch beim XHR, sonst bekommt man keine Antwort vom Server.

    Herzliche Grüße vom
    Theo

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

    Standard

    Hallo in die Runde,

    hatte sonst noch jemand die Möglichkeit das Thema Fullcalendar mal anzusehen, und kann schon Feedback geben? Das wäre klasse...

    Vielen Dank
    Allen schöne Weihnachten und einen guten Rutsch ins neue Jahr.

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  19. #19
    AG Pressearbeit
    Community-Moderator
    Buchautor 'Contao für Webdesigner'
    Avatar von planepix
    Registriert seit
    05.06.2009.
    Ort
    Stuttgart
    Beiträge
    6.464
    Partner-ID
    107
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Kester,

    mache gerne über die freien Tage eine Installation und gebe dann Rückmeldung. Danke für deine Arbeit -. nicht nur an dieser Erweiterung! Auch dir angenehme Festtage.
    ---------------------------------
    Beste Grüße planepix
    Contao für Webdesigner (Website), Twitter: @contaowebdesign
    weitzeldesign
    Contao-Sprechstunde
    Contao Schulungen: https://www.weitzeldesign.com/cms-co...chulungen.html
    Contao Jahrbuch: www.contao-jahrbuch.de
    Contao Agenturtag: www.contao-agenturtag.de
    Contao Stammtisch Stuttgart: www.contao-stammtisch-stuttgart.de
    Contao 4 Erfahrungen als Gitbook: https://app.gitbook.com/@planepix/s/...-mit-contao-4/
    Contao 4 & Manager Hosterhinweise: https://github.com/contao/contao-manager/wiki

    Schon wieder ein Update?
    Glücklich sind die, die den Wert erkennen – und wertschätzen.
    „Muss man machen wie beim Zahnarzt. Der bestraft einen auch mit hohen Rechnungen wenn man die Pflege vernachlässigt.”

  20. #20
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    Hallo Kester,
    hallo in die Runde,

    ich habe Deine Erweiterung jetzt noch zwei Mal unter 3.5.20 installiert. Davon auf einem System mit stark modifizierter Veranstaltungsverwaltung. Auf beiden Systemen läuft die Erweiterung einwandfrei. Lediglich die Farben kann ich nicht einstellen. Hab die Ursache aber noch nicht debugt.

    Wenn Bedarf besteht, würde ich auch kleinere Zuarbeiten ausführen ... dann vielleicht via PM Bescheid geben?!

    Außerdem (wenn ich mir was wünschen dürfte - es ist ja Weihnachtszeit - ich bitte, das nicht als Dreistigkeit aufzufassen...) sähe ich gern meinen Feiertagskalender (für die in Europa gängigen Feiertage Ostern, Pfingsten, Advent, Weihnachten etc.), den ich Dir schon mal per PM geschickt hatte (vielleicht langfristig?) in der Erweiterung. Natürlich würde ich meinen "Wurschtelcode" nochmal nach den Regel der Kunst überarbeiten. Der Code (die Klasse) selbst ist aber recht klein und dürfte nicht so ins Gewicht fallen. Mann könnte ja die Feiertage (wer sie nicht möchte) über eine Checkbox abschalten. Der Vorteil besteht darin, dass man eben für die nächsten 100 Jahre die Feiertage nicht eintragen muss, sondern berechnet bekommt. Das sehe ich sogar als großen Vorteil.

    Ist aber nur ein vorsichtiger Vorschlag...

    Ich wünsche ebenfalls frohe Festtage und einen guten Rutsch.

    Viele Grüße.
    Theo

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

    Standard

    Hallo Theo, danke für dein Feedback. Bin am 27. wieder da und schaue mir das an.
    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  22. #22
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    Hallo Kester,

    ich habe nochmal in den Code geschaut - das Problem mit den Kalender-Farben befindet sich in modules\ModuleFullCalendar.php ab Zeile 85ff. Dort werden bg_color und fg_color aus der DB geholt und auf ein Array namens $this->calConf[$cal][] gemappt. Das Array wird dann jedoch nicht ins Template übergeben. Im Template ist dazu auch noch nichts vorgesehen. Ich habs mal "eingebastelt" - nur um zu schauen, wo das hin führt.

    Ich selbst bekomme dabei aber keine logisch saubere Lösung, da fullcalendar seine Farben entweder per EventSource oder per SingleEvent verarbeitet.

    Da aber das PHP-Script auf dem Server nur eine (einzige) JSON-Source aus der Sicht des fullcalendar darstellt und in dieser Source alle Kalender zusammengefasst sind, kann man die Farbe nicht (sauber) an die Source binden. Es wäre dann vielleicht sogar sinnvoller, ein EventSources-Array an das Template zu übergeben und pro Contao-Kalender eine EventSource zu generieren. Dann könnte jeder Contao-Kalender (also jeder Datensatz in tl_calendar) eine eigene Farbe und opacity haben.

    Oder man müsste die Farben ab Zeile 369 per SingleEvent in die $json_events[] schreiben...

    Soweit meine Überlegungen...

    Grüße vom
    Theo

  23. #23
    Contao-Nutzer
    Registriert seit
    13.07.2013.
    Ort
    Nordsachsen
    Beiträge
    130

    Standard

    Hallo in die Runde,

    ich habe jetzt nochmal nach einer Lösung für die Farben gesucht. Das Ergebnis sieht bei mir so aus:
    screenshot-development.domain.de 2016-12-26 22-36-36.png
    Dabei sind mir noch diese Dinge aufgefallen:

    1. Die fullcalendar-initialisierung enthält (unter anderem) noch nicht die beiden Optionen
    Code:
    slotLabelFormat: 'HH:mm',
    timeFormat: 'HH:mm',
    weil die noch fehlen, wird die Uhrzeit der Veranstaltungen (für den deutschen Sprachraum) etwas ungewöhnlich ausgegeben...

    2. Irgendetwas stimmt noch nicht mit dem css vom fullcalendar. Auf den produktiven Sites, wo ich Martin Koziankas fullcalendar - und auch dort, wo ich den fullcalendar 3.0.1 auf dem Raspi ohne Contao verwende, überlappen die Termine nicht. Wie man im Screenshot sieht, verdecken sie sich dabei gegenseitig, wenn sie lange Titel haben...

    3. Zu Testzwecken habe ich mal die eventSources auf einen Request pro Kalender umgestellt und meine Klasse zur Erzeugung der Feiertage einfach in classes\EventsExt implementiert. Das klappt auf Anhieb. Die Feiertage werden korrekt angezeigt (siehe screenshot). Dazu generiere ich ein zusätzliches Array ($arrSources[]) für das Template und ersetze damit im Template cal_fc_default.html5 folgendes
    PHP-Code:
    // Fullcalendar events
    eventSources: [<?php foreach($this->eventSources as $eventSource) { echo $eventSource; }  ?>],
    das geht bestimmt noch eleganter mit implode()...

    im ModuleFullcalendar.php Z.114ff. habe ich folgendes ergänzt
    PHP-Code:
    // Get the background and foreground colors of the calendars
    foreach (array_merge($this->cal_calendar$this->cal_holiday) as $cal) {

      
    $objBG $this->Database->prepare("select title, bg_color, fg_color from tl_calendar where id = ?")->limit(1)->execute($cal);

      
    $this->calConf[$cal]['calendar'] = $objBG->title;
              
      if (
    $objBG->bg_color) {
        list(
    $cssColor$cssOpacity) = deserialize($objBG->bg_color);

        if (!empty(
    $cssColor)) {
          
    $this->calConf[$cal]['background'] .= 'background-color:#' $cssColor ';';
          
    $bgColor $cssColor# <- hier
        
    }
        if (!empty(
    $cssOpacity)) {
          
    $this->calConf[$cal]['background'] .= 'opacity:' . ($cssOpacity 100) . ';';
        }
      }

      if (
    $objBG->fg_color) {
        list(
    $cssColor$cssOpacity) = deserialize($objBG->fg_color);

          if (!empty(
    $cssColor)) {
            
    $this->calConf[$cal]['foreground'] .= 'color:#' $cssColor ';';
            
    $fgColor $cssColor# <- hier
          
    }
          if (!empty(
    $cssOpacity)) {
            
    $this->calConf[$cal]['foreground'] .= 'opacity:' . ($cssOpacity 100) . ';';
          }
       }
            
      
    # ab hier
      
    $rt    REQUEST_TOKEN;            
      
    $this->arrEventSources[] = "{
        url: 'veranstaltungskalender.html',
        type: 'POST',
           data: {
              type:'fetchEvents',
              REQUEST_TOKEN: '
    $rt',
              calID: '
    {$cal}', // <- hier
            },
            color:      '#
    $bgColor',
            textColor:  '#
    $fgColor'
       },"
    ;

    dabei dem Request noch die calendarID $cal (meine {} sind hier überflüssig...) und die beiden Farben hinzugefügt (opacity habe ich übergangen, soll nur Testcode sein...). So wird jeder im Modul aktivierte Kalender als eigene eventSource behandelt. Somit kann man die Farben auf der Basis der Sources verwenden...

    Schöne Feiertage!
    Theo

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

    Standard

    Hallo Theobald,

    danke für deinen Report. Dazu folgendes.

    Ich habe eine erste Version zur Verfügung gestellt um einen Blick auf die Funktionalität werfen zu können. Farben und Layout sind aktuell total zweitrangig. Diese Version ist nicht fertig und für den produktiven Einsatz noch nicht tauglich.

    - die Date aus dem Array mit den Farben der Kalender werden natürlich noch direkt an die Events gehängt. Das ist vorgesehen, aber aktuell völlig unwichtig.
    - Format für Uhrzeit und Datum werden später ebenfalls vom Contao übernommen, aber aktuell nicht wichtig.
    - zum CSS des Fullcalender kann ich nichts sagen. Ich habe zumindest aktuell kein eigenes CSS vorgesehen.

    Noch was zum Thema Feiertage.
    Feiertage gibt es nicht viele, so dass die Pflege dieser recht wenig Aufwand ist. Im Zweifel kann man diese einfach via iCal importieren. In meiner Erweiterung hat es mit den Feiertagen, bzw. mit einem Feiertagskalender folgendes auf sich. Gibt es einen Feiertagskalender und wird dieser in einem Modul verwendet, so werden Events an diesen Feiertagen nicht angezeigt, zumindest nicht in der Standard-Konfiguration. Das habe ich mal eingebaut, damit man nicht immer Events die auf Feiertage fallen extra handhaben muss. That's it...

    Zum Thema CSS/Layout und Co.
    Ich werde sicherlich nicht alle Optionen des Fullcalendar in das Modul einbauen, weil es immer unterschiedliche Ansprüche gibt. Ich werde das einbauen, was ich für die Umsetzung meiner Funktionalität benötige, zumindest fürs Erste. Alles andere kann sich jeder in sein(e) Template(s) einbauen wie er es haben will. So hat jeder alle Freiheiten.

    Noch was zum Zeitplan. Im Januar werde ich an diesem Thema nicht arbeiten können, so dass es erst im Februar weiter geht.

    Euch allen einen guten Rutsch ins neue Jahr. Bleibt gesund und munter...

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  25. #25
    Contao-Nutzer Avatar von mandrael
    Registriert seit
    29.06.2009.
    Ort
    Salzburg, Austria
    Beiträge
    224

    Standard

    Lieber Kester,
    bei mir läuft das ER2. Ich habe also per zip-Download aus github das Update installiert. Die Eventauflistung etc. funktioniert wie vorher, das fullcalendar-Modul zeigt aber keine Events an und der klassische Contao-Kalender wird nicht mehr dargestellt. Muss ich noch zusätzlich etwas installieren oder einstellen, damit die Anzeige der Events in fc klappt?
    Liebe Grüße, Michael

  26. #26
    Contao-Nutzer Avatar von janosch
    Registriert seit
    06.07.2009.
    Ort
    Wien
    Beiträge
    82

    Standard Kein Update des Events

    Hallo Leute,

    wenn ich ein Event per "resize" verändere, wird die DB nicht upgedated.

    Das Request sieht wie folgt aus:
    HTML-Code:
    Request URL:http://localhost/index.php/kalender.html
    Request Method:POST
    Status Code:204 No Content
    Remote Address:[::1]:80
    Referrer Policy:no-referrer-when-downgrade
    und Form Data:
    HTML-Code:
    type:updateEventTimes
    event[id]:4
    event[startTime]:1516451460
    event[allDay]:false
    event[endTime]:1516460460
    Kann mir dabei jemand weiterhelfen?
    Geändert von janosch (20.01.2018 um 22:59 Uhr)
    Why is 6 afraid of 7? Because 7 8 9.

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

    Standard

    Zitat Zitat von mandrael Beitrag anzeigen
    Lieber Kester,
    bei mir läuft das ER2. Ich habe also per zip-Download aus github das Update installiert. Die Eventauflistung etc. funktioniert wie vorher, das fullcalendar-Modul zeigt aber keine Events an und der klassische Contao-Kalender wird nicht mehr dargestellt. Muss ich noch zusätzlich etwas installieren oder einstellen, damit die Anzeige der Events in fc klappt?
    Liebe Grüße, Michael

    Lieber Michael,

    sorry für die späte Antwort. Habe nicht mitbekommen, dass es hier neue Meldungen gab. In der compoer.json findest du diese Abhängigkeit.
    "menatwork/contao-multicolumnwizard": "^3.3". Das kannst du mal prüfen, ob es die aktuelle ist.

    Gibt es irgendwelche Fehlermeldung im Log?

    UPDATE: lol
    das war ja schon Januar 2017... oh man...

    liebe Grüße Kester
    Geändert von kmielke (21.01.2018 um 09:20 Uhr)
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

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

    Standard

    Zitat Zitat von janosch Beitrag anzeigen
    Hallo Leute,

    wenn ich ein Event per "resize" verändere, wird die DB nicht upgedated.

    Das Request sieht wie folgt aus:
    HTML-Code:
    Request URL:http://localhost/index.php/kalender.html
    Request Method:POST
    Status Code:204 No Content
    Remote Address:[::1]:80
    Referrer Policy:no-referrer-when-downgrade
    und Form Data:
    HTML-Code:
    type:updateEventTimes
    event[id]:4
    event[startTime]:1516451460
    event[allDay]:false
    event[endTime]:1516460460
    Kann mir dabei jemand weiterhelfen?
    Hallo janosch,

    um Events zu bearbeiten, sind 2 Sachen wichtig. Du musst im Modul diese Option aktiviert haben, und du musst im FE angemeldet sein.

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  29. #29
    Contao-Nutzer Avatar von janosch
    Registriert seit
    06.07.2009.
    Ort
    Wien
    Beiträge
    82

    Standard

    Danke Kester für deine Antwort.

    Beides ist der Fall - bin als Mitglied im Frontend angemeldet und auch im Modul ist Bearbeitung aktiviert. Ich bekomme auch die Meldung: "Are you sure you want to change the event?"

    Es scheint, als ob es etwas mit dem Ajax Aufruf bzw. dem Handling in der ModuleFullcalendar.php zu tun hat.

    EDIT: was eigenartig ist, ist dass ich den FullCalendar sehe, obwohl ich ihn im Modul nur für eine spezielle Mitgliedergruppe freigegeben habe, auch wenn ich nicht im Frontend eingeloggt bin

    EDIT2: so sieht die Url nach dem Ajax Aufurf aus:
    HTML-Code:
    http://mm.localhost/kalender.html?type=updateEventTimes&event[id]=4&event[startTime]=1516451460&event[allDay]=false&event[endTime]=1516460460
    Geändert von janosch (21.01.2018 um 16:14 Uhr)
    Why is 6 afraid of 7? Because 7 8 9.

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

    Standard

    Hi janosch,

    bitte versuche es mit der aktuellen Version 3.7.14.

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  31. #31
    Contao-Nutzer Avatar von janosch
    Registriert seit
    06.07.2009.
    Ort
    Wien
    Beiträge
    82

    Standard

    Habe es mit der 3.7.14 versucht - das Problem besteht leider weiterhin.

    Contao Version 3.5.31
    PHP 7.1.1
    MySQL 5.6.35

    Kann jemand das Problem nachvollziehen oder läuft es sonst bei allen?
    Geändert von janosch (22.01.2018 um 18:11 Uhr)
    Why is 6 afraid of 7? Because 7 8 9.

  32. #32
    Contao-Nutzer Avatar von janosch
    Registriert seit
    06.07.2009.
    Ort
    Wien
    Beiträge
    82

    Standard

    Habe das Problem dank eines alten Posts von theobald lösen können.

    Es fehlt das Request Token im ajax Aufruf im calc_fc_default template.
    Why is 6 afraid of 7? Because 7 8 9.

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
  •