PageSourceSearch

https://www.giacusa.com/js/custom.js

js giacusa.com collected 2026-10-05 21:48:49 UTC 37,794 bytes, 1,445 lines download raw bytes

1/* =================== Load Function =================== */
2$(window).load(function() {
3	"use strict";
4	/* ----------- Page Loader ----------- */
5	$(".loader-inner").delay(300).fadeOut();
6	$("#pageloader").delay(500).fadeOut("slow");						
7	/* ----------- Pretty Photo ----------- */
8	$("a[data-rel^='prettyPhoto']").prettyPhoto({
9 		social_tools:false,
10        deeplinking:false
11 	});
12	initPortfolioGrid();
13});
14/* =================== Load Function Ends =================== */
15
16
17/* =================== Ready Function =================== */
18	$(document).ready(function() {
19		
20	/* ==============================================
21	Tooltips Calling
22	=============================================== */	
23	$(function () {
24		"use strict";
25		$('[data-toggle="tooltip"]').tooltip();
26	});
27		
28	/* ----------- Scroll Navigation ----------- */
29	$(function() {
30		"use strict";
31		$('.scroll').bind('click', function(event) {
32			var $anchor = $(this);
33			var headerH = $('#navigation-menu').outerHeight();
34				$('html, body').stop().animate({					
35					scrollTop : $($anchor.attr('href')).offset().top  - 45 + "px"
36				}, 1200, 'easeInOutExpo');		
37			event.preventDefault();
38		});
39	});
40	/*  ---------------------------------------------
41			Back to top Button 
42	----------------------------------------------- */
43	$(function() {
44		"use strict";
45		if( $('.elevator').length !== 0 ) {
46			$.elevator({
47				align_left: false,
48				align_top: false,
49				top: true,
50				bottom: true,
51				nav: false,
52				margin: 100,
53				classes: {
54				elevator: '.elevator',
55				top: '.jelevator-document-anchor-top',
56				bottom: '.jelevator-document-anchor-bottom',
57				section: '.jelevator-section-list',
58				anchor: '.jelevator-section-anchor',
59				anchor_top: '#jelevator-top',
60				anchor_bottom: '#jelevator-bottom'
61				},
62			});
63		}	
64	});		
65		 
66	/* --------------------------------------------
67	Popup Model 
68	-------------------------------------------- */
69	$(document).ready(function() {	
70
71	var id = '#dialog';
72		
73	//Get the screen height and width 
74	var maskHeight = $(document).height();
75	var maskWidth = $(window).width();
76		
77	//Set heigth and width to mask to fill up the whole screen
78	$('#mask').css({'width':maskWidth,'height':maskHeight});
79
80	//transition effect
81	$('#mask').fadeIn(500);	
82	$('#mask').fadeTo("slow",0.8);	
83	
84	//transition effect
85	//$('.window').delay(6000).fadeIn;	
86		
87	//Get the window height and width
88	var winH = $(window).height();
89	var winW = $(window).width();
90				  
91	//Set the popup window to center
92	$(id).css('top',  winH/2-$(id).height()/2);
93	$(id).css('left', winW/2-$(id).width()/2);
94		
95	//transition effect
96	$(id).fadeIn(1000); 	
97		
98	//if close button is clicked
99	$('.window .close').click(function (e) {
100	//Cancel the link behavior
101	e.preventDefault();
102
103	$('#mask').hide();
104	$('.window').hide();
105	});
106
107	//if mask is clicked
108	$('#mask').click(function () {
109	$(this).hide();
110	$('.window').hide();
111	});
112		
113	});
114	
115	/* --------------------------------------------
116	Fixed Menu on Scroll
117	-------------------------------------------- */
118	$(function() {
119		"use strict";
120		$(".sticker").sticky({
121			topSpacing: 0
122		});
123	});
124	
125	
126	/* --------------------------------------------
127	ACTIVE NAVIGATION
128	-------------------------------------------- */
129	$(function() {
130		"use strict";
131		$('body').scrollspy({ 
132			target: '.one-page-nav ',
133			offset: 95
134		});
135	});	
136	
137	/* -------------------------
138	   RS Slider
139	--------------------- */
140	$(function() {
141		"use strict";	
142		if( $('.tp-banner').length !== 0 ) {
143		  jQuery('.tp-banner').revolution(
144			{
145				delay:7000,
146				startwidth:1170,
147				startheight:700,
148				hideThumbs:200,
149				hideTimerBar:"on",
150				navigationType:"none",
151				navigationArrows:"solo",
152				navigationStyle:"preview4",
153				soloArrowLeftHalign: "left",
154				soloArrowLeftValign: "center",
155				soloArrowLeftHOffset: 20,
156				soloArrowLeftVOffset: 0,
157				soloArrowRightHalign: "right",
158				soloArrowRightValign: "center",
159				soloArrowRightHOffset: 20,
160				soloArrowRightVOffset: 0
161			});
162		}
163		
164		/* -------------------------
165		
166		   RS Slider 3
167		   
168		--------------------- */
169		if( $('.tp-banner3').length !== 0 ) {
170		  jQuery('.tp-banner3').revolution(
171			{
172				delay:5000,
173				startwidth:1171,
174				startheight:600,
175				hideThumbs:150,
176				
177				navigationType:"bullet",
178				navigationArrows:"solo",
179				navigationStyle:"round"
180			});
181		}
182		
183		if( $('.tp-banner2').length !== 0 ) {
184			jQuery('.tp-banner2').show().revolution(
185			{
186				dottedOverlay:"none",
187				delay:12000,
188				startwidth:1170,
189				startheight:700,
190				hideThumbs:200,
191				
192				thumbWidth:100,
193				thumbHeight:50,
194				thumbAmount:5,
195				
196				navigationType:"bullet",
197				navigationArrows:"solo",
198				navigationStyle:"preview4",
199				
200				touchenabled:"on",
201				onHoverStop:"on",
202				
203				swipe_velocity: 0.7,
204				swipe_min_touches: 1,
205				swipe_max_touches: 1,
206				drag_block_vertical: false,
207										
208				parallax:"mouse",
209				parallaxBgFreeze:"on",
210				parallaxLevels:[7,4,3,2,5,4,3,2,1,0],
211										
212				keyboardNavigation:"off",
213				
214				navigationHAlign:"center",
215				navigationVAlign:"bottom",
216				navigationHOffset:0,
217				navigationVOffset:20,
218
219				soloArrowLeftHalign:"left",
220				soloArrowLeftValign:"center",
221				soloArrowLeftHOffset:20,
222				soloArrowLeftVOffset:0,
223
224				soloArrowRightHalign:"right",
225				soloArrowRightValign:"center",
226				soloArrowRightHOffset:20,
227				soloArrowRightVOffset:0,
228						
229				shadow:0,
230				fullWidth:"off",
231				fullScreen:"on",
232
233				spinner:"spinner4",
234				
235				stopLoop:"off",
236				stopAfterLoops:-1,
237				stopAtSlide:-1,
238
239				shuffle:"off",
240				
241				autoHeight:"off",						
242				forceFullWidth:"off",						
243										
244										
245										
246				hideThumbsOnMobile:"off",
247				hideNavDelayOnMobile:1500,						
248				hideBulletsOnMobile:"off",
249				hideArrowsOnMobile:"off",
250				hideThumbsUnderResolution:0,
251				
252				hideSliderAtLimit:0,
253				hideCaptionAtLimit:0,
254				hideAllCaptionAtLilmit:0,
255				startWithSlide:0,
256				fullScreenOffsetContainer: ".header"	
257			});
258		}	
259		
260		
261		/* -------------------------
262		
263		   RS Slider 4
264		   
265		--------------------- */
266		if( $('.tp-banner4').length !== 0 ) {
267		  jQuery('.tp-banner4').revolution(
268			{
269					delay:4000,
270					startwidth:1171,
271					startheight:480,
272					hideThumbs:150,
273					fullWidth:"off",
274					fullScreen:"off",
275					forceFullWidth:"on",
276					dottedOverlay:"none",
277					hideTimerBar:"on",
278					
279					navigationType:"square",	
280					navigationArrows:"solo",
281					navigationStyle:"round-old"
282			});
283		}
284	});
285	/*-------- Charts --------*/
286	appMaster.allCharts();
287	
288	/* ================== Click Open Toggle Menu =============== */
289		/* header Contact (Phone) */
290		$(document).on( 'click', '.header-contact', function( e ) {
291		$( ".header-contact-content" ).show( "fast", function() {});
292		
293		$(document).on( 'click', '.close', function( e ) {	
294		  $(".header-contact-content").hide("fast", function() {});
295		})
296	   });
297	   
298	   
299	   /* header Search (Search Form) */
300		$(document).on( 'click', '.header-search', function( e ) {
301		$( ".header-search-content" ).show( "fast", function() {});
302		
303		$(document).on( 'click', '.close', function( e ) {
304		  $(".header-search-content").hide("fast", function() {});
305		})
306	   });
307	   
308	   
309		/* header Share (Search Form) */
310		$(document).on( 'click', '.header-share', function( e ) {
311		$( ".header-share-content" ).show( "fast", function() {});
312		
313		$(document).on( 'click', '.close', function( e ) {
314		  $(".header-share-content").hide("fast", function() {});
315		})
316	   });
317/* --------------------------------------------
318	Load More 
319-------------------------------------------- */
320	
321	var loadtext = $('.load-more');
322	$(document).on( 'click', '.load-posts', function( e ) {	
323		if($(this).hasClass('disable')) return false;
324		
325			$(this).html('<i class="fa fa-spin fa-spinner"></i> Loading');
326			
327			var $hidden = loadtext.filter(':hidden:first').delay(600);  
328   
329		   	if (!$hidden.next('.load-more').length) {
330			   	$hidden.fadeIn(500);
331				$(this).addClass('disable');
332				$(this).fadeTo("slow", 0.23)/*.delay(600)*/
333				.queue(function(n) {
334				 $(this).html('All Posts Loaded <i class="icon-checkmark2"></i>');
335				 n();
336				}).fadeTo("slow", 1);
337			
338		   } else {
339				$hidden.fadeIn(500);
340				$(this).fadeTo("slow", 0.23)/*.delay(600)*/
341				.queue(function(g) {
342				 $(this).html('Load More Post <i class="icon-curved-arrow">');
343				 g();
344				}).fadeTo("slow", 1);
345			
346		   }
347	});
348   
349	
350/*------Contact form-----*/
351	$(function() {
352		"use strict";
353		if( $("#contactform").length != 0 ) {
354			$('#contactform').bootstrapValidator({
355				container: 'tooltip',
356				feedbackIcons: {
357					valid: ' ',
358					invalid: ' ',
359					validating: ' '
360				},
361				fields: {            
362					contact_name: {
363						validators: {
364							notEmpty: {
365								message: 'Name is required. Please enter name.'
366							}
367						}
368					},
369					contact_number: {
370						validators: {
371							notEmpty: {
372								message: 'Phone is required. Please enter phone number.'
373							}
374						}
375					},
376					contact_email: {
377						validators: {
378							notEmpty: {
379								message: 'Email is required. Please enter email.'
380							},
381							emailAddress: {
382								message: 'Please enter a correct email address.'
383							}
384						}
385					},
386					contact_message: {
387						validators: {
388							notEmpty: {
389								message: 'Message is required. Please enter your message.'
390							}                    
391						}
392					}
393					//ac addition for customer service start
394					/*contact_address: {
395						validators: {
396							notEmpty: {
397								message: 'Message is required. Please enter your shipping address.'
398							}                    
399						}
400					}*/
401					//ac addition for customer service end
402				}
403			})
404			.on('success.form.bv', function(e) {
405							
406				var data = $('#contactform').serialize();
407				
408				$.ajax({
409						type: "POST",
410						url: "forms/process.php",					
411						data: $('#contactform').serialize(),
412						success: function(msg){						
413							$('.form-message').html(msg);
414							$('.form-message').show();
415							submitButton.removeAttr("disabled");
416							resetForm($('#contactform'));						
417						},
418						error: function(msg){						
419							$('.form-message').html(msg);
420							$('.form-message').show();
421							submitButton.removeAttr("disabled");
422							resetForm($('#contactform'));
423						}
424				 });
425				 
426				return false;
427			});
428		}
429	});
430	
431	if ( $( "#subscribe_form" ).length !== 0 ) {
432		$('#subscribe_form').bootstrapValidator({
433				container: 'tooltip',
434				feedbackIcons: {
435					valid: 'fa fa-check',
436					warning: 'fa fa-user',
437					invalid: 'fa fa-times',
438					validating: 'fa fa-refresh'
439				},
440				fields: { 
441					subscribe_email: {
442						validators: {
443							notEmpty: {
444								message: 'Email is required. Please enter email.'
445							},
446							emailAddress: {
447								message: 'Please enter a correct email address.'
448							},
449							regexp: {
450									regexp: '^[^@\\s]+@([^@\\s]+\\.)+[^@\\s]+$',
451									message: 'The value is not a valid email address'
452							}
453						}
454					},	
455				}
456			})	
457			.on('success.form.bv', function(e) {
458				e.preventDefault();
459				var $form        = $(e.target),
460				validator    = $form.data('bootstrapValidator'),
461				submitButton = validator.getSubmitButton();
462				var form_data = $('#subscribe_form').serialize();
463				$.ajax({
464						type: "POST",
465						dataType: 'json',
466						url: "forms/subscription.php",					
467						data: form_data,
468						success: function(msg){						
469							$('.form-message1').html(msg.data);
470							$('.form-message1').show();
471							submitButton.removeAttr("disabled");
472							resetForm($('#subscribe_form'));						
473						},
474						error: function(msg){}
475				 });
476				return false;
477			});
478		}
479	
480	function resetForm($form) {
481		$form.find('input:text, input:password, input, input:file, select, textarea').val('');
482		$form.find('input:radio, input:checkbox').removeAttr('checked').removeAttr('selected');
483		$form.find('.form-control-feedback').css('display', 'none');
484	}
485	
486
487	
488	/* ========== Background image height equal to the browser height.==========*/
489	$(function() {
490	"use strict";
491		$('.wide-container').css({ 'height': $(window).height() });
492			$(window).on('resize', function() {
493			$('.wide-container').css({ 'height': $(window).height() });
494		});
495	});
496	
497	$(function() {
498	"use strict";
499		if ($(window).width() > 767) {
500			$('.wide-container-768').css({ 'height': $(window).height() });
501				$(window).on('resize', function() {
502				$('.wide-container-768').css({ 'height': $(window).height() });
503			});
504		}	
505	});
506
507	/*------Counter------*/	
508	if( $(".count-number").length != 0 ) {
509		$(".count-number").appear(function(){
510			$('.count-number').each(function(){
511				datacount = $(this).attr('data-count');
512				$(this).find('.counter').delay(6000).countTo({
513					from: 10,
514					to: datacount,
515					speed: 3000,
516					refreshInterval: 50,
517				});
518			});
519		});
520	}
521	
522	/*------Progress Bar-----*/
523	var bar = $('.progress-bar');
524		$(bar).appear(function() {
525		bar_width = $(this).attr('aria-valuenow');
526		$(this).width(bar_width + '%');
527		$(this).find('span').fadeIn(20000);
528	});
529	
530	 /* ----------- Video Bg ----------- */
531	 $(function(){
532		"use strict";
533		if( $(".movie").length != 0 ) {
534			$(".movie").mb_YTPlayer();
535		}
536	  });
537		
538	
539	
540	 /* -------- Background Slider -------- */
541	$(function() {
542		"use strict";
543		if( $("#slides").length != 0 ) {
544			$('#slides').superslides({
545				inherit_width_from: '.wide-container',
546				inherit_height_from: '.wide-container',
547				interval: 5000,
548				speed: 300
549			});
550		}	
551	});
552	/* ============ OWL SLIDERS =============== */
553	$(function() {
554		"use strict";	
555		if( $(".owl-example1").length != 0 ) {
556			$(".owl-example1").owlCarousel({
557	 
558			  navigation : true, // Show next and prev buttons
559			  slideSpeed : 800,
560			  paginationSpeed : 1900,
561			  pagination: false,
562			  singleItem:true,
563			  //navigation : true,
564			  navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],		
565			  autoPlay: true,
566			  stopOnHover: true
567		 
568			  // "singleItem:true" is a shortcut for:
569			  // items : 1, 
570			  // itemsDesktop : false,
571			  // itemsDesktopSmall : false,
572			  // itemsTablet: false,
573			  // itemsMobile : false
574		 
575			});
576		}	
577		
578		/* ============ Owl 2 =============== */
579		if( $(".owl-example2").length != 0 ) {
580			$(".owl-example2").owlCarousel({
581	 
582			  navigation : true, // Show next and prev buttons
583			  slideSpeed : 300,
584			  paginationSpeed : 400,
585			  pagination: false,
586			  //navigation : false,
587			  navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],		
588			  autoPlay: true,
589			  items : 2,
590			  itemsDesktop : [1199, 3],
591		 
592			  // "singleItem:true" is a shortcut for:
593			  //
594			  // itemsDesktop : false,
595			  // itemsDesktopSmall : false,
596			  // itemsTablet: false,
597			  // itemsMobile : false
598		 
599		  });
600		} 
601			
602	/* ============ Owl 3 =============== */
603		if( $(".owl-example3").length != 0 ) {
604			$(".owl-example3").owlCarousel({
605				items : 3,
606				lazyLoad : true,
607				autoPlay: true,
608				navigation : true,
609				navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],	
610				pagination: false,
611				itemsCustom : false,
612				itemsDesktop : [1199, 3],
613				itemsDesktopSmall : [980, 2],
614				itemsTablet : [768, 2],
615				itemsTabletSmall : [640, 1],
616				itemsMobile : [479, 1]
617			});
618		}
619	
620
621	
622	/* ============ Owl 4 =============== */
623		if( $(".owl-example4").length != 0 ) {
624			$(".owl-example4").owlCarousel({
625				items : 4,
626				lazyLoad : true,
627				autoPlay: true,
628				navigation : true,
629				navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],	
630				pagination: false,
631				itemsCustom : false,
632				itemsDesktop : [1199, 3],
633				itemsDesktopSmall : [980, 3],
634				itemsTablet : [840, 2],
635				itemsTabletSmall : [640, 2],
636				itemsMobile : [600, 1]
637			});
638		}	
639	
640	
641	/* ============ Owl 5 =============== */
642		if( $(".owl-example5").length != 0 ) {
643			$(".owl-example5").owlCarousel({
644				items : 6,
645				lazyLoad : true,
646				autoPlay: true,
647				navigation : false,
648				navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],	
649				pagination: false,
650				itemsCustom : false,
651				itemsDesktop : [1199, 5],
652				itemsDesktopSmall : [980, 4],
653				itemsTablet : [767, 3],
654				itemsTabletSmall : [480, 2],
655				itemsMobile : [360, 2]
656			});
657		}	
658	/* ============ OWL SLIDERS =============== */
659		if( $(".owl-example6").length != 0 ) {
660			$(".owl-example6").owlCarousel({
661	 
662			  navigation : true, // Show next and prev buttons
663			  slideSpeed : 300,
664			  paginationSpeed : 400,
665			  singleItem:true,
666			  pagination : true,
667			  //navigation : false,
668			  navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],		
669			  autoPlay: true
670		 
671			  // "singleItem:true" is a shortcut for:
672			  // items : 1, 
673			  // itemsDesktop : false,
674			  // itemsDesktopSmall : false,
675			  // itemsTablet: false,
676			  // itemsMobile : false
677		 
678		  });
679		} 
680		/* ============================= Variation Slider  ========================== */
681	
682		/* ============ Team 3 Members =============== */
683		if( $(".member-3").length != 0 ) {
684			$(".member-3").owlCarousel({
685				items : 3,
686				lazyLoad : true,
687				autoPlay: true,
688				navigation : false,
689				navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],	
690				pagination: true,
691				itemsCustom : false,
692				itemsDesktop : [1199, 3],
693				itemsDesktopSmall : [980, 3],
694				itemsTablet : [840, 2],
695				itemsTabletSmall : [640, 2],
696				itemsMobile : [600, 1]
697			});
698		}
699		
700		/* ============ Pricing 2 Plan =============== */
701		if( $(".pricing-plan-2").length != 0 ) {
702			$(".pricing-plan-2").owlCarousel({
703				items : 2,
704				lazyLoad : true,
705				autoPlay: true,
706				navigation : true,
707				navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],	
708				pagination: false,
709				itemsCustom : false,
710				itemsDesktop : [1199, 3],
711				itemsDesktopSmall : [980, 2],
712				itemsTablet : [768, 2],
713				itemsTabletSmall : [640, 1],
714				itemsMobile : [479, 1]
715			});
716		}
717		
718		/* ============ Pricing 4 Plan =============== */
719		if( $(".pricing-plan-4").length != 0 ) {
720			$(".pricing-plan-4").owlCarousel({
721				items : 4,
722				lazyLoad : true,
723				autoPlay: true,
724				navigation : false,
725				navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],	
726				pagination: true,
727				itemsCustom : false,
728				itemsDesktop : [1199, 3],
729				itemsDesktopSmall : [980, 2],
730				itemsTablet : [768, 2],
731				itemsTabletSmall : [640, 1],
732				itemsMobile : [479, 1]
733			});
734		}
735		
736		/* ============ Pricing 4 Plan =============== */
737		if( $(".testimonial2").length != 0 ) {
738			$(".testimonial2").owlCarousel({
739				items : 2,
740				lazyLoad : true,
741				autoPlay: false,
742				navigation : false,
743				navigationText: ['<i class="icon-chevron-left-outline"></i>','<i class="icon-chevron-right-outline"></i>'],	
744				pagination: true,
745				itemsCustom : false,
746				itemsDesktop : [1199, 2],
747				itemsDesktopSmall : [980, 2],
748				itemsTablet : [768, 1],
749				itemsTabletSmall : [640, 1],
750				itemsMobile : [479, 1]
751			});
752		}
753		
754	
755		/* ============ Company Mac Slider =============== */
756		if( $(".company-slider").length != 0 ) {
757			$(".company-slider").owlCarousel({
758	 
759			  navigation : true, // Show next and prev buttons
760			  slideSpeed : 300,
761			  paginationSpeed : 400,
762			  pagination: false,
763			  singleItem:true,
764			  //navigation : true,
765			  navigationText: ['<i class="icon-chevron-thin-left"></i>','<i class="icon-chevron-thin-right"></i>'],		
766			  autoPlay: true
767		 
768			  // "singleItem:true" is a shortcut for:
769			  // items : 1, 
770			  // itemsDesktop : false,
771			  // itemsDesktopSmall : false,
772			  // itemsTablet: false,
773			  // itemsMobile : false
774		 
775			});
776		}	
777	});  	
778		
779	/* -------Text Slider -------------*/
780	$(function() {
781		"use strict";
782		if( $(".text-scroll-slider").length != 0 ) {
783			var dd = $('.text-scroll-slider').easyTicker({
784				direction: 'up',
785				easing: 'easeInOutExpo',
786				speed: 'slow',
787				interval: 3900,
788				height: 'auto',
789				visible: 1,
790				mousePause: 0,
791				controls: {
792					up: '.up',
793					down: '.down',
794					toggle: '.toggle',
795					stopText: 'Stop !!!'
796				}
797			}).data('easyTicker');
798		}	
799	
800		/* -------Text Rotate -------------*/
801		if( $(".text-rotate").length != 0 ) {
802			var dd = $('.text-rotate').easyTicker({
803				direction: 'up',
804				easing: 'easeInOutExpo',
805				speed: 'slow',
806				interval: 3900,
807				height: 'auto',
808				visible: 1,
809				mousePause: 0,
810				controls: {
811					up: '.up',
812					down: '.down',
813					toggle: '.toggle',
814					stopText: 'Stop !!!'
815				}
816			}).data('easyTicker');
817		}
818	});	
819	
820	/* -----------------Typed Text Slider-------------- */
821	$(function() {
822		"use strict";
823		if( $(".element").length != 0 ) {
824			$(".element").each(function(){
825				var $this = $(this);
826				$this.typed({
827				strings: $this.attr('data-elements').split(','),
828				loop: true,
829				typeSpeed: 100, // typing speed
830				backDelay: 3000 // pause before backspacing
831				});
832			});
833		}	
834	});	
835	  
836	
837	/*-------------- Magnifinder ------*/
838	$(function() {
839		"use strict";
840		if( $(".magnify").length != 0 ) {
841			$('.magnify').magnify({
842				speed: 100, // fade in/out speed
843				scr: " " // The URI of the large image
844			});
845		}	
846	});	
847
848	/* ---------------------	
849		Calendar
850	/* --------------------- */
851	$(function() {
852		"use strict";
853		if( $('#calendar').length !== 0 ) {
854		$('#calendar').fullCalendar({
855				header: {
856					left: 'prev,next today',
857					center: 'title',
858					right: 'month,agendaWeek,agendaDay'
859				},
860				defaultDate: '2015-02-12',
861				businessHours: true, // display business hours
862				editable: true,
863				events: [
864					{
865						title: 'Business Lunch',
866						start: '2015-02-03T13:00:00',
867						constraint: 'businessHours'
868					},
869					{
870						title: 'Meeting',
871						start: '2015-02-13T11:00:00',
872						constraint: 'availableForMeeting', // defined below
873						color: '#257e4a'
874					},
875					{
876						title: 'Conference',
877						start: '2015-02-18',
878						end: '2015-02-20'
879					},
880					{
881						title: 'Party',
882						start: '2015-02-29T20:00:00'
883					},
884
885					// areas where "Meeting" must be dropped
886					{
887						id: 'availableForMeeting',
888						start: '2015-02-11T10:00:00',
889						end: '2015-02-11T16:00:00',
890						rendering: 'background'
891					},
892					{
893						id: 'availableForMeeting',
894						start: '2015-02-13T10:00:00',
895						end: '2015-02-13T16:00:00',
896						rendering: 'background'
897					},
898
899					// red areas where no events can be dropped
900					{
901						start: '2015-02-24',
902						end: '2015-02-28',
903						overlap: false,
904						rendering: 'background',
905						color: '#ff9f89'
906					},
907					{
908						start: '2015-02-06',
909						end: '2015-02-08',
910						overlap: false,
911						rendering: 'background',
912						color: '#ff9f89'
913					}
914				]
915			});
916		}
917	});	
918	
919	/* --------------------------------------------
920	 Day Counter
921	-------------------------------------------- */	
922	$(function() {
923		"use strict";
924		if( $(".daycounter").length != 0 ) {
925			$('.daycounter').each(function(){
926				var counter_id = $(this).attr('id');
927				var counter_type = $(this).data('counter');
928				var year = $(this).data('year');
929				var month = $(this).data('month');
930				var date = $(this).data('date');
931				var countDay = new Date();
932				countDay = new Date(year, month - 1, date);
933				if( counter_type == "down" ) {
934				$("#"+counter_id).countdown({
935					labels: ['Years', 'Months', 'Weeks', 'Days', 'Hours', 'Mins', 'Secs'],
936					labels1: ['Year', 'Month', 'Week', 'Day', 'Hour', 'Min', 'Sec'],
937					until: countDay
938				});
939				} else if( counter_type == "up" ) {
940					$("#"+counter_id).countdown({
941					 labels: ['Years', 'Months', 'Weeks', 'Days', 'Hours', 'Mins', 'Secs'],
942					 labels1: ['Year', 'Month', 'Week', 'Day', 'Hour', 'Min', 'Sec'],
943					 since: countDay
944					});
945				}
946			});
947		}	
948	});	
949	
950	/* ---------------------	
951		Background Image Attribute
952	/* --------------------- */
953	bgImage();
954	function bgImage(){		
955		var pageSection = $(".image-bg, .parallax-bg");
956		pageSection.each(function(indx){
957			if ($(this).attr("data-background")){
958				$(this).css("background-image", "url(" + $(this).data("background") + ")");
959			}
960		});
961	}
962	
963	// Social Feed
964	locationSocialFeed();
965	function locationSocialFeed() {
966	  var $ = jQuery,
967		  socialFeed = $('.social-feed');
968	  
969	  if(typeof($.fn.isotope) !== 'undefined') {
970		socialFeed.isotope({
971		  itemSelector: '.isotope-item',
972		}).addClass('loaded');
973		
974		$(document).on( 'click', '#load-more', function( e ) {
975		  var item1, item2, item3, items, tmp;
976		  
977		  items = socialFeed.find('.item-clone');
978		  item1 = $(items[Math.floor(Math.random() * items.length)]).clone();
979		  item2 = $(items[Math.floor(Math.random() * items.length)]).clone();
980		  item3 = $(items[Math.floor(Math.random() * items.length)]).clone();
981		  tmp = $().add(item1).add(item2).add(item3);
982	  
983		  var images = tmp.find('img');
984	  
985		  images.imagesLoaded(function(){
986			return socialFeed.isotope('insert', tmp);
987		  });
988		});
989	  }
990	}
991
992	/* Social Photo Streaming */
993	socialPhotostream();
994	function socialPhotostream() {
995		if( $(".my-feeds").length != 0 ) {
996			/* ================ FLICKR FEED ================ */
997			$('.flickr-feed').socialstream({
998				socialnetwork: 'flickr',
999				limit: 12,
1000				username: 'Envato'
1001			})
1002			/* ================ PINTEREST FEED ================ */
1003			$('.pinterest-feed').socialstream({
1004				socialnetwork: 'pinterest',
1005				limit: 12,
1006				username: 'vmrkela'
1007			})
1008			/* ================ INSTAGRAM FEED ================ */
1009			$('.instagram-feed').socialstream({
1010				socialnetwork: 'instagram',
1011				limit: 12,
1012				username: 'google'
1013			})
1014			/* ================ INSTAGRAM FOOTER FEED ================ */
1015			$('.instagram-footer-feed').socialstream({
1016				socialnetwork: 'instagram',
1017				limit: 10,
1018				username: 'google'
1019			})
1020			 /* ================ DRIBBBLE FEED ================ */
1021			$('.dribbble-feed').socialstream({
1022				socialnetwork: 'dribbble',
1023				limit: 15,
1024				username: 'envato'
1025			})
1026			/* ================ NEWSFEED ================ */
1027			$('.instagram-footer-feed').socialstream({
1028				socialnetwork: 'newsfeed',
1029				limit: 10,
1030				username: '#'
1031			}) 
1032			/* ================ PICASA FEED ================ */
1033			$('.picasa-feed').socialstream({
1034				socialnetwork: 'picasa',
1035				limit: 15,
1036				username: 'envato'
1037			});
1038			/* ================ YOUTUBE FEED ================ */
1039			$('.youtube-feed').socialstream({
1040				socialnetwork: 'youtube',
1041				limit: 15,
1042				username: 'Envato'
1043			})
1044		
1045		}
1046	}
1047	/* ---------------------	
1048		Animation
1049	/* --------------------- */
1050	dataAnimations();
1051	
1052	function dataAnimations () {
1053	  $('[data-animation]').each(function() {
1054			var element = $(this);
1055			element.addClass('animated');
1056			element.appear(function() {
1057				
1058				var delay = ( element.data('delay') ? element.data('delay') : 4 );
1059				if( delay > 4 ) element.css('animation-delay', delay + 'ms');				
1060				element.addClass( element.data('animation') );
1061				setTimeout(function() {
1062					element.addClass('visible');
1063				}, delay);
1064				
1065			});
1066	  });
1067	}
1068
1069});
1070// Portfolio Filter Js 
1071function initPortfolioGrid() {
1072	if( $(".project-grid").length != 0 ) {
1073	  $('.project-grid').each(function(){  
1074		   var $port_container = $(this);  
1075				
1076			var filter_selector = $port_container.parent().find('.project-filters a.active').data('filter');  
1077			
1078			$port_container.isotope({			
1079				itemSelector: '.item',
1080				filter: filter_selector,
1081				animationEngine: "css",
1082				masonry: {
1083					columnWidth: '.grid-sizer'
1084				}
1085			});	  
1086	  
1087			// Portfolio Filter Items
1088			$(document).on( 'click', '.project-filters a', function( e ) {	
1089				$(this).parent().parent().find('a.active').removeClass('active');    
1090				$(this).addClass('active');
1091				var selector = $(this).parent().parent().find('a.active').attr('data-filter');  
1092				$(this).parents().find('.project-grid').isotope({ filter: selector, animationEngine : "css" });
1093			
1094				return false; 
1095			});
1096		});
1097	}
1098}
1099/* --------------------------------------------
1100Google Map
1101-------------------------------------------- */	
1102window.onload = MapLoadScript;
1103function GmapInit() {
1104	  Gmap = $('.map-canvas');
1105	  Gmap.each(function() {
1106		var $this           = $(this),
1107			lat             = -35.2835,
1108			lng             = 149.128,
1109			zoom            = 12,
1110			scrollwheel     = false,
1111			zoomcontrol 	= true,
1112			draggable       = true,
1113			mapType         = google.maps.MapTypeId.ROADMAP,
1114			title           = '',
1115			contentString   = '',
1116			dataLat         = $this.data('lat'),
1117			dataLng         = $this.data('lng'),
1118			dataZoom        = $this.data('zoom'),
1119			dataType        = $this.data('type'),
1120			dataScrollwheel = $this.data('scrollwheel'),
1121			dataZoomcontrol = $this.data('zoomcontrol'),
1122			dataHue         = $this.data('hue'),
1123			dataTitle       = $this.data('title'),
1124			dataContent     = $this.data('content');
1125			
1126		if( dataZoom !== undefined && dataZoom !== false ) {
1127			zoom = parseFloat(dataZoom);
1128		}
1129		if( dataLat !== undefined && dataLat !== false ) {
1130			lat = parseFloat(dataLat);
1131		}
1132		if( dataLng !== undefined && dataLng !== false ) {
1133			lng = parseFloat(dataLng);
1134		}
1135		if( dataScrollwheel !== undefined && dataScrollwheel !== null ) {
1136			scrollwheel = dataScrollwheel;
1137		}
1138		if( dataZoomcontrol !== undefined && dataZoomcontrol !== null ) {
1139			zoomcontrol = dataZoomcontrol;
1140		}
1141		if( dataType !== undefined && dataType !== false ) {
1142			if( dataType == 'satellite' ) {
1143				mapType = google.maps.MapTypeId.SATELLITE;
1144			} else if( dataType == 'hybrid' ) {
1145				mapType = google.maps.MapTypeId.HYBRID;
1146			} else if( dataType == 'terrain' ) {
1147				mapType = google.maps.MapTypeId.TERRAIN;
1148			}		  	
1149		}
1150		if( dataTitle !== undefined && dataTitle !== false ) {
1151			title = dataTitle;
1152		}
1153		if( navigator.userAgent.match(/iPad|iPhone|Android/i) ) {
1154			draggable = false;
1155		}
1156		
1157		var mapOptions = {
1158		  zoom        : zoom,
1159		  scrollwheel : scrollwheel,
1160		  zoomControl : zoomcontrol,
1161		  draggable   : draggable,
1162		  center      : new google.maps.LatLng(lat, lng),
1163		  mapTypeId   : mapType
1164		};		
1165		var map = new google.maps.Map($this[0], mapOptions);
1166		
1167		var image = 'img/map-marker.png';
1168		if( dataContent !== undefined && dataContent !== false ) {
1169			contentString = '<div class="map-data">' + '<h6>' + title + '</h6>' + '<div class="map-content">' + dataContent + '</div>' + '</div>';
1170		}
1171		var infowindow = new google.maps.InfoWindow({
1172			content: contentString
1173		});
1174		
1175		var marker = new google.maps.Marker({
1176		  position : new google.maps.LatLng(lat, lng),
1177		  map      : map,
1178		  icon     : image,
1179		  title    : title
1180		});
1181		if( dataContent !== undefined && dataContent !== false ) {
1182			google.maps.event.addListener(marker, 'click', function() {
1183				infowindow.open(map,marker);
1184			});
1185		}
1186		
1187		if( dataHue !== undefined && dataHue !== false ) {
1188		  var styles = [
1189			{
1190			  stylers : [
1191				{ hue : dataHue },
1192				{ saturation: 80 },
1193				{ lightness: -10 }
1194			  ]
1195			}
1196		  ];
1197		  map.setOptions({styles: styles});
1198		}
1199	 });
1200}
1201	
1202function MapLoadScript() {
1203	var script = document.createElement('script');
1204	script.type = 'text/javascript';
1205	script.src = 'https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&' + 'callback=GmapInit';
1206	document.body.appendChild(script);
1207}
1208
1209	/* --------------------------------------------
1210	Charts
1211	-------------------------------------------- */	
1212var appMaster = {	
1213	allCharts: function() {
1214		
1215	jQuery(window).load( function(){
1216			var lineChartData = {
1217				labels : ["January","February","March","April","May","June","July"],
1218				datasets : [
1219					{
1220						fillColor : "rgba(220,220,220,.5)",
1221						strokeColor : "rgba(220,220,220,1)",
1222						pointColor : "rgba(220,220,220,1)",
1223						pointStrokeColor : "#fff",
1224						data : [10,20,40,70,100,90,40]
1225					},
1226					{
1227						fillColor : "rgba(151,187,205,0.5)",
1228						strokeColor : "rgba(151,187,205,1)",
1229						pointColor : "rgba(151,187,205,1)",
1230						pointStrokeColor : "#fff",
1231						data : [70,30,60,40,50,30,60]
1232					},
1233					{
1234						fillColor : "rgba(255,196,0,0.5)",
1235						strokeColor : "rgba(151,187,205,1)",
1236						pointColor : "rgba(151,187,205,1)",
1237						pointStrokeColor : "#fff",
1238						data : [10,40,100,70,30,80,50]
1239					}
1240				]
1241			};
1242
1243			var barChartData = {
1244				labels : ["January","February","March","April","May","June","July"],
1245				datasets : [
1246					{
1247						fillColor : "rgba(255,196,0,0.5)",
1248						strokeColor : "rgba(220,220,220,1)",
1249						data : [50,70,90,60,70,40,50]
1250					}
1251				]
1252
1253			};
1254
1255			var radarChartData = {
1256				labels : ["Html5","Css3","Jquery","Wordpress","Joomla","Drupal","Design"],
1257				datasets : [
1258					{
1259						fillColor : "rgba(220,220,220,0.5)",
1260						strokeColor : "rgba(220,220,220,1)",
1261						pointColor : "rgba(220,220,220,1)",
1262						pointStrokeColor : "#fff",
1263						data : [65,59,90,81,56,55,40]
1264					},
1265					{
1266						fillColor : "rgba(255,196,0,0.5)",
1267						strokeColor : "rgba(255,196,0,1)",
1268						pointColor : "rgba(255,196,0,1)",
1269						pointStrokeColor : "#fff",
1270						data : [28,48,40,19,96,27,100]
1271					}
1272				]
1273
1274			};
1275
1276			var pieChartData = [
1277				{
1278					value: 20,
1279					color:"#949FB1"
1280				},
1281				{
1282					value : 40,
1283					color : "#46BFBD"
1284				},
1285				{
1286					value : 50,
1287					color : "#FDB45C"
1288				},
1289				{
1290					value : 70,
1291					color : "#4D5360"
1292				},
1293				{
1294					value : 90,
1295					color : "#F7464A"
1296				}
1297
1298			];
1299
1300			var polarAreaChartData = [
1301				{
1302					value : 60,
1303					color: "#ffc400"
1304				},
1305				{
1306					value : 70,
1307					color: "#cccccc"
1308				},
1309				{
1310					value : 60,
1311					color: "#171717"
1312				},
1313				{
1314					value : 30,
1315					color: "#229e05"
1316				},
1317				{
1318					value : 50,
1319					color: "#004eff"
1320				},
1321				{
1322					value : 20,
1323					color: "#584A5E"
1324				}
1325			];
1326
1327			var doughnutChartData = [
1328				{
1329					value: 30,
1330					color:"#ffc400"
1331				},
1332				{
1333					value : 50,
1334					color : "#cccccc"
1335				},
1336				{
1337					value : 100,
1338					color : "#171717"
1339				},
1340				{
1341					value : 40,
1342					color : "#004eff"
1343				},
1344				{
1345					value : 120,
1346					color : "#4D5360"
1347				}
1348			];
1349
1350			function showLineChart(){
1351				var ctx = document.getElementById("lineChartmist").getContext("2d");
1352				 new Chart(ctx).Line(lineChartData, {	responsive: true	});
1353			}
1354
1355			function showBarChart(){
1356				var ctx = document.getElementById("barChartmist").getContext("2d");
1357				new Chart(ctx).Bar(barChartData, {	responsive: true	});
1358			}
1359
1360			function showRadarChart(){
1361				var ctx = document.getElementById("radarChartmist").getContext("2d");
1362				new Chart(ctx).Radar(radarChartData, {	responsive: true	});
1363			}
1364
1365			function showPolarAreaChart(){
1366				var ctx = document.getElementById("polarAreaChartmist").getContext("2d");
1367				new Chart(ctx).PolarArea(polarAreaChartData, {	responsive: true	});
1368			}
1369
1370			function showPieChart(){
1371				var ctx = document.getElementById("pieChartmist").getContext("2d");
1372				new Chart(ctx).Pie(pieChartData,{	responsive: true	});
1373			}
1374			function showDoughnutChart(){
1375				var ctx = document.getElementById("doughnutChartmist").getContext("2d");
1376				new Chart(ctx).Doughnut(doughnutChartData,{	responsive: true	});
1377			}
1378
1379			if( $("#lineChart").length != 0 ) {
1380				$('#lineChart').appear( function(){ $(this).css({ opacity: 1 }); setTimeout(showLineChart,300); },{accX: 0, accY: -155},'easeInCubic');
1381			}
1382			if( $("#barChart").length != 0 ) {
1383				$('#barChart').appear( function(){ $(this).css({ opacity: 1 }); setTimeout(showBarChart,300); },{accX: 0, accY: -155},'easeInCubic');
1384			}
1385			if( $("#radarChart").length != 0 ) {
1386				$('#radarChart').appear( function(){ $(this).css({ opacity: 1 }); setTimeout(showRadarChart,300); },{accX: 0, accY: -155},'easeInCubic');
1387			}
1388			if( $("#polarAreaChart").length != 0 ) {
1389				$('#polarAreaChart').appear( function(){ $(this).css({ opacity: 1 }); setTimeout(showPolarAreaChart,300); },{accX: 0, accY: -155},'easeInCubic');
1390			}
1391			if( $("#pieChart").length != 0 ) {
1392				$('#pieChart').appear( function(){ $(this).css({ opacity: 1 }); setTimeout(showPieChart,300); },{accX: 0, accY: -155},'easeInCubic');
1393			}
1394			if( $("#doughnutChart").length != 0 ) {
1395				$('#doughnutChart').appear( function(){ $(this).css({ opacity: 1 }); setTimeout(showDoughnutChart,300); },{accX: 0, accY: -155},'easeInCubic');
1396			}
1397
1398		});
1399
1400	},
1401}; 
1402
1403/* --------------------------------------------
1404	
1405	Placeholder for Image
1406	-------------------------------------------- */	
1407$(window).load(function(){
1408		
1409	$('img:not(".site_logo")').each(function() {
1410		if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){
1411			var ieversion=new Number(RegExp.$1)
1412			if (ieversion>=9)
1413			if (typeof this.naturalWidth === "undefined" || this.naturalWidth === 0) {
1414			  this.src = "http://placehold.it/" + ($(this).attr('width') || this.width || $(this).naturalWidth()) + "x" + (this.naturalHeight || $(this).attr('height') || $(this).height());
1415			}
1416		} else {
1417			if (!this.complete || typeof this.naturalWidth === "undefined" || this.naturalWidth === 0) {
1418				this.src = "http://placehold.it/" + ($(this).attr('width') || this.width) + "x" + ($(this).attr('height') || $(this).height());
1419			}
1420		}
1421	});
1422	
1423	$('.image-bg').each(function() {
1424		var imageSrc = $(this).data('background');
1425		if( imageSrc !== undefined ) {
1426			var newSrc = imageSrc.replace(/url\((['"])?(.*?)\1\)/gi, '$2').split(',')[0];
1427		}
1428
1429		// I just broke it up on newlines for readability        
1430		var image = new Image();
1431		image.src = newSrc;
1432
1433		var width = image.width,
1434			height = image.height;
1435		
1436		if( width === 0 || height === 0 ) {
1437			$(this).attr('data-background', "http://placehold.it/" + ('1900') + "x" + ('700') + "/2e2e2e/666.jpg" );
1438			
1439			$(this).removeAttr('style');
1440			$(this).css("background-image", "url(" + "http://placehold.it/1900x700/2e2e2e/666.jpg" + ")");
1441		}
1442	});
1443});
1444
1445						  

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.