r87733 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r87732‎ | r87733 | r87734 >
Date:16:48, 9 May 2011
Author:catrope
Status:ok
Tags:
Comment:
1.17wmf1: Merge ArticleFeedback to trunk state
Modified paths:
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/ArticleFeedback.hooks.php (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/ArticleFeedback.i18n.php (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/ArticleFeedback.php (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/SpecialArticleFeedback.php (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/api/ApiArticleFeedback.php (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/api/ApiQueryArticleFeedback.php (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.dashboard.css (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.js (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.startup.js (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/jquery.articleFeedback/images/attention.png (added) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/jquery.articleFeedback/jquery.articleFeedback.css (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/jquery.articleFeedback/jquery.articleFeedback.js (modified) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/populateAFStatistics.php (added) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/sql/AddArticleFeedbackTimestampIndex.sql (added) (history)
  • /branches/wmf/1.17wmf1/extensions/ArticleFeedback/sql/AddStatsHighsLowsTable.sql (added) (history)

Diff [purge]

Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/SpecialArticleFeedback.php
@@ -15,14 +15,30 @@
1616 }
1717
1818 public function execute( $par ) {
19 - global $wgUser, $wgOut, $wgRequest, $wgArticleFeedbackDashboard;
 19+ global $wgUser, $wgOut, $wgRequest, $wgLang, $wgArticleFeedbackDashboard;
2020
2121 $wgOut->addModules( 'ext.articleFeedback.dashboard' );
2222 $this->setHeaders();
2323 if ( $wgArticleFeedbackDashboard ) {
24 - $this->renderDailyHighsAndLows();
 24+ // fetch the highest and lowest rated articles
 25+ $highs_lows = $this->getDailyHighsAndLows();
 26+
 27+ // determine the highest rated articles
 28+ $highs = $this->getDailyHighs( $highs_lows );
 29+
 30+ // .. and the lowest rated articles
 31+ $lows = $this->getDailyLows( $highs_lows );
 32+
 33+ //render daily highs table
 34+ $this->renderDailyHighsAndLows( $highs, wfMsg( 'articleFeedback-table-caption-dailyhighs', $wgLang->date( time() )));
 35+
 36+ //render daily lows table
 37+ $this->renderDailyHighsAndLows( $lows, wfMsg( 'articleFeedback-table-caption-dailylows', $wgLang->date( time() )));
 38+
 39+ /*
 40+ This functionality does not exist yet.
2541 $this->renderWeeklyMostChanged();
26 - $this->renderRecentLows();
 42+ $this->renderRecentLows();*/
2743 } else {
2844 $wgOut->addWikiText( 'This page has been disabled.' );
2945 }
@@ -60,12 +76,11 @@
6177 $table .= Html::openElement( 'tbody' );
6278 foreach ( $rows as $row ) {
6379 $table .= Html::openElement( 'tr' );
64 - foreach ( $row as $class => $column ) {
65 - $attr = is_string( $class )
66 - ? array( 'class' => 'articleFeedback-table-column-' . $class ) : array();
 80+ foreach ( $row as $column ) {
 81+ $attr = array();
6782 if ( is_array( $column ) ) {
68 - if ( isset( $column['attr'] ) ) {
69 - $attr = array_merge( $attr, $column['attr'] );
 83+ if ( isset( $column['attr'] ) && is_array( $column['attr'] ) ) {
 84+ $attr = $column['attr'];
7085 }
7186 if ( isset( $column['text'] ) ) {
7287 $table .= Html::element( 'td', $attr, $column['text'] );
@@ -90,21 +105,37 @@
91106 *
92107 * @return String: HTML table of daily highs and lows
93108 */
94 - protected function renderDailyHighsAndLows() {
95 - global $wgOut, $wgArticleFeedbackRatings;
 109+ protected function renderDailyHighsAndLows( $pages, $caption ) {
 110+ global $wgOut, $wgUser;
96111
97112 $rows = array();
98 - foreach ( $this->getDailyHighsAndLows() as $page ) {
99 - $row = array();
100 - $row['page'] = $page['page'];
101 - foreach ( $page['ratings'] as $id => $value ) {
102 - $row['rating-' . $id] = $value;
 113+ if ( $pages ) {
 114+ foreach ( $pages as $page ) {
 115+ $row = array();
 116+ $pageTitle = Title::newFromId( $page['page'] );
 117+ $row['page'] = $wgUser->getSkin()->link( $pageTitle, $pageTitle->getPrefixedText() );
 118+ foreach ( $page['ratings'] as $id => $value ) {
 119+ $row[] = array(
 120+ 'text' => $this->formatNumber( $value ),
 121+ 'attr' => array(
 122+ 'class' => 'articleFeedback-table-column-rating ' .
 123+ 'articleFeedback-table-column-score-' . round( $value )
 124+ )
 125+ );
 126+ }
 127+ $row[] = array(
 128+ 'text' => $this->formatNumber( $page['average'] ),
 129+ 'attr' => array(
 130+ 'class' => 'articleFeedback-table-column-average ' .
 131+ 'articleFeedback-table-column-score-' . round( $page['average'] )
 132+ )
 133+ );
 134+ $rows[] = $row;
103135 }
104 - $row['average'] = $page['average'];
105 - $rows[] = $row;
106136 }
 137+
107138 $this->renderTable(
108 - wfMsg( 'articleFeedback-table-caption-dailyhighsandlows' ),
 139+ $caption,
109140 array_merge(
110141 array( wfMsg( 'articleFeedback-table-heading-page' ) ),
111142 self::getCategories(),
@@ -121,14 +152,20 @@
122153 * @return String: HTML table of weekly most changed
123154 */
124155 protected function renderWeeklyMostChanged() {
125 - global $wgOut;
 156+ global $wgOut, $wgUser;
126157
127158 $rows = array();
128159 foreach ( $this->getWeeklyMostChanged() as $page ) {
129160 $row = array();
130 - $row['page'] = $page['page'];
 161+ $pageTitle = Title::newFromText( $page['page'] );
 162+ $row['page'] = $wgUser->getSkin()->link( $pageTitle, $pageTitle->getPrefixedText() );
131163 foreach ( $page['changes'] as $id => $value ) {
132 - $row['rating-' . $id] = $value;
 164+ $row[] = array(
 165+ 'text' => $this->formatNumber( $value ),
 166+ 'attr' => array(
 167+ 'class' => 'articleFeedback-table-column-changes'
 168+ )
 169+ );
133170 }
134171 $rows[] = $row;
135172 }
@@ -149,21 +186,22 @@
150187 * @return String: HTML table of recent lows
151188 */
152189 protected function renderRecentLows() {
153 - global $wgOut, $wgArticleFeedbackRatings;
 190+ global $wgOut, $wgUser, $wgArticleFeedbackRatings;
154191
155192 $rows = array();
156193 foreach ( $this->getRecentLows() as $page ) {
157194 $row = array();
158 - $row['page'] = $page['page'];
 195+ $pageTitle = Title::newFromText( $page['page'] );
 196+ $row['page'] = $wgUser->getSkin()->link( $pageTitle, $pageTitle->getPrefixedText() );
159197 foreach ( $wgArticleFeedbackRatings as $category ) {
160198 $row[] = array(
161199 'attr' => in_array( $category, $page['categories'] )
162200 ? array(
163 - 'class' => 'articleFeedback-table-cell-bad',
 201+ 'class' => 'articleFeedback-table-column-bad',
164202 'data-sort-value' => 0
165203 )
166204 : array(
167 - 'class' => 'articleFeedback-table-cell-good',
 205+ 'class' => 'articleFeedback-table-column-good',
168206 'data-sort-value' => 1
169207 ),
170208 'html' => ' '
@@ -192,23 +230,110 @@
193231 * This data should be updated daily, ideally though a scheduled batch job
194232 */
195233 protected function getDailyHighsAndLows() {
196 - return array(
197 - array(
198 - 'page' => 'Main Page',
199 - // List of ratings as the currently stand
200 - 'ratings' => array( 1 => 4, 2 => 3, 3 => 2, 4 => 1 ),
201 - // Current average (considering historic averages of each rating)
202 - 'average' => 2.5
203 - ),
204 - array(
205 - 'page' => 'Test Article',
206 - 'ratings' => array( 1 => 1, 2 => 2, 3 => 3, 4 => 4 ),
207 - 'average' => 2.5
208 - )
209 - );
 234+ global $wgMemc;
 235+
 236+ // check if we've got results in the cache
 237+ $key = wfMemcKey( 'article_feedback_stats_highs_lows' );
 238+ $cache = $wgMemc->get( $key );
 239+ if ( is_array( $cache )) {
 240+ $highs_lows = $cache;
 241+ } else {
 242+ $dbr = wfGetDB( DB_SLAVE );
 243+ // first find the freshest timestamp
 244+ $row = $dbr->selectRow(
 245+ 'article_feedback_stats_highs_lows',
 246+ array( 'afshl_ts' ),
 247+ "",
 248+ __METHOD__,
 249+ array( "ORDER BY" => "afshl_ts DESC", "LIMIT" => 1 )
 250+ );
 251+
 252+ // if we have no results, just return
 253+ if ( !$row || !$row->afshl_ts ) {
 254+ return array();
 255+ }
 256+
 257+ // select ratings with that ts
 258+ $result = $dbr->select(
 259+ 'article_feedback_stats_highs_lows',
 260+ array(
 261+ 'afshl_page_id',
 262+ 'afshl_avg_overall',
 263+ 'afshl_avg_ratings'
 264+ ),
 265+ array( 'afshl_ts' => $row->afshl_ts ),
 266+ __METHOD__,
 267+ array( "ORDER BY" => "afshl_avg_overall" )
 268+ );
 269+ $highs_lows = $this->buildHighsAndLows( $result );
 270+ $wgMemc->set( $key, $highs_lows, 86400 );
 271+ }
 272+
 273+ return $highs_lows;
210274 }
211275
212276 /**
 277+ * Determine the 'highest' rated articles
 278+ *
 279+ * Divides the number of ratings in half to determine the range of
 280+ * articles to consider 'highest'. In the event of an odd number
 281+ * of articles, (determined by checking for modulus of # of ratings / 2),
 282+ * round up, giving preference to the 'highs' so
 283+ * everyone feels warm and fuzzy about having more 'highs', as
 284+ * it were...
 285+ *
 286+ * @param array Pre-orderd from lowest to highest
 287+ * @return array Containing the... highest rated article data
 288+ */
 289+ protected function getDailyHighs( $highs_lows ) {
 290+ $num_ratings = count( $highs_lows );
 291+ if ( $num_ratings % 2 ) {
 292+ $num_highs = round( $num_ratings / 2 );
 293+ } else {
 294+ $num_highs = $num_ratings / 2;
 295+ }
 296+ return array_slice( $highs_lows, -$num_highs, $num_highs );
 297+ }
 298+
 299+ /**
 300+ * Determine the 'lowest' rated articles
 301+ *
 302+ * @see getDailyHighs() However, if we are dealing with an odd number of
 303+ * ratings, round up and then subtract 1 since we are giving preference
 304+ * to the 'highs' when dealing with an odd number of ratings. We do this
 305+ * rather than rely on PHP's rounding 'modes' for compaitibility with
 306+ * PHP < 5.3
 307+ * @param array Pre-orderd from lowest to highest
 308+ * @return array Containing the... lowest rated article data
 309+ */
 310+ protected function getDailyLows( $highs_lows ) {
 311+ $num_ratings = count( $highs_lows );
 312+ if ( $num_ratings % 2 ) {
 313+ $num_lows = round( $num_ratings / 2 ) - 1;
 314+ } else {
 315+ $num_lows = $num_ratings / 2;
 316+ }
 317+ return array_slice( $highs_lows, 0, $num_lows );
 318+ }
 319+
 320+ /**
 321+ * Build data store of highs/lows for use when rendering table
 322+ * @param object Database result
 323+ * @return array
 324+ */
 325+ public static function buildHighsAndLows( $result ) {
 326+ $highs_lows = array();
 327+ foreach ( $result as $row ) {
 328+ $highs_lows[] = array(
 329+ 'page' => $row->afshl_page_id,
 330+ 'ratings' => FormatJson::decode( $row->afshl_avg_ratings ),
 331+ 'average' => $row->afshl_avg_overall
 332+ );
 333+ }
 334+ return $highs_lows;
 335+ }
 336+
 337+ /**
213338 * Gets a list of articles which have quickly changing ratings.
214339 *
215340 * - Based on any rating category
@@ -222,11 +347,21 @@
223348 array(
224349 'page' => 'Main Page',
225350 // List of differences for each rating in the past 7 days
226 - 'changes' => array( 1 => 1, 2 => -2, 3 => 0, 4 => 0 ),
 351+ 'changes' => array(
 352+ 1 => 1,
 353+ 2 => 2,
 354+ 3 => 0,
 355+ 4 => 0,
 356+ ),
227357 ),
228358 array(
229359 'page' => 'Test Article',
230 - 'changes' => array( 1 => 0, 2 => 0, 3 => 1, 4 => 2 ),
 360+ 'changes' => array(
 361+ 1 => 0,
 362+ 2 => 0,
 363+ 3 => 1,
 364+ 4 => 2,
 365+ ),
231366 )
232367 );
233368 }
@@ -272,6 +407,12 @@
273408
274409 /* Protected Static Methods */
275410
 411+ protected function formatNumber( $number ) {
 412+ global $wgLang;
 413+
 414+ return $wgLang->formatNum( number_format( $number, 2 ) );
 415+ }
 416+
276417 protected function getCategories() {
277418 global $wgArticleFeedbackRatings;
278419
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/sql/AddStatsHighsLowsTable.sql
@@ -0,0 +1,11 @@
 2+CREATE TABLE IF NOT EXISTS /*_*/article_feedback_stats_highs_lows (
 3+ afshl_id integer unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT,
 4+ afshl_page_id integer unsigned NOT NULL,
 5+ -- combined average rating
 6+ afshl_avg_overall double unsigned NOT NULL,
 7+ -- json object of rating key => avg value
 8+ afshl_avg_ratings varbinary(255) NOT NULL,
 9+ -- timestamp of insertion job
 10+ afshl_ts binary(14) NOT NULL
 11+) /*$wgDBTableOptions*/;
 12+CREATE INDEX /*i*/ afshl_ts_avg_overall ON /*_*/article_feedback_stats_highs_lows (afshl_ts, afshl_avg_overall);
Property changes on: branches/wmf/1.17wmf1/extensions/ArticleFeedback/sql/AddStatsHighsLowsTable.sql
___________________________________________________________________
Added: svn:eol-style
113 + native
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/sql/AddArticleFeedbackTimestampIndex.sql
@@ -0,0 +1,2 @@
 2+-- Create an index on the article_feedback.aa_timestamp field
 3+CREATE INDEX /*i*/article_feedback_timestamp ON /*_*/article_feedback (aa_timestamp);
\ No newline at end of file
Property changes on: branches/wmf/1.17wmf1/extensions/ArticleFeedback/sql/AddArticleFeedbackTimestampIndex.sql
___________________________________________________________________
Added: svn:eol-style
14 + native
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/ArticleFeedback.hooks.php
@@ -77,6 +77,7 @@
7878 'articlefeedback-form-panel-helpimprove-privacylink',
7979 'articlefeedback-form-panel-submit',
8080 'articlefeedback-form-panel-success',
 81+ 'articlefeedback-form-panel-pending',
8182 'articlefeedback-form-panel-expiry-title',
8283 'articlefeedback-form-panel-expiry-message',
8384 'articlefeedback-report-switch-label',
@@ -87,6 +88,7 @@
8889 'parentheses',
8990 ),
9091 'dependencies' => array(
 92+ 'jquery.appear',
9193 'jquery.tipsy',
9294 'jquery.json',
9395 'jquery.localize',
@@ -172,6 +174,19 @@
173175 $dir . '/sql/AddRevisionsTable.sql',
174176 true
175177 ) );
 178+ $updater->addExtensionUpdate( array(
 179+ 'addTable',
 180+ 'article_feedback_stats_highs_lows',
 181+ $dir . '/sql/AddStatsHighsLowsTable.sql',
 182+ true
 183+ ) );
 184+ $updater->addExtensionUpdate( array(
 185+ 'addIndex',
 186+ 'article_feedback',
 187+ 'article_feedback_timestamp',
 188+ $dir . '/sql/AddArticleFeedbackTimestampIndex.sql',
 189+ true
 190+ ) );
176191 }
177192 return true;
178193 }
@@ -215,14 +230,18 @@
216231 * ResourceLoaderGetConfigVars hook
217232 */
218233 public static function resourceLoaderGetConfigVars( &$vars ) {
219 - global $wgArticleFeedbackCategories,
 234+ global $wgArticleFeedbackSMaxage,
 235+ $wgArticleFeedbackCategories,
220236 $wgArticleFeedbackLotteryOdds,
221237 $wgArticleFeedbackTracking,
222 - $wgArticleFeedbackOptions;
 238+ $wgArticleFeedbackOptions,
 239+ $wgArticleFeedbackNamespaces;
 240+ $vars['wgArticleFeedbackSMaxage'] = $wgArticleFeedbackSMaxage;
223241 $vars['wgArticleFeedbackCategories'] = $wgArticleFeedbackCategories;
224242 $vars['wgArticleFeedbackLotteryOdds'] = $wgArticleFeedbackLotteryOdds;
225243 $vars['wgArticleFeedbackTracking'] = $wgArticleFeedbackTracking;
226244 $vars['wgArticleFeedbackOptions'] = $wgArticleFeedbackOptions;
 245+ $vars['wgArticleFeedbackNamespaces'] = $wgArticleFeedbackNamespaces;
227246 return true;
228247 }
229248 }
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/populateAFStatistics.php
@@ -0,0 +1,210 @@
 2+<?php
 3+
 4+$IP = getenv( 'MW_INSTALL_PATH' );
 5+if ( $IP === false ) {
 6+ $IP = dirname( __FILE__ ) . '/../..';
 7+}
 8+require( "$IP/maintenance/Maintenance.php" );
 9+
 10+class PopulateAFStatistics extends Maintenance {
 11+ /**
 12+ * The number of records to attempt to insert at any given time.
 13+ * @var int
 14+ */
 15+ public $insert_batch_size = 100;
 16+
 17+ /**
 18+ * The period (in seconds) before now for which to gather stats
 19+ * @var int
 20+ */
 21+ public $polling_period = 86400;
 22+
 23+ /**
 24+ * The formatted timestamp from which to determine stats
 25+ * @var int
 26+ */
 27+ protected $lowerBoundTimestamp;
 28+
 29+ /**
 30+ * DB slave
 31+ * @var object
 32+ */
 33+ protected $dbr;
 34+
 35+ /**
 36+ * DB master
 37+ * @var object
 38+ */
 39+ protected $dbw;
 40+
 41+ public function __construct() {
 42+ parent::__construct();
 43+ $this->mDescription = "Populates the article feedback stats tables";
 44+ }
 45+
 46+ public function syncDBs() {
 47+ // FIXME: Copied from populateAFRevisions.php, which coppied from updateCollation.php, should be centralized somewhere
 48+ $lb = wfGetLB();
 49+ // bug 27975 - Don't try to wait for slaves if there are none
 50+ // Prevents permission error when getting master position
 51+ if ( $lb->getServerCount() > 1 ) {
 52+ $dbw = $lb->getConnection( DB_MASTER );
 53+ $pos = $dbw->getMasterPos();
 54+ $lb->waitForAll( $pos );
 55+ }
 56+ }
 57+
 58+ public function execute() {
 59+ global $wgMemc;
 60+ $this->dbr = wfGetDB( DB_SLAVE );
 61+ $this->dbw = wfGetDB( DB_MASTER );
 62+
 63+ // the data structure to store ratings for a given page
 64+ $ratings = array();
 65+
 66+ // fetch the ratings since the lower bound timestamp
 67+ $this->output( 'Fetching page ratings between now and ' . date('Y-m-d H:i:s', strtotime( $this->getLowerBoundTimestamp())) . "...\n");
 68+ $res = $this->dbr->select(
 69+ 'article_feedback',
 70+ array(
 71+ 'aa_page_id',
 72+ 'aa_rating_value',
 73+ 'aa_rating_id'
 74+ ),
 75+ array( 'aa_timestamp >= ' . $this->dbr->addQuotes( $this->getLowerBoundTimestamp() ) ),
 76+ __METHOD__,
 77+ array() // better to do with limits and offsets?
 78+ );
 79+
 80+ // assign the rating data to our data structure
 81+ foreach ( $res as $row ) {
 82+ $ratings[ $row->aa_page_id ][ $row->aa_rating_id ][] = $row->aa_rating_value;
 83+ }
 84+ $this->output( "Done\n" );
 85+
 86+ // determine the average ratings for a given page
 87+ $this->output( "Determining average ratings for articles ...\n" );
 88+ $highs_and_lows = array();
 89+ $averages = array();
 90+ foreach ( $ratings as $page_id => $data ) {
 91+ $rating_count = 0;
 92+ foreach( $data as $rating_id => $rating ) {
 93+ $rating_count += count( $rating );
 94+ $rating_sum = array_sum( $rating );
 95+ $rating_avg = $rating_sum / count( $rating );
 96+ $highs_and_lows[ $page_id ][ 'avg_ratings' ][ $rating_id ] = $rating_avg;
 97+ }
 98+
 99+ // make sure that we have at least 10 ratings for this page
 100+ if ( $rating_count < 10 ) {
 101+ // if not, remove it from our data store
 102+ unset( $highs_and_lows[ $page_id ] );
 103+ continue;
 104+ }
 105+
 106+ $overall_rating_sum = array_sum( $highs_and_lows[ $page_id ][ 'avg_ratings' ] );
 107+ $overall_rating_average = $overall_rating_sum / count( $highs_and_lows[ $page_id ][ 'avg_ratings' ] );
 108+ $highs_and_lows[ $page_id ][ 'average' ] = $overall_rating_average;
 109+
 110+ // store overall average rating seperately so we can easily sort
 111+ $averages[ $page_id ] = $overall_rating_average;
 112+ }
 113+ $this->output( "Done.\n" );
 114+
 115+ // determine highest 50 and lowest 50
 116+ $this->output( "Determining 50 highest and 50 lowest rated articles...\n" );
 117+ asort( $averages );
 118+ // take lowest 50 and highest 50
 119+ $highest_and_lowest_page_ids = array_slice( $averages, 0, 50, true );
 120+ if ( count( $averages ) > 50 ) {
 121+ $highest_and_lowest_page_ids += array_slice( $averages, -50, 50, true );
 122+ }
 123+ $this->output( "Done\n" );
 124+
 125+ // prepare data for insert into db
 126+ $this->output( "Preparing data for db insertion ...\n");
 127+ $cur_ts = $this->dbw->timestamp();
 128+ $rows = array();
 129+ foreach( $highs_and_lows as $page_id => $data ) {
 130+ // make sure this is one of the highest/lowest average ratings
 131+ if ( !isset( $highest_and_lowest_page_ids[ $page_id ] )) {
 132+ continue;
 133+ }
 134+ $rows[] = array(
 135+ 'afshl_page_id' => $page_id,
 136+ 'afshl_avg_overall' => $data[ 'average' ],
 137+ 'afshl_avg_ratings' => FormatJson::encode( $data[ 'avg_ratings' ] ),
 138+ 'afshl_ts' => $cur_ts,
 139+ );
 140+ }
 141+ $this->output( "Done.\n" );
 142+
 143+ // insert data to db
 144+ $this->output( "Writing data to article_feedback_stats_highs_lows ...\n" );
 145+ $rowsInserted = 0;
 146+ while( $rows ) {
 147+ $batch = array_splice( $rows, 0, $this->insert_batch_size );
 148+ $this->dbw->insert(
 149+ 'article_feedback_stats_highs_lows',
 150+ $batch,
 151+ __METHOD__
 152+ );
 153+ $rowsInserted += count( $batch );
 154+ $this->syncDBs();
 155+ $this->output( "Inserted " . $rowsInserted . " rows\n" );
 156+ }
 157+ $this->output( "Done.\n" );
 158+
 159+ // loading data into caching
 160+ $this->output( "Caching latest highs/lows (if cache present).\n" );
 161+ $key = wfMemcKey( 'article_feedback_stats_highs_lows' );
 162+ $result = $this->dbr->select(
 163+ 'article_feedback_stats_highs_lows',
 164+ array(
 165+ 'afshl_page_id',
 166+ 'afshl_avg_overall',
 167+ 'afshl_avg_ratings'
 168+ ),
 169+ 'afshl_ts = ' . $cur_ts,
 170+ __METHOD__,
 171+ array()
 172+ );
 173+ // grab the article feedback special page so we can reuse the data structure building code
 174+ // FIXME this logic should not be in the special page class
 175+ $highs_lows = SpecialArticleFeedback::buildHighsAndLows( $result );
 176+ // stash the data structure in the cache
 177+ $wgMemc->set( $key, $highs_lows, 86400 );
 178+ $this->output( "Done\n" );
 179+ }
 180+
 181+
 182+ /**
 183+ * Set $this->timestamp
 184+ * @param int $ts
 185+ */
 186+ public function setLowerBoundTimestamp( $ts ) {
 187+ if ( !is_numeric( $ts )) {
 188+ throw new InvalidArgumentException( 'Timestamp must be numeric.' );
 189+ }
 190+ $this->lowerBoundTimestamp = $ts;
 191+ }
 192+
 193+
 194+ /**
 195+ * Get $this->lowerBoundTimestamp
 196+ *
 197+ * If it hasn't been set yet, set it based on the defined polling period.
 198+ *
 199+ * @return int
 200+ */
 201+ public function getLowerBoundTimestamp() {
 202+ if ( !$this->lowerBoundTimestamp ) {
 203+ $timestamp = $this->dbw->timestamp( strtotime( $this->polling_period . ' seconds ago' ));
 204+ $this->setLowerBoundTimestamp( $timestamp );
 205+ }
 206+ return $this->lowerBoundTimestamp;
 207+ }
 208+}
 209+
 210+$maintClass = "PopulateAFStatistics";
 211+require_once( DO_MAINTENANCE );
Property changes on: branches/wmf/1.17wmf1/extensions/ArticleFeedback/populateAFStatistics.php
___________________________________________________________________
Added: svn:eol-style
1212 + native
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/jquery.articleFeedback/jquery.articleFeedback.js
@@ -83,6 +83,7 @@
8484 </div>\
8585 <button class="articleFeedback-submit articleFeedback-visibleWith-form" type="submit" disabled="disabled"><html:msg key="form-panel-submit" /></button>\
8686 <div class="articleFeedback-success articleFeedback-visibleWith-form"><span><html:msg key="form-panel-success" /></span></div>\
 87+ <div class="articleFeedback-pending articleFeedback-visibleWith-form"><span><html:msg key="form-panel-pending" /></span></div>\
8788 <div style="clear:both;"></div>\
8889 <div class="articleFeedback-notices articleFeedback-visibleWith-form">\
8990 <div class="articleFeedback-expiry">\
@@ -133,14 +134,28 @@
134135 'enableSubmission': function( state ) {
135136 var context = this;
136137 if ( state ) {
137 - // Reset and remove success message
 138+ // Reset success timeout
138139 clearTimeout( context.successTimeout );
139 - context.$ui.find( '.articleFeedback-success span' ).fadeOut( 'fast' );
140 - // Enable
141 - context.$ui.find( '.articleFeedback-submit' ).button( { 'disabled': false } );
 140+ context.$ui
 141+ // Enable
 142+ .find( '.articleFeedback-submit' )
 143+ .button( { 'disabled': false } )
 144+ .end()
 145+ // Hide success
 146+ .find( '.articleFeedback-success span' )
 147+ .hide()
 148+ .end()
 149+ // Show pending
 150+ .find( '.articleFeedback-pending span' )
 151+ .fadeIn( 'fast' );
142152 } else {
143153 // Disable
144 - context.$ui.find( '.articleFeedback-submit' ).button( { 'disabled': true } );
 154+ context.$ui
 155+ .find( '.articleFeedback-submit' )
 156+ .button( { 'disabled': true } )
 157+ .end()
 158+ .find( '.articleFeedback-pending span' )
 159+ .hide();
145160 }
146161 },
147162 'updateRating': function() {
@@ -173,6 +188,10 @@
174189 },
175190 'submit': function() {
176191 var context = this;
 192+ // For anon users, keep a cookie around so we know they've rated before
 193+ if ( mw.user.anonymous() ) {
 194+ $.cookie( prefix( 'rated' ), 'true', { 'expires': 365, 'path': '/' } );
 195+ }
177196 $.articleFeedback.fn.enableSubmission.call( context, false );
178197 context.$ui.find( '.articleFeedback-lock' ).show();
179198 // Build data from form values for 'action=articlefeedback'
@@ -306,19 +325,22 @@
307326 },
308327 'load': function() {
309328 var context = this;
 329+ var userrating = !mw.user.anonymous() || $.cookie( prefix( 'rated' ) ) === 'true';
310330 $.ajax( {
311331 'url': mw.config.get( 'wgScriptPath' ) + '/api.php',
312332 'type': 'GET',
313333 'dataType': 'json',
314334 'context': context,
315 - 'cache': false,
 335+ 'cache': userrating,
316336 'data': {
317337 'action': 'query',
318338 'format': 'json',
319339 'list': 'articlefeedback',
320340 'afpageid': mw.config.get( 'wgArticleId' ),
321 - 'afanontoken': mw.user.id(),
322 - 'afuserrating': 1
 341+ 'afanontoken': userrating ? mw.user.id() : '',
 342+ 'afuserrating': Number( userrating ),
 343+ 'maxage': 0,
 344+ 'smaxage': mw.config.get( 'wgArticleFeedbackSMaxage' )
323345 },
324346 'success': function( data ) {
325347 var context = this;
@@ -508,7 +530,9 @@
509531 // Remember that the users rejected this, set a cookie to not
510532 // show this for 3 days
511533 $.cookie(
512 - prefix( 'pitch-' + key ), 'hide', { 'expires': 3 }
 534+ prefix( 'pitch-' + key ),
 535+ 'hide',
 536+ { 'expires': 3, 'path': '/' }
513537 );
514538 // Track that a pitch was dismissed
515539 if ( tracked && typeof $.trackAction == 'function' ) {
@@ -640,7 +664,7 @@
641665 }
642666 if ( pitches.length ) {
643667 // Select randomly using equal distribution of available pitches
644 - var key = pitches[Math.round( Math.random() * ( pitches.length - 1 ) )];
 668+ var key = pitches[Math.floor( Math.random() * pitches.length )];
645669 context.$ui.find( '.articleFeedback-pitches' )
646670 .css( 'width', context.$ui.width() )
647671 .find( '.articleFeedback-pitch[rel="' + key + '"]' )
@@ -758,8 +782,10 @@
759783 if ( !showOptions ) {
760784 context.$ui.find( '.articleFeedback-options' ).hide();
761785 }
762 - // Show initial form and report values
763 - $.articleFeedback.fn.load.call( context );
 786+ // Show initial form and report values when the tool is visible
 787+ context.$ui.appear( function() {
 788+ $.articleFeedback.fn.load.call( context );
 789+ } );
764790 }
765791 }
766792 };
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/jquery.articleFeedback/images/attention.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes on: branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/jquery.articleFeedback/images/attention.png
___________________________________________________________________
Added: svn:mime-type
767793 + application/octet-stream
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/jquery.articleFeedback/jquery.articleFeedback.css
@@ -344,25 +344,32 @@
345345 background-color: #FFC0C0;
346346 }
347347
 348+.articleFeedback-pending,
348349 .articleFeedback-success {
349350 float: right;
350351 }
351352
 353+.articleFeedback-pending span,
352354 .articleFeedback-success span {
353355 display: none;
354 - /* @embed */
355 - background-image: url(images/success.png);
 356+ padding: 12px 12px 12px 28px;
 357+ font-size: 0.8em;
 358+ line-height: 3.6em;
356359 background-repeat: no-repeat;
357360 background-position: center left;
358 - padding-left: 28px;
359 - padding-right: 12px;
360 - padding-top: 12px;
361 - padding-bottom: 12px;
362361 color: green;
363 - font-size: 0.8em;
364 - line-height: 3.6em;
365362 }
366363
 364+.articleFeedback-pending span {
 365+ /* @embed */
 366+ background-image: url(images/attention.png);
 367+}
 368+
 369+.articleFeedback-success span {
 370+ /* @embed */
 371+ background-image: url(images/success.png);
 372+}
 373+
367374 .articleFeedback-expiry {
368375 display: none;
369376 border: solid 1px orange;
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.js
@@ -36,7 +36,7 @@
3737 * @param durration Integer: Number of days to mute the pitch for
3838 */
3939 function mutePitch( pitch, duration ) {
40 - $.cookie( prefix( 'pitches-' + pitch ), 'hide', { 'expires': duration } );
 40+ $.cookie( prefix( 'pitches-' + pitch ), 'hide', { 'expires': duration, 'path': '/' } );
4141 }
4242
4343 function trackClick( id ) {
@@ -280,7 +280,7 @@
281281 var groups = mw.config.get( 'wgUserGroups' );
282282 // Verify that each restriction exists in the user's groups
283283 for ( var i = 0; i < restrictions.length; i++ ) {
284 - if ( !$.inArray( restrictions[i], groups ) ) {
 284+ if ( $.inArray( restrictions[i], groups ) < 0 ) {
285285 return false;
286286 }
287287 }
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.startup.js
@@ -5,12 +5,14 @@
66 jQuery( function( $ ) {
77 if (
88 // Main namespace articles
9 - mw.config.get( 'wgNamespaceNumber' ) === 0
 9+ $.inArray( mw.config.get( 'wgNamespaceNumber' ), mw.config.get( 'wgArticleFeedbackNamespaces', [] ) ) > -1
 10+ // Existing pages
 11+ && mw.config.get( 'wgArticleId' ) > 0
1012 // View pages
11 - && mw.config.get( 'wgAction' ) === 'view'
 13+ && ( mw.config.get( 'wgAction' ) == 'view' || mw.config.get( 'wgAction' ) == 'purge' )
1214 // Current revision
13 - && mw.util.getParamValue( 'diff' ) === null
14 - && mw.util.getParamValue( 'oldid' ) === null
 15+ && mw.util.getParamValue( 'diff' ) == null
 16+ && mw.util.getParamValue( 'oldid' ) == null
1517 ) {
1618 var trackingBucket = mw.user.bucket(
1719 'ext.articleFeedback-tracking', mw.config.get( 'wgArticleFeedbackTracking' )
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.dashboard.css
@@ -10,10 +10,14 @@
1111 }
1212
1313 .articleFeedback-table th {
 14+ padding-left: 0.75em;
 15+ padding-top: 0.25em;
 16+ padding-bottom: 0.25em;
1417 text-align: left;
1518 }
1619
1720 .articleFeedback-table td {
 21+ padding: 0.25em 0.75em;
1822 border-top: solid 1px #eeeeee;
1923 }
2024
@@ -22,19 +26,45 @@
2327 text-align: left;
2428 }
2529
26 -.articleFeedback-table td.articleFeedback-table-column-rating-1,
27 -.articleFeedback-table td.articleFeedback-table-column-rating-2,
28 -.articleFeedback-table td.articleFeedback-table-column-rating-3,
29 -.articleFeedback-table td.articleFeedback-table-column-rating-4,
3030 .articleFeedback-table td.articleFeedback-table-column-rating,
3131 .articleFeedback-table td.articleFeedback-table-column-average {
3232 text-align: right;
3333 }
3434
35 -.articleFeedback-table-cell-bad {
 35+/**
 36+ * Per ArticleFeedback meeting of 2011-05-06,
 37+ * disable colors for now. We may re-enable them
 38+ * later if found useful.
 39+ */
 40+/*
 41+.articleFeedback-table-column-score-0,
 42+.articleFeedback-table-column-score-1 {
 43+ background-color: #ffcccc;
 44+}
 45+
 46+
 47+.articleFeedback-table-column-score-2,
 48+.articleFeedback-table-column-bad {
3649 background-color: #ffcc99;
3750 }
3851
39 -.articleFeedback-table-cell-good {
 52+.articleFeedback-table-column-score-3 {
 53+ background-color: #ffff99;
 54+}
 55+
 56+.articleFeedback-table-column-score-4,
 57+.articleFeedback-table-column-good {
4058 background-color: #99ff99;
4159 }
 60+.articleFeedback-table-column-score-5 {
 61+ background-color: #55ff55;
 62+}
 63+*/
 64+
 65+.articleFeedback-table-column-bad {
 66+ background-color: #ffcc99;
 67+}
 68+
 69+.articleFeedback-table-column-good {
 70+ background-color: #99ff99;
 71+}
\ No newline at end of file
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/api/ApiArticleFeedback.php
@@ -5,10 +5,9 @@
66 }
77
88 public function execute() {
9 - global $wgUser, $wgArticleFeedbackRatings;
 9+ global $wgUser, $wgArticleFeedbackRatings, $wgArticleFeedbackSMaxage;
1010 $params = $this->extractRequestParams();
1111
12 - $token = array();
1312 if ( $wgUser->isAnon() ) {
1413 if ( !isset( $params['anontoken'] ) ) {
1514 $this->dieUsageMsg( array( 'missingparam', 'anontoken' ) );
@@ -75,6 +74,18 @@
7675
7776 $this->insertProperties( $revisionId, $wgUser, $token, $params );
7877
 78+ $squidUpdate = new SquidUpdate( array( wfAppendQuery( wfScript( 'api' ), array(
 79+ 'action' => 'query',
 80+ 'format' => 'json',
 81+ 'list' => 'articlefeedback',
 82+ 'afpageid' => $pageId,
 83+ 'afanontoken' => '',
 84+ 'afuserrating' => 0,
 85+ 'maxage' => 0,
 86+ 'smaxage' => $wgArticleFeedbackSMaxage
 87+ ) ) ) );
 88+ $squidUpdate->doUpdate();
 89+
7990 wfRunHooks( 'ArticleFeedbackChangeRating', array( $params ) );
8091
8192 $r = array( 'result' => 'Success' );
@@ -360,7 +371,7 @@
361372 ApiBase::PARAM_TYPE => 'integer',
362373 ApiBase::PARAM_REQUIRED => true,
363374 ApiBase::PARAM_ISMULTI => false,
364 - ApiBase::PARAM_MIN => 1
 375+ ApiBase::PARAM_MIN => 0
365376 ),
366377 'expertise' => array(
367378 ApiBase::PARAM_TYPE => 'string',
@@ -390,14 +401,14 @@
391402 'expertise' => 'What kinds of expertise does the user claim to have',
392403 );
393404 foreach( $wgArticleFeedbackRatings as $rating ) {
394 - $ret["r{$rating}"] = "Rating {$rating}";
 405+ $ret["r{$rating}"] = "Rating {$rating}";
395406 }
396407 return $ret;
397408 }
398409
399410 public function getDescription() {
400411 return array(
401 - 'Submit article feedbacks'
 412+ 'Submit article feedback'
402413 );
403414 }
404415
Property changes on: branches/wmf/1.17wmf1/extensions/ArticleFeedback/api/ApiArticleFeedback.php
___________________________________________________________________
Modified: svn:mergeinfo
405416 Merged /trunk/extensions/ArticleFeedback/api/ApiArticleFeedback.php:r87078-87732
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/api/ApiQueryArticleFeedback.php
@@ -57,8 +57,9 @@
5858 if ( $params['userrating'] ) {
5959 // User ratings
6060 $userRatings = $this->getUserRatings( $params );
 61+
 62+ // If valid ratings already exist..
6163 if ( isset( $ratings[$params['pageid']]['ratings'] ) ) {
62 - // Valid ratings already exist
6364 foreach ( $ratings[$params['pageid']]['ratings'] as $i => $rating ) {
6465 if ( isset( $userRatings[$rating['ratingid']] ) ) {
6566 // Rating value
@@ -70,11 +71,14 @@
7172 }
7273 }
7374 }
 75+
 76+ // Else, no valid ratings exist..
7477 } else {
75 - // No valid ratings exist
 78+
7679 if ( count( $userRatings ) ) {
7780 $ratings[$params['pageid']]['status'] = 'expired';
7881 }
 82+
7983 foreach ( $userRatings as $ratingId => $userRating ) {
8084 // Revision
8185 if ( !isset( $ratings[$params['pageid']]['revid'] ) ) {
@@ -96,6 +100,7 @@
97101 );
98102 }
99103 }
 104+
100105 // Expertise
101106 if ( isset( $ratings[$params['pageid']]['revid'] ) ) {
102107 $expertise = $this->getExpertise( $params, $ratings[$params['pageid']]['revid'] );
@@ -137,9 +142,8 @@
138143
139144 protected function getAnonToken( $params ) {
140145 global $wgUser;
141 -
142146 $token = '';
143 - if ( $wgUser->isAnon() ) {
 147+ if ( $wgUser->isAnon() && $params['userrating'] ) {
144148 if ( !isset( $params['anontoken'] ) ) {
145149 $this->dieUsageMsg( array( 'missingparam', 'anontoken' ) );
146150 } elseif ( strlen( $params['anontoken'] ) != 32 ) {
@@ -244,7 +248,7 @@
245249 ApiBase::PARAM_ISMULTI => false,
246250 ApiBase::PARAM_TYPE => 'integer',
247251 ),
248 - 'userrating' => false,
 252+ 'userrating' => 0,
249253 'anontoken' => null,
250254 );
251255 }
@@ -275,7 +279,7 @@
276280 return array(
277281 'api.php?action=query&list=articlefeedback',
278282 'api.php?action=query&list=articlefeedback&afpageid=1',
279 - 'api.php?action=query&list=articlefeedback&afpageid=1&afuserrating',
 283+ 'api.php?action=query&list=articlefeedback&afpageid=1&afuserrating=1',
280284 );
281285 }
282286
Property changes on: branches/wmf/1.17wmf1/extensions/ArticleFeedback/api/ApiQueryArticleFeedback.php
___________________________________________________________________
Modified: svn:mergeinfo
283287 Merged /trunk/extensions/ArticleFeedback/api/ApiQueryArticleFeedback.php:r87078-87732
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/ArticleFeedback.i18n.php
@@ -6,9 +6,10 @@
77 * @author Sam Reed
88 * @author Brandon Harris
99 * @author Trevor Parscal
 10+ * @author Arthur Richards
1011 */
1112 $messages['en'] = array(
12 - 'articlefeedback' => 'Article feedback',
 13+ 'articlefeedback' => 'Article feedback dashboard',
1314 'articlefeedback-desc' => 'Article feedback',
1415 /* ArticleFeedback survey */
1516 'articlefeedback-survey-question-origin' => 'What page were you on when you started this survey?',
@@ -42,6 +43,7 @@
4344 'articlefeedback-form-panel-helpimprove-privacy' => 'Privacy policy',
4445 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Privacy policy',
4546 'articlefeedback-form-panel-submit' => 'Submit ratings',
 47+ 'articlefeedback-form-panel-pending' => 'Your ratings have not been submitted yet',
4648 'articlefeedback-form-panel-success' => 'Saved successfully',
4749 'articlefeedback-form-panel-expiry-title' => 'Your ratings have expired',
4850 'articlefeedback-form-panel-expiry-message' => 'Please reevaluate this page and submit new ratings.',
@@ -76,6 +78,8 @@
7779 Please try again later.',
7880 /* Special:ArticleFeedback */
7981 'articleFeedback-table-caption-dailyhighsandlows' => 'Today\'s highs and lows',
 82+ 'articleFeedback-table-caption-dailyhighs' => 'Articles with highest ratings: $1',
 83+ 'articleFeedback-table-caption-dailylows' => 'Articles with lowest ratings: $1',
8084 'articleFeedback-table-caption-weeklymostchanged' => 'This week\'s most changed',
8185 'articleFeedback-table-caption-recentlows' => 'Recent lows',
8286 'articleFeedback-table-heading-page' => 'Page',
@@ -141,6 +145,8 @@
142146 'articlefeedback-pitch-or' => '{{Identical|Or}}',
143147 'articlefeedback-pitch-join-body' => 'Based on {{msg-mw|Articlefeedback-pitch-join-message}}.',
144148 'articlefeedback-pitch-join-login' => '{{Identical|Log in}}',
 149+ 'articleFeedback-table-heading-page' => '{{Identical|Page}}',
 150+ 'articleFeedback-table-heading-average' => '{{Identical|Average}}',
145151 );
146152
147153 /** Afrikaans (Afrikaans)
@@ -221,8 +227,18 @@
222228 'articlefeedback-survey-submit' => 'ܫܕܪ',
223229 );
224230
 231+/** Azerbaijani (Azərbaycanca)
 232+ * @author Cekli829
 233+ */
 234+$messages['az'] = array(
 235+ 'articlefeedback-survey-question-useful-iffalse' => 'Niyə?',
 236+ 'articlefeedback-survey-submit' => 'Yolla',
 237+ 'articleFeedback-table-heading-page' => 'Səhifə',
 238+);
 239+
225240 /** Bashkir (Башҡортса)
226241 * @author Assele
 242+ * @author Roustammr
227243 */
228244 $messages['ba'] = array(
229245 'articlefeedback' => 'Мәҡәләне баһалау',
@@ -280,6 +296,7 @@
281297 'articlefeedback-pitch-edit-accept' => 'Был битте үҙгәртергә',
282298 'articlefeedback-survey-message-success' => 'Һорауҙарға яуап биреүегеҙ өсөн рәхмәт.',
283299 'articlefeedback-survey-message-error' => 'Хата килеп сыҡты. Зинһар, һуңыраҡ яңынан ҡабатлап ҡарағыҙ.',
 300+ 'articleFeedback-table-heading-page' => 'Бит',
284301 );
285302
286303 /** Belarusian (Taraškievica orthography) (‪Беларуская (тарашкевіца)‬)
@@ -319,6 +336,7 @@
320337 'articlefeedback-form-panel-helpimprove-privacy' => 'Правілы адносна прыватнасьці',
321338 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Правілы адносна прыватнасьці',
322339 'articlefeedback-form-panel-submit' => 'Даслаць адзнакі',
 340+ 'articlefeedback-form-panel-pending' => 'Вашыя адзнакі не адпраўленыя',
323341 'articlefeedback-form-panel-success' => 'Пасьпяхова захаваны',
324342 'articlefeedback-form-panel-expiry-title' => 'Вашыя адзнакі састарэлі',
325343 'articlefeedback-form-panel-expiry-message' => 'Калі ласка, адзначце зноў гэтую старонку і дашліце новыя адзнакі.',
@@ -349,6 +367,35 @@
350368 'articlefeedback-survey-message-success' => 'Дзякуй за адказы на гэтае апытаньне.',
351369 'articlefeedback-survey-message-error' => 'Узьнікла памылка.
352370 Калі ласка, паспрабуйце потым.',
 371+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Сёньняшнія ўзьлёты і падзеньні',
 372+ 'articleFeedback-table-caption-dailyhighs' => 'Артыкулы з найвышэйшымі адзнакамі: $1',
 373+ 'articleFeedback-table-caption-dailylows' => 'Артыкулы з найніжэйшымі адзнакамі: $1',
 374+ 'articleFeedback-table-caption-weeklymostchanged' => 'Найбольш зьмененыя на гэтым тыдні',
 375+ 'articleFeedback-table-caption-recentlows' => 'Апошнія падзеньні',
 376+ 'articleFeedback-table-heading-page' => 'Старонка',
 377+ 'articleFeedback-table-heading-average' => 'Сярэдняе',
 378+ 'articlefeedback-emailcapture-response-body' => 'Вітаем!
 379+
 380+Дзякуй, за дапамогу ў паляпшэньні {{GRAMMAR:родны|{{SITENAME}}}}.
 381+
 382+Калі ласка, знайдзіце час каб пацьвердзіць Ваш адрас электроннай пошты. Перайдзіце па спасылцы пададзенай ніжэй:
 383+
 384+$1
 385+
 386+Таксама, Вы можаце наведаць:
 387+
 388+$2
 389+
 390+І увесьці наступны код пацьверджаньня:
 391+
 392+$3
 393+
 394+Хутка мы перададзім Вам інфармацыю, як Вы можаце дапамагчы ў паляпшэньні {{GRAMMAR:родны|{{SITENAME}}}}.
 395+
 396+Калі Вы не дасылалі гэты запыт, калі ласка, праігнаруйце гэты ліст, і мы больш не будзем Вас турбаваць.
 397+
 398+З найлепшымі пажаданьнямі, і дзякуй Вам,
 399+Каманда {{GRAMMAR:родны|{{SITENAME}}}}',
353400 );
354401
355402 /** Bulgarian (Български)
@@ -368,6 +415,7 @@
369416 'articlefeedback-survey-thanks' => 'Благодарим ви, че попълнихте въпросника!',
370417 'articlefeedback-report-switch-label' => 'Показване на резултатите',
371418 'articlefeedback-pitch-join-login' => 'Влизане',
 419+ 'articlefeedback-pitch-edit-accept' => 'Редактиране на тази страница',
372420 );
373421
374422 /** Bengali (বাংলা)
@@ -505,6 +553,35 @@
506554 'articlefeedback-survey-message-success' => 'Trugarez da vezañ leuniet ar goulennaoueg.',
507555 'articlefeedback-survey-message-error' => "Ur fazi zo bet.
508556 Klaskit en-dro diwezhatoc'h.",
 557+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Berzh ha droukverzh an devezh',
 558+ 'articleFeedback-table-caption-dailyhighs' => 'Berzh an devezh',
 559+ 'articleFeedback-table-caption-dailylows' => 'Droukverzh an devezh',
 560+ 'articleFeedback-table-caption-weeklymostchanged' => 'Ar re gemmet ar muiañ er sizhun-mañ',
 561+ 'articleFeedback-table-caption-recentlows' => 'Droukverzh nevesañ',
 562+ 'articleFeedback-table-heading-page' => 'Pajenn',
 563+ 'articleFeedback-table-heading-average' => 'Keidenn',
 564+ 'articlefeedback-emailcapture-response-body' => "Demat deoc'h !
 565+
 566+Trugarez deoc'h da vezañ diskouezet bezañ dedennet d'hor skoazellañ evit gwellaat {{SITENAME}}.
 567+
 568+Kemerit ur pennadig amzer evit kadarnaat ho chomlec'h postel en ur glikañ war al liamm a-is :
 569+
 570+$1
 571+
 572+Gallout a rit ivez mont da welet :
 573+
 574+$2
 575+
 576+Ha merkañ ar c'hod kadarnaat da-heul :
 577+
 578+$3
 579+
 580+A-barzh pell ez aimp e darempred ganeoc'h evit ho skoazellañ da wellaat {{SITENAME}}.
 581+
 582+Ma n'eo ket deuet ar goulenn ganeoc'h, na rit ket van ouzh ar postel-mañ, ne vo ket kaset mann ebet all deoc'h.
 583+
 584+A wir galon ganeoc'h ha trugarez deoc'h,
 585+Skipailh {{SITENAME}}",
509586 );
510587
511588 /** Bosnian (Bosanski)
@@ -658,7 +735,7 @@
659736 'articlefeedback-form-panel-expertise-hobby' => 'Je to můj velký koníček',
660737 'articlefeedback-form-panel-expertise-other' => 'Původ mých znalostí zde není uveden',
661738 'articlefeedback-form-panel-helpimprove' => 'Rád bych pomohl vylepšit Wikipedii, pošlete mi e-mail (nepovinné)',
662 - 'articlefeedback-form-panel-helpimprove-note' => 'Pošlete vám zašleme potvrzovací e-mail. Vaší e-mailovou adresu nikomu neposkytneme. $1',
 739+ 'articlefeedback-form-panel-helpimprove-note' => 'Pošleme vám potvrzovací e-mail. Vaši e-mailovou adresu nikomu neposkytneme. $1',
663740 'articlefeedback-form-panel-helpimprove-privacy' => 'Zásady ochrany osobních údajů',
664741 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Ochrana osobních údajů',
665742 'articlefeedback-form-panel-submit' => 'Odeslat hodnocení',
@@ -692,6 +769,9 @@
693770 'articlefeedback-survey-message-success' => 'Děkujeme za vyplnění dotazníku.',
694771 'articlefeedback-survey-message-error' => 'Došlo k chybě.
695772 Zkuste to prosím později.',
 773+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Dnešní maxima a minima',
 774+ 'articleFeedback-table-heading-page' => 'Stránka',
 775+ 'articleFeedback-table-heading-average' => 'Průměr',
696776 );
697777
698778 /** German (Deutsch)
@@ -700,7 +780,7 @@
701781 * @author Purodha
702782 */
703783 $messages['de'] = array(
704 - 'articlefeedback' => 'Seiteneinschätzung',
 784+ 'articlefeedback' => 'Arbeits- und Übersichtsseite zu Seiteneinschätzungen',
705785 'articlefeedback-desc' => 'Ermöglicht die Einschätzung von Seiten (Pilotversion)',
706786 'articlefeedback-survey-question-origin' => 'Auf welcher Seite befandest du dich zu Anfang dieser Umfrage?',
707787 'articlefeedback-survey-question-whyrated' => 'Bitte lasse uns wissen, warum du diese Seite heute eingeschätzt hast (Zutreffendes bitte ankreuzen):',
@@ -731,6 +811,7 @@
732812 'articlefeedback-form-panel-helpimprove-privacy' => 'Datenschutz',
733813 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Datenschutz',
734814 'articlefeedback-form-panel-submit' => 'Einschätzung übermitteln',
 815+ 'articlefeedback-form-panel-pending' => 'Deine Bewertungen wurden nicht übertragen',
735816 'articlefeedback-form-panel-success' => 'Erfolgreich gespeichert',
736817 'articlefeedback-form-panel-expiry-title' => 'Deine Einschätzung liegt zu lange zurück.',
737818 'articlefeedback-form-panel-expiry-message' => 'Bitte beurteile die Seite erneut und speichere eine neue Einschätzung.',
@@ -762,31 +843,33 @@
763844 'articlefeedback-survey-message-error' => 'Ein Fehler ist aufgetreten.
764845 Bitte später erneut versuchen.',
765846 'articleFeedback-table-caption-dailyhighsandlows' => 'Heutige Hochs und Tiefs',
 847+ 'articleFeedback-table-caption-dailyhighs' => 'Artikel mit den höchsten Bewertungen: $1',
 848+ 'articleFeedback-table-caption-dailylows' => 'Artikel mit den niedrigsten Bewertungen: $1',
766849 'articleFeedback-table-caption-weeklymostchanged' => 'Diese Woche am meisten geändert',
767850 'articleFeedback-table-caption-recentlows' => 'Aktuelle Tiefs',
768851 'articleFeedback-table-heading-page' => 'Seite',
769852 'articleFeedback-table-heading-average' => 'Durchschnitt',
770853 'articlefeedback-emailcapture-response-body' => 'Hallo!
771854
772 -Vielen Dank für deine Interesse an der Verbesserung von {{SITENAME}}.
 855+Vielen Dank für dein Interesse an der Verbesserung von {{SITENAME}}.
773856
774 -Bitte nimm dir einen Moment Zeit, deine E-Mail zu bestätigen, indem du auf diesen Link klickst:
 857+Bitte nimm dir einen Moment Zeit, deine E-Mail-Adresse zu bestätigen, indem du auf den folgenden Link klickst:
775858
776859 $1
777860
778 -Du kannst auch besuchen:
 861+Du kannst auch die folgende Seite besuchen:
779862
780863 $2
781864
782 -Und gib den folgenden Bestätigungscode ein:
 865+Gib dort den nachfolgenden Bestätigungscode ein:
783866
784867 $3
785868
786 -Wir melden uns in Kürze, wie du dazu beitragen kannst, {{SITENAME}} zu verbessern.
 869+Wir melden uns in Kürze dazu, wie du helfen kannst, {{SITENAME}} zu verbessern.
787870
788 -Falls du diese Anfrage nicht ausgelöst hast, ignoriere einfach diese E-Mail und wir senden dir nichts mehr.
 871+Sofern du diese Anfrage nicht ausgelöst hast, ignoriere einfach diese E-Mail. Wir werden dir dann nichts mehr zusenden.
789872
790 -Viele Grüße, und Danke,
 873+Viele Grüße und vielen Dank,
791874 Das {{SITENAME}}-Team',
792875 );
793876
@@ -971,11 +1054,35 @@
9721055 'articleFeedback-table-caption-recentlows' => 'Lastatempaj malaltoj',
9731056 'articleFeedback-table-heading-page' => 'Paĝo',
9741057 'articleFeedback-table-heading-average' => 'Averaĝo',
 1058+ 'articlefeedback-emailcapture-response-body' => 'Saluton!
 1059+
 1060+Dankon por esprimante intereson por helpi plibonigi je {{SITENAME}}.
 1061+
 1062+Bonvolu konfirmi vian retpoŝtadreson klakante la jenan ligilon:
 1063+
 1064+$1
 1065+
 1066+Vi povas ankaŭ viziti:
 1067+
 1068+$2
 1069+
 1070+Kaj enigi la jenan konfirmkodon:
 1071+
 1072+$3
 1073+
 1074+Ni mesaĝos vin baldaŭ pri kiel vi povas plibonigi je {{SITENAME}}.
 1075+
 1076+Se vi ne eksendis ĉi tiun peton, bonvolu ignori ĉi tiu retpoŝto, kaj ni ne sendos al vi ion ajn.
 1077+
 1078+Koran dankon,
 1079+La teamo {{SITENAME}}',
9751080 );
9761081
9771082 /** Spanish (Español)
9781083 * @author Dferg
 1084+ * @author Fitoschido
9791085 * @author Locos epraix
 1086+ * @author Mashandy
9801087 * @author Od1n
9811088 * @author Sanbec
9821089 * @author Translationista
@@ -983,6 +1090,7 @@
9841091 $messages['es'] = array(
9851092 'articlefeedback' => 'Evaluación del artículo',
9861093 'articlefeedback-desc' => 'Evaluación del artículo (versión de pruebas)',
 1094+ 'articlefeedback-survey-question-origin' => '¿En qué página estabas cuando iniciaste esta encuesta?',
9871095 'articlefeedback-survey-question-whyrated' => 'Por favor, dinos por qué has valorado esta página hoy (marca todas las opciones que correspondan):',
9881096 'articlefeedback-survey-answer-whyrated-contribute-rating' => 'Quería contribuir a la calificación global de la página',
9891097 'articlefeedback-survey-answer-whyrated-development' => 'Espero que mi calificación afecte positivamante el desarrollo de la página',
@@ -1001,12 +1109,19 @@
10021110 'articlefeedback-form-panel-title' => 'Evalúa esta página',
10031111 'articlefeedback-form-panel-instructions' => 'Por favor tómate un tiempo para evaluar esta página.',
10041112 'articlefeedback-form-panel-clear' => 'Eliminar la evaluación',
1005 - 'articlefeedback-form-panel-expertise' => 'Tengo conocimientos previos sobre este tema',
1006 - 'articlefeedback-form-panel-expertise-studies' => 'Lo he estudiado en la universidad',
 1113+ 'articlefeedback-form-panel-expertise' => 'Estoy muy bien informado sobre este tema (opcional)',
 1114+ 'articlefeedback-form-panel-expertise-studies' => 'Tengo un grado universitario relevante',
10071115 'articlefeedback-form-panel-expertise-profession' => 'Es parte de mi profesión',
1008 - 'articlefeedback-form-panel-expertise-hobby' => 'Está relacionado con mis aficiones o intereses',
 1116+ 'articlefeedback-form-panel-expertise-hobby' => 'Es una pasión personal',
10091117 'articlefeedback-form-panel-expertise-other' => 'La fuente de mi conocimiento no está en esta lista',
1010 - 'articlefeedback-form-panel-submit' => 'Enviar comentarios',
 1118+ 'articlefeedback-form-panel-helpimprove' => 'Me gustaría ayudar a mejorar Wikipedia, enviarme un correo electrónico (opcional)',
 1119+ 'articlefeedback-form-panel-helpimprove-note' => 'Te enviaremos un correo electrónico de confirmación. No compartiremos tu dirección con nadie. $1',
 1120+ 'articlefeedback-form-panel-helpimprove-privacy' => 'Política de privacidad',
 1121+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Política de protección de datos',
 1122+ 'articlefeedback-form-panel-submit' => 'Enviar calificaciones',
 1123+ 'articlefeedback-form-panel-success' => 'Guardado correctamente',
 1124+ 'articlefeedback-form-panel-expiry-title' => 'Tus calificaciones han caducado',
 1125+ 'articlefeedback-form-panel-expiry-message' => 'Por favor, reevalúa esta página y presenta nuevas calificaciones.',
10111126 'articlefeedback-report-switch-label' => 'Ver las calificaciones de la página',
10121127 'articlefeedback-report-panel-title' => 'Evaluaciones de la página',
10131128 'articlefeedback-report-panel-description' => 'Promedio actual de calificaciones.',
@@ -1017,7 +1132,27 @@
10181133 'articlefeedback-field-complete-label' => 'Completa',
10191134 'articlefeedback-field-complete-tip' => '¿Crees que esta página cubre las áreas esenciales del tópico que deberían estar cubiertas?',
10201135 'articlefeedback-field-objective-label' => 'Objetivo',
 1136+ 'articlefeedback-field-objective-tip' => '¿Crees que esta página muestra una representación justa de todas las perspectivas sobre el tema?',
 1137+ 'articlefeedback-field-wellwritten-label' => 'Bien escrito',
 1138+ 'articlefeedback-field-wellwritten-tip' => '¿Crees que esta página está bien organizada y escrita correctamente?',
 1139+ 'articlefeedback-pitch-reject' => 'Quizá más tarde',
10211140 'articlefeedback-pitch-or' => 'o',
 1141+ 'articlefeedback-pitch-thanks' => '¡Gracias! Se han guardado tus valoraciones.',
 1142+ 'articlefeedback-pitch-survey-message' => 'Tómate un momento para completar una breve encuesta.',
 1143+ 'articlefeedback-pitch-survey-accept' => 'Iniciar encuesta',
 1144+ 'articlefeedback-pitch-join-message' => '¿Quieres crear una cuenta nueva?',
 1145+ 'articlefeedback-pitch-join-body' => 'Una cuenta te ayudará a realizar un seguimiento de tus cambios y te permitirá participar en debates y ser parte de la comunidad.',
 1146+ 'articlefeedback-pitch-join-accept' => 'Crear una cuenta',
 1147+ 'articlefeedback-pitch-join-login' => 'Iniciar sesión',
 1148+ 'articlefeedback-pitch-edit-message' => '¿Sabías que puedes editar esta página?',
 1149+ 'articlefeedback-pitch-edit-accept' => 'Editar esta página',
 1150+ 'articlefeedback-survey-message-success' => 'Gracias por completar la encuesta.',
 1151+ 'articlefeedback-survey-message-error' => 'Ha ocurrido un error.
 1152+Por favor inténtalo de nuevo más tarde.',
 1153+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Altibajos de hoy',
 1154+ 'articleFeedback-table-caption-weeklymostchanged' => 'Lo más modificado de la semana',
 1155+ 'articleFeedback-table-heading-page' => 'Página',
 1156+ 'articleFeedback-table-heading-average' => 'Promedio',
10221157 );
10231158
10241159 /** Estonian (Eesti)
@@ -1040,6 +1175,7 @@
10411176 'articlefeedback-survey-submit' => 'Saada',
10421177 'articlefeedback-survey-title' => 'Palun vasta mõnele küsimusele.',
10431178 'articlefeedback-survey-thanks' => 'Aitäh küsitlusele vastamast!',
 1179+ 'articlefeedback-pitch-or' => 'või',
10441180 );
10451181
10461182 /** Basque (Euskara)
@@ -1181,6 +1317,29 @@
11821318 'articleFeedback-table-caption-recentlows' => 'Dernières bas',
11831319 'articleFeedback-table-heading-page' => 'Page',
11841320 'articleFeedback-table-heading-average' => 'Moyenne',
 1321+ 'articlefeedback-emailcapture-response-body' => "Bonjour !
 1322+
 1323+Merci de votre à aider à améliorer {{SITENAME}}.
 1324+
 1325+Veuillez prendre un moment pour confirmer votre courriel en cliquant sur le lien ci-dessous :
 1326+
 1327+$1
 1328+
 1329+Vous pouvez aussi visiter :
 1330+
 1331+$2
 1332+
 1333+Et entrer le code ce confirmation suivant :
 1334+
 1335+$3
 1336+
 1337+Nous serons en contact prochainement pour connaître la façon dont vous pouvez aider à améliorer {{SITENAME}}.
 1338+
 1339+Si vous n'avez pas initié cette demande, veuillez ignorer ce courriel et nous ne vous enverrons rien d’autre chose.
 1340+
 1341+Meilleurs vœux, et merci,
 1342+
 1343+L’équipe de {{SITENAME}}",
11851344 );
11861345
11871346 /** Franco-Provençal (Arpetan)
@@ -1189,9 +1348,47 @@
11901349 $messages['frp'] = array(
11911350 'articlefeedback' => 'Èstimacion d’articllo',
11921351 'articlefeedback-desc' => 'Èstimacion d’articllo (vèrsion pilote)',
 1352+ 'articlefeedback-survey-answer-whyrated-sharing-opinion' => 'J’âmo partagiér mon avis',
11931353 'articlefeedback-survey-answer-whyrated-other' => 'Ôtra',
11941354 'articlefeedback-survey-question-useful-iffalse' => 'Porquè ?',
 1355+ 'articlefeedback-survey-question-comments' => 'Avéd-vos d’ôtros comentèros ?',
11951356 'articlefeedback-survey-submit' => 'Sometre',
 1357+ 'articlefeedback-survey-title' => 'Volyéd rèpondre a quârques quèstions',
 1358+ 'articlefeedback-survey-thanks' => 'Grant-marci d’avêr rempli lo quèstionèro.',
 1359+ 'articlefeedback-error' => 'Una èrror est arrevâ. Volyéd tornar èprovar ples târd.',
 1360+ 'articlefeedback-form-switch-label' => 'Èstimar cela pâge',
 1361+ 'articlefeedback-form-panel-title' => 'Èstimar cela pâge',
 1362+ 'articlefeedback-form-panel-instructions' => 'Volyéd prendre un moment por èstimar cela pâge.',
 1363+ 'articlefeedback-form-panel-clear' => 'Enlevar cela èstimacion',
 1364+ 'articlefeedback-form-panel-helpimprove-privacy' => 'Politica de confidencialitât',
 1365+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Politica de confidencialitât',
 1366+ 'articlefeedback-form-panel-submit' => 'Mandar les èstimacions',
 1367+ 'articlefeedback-form-panel-success' => 'Encartâ avouéc reusséta',
 1368+ 'articlefeedback-form-panel-expiry-title' => 'Voutres èstimacions ont èxpirâs',
 1369+ 'articlefeedback-report-switch-label' => 'Vêre les èstimacions de la pâge',
 1370+ 'articlefeedback-report-panel-title' => 'Èstimacions de la pâge',
 1371+ 'articlefeedback-report-panel-description' => 'Èstimacions moyenes d’ora.',
 1372+ 'articlefeedback-report-empty' => 'Gins d’èstimacion',
 1373+ 'articlefeedback-report-ratings' => 'Èstimacions $1',
 1374+ 'articlefeedback-field-trustworthy-label' => 'Digno de confiance',
 1375+ 'articlefeedback-field-complete-label' => 'Complèt',
 1376+ 'articlefeedback-field-objective-label' => 'Emparciâl',
 1377+ 'articlefeedback-field-wellwritten-label' => 'Bien ècrit',
 1378+ 'articlefeedback-pitch-reject' => 'Pôt-étre ples târd',
 1379+ 'articlefeedback-pitch-or' => 'ou ben',
 1380+ 'articlefeedback-pitch-thanks' => 'Grant-marci ! Voutra èstimacion at étâ encartâ.',
 1381+ 'articlefeedback-pitch-survey-accept' => 'Emmodar l’enquéta',
 1382+ 'articlefeedback-pitch-join-accept' => 'Fâre un compto',
 1383+ 'articlefeedback-pitch-join-login' => 'Sè branchiér',
 1384+ 'articlefeedback-pitch-edit-accept' => 'Changiér ceta pâge',
 1385+ 'articlefeedback-survey-message-success' => 'Grant-marci d’avêr rempli lo quèstionèro.',
 1386+ 'articlefeedback-survey-message-error' => 'Una èrror est arrevâ.
 1387+Volyéd tornar èprovar ples târd.',
 1388+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Los hôts et bâs d’houé',
 1389+ 'articleFeedback-table-caption-weeklymostchanged' => 'Los ples changiês de cela semana',
 1390+ 'articleFeedback-table-caption-recentlows' => 'Dèrriérs bâs',
 1391+ 'articleFeedback-table-heading-page' => 'Pâge',
 1392+ 'articleFeedback-table-heading-average' => 'Moyena',
11961393 );
11971394
11981395 /** Friulian (Furlan)
@@ -1205,7 +1402,7 @@
12061403 * @author Toliño
12071404 */
12081405 $messages['gl'] = array(
1209 - 'articlefeedback' => 'Avaliación do artigo',
 1406+ 'articlefeedback' => 'Panel de avaliación de artigos',
12101407 'articlefeedback-desc' => 'Versión piloto da avaliación dos artigos',
12111408 'articlefeedback-survey-question-origin' => 'En que páxina estaba cando comezou a enquisa?',
12121409 'articlefeedback-survey-question-whyrated' => 'Díganos por que valorou esta páxina (marque todas as opcións que cumpran):',
@@ -1226,12 +1423,17 @@
12271424 'articlefeedback-form-panel-title' => 'Avaliar esta páxina',
12281425 'articlefeedback-form-panel-instructions' => 'Por favor, tome uns intres para avaliar esta páxina.',
12291426 'articlefeedback-form-panel-clear' => 'Eliminar a avaliación',
1230 - 'articlefeedback-form-panel-expertise' => 'Teño moi bo coñecemento sobre o tema',
 1427+ 'articlefeedback-form-panel-expertise' => 'Estou moi ben informado sobre este tema (opcional)',
12311428 'articlefeedback-form-panel-expertise-studies' => 'Teño un grao escolar ou universitario pertinente',
12321429 'articlefeedback-form-panel-expertise-profession' => 'É parte da miña profesión',
12331430 'articlefeedback-form-panel-expertise-hobby' => 'É unha das miñas afeccións persoais',
12341431 'articlefeedback-form-panel-expertise-other' => 'A fonte do meu coñecemento non está nesta lista',
 1432+ 'articlefeedback-form-panel-helpimprove' => 'Gustaríame axudar a mellorar a Wikipedia; enviádeme un correo electrónico (opcional)',
 1433+ 'articlefeedback-form-panel-helpimprove-note' => 'Enviarémoslle un correo electrónico de confirmación. Non compartiremos o seu enderezo con ninguén. $1',
 1434+ 'articlefeedback-form-panel-helpimprove-privacy' => 'Política de protección de datos',
 1435+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Política de protección de datos',
12351436 'articlefeedback-form-panel-submit' => 'Enviar a avaliación',
 1437+ 'articlefeedback-form-panel-pending' => 'Non enviou as súas valoracións',
12361438 'articlefeedback-form-panel-success' => 'Gardado correctamente',
12371439 'articlefeedback-form-panel-expiry-title' => 'As súas avaliacións caducaron',
12381440 'articlefeedback-form-panel-expiry-message' => 'Volva avaliar esta páxina e envíe as novas valoracións.',
@@ -1262,6 +1464,35 @@
12631465 'articlefeedback-survey-message-success' => 'Grazas por encher a enquisa.',
12641466 'articlefeedback-survey-message-error' => 'Houbo un erro.
12651467 Inténteo de novo máis tarde.',
 1468+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Os altos e baixos de hoxe',
 1469+ 'articleFeedback-table-caption-dailyhighs' => 'Artigos coas valoracións máis altas: $1',
 1470+ 'articleFeedback-table-caption-dailylows' => 'Artigos coas valoracións máis baixas: $1',
 1471+ 'articleFeedback-table-caption-weeklymostchanged' => 'Os máis modificados esta semana',
 1472+ 'articleFeedback-table-caption-recentlows' => 'Últimos baixos',
 1473+ 'articleFeedback-table-heading-page' => 'Páxina',
 1474+ 'articleFeedback-table-heading-average' => 'Media',
 1475+ 'articlefeedback-emailcapture-response-body' => 'Ola!
 1476+
 1477+Grazas por expresar interese en axudar a mellorar {{SITENAME}}.
 1478+
 1479+Tome un momento para confirmar o seu correo electrónico premendo na ligazón que hai a continuación:
 1480+
 1481+$1
 1482+
 1483+Tamén pode visitar:
 1484+
 1485+$2
 1486+
 1487+E inserir o seguinte código de confirmación:
 1488+
 1489+$3
 1490+
 1491+Poñerémonos en contacto con vostede para informarlle sobre como axudar a mellorar {{SITENAME}}.
 1492+
 1493+Se vostede non fixo esta petición, ignore esta mensaxe e non lle enviaremos máis nada.
 1494+
 1495+Os mellores desexos e grazas,
 1496+O equipo de {{SITENAME}}',
12661497 );
12671498
12681499 /** Swiss German (Alemannisch)
@@ -1328,10 +1559,11 @@
13291560
13301561 /** Hebrew (עברית)
13311562 * @author Amire80
 1563+ * @author Nahum
13321564 * @author YaronSh
13331565 */
13341566 $messages['he'] = array(
1335 - 'articlefeedback' => 'הערכת ערך',
 1567+ 'articlefeedback' => 'לוח בקרה למשוב על ערך',
13361568 'articlefeedback-desc' => 'הערכת ערך (גרסה ניסיונית)',
13371569 'articlefeedback-survey-question-origin' => 'מאיזה עמוד הגעתם לסקר הזה?',
13381570 'articlefeedback-survey-question-whyrated' => 'נא ליידע אותנו מדובר דירגת דף זה היום (יש לסמן את כל העונים לשאלה):',
@@ -1362,6 +1594,7 @@
13631595 'articlefeedback-form-panel-helpimprove-privacy' => 'מדיניות הפרטיות',
13641596 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:מדיניות הפרטיות',
13651597 'articlefeedback-form-panel-submit' => 'לשלוח דירוגים',
 1598+ 'articlefeedback-form-panel-pending' => 'הדירוגים שלכם לא נשלחו',
13661599 'articlefeedback-form-panel-success' => 'נשמר בהצלחה',
13671600 'articlefeedback-form-panel-expiry-title' => 'הדירוגים שלכם פגו',
13681601 'articlefeedback-form-panel-expiry-message' => 'נא להעריך את הדף מחדש ולשלוח דירוגים חדשים.',
@@ -1393,6 +1626,8 @@
13941627 'articlefeedback-survey-message-error' => 'אירעה שגיאה.
13951628 נא לנסות שוב מאוחר יותר.',
13961629 'articleFeedback-table-caption-dailyhighsandlows' => 'התוצאות הגבוהות והנמוכות היום',
 1630+ 'articleFeedback-table-caption-dailyhighs' => 'ערכים עם הדירוגים הגבוהים ביותר: $1',
 1631+ 'articleFeedback-table-caption-dailylows' => 'ערכים עם הדירוגים הנמוכים ביותר: $1',
13971632 'articleFeedback-table-caption-weeklymostchanged' => 'מה השתנה השבוע יותר מכול',
13981633 'articleFeedback-table-caption-recentlows' => 'תוצאות נמוכות לאחרונה',
13991634 'articleFeedback-table-heading-page' => 'דף',
@@ -1418,6 +1653,7 @@
14191654 אם לא יזמת את הבקשה הזאת, נא להתעלם מהמכתב הזה ולא נשלח לך שום דבר אחר.
14201655
14211656 כל טוב, ותודה
 1657+
14221658 צוות {{SITENAME}}',
14231659 );
14241660
@@ -1576,7 +1812,7 @@
15771813 * @author McDutchie
15781814 */
15791815 $messages['ia'] = array(
1580 - 'articlefeedback' => 'Evalutation de articulos',
 1816+ 'articlefeedback' => 'Pannello de evalutation de articulos',
15811817 'articlefeedback-desc' => 'Evalutation de articulos (version pilota)',
15821818 'articlefeedback-survey-question-origin' => 'In qual pagina te trovava tu quando tu comenciava iste sondage?',
15831819 'articlefeedback-survey-question-whyrated' => 'Per favor dice nos proque tu ha evalutate iste pagina hodie (marca tote le optiones applicabile):',
@@ -1607,6 +1843,7 @@
16081844 'articlefeedback-form-panel-helpimprove-privacy' => 'Politica de confidentialitate',
16091845 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Politica de confidentialitate',
16101846 'articlefeedback-form-panel-submit' => 'Submitter evalutationes',
 1847+ 'articlefeedback-form-panel-pending' => 'Tu evalutationes non ha essite submittite',
16111848 'articlefeedback-form-panel-success' => 'Salveguardate con successo',
16121849 'articlefeedback-form-panel-expiry-title' => 'Tu evalutationes ha expirate',
16131850 'articlefeedback-form-panel-expiry-message' => 'Per favor re-evaluta iste pagina e submitte nove evalutationes.',
@@ -1637,6 +1874,35 @@
16381875 'articlefeedback-survey-message-success' => 'Gratias pro haber respondite al inquesta.',
16391876 'articlefeedback-survey-message-error' => 'Un error ha occurrite.
16401877 Per favor reproba plus tarde.',
 1878+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Altos e bassos de hodie',
 1879+ 'articleFeedback-table-caption-dailyhighs' => 'Articulos le plus appreciate: $1',
 1880+ 'articleFeedback-table-caption-dailylows' => 'Articulos le minus appreciate: $1',
 1881+ 'articleFeedback-table-caption-weeklymostchanged' => 'Le plus modificate iste septimana',
 1882+ 'articleFeedback-table-caption-recentlows' => 'Bassos recente',
 1883+ 'articleFeedback-table-heading-page' => 'Pagina',
 1884+ 'articleFeedback-table-heading-average' => 'Medie',
 1885+ 'articlefeedback-emailcapture-response-body' => 'Salute!
 1886+
 1887+Gratias pro tu interesse in adjutar a meliorar {{SITENAME}}.
 1888+
 1889+Per favor prende un momento pro confirmar tu adresse de e-mail. Clicca super le ligamine sequente:
 1890+
 1891+$1
 1892+
 1893+Alternativemente, visita:
 1894+
 1895+$2
 1896+
 1897+...e entra le sequente codice de confirmation:
 1898+
 1899+$3
 1900+
 1901+Nos va tosto contactar te pro explicar como tu pote adjutar a meliorar {{SITENAME}}.
 1902+
 1903+Si tu non ha initiate iste requesta, per favor ignora iste e-mail e nos non te inviara altere cosa.
 1904+
 1905+Optime salutes, e multe gratias,
 1906+Le equipa de {{SITENAME}}',
16411907 );
16421908
16431909 /** Indonesian (Bahasa Indonesia)
@@ -1707,6 +1973,8 @@
17081974 'articlefeedback-survey-message-error' => 'Kesalahan terjadi.
17091975 Silakan coba lagi.',
17101976 'articleFeedback-table-caption-dailyhighsandlows' => 'Kenaikan dan penurunan hari ini',
 1977+ 'articleFeedback-table-caption-dailyhighs' => 'Tertinggi hari ini',
 1978+ 'articleFeedback-table-caption-dailylows' => 'Terendah hari ini',
17111979 'articleFeedback-table-caption-weeklymostchanged' => 'Paling berubah minggu ini',
17121980 'articleFeedback-table-caption-recentlows' => 'Penurunan terbaru',
17131981 'articleFeedback-table-heading-page' => 'Halaman',
@@ -1742,6 +2010,7 @@
17432011 $messages['it'] = array(
17442012 'articlefeedback' => 'Valutazione pagina',
17452013 'articlefeedback-desc' => 'Valutazione pagina (versione pilota)',
 2014+ 'articlefeedback-survey-question-origin' => 'In quale pagina eravate quando avete iniziato questa indagine?',
17462015 'articlefeedback-survey-question-whyrated' => 'Esprimi il motivo per cui oggi hai valutato questa pagina (puoi selezionare più opzioni):',
17472016 'articlefeedback-survey-answer-whyrated-contribute-rating' => 'Ho voluto contribuire alla valutazione complessiva della pagina',
17482017 'articlefeedback-survey-answer-whyrated-development' => 'Spero che il mio giudizio influenzi positivamente lo sviluppo della pagina',
@@ -1766,6 +2035,11 @@
17672036 'articlefeedback-form-panel-expertise-profession' => 'È parte della mia professione',
17682037 'articlefeedback-form-panel-expertise-hobby' => 'È una profonda passione personale',
17692038 'articlefeedback-form-panel-expertise-other' => 'La fonte della mia conoscenza non è elencata qui',
 2039+ 'articlefeedback-form-panel-helpimprove' => 'Vorrei contribuire a migliorare Wikipedia, inviatemi una e-mail (facoltativo)',
 2040+ 'articlefeedback-form-panel-helpimprove-note' => 'Ti invieremo una e-mail di conferma. Non condivideremo il tuo indirizzo con nessuno. $1',
 2041+ 'articlefeedback-form-panel-helpimprove-privacy' => 'Informazioni sulla privacy',
 2042+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Informazioni sulla privacy',
 2043+ 'articlefeedback-form-panel-submit' => 'Invia voti',
17702044 'articlefeedback-form-panel-success' => 'Salvato con successo',
17712045 'articlefeedback-form-panel-expiry-title' => 'Le tue valutazioni sono obsolete',
17722046 'articlefeedback-form-panel-expiry-message' => 'Valuta nuovamente questa pagina ed inviaci i tuoi giudizi.',
@@ -1773,12 +2047,12 @@
17742048 'articlefeedback-report-panel-title' => 'Giudizio pagina',
17752049 'articlefeedback-report-panel-description' => 'Valutazione media attuale.',
17762050 'articlefeedback-report-empty' => 'Nessuna valutazione',
1777 - 'articlefeedback-report-ratings' => '$1 {{PLURAL:$1|valutazione|valutazioni}}',
 2051+ 'articlefeedback-report-ratings' => '$1 voti',
17782052 'articlefeedback-field-trustworthy-label' => 'Affidabile',
17792053 'articlefeedback-field-trustworthy-tip' => 'Ritieni che questa pagina abbia citazioni sufficienti e che queste citazioni provengano da fonti attendibili?',
17802054 'articlefeedback-field-complete-label' => 'Completa',
17812055 'articlefeedback-field-complete-tip' => 'Ritieni che questa pagina copra le aree tematiche essenziali che dovrebbe?',
1782 - 'articlefeedback-field-objective-label' => 'Obiettivo',
 2056+ 'articlefeedback-field-objective-label' => 'Obiettiva',
17832057 'articlefeedback-field-objective-tip' => 'Ritieni che questa pagina mostri una rappresentazione equa di tutti i punti di vista sul tema?',
17842058 'articlefeedback-field-wellwritten-label' => 'Ben scritta',
17852059 'articlefeedback-field-wellwritten-tip' => 'Ritieni che questa pagina sia ben organizzata e ben scritta?',
@@ -1796,6 +2070,8 @@
17972071 'articlefeedback-survey-message-success' => 'Grazie per aver compilato il questionario.',
17982072 'articlefeedback-survey-message-error' => 'Si è verificato un errore.
17992073 Riprova più tardi.',
 2074+ 'articleFeedback-table-heading-page' => 'Pagina',
 2075+ 'articleFeedback-table-heading-average' => 'Media',
18002076 );
18012077
18022078 /** Japanese (日本語)
@@ -1826,11 +2102,14 @@
18272103 'articlefeedback-form-panel-title' => 'このページを評価',
18282104 'articlefeedback-form-panel-instructions' => 'このページの評価を算出していますので、少しお待ちください。',
18292105 'articlefeedback-form-panel-clear' => 'この評価を除去する',
1830 - 'articlefeedback-form-panel-expertise' => 'この話題について、高度な知識を持っている',
 2106+ 'articlefeedback-form-panel-expertise' => 'この話題について、高度な知識を持っている(自由選択)',
18312107 'articlefeedback-form-panel-expertise-studies' => '関連する大学の学位を持っている',
18322108 'articlefeedback-form-panel-expertise-profession' => '自分の職業の一部である',
18332109 'articlefeedback-form-panel-expertise-hobby' => '個人的に深い情熱を注いでいる',
18342110 'articlefeedback-form-panel-expertise-other' => '自分の知識源はこの中にない',
 2111+ 'articlefeedback-form-panel-helpimprove' => 'ウィキペディアを改善するための電子メールを受信する(自由選択)',
 2112+ 'articlefeedback-form-panel-helpimprove-privacy' => 'プライバシー・ポリシー',
 2113+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:プライバシー・ポリシー',
18352114 'articlefeedback-form-panel-submit' => '評価を送信',
18362115 'articlefeedback-form-panel-success' => '保存に成功',
18372116 'articlefeedback-form-panel-expiry-title' => 'あなたの評価の有効期限が切れました',
@@ -1862,6 +2141,9 @@
18632142 'articlefeedback-survey-message-success' => 'アンケートに記入していただきありがとうございます。',
18642143 'articlefeedback-survey-message-error' => 'エラーが発生しました。
18652144 後でもう一度試してください。',
 2145+ 'articleFeedback-table-caption-dailyhighsandlows' => '今日の最高値と最低値',
 2146+ 'articleFeedback-table-heading-page' => 'ページ',
 2147+ 'articleFeedback-table-heading-average' => '平均',
18662148 );
18672149
18682150 /** Georgian (ქართული)
@@ -2014,6 +2296,9 @@
20152297 'articlefeedback-survey-message-success' => 'Merci för et Ußfölle!',
20162298 'articlefeedback-survey-message-error' => 'Ene Fähler es dozwesche jukumme.
20172299 Versöhg et shpääder norr_enß.',
 2300+ 'articleFeedback-table-caption-weeklymostchanged' => 'Diß Woch et miehtß jeändert',
 2301+ 'articleFeedback-table-heading-page' => 'Sigg',
 2302+ 'articleFeedback-table-heading-average' => 'Dorschnett',
20182303 );
20192304
20202305 /** Kurdish (Latin) (Kurdî (Latin))
@@ -2029,7 +2314,7 @@
20302315 * @author Robby
20312316 */
20322317 $messages['lb'] = array(
2033 - 'articlefeedback' => 'Artikelaschätzung',
 2318+ 'articlefeedback' => 'Iwwerbléck-Säit Artikelbewäertung',
20342319 'articlefeedback-desc' => 'Artikelaschätzung Pilotversioun',
20352320 'articlefeedback-survey-question-origin' => 'Op wat fir enger Säit war Dir wéi Dir mat der Ëmfro ugefaang huet?',
20362321 'articlefeedback-survey-question-whyrated' => 'Sot eis w.e.g. firwat datt Dir dës säit bewäert hutt (klickt alles u wat zoutrëfft):',
@@ -2055,6 +2340,10 @@
20562341 'articlefeedback-form-panel-expertise-profession' => 'Et ass en Deel vu mengem Beruff',
20572342 'articlefeedback-form-panel-expertise-hobby' => 'Ech si passionéiert vun deem Sujet',
20582343 'articlefeedback-form-panel-expertise-other' => "D'Quell vu mengem Wëssen ass hei net opgezielt",
 2344+ 'articlefeedback-form-panel-helpimprove' => 'Ech wëll hëllefe fir {{SITENAME}} ze verbesseren, schéckt mir eng E-Mail (fakultativ)',
 2345+ 'articlefeedback-form-panel-helpimprove-note' => 'Mir schécken Iech eng Confirmatiouns-E-Mail. Mir ginn Är E-Mailadress u kee weider. $1',
 2346+ 'articlefeedback-form-panel-helpimprove-privacy' => 'Dateschutz',
 2347+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Dateschutz',
20592348 'articlefeedback-form-panel-submit' => 'Bewäertunge schécken',
20602349 'articlefeedback-form-panel-success' => 'Gespäichert',
20612350 'articlefeedback-form-panel-expiry-title' => 'Är Bewäertung ass ofgelaf',
@@ -2086,6 +2375,9 @@
20872376 'articlefeedback-survey-message-success' => "Merci datt Dir d'Ëmfro ausgefëllt hutt.",
20882377 'articlefeedback-survey-message-error' => 'Et ass e Feeler geschitt.
20892378 Probéiert w.e.g. méi spéit nach emol.',
 2379+ 'articleFeedback-table-caption-weeklymostchanged' => 'Déi gréisst Ännerungen an dëser Woch',
 2380+ 'articleFeedback-table-heading-page' => 'Säit',
 2381+ 'articleFeedback-table-heading-average' => 'Duerchschnëtt',
20902382 );
20912383
20922384 /** Limburgish (Limburgs)
@@ -2098,6 +2390,55 @@
20992391 'articlefeedback-survey-question-useful-iffalse' => 'Wróm?',
21002392 );
21012393
 2394+/** Lithuanian (Lietuvių)
 2395+ * @author Eitvys200
 2396+ * @author Perkunas
 2397+ */
 2398+$messages['lt'] = array(
 2399+ 'articlefeedback-survey-question-whyrated' => 'Prašome pranešti mums, kodėl jus įvertino šį puslapį šiandien (pažymėkite visus tinkamus):',
 2400+ 'articlefeedback-survey-answer-whyrated-sharing-opinion' => 'Man patinka dalintis savo nuomonę',
 2401+ 'articlefeedback-survey-answer-whyrated-other' => 'Kita',
 2402+ 'articlefeedback-survey-question-useful-iffalse' => 'Kodėl?',
 2403+ 'articlefeedback-survey-submit' => 'Siųsti',
 2404+ 'articlefeedback-survey-title' => 'Prašome atsakyti į kelis klausimus',
 2405+ 'articlefeedback-survey-thanks' => 'Dėkojame, kad užpildėte apklausa.',
 2406+ 'articlefeedback-error' => 'Įvyko klaida. Bandykite dar kartą vėliau.',
 2407+ 'articlefeedback-form-switch-label' => 'Įvertinti šį puslapį',
 2408+ 'articlefeedback-form-panel-title' => 'Įvertinti šį puslapį',
 2409+ 'articlefeedback-form-panel-instructions' => 'Skirkite laiko kad įvertintumėt šį puslapį.',
 2410+ 'articlefeedback-form-panel-clear' => 'Pašalinti šį įvertinimą',
 2411+ 'articlefeedback-form-panel-expertise' => 'Aš labai gerai nusimanau apie šią temą (neprivaloma)',
 2412+ 'articlefeedback-form-panel-expertise-studies' => 'Turiu atitinkamą kolegijos / universiteto diplomą',
 2413+ 'articlefeedback-form-panel-expertise-profession' => 'Tai dalis mano profesijos',
 2414+ 'articlefeedback-form-panel-expertise-hobby' => 'Tai yra asmeninė aistra',
 2415+ 'articlefeedback-form-panel-expertise-other' => 'Mano žinių šaltinio čia nėra',
 2416+ 'articlefeedback-form-panel-helpimprove' => 'Norėčiau padėti pagerinti Vikipediją, siųskite man e-mail (neprivaloma)',
 2417+ 'articlefeedback-form-panel-helpimprove-note' => 'Mes jums atsiųsime patvirtinimą elektroniniu paštu. Mes nesidaliname Jūsų adresu su bet kuo. $1',
 2418+ 'articlefeedback-form-panel-helpimprove-privacy' => 'Privatumo politika',
 2419+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Projektas: Privatumo politika',
 2420+ 'articlefeedback-form-panel-submit' => 'Pateikti įvertinimus',
 2421+ 'articlefeedback-form-panel-pending' => 'Jūsų įvertinimai nebuvo pateikti',
 2422+ 'articlefeedback-form-panel-success' => 'Išsaugota sėkmingai',
 2423+ 'articlefeedback-report-empty' => 'Nėra vertinimų',
 2424+ 'articlefeedback-report-ratings' => '$1 vertinimas',
 2425+ 'articlefeedback-field-complete-label' => 'Užbaigti',
 2426+ 'articlefeedback-field-objective-label' => 'Tikslas',
 2427+ 'articlefeedback-pitch-reject' => 'Galbūt vėliau',
 2428+ 'articlefeedback-pitch-or' => 'arba',
 2429+ 'articlefeedback-pitch-survey-message' => 'Prašome skirkite truputi laiko kad užpildytumėte trumpą apklausą.',
 2430+ 'articlefeedback-pitch-survey-accept' => 'Pradėti apklausą',
 2431+ 'articlefeedback-pitch-join-message' => 'Ar norėjote sukurti paskyrą?',
 2432+ 'articlefeedback-pitch-join-accept' => 'Sukurti paskyrą',
 2433+ 'articlefeedback-pitch-join-login' => 'Prisijungti',
 2434+ 'articlefeedback-pitch-edit-message' => 'Ar žinote, kad galite redaguoti šį puslapį?',
 2435+ 'articlefeedback-pitch-edit-accept' => 'Redaguoti šį puslapį',
 2436+ 'articlefeedback-survey-message-success' => 'Dėkojame, kad užpildėte apklausa.',
 2437+ 'articlefeedback-survey-message-error' => 'Įvyko klaida.
 2438+Pabandykite vėliau.',
 2439+ 'articleFeedback-table-caption-dailyhighs' => 'Straipsniai su aukščiausiais įvertinimais: $1',
 2440+ 'articleFeedback-table-caption-dailylows' => 'Straipsniai su žemiausiais įvertinimais: $1',
 2441+);
 2442+
21022443 /** Latvian (Latviešu)
21032444 * @author GreenZeb
21042445 * @author Papuass
@@ -2175,7 +2516,7 @@
21762517 * @author Bjankuloski06
21772518 */
21782519 $messages['mk'] = array(
2179 - 'articlefeedback' => 'Оценување на статија',
 2520+ 'articlefeedback' => 'Табла за оценување на статија',
21802521 'articlefeedback-desc' => 'Пилотна верзија на Оценување на статија',
21812522 'articlefeedback-survey-question-origin' => 'На која страница бевте кога ја започнавте анкетава?',
21822523 'articlefeedback-survey-question-whyrated' => 'Кажете ни зошто ја оценивте страницава денес (штиклирајте ги сите релевантни одговори)',
@@ -2207,6 +2548,7 @@
22082549 'articlefeedback-form-panel-helpimprove-privacy' => 'Заштита на личните податоци',
22092550 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Заштита на личните податоци',
22102551 'articlefeedback-form-panel-submit' => 'Поднеси оценки',
 2552+ 'articlefeedback-form-panel-pending' => 'Вашите оценки не се поднесени',
22112553 'articlefeedback-form-panel-success' => 'Успешно зачувано',
22122554 'articlefeedback-form-panel-expiry-title' => 'Вашите оценки истекоа',
22132555 'articlefeedback-form-panel-expiry-message' => 'Прегледајте ја страницава повторно и дајте ѝ нови оценки.',
@@ -2238,18 +2580,43 @@
22392581 'articlefeedback-survey-message-error' => 'Се појави грешка.
22402582 Обидете се подоцна.',
22412583 'articleFeedback-table-caption-dailyhighsandlows' => 'Издигања и падови за денес',
 2584+ 'articleFeedback-table-caption-dailyhighs' => 'Статии со највисоки оценки: $1',
 2585+ 'articleFeedback-table-caption-dailylows' => 'Статии со најниски оценки: $1',
22422586 'articleFeedback-table-caption-weeklymostchanged' => 'Најизменети за неделава',
22432587 'articleFeedback-table-caption-recentlows' => 'Скорешни падови',
22442588 'articleFeedback-table-heading-page' => 'Страница',
22452589 'articleFeedback-table-heading-average' => 'Просечно',
 2590+ 'articlefeedback-emailcapture-response-body' => 'Здраво!
 2591+
 2592+Ви благодариме што изразивте интерес да помогнете во развојот на {{SITENAME}}.
 2593+
 2594+Потврдете ја вашата е-пошта на следнава врска:
 2595+
 2596+$1
 2597+
 2598+Можете да ја посетите и страницата:
 2599+
 2600+$2
 2601+
 2602+Внесете го следниов потврден кон:
 2603+
 2604+$3
 2605+
 2606+Набргу ќе ви пишеме како можете да помогнете во подобрувањето на {{SITENAME}}.
 2607+
 2608+Ако го немате побарано ова, занемарате ја поракава, и ние повеќе ништо нема да ви испраќаме.
 2609+
 2610+Ви благодариме и сè најдобро,
 2611+Екипата на {{SITENAME}}',
22462612 );
22472613
22482614 /** Malayalam (മലയാളം)
22492615 * @author Praveenp
22502616 */
22512617 $messages['ml'] = array(
2252 - 'articlefeedback' => 'ലേഖനത്തിന്റെ മൂല്യനിർണ്ണയം',
 2618+ 'articlefeedback' => 'ലേഖനത്തിന്റെ മൂല്യനിർണ്ണയ നിയന്ത്രണോപാധികൾ',
22532619 'articlefeedback-desc' => 'ലേഖനത്തിന്റെ മൂല്യനിർണ്ണയം (പ്രാരംഭ പതിപ്പ്)',
 2620+ 'articlefeedback-survey-question-origin' => 'താങ്കൾ ഈ സർവേ ഉപയോഗിക്കാൻ തുടങ്ങിയപ്പോൾ ഏത് താളിലായിരുന്നു?',
22542621 'articlefeedback-survey-question-whyrated' => 'ഈ താളിന് താങ്കൾ ഇന്ന് നിലവാരമിട്ടതെന്തുകൊണ്ടാണെന്ന് ദയവായി പറയാമോ (ബാധകമാകുന്ന എല്ലാം തിരഞ്ഞെടുക്കുക):',
22552622 'articlefeedback-survey-answer-whyrated-contribute-rating' => 'താളിന്റെ ആകെ നിലവാരം നിർണ്ണയിക്കാൻ ഞാനാഗ്രഹിക്കുന്നു',
22562623 'articlefeedback-survey-answer-whyrated-development' => 'ഞാനിട്ട നിലവാരം താളിന്റെ വികസനത്തിൽ ക്രിയാത്മകമായ ഫലങ്ങൾ സൃഷ്ടിക്കുമെന്ന് കരുതുന്നു',
@@ -2278,6 +2645,7 @@
22792646 'articlefeedback-form-panel-helpimprove-privacy' => 'സ്വകാര്യതാനയം',
22802647 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:സ്വകാര്യതാനയം',
22812648 'articlefeedback-form-panel-submit' => 'നിലവാരമിടലുകൾ സമർപ്പിക്കുക',
 2649+ 'articlefeedback-form-panel-pending' => 'താങ്കളുടെ നിലവാരമിടലുകൾ സമർപ്പിക്കപ്പെട്ടിട്ടില്ല',
22822650 'articlefeedback-form-panel-success' => 'വിജയകരമായി സേവ് ചെയ്തിരിക്കുന്നു',
22832651 'articlefeedback-form-panel-expiry-title' => 'താങ്കളിട്ട നിലവാരങ്ങൾ കാലഹരണപ്പെട്ടിരിക്കുന്നു',
22842652 'articlefeedback-form-panel-expiry-message' => 'ദയവായി ഈ താൾ പുനർമൂല്യനിർണ്ണയം ചെയ്ത് പുതിയ നിലവാരമിടലുകൾ സമർപ്പിക്കുക.',
@@ -2309,9 +2677,34 @@
23102678 'articlefeedback-survey-message-error' => 'എന്തോ പിഴവുണ്ടായിരിക്കുന്നു.
23112679 ദയവായി വീണ്ടും ശ്രമിക്കുക.',
23122680 'articleFeedback-table-caption-dailyhighsandlows' => 'ഇന്നത്തെ കയറ്റിറക്കങ്ങൾ',
 2681+ 'articleFeedback-table-caption-dailyhighs' => 'ഉയർന്ന നിലവാരമിട്ട ലേഖനങ്ങൾ: $1',
 2682+ 'articleFeedback-table-caption-dailylows' => 'താഴ്ന്ന നിലവാരമിട്ട ലേഖനങ്ങൾ: $1',
23132683 'articleFeedback-table-caption-weeklymostchanged' => 'ഈ ആഴ്ചയിൽ ഏറ്റവുമധികം മാറിയത്',
 2684+ 'articleFeedback-table-caption-recentlows' => 'സമീപകാല ഇറക്കങ്ങൾ',
23142685 'articleFeedback-table-heading-page' => 'താൾ',
23152686 'articleFeedback-table-heading-average' => 'ശരാശരി',
 2687+ 'articlefeedback-emailcapture-response-body' => 'നമസ്കാരം!
 2688+
 2689+{{SITENAME}} മെച്ചപ്പെടുത്താനുള്ള സഹായം ചെയ്യാൻ സന്നദ്ധത പ്രകടിപ്പിച്ചതിന് ആത്മാർത്ഥമായ നന്ദി.
 2690+
 2691+താഴെ നൽകിയിരിക്കുന്ന കണ്ണിയിൽ ഞെക്കി താങ്കളുടെ ഇമെയിൽ ദയവായി സ്ഥിരീകരിക്കുക:
 2692+
 2693+$1
 2694+
 2695+താങ്കൾക്ക് ഇതും സന്ദർശിക്കാവുന്നതാണ്:
 2696+
 2697+$2
 2698+
 2699+എന്നിട്ട് താഴെ കൊടുത്തിരിക്കുന്ന സ്ഥിരീകരണ കോഡ് നൽകുക:
 2700+
 2701+$3
 2702+
 2703+{{SITENAME}} സംരംഭം മെച്ചപ്പെടുത്താൻ താങ്കൾക്ക് എങ്ങനെ സഹായിക്കാനാകും എന്ന് തീരുമാനിക്കാൻ ഞങ്ങൾ താങ്കളുമായി ഉടനെ ബന്ധപ്പെടുന്നതായിരിക്കും.
 2704+
 2705+താങ്കളുടെ ഇച്ഛ പ്രകാരം അല്ല ഈ അഭ്യർത്ഥനയെങ്കിൽ, ഈ ഇമെയിൽ അവഗണിക്കുക, ഞങ്ങൾ താങ്കൾക്ക് പിന്നീടൊന്നും അയച്ച് ബുദ്ധിമുട്ടിയ്ക്കില്ല.
 2706+
 2707+ആശംസകൾ, നന്ദി,
 2708+{{SITENAME}} സ്നേഹിതർ',
23162709 );
23172710
23182711 /** Mongolian (Монгол)
@@ -2328,16 +2721,22 @@
23292722 $messages['ms'] = array(
23302723 'articlefeedback' => 'Pentaksiran rencana',
23312724 'articlefeedback-desc' => 'Pentaksiran rencana (versi percubaan)',
2332 - 'articlefeedback-survey-answer-whyrated-other' => 'Лия',
 2725+ 'articlefeedback-survey-answer-whyrated-other' => 'Lain',
23332726 'articlefeedback-survey-question-useful-iffalse' => 'Мезекс?',
23342727 'articlefeedback-survey-submit' => 'Serahkan',
23352728 );
23362729
2337 -/** Erzya (Эрзянь) */
 2730+/** Erzya (Эрзянь)
 2731+ * @author Botuzhaleny-sodamo
 2732+ */
23382733 $messages['myv'] = array(
23392734 'articlefeedback-survey-answer-whyrated-other' => 'Лия',
23402735 'articlefeedback-survey-question-useful-iffalse' => 'Мезекс?',
23412736 'articlefeedback-survey-submit' => 'Максомс',
 2737+ 'articlefeedback-field-wellwritten-label' => 'Парсте сёрмадозь',
 2738+ 'articlefeedback-pitch-or' => 'эли',
 2739+ 'articlefeedback-pitch-edit-accept' => 'Витнемс-петнемс те лопанть',
 2740+ 'articleFeedback-table-heading-page' => 'Лопазо',
23422741 );
23432742
23442743 /** Nahuatl (Nāhuatl)
@@ -2376,7 +2775,7 @@
23772776 * @author Siebrand
23782777 */
23792778 $messages['nl'] = array(
2380 - 'articlefeedback' => 'Paginabeoordeling',
 2779+ 'articlefeedback' => 'Dashboard voor paginawaardering',
23812780 'articlefeedback-desc' => 'Paginabeoordeling (testversie)',
23822781 'articlefeedback-survey-question-origin' => 'Op welke pagina was u toen u aan deze vragenlijst bent begonnen?',
23832782 'articlefeedback-survey-question-whyrated' => 'Laat ons weten waarom u deze pagina vandaag hebt beoordeeld (kies alle redenen die van toepassing zijn):',
@@ -2408,6 +2807,7 @@
24092808 'articlefeedback-form-panel-helpimprove-privacy' => 'Privacybeleid',
24102809 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Privacybeleid',
24112810 'articlefeedback-form-panel-submit' => 'Beoordelingen opslaan',
 2811+ 'articlefeedback-form-panel-pending' => 'Uw waarderingen zijn niet opgeslagen',
24122812 'articlefeedback-form-panel-success' => 'Opgeslagen',
24132813 'articlefeedback-form-panel-expiry-title' => 'Uw beoordelingen zijn verlopen',
24142814 'articlefeedback-form-panel-expiry-message' => 'Beoordeel deze pagina alstublieft opnieuw en sla uw beoordeling op.',
@@ -2440,12 +2840,85 @@
24412841 'articlefeedback-survey-message-error' => 'Er is een fout opgetreden.
24422842 Probeer het later opnieuw.',
24432843 'articleFeedback-table-caption-dailyhighsandlows' => 'Hoogte- en dieptepunten van vandaag',
 2844+ 'articleFeedback-table-caption-dailyhighs' => "Pagina's met de hoogste waarderingen: $1",
 2845+ 'articleFeedback-table-caption-dailylows' => "Pagina's met de laagste waarderingen: $1",
24442846 'articleFeedback-table-caption-weeklymostchanged' => 'Deze week de meeste wijzigingen',
24452847 'articleFeedback-table-caption-recentlows' => 'Recente dieptepunten',
24462848 'articleFeedback-table-heading-page' => 'Pagina',
24472849 'articleFeedback-table-heading-average' => 'Gemiddelde',
 2850+ 'articlefeedback-emailcapture-response-body' => 'Hallo!
 2851+
 2852+Dank u wel voor uw interesse in het verbeteren van {{SITENAME}}.
 2853+
 2854+Bevestig alstublieft uw e-mailadres door op de volgende verwijziging te klikken:
 2855+
 2856+$1
 2857+
 2858+U kunt ook gaan naar:
 2859+
 2860+$2
 2861+
 2862+En daar de volgende bevestigingscode invoeren:
 2863+
 2864+$3
 2865+
 2866+We nemen binnenkort contact met u op over hoe u kunt helpen {{SITENAME}} te verbeteren.
 2867+
 2868+Als u niet hebt gevraagd om dit bericht, negeer deze e-mail dan en dan krijgt u geen e-mail meer van ons.
 2869+
 2870+Dank u!
 2871+
 2872+Met vriendelijke groet,
 2873+
 2874+Het team van {{SITENAME}}',
24482875 );
24492876
 2877+/** ‪Nederlands (informeel)‬ (‪Nederlands (informeel)‬)
 2878+ * @author Siebrand
 2879+ */
 2880+$messages['nl-informal'] = array(
 2881+ 'articlefeedback-survey-question-origin' => 'Op welke pagina was je toen je aan deze vragenlijst bent begonnen?',
 2882+ 'articlefeedback-survey-question-whyrated' => 'Laat ons weten waarom je deze pagina vandaag hebt beoordeeld (kies alle redenen die van toepassing zijn):',
 2883+ 'articlefeedback-survey-question-useful' => 'Vind je dat de beoordelingen bruikbaar en duidelijk zijn?',
 2884+ 'articlefeedback-survey-question-comments' => 'Hebt je nog opmerkingen?',
 2885+ 'articlefeedback-form-panel-helpimprove-note' => 'We sturen je een bevestigingse-mail. We delen je adres verder met niemand. $1',
 2886+ 'articlefeedback-form-panel-expiry-title' => 'Je beoordelingen zijn verlopen',
 2887+ 'articlefeedback-field-trustworthy-tip' => 'Vind je dat deze pagina voldoende bronvermeldingen heeft en dat de bronvermeldingen betrouwbaar zijn?',
 2888+ 'articlefeedback-field-complete-tip' => 'Vind je dat deze pagina de essentie van dit onderwerp bestrijkt?',
 2889+ 'articlefeedback-field-objective-tip' => 'Vind je dat deze pagina een eerlijke weergave is van alle invalshoeken voor dit onderwerp?',
 2890+ 'articlefeedback-field-wellwritten-tip' => 'Vind je dat deze pagina een correcte opbouw heeft een goed is geschreven?',
 2891+ 'articlefeedback-pitch-thanks' => 'Bedankt!
 2892+Je beoordeling is opgeslagen.',
 2893+ 'articlefeedback-pitch-join-message' => 'Wil je een gebruiker aanmaken?',
 2894+ 'articlefeedback-pitch-join-body' => 'Als je een gebruiker hebt, kan je je bewerkingen beter volgen, meedoen aan overleg en een vollediger onderdeel zijn van de gemeenschap.',
 2895+ 'articlefeedback-pitch-edit-message' => 'Wist je dat je deze pagina kunt bewerken?',
 2896+ 'articlefeedback-emailcapture-response-body' => 'Hallo!
 2897+
 2898+Dank je wel voor je interesse in het verbeteren van {{SITENAME}}.
 2899+
 2900+Bevestig alsjeblieft je e-mailadres door op de volgende verwijziging te klikken:
 2901+
 2902+$1
 2903+
 2904+Je kunt ook gaan naar:
 2905+
 2906+$2
 2907+
 2908+En daar de volgende bevestigingscode invoeren:
 2909+
 2910+$3
 2911+
 2912+We nemen binnenkort contact met je op over hoe u kunt helpen {{SITENAME}} te verbeteren.
 2913+
 2914+Als je niet hebt gevraagd om dit bericht, negeer deze e-mail dan en dan krijg je geen e-mail meer van ons.
 2915+
 2916+Dank je!
 2917+
 2918+Groetjes,
 2919+
 2920+Het team van {{SITENAME}}',
 2921+);
 2922+
24502923 /** Norwegian Nynorsk (‪Norsk (nynorsk)‬)
24512924 * @author Nghtwlkr
24522925 */
@@ -2458,9 +2931,10 @@
24592932
24602933 /** Norwegian (bokmål)‬ (‪Norsk (bokmål)‬)
24612934 * @author Nghtwlkr
 2935+ * @author Sjurhamre
24622936 */
24632937 $messages['no'] = array(
2464 - 'articlefeedback' => 'Artikkelvurdering',
 2938+ 'articlefeedback' => 'Panelbord for artikkelvurdering',
24652939 'articlefeedback-desc' => 'Artikkelvurdering (pilotversjon)',
24662940 'articlefeedback-survey-question-origin' => 'Hvilken side var du på når du startet denne undersøkelsen?',
24672941 'articlefeedback-survey-question-whyrated' => 'Gi oss beskjed om hvorfor du vurderte denne siden idag (huk av alle som passer):',
@@ -2491,6 +2965,7 @@
24922966 'articlefeedback-form-panel-helpimprove-privacy' => 'Retningslinjer for personvern',
24932967 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Retningslinjer for personvern',
24942968 'articlefeedback-form-panel-submit' => 'Send vurdering',
 2969+ 'articlefeedback-form-panel-pending' => 'Vurderingene dine har ikke blitt sendt inn',
24952970 'articlefeedback-form-panel-success' => 'Lagret',
24962971 'articlefeedback-form-panel-expiry-title' => 'Vurderingen din har utløpt',
24972972 'articlefeedback-form-panel-expiry-message' => 'Revurder denne siden og send inn din nye vurdering.',
@@ -2521,6 +2996,35 @@
25222997 'articlefeedback-survey-message-success' => 'Takk for at du fylte ut undersøkelsen.',
25232998 'articlefeedback-survey-message-error' => 'En feil har oppstått.
25242999 Prøv igjen senere.',
 3000+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Dagens oppturer og nedturer',
 3001+ 'articleFeedback-table-caption-dailyhighs' => 'Artikler med høyest vurdering: $1',
 3002+ 'articleFeedback-table-caption-dailylows' => 'Artikler med lavest vurdering: $1',
 3003+ 'articleFeedback-table-caption-weeklymostchanged' => 'Mest endret denne uken',
 3004+ 'articleFeedback-table-caption-recentlows' => 'Ukens nedturer',
 3005+ 'articleFeedback-table-heading-page' => 'Side',
 3006+ 'articleFeedback-table-heading-average' => 'Gjennomsnitt',
 3007+ 'articlefeedback-emailcapture-response-body' => 'Hei!
 3008+
 3009+Takk for din interesse i å hjelpe oss med å forbedre {{SITENAME}}. Vennligst bekreft e-posten din ved å klikke på lenken under:
 3010+
 3011+$1
 3012+
 3013+Du kan også besøke:
 3014+
 3015+$2
 3016+
 3017+Og angi følgende bekreftelseskode:
 3018+
 3019+$3
 3020+
 3021+Vi tar snart kontakt for å forklare hvordan du kan forbedre {{SITENAME}}.
 3022+
 3023+Om du ikke har bedt om denne e-posten, vennligst ignorer den. Den blir i så fall den siste du får fra oss.
 3024+
 3025+
 3026+Takk skal du ha og lykke til!
 3027+
 3028+Hilsen {{SITENAME}}-teamet',
25253029 );
25263030
25273031 /** Oriya (ଓଡ଼ିଆ)
@@ -2595,6 +3099,11 @@
25963100 'articlefeedback-survey-message-success' => 'Dziękujemy za wypełnienie ankiety.',
25973101 'articlefeedback-survey-message-error' => 'Wystąpił błąd.
25983102 Proszę spróbować ponownie później.',
 3103+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Najwyższe i najniższe w dniu dzisiejszym',
 3104+ 'articleFeedback-table-caption-weeklymostchanged' => 'Najczęściej zmieniane w tym tygodniu',
 3105+ 'articleFeedback-table-caption-recentlows' => 'Najniższe ostatnio',
 3106+ 'articleFeedback-table-heading-page' => 'Strona',
 3107+ 'articleFeedback-table-heading-average' => 'Średnio',
25993108 );
26003109
26013110 /** Piedmontese (Piemontèis)
@@ -2668,6 +3177,28 @@
26693178 'articleFeedback-table-caption-recentlows' => 'Bass recent',
26703179 'articleFeedback-table-heading-page' => 'Pàgina',
26713180 'articleFeedback-table-heading-average' => 'Media',
 3181+ 'articlefeedback-emailcapture-response-body' => "Cerea!
 3182+
 3183+Mersì për avèj signalà anteressi a giuté a mejoré {{SITENAME}}.
 3184+
 3185+Për piasì treuva un moment për confirmé tò corel an sgnacand an sël colegament sota:
 3186+
 3187+$1
 3188+
 3189+It peule ëdcò visité:
 3190+
 3191+$2
 3192+
 3193+E anserì ël còdes ëd confirma sì sota:
 3194+
 3195+$3
 3196+
 3197+I saroma an contat për un pòch su com it peule giuté a mejoré {{SITENAME}}.
 3198+
 3199+S'it l'has pa ancaminà ti sta arcesta, për piasì ignora sto corel e noi it manderoma pi gnente d'àutr.
 3200+
 3201+Tante bele ròbe, e mersì,
 3202+L'echip ëd {{SITENAME}}",
26723203 );
26733204
26743205 /** Pashto (پښتو)
@@ -2689,7 +3220,7 @@
26903221 * @author Waldir
26913222 */
26923223 $messages['pt'] = array(
2693 - 'articlefeedback' => 'Avaliação do artigo',
 3224+ 'articlefeedback' => 'Painel de avaliação de artigos',
26943225 'articlefeedback-desc' => 'Avaliação do artigo (versão de testes)',
26953226 'articlefeedback-survey-question-origin' => 'Em que página estava quando iniciou esta avaliação?',
26963227 'articlefeedback-survey-question-whyrated' => 'Diga-nos porque é que avaliou esta página hoje (marque todas as opções verdadeiras):',
@@ -2710,12 +3241,17 @@
27113242 'articlefeedback-form-panel-title' => 'Avaliar esta página',
27123243 'articlefeedback-form-panel-instructions' => 'Dedique um momento a avaliar esta página abaixo, por favor.',
27133244 'articlefeedback-form-panel-clear' => 'Remover essa avaliação',
2714 - 'articlefeedback-form-panel-expertise' => 'Conheço este assunto muito profundamente',
 3245+ 'articlefeedback-form-panel-expertise' => 'Conheço este assunto muito profundamente (opcional)',
27153246 'articlefeedback-form-panel-expertise-studies' => 'Tenho estudos relevantes do secundário/universidade',
27163247 'articlefeedback-form-panel-expertise-profession' => 'Faz parte dos meus conhecimentos profissionais',
27173248 'articlefeedback-form-panel-expertise-hobby' => 'É uma das minhas paixões pessoais',
2718 - 'articlefeedback-form-panel-expertise-other' => 'A fonte dos meus conhecimentos, não está listada aqui',
 3249+ 'articlefeedback-form-panel-expertise-other' => 'A fonte do meu conhecimento não está listada aqui',
 3250+ 'articlefeedback-form-panel-helpimprove' => 'Gostava de ajudar a melhorar a Wikipédia; enviem-me um correio electrónico (opcional)',
 3251+ 'articlefeedback-form-panel-helpimprove-note' => 'Irá receber uma mensagem de confirmação por correio electrónico. O seu endereço de correio electrónico não será partilhado com ninguém. $1',
 3252+ 'articlefeedback-form-panel-helpimprove-privacy' => 'Política de privacidade',
 3253+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Política de privacidade',
27193254 'articlefeedback-form-panel-submit' => 'Enviar avaliações',
 3255+ 'articlefeedback-form-panel-pending' => 'As suas avaliações não foram enviadas',
27203256 'articlefeedback-form-panel-success' => 'Gravado',
27213257 'articlefeedback-form-panel-expiry-title' => 'As suas avaliações expiraram',
27223258 'articlefeedback-form-panel-expiry-message' => 'Volte a avaliar esta página e envie as novas avaliações, por favor.',
@@ -2746,12 +3282,41 @@
27473283 'articlefeedback-survey-message-success' => 'Obrigado por preencher o inquérito.',
27483284 'articlefeedback-survey-message-error' => 'Ocorreu um erro.
27493285 Tente novamente mais tarde, por favor.',
 3286+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Os melhores e piores de hoje',
 3287+ 'articleFeedback-table-caption-dailyhighs' => 'Artigos com as avaliações mais elevadas: $1',
 3288+ 'articleFeedback-table-caption-dailylows' => 'Artigos com as avaliações mais baixas: $1',
 3289+ 'articleFeedback-table-caption-weeklymostchanged' => 'Os mais alterados da semana',
 3290+ 'articleFeedback-table-caption-recentlows' => 'Os piores mais recentes',
 3291+ 'articleFeedback-table-heading-page' => 'Página',
 3292+ 'articleFeedback-table-heading-average' => 'Média',
 3293+ 'articlefeedback-emailcapture-response-body' => 'Olá,
 3294+
 3295+Obrigado por expressar interesse em ajudar a melhorar a {{SITENAME}}.
 3296+
 3297+Confirme o seu endereço de correio electrónico, clicando o link abaixo, por favor:
 3298+
 3299+$1
 3300+
 3301+Também pode visitar:
 3302+
 3303+$2
 3304+
 3305+E introduzir o seguinte código de confirmação:
 3306+
 3307+$3
 3308+
 3309+Em breve irá receber informações sobre como poderá ajudar a melhorar a {{SITENAME}}.
 3310+
 3311+Se não iniciou este pedido, ignore esta mensagem e não voltará a ser contactado.
 3312+
 3313+Cumprimentos,
 3314+A equipa da {{SITENAME}}',
27503315 );
27513316
27523317 /** Brazilian Portuguese (Português do Brasil)
 3318+ * @author 555
27533319 * @author Giro720
27543320 * @author Raylton P. Sousa
2755 - * @author 555
27563321 */
27573322 $messages['pt-br'] = array(
27583323 'articlefeedback' => 'Avaliação do artigo',
@@ -2780,8 +3345,14 @@
27813346 'articlefeedback-form-panel-expertise-profession' => 'Faz parte dos meus conhecimentos profissionais',
27823347 'articlefeedback-form-panel-expertise-hobby' => 'É uma das minhas paixões pessoais',
27833348 'articlefeedback-form-panel-expertise-other' => 'A fonte dos meus conhecimentos, não está listada aqui',
 3349+ 'articlefeedback-form-panel-helpimprove' => 'Eu gostaria de ajudar a melhorar a Wikipédia; enviem-me um e-mail (opcional)',
 3350+ 'articlefeedback-form-panel-helpimprove-note' => 'Nós enviaremos a você um e-mail de confirmação. O seu endereço de e-mail não será partilhado com ninguém. $1',
 3351+ 'articlefeedback-form-panel-helpimprove-privacy' => 'Política de privacidade',
 3352+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Política de privacidade',
27843353 'articlefeedback-form-panel-submit' => 'Enviar avaliações',
27853354 'articlefeedback-form-panel-success' => 'Gravado com sucesso',
 3355+ 'articlefeedback-form-panel-expiry-title' => 'As suas avaliações expiraram',
 3356+ 'articlefeedback-form-panel-expiry-message' => 'Volte a avaliar esta página e envie as novas avaliações, por favor.',
27863357 'articlefeedback-report-switch-label' => 'Ver avaliações',
27873358 'articlefeedback-report-panel-title' => 'Avaliações',
27883359 'articlefeedback-report-panel-description' => 'Classificações médias atuais.',
@@ -2797,13 +3368,45 @@
27983369 'articlefeedback-field-wellwritten-tip' => 'Acha que esta página está bem organizada e bem escrita?',
27993370 'articlefeedback-pitch-reject' => 'Talvez mais tarde',
28003371 'articlefeedback-pitch-or' => 'ou',
 3372+ 'articlefeedback-pitch-thanks' => 'Obrigado! As suas avaliações foram salvas.',
 3373+ 'articlefeedback-pitch-survey-message' => 'Por favor, dedique um momento para responder a um pequeno questionário.',
28013374 'articlefeedback-pitch-survey-accept' => 'Começar questionário',
 3375+ 'articlefeedback-pitch-join-message' => 'Você queria criar uma conta?',
 3376+ 'articlefeedback-pitch-join-body' => 'Uma conta permite-lhe seguir as suas edições, participar nos debates e fazer parte da comunidade.',
28023377 'articlefeedback-pitch-join-accept' => 'Criar conta',
28033378 'articlefeedback-pitch-join-login' => 'Autenticação',
 3379+ 'articlefeedback-pitch-edit-message' => 'Sabia que pode editar esta página?',
28043380 'articlefeedback-pitch-edit-accept' => 'Editar esta página',
28053381 'articlefeedback-survey-message-success' => 'Obrigado por preencher o questionário.',
28063382 'articlefeedback-survey-message-error' => 'Ocorreu um erro.
28073383 Tente novamente mais tarde, por favor.',
 3384+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Os melhores e piores de hoje',
 3385+ 'articleFeedback-table-caption-weeklymostchanged' => 'Os mais alterados da semana',
 3386+ 'articleFeedback-table-caption-recentlows' => 'Os piores mais recentes',
 3387+ 'articleFeedback-table-heading-page' => 'Página',
 3388+ 'articleFeedback-table-heading-average' => 'Média',
 3389+ 'articlefeedback-emailcapture-response-body' => 'Olá,
 3390+
 3391+Obrigado por expressar interesse em ajudar a melhorar a {{SITENAME}}.
 3392+
 3393+Confirme o seu endereço de e-mail, clicando o link abaixo, por favor:
 3394+
 3395+$1
 3396+
 3397+Você também pode visitar:
 3398+
 3399+$2
 3400+
 3401+E, então, introduzir o seguinte código de confirmação:
 3402+
 3403+$3
 3404+
 3405+Em breve você irá receber informações sobre como você poderá ajudar a melhorar a {{SITENAME}}.
 3406+
 3407+Se você não iniciou este pedido, ignore esta mensagem e não voltará a ser contactado.
 3408+
 3409+Cumprimentos,
 3410+A equipe da {{SITENAME}}',
28083411 );
28093412
28103413 /** Romanian (Română)
@@ -2813,7 +3416,7 @@
28143417 * @author Strainu
28153418 */
28163419 $messages['ro'] = array(
2817 - 'articlefeedback' => 'Evaluare articol',
 3420+ 'articlefeedback' => 'Panou de control evaluare articol',
28183421 'articlefeedback-desc' => 'Evaluare articol',
28193422 'articlefeedback-survey-question-origin' => 'Care a fost ultima pagină vizitată înainte de a începe acest sondaj?',
28203423 'articlefeedback-survey-question-whyrated' => 'Vă rugăm să ne spuneți de ce ați evaluat această pagină astăzi (bifați tot ce se aplică):',
@@ -2881,7 +3484,7 @@
28823485 * @author Reder
28833486 */
28843487 $messages['roa-tara'] = array(
2885 - 'articlefeedback' => 'Artichele de valutazione',
 3488+ 'articlefeedback' => "Cruscotte d'a valutazione de le vôsce",
28863489 'articlefeedback-desc' => 'Artichele de valutazione (versiune guidate)',
28873490 'articlefeedback-survey-answer-whyrated-contribute-rating' => "Ije vogghie condrebbuische a 'u pundegge totale d'a pàgene",
28883491 'articlefeedback-survey-answer-whyrated-contribute-wiki' => "Ije amm'a condrebbuì a {{SITENAME}}",
@@ -2898,7 +3501,10 @@
28993502 'articlefeedback-form-panel-clear' => 'Live stu pundegge',
29003503 'articlefeedback-form-panel-expertise-profession' => "Jè parte d'a professiona meje",
29013504 'articlefeedback-form-panel-expertise-hobby' => "Queste jè 'na passiona profonda meje",
 3505+ 'articlefeedback-form-panel-helpimprove-privacy' => "Regole p'a privacy",
 3506+ 'articlefeedback-form-panel-helpimprove-privacylink' => "Project:Regole p'a privacy",
29023507 'articlefeedback-form-panel-submit' => 'Conferme le pundegge',
 3508+ 'articlefeedback-form-panel-pending' => "'U vote tune non g'ha state confermate",
29033509 'articlefeedback-form-panel-success' => 'Reggistrate cu successe',
29043510 'articlefeedback-form-panel-expiry-title' => 'Le pundegge tune onne scadute',
29053511 'articlefeedback-report-switch-label' => "Vide 'u pundegge d'a pàgene",
@@ -2918,6 +3524,8 @@
29193525 'articlefeedback-pitch-edit-accept' => 'Cange sta pàgene',
29203526 'articlefeedback-survey-message-error' => "'N'errore s'a verificate.
29213527 Pe piacere pruève arrete.",
 3528+ 'articleFeedback-table-heading-page' => 'Pàgene',
 3529+ 'articleFeedback-table-heading-average' => 'Medie',
29223530 );
29233531
29243532 /** Russian (Русский)
@@ -2990,10 +3598,34 @@
29913599 'articlefeedback-survey-message-error' => 'Произошла ошибка.
29923600 Пожалуйста, повторите попытку позже.',
29933601 'articleFeedback-table-caption-dailyhighsandlows' => 'Сегодняшние взлёты и падения',
 3602+ 'articleFeedback-table-caption-dailyhighs' => 'Сегодняшние взлёты',
 3603+ 'articleFeedback-table-caption-dailylows' => 'Сегодняшние падения',
29943604 'articleFeedback-table-caption-weeklymostchanged' => 'Наиболее изменившиеся на этой неделе',
29953605 'articleFeedback-table-caption-recentlows' => 'Недавние падения',
29963606 'articleFeedback-table-heading-page' => 'Страница',
29973607 'articleFeedback-table-heading-average' => 'Среднее',
 3608+ 'articlefeedback-emailcapture-response-body' => 'Здравствуйте!
 3609+
 3610+Спасибо за интерес к улучшению проекта {{SITENAME}}.
 3611+
 3612+Пожалуйста, потратьте несколько секунд, чтобы подтвердить адрес электронной почты, нажав на ссылку ниже:
 3613+
 3614+$1
 3615+
 3616+Вы можете также посетить:
 3617+
 3618+$2
 3619+
 3620+И ввести следующий код подтверждения:
 3621+
 3622+$3
 3623+
 3624+Вскоре мы сообщим вам, как можно помочь в улучшении проекта {{SITENAME}}.
 3625+
 3626+Если вы не отправляли подобного запроса, пожалуйста, проигнорируйте это сообщение, и мы больше не будем вас тревожить.
 3627+
 3628+С наилучшими пожеланиями и благодарностью
 3629+Команда проекта {{SITENAME}}',
29983630 );
29993631
30003632 /** Rusyn (Русиньскый)
@@ -3172,7 +3804,7 @@
31733805 * @author Dbc334
31743806 */
31753807 $messages['sl'] = array(
3176 - 'articlefeedback' => 'Ocenjevanje člankov',
 3808+ 'articlefeedback' => 'Pregledna plošča povratnih informacij člankov',
31773809 'articlefeedback-desc' => 'Ocenjevanje člankov (pilotska različica)',
31783810 'articlefeedback-survey-question-origin' => 'Na kateri strani ste bili, ko ste začeli s to anketo?',
31793811 'articlefeedback-survey-question-whyrated' => 'Prosimo, povejte nam, zakaj ste danes ocenili to stran (izberite vse, kar ustreza):',
@@ -3203,6 +3835,7 @@
32043836 'articlefeedback-form-panel-helpimprove-privacy' => 'Politika zasebnosti',
32053837 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Politika zasebnosti',
32063838 'articlefeedback-form-panel-submit' => 'Pošlji ocene',
 3839+ 'articlefeedback-form-panel-pending' => 'Vaše ocene niso bile poslane',
32073840 'articlefeedback-form-panel-success' => 'Uspešno shranjeno',
32083841 'articlefeedback-form-panel-expiry-title' => 'Vaše ocene so potekle',
32093842 'articlefeedback-form-panel-expiry-message' => 'Prosimo, ponovno ocenite to stran in pošljite nove ocene.',
@@ -3234,10 +3867,34 @@
32353868 'articlefeedback-survey-message-error' => 'Prišlo je do napake.
32363869 Prosimo, poskusite znova pozneje.',
32373870 'articleFeedback-table-caption-dailyhighsandlows' => 'Današnji vzponi in padci',
 3871+ 'articleFeedback-table-caption-dailyhighs' => 'Članki z najvišjimi ocenami: $1',
 3872+ 'articleFeedback-table-caption-dailylows' => 'Članki z najnižjimi ocenami: $1',
32383873 'articleFeedback-table-caption-weeklymostchanged' => 'Ta teden najbolj spremenjeno',
32393874 'articleFeedback-table-caption-recentlows' => 'Nedavni padci',
32403875 'articleFeedback-table-heading-page' => 'Stran',
32413876 'articleFeedback-table-heading-average' => 'Povprečje',
 3877+ 'articlefeedback-emailcapture-response-body' => 'Pozdravljeni!
 3878+
 3879+Zahvaljujemo se vam za izkazano zanimanje za pomoč pri izboljševanju {{GRAMMAR:rodilnik|{{SITENAME}}}}.
 3880+
 3881+Prosimo, vzemite si trenutek in potrdite vaš e-poštni naslov s klikom na spodnjo povezavo:
 3882+
 3883+$1
 3884+
 3885+Obiščete lahko tudi:
 3886+
 3887+$2
 3888+
 3889+in vnesete spodnjo potrditveno kodo:
 3890+
 3891+$3
 3892+
 3893+Kmalu vam bomo sporočili, kako lahko pomagate izboljšati {{GRAMMAR:tožilnik|{{SITENAME}}}}.
 3894+
 3895+Če tega niste zahtevali, prosimo, prezrite to e-pošto in ničesar več vam ne bomo poslali.
 3896+
 3897+Hvala in najlepše želje,
 3898+ekipa {{GRAMMAR:rodilnik|{{SITENAME}}}}',
32423899 );
32433900
32443901 /** Serbian Cyrillic ekavian (‪Српски (ћирилица)‬)
@@ -3278,10 +3935,12 @@
32793936 * @author Fluff
32803937 * @author Lokal Profil
32813938 * @author Tobulos1
 3939+ * @author WikiPhoenix
32823940 */
32833941 $messages['sv'] = array(
32843942 'articlefeedback' => 'Artikelbedömning',
32853943 'articlefeedback-desc' => 'Artikelbedömning (pilotversion)',
 3944+ 'articlefeedback-survey-question-origin' => 'Vilken sida var du på när du startade denna undersökning?',
32863945 'articlefeedback-survey-question-whyrated' => 'Låt oss gärna veta varför du bedömt denna sida i dag (markera alla som gäller):',
32873946 'articlefeedback-survey-answer-whyrated-contribute-rating' => 'Jag ville bidra till den övergripande bedömningen av sidan',
32883947 'articlefeedback-survey-answer-whyrated-development' => 'Jag hoppas att min bedömning skulle påverka utvecklingen av sidan positivt',
@@ -3296,10 +3955,11 @@
32973956 'articlefeedback-survey-title' => 'Svara på några få frågor',
32983957 'articlefeedback-survey-thanks' => 'Tack för att du fyllde i enkäten.',
32993958 'articlefeedback-error' => 'Ett fel har uppstått. Försök igen senare.',
3300 - 'articlefeedback-form-switch-label' => 'Ge feedback',
3301 - 'articlefeedback-form-panel-title' => 'Din feedback',
 3959+ 'articlefeedback-form-switch-label' => 'Betygsätt sidan',
 3960+ 'articlefeedback-form-panel-title' => 'Betygsätt sidan',
33023961 'articlefeedback-form-panel-instructions' => 'Vänligen betygsätt denna sida.',
33033962 'articlefeedback-form-panel-clear' => 'Ta bort detta betyg',
 3963+ 'articlefeedback-form-panel-expertise' => 'Jag är mycket kunniga om detta ämne (frivilligt)',
33043964 'articlefeedback-form-panel-expertise-studies' => 'Jag har en relevant högskole-/universitetsexamen',
33053965 'articlefeedback-form-panel-expertise-profession' => 'Det är en del av mitt yrke',
33063966 'articlefeedback-form-panel-expertise-hobby' => 'Det är relaterat till mina hobbyer eller intressen',
@@ -3309,8 +3969,11 @@
33103970 'articlefeedback-form-panel-helpimprove-privacy' => 'Integritetspolicy',
33113971 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Integritetspolicy',
33123972 'articlefeedback-form-panel-submit' => 'Skicka in feedback',
3313 - 'articlefeedback-report-switch-label' => 'Visa resultat',
3314 - 'articlefeedback-report-panel-title' => 'Resultat av feedback',
 3973+ 'articlefeedback-form-panel-success' => 'Sparat',
 3974+ 'articlefeedback-form-panel-expiry-title' => 'Dina betyg har gått ut',
 3975+ 'articlefeedback-form-panel-expiry-message' => 'Vänligen omvärdera denna sida och skicka nya omdömen.',
 3976+ 'articlefeedback-report-switch-label' => 'Visa sidbetyg',
 3977+ 'articlefeedback-report-panel-title' => 'Sidbetyg',
33153978 'articlefeedback-report-panel-description' => 'Nuvarande genomsnittliga betyg.',
33163979 'articlefeedback-report-empty' => 'Inga betyg',
33173980 'articlefeedback-report-ratings' => '$1 betyg',
@@ -3324,8 +3987,11 @@
33253988 'articlefeedback-field-wellwritten-tip' => 'Tycker du att den här sidan är väl organiserad och välskriven?',
33263989 'articlefeedback-pitch-reject' => 'Kanske senare',
33273990 'articlefeedback-pitch-or' => 'eller',
 3991+ 'articlefeedback-pitch-thanks' => 'Tack! Ditt betyg har sparats.',
 3992+ 'articlefeedback-pitch-survey-message' => 'Vänligen ta en stund att fylla i en kort enkät.',
33283993 'articlefeedback-pitch-survey-accept' => 'Starta undersökning',
33293994 'articlefeedback-pitch-join-message' => 'Ville du skapa ett konto?',
 3995+ 'articlefeedback-pitch-join-body' => 'Ett konto kommer att hjälpa dig att spåra ändringar, engagera dig i diskussioner, och vara en del av samhället.',
33303996 'articlefeedback-pitch-join-accept' => 'Skapa ett konto',
33313997 'articlefeedback-pitch-join-login' => 'Logga in',
33323998 'articlefeedback-pitch-edit-message' => 'Visste du att du kan redigera denna sida?',
@@ -3333,6 +3999,11 @@
33344000 'articlefeedback-survey-message-success' => 'Tack för att du fyllde i undersökningen.',
33354001 'articlefeedback-survey-message-error' => 'Ett fel har uppstått.
33364002 Försök igen senare.',
 4003+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Dagens toppar och dalar',
 4004+ 'articleFeedback-table-caption-weeklymostchanged' => 'Veckans mest ändrade',
 4005+ 'articleFeedback-table-caption-recentlows' => 'Senaste dalar',
 4006+ 'articleFeedback-table-heading-page' => 'Sida',
 4007+ 'articleFeedback-table-heading-average' => 'Genomsnittlig',
33374008 );
33384009
33394010 /** Tamil (தமிழ்)
@@ -3375,6 +4046,13 @@
33764047 'articlefeedback-pitch-edit-accept' => 'ఈ పుటని మార్చండి',
33774048 );
33784049
 4050+/** Tetum (Tetun)
 4051+ * @author MF-Warburg
 4052+ */
 4053+$messages['tet'] = array(
 4054+ 'articleFeedback-table-heading-page' => 'Pájina',
 4055+);
 4056+
33794057 /** Turkmen (Türkmençe)
33804058 * @author Hanberke
33814059 */
@@ -3397,7 +4075,7 @@
33984076 * @author AnakngAraw
33994077 */
34004078 $messages['tl'] = array(
3401 - 'articlefeedback' => 'Pagsusuri ng lathalain',
 4079+ 'articlefeedback' => 'Pisarang-dunggulan ng katugunang-puna na panglathalain',
34024080 'articlefeedback-desc' => 'Pagsusuri ng lathalain (paunang bersyon)',
34034081 'articlefeedback-survey-question-origin' => 'Anong pahina ang kinaroroonan mo noong simulan mo ang pagtatanung-tanong na ito?',
34044082 'articlefeedback-survey-question-whyrated' => 'Mangyari sabihin sa amin kung bakit mo inantasan ng ganito ang pahinang ito ngayon (lagyan ng tsek ang lahat ng maaari):',
@@ -3428,6 +4106,7 @@
34294107 'articlefeedback-form-panel-helpimprove-privacy' => 'Patakaran sa paglilihim',
34304108 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Patakaran sa paglilihim',
34314109 'articlefeedback-form-panel-submit' => 'Ipadala ang mga antas',
 4110+ 'articlefeedback-form-panel-pending' => 'Hindi pa naipapasa ang mga pag-aantas mo',
34324111 'articlefeedback-form-panel-success' => 'Matagumpay na nasagip',
34334112 'articlefeedback-form-panel-expiry-title' => 'Paso na ang mga pag-aantas mo',
34344113 'articlefeedback-form-panel-expiry-message' => 'Mangyaring pakisuring muli ang pahinang ito at magpasa ng bagong mga antas.',
@@ -3458,6 +4137,35 @@
34594138 'articlefeedback-survey-message-success' => 'Salamat sa pagpuno ng tugon.',
34604139 'articlefeedback-survey-message-error' => 'Naganap ang isang kamalian.
34614140 Paki subukan uli mamaya.',
 4141+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Mga matataas at mga mabababa sa araw na ito',
 4142+ 'articleFeedback-table-caption-dailyhighs' => 'Mga artikulong may pinakamataas na mga kaantasan: $1',
 4143+ 'articleFeedback-table-caption-dailylows' => 'Mga artikulong may pinakamababang mga kaantasan: $1',
 4144+ 'articleFeedback-table-caption-weeklymostchanged' => 'Pinaka nabago sa linggong ito',
 4145+ 'articleFeedback-table-caption-recentlows' => 'Kamakailang mga mabababa',
 4146+ 'articleFeedback-table-heading-page' => 'Pahina',
 4147+ 'articleFeedback-table-heading-average' => 'Karaniwan',
 4148+ 'articlefeedback-emailcapture-response-body' => 'Kumusta!
 4149+
 4150+Salamat sa pagpapahayag mo ng pagnanais na makatulong sa pagpapainam ng {{SITENAME}}.
 4151+
 4152+Mangyaring kumuha ng isang sandli upang tiyakin ang iyong e-liham sa pamamagitan ng pagpindot sa kawing na nasa ibaba:
 4153+
 4154+$1
 4155+
 4156+Maaari mo ring dalawin ang:
 4157+
 4158+$2
 4159+
 4160+At ipasok ang sumusunod na kodigo ng pagtitiyak:
 4161+
 4162+$3
 4163+
 4164+Makikipag-ugnayan kami sa loob ng ilang mga sandali sa kung paano ka makakatulong sa pagpapainam ng {{SITENAME}}.
 4165+
 4166+Kung hindi ikaw ang nagpasimula ng kahilingang ito, mangyaring huwag pansinin ang e-liham na ito at hindi na kami magpapadala ng iba pa.
 4167+
 4168+Pinakamainam na mga mithiin para sa iyo at nagpapasalamat,
 4169+Ang pangkat ng {{SITENAME}}',
34624170 );
34634171
34644172 /** Turkish (Türkçe)
@@ -3503,9 +4211,13 @@
35044212 'articlefeedback-survey-title' => 'Будь ласка, дайте відповідь на кілька питань',
35054213 'articlefeedback-survey-thanks' => 'Дякуємо за заповнення опитування.',
35064214 'articlefeedback-error' => 'Сталася помилка. Будь ласка, повторіть спробу пізніше.',
 4215+ 'articlefeedback-form-panel-helpimprove-privacy' => 'Політика конфіденційності',
 4216+ 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Політика конфіденційності',
35074217 'articlefeedback-report-switch-label' => 'Показати оцінки сторінки',
35084218 'articlefeedback-pitch-or' => 'або',
35094219 'articlefeedback-pitch-join-accept' => 'Створити обліковий запис',
 4220+ 'articlefeedback-pitch-edit-accept' => 'Редагувати цю сторінку',
 4221+ 'articleFeedback-table-heading-page' => 'Сторінка',
35104222 );
35114223
35124224 /** Vèneto (Vèneto)
@@ -3533,8 +4245,8 @@
35344246 * @author Minh Nguyen
35354247 */
35364248 $messages['vi'] = array(
3537 - 'articlefeedback' => 'Đánh giá bài',
3538 - 'articlefeedback-desc' => 'Đánh giá bài (phiên bản thử nghiệm)',
 4249+ 'articlefeedback' => 'Bảng phản hồi bài',
 4250+ 'articlefeedback-desc' => 'Phản hồi bài',
35394251 'articlefeedback-survey-question-origin' => 'Bạn đang xem trang nào lúc khi bắt đầu cuộc khảo sát này?',
35404252 'articlefeedback-survey-question-whyrated' => 'Xin hãy cho chúng tôi biết lý do tại sao bạn đánh giá trang này hôm nay (kiểm tra các hộp thích hợp):',
35414253 'articlefeedback-survey-answer-whyrated-contribute-rating' => 'Tôi muốn có ảnh hưởng đến đánh giá tổng cộng của trang',
@@ -3564,6 +4276,7 @@
35654277 'articlefeedback-form-panel-helpimprove-privacy' => 'Chính sách về sự riêng tư',
35664278 'articlefeedback-form-panel-helpimprove-privacylink' => 'Project:Chính sách về sự riêng tư',
35674279 'articlefeedback-form-panel-submit' => 'Gửi đánh giá',
 4280+ 'articlefeedback-form-panel-pending' => 'Các đánh giá của bạn chưa được gửi',
35684281 'articlefeedback-form-panel-success' => 'Lưu thành công',
35694282 'articlefeedback-form-panel-expiry-title' => 'Các đánh giá của bạn đã hết hạn',
35704283 'articlefeedback-form-panel-expiry-message' => 'Xin vui lòng coi lại và đánh giá lại trang này.',
@@ -3594,6 +4307,35 @@
35954308 'articlefeedback-survey-message-success' => 'Cám ơn bạn đã điền khảo sát.',
35964309 'articlefeedback-survey-message-error' => 'Đã gặp lỗi.
35974310 Xin hãy thử lại sau.',
 4311+ 'articleFeedback-table-caption-dailyhighsandlows' => 'Các điểm cao và thấp nhất hôm nay',
 4312+ 'articleFeedback-table-caption-dailyhighs' => 'Các bài đánh giá cao nhất: $1',
 4313+ 'articleFeedback-table-caption-dailylows' => 'Các bài đánh giá thấp nhất: $1',
 4314+ 'articleFeedback-table-caption-weeklymostchanged' => 'Các điểm thay đổi nhiều nhất vào tuần này',
 4315+ 'articleFeedback-table-caption-recentlows' => 'Các điểm thấp gần đây',
 4316+ 'articleFeedback-table-heading-page' => 'Trang',
 4317+ 'articleFeedback-table-heading-average' => 'Trung bình',
 4318+ 'articlefeedback-emailcapture-response-body' => 'Xin chào!
 4319+
 4320+Cám ơn bạn đã bày tỏ quan tâm về việc giúp cải tiến {{SITENAME}}.
 4321+
 4322+Xin vui lòng dành một chút thời gian để xác nhận địa chỉ thư điện tử của bạn dùng liên kết dưới đây:
 4323+
 4324+$1
 4325+
 4326+Bạn cũng có thể ghé vào:
 4327+
 4328+$2
 4329+
 4330+và nhập mã xác nhận sau:
 4331+
 4332+$3
 4333+
 4334+Chúng tôi sẽ sớm liên lạc với bạn với thông tin về giúp cải tiến {{SITENAME}}.
 4335+
 4336+Nếu bạn không phải là người yêu cầu thông tin này, xin vui lòng kệ thông điệp này và chúng tôi sẽ không gửi cho bạn bất cứ gì nữa.
 4337+
 4338+Thân mến và cám ơn,
 4339+Nhóm {{SITENAME}}',
35984340 );
35994341
36004342 /** Yoruba (Yorùbá)
Index: branches/wmf/1.17wmf1/extensions/ArticleFeedback/ArticleFeedback.php
@@ -15,6 +15,9 @@
1616
1717 /* Configuration */
1818
 19+// How long to keep ratings in the squids (they will also be purged when needed)
 20+$wgArticleFeedbackSMaxage = 2592000;
 21+
1922 // Enable/disable dashboard page
2023 $wgArticleFeedbackDashboard = false;
2124
@@ -28,6 +31,10 @@
2932 // Extension is "disabled" if this field is an empty array (as per default configuration)
3033 $wgArticleFeedbackCategories = array();
3134
 35+// Only load the module / enable the tool in these namespaces
 36+// Default to $wgContentNamespaces (defaults to array( NS_MAIN ) ).
 37+$wgArticleFeedbackNamespaces = $wgContentNamespaces;
 38+
3239 // Articles not categorized as on of the values in $wgArticleFeedbackCategories can still have the
3340 // tool psudo-randomly activated by applying the following odds to a lottery based on $wgArticleId.
3441 // The value can be a floating point number (percentage) in range of 0 - 100. Tenths of a percent
@@ -116,6 +123,7 @@
117124 'Brandon Harris',
118125 'Adam Miller',
119126 'Nimish Gautam',
 127+ 'Arthur Richards',
120128 ),
121129 'version' => '0.2.0',
122130 'descriptionmsg' => 'articlefeedback-desc',

Status & tagging log