1<!DOCTYPE html> 2<html lang="en"> 3 <head> 4 5 <!-- META --> 6 <meta name="robots" content="noindex, follow"> 7 <meta property="og:type" content="website"> 8 <meta property="og:site_name" content="Springly"> 9 <title>Hawaii Speech Language Hearing Association - Login page</title> 10 <meta name="description" content="Login to access the members' area of Hawaii Speech Language Hearing Association"> 11 <meta property="og:description" content="Login to access the members' area of Hawaii Speech Language Hearing Association"> 12 <meta property="og:locale" content="en_US"> 13 <meta property="og:url" content="https://www.hsha.org/contacts/login?redirect=%2Fpage%2F1997185-home"> 14 <meta property="og:image" content="https://app.assoconnect.com/services/storage?id=3863747&type=picture&secret=7naJI4fey7A65DEqTLtPBc8JlUu5L6of4eGuGQO4&timestamp=1776181436"> 15 <meta property="og:image:width" content="540"> 16 <meta property="og:image:height" content="282"> 17 <meta name="viewport" property="viewport" content="width=device-width, initial-scale=1.0"> 18<meta charset="utf-8"> 19<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 20<meta name="google-signin-use_fedcm" content="true"> 21 <link rel="canonical" href="https://www.hsha.org/contacts/login?redirect=%2Fpage%2F1997185-home"> 22 23 <!-- Favicon --> 24 <link rel="icon" type="image/png" href="https://assets.assoconnect.com/legacy/springly.org/image/favicon.png"> 25 26 <!-- https://dev.twitter.com/web/overview/widgets-webpage-properties --> 27 <meta name="twitter:widgets:csp" content="on"> 28 29 <!-- CSS --> 30 31 32<!-- jQuery UI --> 33<!-- Le CSS de jQuery UI utilise des chemins relatifs pour les images, on ne peut donc pas l'inclure dans le CSS global --> 34<link 35 rel="stylesheet" 36 href="https://code.jquery.com/ui/1.14.1/themes/base/jquery-ui.css" 37 integrity="sha512-Ikr9iIb48ljzg7k903d77p0AITNsf4DxtxK4g5R4UiqHpCdroXAX0zqr0uPSWskJOJ1pQoAOXCb8WPkohWY3Bw==" 38 crossorigin="anonymous" 39> 40 41<!-- Layout --> 42<link rel="stylesheet" href="https://cdn.assoconnect.com/public/build/css/common.-.layout.-.connexion.DESKTOP.e448b25.css"> 43 44<!-- Template --> 45<style></style> 46 47<!-- Google Font --> 48 <!-- :400,700 for bold --> 49 <link href="https://fonts.googleapis.com/css?family=Roboto:400,500,700" rel="stylesheet"> 50 51 52<!-- Choices.js --> 53 54<!-- ContentTools --> 55 56<!-- Cropper --> 57 58<!-- FullCalendar --> 59 60<!-- Simplelightbox --> 61 62<!-- Leaflet --> 63<!-- Leaflet MarkerCluster --> 64 65<style nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 66 #teamblue-widget-container { 67 position: fixed; 68 bottom: 0; 69 left: 0; 70 width: 0; 71 height: 0; 72 overflow: hidden; 73 } 74</style> 75 76 <!-- JS --> 77
77<script async nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 78 // Browser check 79 // https://stackoverflow.com/a/55655928/7671937 80 function isCrappyIE() { 81 var ua = window.navigator.userAgent; 82 var crappyIE = false; 83 var msie = ua.indexOf('MSIE '); 84 if (msie > 0) { // IE 10 or older => return version number 85 crappyIE = true; 86 } 87 var trident = ua.indexOf('Trident/'); 88 if (trident > 0) { // IE 11 => return version number 89 crappyIE = true; 90 } 91 return crappyIE; 92 } 93 94 if(isCrappyIE()) { 95 alert("You are using an old version of Internet Explorer that is no longer maintained. For the comfort of your navigation, please use an up-to-date browser."); 96 } 97</script>
97 98
99<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 100 var SIZE_FIXED = "fixed"; 101 var SIZE_FREE = "free"; 102 var SIZE_MIN = "min"; 103 var SIZE_MIN_WIDTH = "min-width"; 104 var SIZE_MIN_HEIGHT = "min-height"; 105 var SIZE_MAX = "max"; 106 var SIZE_MAX_WIDTH = "max-width"; 107 var SIZE_MAX_HEIGHT = "max-height"; 108 var ORIGINAL_WIDTH = 1200; 109 var ORIGINAL_HEIGHT = 628; 110 var SIZE_STANDARD = "standard"; 111 var SIZE_USER = "user"; 112 var SIZE_VENDOR = "vendor"; 113 var THUMB_WIDTH = 352; 114 var THUMB_HEIGHT = 184; 115 var USER_NORMAL = 200; 116</script>
vendor: 1 bytes, line 116
116
117<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 118 var HOST_PUBLIC = "https:\/\/assets.assoconnect.com\/legacy"; 119 var HOST_SPARK = "https:\/\/assets.assoconnect.com\/legacy\/spark"; 120 var SPARK_VERSION = "e448b25"; 121 var SPARK_FORM_UPLOAD_MAX_SIZE = 10485760; 122 var SPARK_FORM_UPLOAD_MAX_NAME_LENGTH = 249; 123 var URI_CLIENT = "\/contacts\/login?redirect=%2Fpage%2F1997185-home"; 124 var URI_SERVER = "\/membres\/connexion"; 125 var VENDOR_ID = 424341; 126 var _GIFS = []; 127 var RECAPTCHA = "6Ldy5hwUAAAAAGrMqPOdhVGOLd79KcXDcHg7mjgH"; 128 var MAPBOX_TOKEN = "pk.eyJ1IjoiYXNzb2Nvbm5lY3QiLCJhIjoiY2pycTlxaGh0MDEyMTQzcGZ0eTlidmdmciJ9.-lrrOF0HPATIKSl8luHqwA"; 129 var CSP_NONCE = "e755256c-fcec-4a47-85f6-89d949d705bc"; 130 var I18N_CURRENCY = "USD"; 131 var I18N_LOCALE = "en-US"; 132 var I18N_TIMEZONE = "US\/Hawaii"; 133 var SITE_CODE = "y"; 134</script>
134 135 136<!-- Translator Method -->
137<script 138 nonce="e755256c-fcec-4a47-85f6-89d949d705bc" 139 src="https://cdnjs.cloudflare.com/ajax/libs/intl-messageformat/5.1.0/intl-messageformat.min.js" 140 integrity="sha256-jkYwyAJTaU4esUDFkWA92xz+ARjXOmPO8ul5jjY3MWk=" 141 crossorigin="anonymous" 142></script>
vendor: 1 bytes, line 142
142
143<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 144 window.trans = function trans(key, params) { 145 // Translation key not found 146 if(window.translations.hasOwnProperty(key) === false) { 147 return key; 148 } 149 150 var translation = window.translations[key]; 151 152 var translator = new IntlMessageFormat.IntlMessageFormat(translation, I18N_LOCALE); 153 154 return translator.format(params); 155 }; 156 157 window.transCurrency = new Intl.NumberFormat( 158 I18N_LOCALE, 159 { style: 'currency', currency: "USD"} 160 ).format; 161 162 window.transDate = new Intl.DateTimeFormat(I18N_LOCALE, { 163 timeZone: I18N_TIMEZONE, 164 }).format; 165 166 window.transDateFromYMD = function(value) { 167 value = String(value).replaceAll('-', ''); 168 // YYYYMMDD or YYYYMMDDHHiiss 169 if (String(value).length !== 8 && String(value).length !== 14) { 170 return '' 171 } 172 173 var date = new Date(value.substr(0, 4) + "-" + value.substr(4, 2) + "-" + value.substr(6, 2)); 174 175 // Invalid date 176 if (isNaN(date)) { 177 return '' 178 } 179 180 return transAbsoluteDate(date); 181 } 182 183 window.transDateTime = new Intl.DateTimeFormat(I18N_LOCALE, { 184 timeZone: I18N_TIMEZONE, 185 year: "numeric", 186 month: "2-digit", 187 day: "2-digit", 188 hour: "numeric", 189 minute: "numeric", 190 second: "numeric", 191 }).format; 192 193 // Trans date created with new Date('1986-06-02') 194 window.transAbsoluteDate = new Intl.DateTimeFormat(I18N_LOCALE, { 195 timeZone: "UTC", 196 }).format; 197 198 // Trans date formatted as YYYYMMDDHHiiss 199 window.transAbsoluteDateYMD = function (value) { 200 // YYYYMMDD or YYYYMMDDHHiiss 201 if (String(value).length !== 8 && String(value).length !== 14) { 202 return '' 203 } 204 205 var date = new Date(value.substr(0, 4) + "-" + value.substr(4, 2) + "-" + value.substr(6, 2)); 206 207 // Invalid date 208 if (isNaN(date)) { 209 return '' 210 } 211 212 return transAbsoluteDate(date); 213 } 214 215 window.translations = Object.assign({"ckeditor.subtitle":"Subtitle","ckeditor.title":"Title","ckeditor.maintitle":"Main title","form.select.placeholder":"Select","form.uploadPicture.complete.delete":"Delete","form.uploadPicture.prepareInput.button":"Select","form.uploadPicture.prepareInput.drop":"Add an image","form.uploadPicture.prepareInput.send":"Select","form.uploadPicture.prepareInput.size":"Recommended size: { width } x { height } px","form.uploadPicture.remove.confirm.text":"Do you really want to delete the image \"{filename}\"?","jquery.ajax.error":"An error has occurred. This error may be due to your internet connection. Do not hesitate to contact us if this error remains unresolved.\n","jquery.ajax.forbidden":"You do not have access rights to perform this operation.","popup.blocked":"You must allow popups for this site in order to see the form preview","registration.addedMail":"Your subscription to the Newsletter has been confirmed. You'll hear from us soon!","registration.addMail":"Please provide an email address.","registration.failed":"Subscription failed!","registration.mailAlreadyExisting":"This email address is already subscribed to the newsletter.","spark.dirty.onBeforeUnload":"You have edited information. Leaving this page without saving them may result in their loss.","spark.form.bic.helper.country":"The SWIFT code is probably invalid: please check the 5th and 6th ( { country } ) characters.","spark.form.bic.helper.incorrect":"Invalid SWIFT code.","spark.form.country.helper.incorrect":"Unknown country.","spark.form.date.helper.format":"Incorrect date (format: MM\/DD\/YYYY).","spark.form.date.helper.futureDateNotAllowed":"Date in the future","spark.form.date.helper.yearInTwoDigits":"Year must be 4 digits","spark.form.date.helper.yearStartsWithZero":"Year cannot start with a zero","spark.form.datetime.checkLegalAge.error.age":"The legal representative must be of legal age","spark.form.datetime.update.error.incorrect":"Invalid date.","spark.form.datetime.update.error.max":"The date must be before: { max }","spark.form.datetime.update.error.min":"The date must be after: { min }","spark.form.domain.check.error":"Invalid domain name","spark.form.iban.helper.invalid":"Invalid IBAN.","spark.form.mail.check.question":"We have detected a potential typing error. Is your email address { suggest }?","spark.form.mail.check.yes":"Yes, correct the address","spark.form.mail.check.no":"No, keep the address provided","spark.form.mail.confirm.error":"Emails don't match.","spark.form.mail.helper.at":"The \"at\" sign (@) is missing in this email","spark.form.mail.helper.domain":"The email address' domain name is invali
215d.","spark.form.mail.helper.empty":"Please provide an email address.","spark.form.mail.helper.incorrect":"Invalid email.","spark.form.mail.helper.invalid":"This email contains invalid characters.","spark.form.model.addressSearch.city":"City","spark.form.model.addressSearch.country":"Country","spark.form.model.addressSearch.location":"Name of the place","spark.form.model.addressSearch.notFound":"Can't find the address?","spark.form.model.addressSearch.placeholder":"Here, search for the address you want to save ","spark.form.model.addressSearch.postal":"Zip code","spark.form.model.addressSearch.reset":"Delete address or provide a new one","spark.form.model.addressSearch.street1":"Street","spark.form.model.addressSearch.street2":"Additional address information","spark.form.model.category":"Category","spark.form.money.check.error":"Invalid amount. ","spark.form.password.confirm.error":"Passwords don't match.","spark.form.percent.check.error":"Invalid value.","spark.form.phone.helper.country":"Invalid country code.","spark.form.phone.helper.incorrect":"Invalid phone number.","spark.form.phone.helper.length.tooLong":"The phone number is too long.","spark.form.phone.helper.length.tooShort":"The phone number is too short.","spark.form.phone.helper.mobile":"Please provide a mobile phone.","spark.form.phone.helper.phone":"Please provide a landline phone number.","spark.form.phone.helper.refused":"Unsupported phone number type.","spark.form.phone.helper.unknown":"Unknown phone.","spark.form.postal.helper.country.required":"The country must be provided.","spark.form.postal.helper.country.unknown":"Unknown country: { country }","spark.form.postal.helper.incorrect":"Invalid zip code.","spark.form.postal.helper.required":"The zip code must be provided.","spark.form.postal.helper.unused":"This country doesn't use zip codes.","spark.form.textCount.update.character":"character","spark.form.upload.check.error.limit":"You have reached the maximum limit of files: { limit } .","spark.form.upload.check.error.name":"The file name is too long (max. {limit} characters, extension excluded).","spark.form.upload.check.error.size":"The file is too large (max: { size } { unit } ).","spark.form.upload.check.error.type":"Unsupported file format.","spark.form.upload.DOMProgress.text":"Loading...","spark.form.upload.prepare.button.select":"Select","spark.form.upload.prepare.drop":"Add a file","spark.form.upload.remove.confirm.text":"Do you really want to delete the file \"{filename}\"?","spark.form.upload.uploadFile.callback.error":"An error has occurred during download.","spark.form.url.check.error":"Invalid URL.","spark.notification.button.nextNotice":"Next error","spark.notification.button.prevNotice":"Previous error","spark.template.accordion.button.title":"More","spark.template.button.cancel":"Cancel","spark.template.button.close":"Close","spark.template.button.continue":"Continue","spark.template.button.delete":"Delete","spark.template.button.edit":"Edit","spark.template.button.submit":"Send","spark.template.button.view":"View","spark.template.confirm.confirmText.label":"Please enter \"{ confirmText }\"","spark.template.confirm.error":"The text entered is incorrect","spark.template.editable.create.button.submit":"Confirm","spark.template.editable.create.save.error":"Unable to save changes.","spark.template.loading.text":"Loading...","spark.template.notification.save":"Saved","spark.template.table.count.checked.all.button":"All { nbDisplayed } lines on this page are selected. <u>Select all { truncatedNb } lines<\/u>.","spark.template.table.count.checked.all.buttonUntruncated":"All { nbDisplayed } lines on this page are selected. <u>Select all lines<\/u>.","spark.template.table.count.checked.all.text":"All rows are selected ","spark.template.table.count.checked.truncated":"{ nbChecked } row(s) selected of { nbTotal }","spark.template.table.count.checked.untruncated":"{ nbChecked } selected row(s) out of a large number of rows.","spark.template.table.count.displayed.empty":"No row(s)","spark.template.table.count.displayed.rows":"{ nbDisplayed } row(s).","spark.template.table.count.displayed.truncated":"{ nbDisplayed } displayed row(s) out of { truncatedNb }.","spark.template.table.count.displayed.untruncated":"{ nbDisplayed } displayed row(s) out of a large number of rows.","spark.template.table.exports.empty":"The table is empty!","spark.template.table.
215warning.partialSorting":"You have just displayed a maximum of 50 additional lines. The sorting does not apply to the newly loaded rows. Rerun the sorting on all displayed rows.","fraud.quickEmails.probationLimit":"You cannot contact these many people. You only have {remaining} possible emails today."},window.translations); 216 window.translations = Object.assign({"seePassword":"Show password"},window.translations); 217</script>
217 218 219<!-- jQuery -->
220<script 221 nonce="e755256c-fcec-4a47-85f6-89d949d705bc" 222 src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js" 223 integrity="sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo=" 224 crossorigin="anonymous" 225></script>
vendor: 1 bytes, line 225
225
226<script 227 nonce="e755256c-fcec-4a47-85f6-89d949d705bc" 228 src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.14.1/jquery-ui.min.js" 229 integrity="sha512-MSOo1aY+3pXCOCdGAYoBZ6YGI0aragoQsg1mKKBHXCYPIWxamwOE7Drh+N5CPgGI5SA9IEKJiPjdfqWFWmZtRA==" 230 crossorigin="anonymous" 231></script>
vendor: 1 bytes, line 231
231
232<script 233 nonce="e755256c-fcec-4a47-85f6-89d949d705bc" 234 src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.9.2/i18n/jquery-ui-i18n.min.js" 235 integrity="sha256-q/EiPw4hDxf7AKJEkIHWBspsML3nLL0VB729yuwz+cc=" 236 crossorigin="anonymous" 237></script>
vendor: 1 bytes, line 237
237
238<script 239 nonce="e755256c-fcec-4a47-85f6-89d949d705bc" 240 src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-switch/3.3.2/js/bootstrap-switch.min.js" 241 integrity="sha256-sAkXLwDFSAB/S09JCOWRvnoOnhGYDu9VqMnbCKAhMzI=" 242 crossorigin="anonymous" 243></script>
vendor: 1 bytes, line 243
243
244<script 245 nonce="e755256c-fcec-4a47-85f6-89d949d705bc" 246 src="https://cdnjs.cloudflare.com/ajax/libs/jquery-mousewheel/3.1.9/jquery.mousewheel.min.js" 247 integrity="sha256-+ZWJyex7JtGOxCSSRu/QgpDkiTWQEqBuE2O8xHMVZCQ=" 248 crossorigin="anonymous" 249></script>
249 250 251<!-- Layout -->
252<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc" src="https://cdn.assoconnect.com/public/build/js/common.-.layout.-.connexion.e448b25.js"></script>
252 253 254<!-- CKEditor --> 255 256<!-- intl-tel-input --> 257 258<!-- reCAPTCHA --> 259 260<!-- Validator --> 261 262<!-- Algolia --> 263 <!-- Placé à l'extérieur pour l'annuaire --> 264
264<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 265 var ALGOLIA_CONFIG = { 266 allowTyposOnNumericTokens: false, 267 facets: [], 268 facetFilters: [], 269 query: "", 270 page: 0, 271 numericFilters: [], 272 removeWordsIfNoResults: "lastWords", 273 tagFilters: [], 274 typoTolerance: "strict", 275 advancedSyntax: true 276 }; 277 </script>
277 278 279<!-- Charts.js --> 280 281<!-- Choices.js --> 282 283<!-- ContentTools --> 284 285<!-- Cropper --> 286 287<!-- Dompurify --> 288 289<!-- FullCalendar --> 290 291<!-- HTML2Canvas --> 292 293<!-- Parallax --> 294 295<!-- TimeAgo --> 296 297<!-- Simplelightbox --> 298 299<!-- Leafleft --> 300<!-- Leaflet MarkerCluster --> 301 302 303 304 305 306 307<!-- Iubenda -->
308<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 309 </script>
309 310 311<!-- Tracking -->
312<script async nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 313 314 315 /** 316 * RudderStack common functions 317 */ 318 319 /** 320 * This method allows you to track any actions that your users might perform. Each of these actions is commonly referred to as an event. 321 * 322 * https://docs.rudderstack.com/stream-sources/rudderstack-sdk-integration-guides/rudderstack-javascript-sdk#3-4-track 323 */ 324 function track(event, properties, options, callback) { 325 if(window.rudderanalytics) { 326 window.rudderanalytics.track(event, properties, options, callback); 327 } 328 } 329 330 /** 331 * This method lets you record information about the web page being viewed by the user. 332 * 333 */ 334 function trackPage(event, properties, options, callback) { 335 if(window.rudderanalytics) { 336 window.rudderanalytics.track(event, properties, options, callback); 337 } 338 } 339 340 /** 341 * This method allows you to track any click that your users might perform on a link. 342 * 343 * @param {string} selector jQuery selector of the tracked link 344 * Otherwise same params of the track function: https://docs.rudderstack.com/stream-sources/rudderstack-sdk-integration-guides/rudderstack-javascript-sdk#3-4-track 345 */ 346 function trackLink(selector, event, properties, options, callback) { 347 $(selector).on("click", function(e) { 348 if(window.rudderanalytics) { 349 var _this = $(this); 350 window.rudderanalytics.track(event, properties, options, callback); 351 // Wait for the tracking request to have time to go 352 var timeoutDelay = 300; 353 setTimeout(function() { 354 var href = _this.attr("href"); 355 var target = _this.attr("target"); 356 // New tab 357 if (target) { 358 window.open(href, target || '_blank'); 359 } 360 // Current tab 361 else { 362 window.location.href = href; 363 } 364 }, timeoutDelay); 365 return false; 366 } 367 }); 368 } 369 370 // GTM 371 </script>
371 372 </head> 373 <body> 374 <!-- Layout --> 375 <div id="layoutWrapper" class="nav"> 376 377<!-- Thème --> 378<style nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 379 380 /** 381 * Couleur principale 382 */ 383 384 /* Transforme @blue et @body en blanc en fonction de la couleur du menu */ 385 386 /* Color */ 387 h1, 388 h3, 389 .textImportant, 390 a, 391 a:link, 392 a:visited, 393 a:active, 394 .colorBlue, 395 .checkbox input[type="checkbox"].custom-checkbox:checked + .icons, 396 .checkbox input[type="checkbox"].custom-checkbox:checked + .icons .icon-checked, 397 .radio input[type="radio"].custom-radio:checked + .icons, 398 .radio input[type="radio"].custom-radio:checked + .icons .icon-checked, 399 .accordion .accordionContent.accordionColor .accordionTitleWrapper .accordionTitle, 400 .buttonWhite, 401 .buttonWhiteAlt:active, 402 .buttonWhiteBlue, 403 .buttonTransparent:hover, 404 .radioAlt.colorWhite.radioAltSelected, 405 #thumbPostSlider .thumbPostSlide .thumbPostSlideContent h2, 406 .thumbPostWrapper h2, 407 .thumbWrapper .thumbCommon .thumbDetails .thumbName, 408 .thumbWrapper .thumbCommon .thumbDetails .thumbMore, 409 #templateBreadcrumb #breadCrumbItems .breadCrumbNextStep:not(.button):hover, 410 #templateBreadcrumb #breadCrumbItems .breadCrumbNextStep .breadCrumbItem.breadCrumbActive, 411 #templateTabulation .active, 412 #messagesWrapper .message .messageContent .messageIcon svg { 413 color: #22a7f0; 414 } 415 #agendaWrapper, 416 div:not(#agendaWrapper) > #agendaEvent, 417 #agendaWrapper #agendaEvent #agendaEventName, 418 div:not(#agendaWrapper) > #agendaEvent #agendaEventName, 419 #agendaWrapper #agendaList .agendaDate, 420 #donationPicture #donationInfoWrapper #donationInfo #donationSubmitButton { 421 color: #ffffff; 422 } 423 424 /* Fix event colors */ 425 #agendaEvent #agendaEventDate, #agendaEvent #agendaEventDescription, #agendaEvent #agendaEventAddress { 426 color: #ffffff; 427 } 428 429 #agendaEventReturn svg path{ 430 fill: #22a7f0; 431 } 432 433 #templateNavWrapper #templateNav ul li, 434 #templateNavWrapper #templateNav ul li a, 435 #templateNavBar, 436 #templateNavSubBarWrapper, 437 #templateNavSubBarWrapper #templateNavSubBar a, 438 #templateSubNavWrapper ul li a, 439 #agendaWrapper #agendaList .agendaListEvent.colorBodyOrWhite, 440 #agendaWrapper #agendaList h3.colorBodyOrWhite, 441 #agendaWrapper #agendaList .eventColor.colorBodyOrWhite, 442 #eventWrapper #eventDateLeftWrapper{ 443 color: #ffffff; 444 } 445 #eventWrapper #eventPicture #eventCountdownWrapper #eventButton { 446 color: #ffffff; 447 } 448 .buttonWhiteBlue:hover { 449 color: #1e96d8; 450 } 451 .buttonWhiteBlue:active, 452 .buttonTransparent:active { 453 color: #1c8dcc; 454 } 455 #agendaWrapper #agendaList h3.colorBodyOrWhite, 456 #agendaWrapper #agendaList .eventColor.colorBodyOrWhite { 457 border-color: #ffffff; 458 } 459 .buttonBlue, 460 .backgroundBlue { 461 color: #ffffff; 462 } 463 .backgroundTheme { 464 background-color: #7e8b99; 465 color: #ffffff; 466 } 467 /* Background */ 468 .backgroundBlue, 469 .accordion .accordionContent.accordionColor .accordionTitleWrapper .accordionTitleNumber, 470 .buttonBlue, 471 .dialogDotWrapper .dialogDot.dialogDotCurrent, 472 .progressbar-blue div, 473 .radioAlt.colorBlue:not(.eventColor), /* :not(.eventColor) pour ne pas modifier les puces de l'agenda */ 474 #messagesWrapper .message, 475 #boxes .box[data-type="button"] .buttonDIYContainer .buttonDIYWrapper, 476 #gridWrapper .box .buttonDIYContainer .buttonDIYWrapper, 477 #eventWrapper #eventPicture #eventCountdownWrapper #eventButton, 478 #templateNavWrapper #templateNav #navBasket { 479 background-color: #22a7f0; 480 } 481 .formUpload .formUploadInputWrapper input:hover ~ div, 482 .buttonBlue:hover, 483 .radioAlt.colorBlue.radioAltSelected, 484 #messagesWrapper .message, 485 #eventWrapper #eventPicture #eventCountdownWrapper #eventButton:hover, 486 #templateNavWrapper #templateNav #navBasket:hover { 487 background-color: #1c8dcc; 488 } 489 .radioAlt.colorBlue:hover:not(.radioAltSelected):not(.eventColor) { /* :not(.eventColor) pour ne pas modifier les puces de l'agenda */ 490 background-color: #27c0ff; 491 } 492 .dialogDotWrapper .dialogDot:hover { 493 background-color: #28c8ff; 494 } 495 .buttonBlue:active, 496 #eventWrapper #eventPicture #eventCountdownWrapper #eventButton:active { 497 background-color: #1b85c0; 498 } 499 .dialogDotWrapper .dialogDot { 500 background-color: #2cd9ff; 501 } 502 .buttonWhiteBlue:active { 503 background-color: #2de1ff; 504 } 505 .buttonWhiteBlue:hover { 506 background-color: #2fe9ff; 507 } 508 /* Border */ 509 .backgroundBlueLight, 510 input[type="text"]:hover, 511 input[type="search"]:hover:not(.choices__input), 512 .choices:hover, 513 input[type="password"]:hover, 514 input[type="date"]:hover, 515 input[type="tel"]:hover, 516 input[type="number"]:hover, 517 input[type="datetime-local"]:hover, 518 input[type="email"]:hover, 519 input[type="url"]:hover, 520 textarea:hover, 521 select:hover, 522 input[type="text"]:focus, 523 input[type="search"]:focus:not(.choices__input), 524 .choices.is-focused, 525 input[type="password"]:focus, 526 input[type="date"]:focus, 527 input[type="tel"]:focus, 528 input[type="number"]:focus, 529 input[type="datetime-local"]:focus, 530 input[type="email"]:focus, 531 input[type="url"]:focus, 532 textarea:focus, 533 select:focus, 534 .radioImageWrapper.radioImageChecked, 535 .accordion .accordionContent.accordionColor .accordionTitleWrapper, 536 .buttonWhiteBlue, 537 .dropdownMenu div h2, 538 .radioAlt.colorWhite.radioAltSelected, 539 #templateBreadcrumb #breadCrumbItems .breadCrumbNextStep .breadCrumbItem.breadCrumbActive, 540 #postViewMore { 541 border-color: #22a7f0; 542 } 543 #agendaWrapper #agendaEvent #agendaEventReturn, 544 div:not(#agendaWrapper) > #agendaEvent #agendaEventReturn { 545 border-color: #ffffff; 546 } 547 .buttonWhiteBlue:hover { 548 border-color: #25b7ff; 549 } 550 .buttonWhiteBlue:active { 551 border-color: #27c0ff; 552 } 553 .radioAlt.colorWhite:hover:not(.radioAltSelected), 554 .radioAlt.colorBlue:hover:not(.radioAltSelected):not(.eventColor) { /* :not(.eventColor) pour ne pas modifier les puces de l'agenda */ 555 border-color: #28c8ff; 556 } 557 .radioAlt.colorBlue.radioAltSelected { 558 border-color: #1774a8; 559 } 560 .buttonWhiteAlt:active { 561 outline-color: #22a7f0; 562 } 563 .buttonWhiteAlt:hover { 564 border-color: #28c8ff; 565 } 566 567 /** 568 * Couleur du menu 569 */ 570 @media (min-width: 1151px) { 571 #templateNavWrapper, 572 #templateNavWrapper:before, 573 #templateNavBar { 574 background-color: #7e8b99; 575 } 576 #templateSubNavWrapper { 577 background-color: 578 #8491a0 ; 579 } 580 #templateHeaderWrapper #templateHeader #templateHeaderMargin { 581 display: none; 582 } 583 } 584 @media (max-width: 1150px) { 585 #templateNavWrapper, 586 #templateNavWrapper:before, 587 #templateNavBar, 588 #templateSubNavWrapper { 589 background-color: #7e8b99; 590 } 591 } 592 #templateNavSubBarWrapper, 593 #templateNavSubBarWrapper #templateNavSubBarLeft, 594 #templateNavSubBarWrapper #templateNavSubBarRight { 595 background-color: #8491a0; 596 } 597 #agendaWrapper, 598 div:not(#agendaWrapper) > #agendaEvent, 599 #donationPicture #donationInfoWrapper #donationInfo #donationSubmitButton, 600 #eventWrapper #eventDateLeftWrapper { 601 background-color: #7e8b99; 602 } 603 #eventWrapper #eventPicture #eventInfos #eventName { 604 border-color: #7e8b99; 605 } 606 /* Couleur des hovers */ 607 #templateNavWrapper #templateNav ul li.active a,
608 #templateNavWrapper #templateNav ul li:not(.hideHover):hover a { 609 color: #22a7f0; 610 } 611 @media (min-width: 1151px) { 612 #templateSubNavWrapper ul li.active a, 613 #templateSubNavWrapper ul li:hover a { 614 color: #22a7f0; 615 } 616 } 617 @media (max-width: 1150px) { 618 #templateNavSubBarWrapper #templateNavSubBar li.active a { 619 color: #22a7f0; 620 } 621 } 622 623 /** 624 * Couleur du fond 625 */ 626 body { 627 background-color: #ffffff; 628 } 629 630 /** 631 * Couleur du bas de page 632 */ 633 #templateFooterWrapper { 634 background-color: #47505a; 635 } 636 637 /** 638 * Texture du menu (non applicable si le menu est transparent) 639 */ 640 #templateNavWrapper, 641 #templateNavWrapper:before, 642 #templateSubNavWrapper, 643 #templateNavBar, 644 #templateNavSubBarWrapper, 645 #templateNavSubBarWrapper #templateNavSubBarLeft, 646 #templateNavSubBarWrapper #templateNavSubBarRight { 647 background-image: url("https://assets.assoconnect.com/legacy/common/image/layout/public/textures/_blank.png"); 648 } 649 650 /** 651 * Texture du fond 652 */ 653 body { 654 background-image: url("https://assets.assoconnect.com/legacy/common/image/layout/public/textures/_blank.png"); 655 } 656 657 /** 658 * Texture du bas de page 659 */ 660 #templateFooterWrapper { 661 background-image: url("https://assets.assoconnect.com/legacy/common/image/layout/public/textures/_blank.png"); 662 } 663 664 /** 665 * Autres 666 */ 667 668 /* Permet d'afficher le haut de page dans l'édition */ 669 670 /* Hauteur du haut de page */ 671 672 /* Position de l'image de l'organisation dans le haut de page */ 673 #templateHeaderWrapper #templateHeaderVendorPictureWrapper #templateHeaderVendorPicture { 674 text-align: left; 675 } 676 677 /* Taille texte bloc */ 678 #templateHeaderBlockTitleWrapper { 679 font-size: 23px; 680 } 681 682 /* Taille image bloc */ 683 #templateHeaderBlockVendorPictureWrapper img { 684 width: 0px; 685 } 686 687 /* Type de bloc */ 688 #templateHeaderWrapper #templateHeader #templateHeaderBlockContainer { 689 background-color: rgba(126, 139, 153, .5); 690 } 691 692 @media (min-width: 1151px) { 693 /* Position du logo dans le menu */ 694 #templateNavWrapper #templateNav #navVendorWrapper { 695 display: none; 696 } 697 698 /* Place le haut de page sous le menu si le menu est transparent */ 699 700 /* Hauteur du menu (les ">" pour ignorer les sous-menus) */ 701 #templateNavWrapper #templateNav > ul > li { 702 height: 50px; 703 } 704 #templateSubNavWrapper ul li { 705 height: 40px; 706 line-height: 40px; 707 } 708 #templateNavWrapper #templateNav > ul > #navVendorPicture > div > a > img { 709 max-height: 50px; 710 } 711 712 /* Type de bloc */ 713 #templateHeaderWrapper #templateHeader #templateHeaderBlockContainer { 714 background-color: transparent; 715 } 716 717 /* La largeur du haut de page ne dépasse pas la largeur du contenu du site */ 718 719 /* Arrondi les coins du menu, du haut de page et du contenu */ 720 721 /* Séparation des différents éléments */ 722 723 /* Position du bloc */ 724 #templateHeaderWrapper #templateHeader { 725 text-align: right; 726 } 727 728 /* Texte du menu en gras */ 729 730 /* Texte du menu en majuscule */ 731 #templateNavWrapper #templateNav, 732 #templateSubNavWrapper { 733 text-transform: uppercase; 734 } 735 736 /* Cache les icônes */ 737 #templateNav ._gif:not(.noHide) { 738 display: none; 739 } 740 741 /* Espacement entre les items du menu */ 742 #templateNavWrapper #templateNav ul li a, 743 #templateNavWrapper #templateNav ul li ul li a, 744 #templateSubNavWrapper ul li a { 745 padding: 0 25px; 746 } 747 748 /* Alignement du contenu du menu */ 749 #templateNavWrapper #templateNav, 750 #templateSubNavWrapper { 751 text-align: center; 752 } 753 754 /* Hauteur du logo de l'organisation dans le haut de page */ 755 #templateHeaderWrapper #templateHeaderVendorPictureWrapper #templateHeaderVendorPicture img { 756 height: 250px; 757 } 758 } 759 760 @media (max-width: 1150px) { 761 #templateNavBarVendorPicture { 762 display: none; 763 } 764 765 /* Cache le bloc en responsive si le site dispose d'un logo d'organisation */ 766 #templateHeaderWrapper #templateHeader #templateHeaderBlockContainer { 767 display: none; 768 } 769 770 /* Alignement du menu en fonction de la barre d'administration */ 771 #templateNavWrapper { 772 top: 55px; 773 } 774 775 } 776 777 /* Fond fullscreen dans les pages personnalisées */
778 #boxes .boxLandmarkBackground { 779 width: calc(100% + 27px); 780 margin-left: -13.5px !important; 781 max-width: 1131px !important; 782 } 783 784 /* Arrondi des champs */ 785 input[type="text"], 786 input[type="search"]:not(.choices__input), 787 .choices, 788 input[type="password"], 789 input[type="date"], 790 input[type="tel"], 791 input[type="number"], 792 input[type="datetime-local"], 793 input[type="email"], 794 input[type="url"], 795 textarea { 796 border-radius: 5px; 797 padding: 9px; 798 } 799 select { 800 border-radius: 5px; 801 } 802 .selected-flag, 803 .buttonBig, 804 .buttonLarge, 805 .buttonSmall, 806 .bootstrap-switch, 807 #gridWrapper .box .buttonDIYContainer .buttonDIYWrapper, 808 #gridWrapper .box .buttonDIYContainer .buttonDIYWrapper .buttonDIY, 809 #boxes .box[data-type="button"] .buttonDIYContainer .buttonDIYWrapper, 810 #boxes .box[data-type="button"] .buttonDIYContainer .buttonDIYWrapper .buttonDIY { 811 border-radius: 5px; 812 } 813 .buttonLarge { 814 padding: 10px; 815 } 816 .buttonSmall { 817 } 818</style> 819<!-- Message --> 820<!-- Affichage Spark\Notification::message --> 821<div id="messagesWrapper"> 822 </div> 823
824<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 825 $('.message-support .messageClose').click(function(event) { 826 _spark.cookie.set("supportMessage-" + $(this).data('message-id'), "true", 1); 827 }); 828</script>
828 829<!-- Misc Spark --> 830 831<div class="displayNone" id="sparkTemplateTableExportColumns"> 832 <form id="sparkTemplateTableExportColumnsForm" method="POST"><input type="hidden" name="_form" value="sparkTemplateTableExportColumns"><input type="hidden" name="_origin" value="/contacts/login?redirect=%2Fpage%2F1997185-home"><input type="hidden" name="_formMulti" value="6ac512beecbdb|04b28af2d7c4a93710b66a767d762ed70bf58375">
832<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 833 $("#sparkTemplateTableExportColumnsForm").on("submit", function(){ 834 var _this = $(this); 835 var renable = false; 836 if(_this.data("multi-submit-protection")){ 837 return false; 838 } 839 else{ 840 // Blocage à la prochaine soumission 841 _this.data("multi-submit-protection", true); 842 // Blocage & chargement sur les boutons 843 _this.find("button[type='submit']").each(function(){ 844 var text = $(this).text(); 845 var buttonDOM = $(this); 846 var buttonInterval; 847 buttonDOM 848 .addClass("disabled") 849 .prop("disabled", true) 850 .css("width", buttonDOM.outerWidth() + "px") 851 .text(".") 852 .inDOM(function() { 853 // Il ne faut pas utiliser de gif car Safari est incompatible (fix #12514) 854 buttonInterval = setInterval(function() { 855 if(buttonDOM.text().length === 3) { 856 buttonDOM.text("."); 857 } 858 else { 859 buttonDOM.text(buttonDOM.text() + "."); 860 } 861 }, 300); 862 }); 863 // Déblocage au bout de 1 seconde 864 if(renable){ 865 window.setTimeout(function(){ 866 clearInterval(buttonInterval); 867 buttonDOM 868 .prop("disabled", false) 869 .removeClass("disabled") 870 .removeAttr("style") 871 .text(text); 872 }, 1000); 873 } 874 }); 875 // Déblocage au bout de 1 seconde 876 if(renable){ 877 window.setTimeout(function(){ 878 _this.data("multi-submit-protection", false); 879 }, 1000); 880 } 881 // Retour 882 return true; 883 } 884 }); 885 </script>
885 <div id="sparkTableExportColumnWrapper" class=""><div class="notice fontBold" id="sparkTableExportColumnNotice"></div> 886 <label 887 id="sparkTableExportColumnLabel" 888 > 889 Export 890 891 892 </label> 893 <div class="formContent"> 894 895 <div id="sparkTableExportColumn_allWrapper" class="radioWrapper displayInlineBlock valignTop marginRight10 "> 896 <label class="radio" for="sparkTableExportColumn_all"> 897 <input 898 type="radio" 899 name="sparkTableExportColumn" 900 id="sparkTableExportColumn_all" 901 value="all" 902 903 904 class="" 905 > 906 <span id="sparkTableExportColumn_allLabel">Export with all columns</span> 907 </label> 908 </div> 909
909<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 910 if(document.readyState === "complete"){ 911 $("#sparkTableExportColumn_all").radiocheck(); 912 } 913 </script>
913 914 915 <div id="sparkTableExportColumn_filterWrapper" class="radioWrapper displayInlineBlock valignTop marginRight10 "> 916 <label class="radio" for="sparkTableExportColumn_filter"> 917 <input 918 type="radio" 919 name="sparkTableExportColumn" 920 id="sparkTableExportColumn_filter" 921 value="filter" 922 923 924 class="" 925 > 926 <span id="sparkTableExportColumn_filterLabel">Export with the currently displayed columns</span> 927 </label> 928 </div> 929
929<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 930 if(document.readyState === "complete"){ 931 $("#sparkTableExportColumn_filter").radiocheck(); 932 } 933 </script>
933 934 </div></div> </form> 935
935<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 936 _spark.form.mail.initMailGroup("sparkTemplateTableExportColumns"); 937 </script>
937 938 </div> 939 940<!-- Image de fond --> 941 942<!-- Template --> 943<div id="loginContentWrapper"> 944 <div id="loginContent" class="backgroundLarge backgroundWhite"> 945 946<div id="loginContentMargin"> 947 948 <h1>Login</h1> 949 <div class="spaceHorizontalTall"></div> 950 951 <!-- Login sso / mail / userInfo / password --> 952 <form id="loginForm" method="POST"><input type="hidden" name="_form" value="login"><input type="hidden" name="_origin" value="/contacts/login?redirect=%2Fpage%2F1997185-home"><input type="hidden" name="_formMulti" value="6ac512beeccdc|260fee5c22c8446bb08000464f01903978186e08">
952<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 953 $("#loginForm").on("submit", function(){ 954 var _this = $(this); 955 var renable = false; 956 if(_this.data("multi-submit-protection")){ 957 return false; 958 } 959 else{ 960 // Blocage à la prochaine soumission 961 _this.data("multi-submit-protection", true); 962 // Blocage & chargement sur les boutons 963 _this.find("button[type='submit']").each(function(){ 964 var text = $(this).text(); 965 var buttonDOM = $(this); 966 var buttonInterval; 967 buttonDOM 968 .addClass("disabled") 969 .prop("disabled", true) 970 .css("width", buttonDOM.outerWidth() + "px") 971 .text(".") 972 .inDOM(function() { 973 // Il ne faut pas utiliser de gif car Safari est incompatible (fix #12514) 974 buttonInterval = setInterval(function() { 975 if(buttonDOM.text().length === 3) { 976 buttonDOM.text("."); 977 } 978 else { 979 buttonDOM.text(buttonDOM.text() + "."); 980 } 981 }, 300); 982 }); 983 // Déblocage au bout de 1 seconde 984 if(renable){ 985 window.setTimeout(function(){ 986 clearInterval(buttonInterval); 987 buttonDOM 988 .prop("disabled", false) 989 .removeClass("disabled") 990 .removeAttr("style") 991 .text(text); 992 }, 1000); 993 } 994 }); 995 // Déblocage au bout de 1 seconde 996 if(renable){ 997 window.setTimeout(function(){ 998 _this.data("multi-submit-protection", false); 999 }, 1000); 1000 } 1001 // Retour 1002 return true; 1003 } 1004 }); 1005 </script>
1005 1006 <div class="mailInputWrapper isSecondaryWrapper"><div class="notice fontBold" id="userMailNotice"></div> 1007 <label 1008 id="userMailLabel" 1009 for="userMail" 1010 > 1011 Your email address 1012 1013 1014 </label> 1015 <input 1016 type="email" 1017 data-typo-check="false" 1018 name="userMail" 1019 class="" 1020 value="" 1021 placeholder="Your email address " 1022 autocomplete="email" 1023 1024 1025 id="userMail" 1026 > 1027 1028 <div class="clearBoth"></div> 1029 </div> 1030
1030<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 1031 $("#userMail").on("change", function() { 1032 _spark.form.mail.check("userMail"); 1033 }); 1034 </script>
1034 1035 1036 <div class="spaceHorizontalTall"></div> 1037 1038 <div id="userPasswordWrapper"> 1039 <div id="userPasswordWrapper"><div class="notice fontBold" id="userPasswordNotice"></div> 1040 <label 1041 id="userPasswordLabel" 1042 for="userPassword" 1043 >Your Hawaii Speech Language Hearing Association password</label> 1044 <input 1045 autocomplete="current-password" 1046 id="userPassword" 1047 placeholder="Your Hawaii Speech Language Hearing Association password" 1048 name="userPassword" 1049 type="password" 1050 > 1051 </div> 1052 <div id="forgottenPasswordDesktop" class="floatRight marginTopMinus20"> 1053 <a href="/contacts/password/reset?userMail=&userInfoValue=">Forgot your password?</a> </div> 1054 </div> 1055 <div class="clearBoth"></div> 1056 <div id="loginSubmitWrapper"> 1057 <div class="spaceHorizontalTall"></div> 1058 1059 <button 1060 type="submit" 1061 id="loginSubmit" 1062 class=" 1063 button 1064 buttonOrange 1065 textAlignCenter 1066 buttonLarge 1067 1068 1069 " 1070 1071 > 1072 1073 <span class="valignInitial">Login</span> 1074 </button> 1075 </div> 1076 <div id="forgottenPasswordMobile" class="marginTop5 displayNone"> 1077 <a href="/contacts/password/reset?userMail=&userInfoValue=">Forgot your password?</a> </div> 1078 1079 <div id="miscWrapper"> 1080 <div class="spaceHorizontalTall"></div> 1081 Or: <div class="spaceHorizontalTall"></div> 1082 </div> 1083 1084 <iframe 1085 src="https://app.springly.org/services/sso/google/424341?scope[]=id&scope[]=email" 1086 width="100%" 1087 height="50" 1088 style="margin:8px;overflow:hidden;" 1089 allow="identity-credentials-get" 1090 scrolling="no" 1091 class="" 1092 ></iframe> 1093 <div class="notice fontBold" id="ssoTokenNotice"></div> 1094 <input 1095 type="hidden" 1096 name="ssoToken" 1097 id="ssoToken" 1098 value="" 1099 > 1100 1101 </form> 1102
1102<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 1103 _spark.form.mail.initMailGroup("login"); 1104 </script>
1104 1105 1106 <div class="separatorHorizontal"></div> 1107 1108 <a 1109 id="registerButtonLink" 1110 href="https://www.hsha.org/contacts/registration?redirect=%2Fpage%2F1997185-home" 1111 class="" 1112 target="" 1113 rel="noopener" 1114 > 1115 <div 1116 id="registerButton" 1117 class=" 1118 button 1119 textAlignCenter 1120 buttonBlue 1121 buttonLarge 1122 1123 valignMiddle 1124 " 1125 ><span class="valignInitial">Create an account </span></div></a> 1126 1127</div> 1128 <div class="marginTop20" id="propelledBy"> 1129 Powered by Springly, the software for nonprofits by nonprofit experts </div> 1130 </div> 1131 </div> 1132<div id="loginBackground"></div> 1133 1134<!-- Footer - Global --> 1135 </div> 1136 1137 <!-- JS --> 1138
1138<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 1139 1140/** 1141 * SSO 1142 */ 1143window.addEventListener("message", function(event) { 1144 // Vérification de la source 1145 if ( 1146 event.origin === "https:\/\/app.springly.org" && event.data.action === "sso.login" 1147 ) { 1148 // Remplissage 1149 $("#ssoToken").val(event.data.token); 1150 // Soumission 1151 $("#loginForm").submit(); 1152 } 1153}); 1154 1155document.querySelector('#userMail').addEventListener('input', function (event) { 1156 let userMail = event.target.value; 1157 let patterns = { 1158 'PROD' : /^[a-z\.]*[^+]@(assoconnect\.com|springly\.org)/ 1159 } 1160 let env = "PROD"; 1161 console.log(patterns[env], env); 1162 if (undefined === patterns[env]) { 1163 return; 1164 } 1165 1166 let items = document 1167 .querySelectorAll('#userPasswordWrapper, #forgottenPasswordMobile, #loginSubmitWrapper, #miscWrapper'); 1168 if (null !== userMail.match(patterns[env])) { 1169 items.forEach((item) => $(item).hide()); 1170 } else { 1171 items.forEach((item) => $(item).show()); 1172 } 1173}); 1174 1175(function() { 1176 let userPassword = document.querySelector('#userPassword'), 1177 checkboxSeePassword = _spark.form.model.checkbox('seePassword', trans("seePassword"), 1, 0).get(0), 1178 div = document.createElement('div') 1179 1180 div.classList = 'textAlignLeft'; 1181 div.append(checkboxSeePassword); 1182 userPassword.after(div); 1183 1184 checkboxSeePassword.querySelector('input').addEventListener('change', function(){ 1185 if(this.checked) { 1186 userPassword.type = 'text'; 1187 } else { 1188 userPassword.type = 'password'; 1189 } 1190 }) 1191})(); 1192 </script>
vendor: 1 bytes, line 1192
1192
1193<script nonce="e755256c-fcec-4a47-85f6-89d949d705bc"> 1194 if(window.console && window.console.log){ 1195 // Affichage des notices non capturées 1196 } 1197</script>
1197 1198 1199 1200
1200<script 1201 nonce="e755256c-fcec-4a47-85f6-89d949d705bc" 1202 src="https://cdn.hub-prod.team.blue/loader/widget-loader.js" 1203 data-teamblue-footer 1204 data-footer="hidden" 1205 ></script>
1205 1206 </body> 1207</html>
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.