Ankündigung

Einklappen
Keine Ankündigung bisher.

CC: Attribut CustomElement Widget

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

  • CC: Attribut CustomElement Widget

    Kann es sein, dass das Attribut CustomElement Widget nicht korrekt arbeitet?
    Testhalber ein neues CE erstellt, dass nur aus einem Textfeld besteht und dieses als CE Widget in ein CC eingebaut. In der Bearbeitungsmaske des CC lässt sich das Widget befüllen, duplizieren und verschieben... allerdings wird nichts gespeichert.

    Bug oder mal wieder eine Funktionsweise nicht korrekt verstanden?

  • #2
    In der Demo hab ich den gleichen Effekt. Nur der erste Wert wird gespeichert, der Rest geht beim Speichern verloren.

    Kommentar


    • #3
      Hervorragend. Gefixed mit aktueller Version! Thread kann also ggf. geschlossen werden. Danke vielmals.

      Kommentar


      • #4
        Zitat von D23 Beitrag anzeigen
        Hervorragend. Gefixed mit aktueller Version! Thread kann also ggf. geschlossen werden. Danke vielmals.
        Brauchst du das wirklich produktiv oder nur bissel zum Fun haben?
        Das CE Attribut war auch bei mir nur eine Art "mal sehen ob es klappt"... "Hurra, die Eierlegendewollmichsau geschaffen"
        http://www.premium-contao-themes.com

        Kommentar


        • #5
          Also anfänglich war es Kategorie "Was das? Was macht dat? Kann man das essen?" ... Mittlerweile bin ich aber an dem Punkt dass ich sagen muss, wenn das sauber arbeitet, ist das der absolute Hammer!

          Wir können den Thread übrigens wohl doch noch nicht dichtmachen
          Aktuell funktioniert das Kopieren, verschieben und speichern wunderbar.
          Was aber nicht zu funktionieren scheint:
          Wenn das eingebundene CE eine Auswahl (einfach, DB) enthält, bleibt die Dropdown-Liste dieses Feldes leer.

          Kommentar


          • #6
            Puhh... "einfach, DB" gibts sowas überhaupt? . Muss ich mir anschauen. Wir eine Referenz verloren gehen.
            http://www.premium-contao-themes.com

            Kommentar


            • #7
              Zitat von Tim Beitrag anzeigen
              Puhh... "einfach, DB" gibts sowas überhaupt? . Muss ich mir anschauen. Wir eine Referenz verloren gehen.

              Gibt es – nennt sich "Auswahl-Datenbank, einfach (Select/Radio)" bzw. selectdb.

              Kommentar


              • #8
                Zitat von D23 Beitrag anzeigen


                Gibt es – nennt sich "Auswahl-Datenbank, einfach (Select/Radio)" bzw. selectdb.
                jaja, war mehr rethorischer Natur. Selects mit Db-Abfragen sind meistens nicht einfach
                http://www.premium-contao-themes.com

                Kommentar


                • #9
                  Zitat von Tim Beitrag anzeigen

                  jaja, war mehr rethorischer Natur. Selects mit Db-Abfragen sind meistens nicht einfach

                  Stichwort Tags und so

                  Also, wie isses? Hab ich einen Bug gefunden? Kannst Du das reproduzieren? Wird es Nachts immer dunkel? Fragen über Fragen...

                  Kommentar


                  • #10
                    Die Ladereihenfolge bzw. das Laden von Feldern ist hier ausschlaggebend. CE läd Felder über einen generischen Namen (passwortähnliche Feldnamen, damit man immer schön Alias ändern kann und keine Daten verloren gehen). CC allerdings arbeitet direkt mit den Alias. Hier mischt sich gerade beides. CC arbeitet hier die Felder auf und prüft natürlich ob man in einem CC ist -> Ja, ist man. Damit werden die Felder über ihren Alias geholt.
                    Ich hab ne kleine Prüfung voran gesetzt.

                    Ich mach mal nen kleinen Screenshot, falls du es selbst einsetzen willst:
                    pct_customelements_plugin_customcatalog/PCT/CustomElements/Plugins/CustomCatalog/Core/AttributeFactory.php, Zeile 251
                    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: image_123.jpg
