Bitte geben Sie einen Grund für die Verwarnung an
Der Grund erscheint unter dem Beitrag.Bei einer weiteren Verwarnung wird das Mitglied automatisch gesperrt.
Kann ich im Plugin die Anmelde-Mailadresse abfragen?
Hallo,
ich möchte basierend auf der Anmelde-Mailadresse Prüfungen ausführen (nur wenn ich als Admin angemeldet bin, entweder in der Mitgliederliste oder auf der Profil-Anzeige).
Gibt es irgendeine Möglichkeit, dass ich auf zu einem Benutzer im Plugin/Javascript die Anmelde-Mailadresse ermittle?
Danke und Gruß
Heinz
Da du ja ein bischen Anhung von Jquery hast noch folgender Tipp:
Die Notlösung für solche Dinge ist es, per $.get() einfach Teile der Administartion per Ajax zu laden und dann dort gewünschten Werte zu suchen.
Hier mal ein Beispiel, wie ich das meine. Generell ist das natürlich keine saubere Lösung und wir werden im Store keine Plugins annehmen, die solche $.get-calls verwenden - aber für deine privaten Plugins kannst du das so machen:
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function getUserMail(userid){
//url bauen
var userurl = "/admin/index.php?page=benutzer&option=edituser&page=benutzer&editid="+userid;
//HTMl-Code der Admin-Seite holen:
$.get(userurl, function(res){
//Da das ganze SEHR unsauber ist entfernen wir wenigstens die Script Tags,
// sonst werden alle Scripts im nächsten Schritt noch erstmal geladen
res = res.replace(/\n/gmi," ");
res = res.replace(/\r/gmi," ");
res = res.replace(/<script.*?<\/script>/gmi," ");
//Aus dem Rest erstellen wir uns ein Jquery-Objekt
$temp = $("<div>").html(res);
//jetzt müssen wir nur noch den richtigen input finden:
$mail = $temp.find("input[name='mail']").val();
alert("mail:"+ $mail);
});
}
Vielen Dank schon mal, das werde ich am Wochenende als Projekt starten :-)
Falls es interessiert: das ist, was ich verbessern will:
- ich habe in meinem Forum verschiedene Gruppen, die dann in jeweils in einer Benutzergruppe mit entsprechenden Berechtigungen abgebildet werden
- jede Gruppe gibt mir eine Liste mit validen Mail-Adressen, die ich jetzt bei einer Neuanmeldung schnell prüfen will
- wenn Mailadresse drin, hänge ich neuen Benutzer in die entsprechede Benutzergruppe um
- wenn nicht, muss ich beim Gruppenverantwortlichen nachfragen
Wenn ich also automatisch gegen die Liste der Mailadressen prüfen kann, spare ich einiges an Zeit. Das versuche ich jetzt mal mit deinem Tipp (entweder als Plugin oder als eigene HTML Seite, da muss ich rumspielen), Performance spielt nicht wirklich eine große Rolle, da ich das ja nur mit angemeldeten Admin machen will und das auch nur auf der Benutzerliste.
Ich werde berichten ob ich es hinbekommen habe...
Template: Business Template
Klingt sehr durchdacht und ich freue mich schon auf deinen Bericht.
Was mich interessiert, warum dir die Anmeldevariante mit e-Mail-Bestätigung und Freigabe durch den Admin nicht genügt?
Geht es darum, dass andere für dich die Adressen validieren sollen?
Viele Grüße .BiL.
Friends of Xobor
Fragen zu Plugins und Pluginideen bitte nicht per PN, sondern öffentlich oder im FoXum stellen.
Genau, jede Gruppe bekommt einen gruppenspezifischen Bereich und entscheidet selber, wen sie da reinlassen. Schnell geht das, wenn ich gegen eine Liste bekannter Mailadressen prüfe. Und das möchte ich so automatisch wie möglich haben. Noch besser wäre natürlich, wenn das automatisch gehen würde (bei Registrierung wird für solche Mailadressen direkt die richtige Benutzergruppe zugeordnet).
#7 RE: Kann ich im Plugin die Anmelde-Mailadresse abfragen?
Ich hatte gestern ein paar Stunden und habe den Tipp von Ingmar umgesetzt. Klappt wirklich:
- Ausgangspunkt ist die Admin-Seite, auf der die Mitglieder der Gruppe angezeigt werden, in die neue Registrierungen landen
- Die Liste der bekannten Benutzer und der Zuordnung zur Gruppe liegen bei mir auf meinem Homeserver
- Auf dem Homeserver gibt es ein php-Script, welches eine Liste von Mailadressen entgegennimmt, die Liste prüft und dann gefundene zurückgibt
Ergebnis: auf einer neuen eigenen html-Seite im Forum (nur für Admin zugänglich) werden die neuen Benutzer angezeigt, mit dem Status ob sie bekannt sind und zu welcher Gruppe sie in diesem Fall gehören. Von der Liste kann ich direkt in das Profile springen und die Gruppe zuordnen.
Das beschleunigt die Freigabe in meinem Fall ganz erheblich, da ich jetzt schnell erkenne, ob ich ohne Rückfrage freischalten kann; und zwar von überall, auch mit dem mobilen Gerät...
Jetzt fehlt mir eigenlich nur noch, dass ich das Zuordnen zur Gruppe auch noch automatisch machen kann...
Wen es interessiert, hier der Code der neuen Seite
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<div id="newUsers"></div>
<style>
.tableNewUsers {
margin-left: auto;
margin-right: auto;
border: 2px solid;
}
.tableNewUsers td {border: 1px solid;}
.headerline {background-color: lightgrey; font-weight:bold;}
.checkResult {background-color: lightyellow;}
.tableline {}
</style>
<script>
//get HTML forum page with user group of new users
$.get("http://www.asyl-forum.de/admin/?page=benutzer&option=userlist&groupid=12345", function(res){
var members = $("<div>").html(res).find("#resultsTable").find("tr");
var mails = [];
//build html for table with new users
var html = "<table class='tableNewUsers'>";
html += "<tr class='headerline'>";
html += "<td></td><td>Prüfung</td><td>Name</td><td>Mail</td><td>Gruppe</td><td>Registriert</td><td>Letzte Aktivität</td></tr>";
for (var i=1;i<members.length;i++){
var cells = $(members[i]).find("td");
var mail = $(cells[2]).html();
mails.push(mail);
html += "<tr class='tableline'>";
html += "<td>"+$(cells[0]).html().replace("?page","http://www.asyl-forum.de/admin/?page").replace(">edit<"," target=\"_blank\">edit<")+"</td>";
html += "<td class='checkResult' id='checkResult"+(i-1)+"'>... läuft ...</td>";
html += "<td>"+$(cells[1]).html()+"</td>";
html += "<td>"+mail+"</td>";
html += "<td>"+$(cells[4]).html()+"</td>";
html += "<td>"+$(cells[5]).html()+"</td>";
html += "<td>"+$(cells[6]).html()+"</td>";
html += "</tr>";
}
html += "</table>";
$("#newUsers").html(html);
//check mail addresses on home server
$.getJSON('http://xxxx/forumCheckUser.php?callback=?',
{mail:mails},
function(data){
var resulttext;
for (var j=0;j<mails.length;j++){
resulttext = "?";
for (var i=0;i<data.length;i++){
if (mails[j]==data[i][0]) resulttext=data[i][1];
}
$("#checkResult"+j).html(resulttext);
}
});
});
</script>
Template: Business Template
- Informationen
- Aktuelle News
- Forum Tutorials - Tipps und Anleitungen
- SEO / Werbung fürs Forum
- Verwaltung
- Extras
- Design
- Plugin(system)
- Eure Fragen zu Tutorials
- Forum Support
- Fragen und Antworten
- Pluginsystem
- Plugins
- Templates & Sprachen
- Bugreport
- Verbesserungsvorschläge
- Sponsoren gesucht
- Das neue Xobor Business-Template
- News und Updates
- Bugreport
- Allgemeines Feedback
- Verbesserungsvorschläge
- Sonstiges
- Kaffeeklatsch
- Lob & Kritik
- Verbesserungsvorschläge
- Allgemeine Fragen
- Fehlermeldungen
- Verbesserungsvorschläge Responsive Design
- Bugreport Responsive Design
- Archiv - Alter Betatest
- Responsive Design - Verbesserungsvorschläge
- Responsive Design - Bugreport
- Fragen zum neuen Template
- Neue Administration Beta Test
- Bugreport Neue Administration
- Allgemeines Fragen & Feedback
- Verbesserungsvorschläge zur neuen Administration
- Shoutbox
Ähnliche Themen
Jetzt anmelden!
Jetzt registrieren!
© 2017 Xobor | Forum-Software