1 <!DOCTYPE html> 2<html lang="en-US"> 3 <head> 4 <meta http-equiv="X-UA-Compatible" content="IE=edge"/> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=1"/> 6 <meta http-equiv="content-type" content="text/html;charset=UTF-8" /> 7 <meta http-equiv="cache-control" content="no-cache,no-store"/> 8 <meta http-equiv="pragma" content="no-cache"/> 9 <meta http-equiv="expires" content="-1"/> 10 <meta name='mswebdialog-title' content='Connecting to Mohawk College'/> 11 12 <title>Sign In</title> 13
13<script type='text/javascript'> 14//<![CDATA[ 15function LoginErrors(){this.userNameFormatError = 'Enter your user ID in the format \u0026quot;domain\\user\u0026quot; or \u0026quot;user@domain\u0026quot;.'; this.passwordEmpty = 'Enter your password.'; this.passwordTooLong = 'Password is too long (\u0026gt; 128 characters).';}; var maxPasswordLength = 128; 16//]]> 17</script>
17 18
19<script type='text/javascript'> 20//<![CDATA[ 21// Copyright (c) Microsoft Corporation. All rights reserved. 22function InputUtil(errTextElementID, errDisplayElementID) { 23 24 if (!errTextElementID) errTextElementID = 'errorText'; 25 if (!errDisplayElementID) errDisplayElementID = 'error'; 26 27 this.hasFocus = false; 28 this.errLabel = document.getElementById(errTextElementID); 29 this.errDisplay = document.getElementById(errDisplayElementID); 30}; 31InputUtil.prototype.canDisplayError = function () { 32 return this.errLabel && this.errDisplay; 33} 34InputUtil.prototype.checkError = function () { 35 if (!this.canDisplayError){ 36 throw new Error ('Error element not present'); 37 } 38 if (this.errLabel && this.errLabel.innerHTML) { 39 this.errDisplay.style.display = ''; 40 var cause = this.errLabel.getAttribute('for'); 41 if (cause) { 42 var causeNode = document.getElementById(cause); 43 if (causeNode && causeNode.value) { 44 causeNode.focus(); 45 this.hasFocus = true; 46 } 47 } 48 } 49 else { 50 this.errDisplay.style.display = 'none'; 51 } 52}; 53InputUtil.prototype.setInitialFocus = function (input) { 54 if (this.hasFocus) return; 55 var node = document.getElementById(input); 56 if (node) { 57 if ((/^\s*$/).test(node.value)) { 58 node.focus(); 59 this.hasFocus = true; 60 } 61 } 62}; 63InputUtil.prototype.setError = function (input, errorMsg) { 64 if (!this.canDisplayError) { 65 throw new Error('Error element not present'); 66 } 67 input.focus(); 68 69 if (errorMsg) { 70 this.errLabel.innerHTML = errorMsg; 71 } 72 this.errLabel.setAttribute('for', input.id); 73 this.errDisplay.style.display = ''; 74}; 75InputUtil.makePlaceholder = function (input) { 76 var ua = navigator.userAgent; 77 78 if (ua != null && 79 (ua.match(/MSIE 9.0/) != null || 80 ua.match(/MSIE 8.0/) != null || 81 ua.match(/MSIE 7.0/) != null)) { 82 var node = document.getElementById(input); 83 if (node) { 84 var placeholder = node.getAttribute("placeholder"); 85 if (placeholder != null && placeholder != '') { 86 var label = document.createElement('input'); 87 label.type = "text"; 88 label.value = placeholder; 89 label.readOnly = true; 90 label.style.position = 'absolute'; 91 label.style.borderColor = 'transparent'; 92 label.className = node.className + ' hint'; 93 label.tabIndex = -1; 94 label.onfocus = function () { this.nextSibling.focus(); }; 95 96 node.style.position = 'relative'; 97 node.parentNode.style.position = 'relative'; 98 node.parentNode.insertBefore(label, node); 99 node.onkeyup = function () { InputUtil.showHint(this); }; 100 node.onblur = function () { InputUtil.showHint(this); }; 101 node.style.background = 'transparent'; 102 103 node.setAttribute("placeholder", ""); 104 InputUtil.showHint(node); 105 } 106 } 107 } 108}; 109InputUtil.focus = function (inputField) { 110 var node = document.getElementById(inputField); 111 if (node) node.focus(); 112}; 113InputUtil.hasClass = function(node, clsName) { 114 return node.className.match(new RegExp('(\\s|^)' + clsName + '(\\s|$)')); 115}; 116InputUtil.addClass = function(node, clsName) { 117 if (!this.hasClass(node, clsName)) node.className += " " + clsName; 118}; 119InputUtil.removeClass = function(node, clsName) { 120 if (this.hasClass(node, clsName)) { 121 var reg = new RegExp('(\\s|^)' + clsName + '(\\s|$)'); 122 node.className = node.className.replace(reg, ' '); 123 } 124}; 125InputUtil.showHint = function (node, gotFocus) { 126 if (node.value && node.value != '') { 127 node.previousSibling.style.display = 'none'; 128 } 129 else { 130 node.previousSibling.style.display = ''; 131 } 132}; 133InputUtil.updatePlaceholder = function (input, placeholderText) { 134 var node = document.getElementById(input); 135 if (node) { 136 var ua = navigator.userAgent; 137 if (ua != null && 138 (ua.match(/MSIE 9.0/) != null || 139 ua.match(/MSIE 8.0/) != null || 140 ua.match(/MSIE 7.0/) != null)) { 141 var label = node.previousSibling; 142 if (label != null) { 143 label.value = placeholderText; 144 } 145 } 146 else { 147 node.placeholder = placeholderText; 148 } 149 } 150}; 151 152//]]> 153</script>
153 154 155 156 157 <link rel="stylesheet" type="text/css" href="/adfs/portal/css/style.css?id=9FE1CFCE271E4A44D406707615DDE4DA637CC90ED1A1B814AC7EA8E358DAD1AC" /><style>.illustrationClass {background-image:url(/adfs/portal/illustration/illustration.png?id=B374F40D75BB8F6BAB1C0D5FFF20BD4E7E499849A92AFDA1C6EE8EEF6B7BA82A);}</style> 158 159 </head> 160 <body dir="ltr" class="body"> 161 <div id="noScript" style="position:static; width:100%; height:100%; z-index:100"> 162 <h1>JavaScript required</h1> 163 <p>JavaScript is required. This web browser does not support JavaScript or JavaScript in this web browser is not enabled.</p> 164 <p>To find out if your web browser supports JavaScript or to enable JavaScript, see web browser help.</p> 165 </div> 166
166<script type="text/javascript" language="JavaScript"> 167 document.getElementById("noScript").style.display = "none"; 168 </script>
168 169 <div id="fullPage"> 170 <div id="brandingWrapper" class="float"> 171 <div id="branding"></div> 172 </div> 173 <div id="contentWrapper" class="float"> 174 <div id="content"> 175 <div id="header"> 176 <img class='logoImage' id='companyLogo' src='/adfs/portal/logo/logo.png?id=9238228972D6C1CB508A5D53E6F76A8D34D61A9B319990D2CC1FBCD4CAE9D0FB' alt='Mohawk College'/> 177 </div> 178 <main> 179 <div id="workArea"> 180 181 <div id="authArea" class="groupMargin"> 182 183 184 185 <div id="loginArea"> 186 <div id="loginMessage" class="groupMargin">Sign in with your organizational account</div> 187 188 <form method="post" id="loginForm" autocomplete="off" novalidate="novalidate" onKeyPress="if (event && event.keyCode == 13) Login.submitLoginRequest();" action="/adfs/ls/?SAMLRequest=jZFBTwIxEIXvJPyHTe9su7WAbYBkAxcSvIBy8GJqmXU37rbYaUX%2FvXXFKBdjMnOZyTd5780MddfyoypjqO0WXiJgyN661qL62sxJ9FY5jQ0qqztAFYzalTcbxXOmjt4FZ1xLfjN%2FIxoRfGicJdl6NSfNoeB8UjEj9bQYC2GmkoGZVJKJw9VUCMlJtgePCZiTxCcKMcLaYtA2pBHjkxGTIy5umVTFdap7kq2Sjcbq0FN1CEdUlOpDhdp7%2FV5BkXeu1qfnJL2FJ8iN7re0RUqy8lvh0lmMHfgd%2BNfGwN1283MMwUQPeXDR1BZCnpouuSjk%2BMFZOMEj%2FYz0TCItDZLFcJBlsz4i1Zvwi39fm9ELbjg4Dy4%2Ft%2FgA&RelayState=SURVy9gCL4E-Nemi4YumrAuP&client-request-id=39433beb-f588-4e87-7c7c-0080010000d5" > 189 <div id="error" class="fieldMargin error smallText"> 190 <span id="errorText" for="" aria-live="assertive" role="alert"></span> 191 </div> 192 193 <div id="formsAuthenticationArea"> 194 <div id="userNameArea"> 195 <label id="userNameInputLabel" for="userNameInput" class="hidden">User Account</label> 196 <input id="userNameInput" name="UserName" type="email" value="" tabindex="1" class="text fullWidth" 197 spellcheck="false" placeholder="[email protected]" autocomplete="off"/> 198 </div> 199 200 <div id="passwordArea"> 201 <label id="passwordInputLabel" for="passwordInput" class="hidden">Password</label> 202 <input id="passwordInput" name="Password" type="password" tabindex="2" class="text fullWidth" 203 placeholder="Password" autocomplete="off"/> 204 </div> 205 <div id="kmsiArea" style="display:none"> 206 <input type="checkbox" name="Kmsi" id="kmsiInput" value="true" tabindex="3" /> 207 <label for="kmsiInput">Keep me signed in</label> 208 </div> 209 <div id="submissionArea" class="submitMargin"> 210 <span id="submitButton" class="submit" tabindex="4" role="button" 211 onKeyPress="if (event && event.keyCode == 32) Login.submitLoginRequest();" 212 onclick="return Login.submitLoginRequest();">Sign in</span> 213 </div> 214 </div> 215 <input id="optionForms" type="hidden" name="AuthMethod" value="FormsAuthentication"/> 216 </form> 217 218 <div id="authOptions"> 219 <form id="options" method="post" action="https://adfsarrayfe1.mohawkcollege.ca:443/adfs/ls/?SAMLRequest=jZFBTwIxEIXvJPyHTe9su7WAbYBkAxcSvIBy8GJqmXU37rbYaUX%2FvXXFKBdjMnOZyTd5780MddfyoypjqO0WXiJgyN661qL62sxJ9FY5jQ0qqztAFYzalTcbxXOmjt4FZ1xLfjN%2FIxoRfGicJdl6NSfNoeB8UjEj9bQYC2GmkoGZVJKJw9VUCMlJtgePCZiTxCcKMcLaYtA2pBHjkxGTIy5umVTFdap7kq2Sjcbq0FN1CEdUlOpDhdp7%2FV5BkXeu1qfnJL2FJ8iN7re0RUqy8lvh0lmMHfgd%2BNfGwN1283MMwUQPeXDR1BZCnpouuSjk%2BMFZOMEj%2FYz0TCItDZLFcJBlsz4i1Zvwi39fm9ELbjg4Dy4%2Ft%2FgA&RelayState=SURVy9gCL4E-Nemi4YumrAuP&client-request-id=39433beb-f588-4e87-7c7c-0080010000d5"> 220
220<script type="text/javascript"> 221 function SelectOption(option) { 222 var w = document.getElementById('waitingWheelDiv'); 223 if(w) w.style.display = 'inline'; 224 var i = document.getElementById('optionSelection'); 225 i.value = option; 226 document.forms['options'].submit(); 227 return false; 228 } 229 </script>
229 230 <input id="optionSelection" type="hidden" name="AuthMethod" /> 231 <input id="userNameInputOptionsHolder" name="UserName" value="" type="hidden"/> 232 <div id='authOptionLinks' class='groupMargin'><div id="waitingWheelDiv" style="display: none;"><div id="WaitingWheel"> 233 <!-- NOTE: This style portion is identical to cookie pull page, they are not in shared css file because of legacy dependancies for custom themes--> 234 <!-- CSS for small "waiting" wheel --> 235 <style> 236 #floatingCirclesG { 237 position: relative; 238 width: 125px; 239 height: 125px; 240 margin: auto; 241 transform: scale(0.4); 242 -o-transform: scale(0.4); 243 -ms-transform: scale(0.4); 244 -webkit-transform: scale(0.4); 245 -moz-transform: scale(0.4); 246 } 247 248 .f_circleG { 249 position: absolute; 250 height: 22px; 251 width: 22px; 252 border-radius: 12px; 253 -o-border-radius: 12px; 254 -ms-border-radius: 12px; 255 -webkit-border-radius: 12px; 256 -moz-border-radius: 12px; 257 animation-name: f_fadeG; 258 -o-animation-name: f_fadeG; 259 -ms-animation-name: f_fadeG; 260 -webkit-animation-name: f_fadeG; 261 -moz-animation-name: f_fadeG; 262 animation-duration: 1.2s; 263 -o-animation-duration: 1.2s; 264 -ms-animation-duration: 1.2s; 265 -webkit-animation-duration: 1.2s; 266 -moz-animation-duration: 1.2s; 267 animation-iteration-count: infinite; 268 -o-animation-iteration-count: infinite; 269 -ms-animation-iteration-count: infinite; 270 -webkit-animation-iteration-count: infinite; 271 -moz-animation-iteration-count: infinite; 272 animation-direction: normal; 273 -o-animation-direction: normal; 274 -ms-animation-direction: normal; 275 -webkit-animation-direction: normal; 276 -moz-animation-direction: normal; 277 } 278 279 #frotateG_01 { 280 left: 0; 281 top: 51px; 282 animation-delay: 0.45s; 283 -o-animation-delay: 0.45s; 284 -ms-animation-delay: 0.45s; 285 -webkit-animation-delay: 0.45s; 286 -moz-animation-delay: 0.45s; 287 } 288 289 #frotateG_02 { 290 left: 15px; 291 top: 15px; 292 animation-delay: 0.6s; 293 -o-animation-delay: 0.6s; 294 -ms-animation-delay: 0.6s; 295 -webkit-animation-delay: 0.6s; 296 -moz-animation-delay: 0.6s; 297 } 298 299 #frotateG_03 { 300 left: 51px; 301 top: 0; 302 animation-delay: 0.75s; 303 -o-animation-delay: 0.75s; 304 -ms-animation-delay: 0.75s; 305 -webkit-animation-delay: 0.75s; 306 -moz-animation-delay: 0.75s; 307 } 308 309 #frotateG_04 { 310 right: 15px; 311 top: 15px; 312 animation-delay: 0.9s; 313 -o-animation-delay: 0.9s; 314 -ms-animation-delay: 0.9s; 315 -webkit-animation-delay: 0.9s; 316 -moz-animation-delay: 0.9s; 317 } 318 319 #frotateG_05 { 320 right: 0; 321 top: 51px; 322 animation-delay: 1.05s; 323 -o-animation-delay: 1.05s; 324 -ms-animation-delay: 1.05s; 325 -webkit-animation-delay: 1.05s; 326 -moz-animation-delay: 1.05s; 327 } 328 329 #frotateG_06 { 330 right: 15px; 331 bottom: 15px; 332 animation-delay: 1.2s; 333 -o-animation-delay: 1.2s; 334 -ms-animation-delay: 1.2s; 335 -webkit-animation-delay: 1.2s; 336 -moz-animation-delay: 1.2s; 337 } 338 339 #frotateG_07 { 340 left: 51px; 341 bottom: 0; 342 animation-delay: 1.35s; 343 -o-animation-delay: 1.35s; 344 -ms-animation-delay: 1.35s; 345 -webkit-animation-delay: 1.35s; 346 -moz-animation-delay: 1.35s; 347 } 348 349 #frotateG_08 { 350 left: 15px; 351 bottom: 15px; 352 animation-delay: 1.5s; 353 -o-animation-delay: 1.5s; 354 -ms-animation-delay: 1.5s; 355 -webkit-animation-delay: 1.5s; 356 -moz-animation-delay: 1.5s; 357 } 358 359 @keyframes f_fadeG { 360 0% { 361 background-color: rgb(47, 146, 212); 362 } 363 364 100% { 365 background-color: rgb(255, 255, 255); 366 } 367 } 368 369 @-o-keyframes f_fadeG { 370 0% { 371 background-color: rgb(47, 146, 212); 372 } 373 374 100% { 375 background-color: rgb(255, 255, 255); 376 } 377 } 378 379 @-ms-keyframes f_fadeG { 380 0% { 381 background-color: rgb(47, 146, 212); 382 } 383 384 100% { 385 background-color: rgb(255, 255, 255); 386 } 387 } 388 389 @-webkit-keyframes f_fadeG { 390 0% { 391 background-color: rgb(47, 146, 212); 392 } 393 394 100% { 395 background-color: rgb(255, 255, 255); 396 } 397 } 398 399 @-moz-keyframes f_fadeG { 400 0% { 401 background-color: rgb(47, 146, 212); 402 } 403 404 100% { 405 background-color: rgb(255, 255, 255); 406 } 407 } 408 </style> 409 410 <!-- Div containing small "waiting" wheel --> 411 <div id="floatingCirclesG"> 412 <div class="f_circleG" id="frotateG_01"></div> 413 <div class="f_circleG" id="frotateG_02"></div> 414 <div class="f_circleG" id="frotateG_03"></div> 415 <div class="f_circleG" id="frotateG_04"></div> 416 <div class="f_circleG" id="frotateG_05"></div> 417 <div class="f_circleG" id="frotateG_06"></div> 418 <div class="f_circleG" id="frotateG_07"></div> 419 <div class="f_circleG" id="frotateG_08"></div> 420 </div> 421</div></div></div> 422 </form> 423 </div> 424 425 <div id="introduction" class="groupMargin"> 426 <p><A href='https://passwordreset.microsoftonline.com/'>Forgot your password?</A> </br></br>For help resetting your password, please contact the <A href='https://www.mohawkcollege.ca/information-technology-services/contact-information-technology-services'>Â IT Service Desk </A> </br></br> By using this portal, you are agreeing to the Policies of this organization. To see those Policies, go to the <A href='https://www.mohawkcollege.ca/about-mohawk/leadership-and-administration/policies-and-procedures/corporate-policies-and'> Policy Website</A> for more information.</p> 427 </div> 428 429
429<script type="text/javascript"> 430 //<![CDATA[ 431 432 function Login() { 433 } 434 435 Login.userNameInput = 'userNameInput'; 436 Login.passwordInput = 'passwordInput'; 437 438 Login.initialize = function () { 439 440 var u = new InputUtil(); 441 442 u.checkError(); 443 u.setInitialFocus(Login.userNameInput); 444 u.setInitialFocus(Login.passwordInput); 445 }(); 446 447 Login.submitLoginRequest = function () { 448 var u = new InputUtil(); 449 var e = new LoginErrors(); 450 451 var userName = document.getElementById(Login.userNameInput); 452 var password = document.getElementById(Login.passwordInput); 453 454 if (!userName.value || !userName.value.match('[@\\\\]')) { 455 u.setError(userName, e.userNameFormatError); 456 return false; 457 } 458 459 if (!password.value) { 460 u.setError(password, e.passwordEmpty); 461 return false; 462 } 463 464 if (password.value.length > maxPasswordLength) { 465 u.setError(password, e.passwordTooLong); 466 return false; 467 } 468 469 document.forms['loginForm'].submit(); 470 return false; 471 }; 472 473 InputUtil.makePlaceholder(Login.userNameInput); 474 InputUtil.makePlaceholder(Login.passwordInput); 475 //]]> 476 </script>
476 477 </div> 478 479 </div> 480 481 </div> 482 </main> 483 <div id="footerPlaceholder"></div> 484 </div> 485 <footer id="footer"> 486 <div id="footerLinks" class="floatReverse"> 487 <div><span id="copyright">© 2018 Microsoft</span></div> 488 </div> 489 </footer> 490 </div> 491 </div> 492
492<script type='text/javascript'> 493//<![CDATA[ 494// Copyright (c) Microsoft Corporation. All rights reserved. 495 496// This file contains several workarounds on inconsistent browser behaviors that administrators may customize. 497"use strict"; 498 499// iPhone email friendly keyboard does not include "\" key, use regular keyboard instead. 500// Note change input type does not work on all versions of all browsers. 501if (navigator.userAgent.match(/iPhone/i) != null) { 502 var emails = document.querySelectorAll("input[type='email']"); 503 if (emails) { 504 for (var i = 0; i < emails.length; i++) { 505 emails[i].type = "text"; 506 } 507 } 508} 509 510// In the CSS file we set the ms-viewport to be consistent with the device dimensions, 511// which is necessary for correct functionality of immersive IE. 512// However, for Windows 8 phone we need to reset the ms-viewport's dimension to its original 513// values (auto), otherwise the viewport dimensions will be wrong for Windows 8 phone. 514// Windows 8 phone has agent string "IEMobile 10.0" 515if (navigator.userAgent.match(/IEMobile\/10\.0/)) { 516 var msViewportStyle = document.createElement("style"); 517 msViewportStyle.appendChild( 518 document.createTextNode( 519 "@-ms-viewport{width:auto!important}" 520 ) 521 ); 522 msViewportStyle.appendChild( 523 document.createTextNode( 524 "@-ms-viewport{height:auto!important}" 525 ) 526 ); 527 document.getElementsByTagName("head")[0].appendChild(msViewportStyle); 528} 529 530// If the innerWidth is defined, use it as the viewport width. 531if (window.innerWidth && window.outerWidth && window.innerWidth !== window.outerWidth) { 532 var viewport = document.querySelector("meta[name=viewport]"); 533 viewport.setAttribute("content", "width=" + window.innerWidth + "px; initial-scale=1.0; maximum-scale=1.0"); 534} 535 536// Gets the current style of a specific property for a specific element. 537function getStyle(element, styleProp) { 538 var propStyle = null; 539 540 if (element && element.currentStyle) { 541 propStyle = element.currentStyle[styleProp]; 542 } 543 else if (element && window.getComputedStyle) { 544 propStyle = document.defaultView.getComputedStyle(element, null).getPropertyValue(styleProp); 545 } 546 547 return propStyle; 548} 549 550// The script below is used for downloading the illustration image 551// only when the branding is displaying. This script work together 552// with the code in PageBase.cs that sets the html inline style 553// containing the class "illustrationClass" with the background image. 554var computeLoadIllustration = function () { 555 var branding = document.getElementById("branding"); 556 var brandingDisplay = getStyle(branding, "display"); 557 var brandingWrapperDisplay = getStyle(document.getElementById("brandingWrapper"), "display"); 558 559 if (brandingDisplay && brandingDisplay !== "none" && 560 brandingWrapperDisplay && brandingWrapperDisplay !== "none") { 561 var newClass = "illustrationClass"; 562 563 if (branding.classList && branding.classList.add) { 564 branding.classList.add(newClass); 565 } else if (branding.className !== undefined) { 566 branding.className += " " + newClass; 567 } 568 if (window.removeEventListener) { 569 window.removeEventListener("load", computeLoadIllustration, false); 570 window.removeEventListener("resize", computeLoadIllustration, false); 571 } 572 else if (window.detachEvent) { 573 window.detachEvent("onload", computeLoadIllustration); 574 window.detachEvent("onresize", computeLoadIllustration); 575 } 576 } 577}; 578 579if (window.addEventListener) { 580 window.addEventListener("resize", computeLoadIllustration, false); 581 window.addEventListener("load", computeLoadIllustration, false); 582} 583else if (window.attachEvent) { 584 window.attachEvent("onresize", computeLoadIllustration); 585 window.attachEvent("onload", computeLoadIllustration); 586} 587 588// Check whether the loginMessage element is present on this page. 589var loginMessage = document.getElementById("loginMessage"); 590if (loginMessage) { 591 // The loginMessage element is present, modify its properties. 592 loginMessage.innerHTML = "Mohawk single sign-on (SSO)"; 593} 594 595//in the case of a postback, remove the @mohawkcollege.ca so the user never sees it 596 597 var userName = document.getElementById("userNameInput"); 598 var lowerUserName = userName.value.toLowerCase(); 599 //Check to see if they already included the UPN 600 var AtSignFound = lowerUserName.lastIndexOf('@mohawkcollege.ca');
601 var DomainFound = lowerUserName.lastIndexOf('\\'); 602 if(AtSignFound > -1 && DomainFound == -1) 603 { 604 userName.value = lowerUserName.substring(0,AtSignFound); 605 } 606 607 608// Check whether the userNameInput element is present on this page. 609var userNameInput = document.getElementById("userNameInput"); 610if (userNameInput) 611{ 612 // Create and add a label above the userNameInput element. 613 var label = document.createElement("label"); 614 label.setAttribute("for", "userNameInput"); 615 label.innerHTML = "MohawkID:"; 616 userNameInput.parentNode.insertBefore(label, userNameInput); 617 618 // The userNameInput element is present, add a placeholder. 619 userNameInput.placeholder = "000101060"; 620} 621 622// Check whether the passwordInput element is present on this page. 623var passwordInput = document.getElementById("passwordInput"); 624if (passwordInput) 625{ 626 // Create and add a label above the userNameInput element. 627 var label = document.createElement("label"); 628 label.setAttribute("for", "passwordInput"); 629 label.innerHTML = "Password:"; 630 passwordInput.parentNode.insertBefore(label, passwordInput); 631} 632 633 634//remove domain name requirement 635function runScript(e){ 636 if(e.keyCode ==13){ 637 AppendUPN(); 638 returnLogin.submitLoginRequest(); 639 } 640} 641 642var AppendUPN=function(){ 643 var userName = document.getElementById("userNameInput"); 644 var lowerUserName = userName.value.toLowerCase(); 645 //Check to see if they already included the UPN 646 var AtSignFound = lowerUserName.lastIndexOf('@mohawkcollege.ca'); 647 var DomainFound = lowerUserName.lastIndexOf('\\') 648 if(AtSignFound ==-1 && DomainFound == -1) 649 { 650 userName.value = userName.value +'@mohawkcollege.ca'; 651 } 652 return true; 653} 654 655document.getElementById('submitButton').onclick =new Function('AppendUPN();return Login.submitLoginRequest();'); 656 657document.getElementById('passwordInput').onkeypress = runScript; 658 659//]]> 660</script>
660 661 662 663 </body> 664</html> 665
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.