1 2<!DOCTYPE html> 3<html lang="en"> 4<head> 5 <link rel="shortcut icon" href="/Content/SA/images/favicon/favicon.ico"> 6 <link rel="icon" sizes="16x16 32x32 64x64" href="/Content/SA/images/favicon/favicon.ico"> 7 <link rel="icon" type="image/png" sizes="196x196" href="/Content/SA/images/favicon/favicon-192.png"> 8 <link rel="icon" type="image/png" sizes="160x160" href="/Content/SA/images/favicon/favicon-160.png"> 9 <link rel="icon" type="image/png" sizes="96x96" href="/Content/SA/images/favicon/favicon-96.png"> 10 <link rel="icon" type="image/png" sizes="64x64" href="/Content/SA/images/favicon/favicon-64.png"> 11 <link rel="icon" type="image/png" sizes="32x32" href="/Content/SA/images/favicon/favicon-32.png"> 12 <link rel="icon" type="image/png" sizes="16x16" href="/Content/SA/images/favicon/favicon-16.png"> 13 <link rel="apple-touch-icon" href="/Content/SA/images/favicon/favicon-57.png"> 14 <link rel="apple-touch-icon" sizes="114x114" href="/Content/SA/images/favicon/favicon-114.png"> 15 <link rel="apple-touch-icon" sizes="72x72" href="/Content/SA/images/favicon/favicon-72.png"> 16 <link rel="apple-touch-icon" sizes="144x144" href="/Content/SA/images/favicon/favicon-144.png"> 17 <link rel="apple-touch-icon" sizes="60x60" href="/Content/SA/images/favicon/favicon-60.png"> 18 <link rel="apple-touch-icon" sizes="120x120" href="/Content/SA/images/favicon/favicon-120.png"> 19 <link rel="apple-touch-icon" sizes="76x76" href="/Content/SA/images/favicon/favicon-76.png"> 20 <link rel="apple-touch-icon" sizes="152x152" href="/Content/SA/images/favicon/favicon-152.png"> 21 <link rel="apple-touch-icon" sizes="180x180" href="/Content/SA/images/favicon/favicon-180.png"> 22 <meta name="msapplication-TileColor" content="#FFFFFF"> 23 <meta name="msapplication-TileImage" content="/Content/SA/images/favicon/favicon-144.png"> 24 <meta name="msapplication-config" content="/Content/SA/images/favicon/browserconfig.xml"> 25 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 26 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 27 28 <link rel="canonical" href="http://www.i-traffic.co.za/list/events/traffic" /> 29 30<meta name='Descption' content='Provides up to the minute traffic and transit information for All Regions region in South Africa. View real time Traffic Events details on a list page.'/> 31 32 <title> 33 South Africa Traffic Events | View Live SA Traffic Events | i-TRAFFIC 34 </title>
35 <link href="https://fonts.googleapis.com/css?family=Fira+Sans" rel="stylesheet"> 36 37 <link href='/bundles/maincss?v=R7fJpBiBGujYxofBJ0-20VtjV55sPGwKJTElgSXQong1' type='text/css' rel='stylesheet'/> 38 39 40 <link href='/Content/dataTables/css/dataTablesJs?v=2PKH_EPJOLX9QPyU4arB1t-kBK_D9jfuVGjt6i7CdYY1' type='text/css' rel='stylesheet'/> 41 42 43 44 <!-- Google Analytics --> 45
45<script> 46 (function (i, s, o, g, r, a, m) { 47 i['GoogleAnalyticsObject'] = r; 48 i[r] = i[r] || function () { 49 (i[r].q = i[r].q || []).push(arguments); 50 }, i[r].l = 1 * new Date(); 51 a = s.createElement(o), 52 m = s.getElementsByTagName(o)[0]; 53 a.async = 1; 54 a.src = g; 55 m.parentNode.insertBefore(a, m); 56 })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); 57 58 ga('create', 'UA-7345015-14', 'auto'); 59 ga('send', 'pageview'); 60 61 </script>
61 62 <!-- End Google Analytics --> 63 64<!-- Facebook Pixel Code -->
65<script>
vendor: 533 bytes, lines 65-75
65 66 !function (f, b, e, v, n, t, s) { 67 if (f.fbq) return; n = f.fbq = function () { 68 n.callMethod ? 69 n.callMethod.apply(n, arguments) : n.queue.push(arguments) 70 }; if (!f._fbq) f._fbq = n; 71 n.push = n; n.loaded = !0; n.version = '2.0'; n.queue = []; t = b.createElement(e); t.async = !0; 72 t.src = v; s = b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t, s) 73 }(window, 74 document, 'script', 'https://connect.facebook.net/en_US/fbevents.js'); 75 fbq('init', '
751327247443973087
vendor: 4 bytes, line 75
75');
75// Insert your pixel ID here. 76 fbq('track', 'PageView'); 77</script>
77 78<!-- DO NOT MODIFY --> 79<!-- End Facebook Pixel Code --> 80 81 82</head> 83<body> 84 <div role="banner" class="topBanner"> 85 <noscript> 86 <span class="label label-warning">Javascript is disabled on your browser and this site won't work properly without Javascript enabled!</span> 87 </noscript> 88 <a href="#content" class="sr-only sr-only-focusable" title="Content">Skip to main content</a> 89 <div class="printSiteHeader">i-TRAFFIC</div> 90 91 <noscript> 92 <img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1327247443973087&ev=PageView&noscript=1" alt="" /> 93</noscript> 94<nav class="navbar navbar-inverse"> 95 <div class="container-fluid"> 96 <div class="row navBar"> 97 98 <div class="navbar-header"> 99 <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse"> 100 <span class="sr-only">Toggle navigation</span> 101 <span class="icon-bar"></span> 102 <span class="icon-bar"></span> 103 <span class="icon-bar"></span> 104 </button> 105 <a class="navbar-brand" href="/" target="_self"> 106 <span class="navbar-logo"><span class='hideForAccessibility'>Open website in new tab</span></span> 107 </a> 108 109 </div> 110 <div class="collapse navbar-collapse" id="navbar-collapse"> 111 112 113 114 <ul class="nav navbar-nav"> 115 <li class=""> 116 <a href="/" target="_self" title="Home Menu">Home</a> 117 </li> 118 <li class="dropdown "> 119 <a href="/" class="dropdown-toggle" target="_self" title="Traffic Menu" data-toggle="dropdown" data-hover="dropdown" role="button" aria-expanded="false"> 120 Traffic <span class="caret"></span> 121 </a> 122 <ul class="dropdown-menu" role="menu"> 123 <li> 124 <a href="/map" target="_self" title="Traffic - Traffic Map"> Traffic Map </a> 125 </li> 126 <li> 127 <a href="/list/events/traffic" target="_self" title="Traffic - Traffic List"> Traffic List </a> 128 </li> 129 <li> 130 <a href="/cctv" target="_self" title="Traffic - Cameras List"> Cameras List </a> 131 </li> 132 <li> 133 <a href="/messagesigns" target="_self" title="Traffic - Message Signs List"> Message Signs List </a> 134 </li> 135 <li> 136 <a href="/traveltimes" target="_self" title="Traffic - Travel Times List"> Travel Times List </a> 137 </li> 138 <li> 139 <a href="/TrafficRoads" target="_self" title="Traffic - Toll Roads"> Toll Roads </a> 140 </li> 141 <li> 142 <a href="/TrafficRoads#onroadservices" target="_self" title="Traffic - On Road Services"> On Road Services </a> 143 </li> 144 <li> 145 <a href="/TrafficRoads#trafficvolumes" target="_self" title="Traffic - Traffic Volumes"> Traffic Volumes </a> 146 </li> 147 148 </ul> 149 </li> 150 <li class="dropdown "> 151 <a href="/" class="dropdown-toggle" target="_self" title="My i-TRAFFIC Menu" data-toggle="dropdown" data-hover="dropdown" role="button" aria-expanded="false"> 152 My i-TRAFFIC <span class="caret"></span> 153 </a> 154 <ul class="dropdown-menu" role="menu"> 155 <li> 156 <a href="/my511" target="_self" title="My i-TRAFFIC - Manage Routes & Alerts"> Manage Routes & Alerts </a> 157 </li> 158 <li> 159 <a href="/My511Help" target="_self" title="My i-TRAFFIC - My i-TRAFFIC Help"> My i-TRAFFIC Help </a> 160 </li> 161 162 </ul> 163 </li> 164 <li class="dropdown "> 165 <a href="/" class="dropdown-toggle" target="_self" title="Public Transport Menu" data-toggle="dropdown" data-hover="dropdown" role="button" aria-expanded="false"> 166 Public Transport <span class="caret"></span> 167 </a> 168 <ul class="dropdown-menu" role="menu"> 169 <li> 170 <a href="/publicTransport/airport" target="_self" title="Public Transport - Airports"> Airports </a> 171 </li> 172 <li> 173 <a href="/publicTransport/transit" target="_self" title="Public Transport - Transit"> Transit </a> 174 </li> 175 <li> 176 <a href="/publicTransport/rail" target="_self" title="Public Transport - Rail"> Rail </a> 177 </li> 178 179 </ul> 180 </li> 181 <li class="dropdown "> 182 <a href="/" class="dropdown-toggle" target="_self" title="Extras Menu" data-toggle="dropdown" data-hover="dropdown" role="button" aria-expanded="false"> 183 Extras <span class="caret"></span> 184 </a> 185 <ul class="dropdown-menu" role="menu"> 186 <li> 187 <a href="/developers/help" target="_self" title="Extras - API Documentation"> API Documentation </a> 188 </li> 189 <li>
190 <a href="/map/embeddedmapsetup" target="_self" title="Extras - Embedded Map"> Embedded Map </a> 191 </li> 192 <li> 193 <a href="/extras/renewableenergy" target="_self" title="Extras - Renewable Energy"> Renewable Energy </a> 194 </li> 195 <li> 196 <a href="/extras/annualreport" target="_self" title="Extras - Annual Report"> Annual Report </a> 197 </li> 198 199 </ul> 200 </li> 201 </ul> 202 203 204 <ul class="nav navbar-nav navbar-right"> 205 <li class="loginSection"> <ul class="nav navbar-nav"> 206 <li><a href="/my511/register" id="registerLink" title="">Register<span class='hideForAccessibility'> for an account.</span></a></li> 207 <li><a href="#" id="login-button" role="button" data-toggle="modal" data-target="#loginModalDialog" title="">Login</a></li> 208 </ul> 209</li> 210 <li class="dropdown"> 211 <div id="region-list-label" class="hidden">Open list of regions</div> 212 <button id="currentRegionDropdownText" class="dropdown-toggle toggleButtonMenu" data-toggle="dropdown" data-hover="dropdown" aria-expanded="false" aria-controls="regionList" aria-labelledby="region-list-label"> 213 All Regions<span class="caret"></span> 214 </button> 215 <ul class="dropdown-menu" role="menu" id="regionList" title="Location List" aria-labelledby="region-list-label"> 216 <li> 217 <a href="/region/AllRegions" onclick="event.preventDefault(); submitRegionInfo('All Regions', 'ALL', ['-30.3918303280881', '23.367919921875', '7']);">All Regions</a> 218 </li> 219 <li> 220 <a href="/region/EasternCape" onclick="event.preventDefault(); submitRegionInfo('Eastern Cape', 'EC', ['-33.126753', '27.468715', '10']);">Eastern Cape</a> 221 </li> 222 <li> 223 <a href="/region/Gauteng" onclick="event.preventDefault(); submitRegionInfo('Gauteng', 'GP', ['-26.345814', '27.8031633', '10']);">Gauteng</a> 224 </li> 225 <li> 226 <a href="/region/KwaZulu-Natal" onclick="event.preventDefault(); submitRegionInfo('KwaZulu-Natal', 'KZN', ['-30.0361322', '30.6771394', '10']);">KwaZulu-Natal</a> 227 </li> 228 <li> 229 <a href="/region/WesternCape" onclick="event.preventDefault(); submitRegionInfo('Western Cape', 'WC', ['-34.1255914', '18.5668216', '10']);">Western Cape</a> 230 </li> 231 </ul> 232</li> 233 </ul> 234 </div> 235 </div> 236 </div> 237</nav> 238<div class="row scrollRow"> 239 <div class="divider"></div> 240 <a class="alertHeader" href="/List/Alerts"> <i style="padding-right: 5px;" class="fa fa-star"></i>Alerts</a> 241 <div id="alertWrapper"> 242 <div class="socialSection"> 243 <span class='hideForAccessibility'>Connect with us on social media.</span> 244 <a href="/Twitter" target="_self"> 245 246 247 <svg class="xLogoResize" viewBox="0 0 1200 1227" fill="none"> 248 <desc>Link to Twitter page</desc> 249 <path class="xLogoFill" d="M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z" /> 250 </svg> 251 252 253 </a> 254 </div> 255 <div id="alertsBox" class="scroller siteWideAlerts"> 256 <ul><li id="emptyAlertLi"> </li></ul> 257 <span class="tempAlert" hidden></span> 258 </div> 259 </div> 260</div> 261 262 263 </div> 264 <div class="container-fluid mainContainer" role="main"> 265 266 <div id="content"> 267 268<div id="loginModalDialog" class="modal fade" role="dialog"> 269 <div class="modal-dialog modal-md"> 270 <div class="modal-content"> 271 <div class="modal-header"> 272 <button type="button" class="close" data-dismiss="modal">×</button>
273 <span class="modal-title" style="font-size: 1.2em; color: #fff;">Login</span> 274 </div> 275 <div class="modal-body"> 276 <form id="loginFormmodal" class="form-horizontal"> 277 <input name="__RequestVerificationToken" type="hidden" value="JWQhv6TqDzBWN60LWjmP_8Luk0hPA9fkSeaXPm4l7_gC_0OizttyzJjr6oaXZQ-VYhXHc431yo94tI3JKDb9sSNn4kI1" /> 278 <div id="validationSummarymodal" hidden="hidden" class="alert alert-danger"> 279 <ul><li></li></ul> 280 </div> 281 282 <div class="form-group"> 283 <label class="col-md-12 control-label" for="Emailmodal">Email</label> 284 <div class="col-md-12"> 285 <input autocomplete="off" autofocus="autofocus" class="form-control" data-val="true" data-val-email="Please enter a valid email address." data-val-required="Email is required" id="Emailmodal" name="Email" title="Email" type="email" value="" /> 286 <span class="field-validation-valid text-danger" data-valmsg-for="Email" data-valmsg-replace="true"></span> 287 </div> 288 </div> 289<div class="form-group"> 290 <label class="col-md-12 control-label" for="Passwordmodal">Password</label> 291 <div class="col-md-12"> 292 <input autocomplete="off" class="form-control" data-val="true" data-val-required="Password is required" id="Passwordmodal" name="Password" title="Password" type="password" /> 293 <span class="field-validation-valid text-danger" data-valmsg-for="Password" data-valmsg-replace="true"></span> 294 </div> 295</div> 296 <div class="form-group"> 297 <div class="col-md-12"> 298 <div class="checkbox"> 299 <input aria-label="Remember Me" data-val="true" data-val-required="The Remember me? field is required." id="RememberMemodal" name="RememberMe" title="RememberMe" type="checkbox" value="true" /><input name="RememberMe" type="hidden" value="false" /> 300 <label for="RememberMemodal">Remember me?</label> 301 </div> 302 </div> 303 </div> 304 <div class="form-group"> 305 <div class="col-md-12"> 306 <input type="submit" id="logInButtonmodal" value="Log in" class="btn btn-info btn-default"/> 307 <input type="button" id="resendConfirmationEmailmodal" style="display: none;" class="btn btn-info btn-default" value="Resend Confirmation Email" /> 308 </div> 309 </div> 310 <div class="form-group"> 311 <div class="col-md-12"> 312 <a href="/my511/register">Register as a new user</a> 313 </div> 314 <div class="col-md-12"> 315 <a href="/my511/forgotpassword">Forgot your password?</a> 316 </div> 317 </div> 318 319 <input id="returnUrlmodal" name="returnUrl" type="hidden" value="" /> 320 321 322 </form> 323 </div> 324 </div> 325 </div> 326</div> 327 328 329<div class="row eventList"> 330 <div class="col-md-12"> 331 <h1>Traffic Events</h1> 332 <div class="list-group listFilter"></div> 333 <div class="panel panel-default"> 334 <table id="eventTable" data-typeidfriendlyurl="traffic" class="display compact" cellspacing="0" width="100%" title="traffic"> 335 <caption>"traffic"</caption> 336 <thead> 337 <tr> 338 <th class="select-filter" scope="col">Type</th> 339 <th class="select-filter" scope="col">Region</th> 340 <th class="select-filter" scope="col">Roadway</th> 341 <th class="select-filter" scope="col">Direction</th> 342 <th scope="col">Location</th> 343 <th scope="col">Description</th> 344 <th scope="col">Start Time</th> 345 <th scope="col">Anticipated End Time</th> 346 <th scope="col">Last Updated</th> 347 <th scope="col">View on map</th> 348 </tr> 349 </thead> 350 <tfoot> 351 <tr> 352 <th scope="col">Type</th> 353 <th scope="col">Region</th> 354 <th scope="col">Roadway</th> 355 <th scope="col">Direction</th> 356 <th scope="col">Location</th> 357 <th scope="col">Description</th> 358 <th scope="col">
358Start Time</th> 359 <th scope="col">Anticipated End Time</th> 360 <th scope="col">Last Updated</th> 361 <th scope="col">View on map</th> 362 </tr> 363 </tfoot> 364 </table> 365 </div> 366 </div> 367</div> 368 369 370 </div> 371 <div class="row regionLogoContainer"> 372 <div class="col-md-12 center-block"> 373 374 375<div id="Region_Logos" data-atisParent="true"> 376 <div id="virtual-88" data-atis="true" class=""><p align="center"><img height="766" src="/cms/getfile?id=c82ebab1-4f27-f011-ac10-0a8355656c6e" width="550" /></p> 377</div> 378 <div id="virtual-187" data-atis="true" class=""><p align="center"><img height="521" src="/cms/getfile?id=101b4ef3-d2be-f011-ac10-0a8355656c6e" width="979" /></p> 379</div> 380 <div id="virtual-222" data-atis="true" class="KZNSection"><img height="1240" src="/cms/getfile?id=181aebb1-9743-f111-ac10-0a8355656c6e" width="872" /><img height="1356" src="/cms/getfile?id=84c44feb-9743-f111-ac10-0a8355656c6e" width="880" /></div> 381 <div id="virtual-233" data-atis="true" class="KZNSection"><img height="796" src="/cms/getfile?id=2a8c32bc-9070-f111-ac10-0a8355656c6e" width="550" /><img height="797" src="/cms/getfile?id=c5bc69cd-9070-f111-ac10-0a8355656c6e" width="553" /><img height="806" src="/cms/getfile?id=dd41dfdc-9070-f111-ac10-0a8355656c6e" width="566" /><img height="793" src="/cms/getfile?id=216555eb-9070-f111-ac10-0a8355656c6e" width="558" /></div> 382 <div id="virtual-235" data-atis="true" class="KZNSection"><img height="864" src="/cms/getfile?id=11fc2569-7074-f111-ac10-0a8355656c6e" width="598" /><img height="864" src="/cms/getfile?id=e40a7279-7074-f111-ac10-0a8355656c6e" width="605" /></div> 383 <div id="virtual-237" data-atis="true" class="KZNSection"><img height="864" src="/cms/getfile?id=be7a408c-2184-f111-ad1f-0a49702262ad" width="605" /><img height="861" src="/cms/getfile?id=15844aab-2184-f111-ad1f-0a49702262ad" width="597" /></div> 384 <div id="virtual-239" data-atis="true" class=""></div> 385 <div id="virtual-244" data-atis="true" class="KZNSection"><img height="792" src="/cms/getfile?id=db0f936a-69ab-f111-ad1f-0a49702262ad" width="556" /><img height="788" src="/cms/getfile?id=8f349787-69ab-f111-ad1f-0a49702262ad" width="546" /><img height="791" src="/cms/getfile?id=4e56317a-69ab-f111-ad1f-0a49702262ad" width="553" /></div> 386 <div id="virtual-246" data-atis="true" class="KZNSection"><img height="788" src="/cms/getfile?id=bedb097b-b5b1-f111-ad1f-0a49702262ad" width="560" /></div> 387 <div id="virtual-247" data-atis="true" class=""></div> 388 <div id="virtual-248" data-atis="true" class=""></div> 389 <div id="virtual-249" data-atis="true" class=""></div> 390 <div id="virtual-250" data-atis="true" class=""></div> 391 <div id="virtual-251" data-atis="true" class=""></div> 392 <div id="virtual-252" data-atis="true" class=""></div> 393</div> 394 395 396 </div> 397</div> 398<div class="row footer"> 399 <div class="col-md-11"> 400 401 402 403 <ul class="nav navbar-nav"> 404 <li> 405 <a href="/" target="_self" title="Home Menu">Home</a> 406 </li> 407 <li class=""> 408 <a href="/" class="disabled" title="Traffic Menu"> 409 Traffic 410 </a> 411 <ul class="subMenu"> 412 <li> 413 <a href="/map" target="_self" title="Traffic - Traffic Map">Traffic Map</a> 414 </li> 415 <li> 416 <a href="/list/events/traffic" target="_self" title="Traffic - Traffic List">Traffic List</a> 417 </li> 418 <li> 419 <a href="/cctv" target="_self" title="Traffic - Cameras List">Cameras List</a> 420 </li> 421 <li> 422 <a href="/messagesigns" target="_self" title="Traffic - Message Signs List">Message Signs List</a> 423 </li> 424 <li> 425 <a href="/traveltimes" target="_self" title="Traffic - Travel Times List">Travel Times List</a> 426 </li> 427 <li> 428 <a href="/TrafficRoads" target="_self" title="Traffic - Toll Roads">Toll Roads</a> 429 </li> 430 <li> 431 <a href="/TrafficRoads#onroadservices" target="_self" title="Traffic - On Road Services">On Road Services</a> 432 </li> 433 <li> 434 <a href="/TrafficRoads#trafficvolumes" target="_self" title="Traffic - Traffic Volumes">Traffic Volumes</a> 435 </li> 436 </ul> 437 438 </li> 439 <li class=""> 440 <a href="/" class="disabled" title="My i-TRAFFIC Menu"> 441 My i-TRAFFIC 442 </a> 443 <ul class="subMenu"> 444 <li> 445 <a href="/my511" target="_self" title="My i-TRAFFIC - Manage Routes & Alerts">Manage Routes & Alerts</a> 446 </li> 447 <li> 448 <a href="/My511Help" target="_self" title="My i-TRAFFIC - My i-TRAFFIC Help">My i-TRAFFIC Help</a> 449 </li> 450 </ul> 451 452 </li> 453 <li class=""> 454 <a href="/" class="disabled" title="Public Transport Menu"> 455 Public Transport 456 </a> 457 <ul class="subMenu"> 458 <li> 459 <a href="/publicTransport/airport" target="_self" title="Public Transport - Airports">Airports</a> 460 </li> 461 <li> 462 <a href="/publicTransport/transit" target="_self" title="Public Transport - Transit">Transit</a> 463 </li> 464 <li> 465 <a href="/publicTransport/rail" target="_self" title="Public Transport - Rail">Rail</a> 466 </li> 467 </ul> 468 469 </li> 470 <li class=""> 471 <a href="/" class="disabled" title="Extras Menu"> 472 Extras 473 </a> 474 <ul class="subMenu"> 475 <li> 476 <a href="/developers/help" target="_self" title="Extras - API Documentation">API Documentation</a> 477 </li> 478 <li>
479 <a href="/map/embeddedmapsetup" target="_self" title="Extras - Embedded Map">Embedded Map</a> 480 </li> 481 <li> 482 <a href="/extras/renewableenergy" target="_self" title="Extras - Renewable Energy">Renewable Energy</a> 483 </li> 484 <li> 485 <a href="/extras/annualreport" target="_self" title="Extras - Annual Report">Annual Report</a> 486 </li> 487 </ul> 488 489 </li> 490 <li class=""> 491 <a href="/" class="disabled" title="About Menu"> 492 About 493 </a> 494 <ul class="subMenu"> 495 <li> 496 <a href="/faq" target="_self" title="About - FAQ">FAQ</a> 497 </li> 498 <li> 499 <a href="/privacy" target="_self" title="About - Privacy Policy">Privacy Policy</a> 500 </li> 501 <li> 502 <a href="/termsandconditions" target="_self" title="About - Terms and Conditions">Terms and Conditions</a> 503 </li> 504 <li> 505 <a href="/contact" target="_self" title="About - Contact Us">Contact Us</a> 506 </li> 507 </ul> 508 509 </li> 510 </ul> 511 512 513 <div class="btn emergencyPopupNotification" data-alert=""> 514 <i style="padding-right: 5px;" class="fa fa-exclamation-triangle"></i> EMERGENCY ALERT 515 </div> 516 517 </div> 518 <div class="col-md-1"> 519 <ul class="footerLogo"> 520 <li> 521 <a href="http://www.nra.co.za" target="_blank"><span class='hideForAccessibility'></span></a> 522 </li> 523 <li> 524 <div class="footerLogo1"></div> 525 </li> 526 </ul> 527 </div> 528</div> 529 530 </div> 531
531<script src="//d2wy8f7a9ursnm.cloudfront.net/bugsnag-2.min.js" data-apikey="00000000000000000000000000000000" data-appversion="1.0.0.0"></script>
531 532 533
533<script src="/bundles/jquery?v=DGWj1SJX61WvbyyMTCfeycvCDN7KCoSmuGStpPEtHc81"></script>
533 534 535
535<script src="/bundles/common?v=IHcERHADtrwesUkCsvoIo2lAjxuBbkbRZviM6h0dTRw1"></script>
535 536 537
537<script src="/bundles/bootstrap?v=pArNLBwWlKXg-V4WY_ubViZYv3x7J63RFuqBLzuAK4A1"></script>
537 538 539
539<script src="/signalr/hubs"></script>
539 540 541
541<script src="/bundles/jqueryval?v=zch5K1zREXU1mT8_2y2t-mr_qIWZu4dP9hRULINFo0c1"></script>
vendor: 2 bytes, line 541
541
542<script src="/scripts/jsresources/loadBlocker"></script>
vendor: 2 bytes, line 542
542
543<script src="/Scripts/loadBlocker.js"></script>
vendor: 2 bytes, line 543
543
544<script src="/Scripts/isUserLoggedIn.js"></script>
vendor: 2 bytes, line 544
544
545<script> 546 $(function () { 547 var loginType = 'modal'; 548 549 $("#loginForm" + loginType).submit(function (e) { 550 e.preventDefault(); 551 loadBlockerApi.showSpinner('loginForm'); 552 553 $.ajax('/My511/Login', { 554 data: $("#loginForm" + loginType).serialize(), 555 type: 'POST', 556 //we are doing this so that if we are already logged in and get redirected to My511/Index, instead of thinking we received json, the ajax call fails and reloads the page 557 dataType: 'json', 558 beforeSend: function (event, xhr, settings, thrownError) { 559 if (window.isUserLoggedIn(event.responseText)) { 560 xhr.abort(); 561 } 562 } 563 }).done(function (data) { 564 if (!data.success) { 565 loadBlockerApi.hideSpinner('loginForm'); 566 $("#validationSummary" + loginType + " > ul > li").text(data.errors); 567 $("#validationSummary" + loginType).show(); 568 if(data.unconfirmed){ 569 $("#resendConfirmationEmail" + loginType).show(); 570 } 571 } else { 572 $("#validationSummary" + loginType).hide(); 573 if (data.returnUrl) { 574 $(location).attr('href', data.returnUrl); 575 } else { 576 location.reload(); 577 } 578 } 579 }).fail(function (event, xhr, settings, thrownError) { 580 location.reload(); 581 }); 582 }); 583 584 // if already on login page, don't display login modal when clicking on login link 585 $('#loginModalDialog').on('show.bs.modal', function () { 586 var url = document.location.pathname; 587 var name = url.substring(url.lastIndexOf('/') + 1); 588 if (name.toLowerCase() === 'login') { 589 return false; 590 } 591 return true; 592 }); 593 594 $('#loginModalDialog').on('shown.bs.modal', function () { 595 $('#Email').focus(); 596 }); 597 598 $('#resendConfirmationEmail' + loginType).on('click', function (e) { 599 //prevent default action. 600 e.preventDefault(); 601 //our custom ajax error handler for confirmation emails. 602 var ajaxFailConfirmation = new AjaxFail(window.resources['SorryUnkownErrorConfirmationCouldNotBeResent'], bootbox.alert); 603 604 var username = $('#Email'+loginType).val(); 605 606 //this should never happen but just in case. 607 if (username) { 608 $.ajax('/My511/ResendUserConfirmationEmail/', { data: { username: username }, type: 'POST' }).done(function(data) { 609 if (data.errors) bootbox.alert('<i class="fa fa-check-circle" aria-hidden="true"></i> ' + data.errors); 610 else bootbox.alert('<i class="fa fa-check-circle" aria-hidden="true"></i> The confirmation email has been re-sent to {0}.'.replace('{0}', username)); 611 }).fail(ajaxFailConfirmation.ajaxFailPossibleErrorMessageFromServer); 612 } 613 614 615 }); 616 617 function iOSversion() { 618 if (/iP(hone|od|ad)/.test(navigator.platform)) { 619 // supports iOS 2.0 and later: <http://bit.ly/TJjs1V> 620 var v = (navigator.appVersion).match(/OS (\d+)_(\d+)_?(\d+)?/); 621 return [parseInt(v[1], 10), parseInt(v[2], 10), parseInt(v[3] || 0, 10)]; 622 } 623 } 624 625 if (Modernizr.mq('(max-width: 768px)')) { 626 var ver = iOSversion(); 627 if (ver != undefined && ver[0] >= 11) { 628 $("#loginModalDialog.modal").css("position", "absolute"); 629 } 630 } 631 632 }); 633 </script>
633 634 635
635<script src="/scripts/jsresources/alerts"></script>
vendor: 2 bytes, line 635
635
636<script> 637 $(function () { 638 var isNavFixedTop = $("nav").hasClass("navbar-fixed-top"); 639 if (isNavFixedTop) { 640 fixNav(); 641 } 642 reSizeLogo(); 643 644 $(window).resize(function () { 645 clearTimeout(window.resizedFinished); 646 window.resizedFinished = setTimeout(function () { 647 reSizeLogo(); 648 if (isNavFixedTop) { 649 if (Modernizr && Modernizr.mq('(min-width: 767px)')) { 650 fixNav(); 651 } 652 } 653 }, 250); 654 }); 655 }); 656 657 $(document).on("click", '#addCameraButton', function () { 658 window.AddMyCameraEvent(); 659 }); 660 661 function reSizeLogo() { 662 if (Modernizr) { 663 if (Modernizr.mq('(max-width: 992px)')) { 664 $(".navBar").addClass("mobile"); 665 } else { 666 if ($(".navBar").hasClass("mobile")) { 667 $(".navBar").removeClass("mobile"); 668 } 669 } 670 } 671 } 672 673 function fixNav() { 674 var isNavIn2Row = $("nav").height() > 60; 675 if (isNavIn2Row) { 676 $(".navbar-fixed-top").addClass("forceMobileMode"); 677 } else { 678 $(".navbar-fixed-top").removeClass("forceMobileMode"); 679 if ($("nav").height() > 60) { 680 $(".navbar-fixed-top").addClass("forceMobileMode"); 681 } 682 } 683 } 684 685 //display the popup on click. Get the content from the div 686 $(".emergencyPopupNotification").on("click", function (event) { 687 var content = $(".emergencyPopupNotification").attr("data-alert"); 688 if (content) { 689 bootbox.dialog({ 690 title: '<i style="padding-right: 5px;" class="fa fa-exclamation-triangle"></i> ' + 'Emergency Alert'.toUpperCase(), 691 onEscape: true, 692 className: 'emergencyAlertModal', 693 message: content 694 }); 695 } 696 }); 697 698 // collapse footer menu in mobile mode 699 if (Modernizr.mq('(max-width: 992px)')) { 700 $(".footer .subMenu").hide(); 701 // remove disabled class from footer menu 702 $(".footer .navbar-nav > li a.disabled").removeClass("disabled"); 703 var hasSubMenu = $(".footer .navbar-nav > li:has('ul')"); 704 if (hasSubMenu) { 705 hasSubMenu.on("click", function (evt) { 706 var subMenuItems = $(".footer ul.subMenu > li"); 707 subMenuItems.click(function () { 708 $(subMenuItems, this).data("clicked", true); 709 }); 710 // toggle footer menu, if submenu clicked then behave normal 711 if (subMenuItems.data('clicked') == undefined) { 712 evt.preventDefault(); 713 var subMenuClicked = $("ul.subMenu", this); 714 if (subMenuClicked.is(":hidden")) { 715 subMenuClicked.slideDown(); 716 } else { 717 subMenuClicked.slideUp(); 718 } 719 } 720 }); 721 } 722 $(window).on("orientationchange", function () { 723 var isHidden = $(".footer .subMenu").is(":hidden");
724 if (!isHidden) { 725 $(".footer .subMenu").hide(); 726 } 727 window.forceAlertRefresh(); 728 }); 729 } 730</script>
730 731 732<!-- Google Code for Remarketing Tag --> 733<!-------------------------------------------------- 734Remarketing tags may not be associated with personally identifiable information or placed on pages related to sensitive categories. 735See more information and instructions on how to setup the tag on: http://google.com/ads/remarketingsetup 736--------------------------------------------------->
737<script> 738 /* <![CDATA[ */ 739 var google_conversion_id = 869983835; 740 var google_custom_params = window.google_tag_params; 741 var google_remarketing_only = true; 742 /* ]]> */ 743</script>
vendor: 2 bytes, line 743
743
744<script src="//www.googleadservices.com/pagead/conversion.js"> 745</script>
745 746<noscript> 747 <div style="display:inline;"> 748 <img height="1" width="1" style="border-style:none;" alt="" src="//googleads.g.doubleclick.net/pagead/viewthroughconversion/869983835/?guid=ON&script=0" /> 749 </div> 750</noscript> 751 752
752<script src="/scripts/jsresources/List/listResources"></script>
752 753
753<script src="/bundles/datatables?v=fy7Hm7VrlhRdzIsl1KQnzlLoTORTmh-BkOU_24bteqk1"></script>
753 754 755 756
756<script> 757 //jquery selector and datatable optional configuration. 758 window.listPageV2('#eventTable', '/List/UniqueColumnValuesForEvents/{typeId}', 759 { 760 columns: [ 761 { data: "type", name: "type", searchable: true, orderable: true }, 762 { data: "region", name: "region", searchable: true, orderable: true }, 763 { data: "roadwayName", name: "roadwayName", searchable: true, orderable: true }, 764 { data: "direction", name: "direction", searchable: true, orderable: true }, 765 { data: "location", name: "location", searchable: true, orderable: false }, 766 { data: "description", name: "description", searchable: true, orderable: false }, 767 { data: "startTime", name: "startTime", searchable: true, orderable: true }, 768 { data: "endTime", name: "endTime", searchable: true, orderable: true }, 769 { data: "lastUpdated", name: "lastUpdated", searchable: true, orderable: true }, 770 { 771 searchable: false, 772 orderable: false, 773 render: function (data, type, row, meta) { 774 return '<a href="/map#' + row.layerName + '-' + row.DT_RowId + '">View on map</a>'; 775 } 776 } 777 ], 778 order: [[1, 'asc']] 779 }, null, true); 780 781 //once data table loaded. 782 $(document).one('dataTableLoaded', function () { 783 window.rowDetailsV2('#eventTable', function (rowData) { 784 //load content. 785 return $.ajax({ 786 url: rowData.tooltipUrl 787 }); 788 }); 789 }); 790 791 $(document).one('columnFiltersInitComplete', function () { 792 //Filter dropdown could be populated on load if user navigates to a link with the filter specified; do not change filter in this case 793 if ('ALL' != 'ALL' && $('#listFilter-region').val() == "") { 794 $('#listFilter-region').val( 795 '' 796 ).change(); 797 } 798 }); 799 800 $(document).on('regionChanged', function(e, region, name, oldregion) { 801 $('#listFilter-region').val( 802 name 803 ).change(); 804 }); 805 </script>
805 806 807 808
808<script src="/bundles/ajaxCms?v=S2AIW3vfvvB9W0nL_o14j1pr_6qaiq-8uFy53T0KkvU1"></script>
vendor: 2 bytes, line 808
808
809<script src="/bundles/regionContentFilter?v=J433vMkjBHtbpdU_A0RUdWjRikzjWXQ5RRDO9BKZjW01"></script>
vendor: 2 bytes, line 809
809
810<script src="/bundles/helpPopup?v=9jd_MWorLWn1LirK6DZyZ22unJlvkZ8wTDDrnbH4tTw1"></script>
810 811 812
812<script> 813 //Creating a global variable which will indicate whether the page is being unloaded or not. 814 var globalVars = { isBeingUnloaded: false, tickerInterval: 4000, dateFormat: 'D/M/YYYY H:mm', timeFormat: 'h:mm A', canCreateEvents: '' }; 815 //Attach the 'beforeunload' event handler on the window object. 816 $(window).bind('beforeunload', function() { 817 //Set the global variable to indicate that the page is being unloaded. 818 globalVars.isBeingUnloaded = true; 819 }); 820 821 //For some reason we occasionally fail at parsing : decodeURIComponent(settings.data), return a blob if it doesn't work 822 function tryJsonParse(text) { 823 var result; 824 try { 825 result = JSON.parse('{"' + 826 text 827 .replace(/\+/g, ' ') 828 .replace(/"/g, '\\"') 829 .replace(/&/g, '","') 830 .replace(/=/g, '":"') + 831 '"}'); 832 } catch (e) { 833 result = encodeURI(text); 834 } 835 return result; 836 } 837 838 //global ajax error handler. 839 $(document).ajaxError(function(event, xhr, settings, thrownError) { 840 //don't log an error if the page is being unloaded because a user closed the window or click another link. 841 if (globalVars.isBeingUnloaded || thrownError == 'timeout' || xhr.statusText === 'abort' || xhr.status === 0) { 842 return; 843 } 844 if (console) { 845 //sometimes these errors are swallowed and not seen on dev, make sure we show it 846 console.log(settings, thrownError); 847 } 848 var responseText = "html page not included"; 849 if (!xhr.responseText) { 850 responseText = "no response"; 851 } 852 if (xhr.responseText && xhr.responseText.substring(0, 15) != "<!DOCTYPE html>") responseText = xhr.responseText; 853 if (typeof Bugsnag !== "undefined") { 854 var dataPackage = settings.data ? tryJsonParse(decodeURIComponent(settings.data)) : {}; 855 delete dataPackage["password"]; 856 delete dataPackage["Password"]; 857 Bugsnag.notify("AjaxError", thrownError + " " + settings.url.split("?")[0], { ajaxData: { status: xhr.status, responseText: responseText, url: settings.url, type: settings.type, data: dataPackage } }); 858 } 859 }); 860 861 $(document).ready(function() { 862 if (typeof Bugsnag !== "undefined") { 863 Bugsnag.apiKey = 'd6dc66566a16949b16c9b3b9ca984b5d'; 864 Bugsnag.releaseStage = 'Prod'; 865 Bugsnag.notifyReleaseStages = ["Staging", "Prod"]; 866 } 867 }); 868 869 </script>
869 870</body> 871</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.