Laajennus:FlaggedRevs

This page is a translated version of the page Extension:FlaggedRevs and the translation is 27% complete.
Varoitus Varoitus: Flagged Revisions is very clunky, complex and not recommended for production use, despite the "stable" tag. Katso phab:T185664. This extension has not been installed on any new WMF wikis since 2014.
MediaWikin laajennukset-ohje
Flagged Revisions
Julkaisustatus: vakaa
Toteutus Käyttöliittymä, Toimintosivu , Käyttöoikeus , Tietokanta , Ajax, API
Kuvaus Sallii artikkelin sisällön hallinnan luokkien "seuloja" ja "sisällöntarkastaja" mukaan.
Tekijä(t) Aaron Schulz, Joerg Baach
Yhteensopivuuskäytäntö Snapshots releases along with MediaWiki. Master is not backward compatible.
MediaWiki >= 1.43
Tietokantamuutokset Kyllä
Taulukot flaggedpages
flaggedpage_pending
flaggedrevs
flaggedpage_config
flaggedrevs_tracking
flaggedrevs_promote
flaggedrevs_statistics
Lisenssi GNU General Public License 2.0 tai myöhempi
Lataa
  • $wgFlaggedRevsRestrictionLevels
  • $wgSimpleFlaggedRevsUI
  • $wgFlaggedRevsTagsAuto
  • $wgFlaggedRevsAutoReview
  • $wgFlaggedRevsHandleIncludes
  • $wgFlaggedRevsTagsRestrictions
  • $wgFlaggedRevsTags
  • $wgFlaggedRevsLowProfile
  • $wgFlaggedRevsAutoconfirm
  • $wgFlaggedRevsOverride
  • $wgFlaggedRevsProtection
  • $wgFlaggedRevsAutopromote
  • $wgFlaggedRevsNamespaces

  • review
  • validate
  • autoreview
  • autoreviewrestore
  • unreviewedpages
  • stablesettings
  • movestable
Quarterly downloads 76 (Ranked 64th)
Käännä laajennus FlaggedRevs
Ongelmat Avoimet tehtävät · Raportoi ongelmasta

Merkityt versiot -laajennus (Flagged Revisions) sallii seulojien ja sisälläntarkastajien oikeudet omaavien käyttäjien arvioida artikkelien versiot ja asettaa niitä oletusversioiksi, jotka näkyvät normaalissa sivun katselutilassa. Tämä sallii MediaWikin toimia enemmän sisällönhallintajärjestelmän (CMS) kaltaisesti.

  • Lataa ja siirrä purettu kansio nimeltä FlaggedRevs extensions/-kansioosi.
    Kehittäjien ja koodipaikkauksia tekevien tahojen tulisi asentaa laajennos git-versionhallintaohjelmaa käyttäen:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/FlaggedRevs
  • Lisää seuraava koodi LocalSettings.php -tiedostosi loppuosaan:
    wfLoadExtension( 'FlaggedRevs' );
    
  • Suorita päivitysskripti, joka luo automaattisesti tarvittavat tietokantataulut, joita tämä laajennos käyttää.
  • Määritä tarvittaessa.
  • Yes Tehty – Mene wikisi sivulle Special:Version vahvistaaksesi, että laajennoksen asennus onnistui.

Asennus

AllowEncodedSlashes

If you are using Apache 2.3.12 or later, you should set AllowEncodedSlashes to "NoDecode". Add the following line to your ‎<VirtualHost> or, if you don't have one, at the end of your httpd.conf file:

AllowEncodedSlashes NoDecode

After you edited httpd.conf, Apache needs to be restarted.

Alter your .htaccess (if needed)

If you are shortening your URLs , you need to add an exception to .htaccess to allow the use of the REST API .

FlaggedRevs calls on rest.php . For example:

https://[domain]/w/rest.php/flaggedrevs/internal/review/Main_Page

If the .htaccess conditions are not properly set when the above url is called, FlaggedRevs will literally try to access an article named "W/rest.php/flaggedrevs/internal/review/Main Page".

Here is one way to add an exception to .htaccess, emphasis added:

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]

Promote users to reviewers

After FlaggedRevs is first installed, no user can see the reviewer's widget. To fix this, login as a wiki bureaucrat and go to Special:UserRights, then grant review rights to one or more users. Reviewers will see the reviewer's widget on the bottom of an editable page.

Article review statistics (optional)

This applies to Unix-like systems and assumes that MediaWiki is installed in /var/www/mediawiki.

