User:Rillke/logo 2013 voy.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/**
* Enhaced POTY - convenient voting!
*
* Features: [[:commons:Help:EnhancedPOTY.js]]
*
* Configuration for a Meta-Logo vote.
*
* Thanks to all translators!
*
* <nowiki>
* jshint validation, please
*
* @rev 1 (2013-07-11)
* @author
* [[User:Rillke]], 2013
* @license
* GPL v.3
*/
/*global jQuery:false, mediaWiki:false, Geo:false, importStylesheet:false, importScript:false, wpAvailableLanguages:false, GallerySlide:false*/
/*jshint curly:false */
(function($, mw, undefined) {
'use strict';
if (window.POTY || 'view' !== mw.config.get('wgAction') || !/Wikivoyage\/Logo\/2013\//.test(mw.config.get('wgPageName'))) return;
// Register Commons RL modules
mw.loader.addSource({"commonswiki":{ "loadScript":"https://commons.wikimedia.org/w/load.php", "apiScript":"//commons.wikimedia.org/w/api.php"}});
// https://git.wikimedia.org/blob/mediawiki%2Fcore.git/1d3a2e87b79c1113c5b3f1bf356fe7ff1378c11a/resources%2Fmediawiki%2Fmediawiki.js
// register: function ( module, version, dependencies, group, source )
/*
// Create reg
$.each(r, function(i, m) {
m[2] = m[2] || [];
m[3] = m[3] || null;
m[4] = 'commonswiki';
})
*/
mw.loader.register([
["ext.gadget.LanguageSelect", "1364400202", ["jquery.cookie", "mediawiki.user", "mediawiki.util", "site", "user"], null, "commonswiki"],
["ext.gadget.GlobalUsage", "1347062400", ["mediawiki.api"], null, "commonswiki"],
["ext.gadget.GlobalReplace", "1359929894", ["ext.gadget.libWikiDOM"], null, "commonswiki"],
["ext.gadget.SettingsUI", "1348591320", ["jquery.ui", "mediawiki.user", "ext.gadget.libJQuery"], null, "commonswiki"],
["ext.gadget.SettingsManager", "1369392947", ["jquery.json", "mediawiki.user", "user.options", "mediawiki.api"], null, "commonswiki"],
["ext.gadget.libAPI", "1371814662", ["mediawiki.util", "mediawiki.user"], null, "commonswiki"],
["ext.gadget.libUtil", "1350850217", ["mediawiki.util"], null, "commonswiki"],
["ext.gadget.libCommons", "1356998174", [], null, "commonswiki"],
["ext.gadget.libJQuery", "1369403932", [], null, "commonswiki"],
["ext.gadget.libWikiDOM", "1371169895", [], null, "commonswiki"],
["ext.gadget.editDropdown", "1368450610", ["mediawiki.util", "jquery.client"], null, "commonswiki"],
["ext.gadget.jquery.blockUI", "1354795695", [], null, "commonswiki"],
["ext.gadget.jquery.in-view", "1348587706", [], null, "commonswiki"],
["ext.gadget.jquery.fullscreen", "1370005206", [], null, "commonswiki"],
["ext.gadget.jquery.mousewheel", "1355500828", [], null, "commonswiki"],
["ext.gadget.jquery.rotate", "1370953397", [], null, "commonswiki"],
["ext.gadget.jquery.jqplot", "1360076689", [], null, "commonswiki"],
["ext.gadget.jquery.sparkline", "1373559634", [], null, "commonswiki"],
["ext.gadget.math.seedrandom", "1373545220", [], null, "commonswiki"]
]);
var iphp = document.location.protocol + '//commons.wikimedia.org/w/index.php';
var commonsLoad = function(s, type) {
mw.loader.load(iphp + '?' + $.param({
title: s,
action: 'raw',
ctype: type,
maxage: 86400,
smaxage: 86400
}), type);
};
window.potyconfig = {
// The key to be used to store the data in the user's browser
storageKey: '2013voylogo_test',
// POTY <year>
year: 2013,
// Will be retrieved from the template $('#potyVotingState')
state: 'R1',
// Required e.g. for digging the contribs to a specific date
startDate: '2013-07-26T00:00:00Z',
appName: 'Cutelect',
// Eligibility requirements
required: {
minEditCount: 1,
editsBefore: '2013-06-31T00:00:00Z',
editsDaysAgo: 6000,
registeredBefore: '2013-06-31T00:00:00Z',
includeDeleted: false
},
// Max votes
maxVotes: {
'R1': 3,
'R2': 1,
'novote': 0
},
votingSummaryAdd: '+1 vote - eligible on %wiki% with %edits% edits - Vote through [[%VoteFrom%]] - [[:commons:Help:EnhancedPOTY.js|Cutelect]]',
votingSummaryRemove: '-1 vote - Vote through [[%VoteFrom%]] - [[:commons:Help:EnhancedPOTY.js|Cutelect]]',
reportPage: 'User talk:Rillke/logo 2013 voy.js/reports',
availableImageSizes: [{w: 400, h: 400}, {w: 335, h: 250}, {w: 300, h: 300}, {w: 250, h: 250}, {w: 200, h: 200}, {w: 180, h: 180}, {w: 150, h: 150}, {w: 120, h: 120}, {w: 64, h: 64}],
// For which round is this gallery?
galleryType: mw.config.get('wgPageName').match(/\d{4}\/(R\d)/)[1],
votingPageRegExp: /^Wikivoyage\/Logo\/\d{4}\/(R\d)\/v\/([^\/]{5,})$/,
galleryRegExp: /^Wikivoyage\/Logo\/\d{4}\/(?:(?:Galleries|R\d)\/([^\/]+)|(Finalists)|(Round \d))/,
pageNamespace: 0,
pageBase: 'Wikivoyage/Logo',
statsPage: 'User:Rillke/logoVoyStats',
// Style & CSS
stylesheet: 'MediaWiki:EnhancedPOTY.css',
logo: '//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/Wikivoyage-logo.svg/150px-Wikivoyage-logo.svg.png',
// Global functions to be used
importScript: function(s) {
commonsLoad(s, 'text/javascript');
},
importStylesheet: function(s) {
commonsLoad(s, 'text/css');
},
wikiScript: iphp,
loadTranslationDone: function() {
// Overriding translation
var msgs = {
'poty-poty-year': "Cutelect $1",
'poty-poty-full-year': "Wikivoyage Logo Election $1",
'poty-poty-full-commons': "Wikivoyage Logo Election",
'poty-welcome-banner': "Welcome $1! Loading Cutelect $2.",
'poty-vote-limited': "You can vote for {{Plural:$1|ONE logo|$1 logos}} in total. {{Plural:$1||If you vote for more than one logo, please vote for them in order of your preference.",
'poty-anonymous-no-vote-msg': "You are currently not logged in. Only registered users can vote in Wikivoyage Logo Election.",
'poty-my-poty-link': "Cutelect",
'poty-my-poty-link-tooltip': "All about your participation in Wikivoyage Logo Election $1",
'poty-my-poty-h1': "Wikivoyage Logo Election $1 and You",
'poty-my-poty-state': "Wikivoyage Logo Election - State"
};
// Now reading the local translation
$.each(msgs, function(k) {
var $m = $('#' + k),
t = $.trim($m.text());
if (t) msgs[k] = t;
});
mw.messages.set(msgs);
this.nextTask();
},
installSlideshow: function () {
this.nextTask();
}
};
window.potyconfig.importScript('MediaWiki:EnhancedPOTY.js');
})(jQuery, mediaWiki);
// </nowiki>