Ansichten: 183
Größe: 65,0 KB
ID: 964
                    Zuletzt geändert von Tim; 23.09.2015, 13:24.
                    http://www.premium-contao-themes.com

                    Kommentar


                    • #11
                      Hab das mal im Code ergänzt. Grundsätzlich scheint es zu funktionieren, da im Dropdown jetzt auch Werte erscheinen. Allerdings dreht das BE mit Fehlern hohl

                      Warning: Invalid argument supplied for foreach() in system/modules/pct_customelements_plugin_customcatalog/PCT/CustomElements/Attributes/SelectDb/SelectDb.php on line 128
                      #0 system/modules/pct_customelements_plugin_customcatalog/PCT/CustomElements/Attributes/SelectDb/SelectDb.php(128): __error(2, 'Invalid argumen...', '/Applications/M...', 128, Array) #1 system/modules/core/library/Contao/Widget.php(1388): PCT\CustomElements\Attributes\SelectDb->getOptions(Object(Contao\DC_Table)) #2 system/modules/pct_customelements/PCT/CustomElements/Core/Attribute.php(593): Contao\Widget::getAttributesFromDca(Array, '381otqtcvow40ox', '1', '381otqtcvow40ox', 'cc_productvaria...', Object(Contao\DC_Table)) #3 system/modules/pct_customelements/PCT/CustomElements/Core/Attribute.php(949): PCT\CustomElements\Core\Attribute->generateWidget(Object(Contao\DC_Table)) #4 system/modules/pct_customelements/PCT/CustomElements/Widgets/WidgetCustomElement.php(699): PCT\CustomElements\Core\Attribute->prepareForDca(Object(Contao\DC_Table)) #5 system/modules/pct_customelements/PCT/CustomElements/Widgets/WidgetCustomElement.php(794): PCT\CustomElements\Widgets\WidgetCustomElement->buildGroups() #6 system/modules/pct_customelements_plugin_customcatalog/PCT/CustomElements/Attributes/CustomElement/CustomElement.php(112): PCT\CustomElements\Widgets\WidgetCustomElement->generate() #7 system/modules/core/classes/DataContainer.php(221): PCT\CustomElements\Attributes\CustomElement->generateCustomElementWidget(Object(Contao\DC_Tabl e), '') #8 system/modules/core/drivers/DC_Table.php(1928): Contao\DataContainer->row('{product_varian...') #9 system/modules/core/classes/Backend.php(650): Contao\DC_Table->edit() #10 system/modules/core/controllers/BackendMain.php(131): Contao\Backend->getBackendModule('products') #11 contao/main.php(20): Contao\BackendMain->run() #12 {main}

                      Kommentar


                      • #12
                        Du hast wahrscheinlich ein Übersetzungs-Widget angegeben in den Attribut-Einstellungen, aber eigentlich gibt es gar keins. Dein Fehler entsteht, weil nach Übersetzungen gesucht wird in einem vermeintlichen Übersetzungsfeld
                        http://www.premium-contao-themes.com

                        Kommentar


                        • #13
                          Stimmt. Fehler ist jetzt weg. Magst Du mir kurz verraten an welcher Stelle der Fehlermeldung das erkennbar war? Für mich ist das jetzt eher so "What kind of sorcery is this?!"

                          Kommentar


                          • #14
                            php sagt es dir ja, Zeile 128
                            PHP-Code:
                            $arrTranslations deserialize($objResult->{$strTranslationField}) ?: array();
                                      foreach(
                            $arrTranslations as $lang => $arrTranslation
                            Du schickst ein Feld rein für ein Übersetzungs-Widget (Name ist in der Variablen $strTranslationField), was hier deserialisiert wird und nach dem deserialisieren kein Array ist. Damit knallt das foreach.
                            Klar, man könnte jetzt hier ein Feld angeben, was auch als blob speichert oder als serialisiertes Array z.B. headline in tl_content oder multiSRC.
                            Dann knallt das foreach auch nicht. Trotzdem werden in dem Array keine Übersetzungen gefunden Es kommt aber kein php Fehler.
                            http://www.premium-contao-themes.com

                            Kommentar


                            • #15
                              Ok, so genau hatte ich das nicht angesehen. Aber danke für die Info.
                              Jetzt noch die krönende Preisfrage: Wie kann ich da jetzt was im FE ausgeben? Die Werte werden gespeichert, allerdings nicht in der Tabelle des Produkts, sondern in tl_pct_customelement_vault.

                              Kommt man da im FE-Template ran?
                              $entry->field('feld')->html / render oder value() liefern da natürlich nichts aus.

                              Kommentar

                              Lädt...
                              X