Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Pflichtfelder im Profil auftrennen!?
#1
Hallo,

es werden bei der Registrierung einige Pflichtfelder abgefragt, wovon einige über das Template member_profile_customfields (Syntax: {$customfields}) je nach Einstellung (Anzeige im Profil = ja/nein) angezeigt werden.

Wie könnte man es bewerkstelligen, dass z.B. zwei gezielte Felder Profilfelder im Profil beispielsweise nur den Admins sowie dem betreffenden User (IF-Definition in einem Template ist bekannt) zur Anzeige gebracht werden?

Plichtfeld 1 (fid=1) > Anzeige im Profil für alle
Plichtfeld 2 (fid=2) > Anzeige im Profil für alle
Plichtfeld 3 (fid=3) > Anzeige im Profil für alle
Plichtfeld 4 (fid=4) > Anzeige im Profil nur für User und Admins
Plichtfeld 5 (fid=5) > Anzeige im Profil nur für User und Admins
Plichtfeld 6 (fid=6) > Anzeige im Profil für alle

Vermute mal, das vllt. in der member.php etwas angepasst werden könnte.

Ziel ist, dass die Pflichtangaben bei der Registrierung z.B. (fid=1 bis fid=6) erforderlich sind, und über gesonderte Definitionen die Ausgabe im Profil von [b]fid=1 bis 3[/b] und fid=6 aber fid 4-5 nach indiviuell angezeigt werden. Begründung:
Manche Angaben sind bei der Registrierung im geschlossenem Forum erforderlich (z.B. Kundennummer) aber gehen nicht jeden User etwas an!

Ein ergänzendes PlugIn (Spezialfelder bei Registrierung) welches z.B. den Syntax: {$specialfields} zur Verfügung stellt, wäre natürlich der optimalste Weg, dann könnte man über ein eigenes Template den definierten Syntax verwenden.

Vorab besten Dank für Tipps, Hinweise und Anregungen.
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an!  ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools [Unixzeit ⇔ Realzeit] ♦ [BOM-Finder] ♦ [SQL-Prefix-Changer] ♦ [USV-Rechner] ♦ [PlugIns]
Zitieren
#2
Reichen dir da nicht die jeweiligen Einstellungen des entsprechenden Profilfelds??
   

Der jeweilige User kann das Profilfeld in seinem Profil dann nicht sehen, aber er kann es im UserCP bearbeiten.
Zitieren
#3
Für den Admin sollte Sven seine Variante genügen, da der Admin ja ohnehin alles sehen soll.

Ansonsten könntest du die Variable {$profilefields} im Template member_profile auftrennen in z.B.:
{$userfields['fid4']}{$userfields['fid5']} usw.

Diese Variablen geben allerdings nur den Inhalt der Felder aus, ohne den HTML-Konstrukt drum herum.
Den müsstest du dir dann selbst wieder drumbasteln.

Danach kannst du z.B. so verfahren:
PHP-Code:
<if $mybb->user['uid'] == $memprofile['uid'then>
{
$userfields['fid4']}{$userfields['fid5']}
</if> 

Der Profilfeldinhalt wird nun nur angezeigt, wenn der User sich sein eigenes Profil anzeigen lässt.

Viel Spaß beim Basteln. Big Grin 
Sicher wird´s vllt auch noch ne andere Lösung geben. Wink
Zitieren
#4
Guter Gedankenansatz, aber leider Nein!

Das eingeforderte Pflichtfeld muss logischerweise bereits bei der Registrierung für Gäste sicht- und bearbeitbar sein, sonst kann es bei der Registrierung nicht ausgefüllt werden.

Gerade geprüft:
Einstellungen = sicht- und bearbeitbar für Gäste und Administratoren!

Aufruf der Mitgliederliste und Klick auf einen registrierten User = Anzeige der vertraulichen Daten:
a) Gast = Ja (alle User)
b) Registrierte User = Nein
c) Administratoren = Ja (alle User)
("b" soll jedoch ausschließlich seine eigenen Angaben - keine Daten der anderen User - angezeigt, aber nicht bearbeitbar sein)

Somit ist das eingeforderte Ziel im Forenbetrieb nicht erreicht, weil bei Klick auf die Mitgliederliste die vertraulichen Daten jedes registrierten Users von jedem Gast gesehen werden können.

