PageSourceSearch

https://www.theconjuringmovie.com/js/main.js

js theconjuringmovie.com collected 2026-10-02 12:12:17 UTC 19,208 bytes, 739 lines download raw bytes

1var urlBrowser = window.location.href;
2var deeplink = "";
3var deeplinkTracking = "";
4var isTracking = false;
5var trackingCode = "";
6var scrollHomeTracking = false;
7var introTrailer = false;
8var isAudioPlaying = false;
9var isPlaying = false;
10let closeBtn = document.getElementById("introClose");
11let siteUrl = SITE.dom;
12var ticketingnavtabclick = true;
13var firsttimeactivenav = true;
14var firsttimeticketoverlayopen = true;
15
16var homepagedeeplink = "home/";
17var deeplinkflag = true;
18var isticketclick = false;
19
20
21
22var flag = 0;
23//var audioPlayer = document.getElementById("audio_player");
24$("#modalLoader").modal("show");
25function htmlDecode(input) {
26  if (input !== "") {
27    var e = document.createElement("div");
28    e.innerHTML = input;
29    return e.childNodes[0].nodeValue;
30  }
31}// end htmlDecode
32
33function removeSpecials(str) {
34  str = str.replace(/[&\/\\#,+()$~%.'":*?<>{}]/g, "");
35  return str;
36} //end removeSpecials
37
38$("#introClose").click(function () {
39  
40  $("body").removeClass("noscroll");
41  $("body").css("overflow-y", "scroll");
42  //$(".wrapper").css("overflow-y", "scroll");
43  $("#youtubeVideointro").html("");
44  try{checkHeight();
45  initGallery();
46  initCharGallery();
47  pauseYoutubeVideo();
48  pauseHtmlVideo();  
49}catch(e){}
50  setTimeout(function () {
51    $("#containerCredits").delay(500).slideDown();
52    setTimeout(function () {
53      $("#containerCredits").slideUp();
54    }, 6000);
55  });
56  
57  
58}); //end intro close
59
60function windowHistrory(value1, value2){
61  window.history.pushState(
62    {
63      html: value1,
64      pageTitle: "",
65    },
66    "",
67    value2
68  );
69}// end windowHistrory
70
71deeplink = SITE.deeplink;
72SITE.isDeeplink == "true" ? (isDeeplink = true) : (isDeeplink = false);
73if (SITE.trackingValue !== "") {
74  deeplinkTracking = htmlDecode(SITE.trackingValue);
75} else {
76  deeplinkTracking = "";
77}
78
79function getElementY(query) {
80  return (
81    window.pageYOffset +
82    document.getElementById(query).getBoundingClientRect().top
83  );
84}// end getElementY
85
86function doScrolling(element, duration) {
87  var startingY = window.pageYOffset;
88
89  var elementY = getElementY(element);
90  var targetY =
91    document.body.scrollHeight - elementY < window.innerHeight
92      ? document.body.scrollHeight - window.innerHeight
93      : elementY;
94  var diff = targetY - startingY;
95  
96  var easing = function (t) {
97    return t < 0.5 ? 4 * t * t * t : (t - 1) * (2 * t - 2) * (2 * t - 2) + 1;
98  };
99  var start;
100
101  //if (!diff) return
102
103  // Bootstrap our animation - it will get called right before next frame shall be rendered.
104  window.requestAnimationFrame(function step(timestamp) {
105    if (!start) start = timestamp;
106    // Elapsed miliseconds since start of scrolling.
107    var time = timestamp - start;
108    // Get percent of completion in range [0, 1].
109    var percent = Math.min(time / duration, 1);
110    // Apply the easing.
111    // It can cause bad-looking slow frames in browser performance tool, so be careful.
112    percent = easing(percent);
113
114    window.scrollTo(0, startingY + diff * percent);
115
116    // Proceed with animation as long as we wanted it to.
117    if (time < duration) {
118      window.requestAnimationFrame(step);
119    }
120  });
121  $("#loaderText").html("100%");
122  $("#modalLoader").modal("hide");
123}// End Do Scrolling
124
125async function init() {
126  "use strict";
127  if (String($("#ticketingSectionOnOff").val()) !== "true") {
128    homepagedeeplink = siteUrl;
129  }
130
131  //BG Height
132  var checkHeight = function () {
133    var bgHeight = window.innerHeight - $(".footer").outerHeight();
134    $(".divBackground").css({
135      height: bgHeight + "px",
136    });
137
138    $("#home").css({
139      height: bgHeight + "px",
140    });
141  }; //end bg height
142
143  if (isDeeplink == true) {
144    $(".wrapper").show();
145  } else {
146    
147    if (String($("#ticketingSectionOnOff").val()) == "true") {
148      $("#ticketsNav").addClass("active-nav");
149    } else {
150      $("#homeNav").addClass("active-nav");
151    }
152  }
153
154  if (isDeeplink === true) {
155    var idValue = removeSpecials(deeplink.trim());
156    firsttimeticketoverlayopen = false;
157    ticketingnavtabclick = false;
158    checkHeight();
159    if (idValue === "home") {
160      if (isTracking !== false) {
161        windowHistrory(SITE.dom, SITE.dom + deeplinkTracking);
162      } else {
163        windowHistrory(homepagedeeplink, homepagedeeplink + deeplinkTracking)
164      }
165    } else {
166      windowHistrory("" + idValue + "/", "" + idValue + "/" + deeplinkTracking);
167    }
168    setTimeout(() => {
169       doScrolling(idValue, 2000);
170    }, 2000);
171  } else {
172    checkHeight();
173    initGallery();
174    initCharGallery();
175    $("#loaderText").html("100%");
176    setTimeout(() => {
177      $("#modalLoader").modal("hide");
178    }, 200);
179  } // End Deeplink
180
181  //Smooth Scroll
182
183  
184  $("[href^='#']").click(function (e) {
185    e.preventDefault();
186    var id = $(this).attr("href");
187    if(sectionarray.indexOf('gallery') > -1){initGallery();};
188    if (id !== "#ticket") {
189      isticketclick = false;
190      ticketingnavtabclick = false;
191      if (String($("#ticketingSectionOnOff").val()) == "true") {
192        ticketingoverlayclosefun();
193      }
194      $("body").css("overflow-y", "scroll");
195      $("html, body").animate(
196        {
197          scrollTop: $(id).offset().top,
198        },
199        900
200      );
201      //deeplink code
202      if (id !== "#home") {
203        var chnageId = removeSpecials(id.trim());
204         windowHistrory("" + chnageId + "/", "" + chnageId + "/" + deeplinkTracking);
205      } else {
206        if (isTracking !== false) {
207          windowHistrory(trackingCode, trackingCode);
208        } else {
209          windowHistrory("" + homepagedeeplink, "" + homepagedeeplink + deeplinkTracking);
210        }
211        //ticketing
212      }
213
214      menuhighlight(id);
215
216    } else if (id === "#ticket") {
217      isticketclick = true;
218      $(".ticketoverlay").addClass("ticketingoverlayOpenNew");
219      syts_onWinResizeTicketing();
220
221      if(!sytsAllBasicData.siteIsForTracking){
222      syts_allClickTrackingHome(syts_movieIDHome.join(","), "25", "Get Tickets","","");
223      }
224      document.body.classList.add("noscroll");
225      $(".getTickets").css("display", "none");
226      $(".nav-link").removeClass("active-nav");
227      $("#ticketsNav").addClass("active-nav");
228      ticketingnavtabclick = true;
229      $("html, body").animate(
230        {
231          scrollTop: 0,
232        },
233        0
234      );
235
236      windowHistrory(SITE.dom, SITE.dom + deeplinkTracking);
237    }
238
239  });
240 
241  function menuhighlight(navid) {
242   
243    $(".nav-link").removeClass("active-nav");
244    $(".nav-link").removeClass("active");
245
246    switch (navid) {
247      case "#ticket":
248        $("#ticketsNav").addClass("active-nav");
249        break;
250      case "#home":
251        $("#homeNav").addClass("active-nav");
252        break;
253      case "#trailer":
254        $("#videoNav").addClass("active-nav");
255        break;
256      case "#synopsis":
257        $("#synosisNav").addClass("active-nav");
258        break;
259      case "#gallery":
260        $("#galleryNav").addClass("active-nav");
261        break;
262      case "#partners":
263        $("#partnersNav").addClass("active-nav");
264        break;
265      case "#watch":
266          $("#watchNav").addClass("active-nav");
267          break;
268      case "#characterart":
269        $("#charactersNav").addClass("active-nav");
270        break;
271      default:
272      //alert('Nobody Wins!');
273    }
274  }
275  $(window).on("activate.bs.scrollspy", function (e, obj) {
276    $("#containerShare").hide();
277    let id = obj.relatedTarget;
278    if(sectionarray.indexOf('gallery') > -1){initGallery();};
279    if (isDeeplink == true && deeplinkflag) {
280      deeplinkflag = false;
281      id = "#" + removeSpecials(deeplink.trim());
282    } else if (isticketclick) {
283      id = "#ticket";
284    } else {
285      if (id == "#ticket") {
286        if (firsttimeticketoverlayopen) {
287          firsttimeticketoverlayopen = false;
288        } else {
289          if ($(id).offset().top < $("#"+SITE.sectionlist[1]).offset().top) {
290            id = "#"+SITE.sectionlist[0];
291          } else if ($(id).offset().top > $("#"+SITE.sectionlist[SITE.sectionlist.length-2]).offset().top) {
292            id = "#"+SITE.sectionlist[SITE.sectionlist.length-1];
293          } else {
294            var url = $(location).attr("href"),
295              parts = url.split("/"),
296              last_part = parts[parts.length - 2];
297            id = "#" + last_part;
298          }
299        }
300      }
301    }
302    
303
304    menuhighlight(id);
305
306    if (id == "#ticket") {
307      if (ticketingnavtabclick == true) {
308        let chnageId = siteUrl;
309        windowHistrory("" + chnageId, "" + chnageId + deeplinkTracking);
310      } else {
311        
312        if (isDeeplink == true && deeplinkflag) {
313          deeplinkflag = false;
314          var _id = removeSpecials(deeplink.trim());
315          
316          if (
317            _id == "synopsis" ||
318            _id == "ticket" ||
319            _id == "trailer" ||
320            _id == "gallery" ||
321            _id == "characterart" ||
322            _id == "partners"
323          ) {
324            
325          } else {
326            $(".nav-link").removeClass("active-nav");
327            $("#ticketsNav").removeClass("active-nav");
328            $("#homeNav").addClass("active-nav");
329            windowHistrory("" + homepagedeeplink, "" + homepagedeeplink + deeplinkTracking);
330          }
331        } else {}
332      }
333    } else if (id !== "#home" && id !== undefined) {
334      let chnageId = removeSpecials(id.trim());
335      windowHistrory("" + chnageId + "/", "" + chnageId + "/" + deeplinkTracking);
336    } else {
337      if (id == "#home") {
338        windowHistrory("" + homepagedeeplink, "" + homepagedeeplink + deeplinkTracking);
339      } else {
340        let chnageId = siteUrl;
341        chnageId = chnageId.indexOf("index.php") > -1 ? cleanUrl(siteUrl) : "";
342        windowHistrory("" + chnageId, "" + chnageId + deeplinkTracking);
343      }
344    }
345  });
346
347  // Credits
348  $("#btnCredits").on("click", function () {
349    $("#containerCredits").slideDown();
350  });
351
352  $("#closeCredits").on("click", function () {
353    $("#containerCredits").slideUp();
354  });
355
356  $("#formExpandBtnmain").on("click", function () {
357    $(".fixed_form_wrapper").toggleClass("fixed_form_toggle");
358    $("#formExpandBtnmain").hide();
359    var iframe = document.getElementById('micro-data-capture');
360    iframe.src = 'signup/';
361    // var iframeWindow = iframe.contentWindow;
362    // console.log(iframeWindow.contentDocument.body.height);
363    //$('.fixed_form_container').css('height',$('iframe').find('form').outerHeight()+'px');
364    
365  });
366  $("#formExpandBtn").on("click", function () {
367    $(".fixed_form_wrapper").toggleClass("fixed_form_toggle");
368    $("#formExpandBtnmain").show();
369    
370      
371  });
372
373  function cleanUrl(link) {
374    let cleanurl = link.substring(0, link.indexOf("index.php"));
375    //console.log(cleanurl);
376    return cleanurl;
377  }
378
379  //Mobile Navigation Toggle
380  $("#navIcon").click(function () {
381    $(this).toggleClass("open");
382    $("nav").toggleClass("activatedMenus");
383    $("body").toggleClass("fixedBody");
384    $("#containerShare").fadeOut();
385  });
386
387  $(".nav-container").click(function (e) {
388    var target = $(e.target);
389
390    if (
391      ($(window).width() <= 1024 || $(window).width() === 1138) &&
392      target.is(".press-anchor")
393    ) {
394      $(".sub-menu").toggleClass("sub-menu-toggle");
395    } else {
396      if (!target.is(".cta-btn-link")) {
397        $("body").removeClass("fixedBody");
398        $("#navIcon").toggleClass("open");
399        $(".sub-menu").addClass("sub-menu-toggle");
400
401        setTimeout(function () {
402          $("nav").toggleClass("activatedMenus");
403        }, 300);
404      }
405    }
406  });
407
408  //Save to Calender
409  $(".save-btn-wrapper")
410    .mouseout(function () {
411      $(this).css("transform", "translateY(0)");
412    })
413    .mouseover(function () {
414      $(this).css("transform", "translateY(-100%)");
415    });
416
417  var checkCalendarClickOpen = true;
418
419  $(".cta-save-btn").click(function () {
420    $(".save-btn-wrapper").css("transform", "translateY(-100%)");
421    checkCalendarClickOpen = false;
422    setTimeout(function () {
423      checkCalendarClickOpen = true;
424    }, 200);
425  });
426  $(".home-wrapper,body").click(function () {
427    if (checkCalendarClickOpen) {
428      $(".save-btn-wrapper").css("transform", "translateY(0)");
429    }
430  });
431
432  //IE and EDGE BG Flicker Fix
433  if (
434    navigator.userAgent.match(/MSIE 10/i) ||
435    navigator.userAgent.match(/Trident\/7\./) ||
436    navigator.userAgent.match(/Edge\/12\./)
437  ) {
438    $("body").on("mousewheel", function (event) {
439      event.preventDefault();
440      var wd = event.wheelDelta;
441      var csp = window.pageYOffset;
442      window.scrollTo(0, csp - wd);
443    });
444  }
445}// end Init
446
447var checkTrailerHeight = function () {
448  var reqTrailerHeight = window.innerHeight;
449
450  $(".modal-dialog").css({
451    height: reqTrailerHeight + "px",
452    top: 0 + "px",
453  });
454
455  $(".video-player").css({
456    height:
457      reqTrailerHeight -
458      ($(".modal-header").outerHeight() +
459        $("#modalTrailer .footer").outerHeight() +
460        5) +
461      "px",
462  });
463}; // end check trailer height
464
465var isDevicePortrait = false;
466function detectDevicePortrait() {
467  if (
468    (isMobile || isTablet || isAndroidTablet || isIPadPro) &&
469    window.innerHeight > window.innerWidth
470  ) {
471    isDevicePortrait = true;
472  } else {
473    isDevicePortrait = false;
474    try {
475      pauseYoutubeVideo();
476      pauseHtmlVideo();
477      audioPlayer.pause();
478    } catch (e) {}
479  }
480}// End detect device portrait
481
482detectDevicePortrait();
483
484$(window).resize(function () {
485  checkHeight();
486  checkTrailerHeight();
487  detectDevicePortrait();
488});
489
490$(window).scroll(function () {
491  try {
492    pauseYoutubeVideo();
493    pauseHtmlVideo();
494  } catch (e) {}
495
496  var $sticky = $(".blackBg");
497
498  if (isMobile && $(this).scrollTop() > 150) {
499    $sticky.css({ "background-color": "rgba(0,0,0,0.6)" });
500  } else {
501    $sticky.css({ "background-color": "transparent" });
502  }
503
504//  var scroll = $(window).scrollTop();
505//
506//  if (scroll >= 700 && $(window).width() > 1400) {
507//    $("#navIcon span").css("background", "white");
508//    $("#btnShare span img").css("filter", "invert(0)");
509//  } else if (scroll >= 500 && $(window).width() < 1400) {
510//    $("#navIcon span").css("background", "white");
511//    $("#btnShare span img").css("filter", "invert(0)");
512//  } else {
513//    $("#navIcon span").css("background", "#151513");
514//    $("#btnShare span img").css("filter", "invert(100%)");
515//  }
516}); // end window scroll
517
518document.addEventListener("visibilitychange", function () {
519  try{
520    pauseYoutubeVideo();
521    pauseHtmlVideo();
522    audioPlayer.pause();
523  }catch(e){}
524});
525
526// Before slide change For Youtube Slider
527$(".video-holder").on(
528  "beforeChange",
529  function (event, slick, currentSlide, nextSlide) {
530    pauseYoutubeVideo();
531    pauseHtmlVideo();
532    audioPlayer.pause(); 
533  }
534);
535
536// After slide change For Youtube Slider
537$(".video-holder").on(
538  "afterChange",
539  function (event, slick, currentSlide, nextSlide) {
540    playYoutubeVideo();
541  }
542);
543
544// Share
545
546$("#closeShare").on("click", function () {
547  //$("#containerShare").slideToggle();
548  $("#containerShare").hide();
549});
550
551
552
553
554
555$('#btnShare').click(function(event) {
556  $("#containerShare").show();
557  disabledEventPropagation(event);
558});
559
560$('#containerShare').click(function(event) {
561  disabledEventPropagation(event);
562});
563
564$(document).click(function() {
565  $("#containerShare").hide();
566});
567
568function disabledEventPropagation(event) {
569  if (event.stopPropagation) {
570    event.stopPropagation();
571  } else if (window.event) {
572    window.event.cancelBubble = true;
573  }
574}
575
576
577
578var shareBtn = document.getElementById("btnShare");
579shareFallback = document.getElementById("containerShare");
580
581// shareBtn.addEventListener("click", function (ev) {
582//   $("#containerShare").slideToggle();
583// });
584
585const faders = document.querySelectorAll(".fade-in");
586const sliders = document.querySelectorAll(".slide-in");
587
588const appearOptions = {
589  threshold: 0,
590  rootMargin: "0px 0px -250px 0px",
591};
592
593const appearOnScroll = new IntersectionObserver(function (
594  entries,
595  appearOnScroll
596) {
597  entries.forEach((entry) => {
598    if (!entry.isIntersecting) {
599      return;
600    } else {
601      entry.target.classList.add("appear");
602      appearOnScroll.unobserve(entry.target);
603    }
604  });
605},
606appearOptions);
607
608faders.forEach((fader) => {
609  appearOnScroll.observe(fader);
610});
611
612sliders.forEach((slider) => {
613  appearOnScroll.observe(slider);
614});
615
616 $(document).ready(function () {
617  if(isMobile || isIPadPro || isAndroidTablet || isiPad || isTablet){
618    $('.vjs-default-skin.vjs-paused .vjs-big-play-button').css('display','none');
619    $('.vjs-default-skin.vjs-paused .vjs-control-bar').css('display','flex')
620    
621  }
622//   audioPlayer.load();
623//      try{initGallery();}catch(e){}
624 
625// });
626// audioPlayer.addEventListener("playing", function () {
627//   isAudioPlaying = true;
628//   barAnimationStart();
629 });
630
631$(window).on("blur focus", function (e) {
632  var prevType = $(this).data("prevType");
633  //console.log(prevType)
634
635  if (prevType != e.type) {
636    //  reduce double fire issues
637    switch (e.type) {
638      case "blur":
639        if (isAudioPlaying == true) {
640          audioPlayer.pause();
641          barAnimationStop();
642        }
643        break;
644      case "focus":
645        if (isAudioPlaying == true) {
646          audioPlayer.play();
647          barAnimationStart();
648        }
649        break;
650    }
651  }
652
653  $(this).data("prevType", e.type);
654});
655
656$(".audioplayer").on("click", function () {
657  togglePlay();
658});
659
660// $("body").on("click", function () {
661//   if (isAudioPlaying == false && flag == 0) {
662//     audioPlayer.play();
663//     barAnimationStart();
664//     flag = 1;
665//     isAudioPlaying = true;
666//   }
667// });
668
669function togglePlay() {
670  if (isAudioPlaying == true) {
671    console.log(isAudioPlaying);
672    audioPlayer.pause();
673    barAnimationStop();
674    isAudioPlaying = false;
675  } else {
676    audioPlayer.play();
677    barAnimationStart();
678  }
679}
680
681function barAnimationStart() {
682  $(".bar").each(function (i) {
683    genHeightStart($(this));
684  });
685}
686
687function barAnimationStop() {
688  $(".bar").stop(true).height(2);
689}
690
691function genHeightStart(bar) {
692  var minHeight = 1;
693  var maxHeight = 15;
694  var barHeight = Math.ceil(Math.random() * maxHeight + minHeight);
695  var time = barHeight * 20;
696  bar.animate(
697    {
698      height: barHeight,
699    },
700    time,
701    function () {
702      genHeightStart($(this));
703    }
704  );
705}
706
707window.addEventListener("load", function () {
708  $(document).keydown(function (e) {
709    if (e.which == 40) {
710      if (isAudioPlaying == false && flag == 0) {
711        audioPlayer.play();
712        barAnimationStart();
713        flag = 1;
714        isAudioPlaying = true;
715      }
716    }
717  });
718    
719});
720
721
722//const videobg = document.getElementById("videoBg");
723//
724//	function videoCurrPlayTime(){
725//		
726//        if(videobg.currentTime >= 16){
727//$('#videoBg').addClass('content-fadeout');  
728//            setTimeout(function () {$('#videoBg').css('visibility','hidden');}, 2000);
729//             setTimeout(function () {         
730//      $('.movie-tt').addClass('content-fadein');
731//		$('.movie-tt').css('visibility','visible');
732//                  $('#home').addClass('content-fadein');
733//		$('#home').css('visibility','visible');
734//    }, 1000);
735////		$('#videoBg').css('visibility','hidden');
736//		}
737//	}
738//videobg.addEventListener("timeupdate", videoCurrPlayTime)
739

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.