2009-05-19 9 views
0

Ich möchte, dass einem Artikel Artikel hinzugefügt werden. Das Problem besteht darin, dass die Tags im Popup-Fenster in "zufälliger" Reihenfolge angezeigt werden. Dies liegt an der Reihenfolge, in der sie auf die Seite geschoben werden. Ich möchte eingreifen, die Tags sortieren und geordnet präsentieren. Wie würdest du das machen? Ich habe die Methoden in tags_entries_selector.js entdeckt, aber ich bin mir nicht sicher, wo ich anfangen soll.Ändern der Liferay JavaScript-Funktionalität

Antwort

0

Die Grundidee der Lösung ist, alle Tags in einem Array zu halten und nichts anzuzeigen, bis das Array 'gefüllt' ist. Um zu verstehen, wann das letztere passiert, vergleiche die Länge deines Arrays mit vocabularies.length. Führen Sie alle erforderlichen (nicht trivialen) Änderungen in Ihrem benutzerdefinierten Array durch, konvertieren Sie ihre Daten in eine Zeichenfolge und übergeben Sie sie an container.html().

Der wichtigste Punkt zu verstehen ist, dass die instance._getVocabularyEntries() Funktion für jeden Eintrag ausgeführt wird, aber wir wollen nur, dass es nur ausgeführt wird, wenn unser benutzerdefiniertes Array mit allen notwendigen Daten "füllt". Diese Lösung hat den Nachteil, dass alle erforderlichen Daten abgerufen werden müssen, bevor dem Benutzer etwas angezeigt wird.

1

Es gibt zwei grundlegende Möglichkeiten, wie Liferay Portal erweitern:

  • Ext Umwelt
  • Hooks

Ext Umwelt ist leistungsfähige Technik, aber vielleicht ein bisschen schwierig sein. Für Haken können Sie sich das ansehen: http://jdem.cz/bfms4

+0

Leider muss es, soweit es mich betrifft, durch Ext-Umgebung sein. – atas