Nachrichten - Seitenleiste - Benutzerprofilfelder

  • Hallo Community,
    Wie bereits hier (klick) festgestellt werden die Benutzerprofilfelder in der Seitenleiste in der Threadansicht ja nicht nach der gewählten Reihenfolge sortiert, sondern nach ihrer ID.

    In einer seit nunmehr fast 10 Jahren gewachsenen Community wird es von Zeit zu Zeit nötig die Profilfelder in der Seitenleiste neu anzuordnen, dabei möchte man natürlich die Reihenfolge (nach persönlichen Anforderungen) selbst festlegen.

    Mir ist bewusst das der oben verlinkte Thread mit "Umgesetzt im WC 2.2" gelabelt ist, jedoch habe ich eigentlich nicht vor auf WCF 2.2/WBB4.2 upzudaten, da wir (nach fast 10 Jahren WBB 2.3 und einigen Monaten WBB 4.0) jetzt mit dem WBB 4.1 im großen und ganzen sehr zufrieden sind.

    Also möchte ich nun eine Lösung finden wie ich auch im WCF2.1/WBB4.1 die Felder nach meinen wünschen anordnen kann.

    Meine Idee hierzu ist folgende:

    Die Benutzerprofilfelder sind ja in der Tabelle wcf1_user_option gespeichert. Ich nehme mal an diese Tabelle ist als Auto Increment angelegt. Ich habe dort einige ältere Benutzerprofilfelder mit niedriger ID, die gelöscht werden könnten. Nun die Frage: Wenn ich ein Benutzerprofilfeld mit niedriger ID per ACP löschen (die ersten 15 sind ja nicht löschbar, da standard-Felder), wird dann in der Tabelle die ganze Zeile der ID gelöscht ? oder wird nur die Zeile der ID im Frontend "ausgeblendet" ?

    Frage zwei: wenn ich ein neues Benutzerprofilfeld anlege, bekommt dieses natürlich die nächst höhere ID (wegen auto increment). Wenn ich nun als Beispiel die ID 20 vorher gelöscht habe, ein neues erstellt habe, welches z.B. die ID 60 bekommen hat, könnte ich dann nicht hingehen und dem neuen per SQL Abfrage die ID 20 zuordnen ? Oder bringe ich damit alles durcheinander ?

    Frage drei: falls das geht wie ich mir das vorstelle, wie wäre die korrekte SQL Abfrage anhand meines Beispiels ?

    Ich denke es müsste

    SQL
    UPDATE wcf1_user_option SET optionID = 20 WHERE optionID = 60

    Wäre die Abfrage so richtig oder müssen da noch irgendweche ' oder " oder so mit rein ?

    Danke für das lesen des längeren Posts und für die Hilfe die ich hoffentlich erhalte :)

    Gruß
    Fatman

  • Ich ganz persönlich würde mir weder Gedanken über eine Abfrage machen noch hinterfragen, ob das ein gangbarer Weg ist, sondern die ID in einer Testumgebung manuell ersetzen und dann prüfen, ob das funktioniert oder zu Fehlern führt.


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Hi und danke für deine Antwort.

    Ich hab eine Testumgebung am laufen, nur bei Veränderungen in der Datenbank bin ich immer vorsichtig, da ich nicht unbedingt alle zusammenhänge erkenne.

    Also meinst du grundsätzlich könnte das so gehen und wenn ich das ausprobiere und nach der Veränderung (ich möchte natürlich nicht nur die ID eines Feldes, sondern mehrere verändern) keine aktuellen Fehler feststellbar sind kommen da auch keine "Spätfolgen" ?

    :)

  • Ich würde natürlich ausgiebig testen, bevor ich diese Änderung ins Produktivsystem übernehme.


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Leider ist da nichts zu machen...

    Ich hab das oben beschriebene (also ändern der ID in der Datenbank) in einer Testumgebung probiert und es gibt immer wieder Fehler, bzw. ganz am Ende gibt es keinen Fehler mehr, jedoch wird nach bearbeiten des Feldes übers ACP dieses nicht mehr angezeigt.

    Ich habe zuerst die ID in der wcf1_user_option geändert.
    Danach muss man auch die ID in der wcf1_user_option_value anpassen, damit diese zu der UserOption passt (da es sonst einen SQL Fehler beim normalen bearbeiten bzw. Eintragen im Board bzw. ACP gibt).

    Wenn man das gemacht hat gibt es zwar keinen Fehler mehr beim Bearbeiten/Eintragen, jedoch wird letztendlich das Feld dann nicht mehr im Board angezeigt (der Boardcache wurde jeweils entsprechend geleert)...

    Ich als alter WBB2 Spezi hab dann natürlich gedacht: schaust du mal in die Dateien, kann ja nicht so wild sein bei der entsprechenden Stelle die Sortierung zu ändern, jedoch hat sich das ja alles durch die objektorientierte Programmierung verändert, so dass ich da auch nicht in der Lage war das entsprechend anzupassen.

    Also kurz gesagt: leider nichts zu machen (mit meinen Möglichkeiten).

    Gruß
    Fatman

    EDIT: ich hatte etwas übersehen, ich muss mich mit der Sache nochmal beschäftigen....

    Edited once, last by M tha Man (May 22, 2016 at 5:54 PM).

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!