PageSourceSearch

https://kulturportali.gov.tr/js/functions-eskidenYeniye.js?v=201702281450

js kulturportali.gov.tr collected 2026-10-02 05:26:28 UTC 85,612 bytes, 1,903 lines download raw bytes

1var $ = jQuery.noConflict();
2
3$.fn.inlineStyle = function (prop) {
4    return this.prop("style")[$.camelCase(prop)];
5};
6
7$.fn.doOnce = function( func ) {
8    this.length && func.apply( this );
9    return this;
10}
11
12$.extend($.infinitescroll.prototype,{
13    _setup_portfolioinfiniteitemsloader: function infscr_setup_portfolioinfiniteitemsloader() {
14        var opts = this.options,
15            instance = this;
16        // Bind nextSelector link to retrieve
17        $(opts.nextSelector).click(function(e) {
18            if (e.which == 1 && !e.metaKey && !e.shiftKey) {
19                e.preventDefault();
20                instance.retrieve();
21            }
22        });
23        // Define loadingStart to never hide pager
24        instance.options.loading.start = function (opts) {
25            opts.loading.msg
26                .appendTo(opts.loading.selector)
27                .show(opts.loading.speed, function () {
28                    instance.beginAjax(opts);
29                });
30        }
31    },
32    _showdonemsg_portfolioinfiniteitemsloader: function infscr_showdonemsg_portfolioinfiniteitemsloader () {
33        var opts = this.options,
34            instance = this;
35        //Do all the usual stuff
36        opts.loading.msg
37            .find('img')
38            .hide()
39            .parent()
40            .find('div').html(opts.loading.finishedMsg).animate({ opacity: 1 }, 2000, function () {
41                $(this).parent().fadeOut('normal');
42            });
43        //And also hide the navSelector
44        $(opts.navSelector).fadeOut('normal');
45        // user provided callback when done
46        opts.errorCallback.call($(opts.contentSelector)[0],'done');
47    }
48});
49
50var SEMICOLON = SEMICOLON || {};
51
52(function($){
53
54    // USE STRICT
55    "use strict";
56
57    SEMICOLON.initialize = {
58
59        init: function(){
60
61            SEMICOLON.initialize.responsiveClasses();
62            SEMICOLON.initialize.pageTransition();
63            SEMICOLON.initialize.imagePreload( '.portfolio-item:not(:has(.fslider)) img' );
64            SEMICOLON.initialize.stickyElements();
65            SEMICOLON.initialize.goToTop();
66            SEMICOLON.initialize.fullScreen();
67            SEMICOLON.initialize.verticalMiddle();
68            SEMICOLON.initialize.lightbox();
69            SEMICOLON.initialize.resizeVideos();
70            SEMICOLON.initialize.imageFade();
71            SEMICOLON.initialize.dataStyles();
72            SEMICOLON.initialize.dataResponsiveHeights();
73
74            $('.fslider').addClass('preloader2');
75
76        },
77
78        responsiveClasses: function(){
79            var jRes = jRespond([
80                {
81                    label: 'smallest',
82                    enter: 0,
83                    exit: 479
84                },{
85                    label: 'handheld',
86                    enter: 480,
87                    exit: 767
88                },{
89                    label: 'tablet',
90                    enter: 768,
91                    exit: 991
92                },{
93                    label: 'laptop',
94                    enter: 992,
95                    exit: 1199
96                },{
97                    label: 'desktop',
98                    enter: 1200,
99                    exit: 10000
100                }
101            ]);
102            jRes.addFunc([
103                {
104                    breakpoint: 'desktop',
105                    enter: function() { $body.addClass('device-lg'); },
106                    exit: function() { $body.removeClass('device-lg'); }
107                },{
108                    breakpoint: 'laptop',
109                    enter: function() { $body.addClass('device-md'); },
110                    exit: function() { $body.removeClass('device-md'); }
111                },{
112                    breakpoint: 'tablet',
113                    enter: function() { $body.addClass('device-sm'); },
114                    exit: function() { $body.removeClass('device-sm'); }
115                },{
116                    breakpoint: 'handheld',
117                    enter: function() { $body.addClass('device-xs'); },
118                    exit: function() { $body.removeClass('device-xs'); }
119                },{
120                    breakpoint: 'smallest',
121                    enter: function() { $body.addClass('device-xxs'); },
122                    exit: function() { $body.removeClass('device-xxs'); }
123                }
124            ]);
125        },
126
127        imagePreload: function(selector, parameters){
128            var params = {
129                delay: 250,
130                transition: 400,
131                easing: 'linear'
132            };
133            $.extend(params, parameters);
134
135            $(selector).each(function() {
136                var image = $(this);
137                image.css({visibility:'hidden', opacity: 0, display:'block'});
138                image.wrap('<span class="preloader" />');
139                image.one("load", function(evt) {
140                    $(this).delay(params.delay).css({visibility:'visible'}).animate({opacity: 1}, params.transition, params.easing, function() {
141                        $(this).unwrap('<span class="preloader" />');
142                    });
143                }).each(function() {
144                    if(this.complete) $(this).trigger("load");
145                });
146            });
147        },
148
149        verticalMiddle: function(){
150            if( $verticalMiddleEl.length > 0 ) {
151                $verticalMiddleEl.each( function(){
152                    var element = $(this),
153                        verticalMiddleH = element.outerHeight();
154
155                    if( element.parents('#slider').length > 0 ) {
156                        if( $header.hasClass('transparent-header') && ( $body.hasClass('device-lg') || $body.hasClass('device-md') ) ) {
157                            verticalMiddleH = verticalMiddleH - 70;
158                            if( $slider.next('#header').length > 0 ) { verticalMiddleH = verticalMiddleH + 100; }
159                        }
160                    }
161
162                    if( $body.hasClass('device-xs') || $body.hasClass('device-xxs') ) {
163                        if( element.parents('.full-screen').length && !element.parents('.force-full-screen').length ){
164                            element.css({ position: 'relative', top: '0', width: 'auto', marginTop: '0', padding: '60px 0' }).addClass('clearfix');
165                        } else {
166                            element.css({ position: 'absolute', top: '50%', width: '100%', marginTop: -(verticalMiddleH/2)+'px' });
167                        }
168                    } else {
169                        element.css({ position: 'absolute', top: '50%', width: '100%', marginTop: -(verticalMiddleH/2)+'px' });
170                    }
171                });
172            }
173        },
174
175        stickyElements: function(){
176            if( $siStickyEl.length > 0 ) {
177                var siStickyH = $siStickyEl.outerHeight();
178                $siStickyEl.css({ marginTop: -(siStickyH/2)+'px' });
179            }
180
181            if( $dotsMenuEl.length > 0 ) {
182                var opmdStickyH = $dotsMenuEl.outerHeight();
183                $dotsMenuEl.css({ marginTop: -(opmdStickyH/2)+'px' });
184            }
185        },
186
187        goToTop: function(){
188            $goToTopEl.click(function() {
189                $('body,html').stop(true).animate({scrollTop:0},400);
190                return false;
191            });
192        },
193
194        goToTopScroll: function(){
195            if( $body.hasClass('device-lg') || $body.hasClass('device-md') || $body.hasClass('device-sm') ) {
196                if($window.scrollTop() > 450) {
197                    $goToTopEl.fadeIn();
198                } else {
199                    $goToTopEl.fadeOut();
200                }
201            }
202        },
203
204        fullScreen: function(){
205            if( $fullScreenEl.length > 0 ) {
206                $fullScreenEl.each( function(){
207                    var element = $(this),
208                        scrHeight = $window.height();
209                    if( element.attr('id') == 'slider' ) {
210                        var sliderHeightOff = $slider.offset().top;
211                        scrHeight = scrHeight - sliderHeightOff;
212                        if( $('#slider.with-header').next('#header:not(.transparent-header)').length > 0 && ( $body.hasClass('device-lg') || $body.hasClass('device-md') ) ) {
213                            var headerHeightOff = $header.outerHeight();
214                            scrHeight = scrHeight - headerHeightOff;
215                        }
216                    }
217                    if( element.parents('.full-screen').length > 0 ) { scrHeight = element.parents('.full-screen').height(); }
218
219                    if( $body.hasClass('device-xs') || $body.hasClass('device-xxs') ) {
220                        if( !element.hasClass('force-full-screen') ){ scrHeight = 'auto'; }
221                    }
222
223                    element.css('height', scrHeight);
224                    if( element.attr('id') == 'slider' && !element.hasClass('canvas-slider-grid') ) { if( element.has('.swiper-slide') ) { element.find('.swiper-slide').css('height', scrHeight); } }
225                });
226            }
227        },
228
229        maxHeight: function(){
230            if( $commonHeightEl.length > 0 ) {
231                $commonHeightEl.each( function(){
232                    var parentEl = $(this),
233                        maxHeight = 0;
234                    parentEl.children('[class^=col-]').each(function() {
235                        var element = $(this).children('div');
236                        if( element.hasClass('max-height') ){
237                            maxHeight = element.outerHeight();
238                        } else {
239                            if (element.outerHeight() > maxHeight)
240                            maxHeight = element.outerHeight();
241                        }
242                    });
243
244                    parentEl.children('[class^=col-]').each(function() {
245                        $(this).height(maxHeight);
246                    });
247                });
248            }
249        },
250
251        testimonialsGrid: function(){
252            if( $testimonialsGridEl.length > 0 ) {
253                if( $body.hasClass('device-sm') || $body.hasClass('device-md') || $body.hasClass('device-lg') ) {
254                    var maxHeight = 0;
255                    $testimonialsGridEl.each( function(){
256                        $(this).find("li > .testimonial").each(function(){
257                           if ($(this).height() > maxHeight) { maxHeight = $(this).height(); }
258                        });
259                        $(this).find("li").height(maxHeight);
260                        maxHeight = 0;
261                    });
262                } else {
263                    $testimonialsGridEl.find("li").css({ 'height': 'auto' });
264                }
265            }
266        },
267
268        lightbox: function(){
269            var $lightboxImageEl = $('[data-lightbox="image"]'),
270                $lightboxGalleryEl = $('[data-lightbox="gallery"]'),
271                $lightboxIframeEl = $('[data-lightbox="iframe"]'),
272                $lightboxAjaxEl = $('[data-lightbox="ajax"]');
273
274            if( $lightboxImageEl.length > 0 ) {
275                $lightboxImageEl.magnificPopup({
276                    type: 'image',
277                    closeOnContentClick: true,
278                    closeBtnInside: true,
279                    fixedContentPos: true,
280                    mainClass: 'mfp-no-margins mfp-fade', // class to remove default margin from left and right side
281                    image: {
282                        verticalFit: true
283                    }
284                });
285            }
286
287            if( $lightboxGalleryEl.length > 0 ) {
288                $lightboxGalleryEl.each(function() {
289                    var element = $(this);
290
291                    if( element.find('a[data-lightbox="gallery-item"]').parent('.clone').hasClass('clone') ) {
292                        element.find('a[data-lightbox="gallery-item"]').parent('.clone').find('a[data-lightbox="gallery-item"]').attr('data-lightbox','');
293                    }
294
295                    element.magnificPopup({
296                        delegate: 'a[data-lightbox="gallery-item"]',
297                        type: 'image',
298                        closeOnContentClick: true,
299                        closeBtnInside: true,
300                        fixedContentPos: true,
301                        mainClass: 'mfp-no-margins mfp-fade', // class to remove default margin from left and right side
302                        image: {
303                            verticalFit: true
304                        },
305                        gallery: {
306                            enabled: true,
307                            navigateByImgClick: true,
308                            preload: [0,1] // Will preload 0 - before current, and 1 after the current image
309                        }
310                    });
311                });
312            }
313
314            if( $lightboxIframeEl.length > 0 ) {
315                $lightboxIframeEl.magnificPopup({
316                    disableOn: 600,
317                    type: 'iframe',
318                    removalDelay: 160,
319                    preloader: false,
320                    fixedContentPos: false
321                });
322            }
323
324            if( $lightboxAjaxEl.length > 0 ) {
325                $lightboxAjaxEl.magnificPopup({
326                    type: 'ajax',
327                    closeBtnInside: true,
328                    callbacks: {
329                        ajaxContentAdded: function(mfpResponse) {
330                            SEMICOLON.widget.loadFlexSlider();
331                            SEMICOLON.initialize.resizeVideos();
332                            SEMICOLON.widget.masonryThumbs();
333                        }
334                    }
335                });
336            }
337        },
338
339        resizeVideos: function(){
340            if ( $().fitVids ) {
341                $("#content,#footer,#slider:not(.revslider-wrap),.landing-offer-media,.portfolio-ajax-modal").fitVids({
342                    customSelector: "iframe[src^='http://www.dailymotion.com/embed']",
343                    ignore: '.no-fv'
344                });
345            }
346        },
347
348        imageFade: function(){
349            $('.image_fade').hover( function(){
350                $(this).filter(':not(:animated)').animate({opacity: 0.8}, 400);
351            }, function() {
352                $(this).animate({opacity: 1}, 400);
353            });
354        },
355
356        blogTimelineEntries: function(){
357            $('.post-timeline.grid-2').find('.entry').each( function(){
358                var position = $(this).inlineStyle('left');
359                if( position == '0px' ) {
360                    $(this).removeClass('alt');
361                } else {
362                    $(this).addClass('alt');
363                }
364                $(this).find('.entry-timeline').fadeIn();
365            });
366        },
367
368        pageTransition: function(){
369            if( !$body.hasClass('no-transition') ){
370                var animationIn = $body.attr('data-animation-in'),
371                    animationOut = $body.attr('data-animation-out'),
372                    durationIn = $body.attr('data-speed-in'),
373                    durationOut = $body.attr('data-speed-out');
374
375                if( !animationIn ) { animationIn = 'fadeIn'; }
376                if( !animationOut ) { animationOut = 'fadeOut'; }
377                if( !durationIn ) { durationIn = 50; }
378                if( !durationOut ) { durationOut = 800; }
379
380                $wrapper.animsition({
381                    inClass : animationIn,
382                    outClass : animationOut,
383                    inDuration : Number(durationIn),
384                    outDuration : Number(durationOut),
385                    linkElement : '#primary-menu ul li a:not([target="_blank"]):not([href^=#])',
386                    loading : true,
387                    loadingParentElement : 'body',
388                    loadingClass: 'se-pre-con',
389                    //loadingClass: 'css3-spinner',
390                    unSupportCss : [
391                                     'animation-duration',
392                                     '-webkit-animation-duration',
393                                     '-o-animation-duration'
394                                   ],
395                    overlay : false,
396                    overlayClass : 'animsition-overlay-slide',
397                    overlayParentElement : 'body'
398                });
399            }
400        },
401
402        topScrollOffset: function() {
403            var topOffsetScroll = 0;
404
405            if( ( $body.hasClass('device-lg') || $body.hasClass('device-md') ) && !SEMICOLON.isMobile.any() ) {
406                if( $header.hasClass('sticky-header') ) {
407                    if( $pagemenu.hasClass('dots-menu') ) { topOffsetScroll = 100; } else { topOffsetScroll = 144; }
408                } else {
409                    if( $pagemenu.hasClass('dots-menu') ) { topOffsetScroll = 140; } else { topOffsetScroll = 184; }
410                }
411
412                if( !$pagemenu.length ) {
413                    if( $header.hasClass('sticky-header') ) { topOffsetScroll = 100; } else { topOffsetScroll = 140; }
414                }
415            } else {
416                topOffsetScroll = 40;
417            }
418
419            return topOffsetScroll;
420        },
421
422        defineColumns: function( element ){
423            var column = 4;
424
425            if( element.hasClass('portfolio-full') ) {
426                if( element.hasClass('portfolio-3') ) column = 3;
427                else if( element.hasClass('portfolio-5') ) column = 5;
428                else if( element.hasClass('portfolio-6') ) column = 6;
429                else column = 4;
430
431                if( $body.hasClass('device-sm') && ( column == 4 || column == 5 || column == 6 ) ) {
432                    column = 3;
433                } else if( $body.hasClass('device-xs') && ( column == 3 || column == 4 || column == 5 || column == 6 ) ) {
434                    column = 2;
435                } else if( $body.hasClass('device-xxs') ) {
436                    column = 1;
437                }
438            } else if( element.hasClass('masonry-thumbs') ) {
439                if( element.hasClass('col-2') ) column = 2;
440                else if( element.hasClass('col-3') ) column = 3;
441                else if( element.hasClass('col-5') ) column = 5;
442                else if( element.hasClass('col-6') ) column = 6;
443                else column = 4;
444            }
445
446            return column;
447        },
448
449        setFullColumnWidth: function( element ){
450
451            if( element.hasClass('portfolio-full') ) {
452                var columns = SEMICOLON.initialize.defineColumns( element );
453                var containerWidth = element.width();
454                if( containerWidth == ( Math.floor(containerWidth/columns) * columns ) ) { containerWidth = containerWidth - 1; }
455                var postWidth = Math.floor(containerWidth/columns);
456                if( $body.hasClass('device-xxs') ) { var deviceSmallest = 1; } else { var deviceSmallest = 0; }
457                element.find(".portfolio-item").each(function(index){
458                    if( deviceSmallest == 0 && $(this).hasClass('wide') ) { var elementSize = ( postWidth*2 ); } else { var elementSize = postWidth; }
459                    $(this).css({"width":elementSize+"px"});
460                });
461            } else if( element.hasClass('masonry-thumbs') ) {
462                var columns = SEMICOLON.initialize.defineColumns( element ),
463                    containerWidth = element.innerWidth(),
464                    windowWidth = $window.width();
465                if( containerWidth == windowWidth ){
466                    containerWidth = windowWidth*1.004;
467                    element.css({ 'width': containerWidth+'px' });
468                }
469                var postWidth = (containerWidth/columns);
470
471                postWidth = Math.floor(postWidth);
472
473                if( ( postWidth * columns ) >= containerWidth ) { element.css({ 'margin-right': '-1px' }); }
474
475                element.children('a').css({"width":postWidth+"px"});
476
477                var bigImageNumber = element.attr('data-big');
478                if( bigImageNumber ) { bigImageNumber = Number(bigImageNumber) - 1; }
479                var firstElementWidth = element.find('a:eq(0)').outerWidth();
480
481                element.isotope({
482                    masonry: {
483                        columnWidth: firstElementWidth
484                    }
485                });
486
487                if( $.isNumeric( bigImageNumber ) ) {
488                    var t = setTimeout( function(){
489                        element.find('a:eq('+bigImageNumber+')').css({ width: firstElementWidth*2 + 'px' });
490                        element.isotope('layout');
491                    }, 1000 );
492                }
493            }
494
495        },
496
497        aspectResizer: function(){
498            var $aspectResizerEl = $('.aspect-resizer');
499            if( $aspectResizerEl.length > 0 ) {
500                $aspectResizerEl.each( function(){
501                    var element = $(this),
502                        elementW = element.inlineStyle('width'),
503                        elementH = element.inlineStyle('height'),
504                        elementPW = element.parent().innerWidth();
505                });
506            }
507        },
508
509        dataStyles: function(){
510            var $dataStyleXxs = $('[data-style-xxs]'),
511                $dataStyleXs = $('[data-style-xs]'),
512                $dataStyleSm = $('[data-style-sm]'),
513                $dataStyleMd = $('[data-style-md]'),
514                $dataStyleLg = $('[data-style-lg]');
515
516            if( $dataStyleXxs.length > 0 ) {
517                $dataStyleXxs.each( function(){
518                    var element = $(this),
519                        elementStyle = element.attr('data-style-xxs');
520
521                    if( $body.hasClass('device-xxs') ) {
522                        if( elementStyle != '' ) { element.attr( 'style', elementStyle ); }
523                    }
524                });
525            }
526
527            if( $dataStyleXs.length > 0 ) {
528                $dataStyleXs.each( function(){
529                    var element = $(this),
530                        elementStyle = element.attr('data-style-xs');
531
532                    if( $body.hasClass('device-xs') ) {
533                        if( elementStyle != '' ) { element.attr( 'style', elementStyle ); }
534                    }
535                });
536            }
537
538            if( $dataStyleSm.length > 0 ) {
539                $dataStyleSm.each( function(){
540                    var element = $(this),
541                        elementStyle = element.attr('data-style-sm');
542
543                    if( $body.hasClass('device-sm') ) {
544                        if( elementStyle != '' ) { element.attr( 'style', elementStyle ); }
545                    }
546                });
547            }
548
549            if( $dataStyleMd.length > 0 ) {
550                $dataStyleMd.each( function(){
551                    var element = $(this),
552                        elementStyle = element.attr('data-style-md');
553
554                    if( $body.hasClass('device-md') ) {
555                        if( elementStyle != '' ) { element.attr( 'style', elementStyle ); }
556                    }
557                });
558            }
559
560            if( $dataStyleLg.length > 0 ) {
561                $dataStyleLg.each( function(){
562                    var element = $(this),
563                        elementStyle = element.attr('data-style-lg');
564
565                    if( $body.hasClass('device-lg') ) {
566                        if( elementStyle != '' ) { element.attr( 'style', elementStyle ); }
567                    }
568                });
569            }
570        },
571
572        dataResponsiveHeights: function(){
573            var $dataHeightXxs = $('[data-height-xxs]'),
574                $dataHeightXs = $('[data-height-xs]'),
575                $dataHeightSm = $('[data-height-sm]'),
576                $dataHeightMd = $('[data-height-md]'),
577                $dataHeightLg = $('[data-height-lg]');
578
579            if( $dataHeightXxs.length > 0 ) {
580                $dataHeightXxs.each( function(){
581                    var element = $(this),
582                        elementHeight = element.attr('data-height-xxs');
583
584                    if( $body.hasClass('device-xxs') ) {
585                        if( elementHeight != '' ) { element.css( 'height', elementHeight ); }
586                    }
587                });
588            }
589
590            if( $dataHeightXs.length > 0 ) {
591                $dataHeightXs.each( function(){
592                    var element = $(this),
593                        elementHeight = element.attr('data-height-xs');
594
595                    if( $body.hasClass('device-xs') ) {
596                        if( elementHeight != '' ) { element.css( 'height', elementHeight ); }
597                    }
598                });
599            }
600
601            if( $dataHeightSm.length > 0 ) {
602                $dataHeightSm.each( function(){
603                    var element = $(this),
604                        elementHeight = element.attr('data-height-sm');
605
606                    if( $body.hasClass('device-sm') ) {
607                        if( elementHeight != '' ) { element.css( 'height', elementHeight ); }
608                    }
609                });
610            }
611
612            if( $dataHeightMd.length > 0 ) {
613                $dataHeightMd.each( function(){
614                    var element = $(this),
615                        elementHeight = element.attr('data-height-md');
616
617                    if( $body.hasClass('device-md') ) {
618                        if( elementHeight != '' ) { element.css( 'height', elementHeight ); }
619                    }
620                });
621            }
622
623            if( $dataHeightLg.length > 0 ) {
624                $dataHeightLg.each( function(){
625                    var element = $(this),
626                        elementHeight = element.attr('data-height-lg');
627
628                    if( $body.hasClass('device-lg') ) {
629                        if( elementHeight != '' ) { element.css( 'height', elementHeight ); }
630                    }
631                });
632            }
633        }
634
635    };
636
637    SEMICOLON.header = {
638
639        init: function(){
640
641            SEMICOLON.header.superfish();
642            SEMICOLON.header.menufunctions();
643            SEMICOLON.header.fullWidthMenu();
644            SEMICOLON.header.stickyMenu();
645            SEMICOLON.header.sideHeader();
646            SEMICOLON.header.onePageScroll();
647            SEMICOLON.header.onepageScroller();
648            SEMICOLON.header.darkLogo();
649            SEMICOLON.header.topsearch();
650            SEMICOLON.header.topcart();
651
652        },
653
654        superfish: function(){
655
656            if ( $().superfish ) {
657                if( $body.hasClass('device-lg') || $body.hasClass('device-md') ) {
658                    $('#primary-menu ul ul, #primary-menu ul .mega-menu-content').css('display', 'block');
659                    SEMICOLON.header.menuInvert();
660                }
661
662                $('body:not(.side-header) #primary-menu > ul, body:not(.side-header) #primary-menu > div > ul,.top-links > ul').superfish({
663                    popUpSelector: 'ul,.mega-menu-content,.top-link-section',
664                    delay: 250,
665                    speed: 350,
666                    animation: {opacity:'show'},
667                    animationOut:  {opacity:'hide'},
668                    cssArrows: false
669                });
670
671                $('body.side-header #primary-menu > ul').superfish({
672                    popUpSelector: 'ul',
673                    delay: 250,
674                    speed: 350,
675                    animation: {opacity:'show',height:'show'},
676                    animationOut:  {opacity:'hide',height:'hide'},
677                    cssArrows: false
678                });
679            }
680
681        },
682
683        menuInvert: function() {
684
685            $('#primary-menu .mega-menu-content, #primary-menu ul ul').each( function( index, element ){
686                var $menuChildElement = $(element);
687                var windowWidth = $window.width();
688                var menuChildOffset = $menuChildElement.offset();
689                var menuChildWidth = $menuChildElement.width();
690                var menuChildLeft = menuChildOffset.left;
691
692                if(windowWidth - (menuChildWidth + menuChildLeft) < 0) {
693                    $menuChildElement.addClass('menu-pos-invert');
694                }
695            });
696
697        },
698
699        menufunctions: function(){
700
701            $( '#primary-menu ul li:has(ul)' ).addClass('sub-menu');
702            $( '.top-links ul li:has(ul) > a' ).append( ' <i class="icon-angle-down"></i>' );
703            $( '.top-links > ul' ).addClass( 'clearfix' );
704
705            if( $body.hasClass('device-lg') || $body.hasClass('device-md') ) {
706                $('#primary-menu.sub-title > ul > li,#primary-menu.sub-title > div > ul > li').hover(function() {
707                    $(this).prev().css({ backgroundImage : 'none' });
708                }, function() {
709                    $(this).prev().css({ backgroundImage : 'url("images/icons/menu-divider.png")' });
710                });
711
712                $('#primary-menu.sub-title').children('ul').children('.current').prev().css({ backgroundImage : 'none' });
713                $('#primary-menu.sub-title').children('div').children('ul').children('.current').prev().css({ backgroundImage : 'none' });
714            }
715
716            if( SEMICOLON.isMobile.Android() ) {
717                $( '#primary-menu ul li.sub-menu' ).children('a').on('touchstart', function(e){
718                    if( !$(this).parent('li.sub-menu').hasClass('sfHover') ) {
719                        e.preventDefault();
720                    }
721                });
722            }
723
724        },
725
726        fullWidthMenu: function(){
727            if( $body.hasClass('stretched') ) {
728                if( $header.find('.container-fullwidth').length > 0 ) { $('.mega-menu .mega-menu-content').css({ 'width': $wrapper.width() - 120 }); }
729                if( $header.hasClass('full-header') ) { $('.mega-menu .mega-menu-content').css({ 'width': $wrapper.width() - 60 }); }
730            } else {
731                if( $header.find('.container-fullwidth').length > 0 ) { $('.mega-menu .mega-menu-content').css({ 'width': $wrapper.width() - 120 }); }
732                if( $header.hasClass('full-header') ) { $('.mega-menu .mega-menu-content').css({ 'width': $wrapper.width() - 80 }); }
733            }
734        },
735
736        stickyMenu: function( headerOffset ){
737            if( ( $body.hasClass('device-lg') || $body.hasClass('device-md') ) && !SEMICOLON.isMobile.any() ) {
738                if ($window.scrollTop() > headerOffset) {
739                    $('body:not(.side-header) #header:not(.no-sticky)').addClass('sticky-header');
740                    $('#page-menu:not(.dots-menu,.no-sticky)').addClass('sticky-page-menu');
741                    if( !$headerWrap.hasClass('force-not-dark') ) { $headerWrap.removeClass('not-dark'); }
742                    SEMICOLON.header.stickyMenuClass();
743                } else {
744                    SEMICOLON.header.removeStickyness();
745                }
746            } else {
747                SEMICOLON.header.removeStickyness();
748            }
749        },
750
751        removeStickyness: function(){
752            if( $header.hasClass('sticky-header') ){
753                $('body:not(.side-header) #header:not(.no-sticky)').removeClass('sticky-header');
754                $('#page-menu:not(.dots-menu,.no-sticky)').removeClass('sticky-page-menu');
755                $header.removeClass().addClass(oldHeaderClasses);
756                $headerWrap.removeClass().addClass(oldHeaderWrapClasses);
757                if( !$headerWrap.hasClass('force-not-dark') ) { $headerWrap.removeClass('not-dark'); }
758                SEMICOLON.slider.swiperSliderMenu();
759                SEMICOLON.slider.revolutionSliderMenu();
760            }
761        },
762
763        sideHeader: function(){
764            $("#header-trigger").click(function(){
765                $('body.open-header').toggleClass("side-header-open");
766                return false;
767            });
768        },
769
770        onePageScroll: function(){
771            $onePageMenuEl.find('a[data-href]').click(function(){
772                var divScrollToAnchor = $(this).attr('data-href');
773
774                if( $( divScrollToAnchor ).length > 0 ) {
775                    var topOffsetScroll = SEMICOLON.initialize.topScrollOffset();
776
777                    if( $onePageMenuEl.hasClass('no-offset') ) { topOffsetScroll = 0; }
778
779                    $onePageMenuEl.find('li').removeClass('current');
780                    $onePageMenuEl.find('a[data-href="' + divScrollToAnchor + '"]').parent('li').addClass('current');
781
782                    $('html,body').stop(true).animate({
783                        'scrollTop': $( divScrollToAnchor ).offset().top - topOffsetScroll
784                    }, 1000, 'easeOutQuad');
785                }
786
787                return false;
788            });
789        },
790
791        onepageScroller: function(){
792            $onePageMenuEl.find('li').removeClass('current');
793            $onePageMenuEl.find('a[data-href="#' + SEMICOLON.header.onePageCurrentSection() + '"]').parent('li').addClass('current');
794        },
795
796        onePageCurrentSection: function(){
797            var currentOnePageSection = 'home';
798
799            $pageSectionEl.each(function(index) {
800                var h = $(this).offset().top;
801                var y = $window.scrollTop();
802
803                if( y + 150 >= h && y < h + $(this).height() && $(this).attr('id') != currentOnePageSection ) {
804                    currentOnePageSection = $(this).attr('id');
805                }
806            });
807
808            return currentOnePageSection;
809        },
810
811        darkLogo: function(){
812            if( ( $header.hasClass('dark') || $body.hasClass('dark') ) && !$headerWrap.hasClass('not-dark') ) {
813                if( defaultDarkLogo ){ defaultLogo.find('img').attr('src', defaultDarkLogo); }
814                if( retinaDarkLogo ){ retinaLogo.find('img').attr('src', retinaDarkLogo); }
815            } else {
816                if( defaultLogoImg ){ defaultLogo.find('img').attr('src', defaultLogoImg); }
817                if( retinaLogoImg ){ retinaLogo.find('img').attr('src', retinaLogoImg); }
818            }
819        },
820
821        stickyMenuClass: function(){
822            if( stickyMenuClasses ) { var newClassesArray = stickyMenuClasses.split(/ +/); } else { var newClassesArray = ''; }
823            var noOfNewClasses = newClassesArray.length;
824
825            if( noOfNewClasses > 0 ) {
826                var i = 0;
827                for( i=0; i<noOfNewClasses; i++ ) {
828                    if( newClassesArray[i] == 'not-dark' ) {
829                        $headerWrap.addClass('not-dark');
830                    } else if( newClassesArray[i] == 'dark' ) {
831                        $headerWrap.removeClass('not-dark force-not-dark');
832                    } else if( !$header.hasClass( newClassesArray[i] ) ) {
833                        $header.addClass( newClassesArray[i] );
834                    }
835                }
836            }
837
838        },
839
840        topsocial: function(){
841            if( $topSocialEl.length > 0 ){
842                if( $body.hasClass('device-md') || $body.hasClass('device-lg') ) {
843                    $topSocialEl.show();
844                    $topSocialEl.find('a').css({width: 40});
845
846                    $topSocialEl.find('.ts-text').each( function(){
847                        var $clone = $(this).clone().css({'visibility': 'hidden', 'display': 'inline-block', 'font-size': '13px', 'font-weight':'bold'}).appendTo($body),
848                            cloneWidth = $clone.innerWidth() + 52;
849                        $(this).parent('a').attr('data-hover-width',cloneWidth);
850                        $clone.remove();
851                    });
852
853                    $topSocialEl.find('a').hover(function() {
854                        if( $(this).find('.ts-text').length > 0 ) {
855                            $(this).css({width: $(this).attr('data-hover-width')});
856                        }
857                    }, function() {
858                        $(this).css({width: 40});
859                    });
860                } else {
861                    $topSocialEl.show();
862                    $topSocialEl.find('a').css({width: 40});
863
864                    $topSocialEl.find('a').each(function() {
865                        var topIconTitle = $(this).find('.ts-text').text();
866                        $(this).attr('title', topIconTitle);
867                    });
868
869                    $topSocialEl.find('a').hover(function() {
870                        $(this).css({width: 40});
871                    }, function() {
872                        $(this).css({width: 40});
873                    });
874
875                    if( $body.hasClass('device-xxs') ) {
876                        $topSocialEl.hide();
877                        $topSocialEl.slice(0, 8).show();
878                    }
879                }
880            }
881        },
882
883        topsearch: function(){
884
885            $(document).on('click', function(event) {
886                if (!$(event.target).closest('#topsearch').length && !$(event.target).closest('#topsearchform').length) { $body.toggleClass('topsearch-active', false); }
887                if (!$(event.target).closest('#top-cart').length) { $topCart.toggleClass('top-cart-open', false); }
888                if (!$(event.target).closest('#page-menu').length) { $pagemenu.toggleClass('pagemenu-active', false); }
889            });
890
891            $("#topsearchtrigger").click(function(e){
892                $body.toggleClass('topsearch-active');
893                $topCart.toggleClass('top-cart-open', false);
894                $( '#primary-menu > ul, #primary-menu > div > ul' ).toggleClass("show", false);
895                $pagemenu.toggleClass('pagemenu-active', false);
896                if ($body.hasClass('topsearch-active')){
897                    $topSearch.find('input').focus();
898                }
899                e.stopPropagation();
900                e.preventDefault();
901            });
902
903        },
904
905        topcart: function(){
906
907            $("#top-cart-trigger").click(function(e){
908                $pagemenu.toggleClass('pagemenu-active', false);
909                $topCart.toggleClass('top-cart-open');
910                e.stopPropagation();
911                e.preventDefault();
912            });
913
914        }
915
916    };
917
918    SEMICOLON.slider = {
919
920        init: function() {
921
922            SEMICOLON.slider.sliderParallax();
923            SEMICOLON.slider.sliderElementsFade();
924            SEMICOLON.slider.captionPosition();
925
926        },
927
928        sliderParallaxOffset: function(){
929            var sliderParallaxOffsetTop = 0;
930            var headerHeight = $header.outerHeight();
931            if( $('body').hasClass('side-header') ) { headerHeight = 0; }
932            if( $pageTitle.length > 0 ) {
933                var pageTitleHeight = $pageTitle.outerHeight();
934                sliderParallaxOffsetTop = pageTitleHeight + headerHeight;
935            } else {
936                sliderParallaxOffsetTop = headerHeight;
937            }
938
939            if( $slider.next('#header').length > 0 ) { sliderParallaxOffsetTop = 0; }
940
941            return sliderParallaxOffsetTop;
942        },
943
944        sliderParallax: function(){
945            if( ( $body.hasClass('device-lg') || $body.hasClass('device-md') ) && !SEMICOLON.isMobile.any() ) {
946                var parallaxOffsetTop = SEMICOLON.slider.sliderParallaxOffset();
947                if ($window.scrollTop() > parallaxOffsetTop) {
948                    $sliderParallaxEl.css({ 'transform' : 'translateY('+ (($window.scrollTop()-parallaxOffsetTop) / 1.5 ) +'px)' });
949                    $('.slider-parallax .slider-caption,.ei-title').css({ 'transform' : 'translateY(-'+ (($window.scrollTop()-parallaxOffsetTop) / 7 ) +'px)' });
950                } else {
951                    $('.slider-parallax,.slider-parallax .slider-caption,.ei-title').css({ 'transform' : 'translateY(0)' });
952                }
953            } else {
954                $('.slider-parallax,.slider-parallax .slider-caption,.ei-title').css({ 'transform' : 'translateY(0)' });
955            }
956        },
957
958        sliderElementsFade: function(){
959            if( ( $body.hasClass('device-lg') || $body.hasClass('device-md') ) && !SEMICOLON.isMobile.any() ) {
960                var parallaxOffsetTop = SEMICOLON.slider.sliderParallaxOffset();
961                if( $slider.length > 0 ) {
962                    if( $header.hasClass('transparent-header') || $('body').hasClass('side-header') ) { var tHeaderOffset = 100; } else { var tHeaderOffset = 0; }
963                    $sliderParallaxEl.find('#slider-arrow-left,#slider-arrow-right,.vertical-middle:not(.no-fade),.slider-caption,.ei-title,.camera_prev,.camera_next').css({'opacity':( ( 100 + ( $slider.offset().top + parallaxOffsetTop + tHeaderOffset ) - $window.scrollTop() ) ) /90});
964                }
965            } else {
966                $sliderParallaxEl.find('#slider-arrow-left,#slider-arrow-right,.vertical-middle:not(.no-fade),.slider-caption,.ei-title,.camera_prev,.camera_next').css({'opacity': 1});
967            }
968        },
969
970        captionPosition: function(){
971            $slider.find('.slider-caption').each(function(){
972                var scapHeight = $(this).outerHeight();
973                var scapSliderHeight = $slider.outerHeight();
974                if( $(this).parents('#slider').prev('#header').hasClass('transparent-header') && ( $body.hasClass('device-lg') || $body.hasClass('device-md') ) ) {
975                    if( $(this).parents('#slider').prev('#header').hasClass('floating-header') ) {
976                        $(this).css({ top: ( scapSliderHeight + 160 - scapHeight ) / 2 + 'px' });
977                    } else {
978                        $(this).css({ top: ( scapSliderHeight + 100 - scapHeight ) / 2 + 'px' });
979                    }
980                } else {
981                    $(this).css({ top: ( scapSliderHeight - scapHeight ) / 2 + 'px' });
982                }
983            });
984        },
985
986        swiperSliderMenu: function(){
987            if( $body.hasClass('device-lg') || $body.hasClass('device-md') ) {
988                var activeSlide = $slider.find('.swiper-slide.swiper-slide-visible');
989                SEMICOLON.slider.headerSchemeChanger(activeSlide);
990            }
991        },
992
993        revolutionSliderMenu: function(){
994            if( $body.hasClass('device-lg') || $body.hasClass('device-md') ) {
995                var activeSlide = $slider.find('.current-sr-slide-visible');
996                SEMICOLON.slider.headerSchemeChanger(activeSlide);
997            }
998        },
999
1000        headerSchemeChanger: function( activeSlide ){
1001            if( activeSlide.length > 0 ) {
1002                if( activeSlide.hasClass('dark') ){
1003                    $('#header.transparent-header:not(.sticky-header,.semi-transparent,.floating-header)').addClass('dark');
1004                    $('#header.transparent-header.sticky-header,#header.transparent-header.semi-transparent.sticky-header,#header.transparent-header.floating-header.sticky-header').removeClass('dark');
1005                    $headerWrap.removeClass('not-dark');
1006                } else {
1007                    if( $body.hasClass('dark') ) {
1008                        activeSlide.addClass('not-dark');
1009                        $('#header.transparent-header:not(.semi-transparent,.floating-header)').removeClass('dark');
1010                        $('#header.transparent-header:not(.sticky-header,.semi-transparent,.floating-header)').find('#header-wrap').addClass('not-dark');
1011                    } else {
1012                        $('#header.transparent-header:not(.semi-transparent,.floating-header)').removeClass('dark');
1013                        $headerWrap.removeClass('not-dark');
1014                    }
1015                }
1016                SEMICOLON.header.darkLogo();
1017            }
1018        },
1019
1020        owlCaptionInit: function(){
1021            if( $owlCarouselEl.length > 0 ){
1022                $owlCarouselEl.each( function(){
1023                    var element = $(this);
1024                    if( element.find('.owl-dot').length > 0 ) {
1025                        element.find('.owl-controls').addClass('with-carousel-dots');
1026                    }
1027                });
1028            }
1029        }
1030
1031    };
1032
1033    SEMICOLON.portfolio = {
1034
1035        init: function(){
1036
1037            SEMICOLON.portfolio.ajaxload();
1038
1039        },
1040
1041        portfolioDescMargin: function(){
1042            var $portfolioOverlayEl = $('.portfolio-overlay');
1043            if( $portfolioOverlayEl.length > 0 ){
1044                $portfolioOverlayEl.each(function() {
1045                    var element = $(this);
1046                    if( element.find('.portfolio-desc').length > 0 ) {
1047                        var portfolioOverlayHeight = element.outerHeight();
1048                        var portfolioOverlayDescHeight = element.find('.portfolio-desc').outerHeight();
1049                        if( element.find('a.left-icon').length > 0 || element.find('a.right-icon').length > 0 || element.find('a.center-icon').length > 0 ) {
1050                            var portfolioOverlayIconHeight = 40 + 20;
1051                        } else {
1052                            var portfolioOverlayIconHeight = 0;
1053                        }
1054                        var portfolioOverlayMiddleAlign = ( portfolioOverlayHeight - portfolioOverlayDescHeight - portfolioOverlayIconHeight ) / 2
1055                        element.find('.portfolio-desc').css({ 'margin-top': portfolioOverlayMiddleAlign });
1056                    }
1057                });
1058            }
1059        },
1060
1061        arrange: function(){
1062            SEMICOLON.initialize.setFullColumnWidth( $portfolio );
1063            $('#portfolio.portfolio-full').isotope('layout');
1064        },
1065
1066        ajaxload: function(){
1067            $('.portfolio-ajax .portfolio-item a.center-icon').click( function(e) {
1068                var portPostId = $(this).parents('.portfolio-item').attr('id');
1069                if( !$(this).parents('.portfolio-item').hasClass('portfolio-active') ) {
1070                    SEMICOLON.portfolio.loadItem(portPostId, prevPostPortId);
1071                }
1072                e.preventDefault();
1073            });
1074        },
1075
1076        newNextPrev: function( portPostId ){
1077            var portNext = SEMICOLON.portfolio.getNextItem(portPostId);
1078            var portPrev = SEMICOLON.portfolio.getPrevItem(portPostId);
1079            $('#next-portfolio').attr('data-id', portNext);
1080            $('#prev-portfolio').attr('data-id', portPrev);
1081        },
1082
1083        loadItem: function( portPostId, prevPostPortId, getIt ){
1084            if(!getIt) { getIt = false; }
1085            var portNext = SEMICOLON.portfolio.getNextItem(portPostId);
1086            var portPrev = SEMICOLON.portfolio.getPrevItem(portPostId);
1087            if(getIt == false) {
1088                SEMICOLON.portfolio.closeItem();
1089                $portfolioAjaxLoader.fadeIn();
1090                var portfolioDataLoader = $('#' + portPostId).attr('data-loader');
1091                $portfolioDetailsContainer.load(portfolioDataLoader, { portid: portPostId, portnext: portNext, portprev: portPrev },
1092                function(){
1093                    SEMICOLON.portfolio.initializeAjax(portPostId);
1094                    SEMICOLON.portfolio.openItem();
1095                    $portfolioItems.removeClass('portfolio-active');
1096                    $('#' + portPostId).addClass('portfolio-active');
1097                });
1098            }
1099        },
1100
1101        closeItem: function(){
1102            if( $portfolioDetails && $portfolioDetails.height() > 32 ) {
1103                $portfolioAjaxLoader.fadeIn();
1104                $portfolioDetails.find('#portfolio-ajax-single').fadeOut('600', function(){
1105                    $(this).remove();
1106                });
1107                $portfolioDetails.removeClass('portfolio-ajax-opened');
1108            }
1109        },
1110
1111        openItem: function(){
1112            var noOfImages = $portfolioDetails.find('img').length;
1113            var noLoaded = 0;
1114
1115            if( noOfImages > 0 ) {
1116                $portfolioDetails.find('img').on('load', function(){
1117                    noLoaded++;
1118                    var topOffsetScroll = SEMICOLON.initialize.topScrollOffset();
1119                    if(noOfImages === noLoaded) {
1120                        $portfolioDetailsContainer.css({ 'display': 'block' });
1121                        $portfolioDetails.addClass('portfolio-ajax-opened');
1122                        $portfolioAjaxLoader.fadeOut();
1123                        var t=setTimeout(function(){
1124                            SEMICOLON.widget.loadFlexSlider();
1125                            SEMICOLON.initialize.lightbox();
1126                            SEMICOLON.initialize.resizeVideos();
1127                            SEMICOLON.widget.masonryThumbs();
1128                            $('html,body').stop(true).animate({
1129                                'scrollTop': $portfolioDetails.offset().top - topOffsetScroll
1130                            }, 900, 'easeOutQuad');
1131                        },500);
1132                    }
1133                });
1134            } else {
1135                var topOffsetScroll = SEMICOLON.initialize.topScrollOffset();
1136                $portfolioDetailsContainer.css({ 'display': 'block' });
1137                $portfolioDetails.addClass('portfolio-ajax-opened');
1138                $portfolioAjaxLoader.fadeOut();
1139                var t=setTimeout(function(){
1140                    SEMICOLON.widget.loadFlexSlider();
1141                    SEMICOLON.initialize.lightbox();
1142                    SEMICOLON.initialize.resizeVideos();
1143                    SEMICOLON.widget.masonryThumbs();
1144                    $('html,body').stop(true).animate({
1145                        'scrollTop': $portfolioDetails.offset().top - topOffsetScroll
1146                    }, 900, 'easeOutQuad');
1147                },500);
1148            }
1149        },
1150
1151        getNextItem: function( portPostId ){
1152            var portNext = '';
1153            var hasNext = $('#' + portPostId).next();
1154            if(hasNext.length != 0) {
1155                portNext = hasNext.attr('id');
1156            }
1157            return portNext;
1158        },
1159
1160        getPrevItem: function( portPostId ){
1161            var portPrev = '';
1162            var hasPrev = $('#' + portPostId).prev();
1163            if(hasPrev.length != 0) {
1164                portPrev = hasPrev.attr('id');
1165            }
1166            return portPrev;
1167        },
1168
1169        initializeAjax: function( portPostId ){
1170            prevPostPortId = $('#' + portPostId);
1171
1172            $('#next-portfolio, #prev-portfolio').click( function() {
1173                var portPostId = $(this).attr('data-id');
1174                $portfolioItems.removeClass('portfolio-active');
1175                $('#' + portPostId).addClass('portfolio-active');
1176                SEMICOLON.portfolio.loadItem(portPostId,prevPostPortId);
1177                return false;
1178            });
1179
1180            $('#close-portfolio').click( function() {
1181                $portfolioDetailsContainer.fadeOut('600', function(){
1182                    $portfolioDetails.find('#portfolio-ajax-single').remove();
1183                });
1184                $portfolioDetails.removeClass('portfolio-ajax-opened');
1185                $portfolioItems.removeClass('portfolio-active');
1186                return false;
1187            });
1188        }
1189
1190    };
1191
1192    SEMICOLON.widget = {
1193
1194        init: function(){
1195
1196            SEMICOLON.widget.parallax();
1197            SEMICOLON.widget.animations();
1198            SEMICOLON.widget.youtubeBgVideo();
1199            SEMICOLON.widget.toggles();
1200            SEMICOLON.widget.accordions();
1201            SEMICOLON.widget.counter();
1202            SEMICOLON.widget.roundedSkill();
1203            SEMICOLON.widget.progress();
1204            SEMICOLON.widget.flickrFeed();
1205            SEMICOLON.widget.instagramPhotos( '36286274.b9e559e.4824cbc1d0c94c23827dc4a2267a9f6b', 'b9e559ec7c284375bf41e9a9fb72ae01' );
1206            SEMICOLON.widget.dribbbleShots();
1207            SEMICOLON.widget.textRotater();
1208            SEMICOLON.widget.linkScroll();
1209            SEMICOLON.widget.extras();
1210
1211        },
1212
1213        parallax: function(){
1214            if( !SEMICOLON.isMobile.any() ){
1215                $.stellar({
1216                    horizontalScrolling: false,
1217                    verticalOffset: 150,
1218                    responsive: true
1219                });
1220            } else {
1221                $parallaxEl.addClass('mobile-parallax');
1222            }
1223        },
1224
1225        animations: function(){
1226            var $dataAnimateEl = $('[data-animate]');
1227            if( $dataAnimateEl.length > 0 ){
1228                if( $body.hasClass('device-lg') || $body.hasClass('device-md') || $body.hasClass('device-sm') ){
1229                    $dataAnimateEl.each(function(){
1230                        var element = $(this),
1231                            animationDelay = element.attr('data-delay'),
1232                            animationDelayTime = 0;
1233
1234                        if( animationDelay ) { animationDelayTime = Number( animationDelay ) + 500; } else { animationDelayTime = 500; }
1235
1236                        if( !element.hasClass('animated') ) {
1237                            element.addClass('not-animated');
1238                            var elementAnimation = element.attr('data-animate');
1239                            element.appear(function () {
1240                                setTimeout(function() {
1241                                    element.removeClass('not-animated').addClass( elementAnimation + ' animated');
1242                                }, animationDelayTime);
1243                            },{accX: 0, accY: -120},'easeInCubic');
1244                        }
1245                    });
1246                }
1247            }
1248        },
1249
1250        loadFlexSlider: function(){
1251            var $flexSliderEl = $('.fslider').find('.flexslider');
1252            if( $flexSliderEl.length > 0 ){
1253                $flexSliderEl.each(function() {
1254                    var $flexsSlider = $(this);
1255                    var flexsAnimation = $flexsSlider.parent('.fslider').attr('data-animation');
1256                    var flexsEasing = $flexsSlider.parent('.fslider').attr('data-easing');
1257                    var flexsDirection = $flexsSlider.parent('.fslider').attr('data-direction');
1258                    var flexsSlideshow = $flexsSlider.parent('.fslider').attr('data-slideshow');
1259                    var flexsPause = $flexsSlider.parent('.fslider').attr('data-pause');
1260                    var flexsSpeed = $flexsSlider.parent('.fslider').attr('data-speed');
1261                    var flexsVideo = $flexsSlider.parent('.fslider').attr('data-video');
1262                    var flexsPagi = $flexsSlider.parent('.fslider').attr('data-pagi');
1263                    var flexsArrows = $flexsSlider.parent('.fslider').attr('data-arrows');
1264                    var flexsThumbs = $flexsSlider.parent('.fslider').attr('data-thumbs');
1265                    var flexsSheight = true;
1266                    var flexsUseCSS = false;
1267
1268                    if( !flexsAnimation ) { flexsAnimation = 'slide'; }
1269                    if( !flexsEasing || flexsEasing == 'swing' ) {
1270                        flexsEasing = 'swing';
1271                        flexsUseCSS = true;
1272                    }
1273                    if( !flexsDirection ) { flexsDirection = 'horizontal'; }
1274                    if( !flexsSlideshow ) { flexsSlideshow = true; } else { flexsSlideshow = false; }
1275                    if( !flexsPause ) { flexsPause = 5000; }
1276                    if( !flexsSpeed ) { flexsSpeed = 600; }
1277                    if( !flexsVideo ) { flexsVideo = false; }
1278                    if( flexsDirection == 'vertical' ) { flexsSheight = false; }
1279                    if( flexsPagi == 'false' ) { flexsPagi = false; } else { flexsPagi = true; }
1280                    if( flexsThumbs == 'true' ) { flexsPagi = 'thumbnails'; } else { flexsPagi = flexsPagi; }
1281                    if( flexsArrows == 'false' ) { flexsArrows = false; } else { flexsArrows = true; }
1282
1283                    $flexsSlider.flexslider({
1284                        selector: ".slider-wrap > .slide",
1285                        animation: flexsAnimation,
1286                        easing: flexsEasing,
1287                        direction: flexsDirection,
1288                        slideshow: flexsSlideshow,
1289                        slideshowSpeed: Number(flexsPause),
1290                        animationSpeed: Number(flexsSpeed),
1291                        pauseOnHover: true,
1292                        video: flexsVideo,
1293                        controlNav: flexsPagi,
1294                        directionNav: flexsArrows,
1295                        smoothHeight: flexsSheight,
1296                        useCSS: flexsUseCSS,
1297                        start: function(slider){
1298                            SEMICOLON.widget.animations();
1299                            SEMICOLON.initialize.verticalMiddle();
1300                            slider.parent().removeClass('preloader2');
1301                            var t = setTimeout( function(){ $('#portfolio.portfolio-masonry,#portfolio.portfolio-full,#posts.post-masonry').isotope('layout'); }, 1200 );
1302                            SEMICOLON.initialize.lightbox();
1303                            $('.flex-prev').html('<i class="icon-angle-left"></i>');
1304                            $('.flex-next').html('<i class="icon-angle-right"></i>');
1305                            SEMICOLON.portfolio.portfolioDescMargin();
1306                        },
1307                        after: function(){
1308                            if( $portfolio.has('portfolio-full') ) {
1309                                $('#portfolio.portfolio-full').isotope('layout');
1310                                SEMICOLON.portfolio.portfolioDescMargin();
1311                            }
1312                        }
1313                    });
1314                });
1315            }
1316        },
1317
1318        html5Video: function(){
1319            $('.portfolio-single-image:has(video),.entry-image.parallax:has(video),#page-title:has(video),#slider:not(.revoslider-wrap):has(video),.section:has(video)').each(function(){
1320                var outerContainerWidth = $(this).outerWidth();
1321                var outerContainerHeight = $(this).outerHeight();
1322                var innerVideoWidth = $(this).find('video').outerWidth();
1323                var innerVideoHeight = $(this).find('video').outerHeight();
1324                if( innerVideoHeight < outerContainerHeight ) {
1325                    var videoAspectRatio = innerVideoWidth/innerVideoHeight;
1326                    var newVideoWidth = outerContainerHeight * videoAspectRatio;
1327                    var innerVideoPosition = (newVideoWidth - outerContainerWidth) / 2;
1328                    $(this).find('video').css({ 'width': newVideoWidth+'px', 'height': outerContainerHeight+'px', 'left': -innerVideoPosition+'px' });
1329                } else {
1330                    var innerVideoPosition = (innerVideoHeight - outerContainerHeight) / 2;
1331                    $(this).find('video').css({ 'width': innerVideoWidth+'px', 'height': innerVideoHeight+'px', 'top': -innerVideoPosition+'px' });
1332                }
1333            });
1334        },
1335
1336        youtubeBgVideo: function(){
1337            if( $youtubeBgPlayerEl.length > 0 ){
1338                $youtubeBgPlayerEl.each( function(){
1339                    var element = $(this),
1340                        ytbgVideo = element.attr('data-video'),
1341                        ytbgMute = element.attr('data-mute'),
1342                        ytbgRatio = element.attr('data-ratio'),
1343                        ytbgQuality = element.attr('data-quality'),
1344                        ytbgOpacity = element.attr('data-opacity'),
1345                        ytbgContainer = element.attr('data-container'),
1346                        ytbgOptimize = element.attr('data-optimize'),
1347                        ytbgLoop = element.attr('data-loop'),
1348                        ytbgVolume = element.attr('data-volume'),
1349                        ytbgStart = element.attr('data-start'),
1350                        ytbgStop = element.attr('data-stop'),
1351                        ytbgAutoPlay = element.attr('data-autoplay'),
1352                        ytbgFullScreen = element.attr('data-fullscreen');
1353
1354                    if( ytbgMute == 'false' ) { ytbgMute = false; } else { ytbgMute = true; }
1355                    if( !ytbgRatio ) { ytbgRatio = '16/9'; }
1356                    if( !ytbgQuality ) { ytbgQuality = 'hd720'; }
1357                    if( !ytbgOpacity ) { ytbgOpacity = 1; }
1358                    if( !ytbgContainer ) { ytbgContainer = 'self'; }
1359                    if( ytbgOptimize == 'false' ) { ytbgOptimize = false; } else { ytbgOptimize = true; }
1360                    if( ytbgLoop == 'false' ) { ytbgLoop = false; } else { ytbgLoop = true; }
1361                    if( !ytbgVolume ) { ytbgVolume = 1; }
1362                    if( !ytbgStart ) { ytbgStart = 0; }
1363                    if( !ytbgStop ) { ytbgStop = 0; }
1364                    if( ytbgAutoPlay == 'false' ) { ytbgAutoPlay = false; } else { ytbgAutoPlay = true; }
1365                    if( ytbgFullScreen == 'true' ) { ytbgFullScreen = true; } else { ytbgFullScreen = false; }
1366
1367                    element.mb_YTPlayer({
1368                        videoURL: ytbgVideo,
1369                        mute: ytbgMute,
1370                        ratio: ytbgRatio,
1371                        quality: ytbgQuality,
1372                        opacity: ytbgOpacity,
1373                        containment: ytbgContainer,
1374                        optimizeDisplay: ytbgOptimize,
1375                        loop: ytbgLoop,
1376                        vol: ytbgVolume,
1377                        startAt: ytbgStart,
1378                        stopAt: ytbgStop,
1379                        autoplay: ytbgAutoPlay,
1380                        realfullscreen: ytbgFullScreen,
1381                        showYTLogo: false,
1382                        showControls: false
1383                    });
1384                });
1385            }
1386        },
1387
1388        toggles: function(){
1389            $(".togglec").hide();
1390            $(".togglet").click(function(){
1391                $(this).toggleClass("toggleta").next(".togglec").slideToggle(300);
1392                return true;
1393            });
1394        },
1395
1396        accordions: function(){
1397            var $accordionEl = $('.accordion');
1398            if( $accordionEl.length > 0 ){
1399                $accordionEl.each( function(){
1400                    var $accElement = $(this);
1401                    var accElementState = $accElement.attr('data-state');
1402
1403                    $accElement.find('.acc_content').hide();
1404
1405                    if( accElementState != 'closed' ) {
1406                        $accElement.find('.acctitle:first').addClass('acctitlec').next().show();
1407                    }
1408
1409                    $accElement.find('.acctitle').click(function(){
1410                        if( $(this).next().is(':hidden') ) {
1411                            $accElement.find('.acctitle').removeClass('acctitlec').next().slideUp("normal");
1412                            $(this).toggleClass('acctitlec').next().slideDown("normal");
1413                        }
1414                        return false;
1415                    });
1416                });
1417            }
1418        },
1419
1420        counter: function(){
1421            var $counterEl = $('.counter:not(.counter-instant)');
1422            if( $counterEl.length > 0 ){
1423                $counterEl.each(function(){
1424                    var element = $(this);
1425                    var counterElementComma = $(this).find('span').attr('data-comma');
1426                    if( !counterElementComma ) { counterElementComma = false; } else { counterElementComma = true; }
1427                    if( $body.hasClass('device-lg') || $body.hasClass('device-md') ){
1428                        element.appear( function(){
1429                            SEMICOLON.widget.runCounter( element, counterElementComma );
1430                        }
1430,{accX: 0, accY: -120},'easeInCubic');
1431                    } else {
1432                        SEMICOLON.widget.runCounter( element, counterElementComma );
1433                    }
1434                });
1435            }
1436        },
1437
1438        runCounter: function( counterElement,counterElementComma ){
1439            if( counterElementComma == true ) {
1440                counterElement.find('span').countTo({
1441                    formatter: function (value, options) {
1442                        value = value.toFixed(options.decimals);
1443                        value = value.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
1444                        return value;
1445                    }
1446                });
1447            } else {
1448                counterElement.find('span').countTo();
1449            }
1450        },
1451
1452        roundedSkill: function(){
1453            var $roundedSkillEl = $('.rounded-skill');
1454            if( $roundedSkillEl.length > 0 ){
1455                $roundedSkillEl.each(function(){
1456                    var element = $(this);
1457
1458                    var roundSkillSize = element.attr('data-size');
1459                    var roundSkillAnimate = element.attr('data-animate');
1460                    var roundSkillWidth = element.attr('data-width');
1461                    var roundSkillColor = element.attr('data-color');
1462                    var roundSkillTrackColor = element.attr('data-trackcolor');
1463
1464                    if( !roundSkillSize ) { roundSkillSize = 140; }
1465                    if( !roundSkillAnimate ) { roundSkillAnimate = 2000; }
1466                    if( !roundSkillWidth ) { roundSkillWidth = 8; }
1467                    if( !roundSkillColor ) { roundSkillColor = '#0093BF'; }
1468                    if( !roundSkillTrackColor ) { roundSkillTrackColor = 'rgba(0,0,0,0.04)'; }
1469
1470                    var properties = {roundSkillSize:roundSkillSize, roundSkillAnimate:roundSkillAnimate, roundSkillWidth:roundSkillWidth, roundSkillColor:roundSkillColor, roundSkillTrackColor:roundSkillTrackColor};
1471
1472                    if( $body.hasClass('device-lg') || $body.hasClass('device-md') ){
1473                        element.css({'width':roundSkillSize+'px','height':roundSkillSize+'px'}).animate({opacity: '0'}, 10);
1474                        element.appear( function(){
1475                            if (!element.hasClass('skills-animated')) {
1476                                element.css({opacity: '1'});
1477                                SEMICOLON.widget.runRoundedSkills( element, properties );
1478                                element.addClass('skills-animated');
1479                            }
1480                        },{accX: 0, accY: -120},'easeInCubic');
1481                    } else {
1482                        SEMICOLON.widget.runRoundedSkills( element, properties );
1483                    }
1484                });
1485            }
1486        },
1487
1488        runRoundedSkills: function( element, properties ){
1489            element.easyPieChart({
1490                size: Number(properties.roundSkillSize),
1491                animate: Number(properties.roundSkillAnimate),
1492                scaleColor: false,
1493                trackColor: properties.roundSkillTrackColor,
1494                lineWidth: Number(properties.roundSkillWidth),
1495                lineCap: 'square',
1496                barColor: properties.roundSkillColor
1497            });
1498        },
1499
1500        progress: function(){
1501            var $progressEl = $('.progress');
1502            if( $progressEl.length > 0 ){
1503                $progressEl.each(function(){
1504                    var element = $(this),
1505                        skillsBar = element.parent('li'),
1506                        skillValue = skillsBar.attr('data-percent');
1507
1508                    if( $body.hasClass('device-lg') || $body.hasClass('device-md') ){
1509                        element.appear( function(){
1510                            if (!skillsBar.hasClass('skills-animated')) {
1511                                element.find('.counter-instant span').countTo();
1512                                skillsBar.find('.progress').css({width: skillValue + "%"}).addClass('skills-animated');
1513                            }
1514                        }
1514,{accX: 0, accY: -120},'easeInCubic');
1515                    } else {
1516                        element.find('.counter-instant span').countTo();
1517                        skillsBar.find('.progress').css({width: skillValue + "%"});
1518                    }
1519                });
1520            }
1521        },
1522
1523        flickrFeed: function(){
1524            var $flickrFeedEl = $('.flickr-feed');
1525            if( $flickrFeedEl.length > 0 ){
1526                $flickrFeedEl.each(function() {
1527                    var element = $(this),
1528                        flickrFeedID = element.attr('data-id'),
1529                        flickrFeedCount = element.attr('data-count'),
1530                        flickrFeedType = element.attr('data-type'),
1531                        flickrFeedTypeGet = 'photos_public.gne';
1532
1533                    if( flickrFeedType == 'group' ) { flickrFeedTypeGet = 'groups_pool.gne'; }
1534                    if( !flickrFeedCount ) { flickrFeedCount = 9; }
1535
1536                    element.jflickrfeed({
1537                        feedapi: flickrFeedTypeGet,
1538                        limit: Number(flickrFeedCount),
1539                        qstrings: {
1540                            id: flickrFeedID
1541                        },
1542                        itemTemplate: '<a href="{{image_b}}" title="{{title}}" data-lightbox="gallery-item">' +
1543                                            '<img src="{{image_s}}" alt="{{title}}" />' +
1544                                      '</a>'
1545                    }, function(data) {
1546                        SEMICOLON.initialize.lightbox();
1547                    });
1548                });
1549            }
1550        },
1551
1552        instagramPhotos: function( c_accessToken, c_clientID ){
1553            var $instagramPhotosEl = $('.instagram-photos');
1554            if( $instagramPhotosEl.length > 0 ){
1555                $.fn.spectragram.accessData = {
1556                    accessToken: c_accessToken,
1557                    clientID: c_clientID
1558                };
1559
1560                $instagramPhotosEl.each(function() {
1561                    var element = $(this),
1562                        instaGramUsername = element.attr('data-user'),
1563                        instaGramTag = element.attr('data-tag'),
1564                        instaGramCount = element.attr('data-count'),
1565                        instaGramType = element.attr('data-type');
1566
1567                    if( !instaGramCount ) { instaGramCount = 9; }
1568
1569                    if( instaGramType == 'tag' ) {
1570                        element.spectragram('getRecentTagged',{
1571                            query: instaGramTag,
1572                            max: Number( instaGramCount ),
1573                            size: 'medium',
1574                            wrapEachWith: ' '
1575                        });
1576                    } else if( instaGramType == 'user' ) {
1577                        element.spectragram('getUserFeed',{
1578                            query: instaGramUsername,
1579                            max: Number( instaGramCount ),
1580                            size: 'medium',
1581                            wrapEachWith: ' '
1582                        });
1583                    } else {
1584                        element.spectragram('getPopular',{
1585                            max: Number( instaGramCount ),
1586                            size: 'medium',
1587                            wrapEachWith: ' '
1588                        });
1589                    }
1590                });
1591            }
1592        },
1593
1594        dribbbleShots: function(){
1595            var $dribbbleShotsEl = $('.dribbble-shots');
1596            if( $dribbbleShotsEl.length > 0 ){
1597                $dribbbleShotsEl.each(function() {
1598                    var element = $(this),
1599                        dribbbleUsername = element.attr('data-user'),
1600                        dribbbleCount = element.attr('data-count'),
1601                        dribbbleList = element.attr('data-list'),
1602                        dribbbleType = element.attr('data-type');
1603
1604                    if( !dribbbleCount ) { dribbbleCount = 9; }
1605
1606                    if( dribbbleType == 'follows' ) {
1607                        $.jribbble.getShotsThatPlayerFollows( dribbbleUsername , function (followedShots) {
1608                            var html = [];
1609                            $.each(followedShots.shots, function (i, shot) {
1610                                html.push('<a href="' + shot.url + '" target="_blank">');
1611                                html.push('<img src="' + shot.image_teaser_url + '" ');
1612                                html.push('alt="' + shot.title + '"></a>');
1613                            });
1614                            element.html(html.join(''));
1615                        }, {page: 1, per_page: Number(dribbbleCount)});
1616                    } else if( dribbbleType == 'user' ) {
1617                        $.jribbble.getShotsByPlayerId( dribbbleUsername , function (playerShots) {
1618                            var html = [];
1619                            $.each(playerShots.shots, function (i, shot) {
1620                                html.push('<a href="' + shot.url + '" target="_blank">');
1621                                html.push('<img src="' + shot.image_teaser_url + '" ');
1622                                html.push('alt="' + shot.title + '"></a>');
1623                            });
1624                            element.html(html.join(''));
1625                        }, {page: 1, per_page: Number(dribbbleCount)});
1626                    } else if( dribbbleType == 'list' ) {
1627                        $.jribbble.getShotsByList( dribbbleList , function (listDetails) {
1628                            var html = [];
1629                            $.each(listDetails.shots, function (i, shot) {
1630                                html.push('<a href="' + shot.url + '" target="_blank">');
1631                                html.push('<img src="' + shot.image_teaser_url + '" ');
1632                                html.push('alt="' + shot.title + '"></a>');
1633                            });
1634                            element.html(html.join(''));
1635                        }, {page: 1, per_page: Number(dribbbleCount)});
1636                    }
1637                });
1638            }
1639        },
1640
1641        masonryThumbs: function(){
1642            var $masonryThumbsEl = $('.masonry-thumbs');
1643            if( $masonryThumbsEl.length > 0 ){
1644                $masonryThumbsEl.each( function(){
1645                    var masonryItemContainer = $(this);
1646                    SEMICOLON.widget.masonryThumbsArrange( masonryItemContainer );
1647                });
1648            }
1649        },
1650
1651        masonryThumbsArrange: function( element ){
1652            SEMICOLON.initialize.setFullColumnWidth( element );
1653            element.isotope('layout');
1654        },
1655
1656        notifications: function( element ){
1657            toastr.clear();
1658            var notifyElement = $(element),
1659                notifyPosition = notifyElement.attr('data-notify-position'),
1660                notifyType = notifyElement.attr('data-notify-type'),
1661                notifyMsg = notifyElement.attr('data-notify-msg'),
1662                notifyCloseButton = notifyElement.attr('data-notify-close');
1663
1664            if( !notifyPosition ) { notifyPosition = 'toast-top-right'; } else { notifyPosition = 'toast-' + notifyElement.attr('data-notify-position'); }
1665            if( !notifyMsg ) { notifyMsg = 'Please set a message!'; }
1666            if( notifyCloseButton == 'true' ) { notifyCloseButton = true; } else { notifyCloseButton = false; }
1667
1668            toastr.options.positionClass = notifyPosition;
1669            toastr.options.closeButton = notifyCloseButton;
1670            toastr.options.closeHtml = '<button><i class="icon-remove"></i></button>';
1671
1672            if( notifyType == 'warning' ) {
1673                toastr.warning(notifyMsg);
1674            } else if( notifyType == 'error' ) {
1675                toastr.error(notifyMsg);
1676            } else if( notifyType == 'success' ) {
1677                toastr.success(notifyMsg);
1678            } else {
1679                toastr.info(notifyMsg);
1680            }
1681
1682            return false;
1683        },
1684
1685        textRotater: function(){
1686            if( $textRotaterEl.length > 0 ){
1687                $textRotaterEl.each(function(){
1688                    var element = $(this),
1689                        trRotate = $(this).attr('data-rotate'),
1690                        trSpeed = $(this).attr('data-speed'),
1691                        trSeparator = $(this).attr('data-separator');
1692
1693                    if( !trRotate ) { trRotate = "fade"; }
1694                    if( !trSpeed ) { trSpeed = 1200; }
1695                    if( !trSeparator ) { trSeparator = ","; }
1696
1697                    var tRotater = $(this).find('.t-rotate');
1698
1699                    tRotater.Morphext({
1700                        animation: trRotate,
1701                        separator: trSeparator,
1702                        speed: Number(trSpeed)
1703                    });
1704                });
1705            }
1706        },
1707
1708        linkScroll: function(){
1709            $("a[data-scrollto]").click(function(){
1710                var divScrollToAnchor = $(this).attr('data-scrollto');
1711                var topOffsetScroll = SEMICOLON.initialize.topScrollOffset();
1712
1713                $('html,body').stop(true).animate({
1714                    'scrollTop': $( divScrollToAnchor ).offset().top - topOffsetScroll
1715                }, 750, 'easeOutQuad');
1716
1717                return false;
1718            });
1719        },
1720
1721        extras: function(){
1722            $('[data-toggle="tooltip"]').tooltip();
1723            $('#primary-menu-trigger').click(function() {
1724                $( '#primary-menu > ul, #primary-menu > div > ul' ).toggleClass("show");
1725                return false;
1726            });
1727            $('#mobile-menu-trigger').click(function () {
1728                $body.toggleClass("mobilemenuopened");
1729                $(this).toggleClass("opened");
1730                $('#mainMenu > ul, #mainMenu > div > ul, .main-menu-collapse').toggleClass("show");
1731                return false;
1732            });
1733            $('#page-submenu-trigger').click(function() {
1734                $body.toggleClass('topsearch-active', false);
1735                $pagemenu.toggleClass("pagemenu-active");
1736                return false;
1737            });
1738            $pagemenu.find('nav').click(function(e){
1739                $body.toggleClass('topsearch-active', false);
1740                $topCart.toggleClass('top-cart-open', false);
1741            });
1742            if( SEMICOLON.isMobile.any() ){
1743                $body.addClass('device-touch');
1744            }
1745            // var el = {
1746            //     darkLogo : $("<img>", {src: defaultDarkLogo}),
1747            //     darkRetinaLogo : $("<img>", {src: retinaDarkLogo})
1748            // };
1749            // el.darkLogo.prependTo("body");
1750            // el.darkRetinaLogo.prependTo("body");
1751            // el.darkLogo.css({'position':'absolute','z-index':'-100'});
1752            // el.darkRetinaLogo.css({'position':'absolute','z-index':'-100'});
1753        }
1754
1755    };
1756
1757    SEMICOLON.isMobile = {
1758        Android: function() {
1759            return navigator.userAgent.match(/Android/i);
1760        },
1761        BlackBerry: function() {
1762            return navigator.userAgent.match(/BlackBerry/i);
1763        },
1764        iOS: function() {
1765            return navigator.userAgent.match(/iPhone|iPad|iPod/i);
1766        },
1767        Opera: function() {
1768            return navigator.userAgent.match(/Opera Mini/i);
1769        },
1770        Windows: function() {
1771            return navigator.userAgent.match(/IEMobile/i);
1772        },
1773        any: function() {
1774            return (SEMICOLON.isMobile.Android() || SEMICOLON.isMobile.BlackBerry() || SEMICOLON.isMobile.iOS() || SEMICOLON.isMobile.Opera() || SEMICOLON.isMobile.Windows());
1775        }
1776    };
1777
1778    SEMICOLON.documentOnResize = {
1779
1780        init: function(){
1781
1782            var t = setTimeout( function(){
1783                SEMICOLON.header.topsocial();
1784                SEMICOLON.header.fullWidthMenu();
1785                SEMICOLON.initialize.fullScreen();
1786                SEMICOLON.initialize.verticalMiddle();
1787                SEMICOLON.initialize.maxHeight();
1788                SEMICOLON.initialize.testimonialsGrid();
1789                SEMICOLON.slider.captionPosition();
1790                SEMICOLON.portfolio.arrange();
1791                SEMICOLON.widget.html5Video();
1792                SEMICOLON.widget.masonryThumbs();
1793                SEMICOLON.initialize.dataStyles();
1794                SEMICOLON.initialize.dataResponsiveHeights();
1795            }, 500 );
1796
1797        }
1798
1799    };
1800
1801    SEMICOLON.documentOnReady = {
1802
1803        init: function(){
1804            SEMICOLON.initialize.init();
1805            SEMICOLON.header.init();
1806            if( $slider.length > 0 ) { SEMICOLON.slider.init(); }
1807            if( $portfolio.length > 0 ) { SEMICOLON.portfolio.init(); }
1808            SEMICOLON.widget.init();
1809            SEMICOLON.documentOnReady.windowscroll();
1810        },
1811
1812        windowscroll: function(){
1813
1814            var headerOffset = $header.offset().top;
1815            var headerWrapOffset = $headerWrap.offset().top;
1816
1817            $window.scroll( function(){
1818
1819                SEMICOLON.initialize.goToTopScroll();
1820                $('body.open-header.close-header-on-scroll').removeClass("side-header-open");
1821                SEMICOLON.header.stickyMenu( headerWrapOffset );
1822                SEMICOLON.header.darkLogo();
1823                SEMICOLON.slider.sliderParallax();
1824                SEMICOLON.slider.sliderElementsFade();
1825
1826            });
1827            $window.scrolled(function() {
1828                SEMICOLON.header.onepageScroller();
1829            });
1830        }
1831
1832    };
1833
1834    SEMICOLON.documentOnLoad = {
1835
1836        init: function(){
1837            SEMICOLON.slider.captionPosition();
1838            SEMICOLON.slider.swiperSliderMenu();
1839            SEMICOLON.slider.revolutionSliderMenu();
1840            SEMICOLON.initialize.maxHeight();
1841            SEMICOLON.initialize.testimonialsGrid();
1842            SEMICOLON.initialize.verticalMiddle();
1843            SEMICOLON.portfolio.portfolioDescMargin();
1844            SEMICOLON.portfolio.arrange();
1845            SEMICOLON.widget.loadFlexSlider();
1846            SEMICOLON.widget.html5Video();
1847            SEMICOLON.widget.masonryThumbs();
1848            SEMICOLON.slider.owlCaptionInit();
1849            SEMICOLON.header.topsocial();
1850
1851            $("#wrapper").css("opacity", "1");
1852            //console.log("SEMICOLON.documentOnLoad is ok!");
1853        }
1854
1855    };
1856
1857    var $window = $(window),
1858        $body = $('body'),
1859        $wrapper = $('#wrapper'),
1860        $header = $('#header'),
1861        $headerWrap = $('#header-wrap'),
1862        oldHeaderClasses = $header.attr('class'),
1863        oldHeaderWrapClasses = $headerWrap.attr('class'),
1864        stickyMenuClasses = $header.attr('data-sticky-class'),
1865        defaultLogo = $('#logo').find('.standard-logo'),
1866        retinaLogo = $('#logo').find('.retina-logo'),
1867        defaultLogoImg = defaultLogo.find('img').attr('src'),
1868        retinaLogoImg = retinaLogo.find('img').attr('src'),
1869        defaultDarkLogo = defaultLogo.attr('data-dark-logo'),
1870        retinaDarkLogo = retinaLogo.attr('data-dark-logo'),
1871        $pagemenu = $('#page-menu'),
1872        $onePageMenuEl = $('.one-page-menu'),
1873        $portfolio = $('#portfolio'),
1874        $slider = $('#slider'),
1875        $sliderParallaxEl = $('.slider-parallax'),
1876        $pageTitle = $('#page-title'),
1877        $portfolioItems = $('.portfolio-ajax').find('.portfolio-item'),
1878        $portfolioDetails = $('#portfolio-ajax-wrap'),
1879        $portfolioDetailsContainer = $('#portfolio-ajax-container'),
1880        $portfolioAjaxLoader = $('#portfolio-ajax-loader'),
1881        prevPostPortId = '',
1882        $topSearch = $('#topsearchform'),
1883        $topCart = $('#top-cart'),
1884        $verticalMiddleEl = $('.vertical-middle'),
1885        $topSocialEl = $('#top-social').find('li'),
1886        $siStickyEl = $('.si-sticky'),
1887        $dotsMenuEl = $('.dots-menu'),
1888        $goToTopEl = $('#gotoTop'),
1889        $fullScreenEl = $('.full-screen'),
1890        $commonHeightEl = $('.common-height'),
1891        $testimonialsGridEl = $('.testimonials-grid'),
1892        $pageSectionEl = $('.page-section'),
1893        $owlCarouselEl = $('.owl-carousel'),
1894        $parallaxEl = $('.parallax'),
1895        $youtubeBgPlayerEl = $('.yt-bg-player'),
1896        $textRotaterEl = $('.text-rotater');
1897
1898
1899    $(document).ready( SEMICOLON.documentOnReady.init );
1900    $window.load( SEMICOLON.documentOnLoad.init );
1901    $window.on( 'resize', SEMICOLON.documentOnResize.init );
1902
1903})(jQuery);

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.