CINXE.COM
Assessments | Red Hat Inc
<!DOCTYPE html> <html lang="EN"> <head> <script type="text/javascript"> var isLive=location.hostname.includes("assessments.redhat.com"); // cookie consent manager //document.write(`<script src="//static.redhat.com/libs/redhat/marketing/latest/trustarc/`+(isLive?`trustarc.js`:`trustarc.stage.js`)+`" type="text/javascript"> <\/script>`); document.write(`<script src="//static`+(isLive?``:`.dev`)+`.redhat.com/libs/redhat/marketing/latest/trustarc/trustarc.js" data-domain="redhat`+(isLive?``:`_test`)+`.com" type="text/javascript"> <\/script>`); // tell DPAL that we want to use EDDL instead of DOM load by sending it the name of the dataObject. This means _satellite.pageBottom() is not req'd either window.appEventData = window.appEventData || []; appEventData.push({"event":"Page Load Started", "page":{"dataObject":"appEventData"}}); document.write(`<script id="dpal" src="https://www.redhat.com/ma/`+(isLive?`dpal.js`:`dpal-staging.js`)+`" type="text/javascript"> <\/script>`); console.log("DPAL "+(isLive?"PROD!":"DEV/STAGING")); </script> <link rel="stylesheet" href="https://static.redhat.com/libs/redhat/marketing/latest/trustarc/trustecm/css/trustecm.css"> <script src="https://static.redhat.com/libs/redhat/marketing/latest/trustarc/trustecm/js/trustecm.js" data-domain="assessments.redhat.com"></script> <script data-src="https://static.redhat.com/libs/redhat/marketing/latest/trustarc/trustecm/js/trustecm-functional.js" class="trustecm" data-tracker-type="functional"></script> <script data-src="https://static.redhat.com/libs/redhat/marketing/latest/trustarc/trustecm/js/trustecm-advertising.js" class="trustecm" data-tracker-type="advertising"></script> <script type="text/html" id="x-survey-checkbox-item"> <div data-bind="css: question.getItemClass(item) "> <label data-bind="css: question.getLabelClass(item)"> <!-- ko if: item == question.selectAllItem --> <input type="checkbox" data-bind="attr: {name: question.name, id: question.inputId + '_' + question.getItemIndex(item), 'aria-required': question.isRequired, 'aria-label': item.locText.renderedHtml }, checked: question.koAllSelected, enable: !question.isReadOnly, css: question.koCss().itemControl"/> <!-- /ko --> <!-- ko if: item != question.selectAllItem --> <input type="checkbox" data-bind="attr: {name: question.name, id: question.inputId + '_' + question.getItemIndex(item), 'aria-required': question.isRequired, 'aria-label': item.locText.renderedHtml }, checkedValue: item.value, checked: question.koValue, enable: !question.isReadOnly && item.isEnabled, css: question.koCss().itemControl"/> <!-- /ko --> <span data-bind="css: question.koCss().materialDecorator"> <svg viewBox="0 0 24 24" data-bind="css: question.koCss().itemDecorator"> <path d="M5,13l2-2l3,3l7-7l2,2l-9,9L5,13z"/> </svg> <span class="check"></span> </span> <span data-bind="visible: !item.hideCaption, css: question.koCss().controlLabel, attr: { title: item.locText.koRenderedHtml }"> <!-- ko template: { name: 'survey-string', data: item.locText } --> <!-- /ko --> </span> </label> item.otherItem:<span data-bind="text: JSON.stringify(question.otherItem)"></span> <!--item.value:<span data-bind="text: item.value"></span> question.otherItem.value:<span data-bind="text: question.otherItem.value"></span>--> <!-- ko if: question.otherItem.value && (item.value == question.otherItem.value) --> <div class="form-group" data-bind="template: { name: 'survey-comment', data: {'question': question, 'visible': question.isOtherSelected } }"></div> <!-- /ko --> </div> </script> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Assessments | Red Hat Inc</title> <meta name="description" content="Red Hat Assessment Platform"> <meta name="robots" content="noindex"> <meta name="viewport" content="width=device-width, initial scale= 1.0"> <meta property="og:title" content="Assessments | Red Hat Inc"> <meta property="og:description" content=""> <link rel="preload" href="/assets/fonts/RedHatText/RedHatText-Regular.woff" as="font" type="font/woff" crossorigin> <link rel="preload" href="/assets/fonts/RedHatText/RedHatText-Medium.woff" as="font" type="font/woff" crossorigin> <link rel="preload" href="/assets/fonts/RedHatDisplay/RedHatDisplay-Regular.woff" as="font" type="font/woff" crossorigin> <link rel="preload" href="/assets/fonts/RedHatDisplay/RedHatDisplay-Medium.woff" as="font" type="font/woff" crossorigin> <link rel="preload" href="/assets/fonts/RedHatDisplay/RedHatDisplay-Bold.woff" as="font" type="font/woff" crossorigin> <link type="text/css" rel="stylesheet" href="/assets/fonts/red-hat-font.css" media="all" /> <link rel="icon" href="/favicon.ico"> <style id="customStyles"> @import "https://www.redhat.com/ux/webdms/css/styles.min.css"; </style> <script src="/assets/js/http.js"></script> <script src="/assets/js/utils.js?v3"></script> <script src="/assets/js/cookies.js"></script> <script src="/assets/js/env.js"></script> <script src="/assets/js/jquery-3.7.1/jquery.min.js"></script> <script src="/assets/js/showdown-1.6.4/showdown.min.js"></script> <script src="/assets/js/surveyjs-1.9.125/survey.jquery.min.js"></script> <!-- <script src="https://unpkg.com/jquery"></script> <script src="/assets/js/survey-jquery-v1.7.12.min.js"></script> <script src="https://unpkg.com/survey-jquery@1.9.0/survey.jquery.min.js"></script> --> <link href="/assets/css/surveyjs-modern-v1.7.12.css" type="text/css" rel="stylesheet"/> <!-- <script src="/assets/js/jquery-v3.6.0.js"></script> <script src="/assets/js/survey-jquery-v1.9.0.min.js"></script> <link href="https://surveyjs.azureedge.net/1.7.12/modern.css" type="text/css" rel="stylesheet"/> <link href="https://unpkg.com/survey-jquery@1.9.0/survey.css" type="text/css" rel="stylesheet"/> <script src="https://unpkg.com/jquery"></script> <script src="https://surveyjs.azureedge.net/1.7.12/survey.jquery.js"></script> --> <!-- v1.9.125--> <!-- <script src="https://unpkg.com/jquery/dist/jquery.min.js"></script> <script src="https://unpkg.com/survey-jquery@1.9.125/survey.jquery.min.js"></script> --> <!-- <script src="https://unpkg.com/survey-jquery@1.9.125/themes/index.min.js"></script> <link href="https://unpkg.com/survey-jquery@1.9.125/defaultV2.min.css" type="text/css" rel="stylesheet"/> --> <link href="/assets/css/survey-progress-panel.css" type="text/css" rel="stylesheet"/> <link href="/assets/css/header.css" type="text/css" rel="stylesheet"/> <link href="/assets/css/style.css?v3" type="text/css" rel="stylesheet"/> <link href="/assets/css/footer.css" type="text/css" rel="stylesheet"/> <script src="/assets/js/bootstrap-slider-v11.0.2.js"></script> <link href="/assets/css/bootstrap-slider-10.0.0.css" rel="stylesheet"/> <script src="/assets/js/surveyjs-widgets-1.7.12.js"></script> </head> <body id="SurveyEngineBody" style="direction: inherit;"> <div id="header"> <div class="navbar-container"> <div class="container"> <div class="row"> <div class="col-md-3" > <a href="//www.redhat.com/" title="Red Hat"><img alt="Red Hat" data-alt-text="Red Hat" class="navbar-logo" src="/assets/images/red-hat_white.svg?t=1537976200708" title="Red Hat" > </a></div> <div class="col-md "> <!-- Language Selector (top right) --> <div class="LanguageSelectorContainer float-right"> <select aria-label="Language" name="Q_lang" id="Q_lang" class="Q_lang" data-runtime-value="runtime.Selected" style="display:none"> <!-- <option value="DE" lang="DE" data-runtime-text="runtime.Language | property 'DE' | property 'DisplayName'">Deutsch</option> <option value="EN" lang="EN" selected data-runtime-text="runtime.Language | property 'EN' | property 'DisplayName'">English</option> --> <!-- <option value="ES-ES" lang="ES-ES" data-runtime-text="runtime.Language | property 'ES-ES' | property 'DisplayName'">Español</option> <option value="FR" lang="FR" data-runtime-text="runtime.Language | property 'FR' | property 'DisplayName'">Français</option> <option value="IT" lang="IT" data-runtime-text="runtime.Language | property 'IT' | property 'DisplayName'">Italiano</option> <option value="PT" lang="PT" data-runtime-text="runtime.Language | property 'PT' | property 'DisplayName'">Português</option> <option value="KO" lang="KO" data-runtime-text="runtime.Language | property 'KO' | property 'DisplayName'">한국어</option> <option value="JA" lang="JA" data-runtime-text="runtime.Language | property 'JA' | property 'DisplayName'">日本語</option> <option value="ZH-S" lang="ZH-S" data-runtime-text="runtime.Language | property 'ZH-S' | property 'DisplayName'">简体中文</option> --> </select> </div> </div> </div> </div> </div> </div> <script> var languageCode="en"; if (languageCode.includes("LANGUAGE_CODE")) languageCode=Utils.getParameterByName("lang"); if (undefined==languageCode || ""==languageCode) languageCode="en"; // default language code var surveyId="RTA"; if (surveyId.includes("SURVEY_ID")) surveyId=Utils.getParameterByName("surveyId"); var secure=""; if (secure.includes("SECURE")) secure=""; //var languageConfigOptions={ // "default":{code:"en",text:"English"}, // "de":{code:"de",text:"Deutsch"}, // "es":{code:"es",text:"Español"} //}; // Action Handlers $("#Q_lang").change(function(sender) { var beforeLanguageCode=languageCode; languageCode=sender.currentTarget.options[sender.currentTarget.selectedIndex].value.toLowerCase(); if (surveyStarted){ survey.locale = languageCode; //survey.render(); generateNavigation(languageCode); // function is located in survey-template.js //navigationSetCurrentState(0, survey.currentPageNo); //window.history.pushState(null, null, window.location.href.replace("/"+beforeLanguageCode, "/"+languageCode)); var find="/"+beforeLanguageCode; var replace="/"+languageCode; var str=window.location.href; var n=str.lastIndexOf(find); var newUrl=str.slice(0,n)+str.slice(n).replace(find,replace); window.history.pushState(null, null, newUrl); //window.history.pushState(null, null, window.location.href.replace("/"+surveyId+"/"+beforeLanguageCode, "/"+surveyId+"/"+languageCode)); //e.preventDefault(); } }); function getVisitorId(key){ // Assign the visitor a unique ID if (undefined==Cookie.get(key) || ""==Cookie.get(key)){ Cookie.set(key, Cookie.uuid(), 30); }else{ var c=Cookie.get(key); console.log("Welcome back: "+c); } return Cookie.get(key); } function loadLanguageOptionsControl(questionConfig){ var questionLanguages=questionConfig["completedHtml"]?questionConfig["completedHtml"]:questionConfig["completeText"]; if (undefined!=questionLanguages && questionLanguages["default"]){ // then we have languages we need to parse var qLang=""; Http.httpGetObject(env.server+"/api/surveys/"+surveyId+"/languages", function(status, languages){ //Http.httpGetObject(env.server+"/api/surveys/"+surveyId+"/customfield/v2/languages", function(status, languages){ var languageOptionsMap={}; for(i in languages) languageOptionsMap[languages[i]["code"]]=languages[i]; // convert to a map with langCode as key for(i in questionLanguages){ if ("default"==i) i="en"; // en is always the default language var languageOption=languageOptionsMap[i]; qLang+=`<option value="`+languageOption.code+`" lang="`+languageOption.code+`" `+(languageCode==languageOption.code?"selected":"")+` data-runtime-text="runtime.Language | property '`+languageOption.code+`' | property 'DisplayName'">`+languageOption.name+`</option>`; } $("#Q_lang").html(qLang); $("#Q_lang").show(); }); }else{ // no languages, remove the control $("#Q_lang").remove(); } // // load language options here? // var questionLanguages=questionConfig["completedHtml"]?questionConfig["completedHtml"]:questionConfig["completeText"]; // if (undefined!=questionLanguages && questionLanguages["default"]){ // then we have languages we need to parse // var languageOptions=[]; // for (lang in questionLanguages) languageOptions.push(languageConfigOptions[lang]); // var qLang=""; // for(i in languageOptions){ // if (undefined!=languageOptions[i]) // qLang+=`<option value="`+languageOptions[i].code+`" lang="`+languageOptions[i].code+`" `+(languageCode==languageOptions[i].code?"selected":"")+` data-runtime-text="runtime.Language | property '`+languageOptions[i].code+`' | property 'DisplayName'">`+languageOptions[i].text+`</option>`; // } // $("#Q_lang").html(qLang); // $("#Q_lang").show(); // // }else{ // // no languages, remove the control // $("#Q_lang").remove(); // } } $(document).ready(function() { visitorId=getVisitorId("rh_cat_visitorId"); if (undefined==surveyId){ // $("#surveyElement").html("<center><h3>Red Hat Assessment Platform</h3>The Red Hat assessment platform hosts a number of assessments. You need to have the direct link to the respective assessment to see it.<br/><br/></center>"); displayError("The Red Hat assessment platform hosts a number of assessments. You need to have the direct link to the respective assessment to see it"); }else if ((surveyId+languageCode).includes("INVALID")){ //$("#surveyElement").html("<center><h3>Red Hat Assessment Platform</h3><b>Error:</b> The assessment id or language code was invalid - please check the your link.<br/><br/></center>"); displayError("The assessment id or language code was invalid - please check the your link"); }else{ startSurvey(); } }); function displayError(msg){ $("#surveyElement").html("<center><h3>Red Hat Assessment Platform</h3>"+msg+"<br/><br/></center>"); } </script> <div style="position:absolute; left: 0px;"> <!-- // 2022-01 had to remove these (then put them back) because it was affecting changing language reloading custom fields, but not sure what we lost by commenting these // 2022-08-25 - decided to move them local again and deal with language issues later. although the latest libs may not have the same issue. sadly i didnt describe the issue clearly previously to know <script src="/assets/js/knockout-3.4.0.min.js"></script> <script src="/assets/js/survey.ko-1.7.15.js"></script> --> <!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.5.1/knockout-latest.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/survey-knockout/1.8.79/survey.ko.min.js"></script> --> <script src="/assets/js/knockout-3.5.1.min.js"></script> <script src="/assets/js/survey.ko-1.8.79.min.js"></script> <!--button onclick="$('#debug').html(JSON.stringify(survey.data, null, 2));">debug</button--> <pre id="debug" ></pre> </div> <section id="xsurvey" class=" py-0"> <div class="container"> <div class="row"> <div class="col-md-3"> <div id="surveyNavigation"></div> </div> <div id="survey-wrapper" class="col-md-9"> <div id="surveyElement" class="surveyStyle"></div> <div id="surveyResult"></div> </div> </div> </div> </section> <script> //var surveyId; //var secure; var visitorId; var surveyStarted=false; var resultId; function startSurvey() { loadSurvey(); if (Utils.getParameterByName("resultId")){ resultId=Utils.getParameterByName("resultId"); loadResults(); } } function loadSurvey() { loadSurveyOverrides(); loadCssResources(); var surveyJsUrl=env.server+"/api/surveys/"+(secure!=""?secure+"/":"")+surveyId+"/survey-config.js"; // request a new assessment var surveyJSElement=document.createElement('script'); surveyJSElement.src=surveyJsUrl; document.getElementsByTagName('head')[0].appendChild(surveyJSElement); surveyStarted=true; } function loadSurveyOverrides(){ var url="/assets/js/surveyjs-template-overrides-1.7.12.js"; var e=document.createElement('script'); e.src=url; document.getElementsByTagName('head')[0].appendChild(e); } function loadCssResources(){ // this should load css files configured in the assessment resources Http.httpGetObject(env.server+"/api/surveys/"+surveyId+"/resources", function(status, resources){ for(i in resources){ if (resources[i]["path"].endsWith(".css")){ loadCSS(resources[i]["path"]); } } }); } function loadResults(){ console.log("loadResults:: resultId="+resultId); if (typeof survey != 'undefined') { console.log("loadResults:: found survey"); Http.httpGetObject(env.server+"/api/surveys/"+surveyId+"/results/"+resultId, function(status, answers){ survey.data=answers; survey.mode='display'; $(".sv_page_title").prepend("<span style='color:#c10000'>Read-only view of provided answers</span><br/><br/>"); }); }else{ console.log("loadResults:: survey not loaded yet"); setTimeout(loadResults, 1000); } } </script> <div id="footer"> <script> $(document).ready(function(){ $("#copyright-year").html(new Date().getFullYear()); }); </script> <footer class="footerStyle"> <div class="container"> <div class="row"> <div class="col-md-3"><a href="//www.redhat.com/" target="_blank" ><img alt="Red Hat" class="img-fluid" src="/assets/images/red-hat_white.svg" style="height: 34px !important;" href="//www.redhat.com/"></a></div> <div class="col-md-3 copyrightStyle"> <p>Copyright © <span id="copyright-year">2020</span> <span class="text-nowrap">Red Hat, Inc.</span></p> </div> <div class="col-md"> <nav class="nav"> <a class="nav-link" target="_blank" href="https://www.redhat.com/en/about/privacy-policy" >Privacy statement</a> <span class ="rightBorder"></span> <a class="nav-link" target="_blank" href="https://www.redhat.com/en/about/terms-use">Terms of use</a> <span class ="rightBorder"></span> <a class="nav-link" target="_blank" href="https://www.redhat.com/en/about/all-policies-guidelines">All policies and guidelines</a> <span class ="rightBorder"></span> <span id="teconsent" style="line-height: 32px;"></span> </nav> </div> </div> </div> </footer> </div> <div id="consent_blackbar" style="position: fixed;bottom: 0;width: 100%;z-index: 5;padding: 10px;"></div> <!-- DPAL tracking --> <script type="text/javascript"> // if (("undefined" !== typeof _satellite) && ("function" === typeof _satellite.pageBottom)) { // _satellite.pageBottom(); // } </script> </body> </html>