@Schnapsnase
Dein Beitrag hat sich mit meinem Posting wegen einer Minute überschnitten. Klingt logisch, ich werde ihn nachher mal durchtesten und berichten. Danke dafür
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an!  ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools [Unixzeit ⇔ Realzeit] ♦ [BOM-Finder] ♦ [SQL-Prefix-Changer] ♦ [USV-Rechner] ♦ [PlugIns]
Zitieren
#5
(06.03.2022, 10:58)Gerti schrieb: Guter Gedankenansatz, aber leider Nein!

Das eingeforderte Pflichtfeld muss logischerweise bereits bei der Registrierung für Gäste sicht- und bearbeitbar sein, sonst kann es bei der Registrierung nicht ausgefüllt werden.

Sorry, aber da hast du einen Denkfehler drin...für die Anzeige z.B. bei der Registrierung genügt die Bearbeitbarkeit des Feldes....bei der Sichtbarkeit geht es nur um die Anzeige der Daten im Profil oder den Beiträgen.

Also:

Sichtbar für:
  • Admins
  • Mods

Bearbeitbar für:
  • Alle Gruppen
Zitieren
#6
@Sven

Wenn ich´s richtig verstanden habe, möchte Gerti die Sichtbarkeit auf den einzelnen User runterbrechen.
D.h., jeder User darf nur sein eigenes Profilfeld sehen.
Das ist mir deiner Variante nicht erreichbar. Wink
Zitieren
#7
(06.03.2022, 11:47)Schnapsnase schrieb: @Sven

Wenn ich´s richtig verstanden habe, möchte Gerti die Sichtbarkeit auf den einzelnen User runterbrechen.
D.h., jeder User darf nur sein eigenes Profilfeld sehen.
Das ist mir deiner Variante nicht erreichbar. Wink

Ja, das ist richtig, hatte ich in meinem vorherigen Beitrag auch geschrieben...der User kann seine Eingaben damit nur im UserCP sehen und/oder bearbeiten.
Zitieren
#8
@Gerti

Ich weiß, dass mein Vorgehen jetzt verpönt wird Big Grin , aber ich würde mir ein neues Template "member_profile_specialfield" anlagen und den gesamten HTML-Konstrukt der Customfields einfügen, aber eben den Feldinhalt über z.B. {$userfields['fid4']} separieren.

Danach kannst du im Template member-profile dieses neue Template verfügbar machen. Füge in der ersten Zeile folgendes ein:
PHP-Code:
<?php
eval("\$member_profile_specialfield = \"".$templates->get("member_profile_specialfield")."\";");
?>

Jetzt kannst du weiter unten z.B. folgendes tun:
PHP-Code:
<if $mybb->user['usergroup'] == 4 then>
{
$profilefields}
<elseif 
$mybb->user['usergroup'] != && $mybb->user['uid'] == $memprofile['uid'] then>
{
$member_profile_specialfield}
</if> 

An dieser Stelle werde ich bestimmt gleich erschlagen... ist auch ohne Test nur mal schnell zusammengeschrieben.
Los haut drauf! Big Grin
Zitieren
#9
Der erste Tipp von Schnapsnase funktioniert perfekt und erfüllt somit genau das was ich wollte! Ich habe keine unerwünschten Nebeneffekte entdecken können.

Die Ergänzung mit der Einbindung eines eigenen Templates erleichtert die zudem die Übersicht beim bearbeiten.

Ganz herzlichen Dank an Schnapsnase für die doch sehr hilfreichen Tipps zur gewünschten Lösungsfindung.
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an!  ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools [Unixzeit ⇔ Realzeit] ♦ [BOM-Finder] ♦ [SQL-Prefix-Changer] ♦ [USV-Rechner] ♦ [PlugIns]
Zitieren
#10
(06.03.2022, 12:43)Gerti schrieb: Ganz herzlichen Dank an Schnapsnase für die doch sehr hilfreichen Tipps zur gewünschten Lösungsfindung.

Gerne doch! Wink 
Manchmal geht´s eben auch ohne Plugins und/oder Eingriffe in die Core-Dateien. Cool
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Aktive Pflichtfelder > Registrierung nicht möglich Gerti 1 761 23.02.2022, 12:29
Letzter Beitrag: Schnapsnase