Inhalte dynamisch darstellen-bitte um Vorschläge zur Herangehensweise
am 19.02.2014 - 08:28 Uhr in
Moin moin aus dem Saarland,
da ich erbärmlich wenig Ahnung von jquery und ajax habe muss ich hier mal die Experten zu Rate ziehen.
Es geht um folgendes:
Ich möchte mehrere nodes so darstellen, dass die zur Laufzeit berechneten Werte in der Ausgabe Berücksichtigung finden. D.h. ich möchte mehrere nodes laden, deren Inhalte eine Referenz auf andere DB Felder anderer nodes enthalten. Dann soll eine Rechnung client-seitig ausgeführt werden. Die node mit der höchsten Ausgabe steht oben, dann je nach Rang abwärts. Das Ganze soll noch so aussehen, dass der Autor der jeweiligen node mit dem berechneten Wert im header angezeigt wird, und wenn man drauf klickt der node sich öffnet und die unteren nodes quasi nach unten schiebt(toggle).
Inhalt für node:
Referenzfeld A Bspwert: 1 | Referenzfeld B Bspwert: 0 | eingetragener Wert für A: 2 | eingetragener Wert für B: 0
Referenzfeld C Bspwert: 2 | Referenzfeld D Bspwert: 1 | eingetragener Wert für C: 2 | eingetragener Wert für D: 1
Berechnung:
Referenz A-B = 1 - eingetragen A-B = 2 => 0 Punkte
Referenz C-D = 1 - eingetragen C-D = 1 => 1 Punkte
Gesamt: 1 Punkt
Ausgabe:
Anklickbarer Header:
Name user 1: Anzahlt Punkte: 1 Punkt
Wenn demnach 3 nodes in der Page enthalten sind von user 1, user 2, user 3 soll daher zu sehen sein:
Übersicht:
user 2: 3 Punkte
user 3: 2 Punkte
user 1: 1 Punkt
Dann den Header anklicken, den jeweiligen Inhalt anzeigen, und die sonstigen Header bei Bedarf nach unten schieben.
Jetzt hier meine Frage:
Soll ich das per Modul lösen oder per views?
Anforderung:
Ich möchte nicht auf theme Ebene arbeiten, da ich das Ganze später auch noch mobil themen will, müsste demnach ansonsten doppelte Arbeit verrichten. Nach dem Lesen der vergangenen Nacht sollte sowas mittels drupal_ad_js zu lösen sein!???
Habt Ihr Vorschläge, wie Ihr vorgehen würdet???
Danke vorab,
maen
- Anmelden oder Registrieren um Kommentare zu schreiben

du wirst an JQUERY nicht vorbei kommen
am 19.02.2014 - 08:41 Uhr
Clientseitig heißt, es muss in JS ablaufen.
Hier bietet sich JQUERY an.
Ajax ist nur dann interessant, wenn du während der Anzeige weitere Daten dynamisch vom Server holen möchtest.
Vielleicht könnte dir aber Views mit calculated fields helfen, dass die Berechnung auf dem Server abläuft.
Erst mal Danke für die
am 19.02.2014 - 09:12 Uhr
Erst mal Danke für die schnelle Antwort.
Calculated fields ist leider keine Option, da das Ganze dann zu langsam wäre.
Beispiel:
Die Quelle der referenced fields wird geupdated. Angenommen es gäbe 100 nodes die darauf zugreifen würden, dann würde für die Kalkulation 100 mal 1 DB Eintrag gemacht werden. Wenn es sich dann um 10 Quellen handelt demnach 1000 DB EInträge. Würde dann die Quelle in 1 Minute noch 2 oder 3 mal geupdatet werden bricht mir der Server weg oder es herrscht Stillmesse.
Meine Frage bezieht sich eher darauf, ob ich das mittels views und irgendwie eingegebenem JS oder per Modul mit EntityFieldQuery und angepassten JS bearbeiten sollte. Und falls ja, gibt es dafür irgendwelche Tutorials, weil ich keine Erfahrung mit js habe.