For a scheduled collection of article review statistics, create a cron job to run extensions/FlaggedRevs/maintenance/updateStats.php at a regular interval. Run time php updateStats.php to see how long the script takes to run and set your cron jobs interval appropriately. For example, to create a cron job that runs updateStats.php every hour, add the following to the crontab for the user running the web server (e.g., www-data):

@hourly php /var/www/mediawiki/extensions/FlaggedRevs/maintenance/updateStats.php

Määritys

Käyttöoikeudet ja ryhmät

By default, nobody can review anything, so the first step is to set up user rights.

Käyttäjäryhmät Käyttöoikeudet
reviewer validate
review
editor
autoreview
unreviewedpages

Käyttöoikeudet

FlaggedRevs luo seuraavat käyttöoikeudet:

  • review – käyttäjä voi merkitä versioita arvioiduksi
  • validateuser can review revisions and can set all tags to all levels
  • autoreviewany new revisions made by the user are automatically marked as sighted
  • autoreviewrestoreautoreview of the rollbacks made by the user.
  • unreviewedpages – käyttäjä voi katsoa sivua Special:UnreviewedPages
  • stablesettingsuser can changes the settings of stable revisions of any page
  • movestableuser can move pages with stable revisions

Käyttäjäryhmät

FlaggedRevs luo seuraavat ryhmät:

  • editorreceive autoreview, review, unreviewedpages, plus the standard MediaWiki user rights autoconfirmed, editsemiprotected
  • reviewerreceive autoreview, review, unreviewedpages, validate, plus the standard MediaWiki user rights autoconfirmed, editsemiprotected
  • autoreviewreceive autoreview

How to assign user rights

User rights can be assigned in two ways:

  • Assigning rights to user groups


Assign these user rights to existing user groups in LocalSettings.php :

$wgGroupPermissions['sysop']['review'] = true; //allow administrators to review revisions
  • Assigning rights to specific users


Manually add user accounts to the appropriate groups via Special:UserRights.

Oletuksena:
  • Bureaucrats can add/remove Reviewers
  • Administrators can add/remove both Autoreviewers and Editors.

Perusasetukset

FlaggedRevs.php tulee lukuisien konfiguroitavien muuttujien kanssa. Ne tulee konfiguroida tiedostossa LocalSettings.php.

  • $wgFlaggedRevsNamespaces – Asettaa arviointiprosessin kohteena olevat nimiavaruudet. This is an array of integers. See Manual:Namespace constants to see what integer the default namespaces map to and use the defined constants for readability.
  • $wgFlaggedRevsTagsSets the tags and their 'levels' setting.
    Määritelmä
    $wgFlaggedRevsTags is an associative array with keys corresponding to each tag name. The only meaningful value of the array is 'levels', which controls the number of review levels, and the array can only have one element.
    Labeling
    • 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 taso labeling page sisältö
accuracy 0 MediaWiki:revreview-accuracy-0 Puutteellinen
1 MediaWiki:revreview-accuracy-1 Silmäilty
2 MediaWiki:revreview-accuracy-2 Kunnossa
The resulting setup will be:
tag names tasojen nimet
Paikkansapitävyys Puutteellinen Silmäilty Kunnossa
  • $wgFlaggedRevsOverrideWhether 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.
  • $wgFlaggedRevsTagsRestrictionsAn 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).
    Esimerkki
    $wgFlaggedRevsTagsRestrictions = [
    	'accuracy' => [ 'review' => 1 ],
    ];
    

Käyttöliittymä

  • $wgSimpleFlaggedRevsUIWhen enabled, a simpler, icon based UI is used. Does not affect the tags shown in edit mode.
  • $wgFlaggedRevsLowProfileThis setting hides the review status box/bar for pages that are reviewed in their latest version. Explanatory text is also removed from some places.

Workflow

  • $wgFlaggedRevsAutoReviewIf 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.
  • $wgFlaggedRevsTagsAutoIf wgFlaggedRevsAutoReview 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.
    Esimerkki
    $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' ]

