User:IagoQnsi/common.js

From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
// quick category editing
importScript('User:קיפודנחש/cat-a-lot.js'); // [[User:קיפודנחש/cat-a-lot.js]]

// shows statistics on user pages
importScript('User:PleaseStand/userinfo.js'); // [[User:PleaseStand/userinfo.js]]

// auto editor
importScript('User:Ohconfucius/dashes.js'); // [[User:Ohconfucius/dashes.js]] fixes dashes according to MOS:DASH
/*mw.loader.getScript('/w/index.php?title=User:IagoQnsi/AutoEd-core.js&action=raw&ctype=text/javascript')
	.then(function() {
		importScript('Wikipedia:AutoEd/unicodify.js'); // autoEdUnicodify() converts HTML entities to WikiText
		importScript('Wikipedia:AutoEd/isbn.js'); // autoEdISBN() fixes ISBN syntax so that WikiMagic can work
		importScript('Wikipedia:AutoEd/wikilinks.js'); // autoEdWikilinks() simplifies and shortens wikilinks where appropriate
		importScript('Wikipedia:AutoEd/htmltowikitext.js'); // autoEdHTMLtoWikitext() converts HTML to wikitext
		importScript('Wikipedia:AutoEd/headlines.js'); // autoEdHeadlines() fixes common headline errors and renames some headers
		importScript('Wikipedia:AutoEd/unicodecontrolchars.js'); // autoEdUnicodeControlChars() converts HTML to wikitext
		importScript('Wikipedia:AutoEd/templates.js'); // autoEdTemplates() cleans up templates
		importScript('Wikipedia:AutoEd/tablestowikitext.js'); // autoEdTablestoWikitext() replaces HTML tables with wikitables
		importScript('Wikipedia:AutoEd/extrabreaks.js'); // autoEdExtraBreaks() removes extra BR tags
		importScript('Wikipedia:AutoEd/links.js'); // autoEdLinks() cleans up common link errors
		importScript('User:Ohconfucius/dashes.js'); // [[User:Ohconfucius/dashes.js]] fixes dashes according to MOS:DASH
		
		function autoEdProcessText(input) { // Activates individual modules when "auto ed" tab is clicked
		    var txt = input;
		    txt.value = autoEdUnicodify(txt.value);
		    txt.value = autoEdISBN(txt.value);
		    txt.value = autoEdWikilinks(txt.value);
		    txt.value = autoEdHTMLtoWikitext(txt.value);
		    txt.value = autoEdHeadlines(txt.value);
		    txt.value = autoEdUnicodeControlChars(txt.value);
		    txt.value = autoEdTemplates(txt.value);
		    txt.value = autoEdTablestoWikitext(txt.value);
		    txt.value = autoEdExtraBreaks(txt.value);
		    txt.value = autoEdLinks(txt.value);
		    txt.value = autoEdDashes(txt.value);
		    return txt;
		}
	});*/

// IPA pronunciation
window.ipareaderConfig = {
	voice: 'Salli'
};
importScript('User:IagoQnsi/ipareader.js'); // [[User:IagoQnsi/ipareader.js]]

// redirect editing tools
importScript('User:Sam Sailor/Scripts/Sagittarius+.js'); // [[User:Sam Sailor/Scripts/Sagittarius+.js]]

// stub tagging
importScript('User:SD0001/StubSorter.js'); // [[User:SD0001/StubSorter.js]]

// JS-based AutoWikiBrowser
importScript('User:Joeytje50/JWB.js/load.js'); // [[User:Joeytje50/JWB.js/load.js]]

