Prechecker results: error


PHP lint problems

(0 errors, 0 warnings)

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


PHP coding style problems

(197 errors, 85 warnings)

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

local/o365/classes/adminsetting/aadsyncoptions.php
(#86) Logical operator "or" is prohibited; use "||" instead
local/o365/classes/adminsetting/systemapiuser.php
(#101) Empty CATCH statement detected
local/o365/classes/adminsetting/tabs.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#157) Expected 1 space before "="; 2 found
(#160) Expected 1 space before "=>"; 2 found
(#161) Expected 1 space before "=>"; 2 found
local/o365/classes/bot/botintent.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#58) Line exceeds 132 characters; contains 145 characters
(#64) Line exceeds 132 characters; contains 143 characters
(#68) Line exceeds 132 characters; contains 134 characters
(#78) Line exceeds 132 characters; contains 160 characters
(#95) Line exceeds 132 characters; contains 135 characters
(#98) Line indented incorrectly; expected 16 spaces, found 20
(#100) Line indented incorrectly; expected 16 spaces, found 20
(#102) Line indented incorrectly; expected 16 spaces, found 20
local/o365/classes/bot/intents/absentstudents.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/bot/intents/assignmentcomparison.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/bot/intents/dueassignments.php
(#28) Expected MOODLE_INTERNAL check or config.php inclusion. Change in global state detected.
local/o365/classes/bot/intents/help.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/bot/intents/incompleteassignments.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/bot/intents/intentinterface.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/bot/intents/laststudentlogin.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/bot/intents/latestgrades.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/bot/intents/lateststudents.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/bot/intents/recentstudents.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/event/api_call_failed.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/event/calendar_subscribed.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/event/calendar_unsubscribed.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/feature/calsync/form/element/calendar.php
(#59) Variable "elementName" must be all lower-case
(#59) Variable "elementLabel" must be all lower-case
(#61) Variable "elementName" must be all lower-case
(#61) Variable "elementLabel" must be all lower-case
(#75) Variable "elementName" must be all lower-case
(#75) Variable "elementLabel" must be all lower-case
(#76) Variable "elementName" must be all lower-case
(#76) Variable "elementLabel" must be all lower-case
(#98) Public method name "calendar::setValue" must be in lower-case letters only
(#115) Visibility must be declared on method "getHelpButton"
(#115) method name "calendar::getHelpButton" must be in lower-case letters only
(#115) Expected 1 space before opening brace; found 0
(#126) Public method name "calendar::exportValue" must be in lower-case letters only
(#126) Variable "submitValues" must be all lower-case
(#127) Variable "submitValues" must be all lower-case
(#136) Public method name "calendar::toHtml" must be in lower-case letters only
local/o365/classes/feature/calsync/main.php
(#33) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#131) Declaring a required parameter after an optional one is deprecated since PHP 8.0. Parameter $other is optional, while parameter $calid is required.
(#298) Empty CATCH statement detected
(#483) Empty CATCH statement detected
local/o365/classes/feature/calsync/task/importfromoutlook.php
(#30) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/feature/calsync/task/syncoldevents.php
(#31) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#127) Empty CATCH statement detected
(#266) Empty CATCH statement detected
local/o365/classes/feature/coursesync/main.php
(#34) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#1367) Empty CATCH statement detected
(#1375) Empty CATCH statement detected
(#1400) Empty CATCH statement detected
(#1408) Empty CATCH statement detected
local/o365/classes/feature/coursesync/observers.php
(#88) Empty CATCH statement detected
local/o365/classes/feature/coursesync/utils.php
(#388) Expected "foreach (...) {\n"; found "foreach(...){\n"
(#644) Empty CATCH statement detected
(#737) Must use "self::" for local static member reference
(#738) Must use "self::" for local static member reference
local/o365/classes/feature/sds/task/sync.php
(#36) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#530) Commas (,) must be followed by white space.
(#535) Commas (,) must be followed by white space.
(#566) Commas (,) must be followed by white space.
(#576) Commas (,) must be followed by white space.
(#652) Empty CATCH statement detected
local/o365/classes/healthcheck/healthcheckinterface.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/healthcheck/ratelimit.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/healthcheck/systemapiuser.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/httpclientinterface.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/oauth2/systemapiusertoken.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/oauth2/systemtoken.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/oauth2/token.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#171) Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as passed to a parameter, but will instead provide the current value. The parameter "$userid" was used, and possibly changed (by reference), on line 158.
local/o365/classes/obj/o365user.php
(#30) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/observers.php
(#159) Empty CATCH statement detected
local/o365/classes/page/acp.php
(#124) Commas (,) must be followed by white space.
(#142) Commas (,) must be followed by white space.
(#321) Commas (,) must be followed by white space.
(#616) Commas (,) must be followed by white space.
(#645) Commas (,) must be followed by white space.
(#725) Whitespace found at end of line within string
(#888) Commas (,) must be followed by white space.
(#917) Commas (,) must be followed by white space.
(#1022) Commas (,) must be followed by white space.
(#1724) Commas (,) must be followed by white space.
(#1822) Commas (,) must be followed by white space.
(#1829) Commas (,) must be followed by white space.
(#1864) Commas (,) must be followed by white space.
(#1900) Commas (,) must be followed by white space.
local/o365/classes/page/ajax.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/page/base.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/rest/botframework.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/rest/o365api.php
(#30) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#333) Commas (,) must be followed by white space.
local/o365/classes/rest/unified.php
(#263) Commas (,) must be followed by white space.
(#434) Empty CATCH statement detected
(#825) Commas (,) must be followed by white space.
(#1356) Commas (,) must be followed by white space.
(#1359) Commas (,) must be followed by white space.
(#1368) Commas (,) must be followed by white space.
(#1878) Commas (,) must be followed by white space.
(#1933) Commas (,) must be followed by white space.
(#1949) Commas (,) must be followed by white space.
(#2021) Commas (,) must be followed by white space.
(#2036) Commas (,) must be followed by white space.
local/o365/classes/task/bot.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#93) Inline comments must start with a capital letter, digit or 3-dots sequence
local/o365/classes/task/coursesync.php
(#31) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/task/groupmembershipsync.php
(#32) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#58) File must end with a newline character
local/o365/classes/task/refreshsystemrefreshtoken.php
(#33) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/task/usersync.php
(#33) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#219) Expected "if (...) {\n"; found "if(...) {\n"
local/o365/classes/tests/mockhttpclient.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/utils.php
(#67) Must use "self::" for local static member reference
(#264) The use of function print_r() is forbidden
(#266) The use of function print_r() is forbidden
(#475) Empty CATCH statement detected
(#499) Empty CATCH statement detected
local/o365/classes/webservices/exception/assignnotfound.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/webservices/exception/couldnotsavegrade.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/webservices/exception/invalidassignment.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/webservices/exception/modulenotfound.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/webservices/exception/sectionnotfound.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/classes/webservices/read_assignments.php
(#62) Expected 1 space before "=>"; 2 found
(#275) Expected 1 space before "=>"; 2 found
(#344) Expected 1 space before "=>"; 2 found
(#398) Expected 1 space before "=>"; 2 found
local/o365/classes/webservices/read_bot_message.php
(#28) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#107) Expected 1 space before "=>"; 2 found
local/o365/classes/webservices/read_courseusers.php
(#101) Empty IF statement detected
local/o365/classes/webservices/update_grade.php
(#67) Expected 1 space before "="; 2 found
local/o365/classes/webservices/utils.php
(#30) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
local/o365/db/events.php
(#32) Expected 1 space before "=>"; 3 found
(#33) Expected 1 space before "=>"; 4 found
(#34) Expected 1 space before "=>"; 4 found
(#35) Expected 1 space before "=>"; 4 found
(#38) Expected 1 space before "=>"; 3 found
(#39) Expected 1 space before "=>"; 4 found
(#40) Expected 1 space before "=>"; 4 found
(#41) Expected 1 space before "=>"; 4 found
(#44) Expected 1 space before "=>"; 3 found
(#45) Expected 1 space before "=>"; 4 found
(#46) Expected 1 space before "=>"; 4 found
(#47) Expected 1 space before "=>"; 4 found
(#50) Expected 1 space before "=>"; 3 found
(#51) Expected 1 space before "=>"; 4 found
(#52) Expected 1 space before "=>"; 4 found
(#53) Expected 1 space before "=>"; 4 found
(#56) Expected 1 space before "=>"; 3 found
(#57) Expected 1 space before "=>"; 4 found
(#58) Expected 1 space before "=>"; 4 found
(#59) Expected 1 space before "=>"; 4 found
(#62) Expected 1 space before "=>"; 3 found
(#63) Expected 1 space before "=>"; 4 found
(#64) Expected 1 space before "=>"; 4 found
(#65) Expected 1 space before "=>"; 4 found
(#68) Expected 1 space before "=>"; 3 found
(#69) Expected 1 space before "=>"; 4 found
(#70) Expected 1 space before "=>"; 4 found
(#71) Expected 1 space before "=>"; 4 found
(#74) Expected 1 space before "=>"; 3 found
(#75) Expected 1 space before "=>"; 4 found
(#76) Expected 1 space before "=>"; 4 found
(#77) Expected 1 space before "=>"; 4 found
(#82) Expected 1 space before "=>"; 3 found
(#83) Expected 1 space before "=>"; 4 found
(#84) Expected 1 space before "=>"; 4 found
(#85) Expected 1 space before "=>"; 4 found
(#88) Expected 1 space before "=>"; 3 found
(#89) Expected 1 space before "=>"; 4 found
(#90) Expected 1 space before "=>"; 4 found
(#91) Expected 1 space before "=>"; 4 found
(#94) Expected 1 space before "=>"; 3 found
(#95) Expected 1 space before "=>"; 4 found
(#96) Expected 1 space before "=>"; 4 found
(#97) Expected 1 space before "=>"; 4 found
(#100) Expected 1 space before "=>"; 3 found
(#101) Expected 1 space before "=>"; 4 found
(#102) Expected 1 space before "=>"; 4 found
(#103) Expected 1 space before "=>"; 4 found
(#108) Expected 1 space before "=>"; 3 found
(#109) Expected 1 space before "=>"; 4 found
(#110) Expected 1 space before "=>"; 4 found
(#111) Expected 1 space before "=>"; 4 found
(#114) Expected 1 space before "=>"; 3 found
(#115) Expected 1 space before "=>"; 4 found
(#116) Expected 1 space before "=>"; 4 found
(#117) Expected 1 space before "=>"; 4 found
(#120) Expected 1 space before "=>"; 3 found
(#121) Expected 1 space before "=>"; 4 found
(#122) Expected 1 space before "=>"; 4 found
(#123) Expected 1 space before "=>"; 4 found
(#126) Expected 1 space before "=>"; 3 found
(#127) Expected 1 space before "=>"; 4 found
(#128) Expected 1 space before "=>"; 4 found
(#129) Expected 1 space before "=>"; 4 found
(#132) Expected 1 space before "=>"; 3 found
(#133) Expected 1 space before "=>"; 4 found
(#134) Expected 1 space before "=>"; 4 found
(#135) Expected 1 space before "=>"; 4 found
(#138) Expected 1 space before "=>"; 3 found
(#139) Expected 1 space before "=>"; 4 found
(#140) Expected 1 space before "=>"; 4 found
(#141) Expected 1 space before "=>"; 4 found
(#144) Expected 1 space before "=>"; 3 found
(#145) Expected 1 space before "=>"; 4 found
(#146) Expected 1 space before "=>"; 4 found
(#147) Expected 1 space before "=>"; 4 found
(#150) Expected 1 space before "=>"; 3 found
(#151) Expected 1 space before "=>"; 4 found
(#152) Expected 1 space before "=>"; 4 found
(#153) Expected 1 space before "=>"; 4 found
(#156) Expected 1 space before "=>"; 3 found
(#157) Expected 1 space before "=>"; 4 found
(#158) Expected 1 space before "=>"; 4 found
(#159) Expected 1 space before "=>"; 4 found
(#162) Expected 1 space before "=>"; 3 found
(#163) Expected 1 space before "=>"; 4 found
(#164) Expected 1 space before "=>"; 4 found
(#165) Expected 1 space before "=>"; 4 found
(#168) Expected 1 space before "=>"; 3 found
(#169) Expected 1 space before "=>"; 4 found
(#170) Expected 1 space before "=>"; 4 found
(#171) Expected 1 space before "=>"; 4 found
(#174) Expected 1 space before "=>"; 3 found
(#175) Expected 1 space before "=>"; 4 found
(#176) Expected 1 space before "=>"; 4 found
(#177) Expected 1 space before "=>"; 4 found
(#180) Expected 1 space before "=>"; 3 found
(#181) Expected 1 space before "=>"; 4 found
(#182) Expected 1 space before "=>"; 4 found
(#183) Expected 1 space before "=>"; 4 found
(#186) Expected 1 space before "=>"; 3 found
(#187) Expected 1 space before "=>"; 4 found
(#188) Expected 1 space before "=>"; 4 found
(#189) Expected 1 space before "=>"; 4 found
(#192) Expected 1 space before "=>"; 3 found
(#193) Expected 1 space before "=>"; 4 found
(#194) Expected 1 space before "=>"; 4 found
(#195) Expected 1 space before "=>"; 4 found
(#198) Expected 1 space before "=>"; 3 found
(#199) Expected 1 space before "=>"; 4 found
(#200) Expected 1 space before "=>"; 4 found
(#201) Expected 1 space before "=>"; 4 found
local/o365/export_manifest.php
(#26) Expected login check (require_login, require_course_login, require_admin, admin_externalpage_setup) following config inclusion. None found.
(#45) Function print_error() has been deprecated; use throw new moodle_exception() (using lang strings only if meant to be shown to final user)() instead
local/o365/lang/en/local_o365.php
(#890) Whitespace found at end of line within string
local/o365/lib.php
(#26) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#354) The use of backticks in strings is not recommended
(#457) Whitespace found at end of line within string
local/o365/sso_end.php
(#26) Expected login check (require_login, require_course_login, require_admin, admin_externalpage_setup) following config inclusion. None found.
local/o365/sso_login.php
(#26) Expected login check (require_login, require_course_login, require_admin, admin_externalpage_setup) following config inclusion. None found.
local/o365/sso_start.php
(#26) Expected login check (require_login, require_course_login, require_admin, admin_externalpage_setup) following config inclusion. None found.
local/o365/teams_tab.php
(#26) Expected login check (require_login, require_course_login, require_admin, admin_externalpage_setup) following config inclusion. None found.
local/o365/teams_tab_configuration.php
(#26) Expected login check (require_login, require_course_login, require_admin, admin_externalpage_setup) following config inclusion. None found.
local/o365/teams_tab_redirect.php
(#26) Expected login check (require_login, require_course_login, require_admin, admin_externalpage_setup) following config inclusion. None found.
(#29) Function print_error() has been deprecated; use throw new moodle_exception() (using lang strings only if meant to be shown to final user)() instead
local/o365/tests/coursesyncutils_test.php
(#38) PHPUnit testcase name "local_o365_coursesyncutils_testcase" does not match file name "coursesyncutils_test"
(#38) PHPUnit class "local_o365_coursesyncutils_testcase" does not have any namespace. It is recommended to add it to the "local_o365" namespace, using more levels if needed, in order to match the code being tested
local/o365/tests/observers_test.php
(#26) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#35) PHPUnit testcase name "local_o365_observers_testcase" does not match file name "observers_test"
(#35) PHPUnit class "local_o365_observers_testcase" does not have any namespace. It is recommended to add it to the "local_o365" namespace, using more levels if needed, in order to match the code being tested
local/o365/tests/privacy_provider_test.php
(#26) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#38) PHPUnit testcase name "local_o365_privacy_testcase" does not match file name "privacy_provider_test"
(#38) PHPUnit class "local_o365_privacy_testcase" does not have any namespace. It is recommended to add it to the "local_o365" namespace, using more levels if needed, in order to match the code being tested
local/o365/tests/token_test.php
(#26) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#35) PHPUnit testcase name "local_o365_oauth2_token_testcase" does not match file name "token_test"
(#35) PHPUnit class "local_o365_oauth2_token_testcase" does not have any namespace. It is recommended to add it to the "local_o365" namespace, using more levels if needed, in order to match the code being tested
local/o365/tests/usersync_test.php
(#26) Unexpected MOODLE_INTERNAL check. No side effects or multiple artifacts detected.
(#35) PHPUnit testcase name "local_o365_usersync_testcase" does not match file name "usersync_test"
(#35) PHPUnit class "local_o365_usersync_testcase" does not have any namespace. It is recommended to add it to the "local_o365" namespace, using more levels if needed, in order to match the code being tested
local/o365/tests/webservices_onenoteassignment_test.php
(#38) PHPUnit testcase name "local_o365_webservices_onenoteassignment_testcase" does not match file name "webservices_onenoteassignment_test"
(#38) PHPUnit class "local_o365_webservices_onenoteassignment_testcase" does not have any namespace. It is recommended to add it to the "local_o365" namespace, using more levels if needed, in order to match the code being tested
local/o365/tests/webservices_utils_test.php
(#38) PHPUnit testcase name "local_o365_webservices_utils_testcase" does not match file name "webservices_utils_test"
(#38) PHPUnit class "local_o365_webservices_utils_testcase" does not have any namespace. It is recommended to add it to the "local_o365" namespace, using more levels if needed, in order to match the code being tested
local/o365/token.php
(#94) Logical operator "and" is prohibited; use "&&" instead
(#109) Logical operator "and" is prohibited; use "&&" instead
(#140) Logical operator "and" is prohibited; use "&&" instead

Javascript coding style problems

(63 errors, 115 warnings)

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

local/o365/classes/adminsetting/azuresetup.js
(#23) '$' is not defined. (no-undef)
(#25) '$' is not defined. (no-undef)
(#56) This line has a length of 156. Maximum allowed is 132. (max-len)
(#64) '$' is not defined. (no-undef)
(#71) '$' is not defined. (no-undef)
(#77) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#88) 'data' is defined but never used. (no-unused-vars)
(#92) Missing semicolon. (semi)
(#94) Missing JSDoc return type. (valid-jsdoc)
(#97) Missing JSDoc parameter type for 'string'. (valid-jsdoc)
(#97) Expected JSDoc for 'content' but found 'string'. (valid-jsdoc)
(#101) '$' is not defined. (no-undef)
(#105) Missing semicolon. (semi)
(#107) Missing JSDoc return type. (valid-jsdoc)
(#110) Missing JSDoc parameter type for 'string'. (valid-jsdoc)
(#110) Expected JSDoc for 'content' but found 'string'. (valid-jsdoc)
(#114) '$' is not defined. (no-undef)
(#118) Missing semicolon. (semi)
(#120) Missing JSDoc return type. (valid-jsdoc)
(#123) Missing JSDoc parameter type for 'string'. (valid-jsdoc)
(#123) Expected JSDoc for 'content' but found 'string'. (valid-jsdoc)
(#127) '$' is not defined. (no-undef)
(#131) Missing semicolon. (semi)
(#136) Missing JSDoc parameter type for 'string'. (valid-jsdoc)
(#136) Expected JSDoc for 'content' but found 'string'. (valid-jsdoc)
(#140) Missing semicolon. (semi)
(#142) Missing JSDoc return type. (valid-jsdoc)
(#145) Missing JSDoc parameter type for 'object'. (valid-jsdoc)
(#145) Expected JSDoc for 'data' but found 'object'. (valid-jsdoc)
(#148) Identifier 'rendersection_unifiedapi' is not in camel case. (camelcase)
(#149) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#153) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#155) '$' is not defined. (no-undef)
(#159) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#161) 'missingpermsbox' used outside of binding context. (block-scoped-var)
(#162) 'perm' used outside of binding context. (block-scoped-var)
(#163) 'missingpermsbox' used outside of binding context. (block-scoped-var)
(#163) 'perm' used outside of binding context. (block-scoped-var)
(#163) 'perm' used outside of binding context. (block-scoped-var)
(#165) 'missingpermsbox' used outside of binding context. (block-scoped-var)
(#166) 'missingpermsbox' used outside of binding context. (block-scoped-var)
(#174) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#176) 'missingpermsbox' is already defined. (no-redeclare)
(#176) 'missingpermsbox' used outside of binding context. (block-scoped-var)
(#177) 'perm' is already defined. (no-redeclare)
(#177) 'perm' used outside of binding context. (block-scoped-var)
(#178) 'missingpermsbox' used outside of binding context. (block-scoped-var)
(#178) 'perm' used outside of binding context. (block-scoped-var)
(#178) 'perm' used outside of binding context. (block-scoped-var)
(#180) 'missingpermsbox' used outside of binding context. (block-scoped-var)
(#181) 'missingpermsbox' used outside of binding context. (block-scoped-var)
(#192) Missing semicolon. (semi)
(#194) Missing JSDoc @returns for function. (valid-jsdoc)
(#197) Missing JSDoc parameter type for 'object'. (valid-jsdoc)
(#197) Expected JSDoc for 'results' but found 'object'. (valid-jsdoc)
(#200) '$' is not defined. (no-undef)
(#206) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#207) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#209) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#210) '$' is not defined. (no-undef)
(#211) Operator '+' must be spaced. (space-infix-ops)
(#211) Operator '+' must be spaced. (space-infix-ops)
(#212) Operator '+' must be spaced. (space-infix-ops)
(#212) Operator '+' must be spaced. (space-infix-ops)
(#214) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#215) Blocks are nested too deeply (5). Maximum allowed is 4. (max-depth)
(#215) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#216) Blocks are nested too deeply (6). Maximum allowed is 4. (max-depth)
(#219) 'errstr' used outside of binding context. (block-scoped-var)
(#219) Operator '+' must be spaced. (space-infix-ops)
(#220) 'errstr' used outside of binding context. (block-scoped-var)
(#220) Operator '+' must be spaced. (space-infix-ops)
(#220) Operator '+' must be spaced. (space-infix-ops)
(#220) Operator '+' must be spaced. (space-infix-ops)
(#221) 'errstr' used outside of binding context. (block-scoped-var)
(#221) Operator '+' must be spaced. (space-infix-ops)
(#221) Operator '+' must be spaced. (space-infix-ops)
(#221) Operator '+' must be spaced. (space-infix-ops)
(#222) 'errstr' used outside of binding context. (block-scoped-var)
(#228) Blocks are nested too deeply (5). Maximum allowed is 4. (max-depth)
(#228) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#229) Blocks are nested too deeply (6). Maximum allowed is 4. (max-depth)
(#232) 'errstr' is already defined. (no-redeclare)
(#232) 'errstr' used outside of binding context. (block-scoped-var)
(#232) Operator '+' must be spaced. (space-infix-ops)
(#233) 'errstr' used outside of binding context. (block-scoped-var)
(#233) Operator '+' must be spaced. (space-infix-ops)
(#233) Operator '+' must be spaced. (space-infix-ops)
(#233) Operator '+' must be spaced. (space-infix-ops)
(#234) 'errstr' used outside of binding context. (block-scoped-var)
(#234) Operator '+' must be spaced. (space-infix-ops)
(#234) Operator '+' must be spaced. (space-infix-ops)
(#234) Operator '+' must be spaced. (space-infix-ops)
(#235) 'errstr' used outside of binding context. (block-scoped-var)
(#245) '$' is not defined. (no-undef)
(#248) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#259) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#269) Missing semicolon. (semi)
(#273) '$' is not defined. (no-undef)
(#280) '$' is not defined. (no-undef)
(#285) '$' is not defined. (no-undef)
(#286) '$' is not defined. (no-undef)
(#299) Missing semicolon. (semi)
(#302) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#310) Missing semicolon. (semi)
(#312) Missing semicolon. (semi)
local/o365/classes/adminsetting/moodlesetup.js
(#23) '$' is not defined. (no-undef)
(#23) Unexpected space before function parentheses. (space-before-function-paren)
(#25) '$' is not defined. (no-undef)
(#25) Unexpected space before function parentheses. (space-before-function-paren)
(#38) '$' is not defined. (no-undef)
(#43) Missing JSDoc return type. (valid-jsdoc)
(#46) Missing JSDoc parameter type for 'string'. (valid-jsdoc)
(#46) Expected JSDoc for 'content' but found 'string'. (valid-jsdoc)
(#49) Unexpected space before function parentheses. (space-before-function-paren)
(#50) '$' is not defined. (no-undef)
(#54) Missing semicolon. (semi)
(#56) Missing JSDoc return type. (valid-jsdoc)
(#59) Missing JSDoc parameter type for 'string'. (valid-jsdoc)
(#59) Expected JSDoc for 'content' but found 'string'. (valid-jsdoc)
(#62) Unexpected space before function parentheses. (space-before-function-paren)
(#63) '$' is not defined. (no-undef)
(#67) Missing semicolon. (semi)
(#69) Missing JSDoc return type. (valid-jsdoc)
(#72) Missing JSDoc parameter type for 'string'. (valid-jsdoc)
(#72) Expected JSDoc for 'content' but found 'string'. (valid-jsdoc)
(#75) Unexpected space before function parentheses. (space-before-function-paren)
(#76) '$' is not defined. (no-undef)
(#80) Missing semicolon. (semi)
(#85) Missing JSDoc parameter type for 'string'. (valid-jsdoc)
(#85) Expected JSDoc for 'content' but found 'string'. (valid-jsdoc)
(#87) Unexpected space before function parentheses. (space-before-function-paren)
(#89) Missing semicolon. (semi)
(#91) Missing JSDoc @returns for function. (valid-jsdoc)
(#94) Missing JSDoc parameter type for 'object'. (valid-jsdoc)
(#94) Expected JSDoc for 'results' but found 'object'. (valid-jsdoc)
(#96) Unexpected space before function parentheses. (space-before-function-paren)
(#97) '$' is not defined. (no-undef)
(#129) Missing semicolon. (semi)
(#131) Unexpected space before function parentheses. (space-before-function-paren)
(#133) '$' is not defined. (no-undef)
(#140) Unexpected space before function parentheses. (space-before-function-paren)
(#144) Unexpected space before function parentheses. (space-before-function-paren)
(#150) Missing semicolon. (semi)
(#152) Unexpected space before function parentheses. (space-before-function-paren)
(#156) Unexpected space before function parentheses. (space-before-function-paren)
(#161) Missing semicolon. (semi)
(#163) Missing semicolon. (semi)
local/o365/classes/adminsetting/serviceresource.js
(#23) '$' is not defined. (no-undef)
(#25) '$' is not defined. (no-undef)
(#38) '$' is not defined. (no-undef)
(#47) Use '===' to compare with null. (no-eq-null)
(#50) Statement inside of curly braces should be on next line. (brace-style)
(#50) Closing curly brace should be on the same line as opening curly brace or on the line after the previous block. (brace-style)
(#52) Missing semicolon. (semi)
(#58) Missing semicolon. (semi)
(#62) '$' is not defined. (no-undef)
(#72) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#73) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#73) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#82) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#91) 'data' is defined but never used. (no-unused-vars)
(#95) Missing semicolon. (semi)
(#99) '$' is not defined. (no-undef)
(#109) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#110) This line has a length of 133. Maximum allowed is 132. (max-len)
(#110) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#110) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#116) Unary word operator 'typeof' must be followed by whitespace. (space-unary-ops)
(#125) 'data' is defined but never used. (no-unused-vars)
(#130) Missing semicolon. (semi)
(#133) This line has a length of 137. Maximum allowed is 132. (max-len)
(#136) Missing semicolon. (semi)
(#139) This line has a length of 137. Maximum allowed is 132. (max-len)
(#142) Missing semicolon. (semi)
(#144) 'e' is defined but never used. (no-unused-vars)
(#145) '$' is not defined. (no-undef)
(#153) Missing semicolon. (semi)

CSS problems

(21 errors, 17 warnings)

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

local/o365/styles.css
(#249) Unexpected empty block (block-no-empty)
(#233) Expected "#FFF" to be "#fff" (color-hex-case)
(#246) Expected "#FFF" to be "#fff" (color-hex-case)
(#175) Unexpected !important (declaration-no-important)
(#176) Unexpected !important (declaration-no-important)
(#218) Unexpected !important (declaration-no-important)
(#231) Unexpected !important (declaration-no-important)
(#232) Unexpected !important (declaration-no-important)
(#55) Unexpected unit (length-zero-no-unit)
(#142) Unexpected unit (length-zero-no-unit)
(#143) Unexpected unit (length-zero-no-unit)
(#175) Unexpected unit (length-zero-no-unit)
(#197) Unexpected unit (length-zero-no-unit)
(#258) Unexpected unit (length-zero-no-unit)
(#258) Unexpected unit (length-zero-no-unit)
(#262) Unexpected unit (length-zero-no-unit)
(#267) Unexpected unit (length-zero-no-unit)
(#290) Unexpected unit (length-zero-no-unit)
(#290) Unexpected unit (length-zero-no-unit)
(#63) Expected line length to be no more than 132 characters (max-line-length)
(#67) Expected line length to be no more than 132 characters (max-line-length)
(#71) Expected line length to be no more than 132 characters (max-line-length)
(#9) Expected newline after "," (selector-list-comma-newline-after)
(#54) Expected newline after "," (selector-list-comma-newline-after)
(#63) Expected newline after "," (selector-list-comma-newline-after)
(#67) Expected newline after "," (selector-list-comma-newline-after)
(#71) Expected newline after "," (selector-list-comma-newline-after)
(#120) Expected newline after "," (selector-list-comma-newline-after)
(#125) Expected newline after "," (selector-list-comma-newline-after)
(#243) Expected newline after "," (selector-list-comma-newline-after)
(#249) Expected newline after "," (selector-list-comma-newline-after)
local/o365/sass/styles.scss
(#51) Unexpected unit (length-zero-no-unit)
(#8) Expected newline after "," (selector-list-comma-newline-after)
(#50) Expected newline after "," (selector-list-comma-newline-after)
(#60) Expected newline after "," (selector-list-comma-newline-after)
(#64) Expected newline after "," (selector-list-comma-newline-after)
(#67) Expected newline after "," (selector-list-comma-newline-after)
(#114) Expected newline after "," (selector-list-comma-newline-after)

PHPDocs style problems

(39 errors, 0 warnings)

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

local/o365/classes/bot/botintent.php
(#127) There is no description in phpdocs for function check_permission
(#127) Phpdocs for function botintent::check_permission has incomplete parameters list
local/o365/classes/healthcheck/healthcheckinterface.php
(#34) Constant SEVERITY_OK is not documented
(#35) Constant SEVERITY_TRIVIAL is not documented
(#36) Constant SEVERITY_WARNING is not documented
(#37) Constant SEVERITY_FATAL is not documented
local/o365/classes/task/notifysecretexpiry.php
(#37) Class notifysecretexpiry is not documented
local/o365/classes/tests/mockhttpclient.php
(#33) Invalid phpdocs tag @codeCoverageIgnore used
local/o365/classes/utils.php
(#441) Phpdocs for function utils::deletelegacyadditionaltenant has incomplete parameters list
local/o365/lib.php
(#34) Constant COURSE_SYNC_RESET_SITE_SETTING_DO_NOTHING is not documented
(#35) Constant COURSE_SYNC_RESET_SITE_SETTING_PER_COURSE is not documented
(#36) Constant COURSE_SYNC_RESET_SITE_SETTING_DISCONNECT_AND_CREATE_NEW is not documented
(#37) Constant COURSE_SYNC_RESET_SITE_SETTING_DISCONNECT_ONLY is not documented
(#40) Constant COURSE_SYNC_RESET_COURSE_SETTING_DO_NOTHING is not documented
(#41) Constant COURSE_SYNC_RESET_COURSE_SETTING_DISCONNECT_AND_CREATE_NEW is not documented
(#42) Constant COURSE_SYNC_RESET_COURSE_SETTING_DISCONNECT_ONLY is not documented
(#45) Constant MICROSOFT365_COURSE_SYNC_DISABLED is not documented
(#46) Constant MICROSOFT365_COURSE_SYNC_ENABLED is not documented
(#49) Constant LOCAL_O365_TAB_SETUP is not documented
(#50) Constant LOCAL_O365_TAB_SYNC is not documented
(#51) Constant LOCAL_O365_TAB_ADVANCED is not documented
(#52) Constant LOCAL_O365_TAB_SDS is not documented
(#53) Constant LOCAL_O365_TAB_TEAMS is not documented
(#54) Constant LOCAL_O365_TAB_MOODLE_APP is not documented
(#57) Constant MICROSOFT365_GROUP_ROLE_OWNER is not documented
(#58) Constant MICROSOFT365_GROUP_ROLE_MEMBER is not documented
(#61) Constant TEAM_LOCKED_STATUS_UNKNOWN is not documented
(#62) Constant TEAM_LOCKED is not documented
(#63) Constant TEAM_UNLOCKED is not documented
(#66) Constant EDUCATION_LICENSE_IDS is not documented
(#69) Constant SDS_SCHOOL_DISABLED_ACTION_KEEP_CONNECTED is not documented
(#70) Constant SDS_SCHOOL_DISABLED_ACTION_DISCONNECT is not documented
local/o365/tests/observers_test.php
(#33) Invalid phpdocs tag @codeCoverageIgnore used
local/o365/tests/token_test.php
(#33) Invalid phpdocs tag @codeCoverageIgnore used
local/o365/tests/usersync_test.php
(#33) Invalid phpdocs tag @codeCoverageIgnore used
local/o365/tests/webservices_onenoteassignment_test.php
(#41) Constant local_o365_webservices_onenoteassignment_testcase::DBSTATE is not documented
(#42) Constant local_o365_webservices_onenoteassignment_testcase::PARAMS is not documented
(#43) Constant local_o365_webservices_onenoteassignment_testcase::EXPECTEDRETURN is not documented
(#44) Constant local_o365_webservices_onenoteassignment_testcase::EXPECTEDEXCEPTION is not documented

Update savepoints problems

(47 errors, 0 warnings)

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

local/o365/db/upgrade.php
Detected more 'if' blocks (60) than 'savepoint' calls (14)
version 2014111700 is missing corresponding savepoint call
version 2014111702 is missing corresponding savepoint call
version 2014111703 is missing corresponding savepoint call
version 2014111707 is missing corresponding savepoint call
version 2014111710 is missing corresponding savepoint call
version 2014111711 is missing corresponding savepoint call
version 2014111715 is missing corresponding savepoint call
version 2014111716 is missing corresponding savepoint call
version 2015012702 is missing corresponding savepoint call
version 2015012704 is missing corresponding savepoint call
version 2015012707 is missing corresponding savepoint call
version 2015012708 is missing corresponding savepoint call
version 2015012709 is missing corresponding savepoint call
version 2015012710 is missing corresponding savepoint call
version 2015012712 is missing corresponding savepoint call
version 2015012713 is missing corresponding savepoint call
version 2015012714 is missing corresponding savepoint call
version 2015012715 is missing corresponding savepoint call
version 2015060102 is missing corresponding savepoint call
version 2015060103 is missing corresponding savepoint call
version 2015060104 is missing corresponding savepoint call
version 2015060109 is missing corresponding savepoint call
version 2015060111 is missing corresponding savepoint call
version 2015111900.01 is missing corresponding savepoint call
version 2015111900.02 is missing corresponding savepoint call
version 2015111901.01 is missing corresponding savepoint call
version 2015111901.03 is missing corresponding savepoint call
version 2015111903 is missing corresponding savepoint call
version 2015111905 is missing corresponding savepoint call
version 2015111911.01 is missing corresponding savepoint call
version 2015111913 is missing corresponding savepoint call
version 2015111913.02 is missing corresponding savepoint call
version 2015111914.02 is missing corresponding savepoint call
version 2015111914.03 is missing corresponding savepoint call
version 2015111916.01 is missing corresponding savepoint call
version 2016062000.01 is missing corresponding savepoint call
version 2016062000.03 is missing corresponding savepoint call
version 2016062001.01 is missing corresponding savepoint call
version 2016062004.01 is missing corresponding savepoint call
version 2016120500.05 is missing corresponding savepoint call
version 2016120500.06 is missing corresponding savepoint call
version 2017111301 is missing corresponding savepoint call
version 2018051702 is missing corresponding savepoint call
version 2018051703 is missing corresponding savepoint call
version 2018051704 is missing corresponding savepoint call
version 2018051705 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

(0 errors, 0 warnings)

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