im ACP sortierbare Liste erstellen

  • Ich möchte gern in meinem Plugin Teambox eine sortierbare Liste haben wo man selbst bestimmem kann wieviele Benutzer man hinzufügt. Einen Tipp habe ich ja schon von @Geryyy bekommen.
    Ich würde das dann mit der Listpage umsetzen, muss aber zuvor noch eine Tabelle anlegen und da liegt schon der Hase im Pfeffer.


    Der Inhalt besteht ja nur aus einem Link zum Avatar und einem Messagetext und da weiss ich leider nicht wie der Eintrag für die SQL Tabelle aussehen muss, das hier habe ich schon.


    SQL
    1. DROP TABLE IF EXISTS wcf1_dkmteambox_entry;
    2. CREATE TABLE wcf1_dkmteambox_entry (
    3. entryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
    4. );
  • Das Einfachste dürften 2 Text-Felder sein.


    avatarLink TEXT NOT NULL,
    message TEXT NOT NULL,

    Gruß, UdoZ

  • ich nehme mal an es geht dir um die user avatare die diese eh haben ?
    wenn ja würde ich gar nicht mit dem Avatarlink anfangen sondern nur die userID speichern und dann darüber den Avatar auslesen oder eben die AvatarID.

  • Das wäre mir natürlich noch lieber, aber da fehlt mir noch etwas Know How für die Umsetzung.

  • Um einen konkreten Vorschlag machen zu können, bräuchte man konkrete Info zu dem, was Du vorhast. Z.B. was überhaupt dargestellt wird.
    Ansonsten schau Dir doch einfach mal die install.sql, also die Datenbankanweisung für das WCF an.


    Wenn Du z.B. einen User 'verlinken' willst, trägst Du in die install.sql z.B. ein:


    SQL
    1. DROP TABLE IF EXISTS wcf1_dkmteambox_entry;
    2. CREATE TABLE wcf1_dkmteambox_entry (
    3. entryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
    4. userID INT(10),
    5. message TEXT NOT NULL
    6. );


    Damit es keine Probleme mit gelöschten Usern gibt, empfiehlt sich ein foreign key, der entweder den Eintrag in wcf1_dkmteambox_entry löscht


    ALTER TABLE wcf1_dkmteambox_entry ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;


    oder userID auf NULL setzt:


    ALTER TABLE wcf1_dkmteambox_entryADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;


    In der Klasse machst Du dann aus userID ein UserProfile und holst Dir den Avatar.


    PHP
    1. $userProfile = new UserProfile(new User($row['userID']));
    2. $avatar = $userProfile->getAvatar();

    $row = Array der Datenbankabfrage

    Gruß, UdoZ