$('head').one('reftoolbarbase', function() {
	CiteTB.UserOptions = {
		"date format" : "<date> <monthname> <year>",
		"autodate fields" : ['accessdate'],
		"months" : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
		"modal" : true,
		"autoparse" : true,
		"expandtemplates" : false
	};
	
	// Cite template definitions
	new citeTemplate('cite web', 'web',
	[ // Basic fields
		{"field": "last<N>", "autofillprop":"last-incr", 'increment_group':'author'},
		{"field": "first<N>", "autofillprop":"first-incr", 'increment_group':'author', 'increment_button':true}, 
		{"field": "title", "autofillprop":"title"},
		{"field": "url", "autofillid":"url"},
		{"field": "website", "autofillprop":"journal"},
		{"field": "publisher", "autofillprop":"publisher"},
		{"field": "accessdate"},
		{"field": "ref", "tooltip":"cite-ref-tooltip"}
	],
	[ // Expanded fields
		{"field": "author<N>", 'increment_group':'author_alt', 'increment_button':true},
		{"field": "authorlink<N>", "tooltip":"cite-authorlink-tooltip", 'increment_group':'authorlink', 'increment_button':true},
		{"field": "archiveurl"},
		{"field": "archivedate"},
		{"field": "location"},
		{"field": "page", "tooltip":"cite-page-tooltip"},
		{"field": "pages", "autofillprop":"pages", "tooltip":"cite-pages-tooltip"},
		{"field": "language", "autofillprop":"language"},
		{"field": "format"},
		{"field": "doi", "autofillid":"doi", "autofillprop":"doi"},
		{"field": "date", "autofillprop":"date"},
		{"field": "quote"},
		{"field": "url-status", "tooltip":"cite-urlstatus-tooltip"}
	]);
	
	new citeTemplate('cite news', 'news',
	[ // Basic fields
		{"field": "last<N>", "autofillprop":"last-incr", 'increment_group':'author'},
		{"field": "first<N>", "autofillprop":"first-incr", 'increment_group':'author', 'increment_button':true}, 
		{"field": "title", "autofillprop":"title"},
		{"field": "url", "autofillid":"url"},
		{"field": "accessdate"},
		{"field": "work", "tooltip":"cite-work-tooltip", "autofillprop":"journal"},
		{"field": "agency"},
		{"field": "issue"},
		{"field": "publisher", "autofillprop":"publisher"},
		{"field": "date", "autofillprop":"date"},
		{"field": "ref", "tooltip":"cite-ref-tooltip"}
	],
	[ // Expanded fields
		{"field": "author<N>", 'increment_group':'author_alt', 'increment_button':true},
		{"field": "authorlink<N>", "tooltip":"cite-authorlink-tooltip", 'increment_group':'authorlink', 'increment_button':true},
		{"field": "archiveurl"},
		{"field": "archivedate"},
		{"field": "location"},
		{"field": "page", "tooltip":"cite-page-tooltip"},
		{"field": "pages", "autofillprop":"pages", "tooltip":"cite-pages-tooltip"},
		{"field": "language", "autofillprop":"language"},
		{"field": "format"},
		{"field": "doi", "autofillid":"doi", "autofillprop":"doi"},
		{"field": "quote"}
	]);
	
	new citeTemplate('cite book', 'book',
	[ // Basic fields
		{"field": "last<N>", "autofillprop":"last-incr", 'increment_group':'author'},
		{"field": "first<N>", "autofillprop":"first-incr", 'increment_group':'author', 'increment_button':true}, 
		{"field": "title", "autofillprop":"title"},
		{"field": "date", "autofillprop":"year"},
		{"field": "publisher", "autofillprop":"publisher"},
		{"field": "location", "autofillprop":"location"},
		{"field": "isbn", "autofillid":"isbn", "autofillprop":"isbn"},
		{"field": "page", "tooltip":"cite-page-tooltip"},
		{"field": "pages", "autofillprop":"pages", "tooltip":"cite-pages-tooltip"},
		{"field": "edition", "autofillprop":"edition"},
		{"field": "url", "autofillid":"url"},
		{"field": "accessdate"},
		{"field": "ref", "tooltip":"cite-ref-tooltip"}
	],
	[ // Expanded fields
		{"field": "author<N>", 'increment_group':'author_alt', 'increment_button':true},
		{"field": "authorlink<N>", "tooltip":"cite-authorlink-tooltip", 'increment_group':'authorlink', 'increment_button':true},
		{"field": "editor<N>-last", "increment_group":"editor"},
		{"field": "editor<N>-first", "increment_group":"editor", "increment_button":true},
		{"field": "editor<N>-link", 'increment_group':'editorlink', 'increment_button':true},
		{"field": "archiveurl"},
		{"field": "archivedate"},
		{"field": "language", "autofillprop":"language"},
		{"field": "format"},
		{"field": "chapter", "autofillprop":"chapter"},
		{"field": "quote"}
	]);
	
	new citeTemplate('cite journal', 'journal',
	[ // Basic fields
		{"field": "last<N>", "autofillprop":"last-incr", 'increment_group':'author'},
		{"field": "first<N>", "autofillprop":"first-incr", 'increment_group':'author', 'increment_button':true}, 
		{"field": "title", "autofillprop":"title"},
		{"field": "journal", "autofillprop":"journal"},
		{"field": "date", "autofillprop":"date"},
		{"field": "volume", "autofillprop":"volume"},
		{"field": "issue", "autofillprop":"issue"},
		{"field": "page", "tooltip":"cite-page-tooltip"},
		{"field": "pages", "autofillprop":"pages", "tooltip":"cite-pages-tooltip"},
		{"field": "doi", "autofillid":"doi", "autofillprop":"doi"},
		{"field": "pmid", "autofillid":"pmid"},
		{"field": "url", "autofillid":"url"},
		{"field": "accessdate"},
		{"field": "ref", "tooltip":"cite-ref-tooltip"},
	],
	[ // Expanded fields
		{"field": "author<N>", 'increment_group':'author_alt', 'increment_button':true},
		{"field": "authorlink<N>", "tooltip":"cite-authorlink-tooltip", 'increment_group':'authorlink', 'increment_button':true},
		{"field": "editor<N>-last", "increment_group":"editor"},
		{"field": "editor<N>-first", "increment_group":"editor", "increment_button":true},
		{"field": "editor<N>-link", 'increment_group':'editorlink', 'increment_button':true},
		{"field": "series"},
		{"field": "at", "tooltip":"cite-at-tooltip"},
		{"field": "trans-title"},
		{"field": "publisher", "autofillprop":"publisher"},
		{"field": "location"},
		{"field": "language", "autofillprop":"language"},
		{"field": "format"},
		{"field": "issn", "autofillprop":"issn"},
		{"field": "pmc"},
		{"field": "oclc"},
		{"field": "bibcode"},
		{"field": "id"},
		{"field": "quote"},
		{"field": "postscript", "tooltip":"cite-postscript-tooltip"}
	]);
	
	new citeErrorCheck({'type':'reflist', 'testname':'samecontent', 'desc': 'cite-samecontent-desc',
	'func': function(reflist) {
	  var errors = [];
	  var refs2 = [];
	  for(var i=0; i<reflist.length; i++) {
	    if (!reflist[i].shorttag) {
	      if ($.inArray(reflist[i].content, refs2) != -1) {
	        if ($.inArray(reflist[i].content, errors) == -1) {
	          errors.push(reflist[i].content);
	        }
	      } else {
	        refs2.push(reflist[i].content);
	      }
	    }
	  }
	  ret = [];
	  for(var j=0; j<errors.length; j++) {
	    ret.push({'msg':'cite-samecontent-error', 'err':errors[j]});
	  }
	  return ret;
	}}
	);
	
	new citeErrorCheck({'type':'reflist', 'testname':'repeated', 'desc':'cite-repeated-desc',
	'func': function(reflist) {
	  var errors = [];
	  var refs2 = [];
	  for(var i=0; i<reflist.length; i++) {
	    if (!reflist[i].shorttag && reflist[i].refname) {
	      if ($.inArray(reflist[i].refname, refs2) != -1) {
	        if ($.inArray(reflist[i].refname, errors) == -1) {
	          errors.push(reflist[i].refname);
	        }
	      } else {
	        refs2.push(reflist[i].refname);
	      }
	    }
	  }
	  ret = [];
	  for(var j=0; j<errors.length; j++) {
	    ret.push({'msg':'cite-repeated-error', 'err':errors[j]});
	  }
	  return ret;
	}}
	);
	
	new citeErrorCheck({'type':'reflist', 'testname':'undefined', 'desc':'cite-undefined-desc',
	'func': function(reflist) {
	  var errors = [];
	  var longrefs = [];
	  for(var i=0; i<reflist.length; i++) {
	    if (!reflist[i].shorttag && reflist[i].refname) {
	      longrefs.push(reflist[i].refname);
	    }
	  }
	  for(var j=0; i<reflist.length; j++) {
	    if (reflist[i].shorttag && $.inArray(reflist[i].refname, errors) == -1 && $.inArray(reflist[i].refname, longrefs) == -1) {
	      errors.push(reflist[i].refname);
	    }
	  }
	  ret = [];
	  for(var j=0; j<errors.length; j++) {
	    ret.push({'msg':'cite-undefined-error', 'err':errors[j]});
	  }
	  return ret;
	}}
	);
});