Erweiterung:FlaggedRevs
Die Erweiterung Flagged Revisions, zu deutsch auch "Markierte Versionen", ermöglicht es Benutzern der Gruppe Editor (also Bearbeiter) und Reviewer (also Sichter), Versionen von Artikeln zu bewerten und diese Versionen als Standardversion auf eine normale Ansicht zu setzen. Dies ermöglicht MediaWiki, sich mehr wie ein Content Management System zu verhalten.
Installation
- Die Erweiterung herunterladen und die Datei(en) in ein Verzeichnis namens
FlaggedRevs
im Ordnerextensions/
ablegen.
Entwickler und Code-Beitragende sollten stattdessen die Erweiterung von Git installieren, mit:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/FlaggedRevs - Folgenden Code am Ende deiner LocalSettings.php -Datei einfügen:
wfLoadExtension( 'FlaggedRevs' );
- Führe das Aktualisierungsskript aus, welches automatisch die notwendigen Datenbanktabellen erstellt, die diese Erweiterung braucht.
- Konfiguriere nach Bedarf.
- Erledigt – Navigiere zu Special:Version in deinem Wiki, um zu überprüfen, ob die Erweiterung erfolgreich installiert wurde.
Einrichtung
AllowEncodedSlashes
Wenn du Apache 2.3.12 oder neuere Versionen verwendest, sollst du AllowEncodedSlashes auf „NoDecode“ setzen.
Füge die folgende Zeile zu deiner <VirtualHost>
oder, wenn du keine hast, am Ende deiner httpd.conf-Datei hinzu:
AllowEncodedSlashes NoDecode
Nachdem du httpd.conf bearbeitet hast, muss Apache neu gestartet werden.
Alter your .htaccess (if needed)
Solltest du deine URLs verkürzen , musst du eine Ausnahme in .htaccess einfügen, um die Verwendung der REST API zu erlauben.
FlaggedRevs ruft auf rest.php . Zum Beispiel:
https://[domain]/w/rest.php/flaggedrevs/internal/review/Main_Page
Wenn die .htaccess Bedingungen nicht richtig festgelegt sind, beim Aufruf der obigen URL, FlaggedRevs wird wortwörtlich versuchen auf einen Artikel mit dem Namen "W/rest.php/flaggedrevs/internal/review/Main Page
" zuzugreifen.
Hier ist eine Möglichkeit, eine Ausnahme zu .htaccess hinzuzufügen, betont hinzugefügt:
RewriteEngine On RewriteCond %{REQUEST_URI} !^/w/rest\.php RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d RewriteRule ^(.*)$ w/index.php?title=$1 [L,QSA] RewriteRule ^$ w/index.php [L,QSA]
Benutzern Sichter-Rechte zuweisen
Nach der Erstinstallation von FlaggedRevs ist das Sichter-Widget zunächst bei keinem Benutzer angezeigt. Um dies zu ändern, melde Dich als Wiki-Bürokrat an und öffne Special:UserRights und erteile Sichter-Rechte an einen oder mehrere Benutzer. Sichter werden nun das Sichter-Widget am Ende einer editierbaren Seite sehen.
Article review statistics (optional)
/var/www/mediawiki
installiert ist.Erstelle einen cron-Job, der extensions/FlaggedRevs/maintenance/updateStats.php
in einem regelmäßigen Intervall ausführt.
Führe time php updateStats.php
aus um herauszufinden, wie lange die Skriptausführung dauert und stelle das Intervall des Cronjobs entsprechend ein.
Um beispielsweise einen Cronjob zu erstellen, der updateStats.php
als Benutzer www-data
jede Stunde ausführt:
@hourly php /var/www/mediawiki/extensions/FlaggedRevs/maintenance/updateStats.php
Konfiguration
Teile dieser Seite (die in Bezug auf Funktionen, die in der Master-Version entfernt wurden) sind veraltet. |
Benutzerrechte und Benutzergruppen
Standardmäßig kann niemand etwas überprüfen. Der erste Schritt ist es also Benutzerrechte einzurichten.
Benutzergruppen | Benutzerrechte |
---|---|
reviewer | validate |
review | |
editor | |
autoreview | |
unreviewedpages |
Benutzerrechte
FlaggedRevs erstellt die folgenden neuen Benutzerrechte:
review
– Benutzer kann Revisionen überprüfenvalidate
– Der Benutzer kann Überarbeitungen überprüfen und alle Tags für alle Ebenen festlegenautoreview
– alle neuen Überarbeitungen, die der Nutzer vornimmt, werden automatisch als gesichtet markiertautoreviewrestore
– Autoreview der vom Benutzer vorgenommenen Rollbacks.unreviewedpages
– der Benutzer kann Special:UnreviewedPages anzeigenstablesettings
– Der Benutzer kann die Einstellungen der stabilen Revisionen einer beliebigen Seite ändernmovestable
– Nutzer können Seiten mit stabilen Revisionen verschieben
Benutzergruppen
FlaggedRevs erstellt die folgenden neuen Benutzergruppen:
editor
– erhältautoreview, review, unreviewedpages
, plus die standarde MediaWiki-Benutzerrechteautoconfirmed, editsemiprotected
reviewer
– erhältautoreview, review, unreviewedpages, validate
, plus die standarde MediaWiki-Benutzerrechteautoconfirmed, editsemiprotected
autoreview
– erhältautoreview
Benutzerrechte zuweisen
Benutzerrechte können auf zwei Arten vergeben werden:
- Zuweisung von Rechten an Benutzergruppen
Weise diese Benutzerrechte den bestehenden Benutzergruppen inLocalSettings.php
zu:
$wgGroupPermissions['sysop']['review'] = true; //allow administrators to review revisions
- Zuweisung von Rechten an bestimmte Benutzer
Füge Benutzerkonten manuell über Special:UserRights zu den entsprechenden Gruppen hinzu.
- Standardmäßig:
- Bürokraten können Prüfer hinzufügen/entfernen
- Administratoren können sowohl Autoreviewer als auch Bearbeiter hinzufügen/entfernen.
Grundeinstellungen
FlaggedRevs.php
verfügt über eine Reihe von konfigurierbaren Variablen.
Diese sollten in LocalSettings.php
konfiguriert werden.
$wgFlaggedRevsNamespaces
– Legt fest, welche Namespaces dem Überprüfungsprozess unterworfen werden können. Dies ist ein Array mit ganzen Zahlen. Siehe Manual:Namespace constants , um zu sehen, zu welcher ganzen Zahl die Standard-Namenräume abgelegt werden, und verwenden Sie die definierten Konstanten für die Lesbarkeit.$wgFlaggedRevsTags
– Setzt die Tags und ihre 'levels' Einstellung.- Definition
$wgFlaggedRevsTags
ist ein assoziativer Array mit Schlüsseln, die jedem Tagnamen entsprechen. Der einzige sinnvolle Wert des Arrays ist 'levels', der die Anzahl der Überprüfungsniveaus steuert, und das Array kann nur ein Element haben.- Kennzeichnung
- Each tag can be labeled editing the page MediaWiki:revreview-<tag-name>.
- Each tag level can be labeled editing the page MediaWiki:revreview-<tag-name>-<level-number>.
- By default, the tag is labeled as it appears in the
$wgFlaggedRevsTags
array. To override this, and show tags for example as their capitalized name, the admins have to edit these pages with the shown content, for example changing the content of MediaWiki:revreview-accuracy
- To label the tag levels, the admins have to create these pages with the shown content:
Tag level labeling page Inhalt accuracy 0 MediaWiki:revreview-accuracy-0 unzureichend 1 MediaWiki:revreview-accuracy-1 Überprüft 2 MediaWiki:revreview-accuracy-2 geprüft
- The resulting setup will be:
Tag-Namen level names Status unzureichend Überprüft geprüft
$wgFlaggedRevsOverride
– Whether the stable version is the default content for pages.- Individual pages can be configured to have the stable or draft version as the default content by administrators.
$wgFlaggedRevsTagsRestrictions
– An array with keys corresponding to each flag type, and values that are arrays of rights and how high users with it can rate the flags (integral tag level).- Beispiel
$wgFlaggedRevsTagsRestrictions = [ 'accuracy' => [ 'review' => 1 ], ];
Benutzeroberfläche
$wgSimpleFlaggedRevsUI
– When enabled, a simpler, icon based UI is used. Does not affect the tags shown in edit mode.$wgFlaggedRevsLowProfile
– This setting hides the review status box/bar for pages that are reviewed in their latest version. Explanatory text is also removed from some places.
Ablauf
$wgFlaggedRevsAutoReview
– If enabled, every edit by a user with 'autoreview' rights is automatically reviewed upon save. There is no need to hit the "submit review" button. This feature requires that the previous revision was also reviewed; otherwise, auto-review will not occur.$wgFlaggedRevsTagsAuto
– IfwgFlaggedRevsAutoReview
is enabled, this settings controls how high each tag can be auto-reviewed. If allowed, tags will be auto-reviewed to the same level the previous revision tags were. This is an associative array; each key is a tag and each value is a tag level.- Beispiel
$wgFlaggedRevsTagsAuto = [ 'accuracy' => 1 ];
- Changes in templates are auto-reviewed (per-page). This could possibly cause bad versions to be reviewed. Users should be encouraged to use preview or review the page after saving. You may want to set
$wgNamespaceProtection[NS_TEMPLATE]
as[ 'editor' ]
or[ 'autoconfirmed' ]
Automatische Benutzerbeförderung
$wgFlaggedRevsAutopromote
– An array with keys for days, edits, time spacing, benchmarks, emailconfirmed, recent content page edits, total content edits, content pages edited, edit summaries used, IP uniqueness, and userpage existence as keys. The values correspond to how many days/edits are needed for a user account to be autopromoted to Editor status and whether they must be emailconfirmed and have a user page do so. The user must have at least X edits that are Y or more days apart, where X is the number of benchmarks and Y is the time spacing. Set this variable to false to disable this entirely.- If a user has their Editor rights removed, they will not automatically be re-granted (the editor status log is checked for revocations).
- Some of these counts are not retroactive, so you may notice a delay in promotions.
- Beispiel
- For
$wgFlaggedRevsAutopromote
, one might have: $wgFlaggedRevsAutopromote['days'] = 60; # days since registration $wgFlaggedRevsAutopromote['edits'] = 150; # total edit count $wgFlaggedRevsAutopromote['excludeDeleted'] = true; # exclude deleted edits from 'edits' count above? $wgFlaggedRevsAutopromote['spacing'] = 3; # spacing of edit intervals $wgFlaggedRevsAutopromote['benchmarks'] = 15; # how many edit intervals are needed? $wgFlaggedRevsAutopromote['recentContentEdits'] = 10; # $wgContentNamespaces-Bearbeitungen in den letzten Änderungen $wgFlaggedRevsAutopromote['totalContentEdits'] = 30; # $wgContentNamespaces-Bearbeitungen $wgFlaggedRevsAutopromote['uniqueContentPages'] = 10; # $wgContentNamespaces unique pages edited $wgFlaggedRevsAutopromote['editComments'] = 5; # how many edit comments used? $wgFlaggedRevsAutopromote['email'] = true; # user must be emailconfirmed? $wgFlaggedRevsAutopromote['userpageBytes'] = 0; # if userpage is needed, what is the min size?
Erweitert
$wgFlaggedRevsRestrictionLevels
- Restriction levels forautoreview
/review
rights. When a level is selected for a page, an edit made by a user will not be auto-reviewed if the user lacks the specified permission. Levels are set at Special:Stabilization.$wgFlaggedRevsProtection
- Set this to use FlaggedRevs only as a protection-like mechanism (Help:Pending changes ), rather than the standard configuration.$wgFlaggedRevsAutoConfirm
- Define when users get to have their own edits auto-reviewed. Set tofalse
to disable.$wgFlaggedRevsHandleIncludes
- Whether to use stable versions of templates when rendering the stable version of a page.
To have a wiki where non-users can only see the stable version of articles, see Extension:FlaggedRevs/Restricting unapproved revisions .
Verwendung
- Siehe auch: Help:FlaggedRevs
Seiten genehmigen
Users with some level of review status will have a small rating form on page view (at the bottom of the page) and diffs (at the top of the page) that lets them review revisions. Each tag must at least meet the minimal level of approval. Users should look at the whole page, included templates and images, before reviewing. The (diff to stable) link is very useful for speeding up this process.
Users cannot review a page which they cannot edit. They cannot lower the level of a revision from a level they cannot set. Blocked users cannot do anything.
Pflege
At Special:UnreviewedPages, there is a list of pages that have not yet been reviewed, for Editors only. A namespace must be selected and an optional category filter is also present.
At Special:OldReviewedPages, there is a list of pages that have been reviewed, but have edits pending. This is for Editors only. An optional category filter is also present.
Pages that cannot be reviewed can still be patrolled for anti-vandalism purposes by Editors to see what has been checked already.
Protokollierung
All relevant actions are permanently logged, so everything can be tracked and overseen properly.
- A log of promotion/demotion of editors and the reasons is kept at Special:Log/userrights.
- A log of the approval/unapproval of revisions is kept at Special:Log/review.
- A log of changes to the stable versioning configuration to pages is logged at Special:Log/stable.
Hinweise
$wgUseRCPatrol
is enabled with the extension.
Patrolling of reviewable pages is disabled, but flagged revisions are marked as patrolled in Recent Changes. This will mean that the only way to patrol a reviewable revision is to flag it. Non-reviewable pages still behave as normal (depending on site patrol settings).
- Sysops can change whether the stable version is shown by default for specific pages.
To disable this, add $wgGroupPermissions['sysop']['stablesettings'] = false;
to LocalSettings.php
.
- Page links, category, image, template, language, and external links are still based on the current version of pages.
- Users cannot move pages they cannot review.
This is deliberate; see task T15994. To work around this, add $wgGroupPermissions['autoconfirmed']['movestable'] = true;
to LocalSettings.php
- You can demote Editors either temporarily by blocking them or permanently via Special:UserRights.
An extra demotion log item will appear for tracking purposes.
API
FlaggedRevs adds API modules for reviewing revisions and configuring "stabilization" of pages, a module for retrieving flag configuration, and two list modules corresponding to the special pages for unreviewed pages and "old" reviewed pages.
action=review
Reviews a page.
- Parameter
revid
: The revision ID for which to set the flagstoken
: A csrf token retrieved through action=query&meta=tokenscomment
: Comment for the review (optional)flag_accuracy
: Set the flag named "accuracy" to the specified value; (replace "accuracy" with the flag name to set another flag)unapprove
: If set, revision will be unapproved rather than approved
- Beispiel
Ergebnis |
---|
<api>
<review revid="12345" />
</api>
|
action=stabilize
Changes page stabilization settings.
- Parameter
title
: Title of page to be stabilizedreason
: Reason for stabilizationexpiry
: Stabilization expiry. Default: infinitereview
: Whether to auto-review the pagewatch
: Whether to watch the pagetoken
: An edit token retrieved through action=query&meta=tokens
- For protection-like configurations (
$wgFlaggedRevsProtection=true
):
protectlevel
: The right users must have in order for their edits to not require review.
- Otherwise (
$wgFlaggedRevsProtection=false
):
default
: Default revision to show (latest | stable)autoreview
: Restriction level for the 'autoreview' right (sysop | none). Default: none
- Beispiel
Ergebnis |
---|
<api>
<stabilize title="Foo" default="stable" autoreview="none" expiry="infinite" />
</api>
|
action=flagconfig
Shows information about review flag configuration.
The following parameters are returned for each tag:
name
: the name of the flaglevels
: the number of possible levels the flag has (not counting the "unreviewed" level)
The displayed name for each flag and the different level names for each flag are MediaWiki messages, so can be set and retrieved through the appropriate page; for example the name for the first level of the "accuracy" flag is located at MediaWiki:revreview-accuracy-1.
- Beispiel
Ergebnis |
---|
<api>
<flagconfig>
<tag name="value" levels="3" tier1="1" />
</flagconfig>
</api>
|
list=unreviewedpages
Lists pages which have never been reviewed.
- Parameter
urstart
: Start listing at this page title.urend
: Stop listing at this page title.urnamespace
: The namespaces to enumerate.urfilterredir
: How to filter for redirectsurfilterlevel
: How to filter by quality (0=sighted,1=quality)urlimit
: How many total pages to return.
- Beispiel
Ergebnis |
---|
<api>
<query-continue>
<unreviewedpages urstart="Arbeitgeberverband_Chemie_und_verwandte_Industrien_für_das_Land_Hessen" />
</query-continue>
<query>
<unreviewedpages>
<p pageid="4762806" ns="0" title="Aaftink" revid="65175047" />
<p pageid="4747500" ns="0" title="Abt RS6" revid="64976429" />
<p pageid="4749877" ns="0" title="Acht Vorlesungen über den Konstruktiven Realismus" revid="65089962" />
<p pageid="4758156" ns="0" title="Alkylglycerole" revid="65169004" />
<p pageid="4719044" ns="0" title="All Riot" revid="64767732" />
<p pageid="4745418" ns="0" title="Allgäu-Panorama-Marathon" revid="64974783" />
<p pageid="4729976" ns="0" title="An- und Einpressen" revid="64742640" />
<p pageid="4742559" ns="0" title="Anjara I. Bartz" revid="64925772" />
<p pageid="4740681" ns="0" title="Anthony Norris Groves" revid="65064712" />
<p pageid="4759964" ns="0" title="Antonino Asta" revid="65169073" />
</unreviewedpages>
</query>
</api>
|
list=oldreviewedpages
Lists pages that have at some point been reviewed, but for which the most recent revision is not reviewed.
- Parameter
orstart
: Start listing from this timestamporend
: Stop listing at this timestamp.ordir
: In which direction to list.ornamespace
: The namespaces to enumerate.orfilterredir
: How to filter for redirectsorlimit
: How many total pages to return.
- Beispiel
Ergebnis |
---|
<api>
<query-continue>
<oldreviewedpages orstart="2009-09-15T20:23:05Z" />
</query-continue>
<query>
<oldreviewedpages>
<p pageid="144735" ns="0" title="Two International Finance Centre" revid="64562654" stable_revid="62769201" pending_since="2009-09-15T16:16:33Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="1629949" ns="0" title="Porta San Sebastiano" revid="64791898" stable_revid="61610797" pending_since="2009-09-15T16:19:32Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="2157354" ns="0" title="Entwicklungspolitik der Europäischen Union" revid="64640078" stable_revid="59929751" pending_since="2009-09-15T16:38:33Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="971904" ns="0" title="Federpendel" revid="65142775" stable_revid="59587441" pending_since="2009-09-15T17:37:29Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="3106812" ns="0" title="Soultzbach-les-Bains" revid="64552516" stable_revid="60455707" pending_since="2009-09-15T19:04:07Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="1223029" ns="0" title="VfR Bürstadt" revid="65150048" stable_revid="62925935" pending_since="2009-09-15T19:35:30Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="829158" ns="0" title="GSP" revid="64553869" stable_revid="62913440" pending_since="2009-09-15T19:38:46Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="3453867" ns="0" title="Agios Dimitrios" revid="65103799" stable_revid="64544222" pending_since="2009-09-15T19:47:10Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="2583263" ns="0" title="Jörg Kudlich" revid="64554475" stable_revid="62429967" pending_since="2009-09-15T20:03:24Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="325478" ns="0" title="Liste deutscher Komponisten klassischer Musik" revid="65089571" stable_revid="63582610" pending_since="2009-09-15T20:21:55Z" flagged_level="0" flagged_level_text="stable" />
</oldreviewedpages>
</query>
</api>
|
prop=flagged
Use action=query&prop=flagged to get information about the flagging status of the given pages.
Begrenzungen
- Transclusions across wikis are not stabilized
Deinstallieren
- Remove the
require_once
orwfLoadExtension
line fromLocalSettings.php
- Drop the tables in
FlaggedRevs.sql
- Drop the columns
page_ext_reviewed
,page_ext_quality
, andpage_ext_stable
, and the indexext_namespace_reviewed
from thepage
table (if they exist; only older versions of FlaggedRevs used these)
- Run
maintenance/refreshLinks.php
from the command line to flush out the stable version links
- Run
maintenance/rebuildFileCache.php 0 overwrite
from the command line if you use$wgFileCache
Testplattformen
Siehe auch
- Hilfe:Überprüfte Bearbeitungen
- Extension:FlaggedRevs/Specifications
- Erweiterung:Approved Revs - allows administrators to mark a specific revision of a page as "approved"
- Extension:ContentStabilization - allows users to mark pages as "approved" or "draft" and to view the most recent approved version of a page
- Extension:Moderation – edits remain private until they're approved
- Extension:Page Approvals - allows users to approve pages and automatically revokes them in case of content changes
- Flagged Revisions on Wikimedia projects
- Project:Editor – documentation about the user groups and rights created by this extension, while it was at use on mediawiki.org
Weblinks
- Quality Assurance in an Open Project – 2008 Wikimedia blog post
- Bilder von Flagged Revisions – Wikimedia Commons
- Über Flagged Revisions – Meta-Wiki
Lizenzierung
© GPL, Aaron Schulz, Joerg Baach, 2007
Diese Erweiterung wird in einem oder mehreren Wikis von Wikimedia verwendet. Das bedeutet mit hoher Wahrscheinlichkeit, dass die Erweiterung stabil ist und gut genug funktioniert, um auf solch häufig besuchten Webseiten benutzt zu werden. Suche nach dem Erweiterungs-Namen in den Wikimedia CommonSettings.php und den InitialiseSettings.php-Konfigurations-Dateien, um nachzusehen, wo es installiert ist. Eine vollständige Liste der installierten Erweiterungen in einem bestimmten Wiki wird auf Special:Version im Wiki generiert und angezeigt. |
Diese Erweiterung ist in den folgenden Softwarepaketen enthalten und/oder wird von den folgenden Wiki-Farmen, bzw. Wiki-Hostern verwendet: Dies ist keine maßgebliche Liste. Softwarepakete und/oder Wiki-Farmen, bzw. Wiki-Hoster nutzen diese Erweiterung ggf., obwohl sie nicht in dieser Liste enthalten sind. Prüfe daher stets die Nutzung im verwendeten Softwarepaket und/oder bei der Wiki-Farm, bzw. dem Wiki-Hoster. |
Dieses Werk ist freie Software; sie darf weiterverteilt und/oder verändert werden unter der GNU General Public License, wie sie von der Free Software Foundation veröffentlicht wurde; dazu gelten die Bestimmungen der Version 2 oder einer späteren Version. Dieses Werk wurde in der Hoffnung veröffentlicht, dass es sich als nützlich erweisen könnte, jedoch ohne Garantie; auch ohne implizierter Garantie der Marktgängigkeit oder der Eignung zu einem bestimmten Zweck. Weitere Einzelheiten in der Version 2 und Version 3 der GNU General Public License. |