summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/Translate/resources/js/ext.translate.recentgroups.js
blob: 360739d1654ee46af94922e76f0c149df45843ee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
( function () {
	'use strict';

	mw.translate = mw.translate || {};

	/**
	 * Simple wrapper for storing recent groups for an user.
	 *
	 * @class mw.translate.recentGroups
	 * @singleton
	 * @since 2016.03
	 */

	mw.translate.recentGroups = {
		get: function () {
			return JSON.parse( mw.storage.get( 'translate-recentgroups' ) ) || [];
		},

		append: function ( value ) {
			var items = this.get();

			items.unshift( value );
			items = items.filter( function ( item, index, array ) {
				return array.indexOf( item ) === index;
			} );
			items = items.slice( 0, 5 );

			mw.storage.set( 'translate-recentgroups', JSON.stringify( items ) );
		}
	};
}() );