ActivityFeed Component — sgcHTML | eSeGeCe

ActivityFeed

TsgcHTMLComponent_ActivityFeed — rendert einen Live-Aktivitäts-Feed (neueste zuerst) mit relativen Zeitstempeln und Out-of-Band-WebSocket-Push, in Delphi, C++ Builder und .NET.

TsgcHTMLComponent_ActivityFeed

Fügen Sie Aktivitäten mit AddActivity hinzu, lesen Sie HTML für das erste Rendering und pushen Sie dann neue Einträge live per WebSocket-Fragment.

Komponentenklasse

TsgcHTMLComponent_ActivityFeed

Rendert

Bootstrap-5-Liste + scoped CSS + Live-Relativzeit-Skript

Sprachen

Delphi, C++ Builder, .NET

Aktivitäten hinzufügen, rendern, neue live pushen

Rufen Sie AddActivity für jeden Eintrag auf, lesen Sie HTML für die erste Seite, und pushen Sie dann einen neuen Eintrag als Out-of-Band-Fragment über WebSockets mit GetLastItemFragmentHTML.

uses
  sgcHTML_Enums, sgcHTML_Component_ActivityFeed;

var
  oFeed: TsgcHTMLComponent_ActivityFeed;
begin
  oFeed := TsgcHTMLComponent_ActivityFeed.Create(nil);
  try
    oFeed.FeedID := 'timeline';
    oFeed.Title := 'Recent Activity';
    oFeed.MaxItems := 30;

    oFeed.AddActivity('Ana', 'closed', 'ticket #482', hcSuccess, 'bi bi-check-circle');
    oFeed.AddActivity('Marc', 'commented on', 'invoice #1190', hcPrimary);

    WebModule.Response := oFeed.HTML;   // feed list + scoped CSS + live relative-time script
  finally
    oFeed.Free;
  end;
end;

// Push a new item live to connected clients (out-of-band htmx fragment):
oFeed.AddActivity('Ana', 'approved', 'purchase order #77', hcSuccess);
Engine.BroadcastFragment(oFeed.GetLastItemFragmentHTML);
// includes: sgcHTML_Enums.hpp, sgcHTML_Component_ActivityFeed.hpp

TsgcHTMLComponent_ActivityFeed *oFeed = new TsgcHTMLComponent_ActivityFeed(NULL);
try
{
  oFeed->FeedID = "timeline";
  oFeed->Title = "Recent Activity";
  oFeed->MaxItems = 30;

  oFeed->AddActivity("Ana", "closed", "ticket #482", hcSuccess, "bi bi-check-circle");
  oFeed->AddActivity("Marc", "commented on", "invoice #1190", hcPrimary);

  String html = oFeed->HTML;   // feed list + scoped CSS + live relative-time script
}
__finally
{
  delete oFeed;
}
using esegece.sgcWebSockets;

var feed = new TsgcHTMLComponent_ActivityFeed();
feed.FeedID = "timeline";
feed.Title = "Recent Activity";
feed.MaxItems = 30;

feed.AddActivity("Ana", "closed", "ticket #482", TsgcHTMLColor.hcSuccess, "bi bi-check-circle");
feed.AddActivity("Marc", "commented on", "invoice #1190", TsgcHTMLColor.hcPrimary);

string html = feed.HTML;   // feed list + scoped CSS + live relative-time script

// Push a new item live to connected clients (out-of-band htmx fragment):
feed.AddActivity("Ana", "approved", "purchase order #77", TsgcHTMLColor.hcSuccess);
engine.BroadcastFragment(feed.GetLastItemFragmentHTML());

Wichtige Eigenschaften & Methoden

Die Member, die Sie am häufigsten verwenden.

Items / AddActivity

AddActivity(aActor, aAction, aTarget, aColor, aIcon, aActorAvatarURL) fügt einen Eintrag hinzu und gibt das TsgcHTMLActivityItem zurück.

Ringpuffer

MaxItems begrenzt, wie viele Einträge aufbewahrt werden; der älteste Eintrag wird automatisch entfernt, sobald das Limit erreicht ist.

Relative Zeit

ShowRelativeTime rendert Zeitstempel im Stil „vor 3 Minuten", die clientseitig live gehalten werden; TimeFormat ist der Fallback, wenn dies deaktiviert ist.

Live-Push

GetItemFragmentHTML/GetLastItemFragmentHTML erstellen ein Out-of-Band-htmx-Fragment für PushFragment/BroadcastFragment, sodass eine neue Aktivität ohne Neuladen erscheint.

Leerer Zustand

EmptyText ist der Platzhalter, der angezeigt wird, solange Items leer ist; GetEmptyFragmentHTML rendert ihn erneut als Push-Fragment.

Layout

Title beschriftet den Feed, Compact verringert den Zeilenabstand, und HTML gibt den Feed samt seines scoped CSS und Skripts zurück.

Weiter entdecken

Online-HilfeVollständige API-Referenz und Verwendungshandbuch für diese Komponente.
Alle sgcHTML-KomponentenDurchsuchen Sie die vollständige Funktionsmatrix von über 80 Komponenten.
Kostenlose Testversion herunterladenDie 30-Tage-Testversion enthält die 60.HTML-Demoprojekte.
PreiseSingle-, Team- und Site-Lizenzen mit vollständigem Quellcode.

Bereit loszulegen?

Laden Sie die kostenlose Testversion herunter und beginnen Sie, Live-Aktivitäts-Feeds in Delphi, C++ Builder und .NET zu erstellen.