CINXE.COM
Videotron - Connexion
<!-- WIDGET VIDEOTRON --> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <!-- <meta name="robots" content="noindex,nofollow" /> --> <meta name="description" content="Connectez-vous à l’Espace client (Mobilité, illico Télé, Internet, Téléphonie) ou à Mon compte (Helix) pour gérer vos services, factures, chaînes et plus."> <link rel="canonical" href="https://auth.videotron.com/app/bookmark/0oa938is350YY3rYB697/login" /> <!-- Google Tag Manager --> <script>(function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-542WKG4');</script> <!-- begin Convert Experiences code--> <script type="text/javascript" src="//cdn-4.convertexperiments.com/v1/js/10041261-10041277.js"></script> <!-- end Convert Experiences code --> <!-- End Google Tag Manager --> <!-- Styles generated from theme --> <link href="/api/internal/brand/theme/style-sheet?touch-point=SIGN_IN_PAGE&v=dd287b5bf5f49dc8ac5188917f2c5f1adea7a6d478a514f6d6a46321ce148f97d9d61c273f951a64843d8fd69f263f57" rel="stylesheet" type="text/css"> <!-- Favicon from theme --> <link rel="shortcut icon" href="https://ok14static.oktacdn.com/bc/image/fileStoreRecord?id=fs0938znbq9Scnq0a697" type="image/x-icon" /> <link type="text/css" rel="stylesheet" crossorigin="anonymous" href="https://dayacbcqb3zn6.cloudfront.net/vl/css/fonts.css" /> <link rel="stylesheet" type="text/css" href="https://dayacbcqb3zn6.cloudfront.net/vl/css/main.css" /> <script type="text/javascript" src="https://op3static.oktacdn.com/assets/js/sdk/okta-signin-widget/6.4.3/js/okta-sign-in.min.js"> </script> <style> .footer { position: fixed; left: 0; bottom: 0; width: 100%; z-index: 1; } .ow { overflow-wrap: break-word; word-wrap: break-word; hyphens: auto; } @media (max-width: 600px) { .consent-text { min-height: 240px; } } </style> <title>Videotron - Connexion</title> <!-- Core widget js and css --> <script type="text/javascript" src="https://ok14static.oktacdn.com/assets/js/sdk/okta-signin-widget/7.25.0/js/okta-sign-in.min.js" integrity="sha384-oMTRqyPl7AvAzanR/7qBpHwjsijbTROdzCH9K6qzc0IfK3SKWTahMXevD33I0Gzj" crossorigin="anonymous"></script> <link rel="stylesheet" type="text/css" href="https://ok14static.oktacdn.com/assets/js/sdk/okta-signin-widget/7.25.0/css/okta-sign-in.min.css" integrity="sha384-63aTBe2wMqzMRsDHNmlF/FreSWmf3p08BhUDoPlzVf3d+stbkfWtqmdyJ4He5m3m" crossorigin="anonymous"> <!-- Customizable css theme options. Link your own stylesheet or override styles inline. --> <link rel="stylesheet" type="text/css" href="" integrity="" crossorigin="anonymous"> <!-- styles for custom sign in --> <link rel="stylesheet" type="text/css" href="https://ok14static.oktacdn.com/assets/loginpage/css/custom-signin.a91af2abfd04662e499bd3e151150dbf.css" integrity="sha384-BhMidK4jYIQaVFKNVHUvbfdgrt4NVlnlTZMsOMWLdWkme3j1JcshKDNQiMssd7sN" crossorigin="anonymous"> </head> <body> <!-- Modifier le meta description en fonction de la langue--> <script src="https://dayacbcqb3zn6.cloudfront.net/vl/js/changeMeta.js"></script> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-542WKG4" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <div class="login-bg-image tb--background" style="background-image: url('https://ok14static.oktacdn.com/fs/bco/7/fs0gnad7o2zylTv0V697')"></div> <div id="okta-login-container" class="site-content"></div> <footer class="site-footer footer"> <div class="row no-gutters align-items-center"> <div class="col-12 col-sm-12 col-md-2 col-lg-3"> <span id="copyright"></span> </div> <div class="col-12 col-sm-12 col-md-10 col-lg-9 text-right"> <ul class="list-inline"> <li class="list-inline-item"><a id="a-index" href="" target="_blank"></a></li> <li class="list-inline-item"><a id="a-modalites" href="" target="_blank"></a></li> <li class="list-inline-item"><a id="a-securites" href="" target="_blank"></a></li> <li class="list-inline-item"><a id="a-access" href="" target="_blank"></a></li> <li class="list-inline-item"><a id="a-prepay" href="" target="_blank"></a></li> </ul> </div> </div> </footer> <!-- "OktaUtil" defines a global OktaUtil object that contains methods used to complete the Okta login flow. --> <div id="okta-sign-in" class="auth-container main-container unsupported-message-container" style="display:none"> <div id="unsupported-cookie" class="unsupported-message" style="display:none"> <h2 class="o-form-head">Des cookies sont nécessaires</h2> <p>Les cookies sont désactivés sur votre navigateur. Veuillez activer les cookies et actualiser cette page.</p> <a class="button button-primary" target="_blank" href="."> Rafraîchir </a> </div> </div> <div id="inactive-tab-main-div" style="display:none;"> <div class="inactive-tab-container"> <div class="inactive-tab-header"> <img src="https://ok14static.oktacdn.com/fs/bco/1/fs0cgt1mksfvhToiI697" alt="vl" class="report-org-logo"> <div class="divider"></div> </div> <div class="inactive-tab-content"> <h2 class="inactive-tab-content-title">La page a expiré</h2> <p class="inactive-tab-details">Si cette page ne se recharge pas automatiquement, veuillez actualiser la page dans votre navigateur.</p> </div> </div> </div> <script type="text/javascript" nonce=""> var signInSuccessCallBackFunction; var oktaData = {"redirectUri":"https\x3A\x2F\x2Fauth.videotron.com\x2Foauth2\x2Faus9u3iogf6UNLYul697\x2Fv1\x2Fauthorize\x3Fclient_id\x3D0oa9u3iycu8jSPET8697\x26response_type\x3Dcode\x26scope\x3Dopenid\x2520email\x2520profile\x26redirect_uri\x3Dhttps\x253A\x2F\x2Fwww.videotron.com\x2Fopenid\x2Dconnect\x2Fokta\x26state\x3DpQXsoFjLNIXGFXVsfd86cYo_YuyfmDww5APFFUEyELE","isMobileSso":false,"fromUri":"","isMobileClientLogin":false,"requestContext":{"app":{"type":"object","value":{"name":"oidc_client","label":"Drupal","id":"0oa9u3iycu8jSPET8697"}},"authentication":{"request":{"max_age":-1,"scope":"openid\x20email\x20profile","display":"page","response_type":"code","redirect_uri":"https\x3A\x2F\x2Fwww.videotron.com\x2Fopenid\x2Dconnect\x2Fokta","state":"pQXsoFjLNIXGFXVsfd86cYo_YuyfmDww5APFFUEyELE","response_mode":"query"},"protocol":{},"client":{"name":"oidc_client","label":"Drupal","id":"0oa9u3iycu8jSPET8697"},"type":"object","value":{"request":{"max_age":-1,"scope":"openid\x20email\x20profile","display":"page","response_type":"code","redirect_uri":"https\x3A\x2F\x2Fwww.videotron.com\x2Fopenid\x2Dconnect\x2Fokta","state":"pQXsoFjLNIXGFXVsfd86cYo_YuyfmDww5APFFUEyELE","response_mode":"query"},"protocol":{},"issuer":{"name":"Drupal\x20apps","id":"aus9u3iogf6UNLYul697","uri":"https\x3A\x2F\x2Fauth.videotron.com\x2Foauth2\x2Faus9u3iogf6UNLYul697"}},"issuer":{"name":"Drupal\x20apps","id":"aus9u3iogf6UNLYul697","uri":"https\x3A\x2F\x2Fauth.videotron.com\x2Foauth2\x2Faus9u3iogf6UNLYul697"}},"target":{"clientId":"0oa9u3iycu8jSPET8697","name":"oidc_client","label":"Drupal"}},"countryIso":"SG","inactiveTab":{"elementId":"inactive\x2Dtab\x2Dmain\x2Ddiv","avoidPageRefresh":true,"enabled":true},"signIn":{"logoText":"Videotron\x20logo","brandName":"Videotron","language":"fr","consent":{"cancel":function(){window.location.href='https\x3A\x2F\x2Fauth.videotron.com\x2Flogin\x2Fstep\x2Dup\x2Fredirect\x3FstateToken\x3DeyJ6aXAiOiJERUYiLCJhbGlhcyI6ImVuY3J5cHRpb25rZXkiLCJ2ZXIiOiIxIiwib2lkIjoiMDBva2VuaXA1akE2NVJHRTU2OTYiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiZGlyIn0..iHvKx7xDZvRoIbec.k8z4hZYjPhgQ3SFZdciviqloMz6m7CuGNsDeZ7IN\x2DXvQx1A2IEdDih2yCKz7uEi2CkTMueAdi3OREkem7c2SW1OtWaQsYHyNv764\x2DE6DPorefgNAOVAlL2M_\x2DUxxHiJLLXeKIyzqgHDIvmxF9kseovoVjifNY6ybxR7zK\x2DnLXByI0\x2D3lMJoAHtuvoRz_khtneDtoYgBqS4ee2Q0l5YwvPIR2EsLQcNTw_TZGXi3X\x2D\x2DvCMCbo3\x2D8d7QKmrqpZr4FN4BJRnGrieRvYXPEQBpr9\x2DilDMEERtJMzKcS_yzPiGk\x2D5VcPt1ZMVcPrWeKOQF1DlBAXUZKUzdYjYRyttQU2nF6vaE63Rw3yMBSIEXg6GkD5WQeTeyg_p8ed4N_ymayJ8HwxasLT6yxXoMJuS3saPku_PzQlhPZFzvr8YAMJX0mBWQRqymOUL1qk1YdGbjZf4AoKzMi3jZTbgn10atG5IiyvZt1nDiZDp5pzCuxB_ht1NxFVTungvodwdUYRvBnWGalgZDWvN7yxvzr_pIcjvBvt1DiDKuV3UOjykrB1MQa3lMujgsyOOM18S1x7tn3FvJOCHJDJUBJNHJSX0Nu56_WC_OHoHpJl11xnnvTtRRLFfIAhPjNOxd24bF\x2Dofen\x2DcWqlBCejC2NkQCJ2bhbksUfcZEIcRHN8hhBRaBVa4gJBLEUeKIak70M48NVc97wXTSiX4_LkO3Jd3DtMmUzPr97sHbnk_p70Jgg6lGbJgx67zHNZeApfQnx1FlH_XzyGG3TRpPnp7qQTTYX9NV5qEHJEVDe_Ope0pFHyyYPx4dsCKO75IqcKlIhg\x2DeNpTsaad4kHJ1S__J1P2Y\x2DgyyaG2nX7E0XysWRt7wtRXA76UwV6iHxUcJRWlU5TWOS7PJ8tvExHgZJ7kpsqYa8gBPeWtP1WjFjVch\x2DpLNwJtf\x2DkPUCK1UlML_oOiPVCGj2GuE_syzDaYkZ5Jaoj0y3xlUc1hDjDAuyQoveC_UpJher5wv4azvkWFgR01kl9NNa25eaEpPbyizpXA5w_GcSLlpsB4F0o9Ozd79KJdjf9drTPFqDxBoT6YDbs8YJ7uiBzCSBV86JwF_npRoo_jFlTXHv7xbX3mDwwxRIfrsYxKn8NsBzcZMBQdRUc1tdzSZDO74\x2D7bEy1o27qi7TugBU57tj81YrgXNyUq2MzS_mWDH2VJxf9iJyU7ZTp644k_0oiIv5vlpjpOpMU9xTIqpBem8UrcoLXOW5pLz7QyiTPgN6wIfx_3fhCG2_ah2cu0sVkdZZAOENsjoCLnSHoVq89lhXqi6Tnsow2NZ\x2DeaNNHKHB46QsiG3gruZn4oMyQmXRFvLq6QwlLPg\x2DC1Y4rpL10csmoOrebwxnw15qvTXxrmloU_XEYR7020lBsA03v9P6MMdN6qLf4kC_aZ_x_spnc1cZIa8GUx5_Q8LLlCWM0q2Q9J\x2D_Tc6\x2DvxABgGbehOfiaT4_xZTsAOd\x2DXKxJLwtBLU_fTG8Cfp55WUGPvx7KPkIy2YFa9Qmuwd2TzC5Ophcn4Gx9NUWGO8uk4yYxqtitff9Gu0Ksz29vs4UbsxW6Zu85\x2Dkbr\x2Drlh3DbcTzs0VoJ4NyytUdz7bR2n6kvOQEIq_DZBCnSQMLvVORzAdFulI21cgZ61bE\x2DbJGaBHLiq4gN6IzczJiZN7lUlLefauA2RwtKFH\x2DTxqpqq_lHtmohzPb_3wp54gKhDeqwogECDo21KtKFIY7P_W_uZtYVqzcPnnloEKRV54qeAnjYJ0OXwWXt1phaBTlrR9R1ls5GfN4s36C5nOWpR_NNq06X41YhGjy8VCk4O6uGNjLFwKQKYDRMqSFUHF8a16kRcwbhhBanX9dnxLoFn7DqCY4QR895aeXA3WWSj4Mt6voZDq\x2DBV2fXosjuwlP3CrLWFWo1M3SXga0nBK1ujqqiMStFcYeOq2hnes\x2D9KI7rgePICVaVmXEVCgU54wLOVGzdMx_FEErdx7g1t1CLaCE\x2D6FIDj_vqOdSNBaEpU_2\x2DiQHERTxaYfQ3eehsgyw_O6rDDhZSVA2jos\x2DK7\x2DDRbK6EfjyT1PV0h05TER\x2DO3_EZYgCMVJTY0R_L\x2DQIab0x3ETRv6DRwBfNVd8SJ7fjorlqLV_AQsog_IOFw084OAkVcdbHvKwH57HmHz2OyNAtWlTsebnXjD0H23KoAxJYNyqJWGbHbXCNBuI9Gmgfb63henfgznxRjw0TIusqqBRGHU9Uig09nHxK_d\x2DbWY2QHKnGAn2d4potCfpvlOfxZH1ZBABqRunf1TyQQ1i4q9iGxyLQWQL7JdHYUs387HkY0WxdukYg\x2DZxtzOPRNlgJGwQ6dWILshh7sC_p5MZDcru0wR74AARHMWkPWS2BFdYbckUvu5MrLKqtcLL29ydQyfHgy8Grw\x2DmficgbuVL3yMCEaDAjua3tr6\x2DOS0vUm_Fc5lf9\x2D9\x2DdBP9HGQLYwNZMAiiLVOx3Qpug1uTaIbzUCnJCsJsvWTp8dL3UFnlVRsfu8sJ096p8WInZZmdCm44A33AxWUkQi6QwyMHwvo00EuGPXYk6vykqPZHc3gRFywo6JBaeG6h8n_S\x2Dp2_3Igd2qtsW46lJNX5EFX5GPBEX4i8dJ762c1gJ4t\x2DjtVVbXrxfoVPI2Jrc525LzFwHXLOtKBmAL8wBqOWi1xE\x2D59me9XLshR_MXNvqaw4giwOTivhQwR6T5lH1nRqOrti2BhewkuGj4GEGDE9CoGv\x2DdhPF8S2EvlUY_1sV\x2DH1jBMpUCAaAxHrMmaOCRKcL868KN0M4xoyNO4rGImgLLLs9PxToazGjT3ejd6hF9xoUv3yklFrYlxzT6JtyzzvP8qGudsKZ4vpamgC17iYakgBWyGZsjUC1MftJBK\x2DpZcGyDM0YCc\x2DQjf7nzq5WuhnHJjwwjvYX09_1cmGDMSFxFj4SNYNUf33RbfZeeKXNbpyaJcV4Oe1L8k5w7YfwcDExyj2FjXz7_COlI_uoOfmj_N5Z2fEZE18lsIJ_RkhIyPSYrTv5DXME9PllgEZ6XQLuNiY_oWgctZppYyrkjED1ZYL34xWJTtpj5eNadMEFX\x2Di8t355WZBzkGDUxymaKJSRrx_cy5u2NE7a4ofiIhuif2einIepJcG3COoDlbDZvxhEpX8mMyxqc8IPNW2rucliXFs6u9wfs4fR5JTqoARkbGTNc_AjrNbBToCkOAOgwJR8EPs9UkFXz7o6OAhVk3Cww24KZannrD9pYdtzH4R5bqrK2KSWcIjWHB2EyA4psQDMf5vtYpgubgAb9TdwrN2vkbb\x2DFAlH8t6cdNBzn3a\x2Dy57l\x2DD10IouVcClC3O52KRcX9QafZWeXvHPETnR56kgcwVBn_H3xUFF9ANW2WVuOIvgsxwYlpuO5sJLfud77kJMkZHGxkuIaFSMp2iUusmQWr6jdSd8J2TUpAAq5iS3W2iQn8d5Y5kwnLulWNSyPK38Snz_SQo9Qw5JA1SVC0kYvKaBeQQI4hzo_6v6EIQlPm6PDQb7\x2D4B5fErLYs\x2D_yBavx0y3a5Nek68xZghWAt1ZC\x2DUx3IAl_pPlwctH_TPo67B86gIDzCY7knmyDBkgxQhenmfLdVacxKoqwN0Wc.iZiYvBuqAnl5LtajX\x2DO\x2DaQ';}},"i18n":{"fr":{"mfa.challenge.password.placeholder":"Mot\x20de\x20passe","help":"Aide","password.forgot.email.or.username.tooltip":"Adresse\x20e\x2Dmail\x20ou\x20nom\x20d\x27utilisateur","needhelp":"Besoin\x20d\x27aide\x20pour\x20vous\x20connecter\xA0\x3F","primaryauth.username.placeholder":"Nom\x20d\x27utilisateur","password.forgot.email.or.username.placeholder":"Adresse\x20e\x2Dmail\x20ou\x20nom\x20d\x27utilisateur","account.unlock.email.or.username.tooltip":"Adresse\x20e\x2Dmail\x20ou\x20nom\x20d\x27utilisateur","unlockaccount":"D\xE9verrouiller\x20le\x20compte\xA0\x3F","account.unlock.email.or.username.placeholder":"Adresse\x20e\x2Dmail\x20ou\x20nom\x20d\x27utilisateur","primaryauth.password.placeholder":"Mot\x20de\x20passe","primaryauth.title":"Connexion","forgotpassword":"Mot\x20de\x20passe\x20oubli\xE9\xA0\x3F"}},"features":{"hideSignOutLinkInMFA":false,"emailRecovery":true,"deviceFingerprinting":true,"showIdentifier":true,"consent":true,"useDeviceFingerprintForSecurityImage":true,"customExpiredPassword":true,"router":true,"showPasswordToggleOnSignInPage":true,"securityImage":true,"autoPush":true,"smsRecovery":false,"idpDiscovery":false,"selfServiceUnlock":false,"webauthn":true,"passwordlessAuth":true,"showPasswordRequirementsAsHtmlList":true,"registration":false,"rememberMe":true,"callRecovery":false,"multiOptionalFactorEnroll":true},"baseUrl":"https\x3A\x2F\x2Fauth.videotron.com","assets":{"baseUrl":"https\x3A\x2F\x2Fok14static.oktacdn.com\x2Fassets\x2Fjs\x2Fsdk\x2Fokta\x2Dsignin\x2Dwidget\x2F7.25.0"},"customButtons":[],"idpDiscovery":{"requestContext":""},"logo":"https\x3A\x2F\x2Fok14static.oktacdn.com\x2Ffs\x2Fbco\x2F1\x2Ffs0cgt1mksfvhToiI697","stateToken":"eyJ6aXAiOiJERUYiLCJhbGlhcyI6ImVuY3J5cHRpb25rZXkiLCJ2ZXIiOiIxIiwib2lkIjoiMDBva2VuaXA1akE2NVJHRTU2OTYiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiZGlyIn0..iHvKx7xDZvRoIbec.k8z4hZYjPhgQ3SFZdciviqloMz6m7CuGNsDeZ7IN\x2DXvQx1A2IEdDih2yCKz7uEi2CkTMueAdi3OREkem7c2SW1OtWaQsYHyNv764\x2DE6DPorefgNAOVAlL2M_\x2DUxxHiJLLXeKIyzqgHDIvmxF9kseovoVjifNY6ybxR7zK\x2DnLXByI0\x2D3lMJoAHtuvoRz_khtneDtoYgBqS4ee2Q0l5YwvPIR2EsLQcNTw_TZGXi3X\x2D\x2DvCMCbo3\x2D8d7QKmrqpZr4FN4BJRnGrieRvYXPEQBpr9\x2DilDMEERtJMzKcS_yzPiGk\x2D5VcPt1ZMVcPrWeKOQF1DlBAXUZKUzdYjYRyttQU2nF6vaE63Rw3yMBSIEXg6GkD5WQeTeyg_p8ed4N_ymayJ8HwxasLT6yxXoMJuS3saPku_PzQlhPZFzvr8YAMJX0mBWQRqymOUL1qk1YdGbjZf4AoKzMi3jZTbgn10atG5IiyvZt1nDiZDp5pzCuxB_ht1NxFVTungvodwdUYRvBnWGalgZDWvN7yxvzr_pIcjvBvt1DiDKuV3UOjykrB1MQa3lMujgsyOOM18S1x7tn3FvJOCHJDJUBJNHJSX0Nu56_WC_OHoHpJl11xnnvTtRRLFfIAhPjNOxd24bF\x2Dofen\x2DcWqlBCejC2NkQCJ2bhbksUfcZEIcRHN8hhBRaBVa4gJBLEUeKIak70M48NVc97wXTSiX4_LkO3Jd3DtMmUzPr97sHbnk_p70Jgg6lGbJgx67zHNZeApfQnx1FlH_XzyGG3TRpPnp7qQTTYX9NV5qEHJEVDe_Ope0pFHyyYPx4dsCKO75IqcKlIhg\x2DeNpTsaad4kHJ1S__J1P2Y\x2DgyyaG2nX7E0XysWRt7wtRXA76UwV6iHxUcJRWlU5TWOS7PJ8tvExHgZJ7kpsqYa8gBPeWtP1WjFjVch\x2DpLNwJtf\x2DkPUCK1UlML_oOiPVCGj2GuE_syzDaYkZ5Jaoj0y3xlUc1hDjDAuyQoveC_UpJher5wv4azvkWFgR01kl9NNa25eaEpPbyizpXA5w_GcSLlpsB4F0o9Ozd79KJdjf9drTPFqDxBoT6YDbs8YJ7uiBzCSBV86JwF_npRoo_jFlTXHv7xbX3mDwwxRIfrsYxKn8NsBzcZMBQdRUc1tdzSZDO74\x2D7bEy1o27qi7TugBU57tj81YrgXNyUq2MzS_mWDH2VJxf9iJyU7ZTp644k_0oiIv5vlpjpOpMU9xTIqpBem8UrcoLXOW5pLz7QyiTPgN6wIfx_3fhCG2_ah2cu0sVkdZZAOENsjoCLnSHoVq89lhXqi6Tnsow2NZ\x2DeaNNHKHB46QsiG3gruZn4oMyQmXRFvLq6QwlLPg\x2DC1Y4rpL10csmoOrebwxnw15qvTXxrmloU_XEYR7020lBsA03v9P6MMdN6qLf4kC_aZ_x_spnc1cZIa8GUx5_Q8LLlCWM0q2Q9J\x2D_Tc6\x2DvxABgGbehOfiaT4_xZTsAOd\x2DXKxJLwtBLU_fTG8Cfp55WUGPvx7KPkIy2YFa9Qmuwd2TzC5Ophcn4Gx9NUWGO8uk4yYxqtitff9Gu0Ksz29vs4UbsxW6Zu85\x2Dkbr\x2Drlh3DbcTzs0VoJ4NyytUdz7bR2n6kvOQEIq_DZBCnSQMLvVORzAdFulI21cgZ61bE\x2DbJGaBHLiq4gN6IzczJiZN7lUlLefauA2RwtKFH\x2DTxqpqq_lHtmohzPb_3wp54gKhDeqwogECDo21KtKFIY7P_W_uZtYVqzcPnnloEKRV54qeAnjYJ0OXwWXt1phaBTlrR9R1ls5GfN4s36C5nOWpR_NNq06X41YhGjy8VCk4O6uGNjLFwKQKYDRMqSFUHF8a16kRcwbhhBanX9dnxLoFn7DqCY4QR895aeXA3WWSj4Mt6voZDq\x2DBV2fXosjuwlP3CrLWFWo1M3SXga0nBK1ujqqiMStFcYeOq2hnes\x2D9KI7rgePICVaVmXEVCgU54wLOVGzdMx_FEErdx7g1t1CLaCE\x2D6FIDj_vqOdSNBaEpU_2\x2DiQHERTxaYfQ3eehsgyw_O6rDDhZSVA2jos\x2DK7\x2DDRbK6EfjyT1PV0h05TER\x2DO3_EZYgCMVJTY0R_L\x2DQIab0x3ETRv6DRwBfNVd8SJ7fjorlqLV_AQsog_IOFw084OAkVcdbHvKwH57HmHz2OyNAtWlTsebnXjD0H23KoAxJYNyqJWGbHbXCNBuI9Gmgfb63henfgznxRjw0TIusqqBRGHU9Uig09nHxK_d\x2DbWY2QHKnGAn2d4potCfpvlOfxZH1ZBABqRunf1TyQQ1i4q9iGxyLQWQL7JdHYUs387HkY0WxdukYg\x2DZxtzOPRNlgJGwQ6dWILshh7sC_p5MZDcru0wR74AARHMWkPWS2BFdYbckUvu5MrLKqtcLL29ydQyfHgy8Grw\x2DmficgbuVL3yMCEaDAjua3tr6\x2DOS0vUm_Fc5lf9\x2D9\x2DdBP9HGQLYwNZMAiiLVOx3Qpug1uTaIbzUCnJCsJsvWTp8dL3UFnlVRsfu8sJ096p8WInZZmdCm44A33AxWUkQi6QwyMHwvo00EuGPXYk6vykqPZHc3gRFywo6JBaeG6h8n_S\x2Dp2_3Igd2qtsW46lJNX5EFX5GPBEX4i8dJ762c1gJ4t\x2DjtVVbXrxfoVPI2Jrc525LzFwHXLOtKBmAL8wBqOWi1xE\x2D59me9XLshR_MXNvqaw4giwOTivhQwR6T5lH1nRqOrti2BhewkuGj4GEGDE9CoGv\x2DdhPF8S2EvlUY_1sV\x2DH1jBMpUCAaAxHrMmaOCRKcL868KN0M4xoyNO4rGImgLLLs9PxToazGjT3ejd6hF9xoUv3yklFrYlxzT6JtyzzvP8qGudsKZ4vpamgC17iYakgBWyGZsjUC1MftJBK\x2DpZcGyDM0YCc\x2DQjf7nzq5WuhnHJjwwjvYX09_1cmGDMSFxFj4SNYNUf33RbfZeeKXNbpyaJcV4Oe1L8k5w7YfwcDExyj2FjXz7_COlI_uoOfmj_N5Z2fEZE18lsIJ_RkhIyPSYrTv5DXME9PllgEZ6XQLuNiY_oWgctZppYyrkjED1ZYL34xWJTtpj5eNadMEFX\x2Di8t355WZBzkGDUxymaKJSRrx_cy5u2NE7a4ofiIhuif2einIepJcG3COoDlbDZvxhEpX8mMyxqc8IPNW2rucliXFs6u9wfs4fR5JTqoARkbGTNc_AjrNbBToCkOAOgwJR8EPs9UkFXz7o6OAhVk3Cww24KZannrD9pYdtzH4R5bqrK2KSWcIjWHB2EyA4psQDMf5vtYpgubgAb9TdwrN2vkbb\x2DFAlH8t6cdNBzn3a\x2Dy57l\x2DD10IouVcClC3O52KRcX9QafZWeXvHPETnR56kgcwVBn_H3xUFF9ANW2WVuOIvgsxwYlpuO5sJLfud77kJMkZHGxkuIaFSMp2iUusmQWr6jdSd8J2TUpAAq5iS3W2iQn8d5Y5kwnLulWNSyPK38Snz_SQo9Qw5JA1SVC0kYvKaBeQQI4hzo_6v6EIQlPm6PDQb7\x2D4B5fErLYs\x2D_yBavx0y3a5Nek68xZghWAt1ZC\x2DUx3IAl_pPlwctH_TPo67B86gIDzCY7knmyDBkgxQhenmfLdVacxKoqwN0Wc.iZiYvBuqAnl5LtajX\x2DO\x2DaQ","helpLinks":{"help":"","forgotPassword":"","unlock":"","custom":[]},"piv":{}},"accountChooserDiscoveryUrl":"https\x3A\x2F\x2Flogin.okta.com\x2Fdiscovery\x2Fiframe.html"}; var runLoginPage = function(fn) { var mainScript = document.createElement('script'); mainScript.src = "https://ok14static.oktacdn.com/assets/js/mvc/loginpage/initLoginPage.pack.58de3be0c9b511a0fdfd7ea4f69b56fc.js"; mainScript.integrity = "sha384-cJ4LGViZBmIttMPH+ao2RyPuN5BztKWYWIa4smbm56r1cUhkU/Dr6vTS3UoPbKTI"; mainScript.crossOrigin = "anonymous"; document.getElementsByTagName('head')[0].appendChild(mainScript); fn && mainScript.addEventListener('load', function () { setTimeout(fn, 1) }); }; var OktaUtil = { _addClass: function(el, className) { if(el) { var elementClasses = el.className.split(" "); if (elementClasses.indexOf(className) == -1) { el.className += " " + className; } } }, _removeElement: function(el) { if(el) { el.parentNode.removeChild(el); } }, _hideElement: function(el) { if(el) { el.style.display = 'none'; } }, _isDocumentVisible: function() { return document.visibilityState === 'visible'; }, addLoginContainerClass: function () { this._addClass(document.getElementById('okta-login-container'), 'login-container'); }, showUnsupportedCookieWarning: function () { document.getElementById('okta-sign-in').removeAttribute('style'); document.getElementById('unsupported-cookie').removeAttribute('style'); }, removeUnsupportedCookieWarning: function () { this._removeElement(document.getElementById('okta-sign-in')); }, hideOktaLoginContainer: function () { this._hideElement(document.getElementById('okta-login-container')); }, isChromeOs: function () { return /\bCrOS\b/.test(navigator.userAgent); }, addChromeOSScript: function() { var chromeOSScript = document.createElement('script'); chromeOSScript.src = "/js/google/users-1.0.js"; document.getElementsByTagName('head')[0].appendChild(chromeOSScript); }, getSignInWidgetConfig: function () { if (oktaData.inactiveTab && oktaData.inactiveTab.enabled && !this._isDocumentVisible() && !oktaData.inactiveTab.avoidPageRefresh) { // Show a loading state and wait for the visibility event this.hideOktaLoginContainer(); // remove stateToken so SIW does not attempt a login flow oktaData.signIn.stateToken = undefined; } return oktaData.signIn; }, completeLogin: function (res) { signInSuccessCallBackFunction(res); }, getRequestContext: function () { return oktaData.requestContext; }, setRedirectUri: function (uri) { oktaData.redirectUri = uri; }, init: function () { if (!navigator.cookieEnabled) { this.showUnsupportedCookieWarning(); this.hideOktaLoginContainer(); } else { this.removeUnsupportedCookieWarning(); if (oktaData.inactiveTab && oktaData.inactiveTab.enabled && !this._isDocumentVisible()) { try { oktaData.inactiveTab.renderFnBackup = OktaSignIn.prototype.renderEl; } catch (err) { // no op - graceful handling OktaSignIn undefined case } // pause render sign-in widget when browser tab is inactive if (!oktaData.inactiveTab.renderFnBackup) { // for older SIW, renderFnBackup is undefined, fallback to full page reload oktaData.inactiveTab.fallbackFullPageReload = true; // Show a loading state and wait for the visibility event this.hideOktaLoginContainer(); // remove stateToken so SIW does not attempt a login flow oktaData.signIn.stateToken = undefined; } else { // for newer SIW, override renderEl function so SIW does not attempt a login flow OktaSignIn.prototype.renderEl = function () { oktaData.inactiveTab.renderArgsBackup = arguments; oktaData.inactiveTab.signInInstance = this; try { return new Promise(function (resolve, reject) { oktaData.inactiveTab.renderResolve = resolve; oktaData.inactiveTab.renderReject = reject; }); } catch (err) { // return nothing if promise is not supported, since promise chaining won't work anyway } } } // event handler to resume render sign-in widget document.addEventListener('visibilitychange', function checkVisibilityAndCallSuccess() { if (document.visibilityState === 'visible') { try { document.removeEventListener('visibilitychange', checkVisibilityAndCallSuccess); const inactiveTabDiv = document.getElementById(oktaData.inactiveTab.elementId); inactiveTabDiv.style.display = 'none'; // resume render sign-in widget if (oktaData.inactiveTab.renderFnBackup && oktaData.inactiveTab.renderArgsBackup) { OktaSignIn.prototype.renderEl = oktaData.inactiveTab.renderFnBackup; var result = oktaData.inactiveTab.signInInstance.renderEl.apply(oktaData.inactiveTab.signInInstance, oktaData.inactiveTab.renderArgsBackup); if (result && result.then) { result.then(oktaData.inactiveTab.renderResolve, oktaData.inactiveTab.renderReject); } } } catch (err) { oktaData.inactiveTab.fallbackFullPageReload = true; } if (oktaData.inactiveTab.fallbackFullPageReload) { location.reload(); } } }); } // add class if app login banner is present if (oktaData.isAppBannerVisible) { this.addLoginContainerClass(); } oktaData.isCustomSignIn = true; oktaData.hasChromeOSFeature = this.isChromeOs(); if (oktaData.hasChromeOSFeature) { this.addChromeOSScript(); } runLoginPage(function () { var res = OktaLogin.initLoginPage(oktaData); oktaData.signIn = res.signIn; signInSuccessCallBackFunction = res.signInSuccessCallbackFn; }); } } }; OktaUtil.init(); //# sourceURL=OktaUtil.js </script> <script type="text/javascript"> // "config" object contains default widget configuration // with any custom overrides defined in your admin settings. var config = OktaUtil.getSignInWidgetConfig(); // For Eitya Registration app load widget on the signup page // When Etiya registration app (EtiyaRegistration) opens widget default flow must be signup // https://support.okta.com/help/s/case/5004z00001rQHL7AAO/open-the-widget-in-the-registration-form-directly?language=en_US // https://github.com/okta/okta-signin-widget#flow //if (OktaUtil.getRequestContext().target.label === 'EtiyaB2CRegistration') { // config.flow = 'login'; // console.log("configafterflowlogin=", config); //} flowSignup = 0; config.features = { hideBackToSignInForReset: true, selfServiceUnlock: false }; config.language = navigator.language.split("-")[0]; //if navigator language other than en or fr, force fr if (config.language != 'en' && config.language != 'fr') { config.language = 'fr'; } console.log("language=", config.language); config.i18n = { //Overrides default text when using English. Override other languages by adding additional sections. // More e.g. [primaryauth.username.placeholder, primaryauth.password.placeholder, needhelp, etc.]. // Full list here: https://github.com/okta/okta-signin-widget/blob/master/packages/%40okta/i18n/src/properties/login.properties 'fr': { //FOOTER 'copyright': { 'textContent': '©Vidéotron ' }, 'a-index': { 'href': 'http://corpo.videotron.com/site/entreprise/index-fr.jsp', 'label': 'À propos' }, 'a-modalites': { 'href': 'http://corpo.videotron.com/site/modalites-utilisation-fr.jsp', 'label': 'Modalités d\'utilisation' }, 'a-securites': { 'href': 'http://corpo.videotron.com/site/securite-confidentialite-fr.jsp', 'label': 'Vie privée' }, 'a-access': { 'href': 'http://corpo.videotron.com/site/accessibilite-fr.jsp', 'label': 'Accessibilité' }, 'a-prepay': { 'href': 'https://crtc.gc.ca/fra/phone/mobile/prepay.htm', 'label': 'Code sur les services sans fil' }, //MFA page 'oie.email.mfa.title': 'Consultez vos courriels', 'oie.email.verify.alternate.magicLinkToEmailAddress': 'Nous avons envoyé un code de vérification par courriel à <$1>{0}</$1>.', 'oie.email.verify.alternate.magicLinkToEmailAddress.with.secondary.email': 'Nous avons envoyé un code de vérification aux adresses <$1>{0}</$1> et <$2>{1}</$2>.', 'oie.email.verify.alternate.verificationCode.instructions': 'Pour continuer, entrez le code de vérification fourni dans le champ ci-dessous.', 'oie.email.verify.sendNewCode': 'Envoyer un nouveau code', 'mfa.challenge.enterCode.placeholder': 'Entrer le code', 'mfa.challenge.verify': 'VÉRIFIER', 'model.validation.field.array.unique': 'Ce tableau peut seulement contenir des valeurs uniques.', 'model.validation.field.invalid.format.email': 'Cette valeur n\'est pas une adresse courriel valide.', 'goback': 'Retour à la connexion', //Sign Up page 'oie.user.profile.primary.email': 'Courriel', 'oie.user.profile.primary.email.hint': 'Cette adresse courriel deviendra le nouvel identifiant avec lequel vous pourrez vous connecter à toutes les plateformes de Vidéotron.', 'oie.custom.birthdate.label': 'Date de naissance', 'oie.custom.birthdate.placeholder': 'AAAA-MM-JJ', 'oie.custom.birthdate.underage.error': 'Le titulaire du compte doit être âgé d\'au moins 18 ans', 'oie.custom.birthdate.invalid.error': 'Entrez une date de naissance valide (AAAA-MM-JJ)', 'oie.custom.phone.invalid.error': 'Entrez un numéro de téléphone valide', 'oie.custom.secretkeyword.hint': 'Ce mot secret sert à vous identifier lorsque vous communiquez avec le Service à la clientèle.', 'oie.custom.secretkeyword.label': 'Mot secret', 'oie.custom.secretkeyword.placeholder': 'Quel est le nom de jeune fille de votre mère ?', 'oie.custom.all.required.hint': 'Tous les champs sont obligatoires.', 'oie.custom.info.needed.hint': 'Nous avons besoin des renseignements suivants pour créer votre compte.', 'oie.custom.already.account.prompt': 'Vous avez déjà un compte?', 'oie.custom.signin.link.label': 'Se connecter', 'empty-option-label': 'Sélectionner une Option', 'oie.custom.selectoption.label': 'Sélectionner une Option', 'oie.custom.civility.label': 'Civilité', 'oie.custom.civility.options': { 'other': 'AUTRE', 'mr': 'M.', 'ms': 'MME', }, 'oie.custom.phonecontact.label': 'Numéro de téléphone', 'oie.custom.phonetype.label': 'Type de numéro de téléphone', 'oie.custom.phonetype.options': { 'mobile': 'MOBILE', 'home': 'DOMICILE', 'work': 'TRAVAIL', }, 'oie.custom.languagecomms.label': 'Langue de communication préférée', 'oie.custom.languagecomms.options': { 'english': 'ANGLAIS', 'french': 'FRANÇAIS', }, 'oie.custom.consentcomms.label': 'J\'accepte de recevoir des communications de Vidéotron et de ses partenaires de confiances concernant des services, des produits, des conseils et des offres exclusives conformément à notre ', 'oie.custom.consentcomms.privacy.label': 'Politique de confidentialité', 'oie.custom.consentcomms.privacy.url': 'https://corpo.videotron.com/confidentialite', 'oie.registration.form.title': 'Inscrivez-vous à Mon compte', 'oie.registration.form.submit': 'CRÉER MON COMPTE', //Sign in page 'primaryauth.username.placeholder': 'Identifiant', 'oie.custom.identifiertooltip.label': 'Votre identifiant correspond à l’adresse courriel utilisée pour vous inscrire', 'primaryauth.title': 'Connexion', // Changes the sign in text 'oie.primaryauth.submit': 'SE CONNECTER', 'oie.remember': 'Rester connecté', 'forgotpassword': 'Vous avez oublié votre mot de passe?', 'oie.custom.forgotid.link.label': 'Vous avez oublié votre identifiant?', 'help': 'Aide à la connexion et à l’inscription', 'urlhelp': 'https://videotron.com/soutien/compte-facturation/soutien-connexion', 'oie.custom.create.account.prompt': 'Pas d’identifiant Vidéotron?', 'oie.custom.create.account.label': 'Créer un compte', //choix mot de passe 'oie.password.enroll.title': 'Choisissez votre mot de passe', 'oie.password.passwordLabel': 'Entrez votre mot de passe', 'oie.password.confirmPasswordLabel': 'Entrez votre mot de passe de nouveau', 'password.enroll.error.match': 'Les mots de passe ne concordent pas', 'registration.error.password.passwordRequirementsNotMet': 'Le mot de passe ne répond pas à tous les critères', //activation expirée 'oie.activation.request.email.title.expire': 'Ce lien n’est plus valide', //'oie.activation.request.email.title.invalid' : 'Activation link no longer valid', //'oie.activation.request.email.title.suspended' : 'Account suspended', //'oie.activation.request.email.title.submitted' : 'Request submitted', 'oie.activation.request.email.button': 'Demander un nouveau lien', //error messages 'errors.E0000119': 'Votre compte est verrouillé pour les 15 prochaines minutes. Vous pourrez faire une nouvelle tentative ou réinitialiser votre mot de passe par la suite.' }, 'en': { //FOOTER 'copyright': { 'textContent': '©Videotron ' }, 'a-index': { 'href': 'http://corpo.videotron.com/site/entreprise/index-en.jsp', 'label': 'About us' }, 'a-modalites': { 'href': 'http://corpo.videotron.com/site/modalites-utilisation-en.jsp', 'label': 'Terms of use' }, 'a-securites': { 'href': 'http://corpo.videotron.com/site/securite-confidentialite-en.jsp', 'label': 'Privacy' }, 'a-access': { 'href': 'http://corpo.videotron.com/site/accessibilite-en.jsp', 'label': 'Accessibility' }, 'a-prepay': { 'href': 'https://crtc.gc.ca/eng/phone/mobile/prepay.htm', 'label': 'Wireless Code' }, //MFA page 'oie.email.mfa.title': 'Check your emails', 'oie.email.verify.alternate.magicLinkToEmailAddress': 'We sent a verification code by email to <$1>{0}</$1>.', 'oie.email.verify.alternate.magicLinkToEmailAddress.with.secondary.email': 'We sent a verification code to <$1>{0}</$1> and <$2>{1}</$2>.', 'oie.email.verify.sendNewCode': 'Send a new code', 'oie.email.verify.alternate.verificationCode.instructions': 'To continue, enter the verification code provided in the field below.', 'mfa.challenge.enterCode.placeholder': 'Enter the code', 'mfa.challenge.verify': 'VERIFY', 'goback': 'Back to sign in', 'model.validation.field.array.unique': 'This array can only have unique values.', 'model.validation.field.invalid.format.email': 'This value is not a valid email address.', //Sign Up page 'oie.user.profile.primary.email': 'Email', 'oie.user.profile.primary.email.hint': 'This email address will become your new ID, allowing you to connect to all Videotron platforms.', 'oie.custom.birthdate.label': 'Birthdate', 'oie.custom.birthdate.placeholder': 'YYYY-MM-DD', 'oie.custom.birthdate.underage.error': 'The account holder must be at least 18 years old', 'oie.custom.birthdate.invalid.error': 'Enter a valid date of birth (YYYY-MM-DD)', 'oie.custom.phone.invalid.error': 'Enter a valid phone number', 'oie.custom.secretkeyword.hint': 'This secret word will be used to identify you when you contact Customer Support.', 'oie.custom.secretkeyword.label': 'Secret word', 'oie.custom.secretkeyword.placeholder': 'What is your mother’s maiden name ?', 'oie.custom.all.required.hint': 'All fields are required.', 'oie.custom.info.needed.hint': 'We need the following information to create your account.', 'oie.custom.already.account.prompt': 'Already have an account?', 'oie.custom.signin.link.label': 'Sign in', 'empty-option-label': 'Select an Option', 'oie.custom.selectoption.label': 'Select an Option', 'oie.custom.civility.label': 'Civility', 'oie.custom.civility.options': { 'other': 'OTHER', 'mr': 'MR.', 'ms': 'MS.', }, 'oie.custom.phonecontact.label': 'Phone number', 'oie.custom.phonetype.label': 'Phone number type', 'oie.custom.phonetype.options': { 'mobile': 'MOBILE', 'home': 'HOME', 'work': 'WORK', }, 'oie.custom.languagecomms.label': 'Preferred communication language', 'oie.custom.languagecomms.options': { 'english': 'ENGLISH', 'french': 'FRENCH', }, 'oie.custom.consentcomms.label': 'I accept to receive communication from Videotron as well as those from its trusted partners concerning services, products, helpful information and exclusives offers in line with our ', 'oie.custom.consentcomms.privacy.label': 'Privacy Policy', 'oie.custom.consentcomms.privacy.url': 'https://corpo.videotron.com/en/privacy', //https://corpo.videotron.com/en/privacy 'oie.registration.form.title': 'Sign up to My Account', 'oie.registration.form.submit': 'CREATE MY ACCOUNT', //Sign in page 'primaryauth.username.placeholder': 'ID', 'oie.custom.identifiertooltip.label': 'Your ID is the email you’ve entered during registration', 'primaryauth.title': 'Sign in', // Changes the sign in text 'oie.primaryauth.submit': 'SIGN IN', 'oie.remember': 'Keep me signed in', 'forgotpassword': 'Forgot password?', 'oie.custom.forgotid.link.label': 'Forgot ID?', 'help': 'Sign In and Registration Help', 'urlhelp': 'https://videotron.com/en/support/account-billing/connection-support', 'oie.custom.create.account.prompt': 'No Videotron ID?', 'oie.custom.create.account.label': 'Create an account', //choix mot de passe 'oie.password.enroll.title': 'Set up your password', 'oie.password.passwordLabel': 'Enter password', 'oie.password.confirmPasswordLabel': 'Re-enter password', 'password.enroll.error.match': 'Passwords do not match', 'registration.error.password.passwordRequirementsNotMet': 'The password does not meet all requirements', //activation expirée 'oie.activation.request.email.title.expire': 'This link has expired', //'oie.activation.request.email.title.invalid' : 'Activation link no longer valid', //'oie.activation.request.email.title.suspended' : 'Account suspended', //'oie.activation.request.email.title.submitted' : 'Request submitted', 'oie.activation.request.email.button': 'Request a new link', //error messages 'errors.E0000119': 'Your account is locked for the next 15 minutes. You can try again or reset your password later.' } } console.log("config: ", config); //FOOTER const d = new Date(); let year = d.getFullYear(); var copyright = document.querySelector("#copyright"); copyright.textContent = config.i18n[config.language]['copyright']['textContent'] + year; var aindex = document.querySelector("#a-index"); aindex.href = config.i18n[config.language]['a-index']['href']; aindex.text = config.i18n[config.language]['a-index']['label']; var amodalites = document.querySelector("#a-modalites"); amodalites.href = config.i18n[config.language]['a-modalites']['href']; amodalites.text = config.i18n[config.language]['a-modalites']['label']; var asecurites = document.querySelector("#a-securites"); asecurites.href = config.i18n[config.language]['a-securites']['href']; asecurites.text = config.i18n[config.language]['a-securites']['label']; var aaccess = document.querySelector("#a-access"); aaccess.href = config.i18n[config.language]['a-access']['href']; aaccess.text = config.i18n[config.language]['a-access']['label']; var aprepay = document.querySelector("#a-prepay"); aprepay.href = config.i18n[config.language]['a-prepay']['href']; aprepay.text = config.i18n[config.language]['a-prepay']['label']; // Render the Okta Sign-In Widget var oktaSignIn = new OktaSignIn(config); oktaSignIn.renderEl({ el: '#okta-login-container' }, OktaUtil.completeLogin, function (error) { // Logs errors that occur when configuring the widget. // Remove or replace this with your own custom error handler. console.log(error.message, error); // Send a GA event in case of an error dataLayer.push({ event: "error", errorCategory: "okta_error", errorAction: "failure_load_widget", errorLabel: error.message }); } ); let isFirstLoad = true; oktaSignIn.on('afterRender', function (context) { bookmark = false; if (window.location.href === 'https://auth.videotron.com/app/bookmark/0oa938is350YY3rYB697/login') { bookmark = true; } else { bookmark = false; } <!-- Google Tag Manager dataLayer --> let okta_context = "no_context"; if (typeof OktaUtil.getRequestContext === "function" && bookmark === false) { okta_context = OktaUtil.getRequestContext().target.label; } if (bookmark === true) { okta_context = "bookmark"; } // Only push dataLogin event if it's not the first load if (!isFirstLoad) { dataLayer.push({ event: "dataLogin", page: { context: okta_context, flowStep: context.formName, environment: window.location.hostname, platformName: "authentification" }, user: { status: "logged_out", type: "client" } }); } else { // Update the isFirstLoad flag after the first load isFirstLoad = false; } // End Google Tag Manager dataLayer //on first load of EtiyaB2CRegistration app hide signin and force click signup form if (context.formName === "identify") { if (bookmark == false) { if (OktaUtil.getRequestContext().target.label === 'EtiyaB2CRegistration' && flowSignup === 0) { document.getElementById('okta-sign-in').hidden = true; jQueryCourage("a.link.js-enroll").click(); flowSignup = 1; } } } //unhide enroll profile if (context.formName === 'enroll-profile') { document.getElementById('okta-sign-in').hidden = false; } //console.log(context); // Redirect to custom page when error (TFA_392/393) if (context.formName === "failure-redirect") { oktaSignIn.authClient.authStateManager.getAuthState(); oktaSignIn.authClient.signOut( { postLogoutRedirectUri: 'https://sbox1-auth.videotron.com/error?errmsg=social' } ); // Send an event to dataLayer for failure redirect dataLayer.push({ event: "error", errorCategory: "okta_error", errorAction: "failure_redirect", errorLabel: "User redirected due to TFA_392/393 error" }); } jQueryCourage("[data-se='auth-container']").css({ 'border-radius': '0' }); jQueryCourage("[data-se='auth-container']").css({ 'border-width': '1' }); jQueryCourage("[data-se='auth-container']").css({ 'border-color': '#94948E' }); ////console.log(jQueryCourage("div.okta-sign-in-header.auth-header")); //jQueryCourage("div.okta-sign-in-header.auth-header").css('float','left'); //la border de auth-content demandee se retrouve au dessus ne pas utiliser //jQueryCourage("div.auth-content").css('border-top','1px solid #ddd'); jQueryCourage("div.auth-content").css('padding', '24px 24px 24px 24px'); jQueryCourage("div.okta-sign-in-header.auth-header").css('padding', '0 0 0 0'); //jQueryCourage("h1").css('text-align','left'); //titre et logo jQueryCourage("h2.okta-form-title.o-form-head").css('text-align', 'left'); //username jQueryCourage("h2.okta-form-title.o-form-head").css('font-family', '"BlenderPro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"');//identifier jQueryCourage("h2.okta-form-title.o-form-head").css('font-style', 'normal');//identifier jQueryCourage("h2.okta-form-title.o-form-head").css('font-weight', '500');//identifier jQueryCourage("h2.okta-form-title.o-form-head").css('font-size', '28px');//fonte du titre des modales jQueryCourage("img.auth-org-logo").css('max-width', '48px');//taille du logo jQueryCourage("img.auth-org-logo").css('width', '48px');//taille du logo jQueryCourage("img.auth-org-logo").css('max-height', '48px');//taille du logo jQueryCourage("img.auth-org-logo").css('height', '48px');//taille du logo jQueryCourage("img.auth-org-logo").css('margin', '0');//taille du logo //identifiant jQueryCourage("div.identifier-container").css('text-align', 'left'); //identifier jQueryCourage("div.identifier-container").css('font-weight', 'bold');//identifier jQueryCourage("span.identifier.no-translate").css('font-family', '"BlenderPro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"');//identifier jQueryCourage("span.identifier.no-translate").css('font-style', 'normal');//identifier jQueryCourage("span.identifier.no-translate").css('font-weight', '700'); jQueryCourage("span.identifier.no-translate").css('font-size', '16px');//identifier //bouton principal jQueryCourage("input.button.button-primary").css('text-transform', 'uppercase'); jQueryCourage("input.button.button-primary").css('letter-spacing', '1px'); jQueryCourage("input.button.button-primary").css('font-family', '"BlenderPro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"'); jQueryCourage("h2.okta-form-title.o-form-head").css('font-style', 'normal');//identifier jQueryCourage("input.button.button-primary").css('font-weight', '700'); jQueryCourage("input.button.button-primary").css('font-size', '14px'); jQueryCourage("div.o-form-button-bar").css('padding', '0 0 0 0'); //enleve espaces inutile au dessus du bouton suivant ////console.log(context.controller); // Change hardcoded error if (jQueryCourage(".infobox-warning div")[0] && jQueryCourage(".infobox-warning div")[0].outerText.includes('There is no account with the Username')) { jQueryCourage(".infobox-warning div")[0].outerText = config.i18n[config.language].no_account_registered; } // Hide login container when redirect if (context.formName === 'success-redirect') { jQueryCourage("#okta-login-container").hide(); // Send an event to dataLayer for success redirect dataLayer.push({ event: "login", eventCategory: "account", eventAction: "success_login", eventLabel: "success" }); } if (context.controller === 'registration' && context.formName === 'enroll-profile') { // Hide locale attribute form /* jQueryCourage('div[data-se="o-form-fieldset-userProfile.locale"]').hide(); // Set locale to Canadian English or French jQueryCourage('input[name="userProfile.locale"]').val(localeParamsField).trigger('change'); */ } // Hide selection of password or other method page and auto-click password option if (context.controller === "enroll-choices" && context.formName === "select-authenticator-enroll") { if (jQueryCourage("div.authenticator-row").length === 1) { jQueryCourage("div.auth-content").css('visibility', 'hidden'); // if only choice is password if (jQueryCourage("div.authenticator-button[data-se=okta_password]")[0]) { // click password button jQueryCourage("a.button.select-factor.link-button").click(); } if (jQueryCourage("div.authenticator-button[data-se=okta_email]")[0]) { // click email button jQueryCourage("a.button.select-factor.link-button").click(); } } } else { jQueryCourage("div.auth-content").css('visibility', 'visible'); } // reload the page when changing lang /*langController.addEventListener('click', function () { document.cookie = 'fizzlang=' + langs.filter(el => el !== defaultLang)[0]; window.location.reload(); })*/ //Sign up********************************************************** /* jQueryCourage('div[data-se="o-form-fieldset-userProfile.locale"]').hide(); // Set locale to Canadian English or French jQueryCourage('input[name="userProfile.locale"]').val(localeParamsField).trigger('change'); */ jQueryCourage('div.auth-content').css({ 'font-family': 'Open Sans', 'color': '#050504' }); jQueryCourage("[data-se='o-form-head']").css({ 'color': '#050504' }); jQueryCourage("[data-se='o-form-label'] label").css({ 'font-size': '16px', 'line-height': '24px', 'font-weight': '700' }); //margin before the footer jQueryCourage("#okta-login-container main").css('margin-bottom', '150px'); jQueryCourage("#okta-login-container").append("<div id='pre-footer-buffer'>\xa0</div>"); //console.log("Ici juste avant le contexte" + context.formName) if (context.formName === "identify") { document.querySelector('[data-se="help"]').href = config.i18n[config.language]['urlhelp']; jQueryCourage("[data-se='help']").css({ 'margin-top': '16px', 'text-decoration' : 'underline' }); jQueryCourage("[data-se='o-form-fieldset-identifier'] label").css({ 'position': 'relative'/*, 'padding':'1px'*/ }); jQueryCourage("[data-se='o-form-fieldset-identifier']").append("<a id='forgot-id-link' class='info-hint'></a>"); jQueryCourage("[data-se='o-form-fieldset-identifier'] label").append("<svg xmlns='http://www.w3.org/2000/svg' version='1.0' id='question-mark-icon' width='16' height='16' viewBox='0 0 200 200' style='margin-bottom: 3px;'>"+ "<path id='path2382' d='m165.33 113.44a103.61 103.61 0 1 1 -207.22 0 103.61 103.61 0 1 1 207.22 0z' transform='matrix(.93739 0 0 .93739 42.143 -6.3392)' stroke-width='0' fill='#fff'></path>"+ "<g id='layer1'>"+ "<path id='path2413' d='m100 0c-55.2 0-100 44.8-100 100-5.0495e-15 55.2 44.8 100 100 100s100-44.8 100-100-44.8-100-100-100zm0 12.812c48.13 0 87.19 39.058 87.19 87.188s-39.06 87.19-87.19 87.19-87.188-39.06-87.188-87.19 39.058-87.188 87.188-87.188zm1.47 21.25c-5.45 0.03-10.653 0.737-15.282 2.063-4.699 1.346-9.126 3.484-12.876 6.219-3.238 2.362-6.333 5.391-8.687 8.531-4.159 5.549-6.461 11.651-7.063 18.687-0.04 0.468-0.07 0.868-0.062 0.876 0.016 0.016 21.702 2.687 21.812 2.687 0.053 0 0.113-0.234 0.282-0.937 1.941-8.085 5.486-13.521 10.968-16.813 4.32-2.594 9.808-3.612 15.778-2.969 2.74 0.295 5.21 0.96 7.38 2 2.71 1.301 5.18 3.361 6.94 5.813 1.54 2.156 2.46 4.584 2.75 7.312 0.08 0.759 0.05 2.48-0.03 3.219-0.23 1.826-0.7 3.378-1.5 4.969-0.81 1.597-1.48 2.514-2.76 3.812-2.03 2.077-5.18 4.829-10.78 9.407-3.6 2.944-6.04 5.156-8.12 7.343-4.943 5.179-7.191 9.069-8.564 14.719-0.905 3.72-1.256 7.55-1.156 13.19 0.025 1.4 0.062 2.73 0.062 2.97v0.43h21.598l0.03-2.4c0.03-3.27 0.21-5.37 0.56-7.41 0.57-3.27 1.43-5 3.94-7.81 1.6-1.8 3.7-3.76 6.93-6.47 4.77-3.991 8.11-6.99 11.26-10.125 4.91-4.907 7.46-8.26 9.28-12.187 1.43-3.092 2.22-6.166 2.46-9.532 0.06-0.816 0.07-3.03 0-3.968-0.45-7.043-3.1-13.253-8.15-19.032-0.8-0.909-2.78-2.887-3.72-3.718-4.96-4.394-10.69-7.353-17.56-9.094-4.19-1.062-8.23-1.6-13.35-1.75-0.78-0.023-1.59-0.036-2.37-0.032zm-10.908 103.6v22h21.998v-22h-21.998z'></path>"+ "</g>"+ "</svg>"+ "<span class='tooltiptext'>"+config.i18n[config.language]['oie.custom.identifiertooltip.label']+"</span>"); jQueryCourage(".tooltiptext").attr('style','visibility: hidden; width: 240px; background-color: white !important; text-align: center; padding: 11px 0 !important; position: absolute; z-index: 1; bottom: 100%; left: 100%; margin-left: '+(config.language == 'fr'?'-95px':'-36px')+' !important; font-size: 13px !important; line-height: 16px !important; font-weight: 400 !important; box-shadow: 0px 4px 22px 0px #00000033;'); jQueryCourage("#question-mark-icon").hover(function() { console.log("hovered"); jQueryCourage(".tooltiptext").css({'visibility': 'visible'}); }, function() { jQueryCourage(".tooltiptext").css({'visibility': 'hidden'}); }); jQueryCourage('<style>.tooltiptext::after { content: ""; position: absolute; top: 100%; left: 50%; margin-left: '+(config.language == 'fr'?'-38px':'-96px')+'; border-width: 5px; border-style: solid; border-color: white transparent transparent transparent; }</style>').appendTo('head'); jQueryCourage("#forgot-id-link").text(config.i18n[config.language]['oie.custom.forgotid.link.label']); if (bookmark == false) { if (OktaUtil.getRequestContext().target.label === 'Espace-Client Web Affaires') { jQueryCourage("#forgot-id-link").attr('href', 'https://www.videotron.com/client/affaires/InitRecoverUserCode.do?dispatch=initRecoverUserCode&appId=EC'); } else if (OktaUtil.getRequestContext().target.label === 'Espace-Client Mobile') { jQueryCourage("#forgot-id-link").attr('href', 'https://ecm.videotron.com/mobilecustomercenter/recovery-username'); } else { jQueryCourage("#forgot-id-link").attr('href', 'https://www.videotron.com/client/user-management/residentiel/secur/InitRecoverUserCode.do?dispatch=initRecoverUserCode&appId=EC'); } } jQueryCourage("#forgot-id-link").css({ 'text-decoration': 'underline' }); //jQueryCourage("[data-se='o-form-fieldset-credentials.passcode']").append("<a id='forgot-password-link' class='info-hint'></a>"); //jQueryCourage("#forgot-password-link").text(config.i18n[config.language]['forgotpassword']); //jQueryCourage("#forgot-password-link").attr('href',jQueryCourage("div.auth-footer a[data-se='forgot-password']").attr("href")); //clone the forgot password link jQueryCourage("div.auth-footer a[data-se='forgot-password']").clone(true, true).appendTo("[data-se='o-form-fieldset-credentials.passcode']"); jQueryCourage("[data-se='o-form-fieldset-container'] a[data-se='forgot-password']").removeClass('link'); jQueryCourage("[data-se='o-form-fieldset-container'] a[data-se='forgot-password']").text(config.i18n[config.language]['forgotpassword']); jQueryCourage("[data-se='o-form-fieldset-container'] a[data-se='forgot-password']").attr('id', 'forgot-password-link'); jQueryCourage("#forgot-password-link").removeAttr('data-se'); jQueryCourage("#forgot-password-link").addClass('info-hint'); jQueryCourage("#forgot-password-link").css({ 'text-decoration': 'underline' }); //hide the original forgot password link jQueryCourage('a[data-se="forgot-password"]').hide(); jQueryCourage('div.footer-info').css({ 'display': 'block' }); jQueryCourage('div.signup-info span').first().attr('id', 'sign-up-prompt'); jQueryCourage('#sign-up-prompt').text(config.i18n[config.language]['oie.custom.create.account.prompt']); jQueryCourage('#sign-up-prompt').css('font-family', '"BlenderPro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"');//identifier jQueryCourage('#sign-up-prompt').css({ 'display': 'block', 'font-size': '28px', 'line-height': '32px', 'font-weight': '500', 'margin-bottom': '20px' }); jQueryCourage('span.signup-link').css({ 'padding-left': '0' }); jQueryCourage("div.o-form-button-bar").first().clone().appendTo("div.footer-info"); jQueryCourage("div.footer-info input[data-type='save']").attr('id', 'sign-up-link'); jQueryCourage('#sign-up-link').removeClass('button-primary'); jQueryCourage('#sign-up-link').attr('type', 'button'); jQueryCourage('#sign-up-link').removeAttr('data-type'); jQueryCourage('#sign-up-link').attr('value', config.i18n[config.language]['oie.custom.create.account.label']); jQueryCourage('#sign-up-link').css({ 'text-align': 'center' }); //jQueryCourage( '[data-se="enroll"]' ).css({'visibility': 'hidden'}); jQueryCourage('[data-se="enroll"]').hide(); jQueryCourage("#sign-up-link").on("click", function () { jQueryCourage('[data-se="enroll"]').triggerHandler("click"); }); } if (context.formName === "enroll-profile") { //console.log("enroll-profile"); jQueryCourage("[data-se='o-form-fieldset-container']").prepend("<div id='all-required-hint' class='info-hint'></div>"); jQueryCourage("#all-required-hint").text(config.i18n[config.language]['oie.custom.all.required.hint']); jQueryCourage("div.auth-footer a[data-se='back']").clone(true, true).prependTo("[data-se='o-form-fieldset-container']"); jQueryCourage("[data-se='o-form-fieldset-container'] a[data-se='back']").removeClass('link'); jQueryCourage("[data-se='o-form-fieldset-container'] a[data-se='back']").text(config.i18n[config.language]['oie.custom.signin.link.label']); jQueryCourage("[data-se='o-form-fieldset-container'] a[data-se='back']").attr('id', 'sign-in-link'); //jQueryCourage("[data-se='o-form-fieldset-container'] a[data-se='back']").attr('onclick', 'function() { config.flow="login" };'); jQueryCourage("#sign-in-link").removeAttr('data-se'); jQueryCourage("#sign-in-link").addClass('info-hint'); jQueryCourage("[data-se='o-form-fieldset-container']").prepend("<div id='already-account-prompt' class='already-acc-prompt'></div>"); jQueryCourage("#already-account-prompt").text(config.i18n[config.language]['oie.custom.already.account.prompt']); jQueryCourage("[data-se='o-form-fieldset-container']").prepend("<div id='info-needed-hint' class='info-hint'></div>"); jQueryCourage("#info-needed-hint").text(config.i18n[config.language]['oie.custom.info.needed.hint']); jQueryCourage("[data-se='o-form-fieldset-userProfile.email']").append("<span id='user-email-hint' class='input-hint'></span>"); jQueryCourage("#user-email-hint").text(config.i18n[config.language]['oie.user.profile.primary.email.hint']); jQueryCourage("[data-se='o-form-fieldset-userProfile.vlSecretKeyword']").append("<span id='user-secret-hint' class='input-hint'></span>"); jQueryCourage("#user-secret-hint").text(config.i18n[config.language]['oie.custom.secretkeyword.hint']); jQueryCourage("label[data-se-for-name='userProfile.vlConsentComms']").addClass('info-hint'); jQueryCourage('.input-hint').css({ 'display': 'inline-block', 'margin-top': '5px', 'font-size': '12px', 'line-height': '16px', 'font-weight': '400' }); jQueryCourage('.info-hint').css({ 'margin-bottom': '15px', 'font-size': '16px', 'line-height': '24px', 'font-weight': '400' }); jQueryCourage('a.info-hint').css({ 'display': 'inline-block', 'text-decoration': 'underline' }); jQueryCourage("#all-required-hint").css({ 'font-style': 'italic' }); jQueryCourage("#already-account-prompt").css({ 'font-size': '26px', 'line-height': '28px', 'font-weight': '700' }); jQueryCourage("#already-account-prompt").css('font-family', '"BlenderPro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"'); document.querySelector('[data-se="o-form-fieldset-userProfile.vlBirthdate"] label').innerText = config.i18n[config.language]['oie.custom.birthdate.label']; document.querySelector('[data-se="o-form-fieldset-userProfile.vlCivility"] label').innerText = config.i18n[config.language]['oie.custom.civility.label']; document.querySelector('select[name="userProfile.vlCivility"] option[value="other"]').innerText = config.i18n[config.language]['oie.custom.civility.options']['other']; document.querySelector('select[name="userProfile.vlCivility"] option[value="mr"]').innerText = config.i18n[config.language]['oie.custom.civility.options']['mr']; document.querySelector('select[name="userProfile.vlCivility"] option[value="ms"]').innerText = config.i18n[config.language]['oie.custom.civility.options']['ms']; // select box placeholders are not immediately loaded, use setInterval to wait/retry jQueryCourage(document).ready(function () { customizeSelectBoxPlaceholdersWithRetry(); function customizeSelectBoxPlaceholdersWithRetry() { var civilitySelector = "span[data-se='o-form-input-userProfile.vlCivility'] a span"; var phoneTypeSelector = "span[data-se='o-form-input-userProfile.vlPhoneType'] a span"; var languageCommsSelector = "span[data-se='o-form-input-userProfile.vlLanguageComms'] a span"; var n = 1; var nbMaxTries = 10; var nbIntervalMS = 50; var interval = setInterval(function () { if (jQueryCourage(civilitySelector).length == 0 && jQueryCourage(phoneTypeSelector).length == 0 && jQueryCourage(languageCommsSelector).length == 0 && n <= nbMaxTries) { n++; } else { if (jQueryCourage(civilitySelector).length > 0) { jQueryCourage(civilitySelector).text(config.i18n[config.language]['oie.custom.selectoption.label']); } if (jQueryCourage(phoneTypeSelector).length > 0) { jQueryCourage(phoneTypeSelector).text(config.i18n[config.language]['oie.custom.selectoption.label']); } if (jQueryCourage(languageCommsSelector).length > 0) { jQueryCourage(languageCommsSelector).text(config.i18n[config.language]['oie.custom.selectoption.label']); } clearInterval(interval); } }, nbIntervalMS); } }); document.querySelector('[data-se="o-form-fieldset-userProfile.vlPhoneContact"] label').innerText = config.i18n[config.language]['oie.custom.phonecontact.label']; document.querySelector('[data-se="o-form-fieldset-userProfile.vlPhoneType"] label').innerText = config.i18n[config.language]['oie.custom.phonetype.label']; document.querySelector('select[name="userProfile.vlPhoneType"] option[value="mobile"]').innerText = config.i18n[config.language]['oie.custom.phonetype.options']['mobile']; document.querySelector('select[name="userProfile.vlPhoneType"] option[value="home"]').innerText = config.i18n[config.language]['oie.custom.phonetype.options']['home']; document.querySelector('select[name="userProfile.vlPhoneType"] option[value="work"]').innerText = config.i18n[config.language]['oie.custom.phonetype.options']['work']; document.querySelector('[data-se="o-form-fieldset-userProfile.vlLanguageComms"] label').innerText = config.i18n[config.language]['oie.custom.languagecomms.label']; document.querySelector('select[name="userProfile.vlLanguageComms"] option[value="english"]').innerText = config.i18n[config.language]['oie.custom.languagecomms.options']['english']; document.querySelector('select[name="userProfile.vlLanguageComms"] option[value="french"]').innerText = config.i18n[config.language]['oie.custom.languagecomms.options']['french']; document.querySelector('[data-se="o-form-fieldset-userProfile.vlConsentComms"] label').innerText = config.i18n[config.language]['oie.custom.consentcomms.label']; jQueryCourage("[data-se='o-form-fieldset-userProfile.vlConsentComms']").addClass("consent-text"); //wrapping is needed for consent comms //document.querySelector('label[data-se-for-name="userProfile.vlConsentComms"]').classList.add("ow"); //secret word label and placeholder document.querySelector('[data-se="o-form-fieldset-userProfile.vlSecretKeyword"] label').innerText = config.i18n[config.language]['oie.custom.secretkeyword.label']; document.querySelector('[name="userProfile.vlSecretKeyword"]').setAttribute('placeholder', config.i18n[config.language]['oie.custom.secretkeyword.placeholder']); //consent comms wrap and privacy policy link jQueryCourage("div.custom-checkbox").css('width', 'fit-content'); jQueryCourage("div.custom-checkbox").css('height', '130px'); jQueryCourage("div.custom-checkbox").css('margin-bottom', '20px'); jQueryCourage("label[data-se-for-name='userProfile.vlConsentComms']").append("<a href='https://videotron.com' class='privacy-policy' target='_blank' rel='noopener noreferrer' style='text-decoration: underline;'>Privacy Policy</a>"); document.querySelector('[data-se-for-name="userProfile.vlConsentComms"] a').innerText = config.i18n[config.language]['oie.custom.consentcomms.privacy.label']; document.querySelector('[data-se-for-name="userProfile.vlConsentComms"] a').setAttribute('href', config.i18n[config.language]['oie.custom.consentcomms.privacy.url']); //move password section to before secret word jQueryCourage("[data-se='o-form-fieldset-credentials.passcode']").insertBefore(jQueryCourage("[data-se='o-form-fieldset-userProfile.vlSecretKeyword']")); jQueryCourage("[data-se='password-authenticator--rules']").insertBefore(jQueryCourage("[data-se='o-form-fieldset-userProfile.vlSecretKeyword']")); //firstname and lastname must be only letters document.querySelector('[name="userProfile.firstName"]').addEventListener('input', applyOnlyAlpha, false); document.querySelector('[name="userProfile.lastName"]').addEventListener('input', applyOnlyAlpha, false); function applyOnlyAlpha(e) { e.target.value = onlyAlpha(e.target.value) } function onlyAlpha(input) { return input.replace(/[^a-zA-ZàáâäãåąčćęèéêëėįìíîïłńòóôöõøùúûüųūÿýżźñçčšžÀÁÂÄÃÅĄĆČĖĘÈÉÊËÌÍÎÏĮŁŃÒÓÔÖÕØÙÚÛÜŲŪŸÝŻŹÑßÇŒÆČŠŽ∂ð ,.'-]+$/u, ''); } //phone number mask jQueryCourage("[data-se='o-form-fieldset-userProfile.vlPhoneContact'] [data-se='o-form-input-container']").append("<p id='phone-validation-warning' class='' style='color: #d93934;padding-left: 18px;display: block;'></p>"); document.querySelector('[name="userProfile.vlPhoneContact"]').setAttribute('placeholder', 'XXX-XXX-XXXX'); document.querySelector('[name="userProfile.vlPhoneContact"]').addEventListener('input', applyPhoneNumberMask, false); function applyPhoneNumberMask(e) { e.target.value = phoneNumberMask(e.target.value); setPhoneWarning(""); } function phoneNumberMask(phoneNumber) { return phoneNumber.replace(/^[^1-9]/, '') .replace(/\D/g, '') .replace(/^(\d)/, '$1') .replace(/^(\d{3})(\d)/, '$1-$2') .replace(/-(\d{3})(\d{1,3})/, '-$1-$2') .replace(/(-\d{4})\d+?$/, '$1'); } document.querySelector('input[name="userProfile.vlPhoneContact"]').addEventListener("focusout", function () { if (jQueryCourage(this).val() != '') { validatePhone(jQueryCourage(this).val()); } }); function validatePhone(phoneString) { if (phoneString.length == 12) { setPhoneWarning(''); } else { setPhoneWarning(config.i18n[config.language]['oie.custom.phone.invalid.error']); } return (phoneString.length == 12); } function setPhoneWarning(newText) { setValidationWarning("#phone-validation-warning", newText); } //date of birth mask jQueryCourage("[data-se='o-form-fieldset-userProfile.vlBirthdate'] [data-se='o-form-input-container']").append("<p id='age-validation-warning' class='' style='color: #d93934;padding-left: 18px;display: block;'></p>"); document.querySelector('[name="userProfile.vlBirthdate"]').setAttribute('placeholder', config.i18n[config.language]['oie.custom.birthdate.placeholder']); document.querySelector('[name="userProfile.vlBirthdate"]').addEventListener('input', applyDateMask, false); function applyDateMask(e) { e.target.value = dateMask(e.target.value) if (e.target.value.length == 10) { validateBirthDate(e.target.value) } else { setDateWarning(""); } } function setDateWarning(newText) { setValidationWarning("#age-validation-warning", newText); } function setValidationWarning(fieldId, newText) { if (newText != '') { jQueryCourage(fieldId).empty() jQueryCourage(fieldId).append("<span class='icon icon-16 error-16-small' role='img' aria-label='Error' style='left: -2px;position: absolute!important;'></span>" + newText); jQueryCourage(fieldId).addClass("has-errors") } else { jQueryCourage(fieldId).empty() jQueryCourage(fieldId).removeClass("has-errors") } } function dateMask(date) { return date.replace(/^[^1-2]/, '') .replace(/^(1[^9])/, '1') .replace(/\D/g, '') .replace(/^(\d)/, '$1') .replace(/^(\d{4})(\d)/, '$1-$2') .replace(/-(\d{2})(\d{1,2})/, '-$1-$2') .replace(/(-\d{2})\d+?$/, '$1'); } document.querySelector('input[name="userProfile.vlBirthdate"]').addEventListener("focusout", function () { if (jQueryCourage(this).val() != '') { validateBirthDate(jQueryCourage(this).val()); } }); function validateBirthDate(dateString) { var validDateReg = /((2000|2400|2800|(19|2[0-9])(0[48]|[2468][048]|[13579][26]))-02-29)|(((19|2[0-9])[0-9]{2})-02-(0[1-9]|1[0-9]|2[0-8]))|(((19|2[0-9])[0-9]{2})-(0[13578]|10|12)-(0[1-9]|[12][0-9]|3[01]))|(((19|2[0-9])[0-9]{2})-(0[469]|11)-(0[1-9]|[12][0-9]|30))/g; if (dateString.length == 10 && dateString.match(validDateReg)) { var parts = dateString.split('-'); var dob = new Date(parts[0], parts[1] - 1, parts[2]); if (getAge(dob) < 18) { setDateWarning(config.i18n[config.language]['oie.custom.birthdate.underage.error']); return { isValid: true, isAdult: false } } setDateWarning(''); return { isValid: true, isAdult: true } } else { setDateWarning(config.i18n[config.language]['oie.custom.birthdate.invalid.error']); return { isValid: false } } } function getAge(birthDate) { var today = new Date(); var age = today.getFullYear() - birthDate.getFullYear(); var m = today.getMonth() - birthDate.getMonth(); if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) { age--; } return age; } document.querySelector('[data-se="o-form"] div.o-form-button-bar input').addEventListener('click', function (event) { if (jQueryCourage("#age-validation-warning").hasClass("has-errors") || jQueryCourage("#phone-validation-warning").hasClass("has-errors")) { event.preventDefault(); } }); //Sign in link uppercase, bold and centered jQueryCourage("div.auth-footer").css('margin-top', '20px'); jQueryCourage("a.link.js-back").css('text-transform', 'uppercase'); jQueryCourage("a.link.js-back").css('font-weight', 'bold'); jQueryCourage("a.link.js-back").css('align-self', 'center'); jQueryCourage("a.link.js-back").css('text-decoration', 'underline'); } if (context.controller === "enroll-password" && context.formName === "enroll-authenticator") { jQueryCourage('a[data-se="switchAuthenticator"]').hide(); jQueryCourage('a[data-se="cancel"]').hide(); jQueryCourage("div.siw-main-header").css('visibility', 'hidden'); jQueryCourage("div.beacon-container").css('visibility', 'hidden');//pas d'effet } //lien expiré if (context.formName === "request-activation-email") { jQueryCourage('a[data-se="cancel"]').hide(); jQueryCourage("div.o-form-error-container").hide();//cacher error message confirmation //jQueryCourage("div.infobox.clearfix.infobox-error").hide();//cacher error message confirmation } //lien désactivé ou client déja activé if (context.formName === "terminal") { //jQueryCourage('a[data-se="cancel"]').hide(); jQueryCourage("div.o-form-error-container").hide();//cacher error message confirmation //jQueryCourage("div.infobox.clearfix.infobox-error").hide();//cacher error message confirmation jQueryCourage("div.auth-footer").css('background', '#ffd200'); jQueryCourage("div.auth-footer").css('border-color', '#ffd200'); jQueryCourage("div.auth-footer").css('height', '50px'); jQueryCourage("div.auth-footer").css('border', '1px solid #ffd200'); jQueryCourage("div.auth-footer").css('box-sizing', 'border-box'); jQueryCourage("div.auth-footer").css('padding', '0 15px'); jQueryCourage("div.auth-footer").css('line-height', '36px'); jQueryCourage("a.link.js-go-back").css('align-self', 'center'); jQueryCourage("a.link.js-go-back").css('text-transform', 'uppercase'); jQueryCourage("a.link.js-go-back").css('color', '#000000'); jQueryCourage("a.link.js-go-back").css('text-decoration', 'none'); jQueryCourage("a.link.js-go-back").css('letter-spacing', '1px'); jQueryCourage("a.link.js-go-back").css('font-family', '"BlenderPro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"'); jQueryCourage("a.link.js-go-back").css('font-style', 'normal');//identifier jQueryCourage("a.link.js-go-back").css('font-weight', '700'); jQueryCourage("a.link.js-go-back").css('font-size', '14px'); } // auto click choice to send code if (context.controller === null && context.formName === "authenticator-verification-data") { if (context.authenticatorKey && context.authenticatorKey === "okta_email") { jQueryCourage("div.beacon-container").css('visibility', 'hidden'); jQueryCourage("div.auth-content-inner").css('visibility', 'hidden'); jQueryCourage('input[data-type="save"]').click(); } } if (context.controller === 'mfa-verify-passcode' || context.controller === 'mfa-verify-password' || context.controller === 'forgot-password' || context.controller === 'password-expired') { //Sign in link uppercase, bold and centered jQueryCourage("div.auth-footer").css('margin-top', '20px'); jQueryCourage("a.link.js-cancel").css({ 'text-decoration': 'underline', 'text-transform': 'uppercase', 'font-weight': 'bold', 'align-self': 'center' }); jQueryCourage("div.beacon-container").css('visibility', 'hidden'); } if (context.controller === 'mfa-verify-passcode' || context.controller === 'enroll-email') { jQueryCourage("button.enter-auth-code-instead-link").click(); jQueryCourage("div.identifier-container").css('visibility', 'hidden'); jQueryCourage("div.identifier-container").css('height', '0'); //de-obfuscates the email adress jQueryCourage("div.auth-content-inner").css('visibility', 'visible'); let identifier = jQueryCourage("div.identifier-container span[data-se='identifier']").text(); if (identifier) jQueryCourage("div[data-se='o-form-error-container'] div[data-se='o-form-explain'] span").text(identifier); jQueryCourage("div.beacon-container").css('visibility', 'hidden'); jQueryCourage('a[data-se="switchAuthenticator"]').hide(); jQueryCourage("a.link.js-cancel").hide(); jQueryCourage("div.auth-footer").css('margin-top', '20px'); //clone the send again link - we need to clone the parent div and remove all children but the link jQueryCourage("div.resend-email-view").clone(true, true).appendTo("div.auth-footer"); jQueryCourage("div.auth-footer div.resend-email-view").removeClass(["hide"]); jQueryCourage("div.auth-footer div[data-se='callout']").removeClass(["infobox", "clearfix", "infobox-warning"]); jQueryCourage("div.auth-footer div[data-se='callout'] span").remove(); jQueryCourage("div.auth-footer div[data-se='callout'] div").contents().filter(function () { return this.nodeType === 3; }).remove(); jQueryCourage("div.auth-footer a.resend-link").text(config.i18n[config.language]['oie.email.verify.sendNewCode']); jQueryCourage("div.auth-footer a.resend-link").css({ 'text-decoration': 'underline', 'text-transform': 'uppercase', 'font-weight': 'bold', 'align-self': 'center' }); jQueryCourage("div.auth-footer a.resend-link").attr('id', 'send-new-code-link'); jQueryCourage("#send-new-code-link").removeAttr('data-se'); jQueryCourage("#send-new-code-link").addClass('resend-link'); jQueryCourage("#send-new-code-link").css({ 'text-decoration': 'underline', 'cursor': 'pointer' }); } // Re-organise together all links before social logins if (context.controller === "primary-auth") { //document.querySelector('[data-se="o-form-fieldset-identifier"] label').title = config.i18n[config.language]['oie.custom.identifiertooltip.label']; if (jQueryCourage('div.auth-footer') && jQueryCourage('div.links-primary')) { let footerLinks = jQueryCourage('div.auth-footer').children(); for (let i = 0; i < footerLinks.length; i++) { if (footerLinks[i].classList.contains('link')) { jQueryCourage('div.links-primary').append(footerLinks[i]); } } } } }); </script>