Automatic user promotion

  • $wgFlaggedRevsAutopromoteAn 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.
    • Jos käyttäjältä on poistettu seulojan oikeudet, hänelle ei myönnetä niitä uudestaan automaattisesti (seulojastatusloki tarkistetaan peruutuksen varalta).
    • Some of these counts are not retroactive, so you may notice a delay in promotions.
    Esimerkki
    For $wgFlaggedRevsAutopromote, one might have:
    $wgFlaggedRevsAutopromote['days'] = 60; # päivää rekisteröitymisestä
    $wgFlaggedRevsAutopromote['edits'] = 150; # kokonaismuokkausmäärä
    $wgFlaggedRevsAutopromote['excludeDeleted'] = true; # jätetäänkö poistetut muokkaukset pois ylläolevasta 'edits'-laskurista?
    $wgFlaggedRevsAutopromote['spacing'] = 3; # spacing of edit intervals
    $wgFlaggedRevsAutopromote['benchmarks'] = 15; # how many edit intervals are needed?
    $wgFlaggedRevsAutopromote['recentContentEdits'] = 10; # $wgContentNamespaces muokkausta viimeaikaisissa muutoksissa
    $wgFlaggedRevsAutopromote['totalContentEdits'] = 30; # $wgContentNamespaces muokkausta
    $wgFlaggedRevsAutopromote['uniqueContentPages'] = 10; # $wgContentNamespaces unique pages edited
    $wgFlaggedRevsAutopromote['editComments'] = 5; # how many edit comments used?
    $wgFlaggedRevsAutopromote['email'] = true; # täytyykö käyttäjän olla vahvistanut sähköpostiosoitteensa?
    $wgFlaggedRevsAutopromote['userpageBytes'] = 0; # jos käyttäjällä täytyy olla käyttäjäsivu, mikä on sen minimikoko?
    

Edistynyt

  • $wgFlaggedRevsRestrictionLevels - Restriction levels for autoreview/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 to false 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 .

Käyttö

Katso myös: Help:FlaggedRevs

Sivujen hyväksyminen

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.

Käyttäjät eivät voi tarkastaa sivuja, joita he eivät voi muokata. He eivät voi alentaa version tasoa tasolta, jota he eivät voi asettaa. Estetyt käyttäjät eivät voi tehdä mitään.

 

Ylläpito

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. Tämä on vain seulojille. 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.

Logging

All relevant actions are permanently logged, so everything can be tracked and overseen properly.

  • A log of changes to the stable versioning configuration to pages is logged at Special:Log/stable.

Huomautukset

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

Tarkastaa sivun.

Parametrit
  • revid: The revision ID for which to set the flags
  • token: A csrf token retrieved through action=query&meta=tokens
  • comment: 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
Esimerkki
Review revision 12345
Result
<api>
  <review revid="12345" />
</api>

action=stabilize

Changes page stabilization settings.

Parametrit
  • title: Title of page to be stabilized
  • reason: Reason for stabilization
  • expiry: Stabilization expiry. Default: infinite
  • review: Whether to auto-review the page
  • watch: Whether to watch the page
  • token: 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
Esimerkki
Configure the page "Foo" such that only reviewed revisions are shown by default
Result
<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: lipun nimi
  • levels: 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.

Esimerkki
Retrieve flag configuration
Result
<api>
  <flagconfig>
    <tag name="value" levels="3" tier1="1" />
  </flagconfig>
</api>

list=unreviewedpages

Lists pages which have never been reviewed.

Parametrit
  • urstart: Start listing at this page title.
  • urend: Stop listing at this page title.
  • urnamespace: The namespaces to enumerate.
  • urfilterredir: How to filter for redirects
  • urfilterlevel: How to filter by quality (0=sighted,1=quality)
  • urlimit: How many total pages to return.
Esimerkki
List pages in the main namespace that have not been "sighted"
Result
<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.

Parametrit
  • orstart: Start listing from this timestamp
  • orend: Stop listing at this timestamp.
  • ordir: In which direction to list.
  • ornamespace: The namespaces to enumerate.
  • orfilterredir: How to filter for redirects
  • orlimit: How many total pages to return.
Esimerkki
List pages in the main namespace with recent unreviewed revisions
Result
<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.

Rajoitukset

  • Transclusions across wikis are not stabilized

Asennuksen poisto

  1. Remove the require_once or wfLoadExtension line from LocalSettings.php
  1. Drop the tables in FlaggedRevs.sql
  1. Drop the columns page_ext_reviewed, page_ext_quality, and page_ext_stable, and the index ext_namespace_reviewed from the page table (if they exist; only older versions of FlaggedRevs used these)
  1. Run maintenance/refreshLinks.php from the command line to flush out the stable version links
  1. Run maintenance/rebuildFileCache.php 0 overwrite from the command line if you use $wgFileCache

Testing platforms

Katso myös

Lisensointi

© GPL, Aaron Schulz, Joerg Baach, 2007