reg.experiences.redhat.com Open in urlscan Pro
54.213.45.42  Public Scan

URL: https://reg.experiences.redhat.com/flow/redhat/sum23/regGenAttendee/login?sc_cid=7013a000003DOdfAAG&elqTrackId=fb4a2b0d4e1e479bae71...
Submission: On April 26 via api from US — Scanned from DE

Form analysis 1 forms found in the DOM

POST

<form method="post" action="" id="login-form" data-test="login-form">
  <div class="rf-input"> <label for="4dd136d4-48ad-48bb-ae50-4e1d789dce07" class="rf-label" data-test="rf-text-input-label-login-email"><span class="label-text" data-test="rf-form-element-label">Email</span><span class="rf-req"
        data-test="rf-form-element-label-required">*</span></label> <input id="4dd136d4-48ad-48bb-ae50-4e1d789dce07" name="email" data-smart-validate-input="" data-required="" data-email="" data-message-required="Please enter your email address"
      data-message-email="Please enter a VALID email address" required="" data-test="rf-text-input-node-login-email" aria-invalid="false" aria-required="true" value=""></div>
  <div class="rf-input"> <label for="41a1d53a-5ec0-42c5-86e3-4d699d85c59b" class="rf-label" data-test="rf-text-input-label-password"><span class="label-text" data-test="rf-form-element-label">Password</span><span class="rf-req"
        data-test="rf-form-element-label-required">*</span></label> <input id="41a1d53a-5ec0-42c5-86e3-4d699d85c59b" type="password" name="password" data-smart-validate-input="" data-required="" data-minlength="3" data-maxnlength="20"
      data-message="Please enter your email and password" required="" data-test="rf-text-input-node-password" aria-invalid="false" aria-required="true" value=""></div>
  <div class="login-submit-frame"><button class="mdBtnR mdBtnR-primary full-width" type="submit" data-test="rf-button-button-login"><span data-test="button-text" class="mdBtnR-text">Login</span>
    </button><a tabindex="0" data-test="forgot-password-link" ui-sref="forgotPassword" role="button" aria-haspopup="dialog">Forgot password?</a></div>
</form>

Text Content

LOGIN PAGE


LOGIN

Email*
Password*
Login Forgot password?


NEW USERS

Please create an account for Red Hat Summit 2023 by clicking the button below.

 

*If you created an account for Red Hat Summit 2022 or AnsibleFest 2022, a new
account is not needed and your existing login credentials can be used.



Create Account



