aboutsummaryrefslogtreecommitdiff
path: root/guidelines/wikipedia/inlineStyle.js
diff options
context:
space:
mode:
authorGravatar Jesse Hallett <jesse@galois.com>2014-01-06 10:50:22 -0800
committerGravatar Jesse Hallett <jesse@galois.com>2014-01-06 11:15:49 -0800
commit55cd32bfaf9ed5bc5418751369e46fa1d7f098e8 (patch)
treec5759cf75241a4e6bc0fb31596b69c59a9bdc6b5 /guidelines/wikipedia/inlineStyle.js
parent0a47eab285bf1c04f48a2d6d84838a98807c8c69 (diff)
Moves rule files to src/
Diffstat (limited to 'guidelines/wikipedia/inlineStyle.js')
-rw-r--r--guidelines/wikipedia/inlineStyle.js47
1 files changed, 0 insertions, 47 deletions
diff --git a/guidelines/wikipedia/inlineStyle.js b/guidelines/wikipedia/inlineStyle.js
deleted file mode 100644
index 261586d..0000000
--- a/guidelines/wikipedia/inlineStyle.js
+++ /dev/null
@@ -1,47 +0,0 @@
-exports.name = "Do not use in-line styles";
-exports.description = "In-line styles make it much harder for people with specific needs to change the wikimedia styles and to retain consistency.";
-
-exports.rule = function(report) {
- $5('#mw-content-text [style]').filter(excludes).each(function(i, elem) {
- report.error("Element contains in-line style rules.", elem);
- });
-};
-
-function excludes(i, elem) {
- var $elem = $(elem);
-
- // Ignore width rules.
- var widthRule = everyStyle($elem, function(s) {
- return s === 'width';
- });
-
- // It seems that Wikipedia's standard table templates include some
- // inline styles. Ignore these.
- var table = $elem.is('table, th, td');
-
- // The standard reference list template also seems to include some
- // inline styles.
- var reference = $elem.hasClass('reflist references-column-width') ||
- $elem.hasClass('error') ||
- ($elem.is('.citation ~ * *') && !$.trim($elem.text())); // <span>&nbsp;</span>
-
- // The [citation needed] template includes a white-space:nowrap style.
- var citationNeeded = $elem.hasClass('Template-Fact') && everyStyle($elem, function(s) {
- return s === 'white-space';
- });
-
- var navboxPadding = $elem.closest('.navbox').length > 0 && everyStyle($elem, function(s) {
- return s.slice(0,7) === 'padding';
- });
-
- // Ignore hidden microformat fields.
- var microformat = $elem.css('display') === 'none' &&
- $elem.closest('.vcard, .vevent').length > 0;
-
- return !widthRule && !table && !reference && !citationNeeded &&
- !navboxPadding && !microformat;
-}
-
-function everyStyle($elem, fn) {
- return Array.prototype.every.call($elem.prop('style'), fn);
-}