-
Task
-
Resolution: Unresolved
-
Minor
Problem
== Inline Script Block Line: 4 ---- <script type="text/javascript" defer="defer"> function _sounds_ajaxJsonFetcherFactory(onSuccess, onFailure) { return function() { var request = new XMLHttpRequest(); request.responseType = 'json'; request.open("GET", "${request.contextPath}/sounds/getSounds", true); request.onload = function() { if (request.status >= 200 && request.status < 400) { var responseObject = request.response; if (typeof responseObject === 'string') { responseObject = JSON.parse(responseObject); } onSuccess(responseObject); } else { onFailure(); } }; request.onerror = onFailure; request.send(); } } if (AUDIO_CAPABLE) { _sounds_pollForSounds(_sounds_ajaxJsonFetcherFactory); } </script> ----
Solution
https://www.jenkins.io/doc/developer/security/csp/#inline-javascript-blocks
[JENKINS-74377] [sounds] Extract inline script block in net/hurstfrost/hudson/sounds/SoundsAgentPageDecorator/header.jelly
Description |
Original:
h4. Problems {noformat} == Inline Script Block Line: 4 ---- <script type="text/javascript" defer="defer"> function _sounds_ajaxJsonFetcherFactory(onSuccess, onFailure) { return function() { var request = new XMLHttpRequest(); request.responseType = 'json'; request.open("GET", "${request.contextPath}/sounds/getSounds", true); request.onload = function() { if (request.status >= 200 && request.status < 400) { var responseObject = request.response; if (typeof responseObject === 'string') { responseObject = JSON.parse(responseObject); } onSuccess(responseObject); } else { onFailure(); } }; request.onerror = onFailure; request.send(); } } if (AUDIO_CAPABLE) { _sounds_pollForSounds(_sounds_ajaxJsonFetcherFactory); } </script> ---- == Inline Script Block Line: 4 ---- <script type="text/javascript" defer="defer"> function _sounds_ajaxJsonFetcherFactory(onSuccess, onFailure) { return function() { var request = new XMLHttpRequest(); request.responseType = 'json'; request.open("GET", "${request.contextPath}/sounds/getSounds", true); request.onload = function() { if (request.status >= 200 && request.status < 400) { var responseObject = request.response; if (typeof responseObject === 'string') { responseObject = JSON.parse(responseObject); } onSuccess(responseObject); } else { onFailure(); } }; request.onerror = onFailure; request.send(); } } if (AUDIO_CAPABLE) { _sounds_pollForSounds(_sounds_ajaxJsonFetcherFactory); } </script> ---- {noformat} h4. Solution [https://www.jenkins.io/doc/developer/security/csp/#inline-javascript-blocks] |
New:
h4. Problem {noformat} == Inline Script Block Line: 4 ---- <script type="text/javascript" defer="defer"> function _sounds_ajaxJsonFetcherFactory(onSuccess, onFailure) { return function() { var request = new XMLHttpRequest(); request.responseType = 'json'; request.open("GET", "${request.contextPath}/sounds/getSounds", true); request.onload = function() { if (request.status >= 200 && request.status < 400) { var responseObject = request.response; if (typeof responseObject === 'string') { responseObject = JSON.parse(responseObject); } onSuccess(responseObject); } else { onFailure(); } }; request.onerror = onFailure; request.send(); } } if (AUDIO_CAPABLE) { _sounds_pollForSounds(_sounds_ajaxJsonFetcherFactory); } </script> ---- {noformat} h4. Solution [https://www.jenkins.io/doc/developer/security/csp/#inline-javascript-blocks] |
Summary | Original: [sounds] Extract inline script blocks in net/hurstfrost/hudson/sounds/SoundsAgentPageDecorator/header.jelly | New: [sounds] Extract inline script block in net/hurstfrost/hudson/sounds/SoundsAgentPageDecorator/header.jelly |