Handbuch:$wgAutopromote
Zugang: $wgAutopromote | |
---|---|
Bedingungen für die automatische Einordnung von Benutzern in bestimmten Benutzergruppen |
|
Eingeführt in Version: | 1.12.0 (r28797) |
Entfernt in Version: | Weiterhin vorhanden |
Erlaubte Werte: | (Array) |
Standardwert: | (siehe unten) |
Andere Einstellungen: Alphabetisch | Nach Funktion |
Details
Dieses Array beinhaltet die Kriterien für eine automatische Beförderung. Die Syntax ist wie folgt:
$wgAutopromote = [
'groupname' => cond,
'group2' => cond,
];
cond
kann hier sein:
- eine einzelne Vorraussetzung
- eine Liste von Vorraussetzungen
Mögliche Bedingungen =
Mögliche Bedingungen sind (definiert in Defines.php , Erweiterungen können weitere über den AutopromoteCondition -Hook hinzugefügen):
Bedingung | Beschreibung | Argument(e) |
---|---|---|
APCOND_EDITCOUNT | eine bestimmte Anzahl von Bearbeitungen ist nötig. Falls der Wert null ist oder fehlt wird $wgAutoConfirmCount benutzt
|
Integer |
APCOND_AGE | eine bestimmte Anzahl von Sekunden seit der Registrierung ist nötig Falls der Wert null ist oder fehlt wird $wgAutoConfirmAge benutzt
|
Integer |
APCOND_EMAILCONFIRMED | Die Email-Adresse muss bestätigt sein | (Nicht anwendbar) |
APCOND_INGROUPS | Eine Liste von Gruppen in der sich der Benutzer befinden muss | z.B.:, 'sysop', 'bureaucrat', 'bot'
|
APCOND_ISIP | Der Benutzer muss eine bestimmte IP-Adresse haben | z.B.:, '1.2.3.4' or '2001:0db8:85a3::7344'
|
APCOND_IPINRANGE | Der Benutzer muss eine IP-Adresse in einem bestimmten IP-Bereich haben | Siehe Manual:IP ranges |
APCOND_AGE_FROM_EDIT | eine bestimmte Anzahl von Sekunden seit der ersten Bearbeitung ist nötig | Integer |
APCOND_BLOCKED | Konto ist gesperrt (hinzugefügt in v1.16: r52083) | (Nicht anwendbar) |
APCOND_ISBOT | Konto ist ein Bot | (Nicht anwendbar) |
Bedingungen mit und ohne Argumenten
Die Bedingungen können in zwei Formen angegeben werden:
APCOND_EMAILCONFIRMED # Bedingung ohne Argumente
array( APCOND_EDITCOUNT, 100 ) # Bedingung mit einem Argument
Mögliche Bedingungen =
Letzteres hat folgende Syntax:
[ 'operand', cond1, cond2, ... ];
Es gibt 4 Operanden (operand):
- & (AND) — Benutzer befördern, wenn alle Bedingungen zutreffen
- | (OR) — Benutzer befördern, wenn mindestens eine Bedingung zutrifft
- ^ (XOR) — Benutzer befördern, wenn nur eine Bedingung zutrifft
- ! (NOT) — Benutzer befördern, wenn keine der Bedingungen zutrifft
Die möglichen Bedingungen werden rekursiv ausgewertet, so dass verschachtelte Bedingungen verwendet werden können, die durch Operanden verbunden sind.
Einschränkungen
MediaWiki prüft, ob ein Benutzer die Bedingungen für die Autopromotion erfüllt, wenn es die Rechte des Benutzers oder die effektiven Gruppen überprüft. Das bedeutet, dass ein Benutzer nur dann in einer Gruppe auf Special:ListUsers erscheint, wenn er über Special:UserRights zu dieser Gruppe hinzugefügt wurde.
Seit MediaWiki 1.18 kann man stattdessen AutopromoteOnce verwenden, das Benutzer ganz normal zu einer Gruppe hinzufügt, wenn sie die angegebenen Kriterien erfüllen und nicht vorher degradiert wurden. Alternativ könnte $wgRevokePermissions (MW 1.16+) nützlich sein.
Temporäre Benutzer können nicht automatisch befördert werden, da sie keinen Benutzergruppen zugewiesen werden können.
Standardwerte
MediaWiki Version: | ≥ 1.38 |
$wgAutopromote = [
'autoconfirmed' => [ '&',
[ APCOND_EDITCOUNT, null],
[ APCOND_AGE, null ],
],
];
MediaWiki Versions: | 1.13 – 1.37 |
$wgAutopromote = [
'autoconfirmed' => [ '&',
[ APCOND_EDITCOUNT, &$wgAutoConfirmCount ],
[ APCOND_AGE, &$wgAutoConfirmAge ],
],
];
MediaWiki Version: | 1.12 |
$wgAutopromote = array(
'autoconfirmed' => array( '&',
array( APCOND_EDITCOUNT, &$wgAutoConfirmCount ),
array( APCOND_AGE, &$wgAutoConfirmAge ),
),
'emailconfirmed' => APCOND_EMAILCONFIRMED,
);
Beispiel
Wenn du jeden Benutzer automatisch zum Kapitän befördern möchtest, sobald er seine E-Mail-Adresse bestätigt hat und entweder mindestens 100 Änderungen vorgenommen hat oder sein Konto vor mindestens 60 Tagen registriert hat, kannst du das so machen:
$wgAutopromote = [
'captain' => [
'&',
APCOND_EMAILCONFIRMED,
[
'|',
[ APCOND_EDITCOUNT, 100 ],
[ APCOND_AGE, 60*86400 ],
],
],
];
Beachte, dass dadurch alle anderen Autopromote-Gruppen verschwinden würden. Um stattdessen die Autopromote-Gruppe captain hinzuzufügen und die bereits existierenden Autopromote-Gruppen beizubehalten, würde man folgendes verwenden:
$wgAutopromote['captain'] = [
'&',
APCOND_EMAILCONFIRMED,
[
'|',
[ APCOND_EDITCOUNT, 100 ],
[ APCOND_AGE, 60*86400 ],
],
];