mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Popups
synced 2024-12-11 23:36:07 +00:00
68 lines
1.5 KiB
JavaScript
68 lines
1.5 KiB
JavaScript
|
/**
|
||
|
* Return count bucket for the number of edits a user has made.
|
||
|
*
|
||
|
* The buckets are defined as part of
|
||
|
* [the Popups schema](https://meta.wikimedia.org/wiki/Schema:Popups).
|
||
|
*
|
||
|
* Extracted from `mw.popups.schemaPopups.getEditCountBucket`.
|
||
|
*
|
||
|
* @param {Number} count
|
||
|
* @return {String}
|
||
|
*/
|
||
|
function getEditCountBucket( count ) {
|
||
|
var bucket;
|
||
|
|
||
|
if ( count === 0 ) {
|
||
|
bucket = '0';
|
||
|
} else if ( count >= 1 && count <= 4 ) {
|
||
|
bucket = '1-4';
|
||
|
} else if ( count >= 5 && count <= 99 ) {
|
||
|
bucket = '5-99';
|
||
|
} else if ( count >= 100 && count <= 999 ) {
|
||
|
bucket = '100-999';
|
||
|
} else if ( count >= 1000 ) {
|
||
|
bucket = '1000+';
|
||
|
}
|
||
|
|
||
|
return bucket + ' edits';
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Return count bucket for the number of previews a user has seen.
|
||
|
*
|
||
|
* If local storage isn't available - because the user has disabled it
|
||
|
* or the browser doesn't support it - then then "unknown" is returned.
|
||
|
*
|
||
|
* The buckets are defined as part of
|
||
|
* [the Popups schema](https://meta.wikimedia.org/wiki/Schema:Popups).
|
||
|
*
|
||
|
* Extracted from `mw.popups.getPreviewCountBucket`.
|
||
|
*
|
||
|
* @param {Number} count
|
||
|
* @return {String}
|
||
|
*/
|
||
|
function getPreviewCountBucket( count ) {
|
||
|
var bucket;
|
||
|
|
||
|
if ( count === -1 ) {
|
||
|
return 'unknown';
|
||
|
}
|
||
|
|
||
|
if ( count === 0 ) {
|
||
|
bucket = '0';
|
||
|
} else if ( count >= 1 && count <= 4 ) {
|
||
|
bucket = '1-4';
|
||
|
} else if ( count >= 5 && count <= 20 ) {
|
||
|
bucket = '5-20';
|
||
|
} else if ( count >= 21 ) {
|
||
|
bucket = '21+';
|
||
|
}
|
||
|
|
||
|
return bucket + ' previews';
|
||
|
}
|
||
|
|
||
|
module.exports = {
|
||
|
getPreviewCountBucket: getPreviewCountBucket,
|
||
|
getEditCountBucket: getEditCountBucket
|
||
|
};
|