// v2 var INTERVAL_DELAY = 100; var MAX_INTERVAL_ITERATIONS = 150; // 15s at
100ms intervals var FORM_ID = 'myDynamicForm'; var rfLocale = window.rfLocale ||
{ lang: 'en', region: 'US' }; // Only set the initial NC value once. var
initialNCValueSet = false; // Flag to add event listener for Certfication id var
initialCertIdListener = false; //updated and verified based on IBM Optin Country
list, Nov 2021 var countryOptInMap = { AE: { email: 'opt-out', }, AF: { email:
'opt-out', }, AS: { email: 'opt-out', }, BD: { email: 'opt-out', }, BH: { email:
'opt-out', }, BN: { email: 'opt-out', }, BO: { email: 'opt-out', }, BT: { email:
'opt-out', }, BZ: { email: 'opt-out', }, CC: { email: 'opt-out', }, CI: { email:
'opt-out', }, CK: { email: 'opt-out', }, CL: { email: 'opt-out', }, CR: { email:
'opt-out', }, CX: { email: 'opt-out', }, DO: { email: 'opt-out', }, EC: { email:
'opt-out', }, EG: { email: 'opt-out', }, ET: { email: 'opt-out', }, FJ: { email:
'opt-out', }, FM: { email: 'opt-out', }, GF: { email: 'opt-out', }, GP: { email:
'opt-out', }, GT: { email: 'opt-out', }, GU: { email: 'opt-out', }, HK: { email:
'opt-out', }, HM: { email: 'opt-out', }, HN: { email: 'opt-out', }, HT: { email:
'opt-out', }, IN: { email: 'opt-out', }, IQ: { email: 'opt-out', }, JM: { email:
'opt-out', }, JO: { email: 'opt-out', }, KH: { email: 'opt-out', }, KI: { email:
'opt-out', }, KW: { email: 'opt-out', }, LA: { email: 'opt-out', }, LB: { email:
'opt-out', }, LC: { email: 'opt-out', }, LK: { email: 'opt-out', }, MC: { email:
'opt-out', }, MH: { email: 'opt-out', }, MM: { email: 'opt-out', }, MN: { email:
'opt-out', }, MO: { email: 'opt-out', }, MP: { email: 'opt-out', }, MQ: { email:
'opt-out', }, MU: { email: 'opt-out', }, MV: { email: 'opt-out', }, MX: { email:
'opt-out', }, NF: { email: 'opt-out', }, NI: { email: 'opt-out', }, NP: { email:
'opt-out', }, NR: { email: 'opt-out', }, NU: { email: 'opt-out', }, OM: { email:
'opt-out', }, PA: { email: 'opt-out', }, PG: { email: 'opt-out', }, PM: { email:
'opt-out', }, PR: { email: 'opt-out', }, PS: { email: 'opt-out', }, PW: { email:
'opt-out', }, PY: { email: 'opt-out', }, RE: { email: 'opt-out', }, SB: { email:
'opt-out', }, SV: { email: 'opt-out', }, TF: { email: 'opt-out', }, TK: { email:
'opt-out', }, TL: { email: 'opt-out', }, TO: { email: 'opt-out', }, TV: { email:
'opt-out', }, TW: { email: 'opt-out', }, TZ: { email: 'opt-out', }, US: { email:
'opt-out', }, UY: { email: 'opt-out', }, VE: { email: 'opt-out', }, VI: { email:
'opt-out', }, WS: { email: 'opt-out', }, YE: { email: 'opt-out', }, }; //new as
of 11-Jan-23 JKW //change amp; to && in both places --JKW function
setCheckbox(box, value) { if (!(!box.checked || value) || !(box.checked ||
!value)) // if ((box.checked && !value) || (!box.checked && value)) box.click();
} //242 needs to be 16567043433000010fZB not 1603837935923002p7c8 function
simulateClick(elementId) { var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false,
false, false, 0, null); var element = document.getElementById(elementId); var
canceled = !element.dispatchEvent(evt); if(canceled) { // A handler called
preventDefault alert("unchecked"); } else { // None of the handlers called
preventDefault alert("checked"); } } function applyNoticeChoice(e) { var
selectedCountry = e.target.value; var notifyMeBox =
document.getElementById('opt-1603837935923001pcr7'); var doNotNotifyMeBox =
document.getElementById('opt-16567043433000010fZB'); var countryDefaults =
countryOptInMap[selectedCountry] || { email: '', }; //opt-in means do not
contact me is chosen by default. opt-out means you can contact me is chosen by
default setTimeout(function () { if(countryDefaults.email)
setCheckbox(notifyMeBox, true); else { console.log('Testing', new Date()); //
notifyMeBox.checked = false; // doNotNotifyMeBox.checked = false; //
setCheckbox(notifyMeBox, false); // setCheckbox(doNotNotifyMeBox, false); // if
(notifyMeBox.checked) simulateClick(notifyMeBox); // if
(doNotNotifyMeBox.checked) simulateClick(doNotNotifyMeBox); if
(notifyMeBox.checked) { //-------setNativeValue let lastValue =
notifyMeBox.checked; notifyMeBox.checked = false; notifyMeBox.value = false; let
event = new Event("change", { target: notifyMeBox, bubbles: true }); // let
tracker = notifyMeBox._valueTracker; // if (tracker) { //
tracker.setValue(lastValue); // } notifyMeBox.dispatchEvent(event); //------- }
if (doNotNotifyMeBox.checked) { //-------setNativeValue let lastValue2 =
doNotNotifyMeBox.checked; doNotNotifyMeBox.checked = false;
doNotNotifyMeBox.value = false; let event2 = new Event("change", { target:
doNotNotifyMeBox, bubbles: true }); // let tracker2 =
doNotNotifyMeBox._valueTracker; // if (tracker2) { //
tracker.setValue(lastValue2); // } doNotNotifyMeBox.dispatchEvent(event2);
//------- } }}); } function removeCertificationNumberMessage(event) { const
messageContainer = document.getElementById('wf-1603923186460001otqg'); const
messageDiv = messageContainer.children[0]; const messageSpan =
document.querySelector('.form-element-feedback'); if (messageSpan)
messageDiv.removeChild(messageSpan); } function
validateCertificationNumber(event) { const messageContainer =
document.getElementById('wf-1603923186460001otqg'); const messageDiv =
messageContainer.children[0]; var messageSpan = null; if (event.target.value) {
messageSpan = document.createElement('span');
messageDiv.appendChild(messageSpan);
messageSpan.classList.add('form-element-feedback');
messageSpan.classList.add('success-feedback'); messageSpan.textContent =
'Validating...'; var submitButton = document.getElementById('wf-btn-submit');
var submitButtonParent = submitButton.parentNode; var tempButton =
document.createElement('button'); tempButton.className = 'mdBtnR
mdBtnR-primary'; var textTempButton = document.createElement('span');
textTempButton.innerText = 'Continue'; textTempButton.className = 'mdBtnR-text';
tempButton.append(textTempButton); submitButtonParent.append(tempButton);
tempButton.addEventListener('click', function(e){ e.preventDefault();
e.stopPropagation(); }); submitButton.style.display = 'none'; try {
fetch(`https://reg.experiences.redhat.com/flow/redhatRedirect?certificationId=${event.target.value}`).then(function
(response) { return response.json(); }).then(function (data) { if
(data.data.responseCode === '0') { messageSpan.textContent = 'Username has been
accepted'; } else { messageDiv.classList.add('rf-error');
messageSpan.classList.remove('success-feedback');
messageSpan.classList.add('error-feedback'); messageSpan.textContent = 'Username
is not valid'; var certificationNumberInput =
document.getElementById("1603923186460001otqg"); //-------setNativeValue let
lastValue = certificationNumberInput.value; certificationNumberInput.value = '';
let event = new Event("input", { target: certificationNumberInput, bubbles: true
}); // React 15 // event.simulated = true; // React 16 let tracker =
certificationNumberInput._valueTracker; if (tracker) {
tracker.setValue(lastValue); } certificationNumberInput.dispatchEvent(event);
//------- } submitButton.style.display = 'block'; tempButton.remove(); }); }
catch(err) { console.log(err); } } } //change => to > /** * options: { *
enableLogs: Boolean, * intervalFrequency: Number, * logIdentifier: String, *
maxIterations: Number, * onSuccess: () => void, * successCheck: () => Boolean, *
} */ function waitForX(options) { var log = function log() { if
(options.enableLogs) console.log.apply(console, arguments); }; var logSuffix =
options.logIdentifier ? ' -- [' + options.logIdentifier + ']' : ''; var
intervalFrequency = options.intervalFrequency || 100; var maxIterations =
options.maxIterations || 100; // Do 1 immediate check before the interval
starts. if (options.successCheck()) { log('SUCCESS (immediate), no interval
needed' + logSuffix); options.onSuccess(); return; } log('every ' +
intervalFrequency + 'ms, for ' + intervalFrequency * maxIterations + 'ms' +
logSuffix); var iterations = 0; var waitTimer = window.setInterval(function () {
if (options.successCheck.apply(options)) { log('SUCCESS, waited: ' +
((iterations + 1) * intervalFrequency) + 'ms (' + (iterations + 1) + '
iterations)' + logSuffix); options.onSuccess.apply(options);
window.clearInterval(waitTimer); log('cleared interval' + logSuffix); } if
(Math.max(iterations, maxIterations) === iterations) { // if (iterations >=
maxIterations) { log('TIMED OUT' + logSuffix); // Safety net to ensure this
interval won't run forever. window.clearInterval(waitTimer); log('cleared
interval' + logSuffix); } iterations++; }, options.intervalFrequency); }
//Script Created/modified by Robbie D 2-FEB-22 //Opt-in list modified by Joshua
Wright 4-FEB-2022 // && modification of comments - 01/09/2023
var pageCodes = ['regSurvey', 'attendeeInfo']; if
(pageCodes.includes(data.page)) { //Modified so this will run for all places in
which the Global Opt-In attribute will run. //(data.page === 'contactInfo' ||
data.page === 'createaccount' || data.page === 'attendeeInfo' ||data.page
==='attendeepage2') { waitForX({ intervalFrequency: INTERVAL_DELAY,
maxIterations: MAX_INTERVAL_ITERATIONS, onSuccess: function () { var
countrySelectBox = document.querySelector('#formAttendee-countryId'); if
(document.getElementById('1603923186460001otqg')) { // case when the user goes
back from the Orders page to the form again or when the form has been visited
once var certificationNumberInput =
document.getElementById('1603923186460001otqg');
certificationNumberInput.addEventListener('blur', validateCertificationNumber);
certificationNumberInput.addEventListener('focus',
removeCertificationNumberMessage); } else { // first time visiting the form var
certificationRadioButton = document.getElementById('opt-1603923159004001oiI5');
if (certificationRadioButton) {
certificationRadioButton.addEventListener('click', function () {
setTimeout(function(){ var certificationNumberInput =
document.getElementById('1603923186460001otqg');
certificationNumberInput.addEventListener('blur', validateCertificationNumber);
certificationNumberInput.addEventListener('focus',
removeCertificationNumberMessage); },0); }); } } if (countrySelectBox) { if
(!initialNCValueSet) { initialNCValueSet = true; applyNoticeChoice({ target:
countrySelectBox }); } countrySelectBox.addEventListener('change',
applyNoticeChoice); } }, successCheck: function () { return
document.querySelector('#' + FORM_ID); }, }); }

/** * options: { * enableLogs: Boolean, * intervalFrequency: Number, *
logIdentifier: String, * maxIterations: Number, * onSuccess: () => void, *
successCheck: () => Boolean, * } */ function waitForX(options) { var log =
function log() { if (options.enableLogs) console.log.apply(console, arguments) }
var logSuffix = options.logIdentifier ? ' -- [' + options.logIdentifier + ']' :
'' var intervalFrequency = options.intervalFrequency || 100 var maxIterations =
options.maxIterations || 100 // Do 1 immediate check before the interval starts.
if (options.successCheck()) { log('SUCCESS (immediate), no interval needed' +
logSuffix) options.onSuccess() return; } log('every ' + intervalFrequency + 'ms,
for ' + intervalFrequency * maxIterations + 'ms' + logSuffix) var iterations = 0
var waitTimer = window.setInterval(function () { if
(options.successCheck.apply(options)) { log('SUCCESS, waited: ' + ((iterations +
1) * intervalFrequency) + 'ms (' + (iterations + 1) + ' iterations)' +
logSuffix) options.onSuccess.apply(options) window.clearInterval(waitTimer);
log('cleared interval' + logSuffix) } if (iterations >= maxIterations) {
log('TIMED OUT' + logSuffix) // Safety net to ensure this interval won't run
forever. window.clearInterval(waitTimer) log('cleared interval' + logSuffix) }
iterations++ }, options.intervalFrequency) } var autocompleteScript =
document.createElement('script') autocompleteScript.src =
'https://api.demandbase.com/autocomplete/widget.js'
document.body.appendChild(autocompleteScript)
var DEMANDBASE_FORM_SCRIPT_ID = 'demandbaseFormScript' if (data.page !== null) {
waitForX({ intervalFrequency: 100, maxIterations: 150, onSuccess: function () {
if (!document.querySelector('#' + DEMANDBASE_FORM_SCRIPT_ID)) { var formScript =
document.createElement('script') formScript.src =
'https://events.rainfocus.com/pages/redhat/global/demandbaseform' formScript.id
= DEMANDBASE_FORM_SCRIPT_ID document.body.appendChild(formScript) } else { //
This is terrible, but it's the only way to re-initialize the autocomplete on a
SPA. // Fortunately, it is an uncommon use case.
window.Demandbase.CompanyAutocomplete.setup = false
window.Demandbase.CompanyAutocomplete.initialized = false
window.DemandbaseForm.formConnector.form =
document.querySelector('#myDynamicForm')
window.DemandbaseForm.formConnector.init() } }, successCheck: function () {
return document.querySelector('#formAttendee-companyname'); }, }); }


RED HAT LEGAL AND PRIVACY LINKS

 * About Red Hat
 * Jobs
 * Events
 * Locations
 * Contact Red Hat
 * Red Hat Blog
 * Diversity, equity, and inclusion
 * Cool Stuff Store
 * Red Hat Summit

© 2023 Red Hat, Inc.


RED HAT LEGAL AND PRIVACY LINKS

 * Privacy statement
 * Terms of use
 * All policies and guidelines
 * Digital accessibility