Ergebnis 1 bis 16 von 16

Thema: Eigenes HTML, PHP oder JS element als Field.

  1. #1
    Contao-Fan
    Registriert seit
    16.01.2012.
    Beiträge
    418

    Standard Eigenes HTML, PHP oder JS element als Field.

    Hallo,

    ich bin gerade dabei ein Modul zu programmieren. Als Vorbild hab ich erstmal das Screencast Modul nachgebaut. Nun möchte ich gern anstatt eines normalen (text-, select-, etc.-)Feldes ein Google diagram einblenden. Gibt es da eine möglich?

  2. #2
    Contao-Nutzer
    Registriert seit
    07.12.2009.
    Beiträge
    151

    Standard

    Dazu wären ein paar mehr Informationen hilfreich. Frontend oder Backend? Was meinst du mit Google Diagramm? Willst du etwas querverlinken oder Diagramme selbst erstellen?

  3. #3
    Contao-Fan
    Registriert seit
    16.01.2012.
    Beiträge
    418

    Standard

    Backend. Das Modul soll gar keine Frontend ausgabe haben. Man soll ein element anlegen können Datum auswählen -> speichern und danach soll eine Google Statistik mit Werten befüllt werden die man sich aus der Datenbank holt. (im gleichen fenster) Also bräuchte ich sozusagen ein Feld das ein eigenes Php/Js reinlädt. Sozusagen sowas wie im DCA Field type = includescript anstatt select usw ... das is mein lösungsansatz den es aber denk ich nicht gibt oder?

  4. #4
    Contao-Nutzer
    Registriert seit
    07.12.2009.
    Beiträge
    151

    Standard

    Du könntest ein eigenes Diagramm-Widget entwickeln. Widgets sind die Formularfelder in Contao und für das Backend werden sie in der config.php deiner Extension in $GLOBALS['BE_FFL'] registriert. Schau dir mal die Widget-Klasse an. Die könntest du erweitern und dann deine eigene Logik implementieren, um das Diagramm zu generieren.

  5. #5
    Contao-Fan
    Registriert seit
    16.01.2012.
    Beiträge
    418

    Standard

    kennst du zufällig ein einfaches modul wo sowas verwendet wurde - zum "abschaun"?

    hier steht eben nichts von widget https://docs.contao.org/books/manual.../referenz.html
    oder hat das ganze dann gar nichts mit dem DCA zu tun?

  6. #6
    Contao-Nutzer
    Registriert seit
    07.12.2009.
    Beiträge
    151

    Standard

    Ein Widget ist das, was du in der Feldkonfiguration im DCA jeweils unter inputType auswählst. Es gibt also ein Text-Widget, ein Textarea-Widget, ein Checkbox-Widget usw.

    Nein, ein Modul habe ich gerade leider nicht parat.

  7. #7
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Moin,

    schau dir mal den "input_field_callback" : https://docs.contao.org/books/manual...#feldcallbacks

    Beispiele dafür findest im Core.

    Gruß, Cliff

  8. #8
    Contao-Fan
    Registriert seit
    16.01.2012.
    Beiträge
    418

    Standard

    Vielen Dank erstmal habt mir super weitergeholfen! Hat nun alles wunderbar funktioniert. Nun bin ich an dem punkt an dem ich die google charts einbauen muss.
    Ich hab getestet ob er javascript annimmt und einfache javascript codes führt er auch richtig aus.

    zum testen wollte ich einfach mal das hier einbaun.
    https://developers.google.com/chart/...cs/quick_start

    Jetzt wirft er mir aber fehler aus und nimmt die hälfte des codes nicht an.

    Parse error: syntax error, unexpected 'visualization' (T_STRING) in #######auswertung/dca/tl_auswertung.php on line 527

    Kann man da dagegen etwas machen?

  9. #9
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das ist ein PHP Fehler ... guck dir die Zeile 527 mal genauer an.

  10. #10
    Contao-Fan
    Registriert seit
    16.01.2012.
    Beiträge
    418

    Standard

    die zeile 527 ist fett.

    Code:
    		
    
    return $result->datum.'
    <div>
    
    
    
    
    
    
    
    
    
    
    
    
    
    
        <!--Load the AJAX API-->
        <script type="text/javascript" src="https://www.google.com/jsapi"></script>
        <script type="text/javascript">
    
          // Load the Visualization API and the piechart package.
          google.load('visualization', '1.0', {'packages':['corechart']});
    
          // Set a callback to run when the Google Visualization API is loaded.
          google.setOnLoadCallback(drawChart);
    
          // Callback that creates and populates a data table,
          // instantiates the pie chart, passes in the data and
          // draws it.
          function drawChart() {
    
            // Create the data table.
            var data = new google.visualization.DataTable();
            data.addColumn('string', 'Topping');
            data.addColumn('number', 'Slices');
            data.addRows([
              ['Mushrooms', 3],
              ['Onions', 1],
              ['Olives', 1],
              ['Zucchini', 1],
              ['Pepperoni', 2]
            ]);
    
            // Set chart options
            var options = {'title':'How Much Pizza I Ate Last Night',
                           'width':400,
                           'height':300};
    
            // Instantiate and draw our chart, passing in some options.
            var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
            chart.draw(data, options);
          }
        </script>
    
    
        <!--Div that will hold the pie chart-->
        <div id="chart_div"></div>
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    </div>';
    	}

  11. #11
    Contao-Fan
    Registriert seit
    16.01.2012.
    Beiträge
    418

    Standard

    ach sry ... die hitze :/

    klar liegt an den ' .. '

  12. #12
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard


  13. #13
    Contao-Fan
    Registriert seit
    16.01.2012.
    Beiträge
    418

    Standard

    noch ne kurze frage (google spuckt auch nichts aus) dann hab ich alles was ich brauche. Gibt es eine möglichkeit die variabeln für das Modul auszugeben? Konkret bräuchte ich die ID von dem eintrag damit ich dann die richtigen werte aus der datenbank ziehen kann.

  14. #14
    Contao-Nutzer
    Registriert seit
    07.12.2009.
    Beiträge
    151

    Standard

    PHP-Code:
    var_dump($var
    PHP-Code:
    log_message(print_r($vartrue), 'debug.log'
    Oder besser: eine IDE nutzen und Remote Debugging nutzen. Hat mich einige Nerven gekostet, erhöht aber das Lern- und Entwicklungstempo ungemein.

  15. #15
    Contao-Fan
    Registriert seit
    16.01.2012.
    Beiträge
    418

    Standard

    mir wär es eigentl. hauptsächlich um den Namen der Variable gegangen. :/

  16. #16
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Die Callback Methode hat ja laut Signatur den Parameter "DataContainer $dc"

    Damit kommst du dann an die Variablen:

    PHP-Code:
    $dc->activeRecord->NAME_DER_VARIABLE 
    Gruß, Cliff

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
  •