Prechecker results: error


PHP lint problems

(5 errors, 0 warnings)

This section shows php lint problems in the code detected by php -l [More info]

mod/mootyper/layouts/Danish(V4).php
BOM character found
mod/mootyper/layouts/Dvorak(V5).php
BOM character found
mod/mootyper/layouts/Norwegian(V4).php
BOM character found
mod/mootyper/layouts/Swedish(V4).php
BOM character found
mod/mootyper/layouts/Vietnamese(V4).php
BOM character found

PHP coding style problems

(8 errors, 16 warnings)

This section shows the coding style problems detected in the code by phpcs [More info]

mod/mootyper/classes/event/invalid_access_attempt.php
(#63) Line exceeds 132 characters; contains 178 characters
mod/mootyper/eedit.php
(#63) IF keyword must be lowercase; expected "if" but found "If"
mod/mootyper/eins.php
(#62) IF keyword must be lowercase; expected "if" but found "If"
mod/mootyper/exercises.php
(#54) IF keyword must be lowercase; expected "if" but found "If"
mod/mootyper/lib.php
(#705) This comment is 56% valid code; is this commented out code?
(#705) Inline comments must start with a capital letter, digit or 3-dots sequence
(#706) This comment is 56% valid code; is this commented out code?
(#707) This comment is 50% valid code; is this commented out code?
(#708) This comment is 59% valid code; is this commented out code?
(#709) Inline comments must end in full-stops, exclamation marks, or question marks
(#709) This comment is 60% valid code; is this commented out code?
(#1061) This comment is 43% valid code; is this commented out code?
(#1061) Whitespace found at end of line
mod/mootyper/lsnimport.php
(#137) IF keyword must be lowercase; expected "if" but found "If"
mod/mootyper/mod_form.php
(#115) This comment is 57% valid code; is this commented out code?
(#239) Inline comments must start with a capital letter, digit or 3-dots sequence
(#239) Inline comments must end in full-stops, exclamation marks, or question marks
(#239) This comment is 44% valid code; is this commented out code?
(#239) No space found before comment text; expected "// $jlnk3 = $CFG->wwwroot . '/mod/mootyper/exercises.php?id='.$COURSE->id;" but found "//$jlnk3 = $CFG->wwwroot . '/mod/mootyper/exercises.php?id='.$COURSE->id;"
mod/mootyper/mod_setup.php
(#58) IF keyword must be lowercase; expected "if" but found "If"
mod/mootyper/view.php
(#86) Inline comments must start with a capital letter, digit or 3-dots sequence
(#86) Inline comments must end in full-stops, exclamation marks, or question marks
(#86) This comment is 75% valid code; is this commented out code?
(#86) No space found before comment text; expected "// echo '<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>';" but found "//echo '<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>';"

Javascript coding style problems

(290 errors, 248 warnings)

This section shows the coding style problems detected in the code by eslint [More info]

mod/mootyper/layouts/Arabic(V4)dual.js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#129) Function 'getKeyID' has a complexity of 87. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Armenian(V5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#127) Function 'getKeyID' has a complexity of 30. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Belgium(DutchV5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#159) Unnecessary escape character: \'. (no-useless-escape)
(#171) Function 'getKeyID' has a complexity of 62. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Bulgarian(V5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#67) There should be no space after this paren. (space-in-parens)
(#105) Unexpected tab character. (no-tabs)
(#125) Function 'getKeyID' has a complexity of 28. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Croation(V5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#55) Unnecessary escape character: \[. (no-useless-escape)
(#102) Unnecessary escape character: \'. (no-useless-escape)
(#111) Unnecessary escape character: \[. (no-useless-escape)
(#123) Function 'getKeyID' has a complexity of 46. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Czech(V5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#55) Unnecessary escape character: \[. (no-useless-escape)
(#111) Unnecessary escape character: \[. (no-useless-escape)
(#123) Function 'getKeyID' has a complexity of 76. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Danish(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#133) Function 'getKeyID' has a complexity of 54. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Dvorak(V5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#111) Unnecessary escape character: \[. (no-useless-escape)
(#132) Function 'getKeyID' has a complexity of 40. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/English(UKV4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#135) Function 'getKeyID' has a complexity of 48. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/English(USV5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#132) Function 'getKeyID' has a complexity of 35. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/EnglishWKeypad(USV6).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#46) Unnecessary escape character: \^. (no-useless-escape)
(#183) Function 'getKeyID' has a complexity of 40. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Estonian(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#54) Unnecessary escape character: \[. (no-useless-escape)
(#59) Unnecessary escape character: \?. (no-useless-escape)
(#111) Unnecessary escape character: \[. (no-useless-escape)
(#126) Function 'getKeyID' has a complexity of 49. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/French(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#32) '$' is not defined. (no-undef)
(#33) '$' is not defined. (no-undef)
(#41) 'keyboardElement' is defined but never used. (no-unused-vars)
(#68) Unnecessary escape character: \[. (no-useless-escape)
(#193) Unnecessary escape character: \'. (no-useless-escape)
(#193) Unnecessary escape character: \[. (no-useless-escape)
(#205) Function 'getKeyID' has a complexity of 72. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/German(SwissV4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#32) '$' is not defined. (no-undef)
(#33) '$' is not defined. (no-undef)
(#41) 'keyboardElement' is defined but never used. (no-unused-vars)
(#62) Unnecessary escape character: \[. (no-useless-escape)
(#83) Operator '||' must be spaced. (space-infix-ops)
(#165) Unnecessary escape character: \[. (no-useless-escape)
(#186) Function 'getKeyID' has a complexity of 60. Maximum allowed is 20. (complexity)
(#235) There should be no space after this paren. (space-in-parens)
mod/mootyper/layouts/German(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#32) '$' is not defined. (no-undef)
(#33) '$' is not defined. (no-undef)
(#41) 'keyboardElement' is defined but never used. (no-unused-vars)
(#62) Unnecessary escape character: \[. (no-useless-escape)
(#82) Operator '||' must be spaced. (space-infix-ops)
(#170) Unnecessary escape character: \[. (no-useless-escape)
(#185) Function 'getKeyID' has a complexity of 56. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/German(V5)-icons.js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#32) '$' is not defined. (no-undef)
(#33) '$' is not defined. (no-undef)
(#41) 'keyboardElement' is defined but never used. (no-unused-vars)
(#56) Unnecessary escape character: \[. (no-useless-escape)
(#76) Operator '||' must be spaced. (space-infix-ops)
(#168) Unnecessary escape character: \[. (no-useless-escape)
(#184) Function 'getKeyID' has a complexity of 56. Maximum allowed is 20. (complexity)
(#260) Comments should not begin with a lowercase character. (capitalized-comments)
mod/mootyper/layouts/Greek(V5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#136) Function 'getKeyID' has a complexity of 64. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Hebrew(V5)dual.js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#132) Function 'getKeyID' has a complexity of 95. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Hungarian(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#50) Unnecessary escape character: \-. (no-useless-escape)
(#54) Unnecessary escape character: \[. (no-useless-escape)
(#111) Unnecessary escape character: \[. (no-useless-escape)
(#123) Function 'getKeyID' has a complexity of 60. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Italian(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#135) Function 'getKeyID' has a complexity of 44. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Norwegian(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#131) Function 'getKeyID' has a complexity of 53. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Portuguese(BrazilV5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#141) Missing semicolon. (semi)
(#153) Unnecessary escape character: \[. (no-useless-escape)
(#174) Function 'getKeyID' has a complexity of 64. Maximum allowed is 20. (complexity)
(#179) Unnecessary escape character: \'. (no-useless-escape)
mod/mootyper/layouts/Portuguese(PortugalV5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#83) Unnecessary escape character: \[. (no-useless-escape)
(#142) Missing semicolon. (semi)
(#160) Unnecessary escape character: \[. (no-useless-escape)
(#175) Function 'getKeyID' has a complexity of 57. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Romanian(V5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#53) Unnecessary escape character: \[. (no-useless-escape)
(#100) Unnecessary escape character: \[. (no-useless-escape)
(#121) Function 'getKeyID' has a complexity of 71. Maximum allowed is 20. (complexity)
(#172) Operator '===' must be spaced. (space-infix-ops)
(#180) Operator '||' must be spaced. (space-infix-ops)
mod/mootyper/layouts/Russian(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#67) There should be no space after this paren. (space-in-parens)
(#103) Unexpected tab character. (no-tabs)
(#122) Function 'getKeyID' has a complexity of 21. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Serbian(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#72) There should be no space after this paren. (space-in-parens)
(#108) Unexpected tab character. (no-tabs)
(#129) Function 'getKeyID' has a complexity of 30. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Slovenian(V5).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#55) Unnecessary escape character: \[. (no-useless-escape)
(#102) Unnecessary escape character: \'. (no-useless-escape)
(#111) Unnecessary escape character: \[. (no-useless-escape)
(#123) Function 'getKeyID' has a complexity of 46. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Spanish(V5).js
(#14) 'isCombined' is defined but never used. (no-unused-vars)
(#14) 'chr' is defined but never used. (no-unused-vars)
(#23) 'e' is defined but never used. (no-unused-vars)
(#32) 'keyupFirst' is defined but never used. (no-unused-vars)
(#32) 'event' is defined but never used. (no-unused-vars)
(#33) '$' is not defined. (no-undef)
(#34) '$' is not defined. (no-undef)
(#42) 'keyboardElement' is defined but never used. (no-unused-vars)
(#82) Unnecessary escape character: \[. (no-useless-escape)
(#147) Unnecessary escape character: \'. (no-useless-escape)
(#147) Unnecessary escape character: \[. (no-useless-escape)
(#167) Function 'getKeyID' has a complexity of 55. Maximum allowed is 20. (complexity)
(#184) Operator '||' must be spaced. (space-infix-ops)
mod/mootyper/layouts/Swedish(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#131) Function 'getKeyID' has a complexity of 54. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Telugu(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#104) Expected space or tab after '//' in comment. (spaced-comment)
(#126) Function 'getKeyID' has a complexity of 94. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Thai(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#122) Function 'getKeyID' has a complexity of 97. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Turkish(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#51) Unnecessary escape character: \-. (no-useless-escape)
(#110) Unnecessary escape character: \[. (no-useless-escape)
(#125) Function 'getKeyID' has a complexity of 58. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Ukrainian(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#66) There should be no space after this paren. (space-in-parens)
(#102) Unexpected tab character. (no-tabs)
(#121) Function 'getKeyID' has a complexity of 24. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/Uyghur(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#128) Function 'getKeyID' has a complexity of 39. Maximum allowed is 20. (complexity)
(#166) Multiple spaces found before '// D.'. (no-multi-spaces)
(#168) Multiple spaces found before '// F.'. (no-multi-spaces)
(#170) Multiple spaces found before '// G.'. (no-multi-spaces)
(#172) Multiple spaces found before '// H.'. (no-multi-spaces)
(#174) Multiple spaces found before '// J.'. (no-multi-spaces)
(#176) Multiple spaces found before '// K.'. (no-multi-spaces)
(#178) Multiple spaces found before '// L.'. (no-multi-spaces)
mod/mootyper/layouts/Vietnamese(V4).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
(#117) Unnecessary escape character: \[. (no-useless-escape)
(#138) Function 'getKeyID' has a complexity of 53. Maximum allowed is 20. (complexity)
mod/mootyper/layouts/numberKeypadOnly(V1).js
(#13) 'isCombined' is defined but never used. (no-unused-vars)
(#13) 'chr' is defined but never used. (no-unused-vars)
(#22) 'keyupCombined' is defined but never used. (no-unused-vars)
(#22) 'e' is defined but never used. (no-unused-vars)
(#31) 'keyupFirst' is defined but never used. (no-unused-vars)
(#31) 'event' is defined but never used. (no-unused-vars)
(#39) 'keyboardElement' is defined but never used. (no-unused-vars)
mod/mootyper/typer.js
(#24) 'combinedCharWait' is assigned a value but never used. (no-unused-vars)
(#65) JSDoc syntax error. (valid-jsdoc)
(#70) Identifier 'scroll_to_next_line' is not in camel case. (camelcase)
(#75) A space is required after ','. (comma-spacing)
(#86) 'e' is defined but never used. (no-unused-vars)
(#89) 'e' is defined but never used. (no-unused-vars)
(#106) 'updateAll' is assigned a value but never used. (no-unused-vars)
(#125) 'rpAttId' is assigned a value but never used. (no-unused-vars)
(#127) 'data' is defined but never used. (no-unused-vars)
(#127) Unexpected empty function. (no-empty-function)
(#129) Missing space before value for key 'overflow-y'. (key-spacing)
(#133) Missing JSDoc for parameter 'e'. (valid-jsdoc)
(#142) 'numcheck' is defined but never used. (no-unused-vars)
(#144) Comments should not begin with a lowercase character. (capitalized-comments)
(#151) Comments should not begin with a lowercase character. (capitalized-comments)
(#153) Comments should not begin with a lowercase character. (capitalized-comments)
(#156) Comments should not begin with a lowercase character. (capitalized-comments)
(#156) Expected space or tab after '//' in comment. (spaced-comment)
(#162) Multiple spaces found before '// IE.'. (no-multi-spaces)
(#164) Multiple spaces found before '// Netscape/Fi...'. (no-multi-spaces)
(#175) Comments should not begin with a lowercase character. (capitalized-comments)
(#180) Missing JSDoc for parameter 'e'. (valid-jsdoc)
(#186) 'focusSet' is defined but never used. (no-unused-vars)
(#186) 'e' is defined but never used. (no-unused-vars)
(#187) Expected space(s) after "if". (keyword-spacing)
(#189) Missing space before opening brace. (space-before-blocks)
(#190) A constructor name should not start with a lowercase letter. (new-cap)
(#204) 'doCheck' is defined but never used. (no-unused-vars)
(#205) 'rpMootyperId' is assigned a value but never used. (no-unused-vars)
(#206) 'rpUser' is assigned a value but never used. (no-unused-vars)
(#210) There should be no space after this paren. (space-in-parens)
(#210) 'data' is defined but never used. (no-unused-vars)
(#210) There should be no space before this paren. (space-in-parens)
(#210) Unexpected empty function. (no-empty-function)
(#225) Implied eval. Consider passing a function instead of a string. (no-implied-eval)
(#230) There should be no space after this paren. (space-in-parens)
(#230) There should be no space before this paren. (space-in-parens)
(#233) Implied eval. Consider passing a function instead of a string. (no-implied-eval)
(#238) Missing JSDoc for parameter 'e'. (valid-jsdoc)
(#244) Function 'keyPressed' has a complexity of 38. Maximum allowed is 20. (complexity)
(#256) Comments should not begin with a lowercase character. (capitalized-comments)
(#267) 'elemOff' used outside of binding context. (block-scoped-var)
(#267) A constructor name should not start with a lowercase letter. (new-cap)
(#268) 'elemOff' used outside of binding context. (block-scoped-var)
(#276) 'nextChar' used outside of binding context. (block-scoped-var)
(#278) 'thisE' used outside of binding context. (block-scoped-var)
(#278) A constructor name should not start with a lowercase letter. (new-cap)
(#279) 'thisE' used outside of binding context. (block-scoped-var)
(#280) 'nextChar' used outside of binding context. (block-scoped-var)
(#280) 'thisE' used outside of binding context. (block-scoped-var)
(#280) 'thisE' used outside of binding context. (block-scoped-var)
(#280) 'thisE' used outside of binding context. (block-scoped-var)
(#281) 'thisE' used outside of binding context. (block-scoped-var)
(#281) 'thisE' used outside of binding context. (block-scoped-var)
(#284) 'nextE' used outside of binding context. (block-scoped-var)
(#284) A constructor name should not start with a lowercase letter. (new-cap)
(#284) 'nextChar' used outside of binding context. (block-scoped-var)
(#285) 'nextE' used outside of binding context. (block-scoped-var)
(#287) 'nextChar' used outside of binding context. (block-scoped-var)
(#313) 'nextChar' is already defined. (no-redeclare)
(#313) 'nextChar' used outside of binding context. (block-scoped-var)
(#315) 'thisE' is already defined. (no-redeclare)
(#315) 'thisE' used outside of binding context. (block-scoped-var)
(#315) A constructor name should not start with a lowercase letter. (new-cap)
(#316) 'thisE' used outside of binding context. (block-scoped-var)
(#317) 'nextChar' used outside of binding context. (block-scoped-var)
(#317) 'thisE' used outside of binding context. (block-scoped-var)
(#317) 'thisE' used outside of binding context. (block-scoped-var)
(#317) 'thisE' used outside of binding context. (block-scoped-var)
(#317) 'thisE' used outside of binding context. (block-scoped-var)
(#317) 'thisE' used outside of binding context. (block-scoped-var)
(#320) 'nextE' is already defined. (no-redeclare)
(#320) 'nextE' used outside of binding context. (block-scoped-var)
(#320) A constructor name should not start with a lowercase letter. (new-cap)
(#320) 'nextChar' used outside of binding context. (block-scoped-var)
(#321) 'nextE' used outside of binding context. (block-scoped-var)
(#323) 'nextChar' used outside of binding context. (block-scoped-var)
(#333) 'elemOff' is already defined. (no-redeclare)
(#333) 'elemOff' used outside of binding context. (block-scoped-var)
(#333) A constructor name should not start with a lowercase letter. (new-cap)
(#334) 'elemOff' used outside of binding context. (block-scoped-var)
(#346) Missing JSDoc for parameter 'hrs'. (valid-jsdoc)
(#346) Missing JSDoc for parameter 'mins'. (valid-jsdoc)
(#346) Missing JSDoc for parameter 'seccs'. (valid-jsdoc)
(#365) Missing JSDoc for parameter 't1'. (valid-jsdoc)
(#365) Missing JSDoc for parameter 't2'. (valid-jsdoc)
(#388) JSDoc syntax error. (valid-jsdoc)
(#402) 'inittexttoenter' is defined but never used. (no-unused-vars)
(#420) Expected space(s) after "if". (keyword-spacing)
(#421) A constructor name should not start with a lowercase letter. (new-cap)
(#429) Implied eval. Consider passing a function instead of a string. (no-implied-eval)
(#430) Implied eval. Consider passing a function instead of a string. (no-implied-eval)
(#431) 'i' used outside of binding context. (block-scoped-var)
(#431) 'i' used outside of binding context. (block-scoped-var)
(#431) 'i' used outside of binding context. (block-scoped-var)
(#432) 'tChar' used outside of binding context. (block-scoped-var)
(#432) 'tChar' used outside of binding context. (block-scoped-var)
(#432) 'i' used outside of binding context. (block-scoped-var)
(#433) 'tChar' used outside of binding context. (block-scoped-var)
(#433) 'tChar' used outside of binding context. (block-scoped-var)
(#434) 'i' used outside of binding context. (block-scoped-var)
(#436) 'i' used outside of binding context. (block-scoped-var)
(#436) 'tChar' used outside of binding context. (block-scoped-var)
(#436) 'tChar' used outside of binding context. (block-scoped-var)
(#441) 'tChar' is already defined. (no-redeclare)
(#441) 'tChar' used outside of binding context. (block-scoped-var)
(#441) 'tChar' used outside of binding context. (block-scoped-var)
(#442) 'tChar' used outside of binding context. (block-scoped-var)
(#442) 'tChar' used outside of binding context. (block-scoped-var)
(#445) 'tChar' used outside of binding context. (block-scoped-var)
(#445) 'tChar' used outside of binding context. (block-scoped-var)
(#449) 'i' is already defined. (no-redeclare)
(#449) 'i' used outside of binding context. (block-scoped-var)
(#449) 'i' used outside of binding context. (block-scoped-var)
(#449) 'i' used outside of binding context. (block-scoped-var)
(#450) 'tChar' is already defined. (no-redeclare)
(#450) 'tChar' used outside of binding context. (block-scoped-var)
(#450) 'tChar' used outside of binding context. (block-scoped-var)
(#450) 'i' used outside of binding context. (block-scoped-var)
(#451) 'i' used outside of binding context. (block-scoped-var)
(#452) 'i' used outside of binding context. (block-scoped-var)
(#452) 'tChar' used outside of binding context. (block-scoped-var)
(#452) 'tChar' used outside of binding context. (block-scoped-var)
(#453) 'tChar' used outside of binding context. (block-scoped-var)
(#453) 'tChar' used outside of binding context. (block-scoped-var)
(#457) 'tChar' used outside of binding context. (block-scoped-var)
(#457) 'tChar' used outside of binding context. (block-scoped-var)
(#458) 'i' used outside of binding context. (block-scoped-var)
(#460) 'i' used outside of binding context. (block-scoped-var)
(#460) 'tChar' used outside of binding context. (block-scoped-var)
(#460) 'tChar' used outside of binding context. (block-scoped-var)
(#467) Missing JSDoc for parameter 'sc'. (valid-jsdoc)
(#476) Trailing spaces not allowed. (no-trailing-spaces)
(#495) Trailing spaces not allowed. (no-trailing-spaces)
(#498) JSDoc syntax error. (valid-jsdoc)
(#517) Expected { after 'if' condition. (curly)
(#543) Missing JSDoc @returns for function. (valid-jsdoc)
(#543) Missing JSDoc for parameter 'str'. (valid-jsdoc)
(#552) 'arrC' is assigned a value but never used. (no-unused-vars)
(#553) Unexpected whitespace before semicolon. (semi-spacing)
(#554) Comments should not begin with a lowercase character. (capitalized-comments)
(#554) Expected space or tab after '//' in comment. (spaced-comment)
(#555) There should be no space after this paren. (space-in-parens)
(#555) Unexpected whitespace before semicolon. (semi-spacing)
(#555) Operator '<' must be spaced. (space-infix-ops)
(#555) Unexpected whitespace before semicolon. (semi-spacing)
(#556) Unexpected whitespace before semicolon. (semi-spacing)
(#557) There should be no space after this paren. (space-in-parens)
(#557) Unexpected whitespace before semicolon. (semi-spacing)
(#557) Operator '<' must be spaced. (space-infix-ops)
(#557) Unexpected whitespace before semicolon. (semi-spacing)
(#557) There should be no space before this paren. (space-in-parens)
(#558) Expected { after 'if' condition. (curly)
(#558) Expected space(s) after "if". (keyword-spacing)
(#560) Multiple spaces found before '+'. (no-multi-spaces)
(#560) Unexpected whitespace before semicolon. (semi-spacing)
(#566) Missing JSDoc comment. (require-jsdoc)
(#567) Comments should not begin with a lowercase character. (capitalized-comments)
(#567) Expected space or tab after '//' in comment. (spaced-comment)
(#570) Unexpected whitespace before semicolon. (semi-spacing)
(#572) Trailing spaces not allowed. (no-trailing-spaces)
(#573) Expected space(s) after "for". (keyword-spacing)
(#573) Unexpected whitespace before semicolon. (semi-spacing)
(#573) Multiple spaces found before 'i'. (no-multi-spaces)
(#573) Operator '<' must be spaced. (space-infix-ops)
(#573) Unexpected whitespace before semicolon. (semi-spacing)
(#573) Missing space before opening brace. (space-before-blocks)
(#573) Trailing spaces not allowed. (no-trailing-spaces)
(#574) Expected space(s) after "for". (keyword-spacing)
(#574) Unexpected whitespace before semicolon. (semi-spacing)
(#574) Operator '<=' must be spaced. (space-infix-ops)
(#574) Unexpected whitespace before semicolon. (semi-spacing)
(#574) Missing space before opening brace. (space-before-blocks)
(#575) Expected space(s) after "if". (keyword-spacing)
(#575) There should be no space after this paren. (space-in-parens)
(#575) There should be no space before this paren. (space-in-parens)
(#575) Missing space before opening brace. (space-before-blocks)
(#576) Unexpected whitespace before semicolon. (semi-spacing)
(#577) Trailing spaces not allowed. (no-trailing-spaces)
(#579) Expected { after 'if' condition. (curly)
(#579) There should be no space after this paren. (space-in-parens)
(#579) There should be no space before this paren. (space-in-parens)
(#579) Trailing spaces not allowed. (no-trailing-spaces)

CSS problems

(1 errors, 7 warnings)

This section shows CSS problems detected by stylelint [More info]

mod/mootyper/styles.css
(#71) Invalid value for `position` (csstree/validator)
(#72) Unexpected unit (length-zero-no-unit)
(#72) Unexpected unit (length-zero-no-unit)
(#72) Unexpected unit (length-zero-no-unit)
(#72) Unexpected unit (length-zero-no-unit)
(#92) Unexpected unit (length-zero-no-unit)
(#101) Unexpected unit (length-zero-no-unit)
(#114) Unexpected unit (length-zero-no-unit)

PHPDocs style problems

(14 errors, 0 warnings)

This section shows the phpdocs problems detected in the code by local_moodlecheck [More info]

mod/mootyper/backup/moodle2/restore_mootyper_activity_task.class.php
(#89) Inline phpdocs tag {@link restore_logs_processor} with incorrect contents found. It must match {@link valid URL} or {@see valid FQSEN}
(#91) Inline phpdocs tag {@link restore_log_rule} with incorrect contents found. It must match {@link valid URL} or {@see valid FQSEN}
(#107) Inline phpdocs tag {@link restore_logs_processor} with incorrect contents found. It must match {@link valid URL} or {@see valid FQSEN}
(#109) Inline phpdocs tag {@link restore_log_rule} with incorrect contents found. It must match {@link valid URL} or {@see valid FQSEN}
mod/mootyper/classes/local/lessons.php
(#126) Phpdocs for function lessons::is_editable_by_me has incomplete parameters list
mod/mootyper/classes/privacy/provider.php
(#102) Phpdocs for function provider::get_modid has incomplete parameters list
(#305) Phpdocs for function provider::_export_mootyper_data_for_user has incomplete parameters list
mod/mootyper/layouts/English(USV5).php
(#17) No one-line description found in phpdocs for file
mod/mootyper/layouts/EnglishWKeypad(USV6).php
(#17) No one-line description found in phpdocs for file
mod/mootyper/lib.php
(#756) Phpdocs for function mootyper_update_grades has incomplete parameters list
(#591) Inline phpdocs tag {@link mootyper_print_recent_mod_activity()} with incorrect contents found. It must match {@link valid URL} or {@see valid FQSEN}
(#851) Inline phpdocs tag {@link file_browser::get_file_info_context_module()} with incorrect contents found. It must match {@link valid URL} or {@see valid FQSEN}
(#1017) Inline phpdocs tag {@link settings_navigation} with incorrect contents found. It must match {@link valid URL} or {@see valid FQSEN}
(#1018) Inline phpdocs tag {@link navigation_node} with incorrect contents found. It must match {@link valid URL} or {@see valid FQSEN}

Update savepoints problems

(2 errors, 0 warnings)

This section shows problems detected with the handling of upgrade savepoints [More info]

mod/mootyper/db/upgrade.php
Detected more 'if' blocks (11) than 'savepoint' calls (10)
version 2019123100 is missing corresponding savepoint call

Third party library modification problems

(0 errors, 0 warnings)

This section shows problems detected with the modification of third party libraries [More info]


grunt changes

(1 errors, 1 warnings)

This section shows files built by grunt and not commited [More info]

Problems running grunt
Task "stylelint:css" failed. Use --force to continue.

shifter problems

(0 errors, 0 warnings)

This section shows problems detected by shifter [More info]


Mustache template problems

(0 errors, 0 warnings)

This section shows problems detected in mustache templates [More info]


Gherkin .feature problems

(37 errors, 0 warnings)

This section shows problems detected in behat .feature files [More info]

mod/mootyper/tests/behat/11_grades_export_to_csv.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/1_basic.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature
(#29) Wrong indentation for "and", expected indentation level of 4, but got 1
(#30) Wrong indentation for "and", expected indentation level of 4, but got 1
(#31) Wrong indentation for "and", expected indentation level of 4, but got 1
(#48) New line at EOF(end of file) is required
mod/mootyper/tests/behat/10_edit_exercise.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/12_remove_grade.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature, mod/mootyper/tests/behat/10_edit_exercise.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/3_settings.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature, mod/mootyper/tests/behat/10_edit_exercise.feature, mod/mootyper/tests/behat/12_remove_grade.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/2_view_all_grades.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature, mod/mootyper/tests/behat/10_edit_exercise.feature, mod/mootyper/tests/behat/12_remove_grade.feature, mod/mootyper/tests/behat/3_settings.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/4_view_my_grades.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature, mod/mootyper/tests/behat/10_edit_exercise.feature, mod/mootyper/tests/behat/12_remove_grade.feature, mod/mootyper/tests/behat/3_settings.feature, mod/mootyper/tests/behat/2_view_all_grades.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/5_add_new_category.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature, mod/mootyper/tests/behat/10_edit_exercise.feature, mod/mootyper/tests/behat/12_remove_grade.feature, mod/mootyper/tests/behat/3_settings.feature, mod/mootyper/tests/behat/2_view_all_grades.feature, mod/mootyper/tests/behat/4_view_my_grades.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/7_import_lesson.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature, mod/mootyper/tests/behat/10_edit_exercise.feature, mod/mootyper/tests/behat/12_remove_grade.feature, mod/mootyper/tests/behat/3_settings.feature, mod/mootyper/tests/behat/2_view_all_grades.feature, mod/mootyper/tests/behat/4_view_my_grades.feature, mod/mootyper/tests/behat/5_add_new_category.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/6_add_new_exercise.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature, mod/mootyper/tests/behat/10_edit_exercise.feature, mod/mootyper/tests/behat/12_remove_grade.feature, mod/mootyper/tests/behat/3_settings.feature, mod/mootyper/tests/behat/2_view_all_grades.feature, mod/mootyper/tests/behat/4_view_my_grades.feature, mod/mootyper/tests/behat/5_add_new_category.feature, mod/mootyper/tests/behat/7_import_lesson.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/9_export_exercise.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature, mod/mootyper/tests/behat/10_edit_exercise.feature, mod/mootyper/tests/behat/12_remove_grade.feature, mod/mootyper/tests/behat/3_settings.feature, mod/mootyper/tests/behat/2_view_all_grades.feature, mod/mootyper/tests/behat/4_view_my_grades.feature, mod/mootyper/tests/behat/5_add_new_category.feature, mod/mootyper/tests/behat/7_import_lesson.feature, mod/mootyper/tests/behat/6_add_new_exercise.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required
mod/mootyper/tests/behat/8_import_exercise.feature
(#2) Feature name is already used in: mod/mootyper/tests/behat/11_grades_export_to_csv.feature, mod/mootyper/tests/behat/1_basic.feature, mod/mootyper/tests/behat/10_edit_exercise.feature, mod/mootyper/tests/behat/12_remove_grade.feature, mod/mootyper/tests/behat/3_settings.feature, mod/mootyper/tests/behat/2_view_all_grades.feature, mod/mootyper/tests/behat/4_view_my_grades.feature, mod/mootyper/tests/behat/5_add_new_category.feature, mod/mootyper/tests/behat/7_import_lesson.feature, mod/mootyper/tests/behat/6_add_new_exercise.feature, mod/mootyper/tests/behat/9_export_exercise.feature
(#20) Trailing spaces are not allowed
(#28) New line at EOF(end of file) is required