1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xmlns="http://www.w3.org/1999/xhtml"> 3<head> 4<meta name="author" content="Nicolaas Engelbrecht"/> 5<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"> 6<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 7<meta name="keywords" content="business directory, search engine, Funaku, South African companies, south Africa, local businesses, Western Cape, find businesses, online directory, online directories, search engine listings, searching, seek it, directory listings, small companies, big companies, SA, ZA, company categories, news, sports, health, tourism, business, property, education, entertainment, IIS Group, online directory, SA online, business SA, directories, business, directory online, small business, business directory, SA, online business directory, business directories, SA business, SA online, South Africa, South African directory, Cape, Western Cape, SA directory"> 8<meta name="description" content="Funaku is a South African online business directory, lising local South African companies online. List your South African business with the Funaku online directory."> 9<title>Enquiries - Funaku</title> 10 11<link rel="stylesheet" type="text/css" href="skin/css/jquery.lightbox-0.5.css" /> 12<link rel="stylesheet" type="text/css" href="skin/css/lightbox.css" /> 13<link rel="stylesheet" type="text/css" href="skin/css/bootstrap.min.css" /> 14<link rel="stylesheet" type="text/css" href="skin/css/form.css" /> 15<link rel="stylesheet" type="text/css" href="skin/css/catalogue.css" /> 16<link rel="stylesheet" href="skin/css/sss.css" type="text/css" media="all"> 17<link rel="stylesheet" type="text/css" href="skin/css/hover.css" /> 18<link href="https://fonts.googleapis.com/css?family=Oswald:300,400,500,600,700|Roboto:300,300i,400,400i,500,500i,700,700i,900,900i" rel="stylesheet"> 19<link rel="stylesheet" href="skin/css/jquery-ui.min.css" type="text/css" /> 20<link rel='shortcut icon' type='image/x-icon' href="favicon.ico" /> 21<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.12.1/css/all.css"> 22 23
24<script type="text/javascript" src="skin/js/jquery-1.11.3.min.js"></script>
24 25<!--
25<script type="text/javascript" src="skin/js/jquery-ui-1.10.2.custom.min.js"></script>
25 -->
26<script type="text/javascript" src="skin/js/sss.min.js"></script>
vendor: 2 bytes, line 26
26
27<script type="text/javascript" src="skin/js/jquery-ui.min.js"></script>
vendor: 2 bytes, line 27
27
28<script type="text/javascript" src="skin/js/bootstrap.min.js"></script>
vendor: 2 bytes, line 28
28
29<script type="text/javascript" src="skin/js/jquery.lightbox-0.5.pack.js"></script>
vendor: 2 bytes, line 29
29
30<script type="text/javascript" src="skin/js/lightbox.min.js"></script>
vendor: 2 bytes, line 30
30
31<script type="text/javascript" src="skin/js/jquery.onImagesLoad.min.js"></script>
vendor: 2 bytes, line 31
31
32<script type="text/javascript" src="skin/js/jquery.responsiveSlides.js"></script>
vendor: 2 bytes, line 32
32
33<script src="skin/js/responsiveslides.min.js"></script>
vendor: 2 bytes, line 33
33
34<script type="text/javascript" src="skin/js/bootbox.js"></script>
vendor: 2 bytes, line 34
34
35<script type="text/javascript" src="skin/js/jssor.slider.mini.js"></script>
vendor: 2 bytes, line 35
35
36<script type="text/javascript" src="skin/js/sliding-labels.js"></script>
vendor: 2 bytes, line 36
36
37<script type="text/javascript"> 38$(document).ready(function(){ 39 40 var p=$('.banner_hold').responsiveSlides({ 41 height:489, // slides conteiner height 42 background:'#fff', // background color and color of overlayer to fadeout on init 43 autoStart:true, // boolean autostart 44 startDelay:0, // start whit delay 45 effectInterval:5000, // time to swap photo 46 effectTransition:1000, // time effect 47 pagination:[ 48 { 49 active:true, // activate pagination 50 inner:true, // pagination inside or aouside slides conteiner 51 position:'B_L', /* 52 pagination align: 53 T_L = top left 54 T_C = top center 55 T_R = top right 56 57 B_L = bottom left 58 B_C = bottom center 59 B_R = bottom right 60 */ 61 margin:10, // pagination margin 62 dotStyle:'', // dot pagination class style 63 dotStyleHover:'', // dot pagination class hover style 64 dotStyleDisable:'' // dot pagination class disable style 65 } 66 ] 67}); 68 69 70 71}); 72</script>
vendor: 2 bytes, line 72
72
73<script> 74$(document).ready(function(){ 75 $('.dropdown-submenu a.test').on("click", function(e){ 76 $('.dropdown-submenu>ul.dropdown-menu').hide(); 77 $(this).next('ul').toggle(); 78 e.stopPropagation(); 79 e.preventDefault(); 80 }); 81}); 82</script>
82 83<!-- Google Tag Manager -->
84<script>
vendor: 331 bytes, lines 84-88
84(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 85new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 86j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 87'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 88})(window,document,'script','dataLayer','
88GTM-N3FC96D
vendor: 3 bytes, line 88
88');
88</script>
88 89<!-- End Google Tag Manager --> 90</head> 91<body id="mainbody"> 92<!-- Google Tag Manager (noscript) -->
vendor: 69 bytes, lines 92-93
92 93<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
93GTM-N3FC96D
vendor: 85 bytes, lines 93-94
93" 94height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
95<!-- End Google Tag Manager (noscript) --> 96 97 <div class="container padding-top-bottom"> 98 <div class="logo_hold"> 99 <a href="#page-top"> 100 <img class="img-responsive logo" src="skin/images/logo.png" alt="Funaku" title="Funaku - "> 101 </a> 102 <!--<img class="img-responsive rightlogo" src="skin/images/sbdt.png" alt="Funaku" title="Funaku - ">--> 103 </div> 104 </div> 105<!-- <nav id="mainNav" class="navbar navbar-default navbar-fixed-top navbar-custom"> --> 106<nav id="mainNav" class="navbar navbar-default navbar-custom"> 107 <div class="container"> 108 <!-- Brand and toggle get grouped for better mobile display --> 109 <div class="navbar-header page-scroll"> 110 <div class="search_holder"> 111 <style> 112 a { 113 cursor: pointer; 114} 115</style> 116
117<script type="text/javascript"> 118$(document).ready(function() { 119 120 $.widget( "ui.autocomplete", $.ui.autocomplete, { 121 options: { 122 maxItems: 10 123 }, 124 _renderMenu: function( ul, items ) { 125 var that = this, 126 count = 0; 127 $.each( items, function( index, item ) { 128 if ( count < that.options.maxItems ) { 129 that._renderItemData( ul, item ); 130 } 131 count++; 132 }); 133 } 134}); 135 136 137 $("#txt_search").val(""); 138 139 $("#txt_search").autocomplete({ 140 minLength: 3, 141 source: "https://www.funaku.co.za/online.asp?controller=search&view=listings_search&id=0&window=1", 142 open: function() { 143 var len = $('.ui-autocomplete > li').length; 144 var term = ""; 145 if(len > 0) { 146 // var seemoreLink = "<li class=\"ui-menu-item\" role=\"presentation\"><a href=\"https://www.funaku.co.za/online.asp?controller=search&view=listings_search&id=0&window=1"+$("#txt_search").val()+"\"><strong>See more results</strong></a></li>"; 147 term = encodeURIComponent($("#txt_search").val()); 148 var seemoreLink = "<li><a href='https://www.funaku.co.za/online.asp?controller=listings&view=search_grid&id=0&window=0&term=" + term +"'><strong>See all results</strong></a></li>"; 149 $(".ui-autocomplete").append(seemoreLink); 150 } 151 } 152 }).data("ui-autocomplete")._renderItem = function (ul, item) { 153 var term = ""; 154 term = encodeURIComponent(item.name); 155 return $("<li>") 156 // .append("<a href=\"?controller=listings&view=searchABC&id="+item.id+"\"><div class=\"search-box-results\"><span>" + item.name + "<br><small>" + item.category + "</small></span></div></a>") 157 158 .append("<a href=\"/?controller=listings&view=viewlistings&cat="+term+"\"><div class=\"search-box-results\"><span>" + item.name + "</span></div></a>") 159 .appendTo(ul); 160 161 }; 162 $("#frm_search").submit(function (e) { 163 e.preventDefault(); 164 if ($("#txt_search").val() != null) { 165 window.location = "https://www.funaku.co.za/online.asp?controller=listings&view=search_grid&id=0&window=0&term=" + $("#txt_search").val(); 166 } 167 }); 168 169 $.submitSearch = function() { 170 var $search = $("#txt_search").val(); 171 // alert($search); 172 $search = $search.trim(); 173 if ($search.length < 3) { 174 alert("You must enter at least three characters in the search input field"); 175 $("#txt_search").val(""); 176 return false; 177 } 178 else { 179 $("#frm_search").submit(); 180 } 181 } 182 183}); 184</script>
184 185<form id="frm_search"> 186 <li class="searchlist"> 187 <div class="search_box"> 188 <input type="text" name="search" id="txt_search" size="30" maxlength="50" class="enquiry_form_search" placeholder="Search by category" /> 189 <input type="hidden" id="product_id" name="product" /> 190 </div> 191 </li> 192 <li class="searchlist"> 193 <div class="search_btn"> 194 <a onclick="$.submitSearch()" id="btn_full_search" title="Search for a Service"><img src="skin/images/search_icon.png" title="Search" class="img-responsive negmargin"></a> 195 </div> 196 </li> 197</form> 198 </div> 199 <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> 200 <span class="sr-only">Toggle navigation</span> Menu <i class="fa fa-bars"></i> 201 </button> 202 203 </div> 204 205 <!-- Collect the nav links, forms, and other content for toggling --> 206 <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 207 208 <ul class="nav navbar-nav navbar-right"> 209 <li class="hidden"> 210 <a href="#page-top"></a> 211 </li> 212 213 <li class="page-scroll"> 214 <a href="/home" title="Funaku - Home">Home</a> 215 </li> 216 <li class="page-scroll"> 217 <a href="/signup" title="Funaku - Free Listing!">Free Listing</a> 218 </li> 219 <li class="page-scroll"> 220 <a href="/enquiries" title="Funaku - Enquiries">Enquiries</a> 221 </li> 222 </ul> 223 <div class="clearall"></div> 224 </div> 225 <!-- /.navbar-collapse --> 226 </div> 227 <!-- /.container-fluid --> 228</nav> 229 230 231<article class=""> 232<div class="container-fluid"> 233<div class="row gap_top"> 234 235<div class="alphabet"> 236<h3>Search Alphabetically</h3> 237<h4 class="alpha"> 238<a class="abc" href="online.asp?controller=listings&view=searchabc&id=A">A</a> 239<a class="abc" href="online.asp?controller=listings&view=searchabc&id=B">B</a> 240<a class="abc" href="online.asp?controller=listings&view=searchabc&id=C">C</a> 241<a class="abc" href="online.asp?controller=listings&view=searchabc&id=D">D</a> 242<a class="abc" href="online.asp?controller=listings&view=searchabc&id=E">E</a> 243<a class="abc" href="online.asp?controller=listings&view=searchabc&id=F">F</a> 244<a class="abc" href="online.asp?controller=listings&view=searchabc&id=G">G</a> 245<a class="abc" href="online.asp?controller=listings&view=searchabc&id=H">H</a> 246<a class="abc" href="online.asp?controller=listings&view=searchabc&id=I">I</a> 247<a class="abc" href="online.asp?controller=listings&view=searchabc&id=J">J</a> 248<a class="abc" href="online.asp?controller=listings&view=searchabc&id=K">K</a> 249<a class="abc" href="online.asp?controller=listings&view=searchabc&id=L">L</a> 250<a class="abc" href="online.asp?controller=listings&view=searchabc&id=M">M</a> 251<a class="abc" href="online.asp?controller=listings&view=searchabc&id=N">N</a> 252<a class="abc" href="online.asp?controller=listings&view=searchabc&id=O">O</a> 253<a class="abc" href="online.asp?controller=listings&view=searchabc&id=P">P</a> 254<a class="abc" href="online.asp?controller=listings&view=searchabc&id=Q">Q</a> 255<a class="abc" href="online.asp?controller=listings&view=searchabc&id=R">R</a> 256<a class="abc" href="online.asp?controller=listings&view=searchabc&id=S">S</a> 257<a class="abc" href="online.asp?controller=listings&view=searchabc&id=T">T</a> 258<a class="abc" href="online.asp?controller=listings&view=searchabc&id=U">U</a> 259<a class="abc" href="online.asp?controller=listings&view=searchabc&id=V">V</a> 260<a class="abc" href="online.asp?controller=listings&view=searchabc&id=W">W</a> 261<a class="abc" href="online.asp?controller=listings&view=searchabc&id=X">X</a> 262<a class="abc" href="online.asp?controller=listings&view=searchabc&id=Y">Y</a> 263<a class="abc" href="online.asp?controller=listings&view=searchabc&id=Z">Z</a> 264</h4> 265</div> 266<div class="clearall"></div> 267</div> 268</div> 269</article> 270
271<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>
271 272
273<script type="text/javascript"> 274 $(document).ready(function() { 275 //$.LoadEnquiryProductVariants(); // see /skin/plugins/iis-enquiries/iis.enquiries.js 276 $("#sidebar-content").height(250); 277 278 $(':input').on('change', function() { // reset the form (remove red validation borders when any input changes) 279 resetstyle(); 280 }); 281 282 var comments_length = $(".char-textarea").val().length; 283 $(".char-count").html(500 - comments_length); 284 285 $(function(){ 286 287 $('#contactform').slidinglabels({ 288 289 /* these are all optional */ 290 className : 'slider', // the class you're wrapping the label & input with -> default = slider 291 topPosition : '20px', // how far down you want each label to start 292 leftPosition : '15px', // how far left you want each label to start 293 axis : 'y', // can take 'x' or 'y' for slide direction 294 speed : 'slow', // can take 'fast', 'slow', or a numeric value 295 296 }); 297 298 $('#contactformxx').slidinglabels({ 299 300 /* these are all optional */ 301 className : 'slider', // the class you're wrapping the label & input with -> default = slider 302 topPosition : '20px', // how far down you want each label to start 303 leftPosition : '15px', // how far left you want each label to start 304 axis : 'y', // can take 'x' or 'y' for slide direction 305 speed : 'slow', // can take 'fast', 'slow', or a numeric value 306 307 }); 308 309 $(".char-textarea").on("keyup",function(event){ 310 checkTextAreaMaxLength(this,event); 311 }); 312 313 function checkTextAreaMaxLength(textBox, e) { 314 var maxLength = parseInt($(textBox).data("length")); 315 $(".char-count").html(maxLength - textBox.value.length); 316 return true; 317 } 318 319 320 }); 321}); 322</script>
322 323<article> 324<div class="container"> 325<div class="row gap_top"> 326 327<div class="col-lg-12 col-md-12"> 328<h1 style="text-align: center;">Submit your enquiry</h1> 329</div> 330 331<div class="col-lg-12 col-md-12"> 332<form action="https://www.funaku.co.za/online.asp?controller=pages&view=SubmitEnquiries&id=1" method="post" name="contactform" id="contactform" class=" frm_mobile" onsubmit="return resetstyle() && check_input(this);" > 333<!--<div id="div_variants" style="margin-bottom: 10px"></div>--> 334<div class="slider"> 335<label for="user">First Name</label> 336<input type="text" id="name" name="name" size="30" maxlength="40" class="enquiry_form_text required" /> 337</div> 338<div class="clearall" style="height:30px;"></div> 339<div class="slider"> 340<label for="user">Surname</label> 341<input type="text" id="surname" name="surname" size="30" maxlength="40" class="enquiry_form_text required" /> 342</div> 343<div class="clearall" style="height:30px;"></div> 344<div class="slider"> 345<label for="user">Contact Number</label> 346<input type="text" id="tel" name="tel" size="30" maxlength="30" class="enquiry_form_text required" /> 347</div> 348<div class="clearall" style="height:30px;"></div> 349<div class="slider"> 350<label for="user">Email Address</label> 351<input type="text" id="email" name="email" size="30" maxlength="40" class="enquiry_form_text required" /> 352</div> 353<div class="clearall" style="height:30px;"></div> 354<div class="slider"> 355<label for="user">Repeat Email Address</label> 356<input id="repeatemail" type="text" name="repeatemail" size="30" maxlength="40" class="enquiry_form_text" /> 357</div> 358<strong><em><span class='message'></span></em></strong> 359<div class="clearall" style="height:30px;"></div> 360<div class="slider"> 361<label for="user">Comments/Questions</label> 362<textarea data-length=500 name="comments" id="comments" cols="25" rows="15" class="enquiry_form_comments char-textarea"></textarea> 363<h4 class="small_text" style="color:#363636!important"><span class="char-count">500</span> characters remaining</h4> 364</div> 365<div class="clearall" style="height:30px;"></div> 366<div class="nuField"> 367<div class="clearall" style="height:10px;"></div> 368<div class="cf-turnstile" data-sitekey="0x4AAAAAACbI1CBqVTjqf0nN"></div> 369<div class="clearall" style="height:10px;"></div> 370</div> 371<div class="clearall" style="height:30px;"></div> 372<span class="small_text" style="color:#363636">To prevent web form hacking, please answer the question above. </span> 373<div class="clearall" style="height:30px;"></div> 374<input name="submit" id="dosubmit" type="submit" class="form_button" value="Send Form" /> 375<input name="reset" type="reset" class="form_button" value="Clear Form" /> 376</form> 377</div> 378 379<div class="clearall" style="height:50px;"></div> 380 381</div> 382</div> 383</article> 384
385<script> 386 var errstr = ""; 387 var iChars = "ABCDEFGHIJKLMNOPQRSTUVWYXZabcdefghijklmnopqrstuvwyxz0123456789()?/,.-$&:+%@!+' \r\n"; 388 var phChars = "0123456789+()- "; 389 var pwChars = "ABCDEFGHIJKLMNOPQRSTUVWYXZabcdefghijklmnopqrstuvwyxz0123456789~`!@#$%^&*()_-+={}[]:;<>.?/"; 390 var spChars = "BLUEblue"; 391 392$('#email, #repeatemail').on('keyup', function () { 393 394 if ($('#email').val() == '' && $('#repeatemail').val() == '') { 395 $('.message').fadeOut('slow'); 396 } 397 if ($('#email').val() == $('#repeatemail').val()) { 398 $('.message, #message').html('Email addresses match!').animate({'color':'#28a00a','background-color':'#befeaaf'},'slow'); 399 return true; 400 } else { 401 $('.message').css('display', 'block'); 402 $('.message, #message').html('Email addresses do NOT match!').animate({'color':'#a00a28','background-color':'#faafbe'},'slow') 403 return false; 404 } 405}); 406 407 408 function check_input(theform) { 409 410 if (minmaxlength("name","First Name",theform.name.value,3,20) != true) { 411 return false; 412 } 413 414 if (checkstring("name","First Name",theform.name.value,iChars) != true) { 415 return false; 416 } 417 418 if (minmaxlength("surname","Surname",theform.surname.value,3,20) != true) { 419 return false; 420 } 421 422 if (checkstring("surname","Surname",theform.surname.value,iChars) != true) { 423 return false; 424 } 425 426 //if (minmaxlength("company_name","Company Name",theform.company_name.value,3,30) != true) { 427 //return false; 428 //} 429 430 //if (checkstring("company_name","Company Name",theform.company_name.value,iChars) != true) { 431 //return false; 432 //} 433 434 435 if (minmaxlength("tel","Contact Number",theform.tel.value,10,30) != true) { 436 return false; 437 } 438 439 if (checkstring("tel","Contact Number",theform.tel.value,phChars) != true) { 440 return false; 441 } 442 443 if (validateEmail("email","E-mail Address",theform.email.value) != true) { 444 return false; 445 } 446 447 if (validateEmail("repeatemail","Repeat E-mail Address",theform.repeatemail.value) != true) { 448 return false; 449 } 450 451 if (checkEmail() != true) { 452 return false; 453 } 454 455 if (minmaxlength("comments","Comments/Questions",theform.comments.value,3,500) != true) { 456 return false; 457 } 458 459 if (checkstring("comments","Comments/Questions",theform.comments.value,iChars) != true) { 460 return false; 461 } 462 463 464 465 if (checkstring("spam","What is 15 + 100 =",theform.spam.value,phChars) != true) { 466 return false; 467 } 468 469 if (minmaxlength("spam","What is 15 + 100 =",theform.spam.value,3,3) != true) { 470 return false; 471 } 472 473 474 //bootbox.confirm({ 475 //size: "small", 476 //message:"<h3 style='color:red; text-align:center; margin-top:0px;margin-bottom:0px;'>Are you sure?</h3>", 477 //onEscape: function() { 478 // you can do anything here you want when the user dismisses dialog 479 //$('.bootbox.modal').modal('hide'); 480 //}, 481 //callback: function(result) { 482 //$.ajax({ 483 //url: '?controller=pages&view=SubmitEnquiries&id=1&window=1', 484 //type: "POST", 485 //dataType: "json", 486 //data: { 487 //Antispam:$('#antispam').val(), 488 //Forename: $('#forename').val(), 489 //Surname: $('#surname').val(), 490 //Tel_number:$('#tel_number').val(), 491 //Email_address:$('#email_address').val(), 492 //Comments: $('#comments').val() 493 //}, 494 //success: function (result1, status) { 495 //console.log(status); 496 //console.log(result1); 497 //bootbox.alert({ 498 //size:"small", 499 //title:"<img src='skin/images/afritrade_logo_2016.png' style='width:200px'/>", 500 //message: result1.message, 501 //callback: function(red){ 502 //window.location.href = "?controller=pages&view=load&id=home"; 503 //} 504 //}); 505 506 507 //}, 508 //error: function (result2, status) { 509 //bootbox.alert({ 510 //size:"small", 511 //title:"<img src='skin/images/afritrade_logo_2016.png' style='width:200px'/>", 512 //message:"<h3 style='color:red; text-align:center; margin-top:0px;margin-bottom:0px;'>Error, cannot continue!</h3>", 513 //}); 514 515 //} 516 //}); 517 518 //} 519 //}); 520 521 } 522 523 function checkEmail () { 524 if ($('#email').val() == $('#repeatemail').val()) { 525 526 return true; 527 528 } else { 529 530 bootbox.alert({ 531 size:"550px", 532 message:"<span style='color:red;'>Email Address</span> and <span style='color:red;'>Repeat Email Address</span> Fields do do not match!<br/><br/>Please make sure they are correct and exactly the same and try again!" 533 });
534 return false; 535 536 } 537 538 } 539 540 function validateEmail(item_id,item_name,item_value) { 541 var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; 542 if (re.test(item_value)){ 543 return true; 544 } 545 else{ 546 document.getElementById(item_id).focus(); 547 document.getElementById(item_id).style.border="1px solid red"; 548 bootbox.alert({ 549 size:"550px", 550 message:"<span style='color:red;'>Invalid email address!</span> - email address invalid. You entered:<br><br> " + item_value + "<br><br>Correct the error(s) in the <span style='color:red;'>" + item_name + "</span> field and try again!" 551 }); 552 return false; 553 } 554 } 555 556 function checkstring(item_id,item_name,item_value,iChars) { 557 558 errstr = ""; 559 var founderror = 0; 560 var str = item_value; 561 var txt = ""; 562 for (var i = 0; i < str.length; i++) { 563 if (iChars.indexOf(str.charAt(i)) == -1) { 564 errstr = errstr + "<span style='color:red;'>" + str.charAt(i) + "</span>"; 565 founderror = 1; 566 } 567 else { 568 errstr = errstr + str.charAt(i); 569 } 570 } 571 if (founderror > 0) { 572 //document.getElementById("errmsg").innerHTML="<span style='color:red;'>Invalid character!</span> - some characters not allowed. You entered:<br><br> " + errstr + "<br><br>Correct the error(s) in the <span style='color:red;'>" + item_name + "</span> field and try again!"; 573 //$( "#dialog-message" ).dialog( "open" ); 574 document.getElementById(item_id).focus(); 575 document.getElementById(item_id).style.border="1px solid red"; 576 bootbox.alert({ 577 size:"550px", 578 message:"<span style='color:red;'>Invalid character!</span> - some special characters not allowed. You entered:<br><br> " + errstr + "<br><br>Correct the error(s) in the <span style='color:red;'>" + item_name + "</span> field and try again!" 579 }); 580 return false; 581 } 582 else { 583 return true; 584 } 585 } 586 587 function minmaxlength(item_id,item_name,item_value,min,max) { 588 if (item_value.trim().length < min || item_value.trim().length > max) { 589 //document.getElementById("errmsg").innerHTML="<span style='color:red;'>Length requirements not met.</span> <br><br>Text must be Minimum length <span style='color:red;'>" + min + "</span> characters and maximum length <span style='color:red;'>" + max + "</span> characters in the <span style='color:red;'>" + item_name + "</span> field.<br><br>Your input was <span style='color:red;'>" + item_value.trim().length + "</span> characters in length "; 590 //$( "#dialog-message" ).dialog( "open" ); 591 document.getElementById(item_id).focus(); 592 document.getElementById(item_id).style.border="1px solid red"; 593 bootbox.alert({ 594 size:"550px", 595 message:"<span style='color:red;'>Length requirements not met.</span> <br><br>Text must be Minimum length <span style='color:red;'>" + min + "</span> characters and maximum length <span style='color:red;'>" + max + "</span> characters in the <span style='color:red;'>" + item_name + "</span> field.<br><br>Your input was <span style='color:red;'>" + item_value.trim().length + "</span> characters in length" 596 }); 597 return false; 598 } 599 else { 600 return true; 601 } 602 } 603 604 function resetstyle() { 605 606 var inputs = document.getElementsByTagName("*"); 607 for (var i=0; i < inputs.length; i++) { 608 if (inputs[i].style.border == "1px solid red") { 609 inputs[i].style.border = "1px solid rgb(218, 218, 218)"; 610 } 611 } 612 return true; 613 } 614 615 616 617 618 function dropdownvalid(item_id,item_name) { // return false if nothing selected (value = 0) 619 620 var e = document.getElementById(item_id); 621 var intval = e.options[e.selectedIndex].value; 622 623 if (intval == 0 ) { 624 625 bootbox.alert({ 626 size:"550px", 627 message:"<span style='color:red;'>Correct value not selected.</span> <br><br>You must select a value in the <span style='color:red;'>" + item_name + "</span> drop-down selector." 628 }); 629 //document.getElementById("errmsg").innerHTML="<span style='color:red;'>Correct value not selected.</span> <br><br>You must select a value in the <span style='color:red;'>" + item_name + "</span> drop-down selector."; 630 //$( "#dialog-message" ).dialog( "open" ); 631 document.getElementById(item_id).focus(); 632 document.getElementById(item_id).style.border="1px solid red"; 633 return false; 634 635 } 636 else { 637 return true; 638 } 639 } 640 641 642 643 644</script>
644 645 646 647 648<article class="footer_hold_bot"> 649<div class="container"> 650<div class="row gap_top"> 651<div class="footer_text"> 652© Copyright Funaku South Africa | All Rights Reserved | 2026 653</div> 654<div class="copyright_logo"> 655<a href="https://www.iisgroup.co.za" title="iisgroup for Funaku South Africa" target="_blank"> 656<img src="https://www.iisgroup.co.za/images/iis_logo_small_new.gif" title="iisgroup for Funaku South Africa" alt="Business Solutions From Internet Technology" border="0" align="top"/> 657</a> 658</div> 659 660</div> 661</div> 662</article> 663</body> 664</html> 665
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.