Benutzer-ID in Listen darstellen
Benutzer-ID in Listen darstellen
Hallo!
Unser Finanz-Mensch möchte mit eindeutigen User-Ids arbeiten. Das Admidio-System weist ja allen Mitgliedern und Nutzern eine eindeutige ID zu. Ich möchte diese nun in den Listen anzeigen und erstelle dazu ein neues Profilfeld. Und an diesem Punkt stehe ich an. Mit ID meine ich nicht die blosse Nummerierung der Mitglieder, sondern die interne DB-ID des Mitgliedes oder des Nutzers, z.B. 18 oder 31 etc.
Kann mir jemand einen Tipp geben, wie ich das am besten bewerkstellige?
Besten Dank und freundliche Grüße!
Dominic
Unser Finanz-Mensch möchte mit eindeutigen User-Ids arbeiten. Das Admidio-System weist ja allen Mitgliedern und Nutzern eine eindeutige ID zu. Ich möchte diese nun in den Listen anzeigen und erstelle dazu ein neues Profilfeld. Und an diesem Punkt stehe ich an. Mit ID meine ich nicht die blosse Nummerierung der Mitglieder, sondern die interne DB-ID des Mitgliedes oder des Nutzers, z.B. 18 oder 31 etc.
Kann mir jemand einen Tipp geben, wie ich das am besten bewerkstellige?
Besten Dank und freundliche Grüße!
Dominic
Re: Benutzer-ID in Listen darstellen
Hallo Dominic,
da musst Du in den Code gehen und Veränderungen vornehmen:
1) im Script adm_program/modules/lists/mylist.php findest Du im ersten Drittel (bei mir Zeile 253) die Bemerkung "Add loginname and photo at the end of category master data" (hiernach suchen!). Dort werden die Felder "Username" (SYS_USERNAME) und "Foto" (PHO_PHOTO) angehängt. Und darunter musst Du dann diesen Block zufügen:
2) Im Script list_show.php im selben Verzeichnis findest Du (ziemlich oben, bei mir Zeile 109) die Bemerkung "Array um den Namen der Tabellen sinnvolle Texte zuzuweisen". Da muss das Array erweitert werden um "usr_id". Aus
wird
@Fasse: Könnte man das allgemein aufnehmen? halte ich für sinnvoll.
Besten Gruß
Oliver
da musst Du in den Code gehen und Veränderungen vornehmen:
1) im Script adm_program/modules/lists/mylist.php findest Du im ersten Drittel (bei mir Zeile 253) die Bemerkung "Add loginname and photo at the end of category master data" (hiernach suchen!). Dort werden die Felder "Username" (SYS_USERNAME) und "Foto" (PHO_PHOTO) angehängt. Und darunter musst Du dann diesen Block zufügen:
Code: Alles auswählen
user_fields['. ($posEndOfMasterData+1). '] = new Object();
user_fields['. ($posEndOfMasterData+1). ']["cat_id"] = user_fields[1]["cat_id"];;
user_fields['. ($posEndOfMasterData+1). ']["cat_name"] = user_fields[1]["cat_name"];
user_fields['. ($posEndOfMasterData+1). ']["usf_id"] = "usr_id";
user_fields['. ($posEndOfMasterData+1). ']["usf_name"] = "'.$gL10n->get('SYS_USER').'";
user_fields['. ($posEndOfMasterData+1). ']["usf_name_intern"] = "'.$gL10n->get('SYS_USER').'";
Code: Alles auswählen
$arr_col_name = array('usr_login_name' => $gL10n->get('SYS_USERNAME'),
'usr_photo' => $gL10n->get('PHO_PHOTO'),
'mem_begin' => $gL10n->get('SYS_START'),
'mem_end' => $gL10n->get('SYS_END'),
'mem_leader' => $gL10n->get('SYS_LEADER')
);
Code: Alles auswählen
$arr_col_name = array('usr_login_name' => $gL10n->get('SYS_USERNAME'),
'usr_id' => $gL10n->get('SYS_USER'),
'usr_photo' => $gL10n->get('PHO_PHOTO'),
'mem_begin' => $gL10n->get('SYS_START'),
'mem_end' => $gL10n->get('SYS_END'),
'mem_leader' => $gL10n->get('SYS_LEADER')
);
Besten Gruß
Oliver
Benutzer-ID in Listen darstellen
Hallo Oliver,
das kann man aufnehmen. Kannst du dafür über GitHub einen Patch (Pull-Request) erstellen?
Viele Grüße
Fasse
das kann man aufnehmen. Kannst du dafür über GitHub einen Patch (Pull-Request) erstellen?
Viele Grüße
Fasse
Re: Benutzer-ID in Listen darstellen
Hallo Fasse,
(Kleinlaut:) habe noch keine Ahnung, was das ist... Kein Scherz! Werde mich mal auf die Suche begeben...
(Kleinlaut:) habe noch keine Ahnung, was das ist... Kein Scherz! Werde mich mal auf die Suche begeben...
Re: Benutzer-ID in Listen darstellen
Repository "Admidio/admidio" und Branch "master"?
Re: Benutzer-ID in Listen darstellen
Hallo nochmal!
Danke Oliver! Ich werde das gleich mal versuchen.
Gebe Dir eine Rückmeldung, wenn es geklappt hat.
LG, Dominic
Danke Oliver! Ich werde das gleich mal versuchen.
Gebe Dir eine Rückmeldung, wenn es geklappt hat.
LG, Dominic
Re: Benutzer-ID in Listen darstellen
Danke, Oliver. Es hat einwandfrei funktioniert. Ich habe jetzt eine Listen-Konfiguration mit SYS_USER.
Perfekt! You made my day!
LG, Dominic
Perfekt! You made my day!
LG, Dominic
Re: Benutzer-ID in Listen darstellen
@Oliver: ja. Dann wird es das Feature in 3.2 geben
Re: Benutzer-ID in Listen darstellen
Kleiner Bug-Report:
Die Registrierung erlaubt nach der Modifizierung nun, dass der User sich selbst eine ID zuweist. Das könnte unter Umständen fatal sein... wenn z.B andere User-IDs überschrieben werden.
Wenn die User-IDs vom System jedoch einfach inkrementiell vergeben werden, wird sich dies nicht auswirken. Ich hoffe einfach mal darauf und beobachte das weiter.
LG, Dominic
Die Registrierung erlaubt nach der Modifizierung nun, dass der User sich selbst eine ID zuweist. Das könnte unter Umständen fatal sein... wenn z.B andere User-IDs überschrieben werden.
Wenn die User-IDs vom System jedoch einfach inkrementiell vergeben werden, wird sich dies nicht auswirken. Ich hoffe einfach mal darauf und beobachte das weiter.
LG, Dominic
Re: Benutzer-ID in Listen darstellen
Hallo Dominic,
Das Feld ist in der Tat ein Auto-Increment Feld. Aber dennoch wäre das, was Du schilderst, nicht besonders sinnvoll und schön. Ich kann es bei mir aber gar nicht nachvollziehen. Weder in der schnellen noch in der erweiterten Registrierung. Wo kann man das ändern? Direkt im Registrierungs-Formular?
Mich macht noch ein wenig stutzig, warum bei Dir 'SYS_USER' steht. Normalerweise müsste die Spalte mit 'Benutzer' betitelt werden.
Besten Gruß
Oliver
Das Feld ist in der Tat ein Auto-Increment Feld. Aber dennoch wäre das, was Du schilderst, nicht besonders sinnvoll und schön. Ich kann es bei mir aber gar nicht nachvollziehen. Weder in der schnellen noch in der erweiterten Registrierung. Wo kann man das ändern? Direkt im Registrierungs-Formular?
Mich macht noch ein wenig stutzig, warum bei Dir 'SYS_USER' steht. Normalerweise müsste die Spalte mit 'Benutzer' betitelt werden.
Besten Gruß
Oliver
Re: Benutzer-ID in Listen darstellen
@fasse und @XimeX:
Das mit dem Pull-Request wird noch etwas dauern, ich werde nicht so schnell warm mit Git. Habe bisher ein anderes CVS genutzt und muss mir jetzt (ungern) erstmal die englischen Guides reinziehen...
Besten Gruß
Oliver
Das mit dem Pull-Request wird noch etwas dauern, ich werde nicht so schnell warm mit Git. Habe bisher ein anderes CVS genutzt und muss mir jetzt (ungern) erstmal die englischen Guides reinziehen...
Besten Gruß
Oliver
Re: Benutzer-ID in Listen darstellen
@oliver
Hier auf deutsch wenn das hilft: https://git-scm.com/book/de/v1
Hier auf deutsch wenn das hilft: https://git-scm.com/book/de/v1
Re: Benutzer-ID in Listen darstellen
@Oliver
Nein, bei mir heisst es natürlich auch Benutzer. Ich hab ein Profilfeld "SYS_USER" erstellt. Das wurde in -> Benutzer umgewandelt. Sorry, dass ich mich missverständlich ausgedrückt habe.
Das andere Phänomen taucht nun in der erweiterten Registrierung auf. Dazu ein Bild.
LG, Dominic
Nein, bei mir heisst es natürlich auch Benutzer. Ich hab ein Profilfeld "SYS_USER" erstellt. Das wurde in -> Benutzer umgewandelt. Sorry, dass ich mich missverständlich ausgedrückt habe.
Das andere Phänomen taucht nun in der erweiterten Registrierung auf. Dazu ein Bild.
LG, Dominic
Re: Benutzer-ID in Listen darstellen
Hallo Dominic,
da liegt der Hase...
Bitte *kein* zusätzliches Profilfeld anlegen, denn dieses Feld gibt es schon! Nur den Code modifizieren, bitte.
Besten Gruß
Oliver
da liegt der Hase...
Bitte *kein* zusätzliches Profilfeld anlegen, denn dieses Feld gibt es schon! Nur den Code modifizieren, bitte.
Besten Gruß
Oliver
Re: Benutzer-ID in Listen darstellen
Hallo Oliver
Habe das Profilfeld gelöscht. Jetzt passt alles! Sorry für die Aufregung um nichts.
Ich danke Dir nochmals ganz herzlich!
LG, Dominic
Habe das Profilfeld gelöscht. Jetzt passt alles! Sorry für die Aufregung um nichts.
Ich danke Dir nochmals ganz herzlich!
LG, Dominic