1 2 3<!DOCTYPE html> 4<html class="no-js" lang="en"> 5<head> 6 <meta http-equiv="content-type" content="text/html; charset=utf-8"> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 8 <meta name="facebook-domain-verification" content="3qmyl6lhcggg0n6hibceionwgyxlqz" /> 9 <meta name="google-site-verification" content="4XXNWyhinU3Wvx2AH9PVFe7e4CvO-JRrcSzBnEhv6H0" /> 10 <link rel="schema.DC" href="http://purl.org/DC/elements/1.1/"> 11 <link rel="start" href="https://nationaltreeday.org.au/" title="National Tree Day"> 12 <link rel="section" href="https://nationaltreeday.org.au/login/" title="Login"> 13 <link rel="contents" href="https://nationaltreeday.org.au/sitemap.cfm" title="Site map"> 14 <title>Login - National Tree Day</title> 15 <meta name="Description" content=""> 16 <meta name="DC.Title" lang="en" content="Login"> 17 <meta name="DC.Description" lang="en" content=""> 18 <meta name="DC.Identifier" scheme="URI" content="https://nationaltreeday.org.au/login/"> 19 <link rel="canonical" href="https://nationaltreeday.org.au/login/"> 20 <meta name="date_modified" scheme="ISO8601" content="2019-02-05"> 21 <meta name="DC.Date.modified" scheme="ISO8601" content="2019-02-05"> 22 <!-- Time now = 28-Sep-2026 08:18:01 --> 23 <meta name="DC.Rights" content="Copyright (c) National Tree Day, 2019"> 24 <meta name="DC.Creator" lang="en" content="Webboy.net WCMS"> 25 <meta name="DC.Publisher" lang="en" content="National Tree Day"> 26 <meta name="DC.Contributor" lang="en" content="National Tree Day"> 27 <meta name="DC.Format" scheme="IMT" content="text/html"> 28 <meta name="DC.Language" scheme="RFC3066" content="en-AU"> 29 <meta name="DC.Coverage" content="Australia"> 30 31 32 <meta property="og:title" content="Login" /> 33 34 <meta property="og:description" content="Login" /> 35 36 37 <meta property="og:image" content="https://nationaltreeday.org.au/images/NTD_default_2026.jpg" /> 38 39 40 <meta property="og:site_name" content="National Tree Day" /> 41 <meta property="og:type" content="website" /> 42 43 <meta property="og:url" content="https://nationaltreeday.org.au/login/returnUrl=%2Fcoordinators%2Findex.cfm%3F" /> 44 <meta name="robots" content="all, index, follow"> 45 <meta name="distribution" content="global"> 46 47 48 <meta name="facebook-domain-verification" content="3qmyl6lhcggg0n6hibceionwgyxlqz" /> 49 50
50<script src="/js/modernizr.js"></script>
50 51 52 <!--[if lt IE 9]><link rel="stylesheet" href="/stylesheets/ie.css" type="text/css" media="screen"><![endif]--> 53 <!--[if IE 5]><link rel="stylesheet" href="/stylesheets/ie.css" type="text/css" media="screen"><![endif]--> 54 55 <link rel="shortcut icon" type="image/ico" href="/favicon.ico"> 56 57 <!-- Bootstrap Core CSS --> 58 <link href="/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet"> 59 <link href="/vendor/bootstrap-slider/bootstrap-slider.min.css" rel="stylesheet"> 60 <link href="/vendor/bootstrap-select/dist/css/bootstrap-select.min.css" rel="stylesheet" > 61 <link rel="stylesheet" href="/vendor/custom-scrollbar/jquery.mCustomScrollbar.min.css" /> 62 63 <link rel="stylesheet" href="/css/ntd.css?v=2.1"> 64 65 <!-- Custom Fonts --> 66 <link href="/vendor/font-awesome/css/all.min.css" rel="stylesheet" type="text/css"> 67 <link href="https://use.typekit.net/jrm8ulw.css" rel="stylesheet" type="text/css"> 68 <!-- Glacial Indifference (Google Fonts) ââ¬â body & h2-h6. 69 Mrs Eaves (h1) is loaded via the typekit kit above. --> 70 <link rel="preconnect" href="https://fonts.googleapis.com"> 71 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 72 <link href="https://fonts.googleapis.com/css2?family=Glacial+Indifference:ital,wght@0,400;0,700;1,400;1,700&display=swap" rel="stylesheet"> 73 74 <!-- datepicker styles --> 75 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.37/css/bootstrap-datetimepicker.min.css"> 76 77 78
78<script src="https://cdn.jsdelivr.net/npm/add-to-calendar-button@2" async defer></script>
78 79 80 <!-- Global site tag (gtag.js) - Google Analytics UA -->
vendor: 69 bytes, lines 80-81
80 81 <script async src="https://www.googletagmanager.com/gtag/js?id=
81UA-8687721-2
vendor: 17 bytes, lines 81-82
81"></script> 82
82<script> 83
vendor: 150 bytes, lines 83-87
83window.dataLayer = window.dataLayer || []; 84 function gtag(){dataLayer.push(arguments);} 85 gtag('js', new Date()); 86 87 gtag('config', '
87UA-8687721-2
vendor: 9 bytes, lines 87-88
87'); 88
88</script>
88 89 90 <!-- Google tag (gtag.js) - Google Analytics GA4 -->
vendor: 69 bytes, lines 90-91
90 91 <script async src="https://www.googletagmanager.com/gtag/js?id=
91G-1FLWZ979VF
vendor: 17 bytes, lines 91-92
91"></script> 92
92<script> 93
vendor: 144 bytes, lines 93-97
93window.dataLayer = window.dataLayer || []; 94 function gtag(){dataLayer.push(arguments);} 95 gtag('js', new Date()); 96 97 gtag('config', '
97G-1FLWZ979VF
vendor: 9 bytes, lines 97-98
97'); 98
98</script>
98 99 100 <!-- Google Tag Manager --> 101
101<script>
vendor: 347 bytes, lines 101-105
101(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 102 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 103 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 104 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 105 })(window,document,'script','dataLayer','
105GTM-KS84VFJ
vendor: 3 bytes, line 105
105');
105</script>
105 106 <!-- End Google Tag Manager --> 107 108<!-- Meta Pixel Code -->
109<script>
vendor: 444 bytes, lines 109-118
109 110 !function(f,b,e,v,n,t,s) 111 {if(f.fbq)return;n=f.fbq=function(){n.callMethod? 112 n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 113 if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 114 n.queue=[];t=b.createElement(e);t.async=!0; 115 t.src=v;s=b.getElementsByTagName(e)[0]; 116 s.parentNode.insertBefore(t,s)}(window, document,'script', 117 'https://connect.facebook.net/en_US/fbevents.js'); 118 fbq('init', '
118679687665785762
vendor: 40 bytes, lines 118-120
118'); 119 fbq('track', 'PageView'); 120
120</script>
120 121 <noscript><img height="1" width="1" style="display:none" 122 src=" 123 https://www.facebook.com/tr?id=679687665785762&ev=PageView&noscript=1" 124 /></noscript> 125 <!-- End Meta Pixel Code --> 126 127 <!-- Start of HubSpot Embed Code --> 128
128<script type="text/javascript" id="hs-script-loader" async defer src="//js-eu1.hs-scripts.com/144288971.js"></script>
128 129 <!-- End of HubSpot Embed Code --> 130 131 132<!-- OLD Facebook Pixel Code 133
133<script>
vendor: 638 bytes, lines 133-154
133 134 !function(f, b, e, v, n, t, s) { 135 if (f.fbq) 136 return; 137 n = f.fbq = function() { 138 n.callMethod ? 139 n.callMethod.apply(n, arguments) : n.queue.push(arguments) 140 }; 141 if (!f._fbq) 142 f._fbq = n; 143 n.push = n; 144 n.loaded = !0; 145 n.version = '2.0'; 146 n.queue = []; 147 t = b.createElement(e); 148 t.async = !0; 149 t.src = v; 150 s = b.getElementsByTagName(e)[0]; 151 s.parentNode.insertBefore(t, s) 152 }(window, document, 'script', 153 'https://connect.facebook.net/en_US/fbevents.js'); 154 fbq('init', '
1541672186616428024
vendor: 9 bytes, lines 154-155
154'); 155
155if (typeof JSON.stringify() !== 'undefined') { 156 if (JSON.stringify() === 'true') { 157 fbq('init', '591565331264607'); 158 } 159 } 160 fbq('track', 'PageView'); 161 </script>
161 162 <noscript> 163 <img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1672186616428024&ev=PageView&noscript=1"> 164 </noscript> --> 165 <!-- End Facebook Pixel Code--> 166 167 <!-- Old Facebook Pixel Code --> 168 169 <!-- End Facebook Pixel Code --> 170 171 172 <link href="/css/login.css" rel="stylesheet"> 173</head> 174<body ng-app="ntdApp" ng-controller="appController"> 175 <!-- Google Tag Manager (noscript) -->
vendor: 73 bytes, lines 175-176
175 176 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
176GTM-KS84VFJ
vendor: 93 bytes, lines 176-178
176" 177 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 178
178<!-- End Google Tag Manager (noscript) --> 179 180 181 182<style> 183/* ===== 2026 NAV - MOCKUP PREVIEW ===== */ 184 185/* Mini top bar */ 186.ntd2026-mininav { 187 background-color: #a39382; /* soft cream like cleanup.org.au */ 188 width: 100%; 189 padding: 6px 20px; 190 font-size: 0.85rem; 191 display: flex; 192 justify-content: flex-end; 193 align-items: center; 194 gap: 18px; 195 position: fixed; 196 top: 0; 197 left: 0; 198 right: 0; 199 z-index: 1031; 200} 201.ntd2026-mininav a, 202.ntd2026-mininav a:visited { 203 color: #3E2B2E; 204 text-decoration: none; 205 font-weight: 500; 206} 207.ntd2026-mininav a:hover { 208 color: #2d5524; 209 text-decoration: underline; 210} 211.ntd2026-mininav .mini-social a { margin: 0 4px; font-size: 1rem; } 212.ntd2026-mininav .mini-divider { 213 display: inline-block; 214 width: 1px; 215 height: 16px; 216 background: rgba(62, 43, 46, 0.35); 217 margin: 0 4px; 218} 219.ntd2026-mininav .dropdown-menu { font-size: 0.9rem; } 220 221/* Push main nav down to make room for mini bar */ 222#mainNav.nav2026 { 223 top: 32px !important; 224} 225 226/* CSS-only dropdown fallback (no JS dependency) */ 227@media (min-width: 992px) { 228 #mainNav.nav2026 .dmenu:hover > .dropdown-menu, 229 #mainNav.nav2026 .dmenu .dropdown-menu:hover { 230 display: block !important; 231 margin-top: 0; 232 } 233 /* Hover bridge: prevent flicker between link and menu */ 234 #mainNav.nav2026 .dmenu > .dropdown-toggle::after { margin-left: .3em; } 235 #mainNav.nav2026 .dmenu .dropdown-menu { 236 margin-top: 0; 237 } 238} 239 240/* Main nav - legibility over hero image */ 241#mainNav.nav2026 .navbar-nav .nav-link { 242 font-weight: 600; 243 color: #fff !important; 244 text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6), 0 0 1px rgba(0, 0, 0, 0.4); 245} 246#mainNav.nav2026 .navbar-nav .nav-link:hover { color: #a39382 !important; } 247 248/* Mega menu - Get Involved 2 columns */ 249#mainNav.nav2026 .mega-menu { 250 min-width: 540px; 251 padding: 20px 24px; 252} 253#mainNav.nav2026 .mega-menu .mega-col { 254 padding: 0 12px; 255} 256#mainNav.nav2026 .mega-menu .mega-col-title { 257 font-size: 0.75rem; 258 text-transform: uppercase; 259 letter-spacing: 0.5px; 260 color: #888; 261 font-weight: 600; 262 margin-bottom: 8px; 263 padding: 0 1.5rem; 264} 265#mainNav.nav2026 .mega-menu .dropdown-item { 266 padding: 6px 1.5rem; 267 font-weight: 500; 268} 269#mainNav.nav2026 .mega-menu .dropdown-item:hover { 270 background-color: #a39382; 271} 272 273/* CTA buttons row */ 274#mainNav.nav2026 .btn-ntd-cta { 275 margin: 0 4px; 276 padding: 6px 16px; 277 border-radius: 999px; 278 font-weight: 600; 279 white-space: nowrap; 280 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25); 281 transition: all 0.2s ease; 282} 283#mainNav.nav2026 .btn-ntd-cta:hover { 284 transform: translateY(-1px); 285 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35); 286} 287#mainNav.nav2026 .btn-donate-2026 { 288 background-color: #3E2B2E; 289 color: #fff; 290} 291#mainNav.nav2026 .btn-donate-2026:hover { background-color: #6FA75E; color: #fff; } 292#mainNav.nav2026 .btn-register-2026 { 293 background-color: #6FA75E; 294 color: #fff; 295} 296#mainNav.nav2026 .btn-register-2026:hover { background-color: #4f8242; color: #fff; } 297#mainNav.nav2026 .btn-find-2026 { 298 background-color: rgba(255, 255, 255, 0.15); 299 color: #fff; 300 border: 2px solid #fff; 301 backdrop-filter: blur(4px); 302 text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4); 303} 304#mainNav.nav2026 .btn-find-2026:hover { 305 background-color: #fff; 306 color: #3E2B2E; 307 text-shadow: none; 308} 309 310/* Responsive: hide mini-nav on mobile, stack mega menu */ 311@media (max-width: 991.98px) { 312 .ntd2026-mininav { display: none; } 313 #mainNav.nav2026 { top: 0 !important; } 314 #mainNav.nav2026 .mega-menu { min-width: 100%; padding: 10px; } 315 #mainNav.nav2026 .mega-menu .mega-row { display: block; } 316 #mainNav.nav2026 .mega-menu .mega-col { padding: 8px 0; } 317 318 /* Hamburger menu: curtain animation via max-height (avoids display:none cutting the transition) */ 319 #mainNav.nav2026 #ntdNav { 320 display: block !important; /* override Bootstrap's display:none on .collapse */ 321 max-height: 0; 322 overflow: hidden; 323 transition: max-height 0.35s ease; /* closing speed */ 324 padding: 0 16px; 325 border-radius: 0 0 8px 8px; 326 } 327 #mainNav.nav2026 #ntdNav.show { 328 max-height: 500px; /* close to real content height â avoids the "instant jump" of 100vh */ 329 padding-bottom: 16px; 330 overflow-y: auto; 331 transition: max-height 0.5s ease; /* opening: slower so the curtain is visible */ 332 } 333
334 /* Background colour on the collapsed nav */ 335 #mainNav.nav2026 .navbar-collapse { 336 background-color: #A39382; /* Light bark */ 337 } 338 339 /* Nav links â Dark bark text, Dark bark separator (readable on light bark) */ 340 #mainNav.nav2026 .navbar-nav .nav-link { 341 padding: 10px 4px; 342 color: #3E2B2E !important; /* Dark bark */ 343 border-bottom: 1px solid #3E2B2E; /* Dark bark â clear separation */ 344 text-shadow: none; 345 } 346 #mainNav.nav2026 .navbar-nav .nav-link:hover { 347 color: #3E2B2E !important; /* Dark bark â unchanged */ 348 background-color: rgba(163, 147, 130, 0.6); /* Light bark más intenso */ 349 border-radius: 4px; 350 } 351 #mainNav.nav2026 .navbar-nav > li:last-child .nav-link { border-bottom: none; } 352 353 /* Dropdown caret */ 354 #mainNav.nav2026 .dropdown-toggle::after { 355 float: right; 356 margin-top: 8px; 357 transition: transform 0.25s ease; 358 } 359 #mainNav.nav2026 .dmenu.show > .dropdown-toggle::after { 360 transform: rotate(180deg); 361 } 362 363 /* Dropdown menu â Dark leaf bg to nest visually under Light bark nav */ 364 #mainNav.nav2026 .dropdown-menu { 365 background-color: #3E2B2E; /* Dark bark â Katrina's preference */ 366 border: none; 367 box-shadow: none; 368 padding: 0; 369 } 370 #mainNav.nav2026 .dropdown-menu .dropdown-item { 371 color: #DBE2D9; /* Light leaf â readable on dark green */ 372 padding: 8px 24px; 373 border-bottom: 1px solid #A39382; /* Light bark â subtle separator on dark brown */ 374 } 375 #mainNav.nav2026 .dropdown-menu .dropdown-item:hover, 376 #mainNav.nav2026 .dropdown-menu .dropdown-item:focus, 377 #mainNav.nav2026 .dropdown-menu .dropdown-item:active { 378 background-color: #3E2B2E; /* Dark bark â Katrina's preference */ 379 color: #DBE2D9; /* Light leaf â high contrast on dark bark */ 380 } 381 #mainNav.nav2026 .mega-menu .mega-col-title { color: #A3C6A8; } /* Soft leaf */ 382 383 /* Prevent jQuery's hover/slideUp in ntd.js from closing a dropdown that is 384 explicitly open via our 'show' class. CSS !important beats jQuery inline styles. */ 385 #mainNav.nav2026 .dmenu.show > .dropdown-menu { 386 display: block !important; 387 } 388 389 /* CTA buttons stacked on mobile */ 390 #mainNav.nav2026 .btn-ntd-cta { 391 display: block; 392 width: 100%; 393 margin: 6px 0; 394 text-align: center; 395 } 396 397 /* Scroll arrows â fixed position, outside nav DOM so clicks never bubble into nav */ 398 #ntdScrollDown, 399 #ntdScrollUp { 400 display: none; /* JS shows/hides individually */ 401 position: fixed; 402 right: 12px; 403 z-index: 1050; /* above Bootstrap's fixed navbar (z-index 1030) */ 404 width: 36px; 405 height: 36px; 406 border: 2px solid #3E2B2E; /* Dark bark border */ 407 border-radius: 50%; 408 background-color: #A39382; /* Light bark */ 409 color: #3E2B2E; /* Dark bark */ 410 font-size: 1.1rem; 411 line-height: 36px; 412 text-align: center; 413 cursor: pointer; 414 box-shadow: 0 2px 8px rgba(0,0,0,0.4); 415 transition: background-color 0.2s ease; 416 pointer-events: all; 417 } 418 /* vertical positions are set by JS based on actual nav height */ 419 #ntdScrollDown:hover, 420 #ntdScrollDown:active, 421 #ntdScrollUp:hover, 422 #ntdScrollUp:active { 423 background-color: #A39382; /* Light bark â same, opacity handled by box-shadow */ 424 opacity: 0.75; 425 } 426} 427</style> 428 429 430<div class="ntd2026-mininav"> 431 <a href="/about/help"><i class="far fa-question-circle"></i> FAQs</a> 432 <span class="mini-divider"></span> 433 434 435 <a href="/coordinators/"><i class="far fa-user"></i> Coordinator Login</a> 436 437 438 <span class="mini-divider"></span> 439 440 <span class="mini-social"> 441 <div class="sharethis-inline-follow-buttons"></div> 442 </span> 443</div> 444 445 446<nav class="navbar navbar-expand-lg navbar-dark bg-faded fixed-top nav2026" id="mainNav"> 447 <a class="navbar-brand" href="/"><img class="mt-4" src="/images/new/NTD_Standard_Light.png" width="120"></a> 448 <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="##ntdNav" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
449 <span class="navbar-toggler-icon"></span> 450 </button> 451 <div class="collapse navbar-collapse" id="ntdNav"> 452 <ul class="navbar-nav ml-auto align-items-lg-center"> 453 454 455 <li class="nav-item dropdown dmenu"> 456 <a class="nav-link dropdown-toggle" href="/about" data-toggle="dropdown"> 457 About 458 </a> 459 <div class="dropdown-menu sm-menu"> 460 <a class="dropdown-item" href="/about">Our Story</a> 461 <a class="dropdown-item" href="/about/planetark">Planet Ark</a> 462 <a class="dropdown-item" href="/about/sponsors">Sponsors and Partners</a> 463 <a class="dropdown-item" href="/newsroom/media">Newsroom</a> 464 </div> 465 </li> 466 467 468 <li class="nav-item dropdown dmenu"> 469 <a class="nav-link dropdown-toggle" href="/get-involved/involved-general" data-toggle="dropdown"> 470 Get Involved 471 </a> 472 <div class="dropdown-menu sm-menu mega-menu"> 473 <div class="row mega-row no-gutters"> 474 <div class="col-md-6 mega-col"> 475 <div class="mega-col-title">Information for</div> 476 <a class="dropdown-item" href="/get-involved/councils">Councils</a> 477 <a class="dropdown-item" href="/get-involved/schools">Schools</a> 478 <a class="dropdown-item" href="/get-involved/community">Community Groups</a> 479 <a class="dropdown-item" href="/get-involved/business">Businesses</a> 480 <a class="dropdown-item" href="/get-involved/plant-at-home">Individuals</a> 481 </div> 482 <div class="col-md-6 mega-col"> 483 <div class="mega-col-title">How to get involved</div> 484 <a class="dropdown-item" href="/get-involved/host-a-site">Host a Planting</a> 485 <a class="dropdown-item" href="/find-a-site">Join a Planting</a> 486 <a class="dropdown-item" href="/get-involved/plant-at-home">Plant at Home</a> 487 <a class="dropdown-item" href="/get-involved/schools">Schools Tree Day</a> 488 <a class="dropdown-item" href="/tropical-tree-day">Tropical Tree Day</a> 489 <a class="dropdown-item js-scroll-trigger" href="/toolkit">Toolkit</a> 490 </div> 491 </div> 492 </div> 493 </li> 494 495 496 <li class="nav-item"> 497 <a class="nav-link" href="/seedlingbank">The Seedling Bank</a> 498 </li> 499 500 501 <li class="nav-item"> 502 <a class="nav-link" href="/blog">Latest News</a> 503 </li> 504 505 506 <li class="nav-item"> 507 <a class="btn btn-ntd-cta btn-donate-2026" href="/donate">Donate</a> 508 </li> 509 <li class="nav-item"> 510 <a class="btn btn-ntd-cta btn-register-2026" href="/coordinators">Register a site</a> 511 </li> 512 <li class="nav-item"> 513 <a class="btn btn-ntd-cta btn-find-2026" href="/find-a-site">Find a site</a> 514 </li> 515 516 </ul> 517 </div> 518 519 520</nav> 521 522 523<button id="ntdScrollDown" type="button" aria-hidden="true" title="Scroll down">↓</button> 524<button id="ntdScrollUp" type="button" aria-hidden="true" title="Scroll up">↑</button> 525
526<script> 527(function() { 528 529 function initHamburger() { 530 var toggler = document.querySelector('#mainNav .navbar-toggler'); 531 var menu = document.getElementById('ntdNav'); 532 var btnDown = document.getElementById('ntdScrollDown'); 533 var btnUp = document.getElementById('ntdScrollUp'); 534 if (!toggler || !menu) return; 535 536 /* ---- Hamburger toggle ---- */ 537 toggler.addEventListener('click', function (e) { 538 e.stopPropagation(); 539 var isOpen = menu.classList.contains('show'); 540 if (isOpen) { 541 menu.classList.remove('show'); 542 toggler.setAttribute('aria-expanded', 'false'); 543 updateArrows(); 544 } else { 545 menu.classList.add('show'); 546 toggler.setAttribute('aria-expanded', 'true'); 547 setTimeout(updateArrows, 520); 548 } 549 }); 550 551 /* Close menu when clicking outside. 552 Use .closest() instead of e.target === btn because on touch devices 553 e.target may be the text node inside the button, not the button itself. */ 554 document.addEventListener('click', function (e) { 555 var nav = document.getElementById('mainNav'); 556 var hitArrow = (btnDown && (e.target === btnDown || btnDown.contains(e.target))) 557 || (btnUp && (e.target === btnUp || btnUp.contains(e.target))); 558 if (nav && !nav.contains(e.target) && !hitArrow) { 559 menu.classList.remove('show'); 560 toggler.setAttribute('aria-expanded', 'false'); 561 updateArrows(); 562 } 563 }); 564 565 /* ---- Dropdown toggles on mobile ---- */ 566 function isMobile() { return window.innerWidth < 992; } 567 568 function closeDropdown(dmenuEl) { 569 dmenuEl.classList.remove('show'); 570 var dm = dmenuEl.querySelector('.dropdown-menu'); 571 if (!dm) return; 572 dm.classList.remove('show'); 573 if (window.jQuery) jQuery(dm).stop(true, true); 574 dm.style.display = ''; 575 } 576 577 document.querySelectorAll('#mainNav .dmenu > .dropdown-toggle').forEach(function(link) { 578 link.addEventListener('click', function(e) { 579 if (!isMobile()) return; 580 e.preventDefault(); 581 e.stopPropagation(); 582 var parent = this.closest('.dmenu'); 583 var submenu = parent ? parent.querySelector('.dropdown-menu') : null; 584 if (!submenu) return; 585 var isShown = parent.classList.contains('show'); 586 document.querySelectorAll('#mainNav .dmenu.show').forEach(closeDropdown); 587 if (!isShown) { 588 parent.classList.add('show'); 589 submenu.classList.add('show'); 590 submenu.style.display = ''; 591 /* Wait for dropdown + nav animations to fully settle, then measure on next paint frame */ 592 setTimeout(function() { requestAnimationFrame(updateArrows); }, 700); 593 } else { 594 updateArrows(); 595 } 596 }); 597 }); 598 599 /* ---- Scroll arrows (buttons live outside <nav> so no bubbling issues) ---- */ 600 function updateArrows() { 601 var visible = menu.classList.contains('show') && window.innerWidth < 992; 602 var scrollTop = visible ? menu.scrollTop : 0; 603 var scrollBottom = visible ? menu.scrollHeight - menu.clientHeight - scrollTop : 0; 604 var dropdownOpen = visible && !!menu.querySelector('.dmenu.show'); /* used below */ 605 606 if (!visible) { 607 if (btnDown) btnDown.style.display = 'none'; 608 if (btnUp) btnUp.style.display = 'none'; 609 return; 610 } 611 612 /* Position arrows relative to the nav's actual rendered bounds */ 613 var menuRect = menu.getBoundingClientRect(); 614 if (btnDown) { 615 btnDown.style.top = ''; 616 btnDown.style.bottom = (window.innerHeight - menuRect.bottom + 6) + 'px'; 617 btnDown.style.display = scrollBottom > 8 ? 'block' : 'none'; 618 } 619 if (btnUp) { 620 btnUp.style.bottom = ''; 621 btnUp.style.top = (menuRect.top + 6) + 'px'; 622 btnUp.style.display = scrollTop > 8 ? 'block' : 'none'; 623 } 624 } 625 626 menu.addEventListener('scroll', updateArrows); 627 628 function arrowScroll(direction) { 629 var target = direction === 'down' ? menu.scrollHeight : 0; 630 menu.scrollTop = target; 631 /* Poll until scrollTop stabilises, then update arrows */ 632 var tries = 0; 633 var poll = setInterval(function() { 634 menu.scrollTop = target; /* re-apply in case first assignment was ignored */ 635 tries++; 636 if (tries >= 5) { 637 clearInterval(poll); 638 updateArrows(); 639 } 640 }, 50); 641 } 642 643 if (btnDown) { 644 btnDown.addEventListener('touchstart', function(e) { e.stopPropagation(); e.preventDefault(); arrowScroll('down'); }, { passive: false }); 645 btnDown.addEventListener('click', function(e) { e.stopPropagation(); e.preventDefault(); arrowScroll('down'); }); 646 } 647 if (btnUp) { 648 btnUp.addEventListener('touchstart', function(e) { e.stopPropagation(); e.preventDefault(); arrowScroll('up'); }, { passive: false }); 649 btnUp.addEventListener('click', function(e) { e.stopPropagation(); e.preventDefault(); arrowScroll('up'); }); 650 } 651 } 652 653 if (document.readyState === 'loading') { 654 document.addEventListener('DOMContentLoaded', initHamburger); 655 } else { 656 window.addEventListener('load', initHamburger); 657 } 658 659})(); 660</script>
660 661 662 663 664<div class="login text-center"> 665 666 <div class="container"> 667 668 <div class="row justify-content-center"> 669 <div class="col-md-9 p-1"> 670 <p class="text-light"> Log in to join the thousands of site coordinators who host Tree Day planting sites across Australia, all year round and get access to exclusive content and resources. </p> 671 </div> 672 </div> 673 674 <div class="row justify-content-center"> 675 <div class="col-md-5"> 676 <form action="/login/index.cfm?returnUrl=%2Fcoordinators%2Findex.cfm%3F" method="post" class="form-signin"> 677 <h1 class="h3 mb-3 font-weight-normal">Please sign in</h1> 678 <div class="form-signin-inner"> 679 <input type="text" name="username" id="username2" value="" class="form-control mb-2 p-2" placeholder="Username" required> 680 <input type="password" name="password" id="password" placeholder="Password" class="form-control p-2" required> 681 <div class="checkbox mb-3"> 682 <label> 683 <input type="checkbox" name="remember" id="remember" value="1" > Remember me 684 </label> 685 </div> 686 <p class="text-danger d-none" id="cookie-warning">Please enable browser cookies to log in</p> 687 <button class="btn btn-lg btn-green btn-block mb-3" id="btn-login" name="loginform" value="Login">Sign in</button> 688 689 </div> 690 <p><a href="/login/register?returnUrl=%2Fcoordinators%2Findex.cfm%3F">No Account? Register Now.</a></p> 691 <p><a href="/login/reset">Forgot Password?</a></p> 692 </form> 693 </div> 694 </div> 695 </div> 696</div> <section id="footer" class="m-0"> 697 <div class="container-fluid p-0"> 698 <div class="footer-top"> 699 <div class="container-fluid"> 700 <div class="row justify-content-center"> 701 <div class="col-md-2 col-8 text-center"> 702 <p class="mb-2"> Major Sponsor</p> 703 <a href="/about/coles" target="_blank"> 704 <img class="m-2" src="/images/masters/image-37543-coles-rgb-logo.png" width="75%"> 705 </a> 706 </div> 707 <div class="col-md-5 mx-4"> 708 <div class="footer-connect"> 709 <h3>Stay Connected</h3> 710 <p>Sign up to the National Tree Day Newsletter for the latest tree talk news.</p> 711 <form id="subForm" class="js-cm-form" 712 action="https://www.createsend.com/t/subscribeerror?description=" method="post" 713 data-id="92D4C54F0FEC16E5ADC2B1904DE9ED1AF0C36248CCB580686448BAE439D7DDD82EA6B5C83C7F9AE1BA106D916C92BD2AFD30FE38AD4F7D5251C5FE6702F00368"> 714 715 <div class="input-group"> 716 <input id="fieldName" type="text" class="form-control" name="cm-name" 717 placeholder="Your Name"> 718 <input id="fieldEmail" type="email" class="form-control js-cm-email-input" 719 name="cm-uidid-uidid" placeholder="Email address" required> 720 <span> 721 <button class="btn btn-green js-cm-submit-button" 722 type="submit">Subscribe</button> 723 </span> 724 </div> 725 </form> 726
726<script type="text/javascript" 727 src="https://js.createsend1.com/javascript/copypastesubscribeformlogic.js"></script>
727 728 </div> 729 <div class="footer-logos"> 730 <div class="container"> 731 <div class="row"> 732 <div class="col-md-3 p-3 p-md-1"> 733 <a href="https://planetark.org" target="_blank"><img src="/images/new/PA_Logo.svg" width="100%"></a> 734 </div> 735 736 </div> 737 </div> 738 </div> 739 </div> 740 741 742 <div class="col-md-3"> 743 <div class="footer-navigate mb-3"> 744 <h3>Navigate</h3> 745 <div class="row"> 746 <div class="col-md-5"> 747 <ul class="list-group"> 748 <li class="list-group-item"><a href="/about">About Tree Day</a></li> 749 <li class="list-group-item"><a href="/toolkit">Toolkit</a></li> 750 </ul> 751 </div> 752 <div class="col-md-4"> 753 <ul class="list-group"> 754 <li class="list-group-item"><a href="/newsroom/media">Newsroom</a></li> 755 <li class="list-group-item"><a href="/donate">Donate</a></li> 756 </ul> 757 </div> 758 </div> 759 </div> 760 </div> 761 </div> 762 </div> 763 </div> 764 </div> 765 <div class="footer-bottom"> 766 <div class="container"> 767 <div class="row justify-content-center"> 768 <div class="col-md-8 text-center"> 769 <span class="pr-2 pl-2">Copyright © 2026, Planet Ark</span> 770 | 771 <span class="pr-2 pl-2"><a href="/sitemap.cfm">Sitemap</a></span> 772 | 773 <span class="pr-2 pl-2"><a href="/privacy.cfm">Privacy Policy</a></span> 774 775 776 </div> 777 </div> 778 </div> 779 </div> 780 </div> 781</section> 782 783 784<!-- jQuery -->
785<script src="/vendor/jquery/jquery.min.js"></script>
vendor: 2 bytes, line 785
785
786<script src="/vendor/jquery-easing/jquery.easing.min.js"></script>
786 787 788<!-- Angular -->
789<script type="text/javascript" src="/vendor/angular/angular.min.js"></script>
vendor: 2 bytes, line 789
789
790<script type="text/javascript" src="/vendor/angular/ui-bootstrap-tpls-2.5.0.min.js"></script>
790 791 792<!-- Bootstrap Core JavaScript -->
793<script src="/vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
vendor: 2 bytes, line 793
793
794<script type='text/javascript' src="/vendor/bootstrap-slider/bootstrap-slider.min.js"></script>
vendor: 2 bytes, line 794
794
795<script type='text/javascript' src="/vendor/bootstrap-select/dist/js/bootstrap-select.min.js"></script>
vendor: 2 bytes, line 795
795
796<script src="/vendor/custom-scrollbar/jquery.mCustomScrollbar.concat.min.js"></script>
796 797 798<!-- Custom JavaScript -->
799<script>window.MAPBOX_TOKEN = 'pk.eyJ1IjoicGxhbmV0YXJrIiwiYSI6ImNrNmdibzgzODAwN3kza284YjA2emJsNGoifQ.q-vjonsN7bMHGXB7zMU21g';</script>
vendor: 2 bytes, line 799
799
800<script type='text/javascript' src="/js/ntd.js?v=12"></script>
800 801 802<!-- Social Media Widget -->
803<script type='text/javascript' src='https://platform-api.sharethis.com/js/sharethis.js#property=6525fde826faec001214af0b&product=sop' async='async'></script>
803 804 805 806 807 808<!-- date picker - pledge a tree -->
809<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.4/moment.min.js"></script>
809 810
811<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.37/js/bootstrap-datetimepicker.min.js"></script>
811 812 813
814<script> 815 (function (w,i,d,g,e,t,s) {w[d] = w[d]||[];t= i.createElement(g); 816 t.async=1;t.src=e;s=i.getElementsByTagName(g)[0];s.parentNode.insertBefore(t, s); 817 })(window, document, '_gscq','script','//widgets.getsitecontrol.com/146970/script.js'); 818</script>
818 819 820<!-- Start of planetark Zendesk Widget script --> 821<!--
821<script>/*<![CDATA[*/ 822window.zEmbed || function (e, t) { 823 var n, o, d, i, s, a = [], r = document.createElement("iframe"); 824 window.zEmbed = function () { 825 a.push(arguments) 826 }, window.zE = window.zE || window.zEmbed, r.src = "javascript:false", r.title = "", r.role = "presentation", (r.frameElement || r).style.cssText = "display: none", d = document.getElementsByTagName("script"), d = d[d.length - 1], d.parentNode.insertBefore(r, d), i = r.contentWindow, s = i.document; 827 try { 828 o = s 829 } catch (e) { 830 n = document.domain, r.src = 'javascript:var d=document.open();d.domain="' + n + '";void(0);', o = s 831 } 832 o.open()._l = function () { 833 var e = this.createElement("script"); 834 n && (this.domain = n), e.id = "js-iframe-async", e.src = "https://assets.zendesk.com/embeddable_framework/main.js", this.t = +new Date, this.zendeskHost = "planetark.zendesk.com", this.zEQueue = a, this.body.appendChild(e) 835 }, o.write('<body onload="document._l();">'), o.close() 836}(); 837/*]]>*/</script>
837--> 838<!-- End of planetark Zendesk Widget script --> 839<!--
839<script type="text/JavaScript"> 840 window.zESettings = { 841 webWidget: { 842 contactForm: { 843 attachments: false 844 }, 845 launcher: { 846 label: { 847 '*': "Need Help?" 848 } 849 }, 850 color: { 851 theme: "#3E2B2E", 852 launcherText: "#fff" 853 } 854 } 855 }; 856</script>
856 --> 857<!-- End of planetark Zendesk Widget script --> 858 859
860<script type="text/javascript"> 861_linkedin_partner_id = "2648634"; 862window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; 863window._linkedin_data_partner_ids.push(_linkedin_partner_id); 864</script>
864<script type="text/javascript"> 865(function(){var s = document.getElementsByTagName("script")[0]; 866var b = document.createElement("script"); 867b.type = "text/javascript";b.async = true; 868b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; 869s.parentNode.insertBefore(b, s);})(); 870</script>
870 871<noscript> 872<img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=2648634&fmt=gif" /> 873</noscript> 874</body> 875</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.