1 2jQuery(document).ready(function () { 3 4/*----------------------------------------------------*/ 5/* Search box expand Section 6/*----------------------------------------------------*/ 7 8 jQuery(".search-text-box").focus(function(){ 9 jQuery("ul.social").animate({ marginLeft: "-120px"}, 450, "easeInSine") 10 }); 11 12 13 14 15/*----------------------------------------------------*/ 16/* Keyframe animations enable 17/*----------------------------------------------------*/ 18 19jQuery().waypoint && jQuery("body").imagesLoaded(function () { 20 jQuery(".animate_afc, .animate_afl, .animate_afr, .animate_aft, .animate_afb, .animate_wfc, .animate_hfc, .animate_rfc, .animate_rfl, .animate_rfr").waypoint(function () { 21 if (!jQuery(this).hasClass("animate_start")) { 22 var e = jQuery(this); 23 setTimeout(function () { 24 e.addClass("animate_start") 25 }, 20) 26 } 27 }, { 28 offset: "85%", 29 triggerOnce: !0 30 }) 31 }); 32 33 34 35/*----------------------------------------------------*/ 36/* Flickr Feed 37/*----------------------------------------------------*/ 38 39$('ul#flickrfeed').jflickrfeed({ 40 limit: 6, 41 qstrings: { 42 id: '71865026@N00' 43 }, 44 itemTemplate: '<li>'+ 45 '<a rel="prettyPhoto[pp_gal]" href="{{image}}">' + 46 '<img src="{{image_s}}" alt="{{title}}" />' + 47 '</a>' + 48 '</li>' 49 }, function(data) { 50 $('a[rel^="prettyPhoto"]').prettyPhoto(); 51 }); 52 53 54 55/*----------------------------------------------------*/ 56/* Superfish Mainmenu Section 57/*----------------------------------------------------*/ 58 59 jQuery(function () { 60 jQuery('ul.sf-menu').stop().superfish(); 61 }); 62 63 64 65/*----------------------------------------------------*/ 66/* Revolution Slider Nav Arrow Show Hide 67/*----------------------------------------------------*/ 68 69 jQuery('.fullwidthbanner-container').hover(function () { 70 jQuery('.tp-leftarrow').stop().animate({ 71 "opacity": 1 72 }, 'easeIn'); 73 jQuery('.tp-rightarrow').stop().animate({ 74 "opacity": 1 75 }, 'easeIn'); 76 }, function () { 77 jQuery('.tp-leftarrow').stop().animate({ 78 "opacity": 0 79 }, 'easeIn'); 80 jQuery('.tp-rightarrow').stop().animate({ 81 "opacity": 0 82 }, 'easeIn'); 83 } 84 85 ); 86 87 88 89 jQuery('.slider-wrapper').hover(function () { 90 jQuery('.nivo-prevNav').stop().animate({ 91 "opacity": 1 92 }, 'easeIn'); 93 jQuery('.nivo-nextNav').stop().animate({ 94 "opacity": 1 95 }, 'easeIn'); 96 }, function () { 97 jQuery('.nivo-prevNav').stop().animate({ 98 "opacity": 0 99 }, 'easeIn'); 100 jQuery('.nivo-nextNav').stop().animate({ 101 "opacity": 0 102 }, 'easeIn'); 103 } 104 105 ); 106 107 108 109 110/*----------------------------------------------------*/ 111/* Accordion Section 112/*----------------------------------------------------*/ 113 114 jQuery('.accordionMod').each(function (index) { 115 var thisBox = jQuery(this).children(), 116 thisMainIndex = index + 1; 117 jQuery(this).attr('id', 'accordion' + thisMainIndex); 118 thisBox.each(function (i) { 119 var thisIndex = i + 1, 120 thisParentIndex = thisMainIndex, 121 thisMain = jQuery(this).parent().attr('id'), 122 thisTriggers = jQuery(this).find('.accordion-toggle'), 123 thisBoxes = jQuery(this).find('.accordion-inner'); 124 jQuery(this).addClass('panel'); 125 thisBoxes.wrap('<div id=\"collapseBox' + thisParentIndex + '_' + thisIndex + '\" class=\"panel-collapse collapse\" />'); 126 thisTriggers.wrap('<div class=\"panel-heading\" />'); 127 thisTriggers.attr('data-toggle', 'collapse').attr('data-parent', '#' + thisMain).attr('data-target', '#collapseBox' + thisParentIndex + '_' + thisIndex); 128 }); 129 jQuery('.accordion-toggle').prepend('<span class=\"icon\" />'); 130 jQuery("div.accordion-item:first-child .accordion-toggle").addClass("current"); 131 jQuery("div.accordion-item:first-child .icon").addClass("iconActive"); 132 jQuery("div.accordion-item:first-child .panel-collapse").addClass("in"); 133 jQuery('.accordionMod .accordion-toggle').click(function () { 134 if (jQuery(this).parent().parent().find('.panel-collapse').is('.in')) { 135 jQuery(this).removeClass('current'); 136 jQuery(this).find('.icon').removeClass('iconActive'); 137 } else { 138 jQuery(this).addClass('current'); 139 jQuery(this).find('.icon').addClass('iconActive'); 140 } 141 jQuery(this).parent().parent().siblings().find('.accordion-toggle').removeClass('current'); 142 jQuery(this).parent().parent().siblings().find('.accordion-toggle > .icon').removeClass('iconActive'); 143 }); 144 }); 145 146 147 148 149}); 150 151 152 153/*----------------------------------------------------*/ 154/* Nivo Slider 155/*----------------------------------------------------*/ 156 157jQuery(window).load(function() { 158 jQuery('#nivoslider').nivoSlider({ 159 effect: 'random', // Specify sets like: 'fold,fade,sliceDown' 160 slices: 15, // For slice animations 161 boxCols: 8, // For box animations 162 boxRows: 4, // For box animations 163 animSpeed: 500, // Slide transition speed 164 pauseTime: 5000, // How long each slide will show 165 startSlide: 0, // Set starting Slide (0 index) 166 directionNav: true, // Next & Prev navigation 167 controlNav: false, // 1,2,3... navigation 168 controlNavThumbs: false, // Use thumbnails for Control Nav 169 pauseOnHover: true, // Stop animation while hovering 170 manualAdvance: false, // Force manual transitions 171 prevText: '', // Prev directionNav text 172 nextText: '', // Next directionNav text 173 randomStart: false, // Start on a random slide 174 beforeChange: function(){}, // Triggers before a slide transition 175 afterChange: function(){}, // Triggers after a slide transition 176 slideshowEnd: function(){}, // Triggers after all slides have been shown 177 lastSlide: function(){}, // Triggers when last slide is shown 178 afterLoad: function(){} // Triggers when slider has loaded 179 }); 180}); 181 182 183 184/*----------------------------------------------------*/ 185/* Revolution Slider Triggering 186/*----------------------------------------------------*/ 187 188 189 jQuery(document).ready(function() { 190 if (jQuery.fn.cssOriginal!=undefined) 191 jQuery.fn.css = jQuery.fn.cssOriginal; 192 jQuery('.fullwidthbanner').revolution({ 193 delay: 9000, 194 startwidth: 1170, 195 startheight: 470, 196 197 onHoverStop: "on", 198 // Stop Banner Timet at Hover on Slide on/off 199 thumbWidth: 100, 200 // Thumb With and Height and Amount (only if navigation Tyope set to thumb !)
201 thumbHeight: 50, 202 thumbAmount: 3, 203 204 hideThumbs: 0, 205 navigationType: "none", 206 // bullet, thumb, none 207 navigationArrows: "solo", 208 // nexttobullets, solo (old name verticalcentered), none 209 navigationStyle: "square", 210 // round,square,navbar,round-old,square-old,navbar-old, or any from the list in the docu (choose between 50+ different item), custom 211 212 navigationHAlign: "center", 213 // Vertical Align top,center,bottom 214 navigationVAlign: "top", 215 // Horizontal Align left,center,right 216 navigationHOffset: 0, 217 navigationVOffset: 20, 218 219 soloArrowLeftHalign: "left", 220 soloArrowLeftValign: "center", 221 soloArrowLeftHOffset: 0, 222 soloArrowLeftVOffset: 0, 223 224 soloArrowRightHalign: "right", 225 soloArrowRightValign: "center", 226 soloArrowRightHOffset: 0, 227 soloArrowRightVOffset: 0, 228 229 touchenabled: "on", 230 // Enable Swipe Function : on/off 231 232 233 stopAtSlide: -1, 234 // Stop Timer if Slide "x" has been Reached. If stopAfterLoops set to 0, then it stops already in the first Loop at slide X which defined. -1 means do not stop at any slide. stopAfterLoops has no sinn in this case. 235 stopAfterLoops: -1, 236 // Stop Timer if All slides has been played "x" times. IT will stop at THe slide which is defined via stopAtSlide:x, if set to -1 slide never stop automatic 237 hideCaptionAtLimit: 0, 238 // It Defines if a caption should be shown under a Screen Resolution ( Basod on The Width of Browser) 239 hideAllCaptionAtLilmit: 0, 240 // Hide all The Captions if Width of Browser is less then this value 241 hideSliderAtLimit: 0, 242 // Hide the whole slider, and stop also functions if Width of Browser is less than this value 243 244 fullWidth: "on", 245 246 shadow: 0 //0 = no Shadow, 1,2,3 = 3 Different Art of Shadows - (No Shadow in Fullwidth Version !) 247 }); 248 249 250 251 252}); 253 254 255 256 257 258/*----------------------------------------------------*/ 259/* Carousel Section 260/*----------------------------------------------------*/ 261 262 jQuery('.portfolio-carousel').carousel({interval: false, wrap: false}); 263 264 265 jQuery('.client-carousel').carousel({interval: false, wrap: false}); 266 267 jQuery('.testimonials-carousel').carousel({interval: 5000, pause: "hover"}); 268 269 270 271$(document).ready(function(){ 272 $("a[rel^='prettyPhoto']").prettyPhoto({ 273 animation_speed: 'fast', /* fast/slow/normal */ 274 slideshow: 5000, /* false OR interval time in ms */ 275 autoplay_slideshow: false, /* true/false */ 276 opacity: 0.80, /* Value between 0 and 1 */ 277 show_title: true, /* true/false */ 278 allow_resize: true, /* Resize the photos bigger than viewport. true/false */ 279 default_width: 500, 280 default_height: 344, 281 counter_separator_label: '/', /* The separator for the gallery counter 1 "of" 2 */ 282 theme: 'pp_default', /* light_rounded / dark_rounded / light_square / dark_square / facebook */ 283 horizontal_padding: 20, /* The padding on each side of the picture */ 284 hideflash: false, /* Hides all the flash object on a page, set to TRUE if flash appears over prettyPhoto */ 285 wmode: 'opaque', /* Set the flash wmode attribute */ 286 autoplay: true, /* Automatically start videos: True/False */ 287 modal: false, /* If set to true, only the close button will close the window */ 288 deeplinking: true, /* Allow prettyPhoto to update the url to enable deeplinking. */ 289 overlay_gallery: true, /* If set to true, a gallery will overlay the fullscreen image on mouse over */ 290 keyboard_shortcuts: true, /* Set to false if you open forms inside prettyPhoto */ 291 changepicturecallback: function(){}, /* Called everytime an item is shown/changed */ 292 callback: function(){}, /* Called when prettyPhoto is closed */ 293 ie6_fallback: true, 294 markup: '<div class="pp_pic_holder"> \ 295 <div class="ppt"> </div> \ 296 <div class="pp_top"> \ 297 <div class="pp_left"></div> \ 298 <div class="pp_middle"></div> \ 299 <div class="pp_right"></div> \ 300 </div> \ 301 <div class="pp_content_container"> \ 302 <div class="pp_left"> \ 303 <div class="pp_right"> \ 304 <div class="pp_content"> \ 305 <div class="pp_loaderIcon"></div> \ 306 <div class="pp_fade"> \ 307 <a href="#" class="pp_expand" title="Expand the image">Expand</a> \ 308 <div class="pp_hoverContainer"> \ 309 <a class="pp_next" href="#">next</a> \ 310 <a class="pp_previous" href="#">previous</a> \ 311 </div> \ 312 <div id="pp_full_res"></div> \ 313 <div class="pp_details"> \ 314 <div class="pp_nav"> \ 315 <a href="#" class="pp_arrow_previous">Previous</a> \ 316 <p class="currentTextHolder">0/0</p> \ 317 <a href="#" class="pp_arrow_next">Next</a> \ 318 </div> \ 319 <p class="pp_description"></p> \ 320 {pp_social} \ 321 <a class="pp_close" href="#">Close</a> \ 322 </div> \ 323 </div> \ 324 </div> \ 325 </div> \ 326 </div> \ 327 </div> \ 328 <div class="pp_bottom"> \ 329 <div class="pp_left"></div> \ 330 <div class="pp_middle"></div> \ 331 <div class="pp_right"></div> \ 332 </div> \ 333 </div> \ 334 <div class="pp_overlay"></div>', 335 gallery_markup: '<div class="pp_gallery"> \ 336 <a href="#" class="pp_arrow_previous">Previous</a> \ 337 <div> \ 338 <ul> \ 339 {gallery} \ 340 </ul> \ 341 </div> \ 342 <a href="#" class="pp_arrow_next">Next</a> \ 343 </div>', 344 image_markup: '<img id="fullResImage" src="{path}" />', 345 flash_markup: '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="{width}" height="{height}"><param name="wmode" value="{wmode}" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="{path}" /><embed src="{path}" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="{width}" height="{height}" wmode="{wmode}"></embed></object>', 346 quicktime_markup: '<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" height="{height}" width="{width}"><param name="src" value="{path}"><param name="autoplay" value="{autoplay}"><param name="type" value="video/quicktime"><embed src="{path}" height="{height}" width="{width}" autoplay="{autoplay}" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/"></embed></object>', 347 iframe_markup: '<iframe src ="{path}" width="{width}" height="{height}" frameborder="no"></iframe>', 348 inline_markup: '<div class="pp_inline">{content}</div>', 349 custom_markup: '', 350 social_tools: '<div class="pp_social"><div class="twitter"><a href="http://twitter.com/share" class="twitter-share-button" data-count="none">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div class="facebook"><iframe src="http://www.facebook.com/plugins/like.php?locale=en_US&href='+location.href+'&layout=button_count&show_faces=true&width=500&action=like&font&colorscheme=light&height=23" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:500px; height:23px;" allowTransparency="true"></iframe></div></div>' /* html or false to disable */ 351 }); 352 }); 353 354 355 356 357 358/*----------------------------------------------------*/ 359/* Hover Overlay 360/*----------------------------------------------------*/ 361 362jQuery(document).ready(function () { 363 364 365 366 367 jQuery('.portfolio-item').hover(function () { 368 jQuery(this).find( '.portfolio-item-hover' ).animate({ 369 "opacity": 0.8 370 }, 100, 'easeInOutCubic'); 371 372 373 }, function () { 374 jQuery(this).find( '.portfolio-item-hover' ).animate({ 375 "opacity": 0 376 }, 100, 'easeInOutCubic'); 377 378 }); 379 380 381 jQuery('.portfolio-item').hover(function () { 382 jQuery(this).find(".fullscreen").stop().animate({'top' : '60%', 'opacity' : 1}, 250, 'easeOutBack'); 383 384 }, function () { 385 jQuery(this).find(".fullscreen").stop().animate({'top' : '65%', 'opacity' : 0}, 150, 'easeOutBack'); 386 387 }); 388 389 390 jQuery('.blog-showcase ul li').each(function () { 391 jQuery(this).on('hover', function () { 392 jQuery(this).siblings('li').removeClass('blog-first-el').end().addClass('blog-first-el'); 393 }); 394 }); 395 396 397 jQuery('.blog-showcase-thumb').hover(function () { 398 jQuery(this).find( '.post-item-hover' ).animate({ 399 "opacity": 0.8 400 }, 100, 'easeInOutCubic'); 401 402 }, function () { 403 jQuery(this).find( '.post-item-hover' ).animate({ 404 "opacity": 0 405 }, 100, 'easeInOutCubic'); 406 407 }); 408 409 410 411 jQuery('.blog-showcase-thumb').hover(function () { 412 jQuery(this).find(".fullscreen").stop().animate({'top' : '57%', 'opacity' : 1}, 250, 'easeOutBack'); 413 414 }, function () { 415 jQuery(this).find(".fullscreen").stop().animate({'top' : '65%', 'opacity' : 0}, 150, 'easeOutBack'); 416 417 }); 418 419 420 421/* Post Image overlay */ 422 423 jQuery('.post-image').hover(function () { 424 jQuery(this).find( '.img-hover' ).animate({ 425 "opacity": 0.8 426 }, 100, 'easeInOutCubic'); 427 428 429 }, function () { 430 jQuery(this).find( '.img-hover' ).animate({ 431 "opacity": 0 432 }, 100, 'easeInOutCubic'); 433 434 }); 435 436 437 jQuery('.post-image').hover(function () { 438 jQuery(this).find(".fullscreen").stop().animate({'top' : '55%', 'opacity' : 1}, 250, 'easeOutBack'); 439 440 }, function () { 441 jQuery(this).find(".fullscreen").stop().animate({'top' : '65%', 'opacity' : 0}, 150, 'easeOutBack'); 442 443 }); 444 445 446/*Mobile device topnav opener*/ 447 448 jQuery( ".down-button" ).click(function() { 449 jQuery( ".down-button .icon-current" ).toggleClass("icon-angle-up icon-angle-down"); 450}); 451 452 453 454/*----------------------------------------------------*/ 455/* Clients section Parallax 456/*----------------------------------------------------*/ 457 458 jQuery('.client').parallax("50%", 0.1); 459 jQuery('.service-reasons').parallax("50%", 0.1); 460 461 jQuery("a[data-rel^='prettyPhoto']").prettyPhoto({overlay_gallery: false}); 462 463 464 465/*----------------------------------------------------*/ 466/* Tootltip Initialize 467/*----------------------------------------------------*/ 468 469 470 471 jQuery("[data-toggle='tooltip']").tooltip(); 472 473}); 474 475 476 477 478/*----------------------------------------------------*/ 479/* Sticky Menu 480/*----------------------------------------------------*/ 481 482 jQuery(document).ready(function(){ 483 jQuery(".main-header").sticky({topSpacing:0}); 484 }); 485 486 487 488/*----------------------------------------------------*/ 489/* Scroll To Top Section 490/*----------------------------------------------------*/ 491 jQuery(document).ready(function () { 492 493 jQuery(window).scroll(function () { 494 if (jQuery(this).scrollTop() > 100) { 495 jQuery('.scrollup').fadeIn(); 496 } else { 497 jQuery('.scrollup').fadeOut(); 498 } 499 }); 500 501 jQuery('.scrollup').click(function () { 502 jQuery("html, body").animate({ 503 scrollTop: 0 504 }, 600); 505 return false;
506 }); 507 508 }); 509 510 511 512/*----------------------------------------------------*/ 513/* Twitter Section 514/*----------------------------------------------------*/ 515 516 jQuery('#tweets').tweetMachine('', { 517 backendScript: 'http://demo.fifothemes.com/pixma/ajax/getFromTwitter.php', 518 endpoint: 'statuses/user_timeline', 519 user_name: 'FIFOThemes', 520 include_retweets: true, 521 exclude_replies: false, 522 limit: 1, 523 autoRefresh: false 524 }); 525 526 527 528 529 530/*----------------------------------------------------*/ 531/* Tabs Control Section 532/*----------------------------------------------------*/ 533 534 535 jQuery("#horizontal-tabs").tytabs({ 536 tabinit: "1", 537 fadespeed: "fast" 538 }); 539 jQuery("#horizontal-tabs.two").tytabs({ 540 tabinit: "1", 541 prefixtabs: "tab_two", 542 prefixcontent: "content_two", 543 fadespeed: "fast" 544 }); 545 jQuery("#horizontal-tabs.three").tytabs({ 546 tabinit: "1", 547 prefixtabs: "tab_three", 548 prefixcontent: "content_three", 549 fadespeed: "fast" 550 }); 551 jQuery("#horizontal-tabs.four").tytabs({ 552 tabinit: "1", 553 prefixtabs: "tab_four", 554 prefixcontent: "content_four", 555 fadespeed: "fast" 556 }); 557 jQuery("#horizontal-tabs.five").tytabs({ 558 tabinit: "1", 559 prefixtabs: "tab_five", 560 prefixcontent: "content_five", 561 fadespeed: "fast" 562 }); 563 jQuery("#vertical-tabs").tytabs({ 564 tabinit: "1", 565 prefixtabs: "tab_v", 566 prefixcontent: "content_v", 567 fadespeed: "fast" 568 }); 569 jQuery("#vertical-tabs.two").tytabs({ 570 tabinit: "1", 571 prefixtabs: "tab_v_two", 572 prefixcontent: "content_v_two", 573 fadespeed: "fast" 574 }); 575 jQuery("#vertical-tabs.three").tytabs({ 576 tabinit: "1", 577 prefixtabs: "tab_v_three", 578 prefixcontent: "content_v_three", 579 fadespeed: "fast" 580 }); 581 jQuery("#vertical-tabs.four").tytabs({ 582 tabinit: "1", 583 prefixtabs: "tab_v_four", 584 prefixcontent: "content_v_four", 585 fadespeed: "fast" 586 }); 587 jQuery("#vertical-tabs.five").tytabs({ 588 tabinit: "1", 589 prefixtabs: "tab_v_five", 590 prefixcontent: "content_v_five", 591 fadespeed: "fast" 592 }); 593 jQuery(".hideit").click(function () { 594 e(this).fadeOut(600) 595 }); 596 jQuery("#toggle-view li h4").click(function () { 597 var t = e(this).siblings("div.panel"); 598 if (t.is(":hidden")) { 599 t.slideDown("200"); 600 e(this).siblings("span").html("-") 601 } else { 602 t.slideUp("200"); 603 e(this).siblings("span").html("+") 604 } 605 }); 606 607 jQuery(function (jQuery) { 608 jQuery("#example").popover(); 609 jQuery("#example_left").popover({ 610 placement: 'left' 611 }); 612 jQuery("#example_top").popover({ 613 placement: 'top' 614 }); 615 jQuery("#example_bottom").popover({ 616 placement: 'bottom' 617 }); 618 }); 619 620 621 622 /*----------------------------------------------------*/ 623 /* Jquery Google map Section 624 /*----------------------------------------------------*/ 625 626 //Google map 627 jQuery('#maps').gMap({ 628 address: "Khulna Division, Bangladesh", 629 zoom: 10, 630 markers: [{ 631 latitude: 22.816694, 632 longitude: 89.549904, 633 html: "<h4>FIFO Themes</h4>Wordpress, HTML5/CSS Themes", 634 popup: true 635 }] 636 }); 637 638 639 640 /*----------------------------------------------------*/ 641 /* Contact Form Section 642 /*----------------------------------------------------*/ 643$("#contact").submit(function (e) { 644 e.preventDefault(); 645 var name = $("#name").val(); 646 var email = $("#email").val(); 647 var subject = $("#subject").val(); 648 var text = $("#text").val(); 649 var recaptchaResponse = $("#recaptchaResponse").val(); 650 var dataString = 'name=' + name + '&email=' + email + '&subject=' + subject + '&text=' + text + '&recaptchaResponse=' + recaptchaResponse ; 651 652 653 function isValidEmail(emailAddress) { 654 var pattern = new RegExp(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i); 655 return pattern.test(emailAddress); 656 }; 657 658 if (isValidEmail(email) && (text.length > 15) && (name.length > 1)) { 659 $.ajax({ 660 type: "POST", 661 url: "ajax/process.php", 662 data: dataString, 663 success: function () { 664 $('.success').fadeIn(1000).delay(3000).fadeOut(1000); 665 $('#contact')[0].reset(); 666 } 667 }); 668 } else { 669 $('.error').fadeIn(1000).delay(5000).fadeOut(1000); 670 671 } 672 673 return false;
674});
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.