Team:Utrecht/js/myFunctions

//Content exchange Teampage

function tellStory1(story){ $("#storyStudent").html(story); }

function tellStory2(story){ $("#storySupervisor").html(story); }

//Definitions of Submenus

var submenuProject = '

  • <a href= "https://2018.igem.org/Team:Utrecht/ProjectOverview" id = "submenuProjectOverview"> Overview</a>
  • <a href="https://2018.igem.org/Team:Utrecht/Description" id = "submenuDescription" >Description</a>
  • <a href="https://2018.igem.org/Team:Utrecht/Design" id = "submenuDesign">Design</a>
  • <a href="https://2018.igem.org/Team:Utrecht/Model" id = "submenuModel">Model</a>
  • <a href="https://2018.igem.org/Team:Utrecht/Parts" id = "submenuBiobricks">Biobricks</a>
  • <a href="https://2018.igem.org/Team:Utrecht/SafeByDesign" id = "submenuSafeByDesign">Safety&Risks</a>
  • ';

    var submenuLab = '<a href="https://2018.igem.org/Team:Utrecht/Notebook" id = "submenuNotebook">Lab Notebook</a> <a href="https://2018.igem.org/Team:Utrecht/Protocol" id = "submenuProtocol">Protocols</a> <a href="https://2018.igem.org/Team:Utrecht/Safety" id = "submenuSafety">Safety</a> <a href="https://2018.igem.org/Team:Utrecht/Results" id = "submenuResults">Results</a> <a href="https://2018.igem.org/Team:Utrecht/InterLab" id = "submenuInterLab">Interlab</a>';

    var submenuHP = '<a href="https://2018.igem.org/Team:Utrecht/IntegratedHP" id = "submenuIntegratedHP">Integrated HP</a> <a href="https://2018.igem.org/Team:Utrecht/PublicEngagement" id = "submenuPE">PE</a> <a href="https://2018.igem.org/Team:Utrecht/Conference" id = "submenuConference">Conference</a> <a href="https://2018.igem.org/Team:Utrecht/MeetUps" id = "submenuMeetUps">Meet-Ups</a>';

    var submenuJamboree = '<a href="https://2018.igem.org/Team:Utrecht/Vlogs" id = "submenuVlogs">Vlogs</a> <a href="https://2018.igem.org/Team:Utrecht/AfterJamboree" id = "submenuAJ">After Jamboree</a>';

    var submenuAboutUs = '<a href="https://2018.igem.org/Team:Utrecht/Team" id = "submenuTeam">Team</a> <a href="https://2018.igem.org/Team:Utrecht/Collaborations" id = "submenuCollaborations">Collabs</a>';

    var submenuCredit = '<a href="https://2018.igem.org/Team:Utrecht/Attributions" id = "submenuAtributions">Attributions</a> <a href="https://2018.igem.org/Team:Utrecht/Sponsors" id = "submenuSponsors">Sponsors</a>';


    //Changes Submenu

    $(document).ready(function(){

    $("#menuProject").hoverIntent(function(){

           $("#mySubmenu").stop();
    

    $("#mySubmenu").html(submenuProject);

           $("#mySubmenu").css("left","25vh");	
           $(defActive).addClass('active');
    

    });

    $("#menuLaboratory").hoverIntent(function(){

           $("#mySubmenu").stop();
    

    $("#mySubmenu").html(submenuLab);

           $("#mySubmenu").css("left","45vh");	
           $(defActive).addClass('active');
    

    });

    $("#menuHumanPractices").hoverIntent(function(){

           $("#mySubmenu").stop();
    

    $("#mySubmenu").html(submenuHP);

           $("#mySubmenu").css("left","65vh");
           $(defActive).addClass('active');
    

    });

    $("#menuJamboree").hoverIntent(function(){

           $("#mySubmenu").stop();
    

    $("#mySubmenu").html(submenuJamboree);

           $("#mySubmenu").css("left","85vh");
           $(defActive).addClass('active');
    

    });

    $("#menuAboutUs").hoverIntent(function(){

           $("#mySubmenu").stop();
    

    $("#mySubmenu").html(submenuAboutUs);

           $("#mySubmenu").css("left","105vh");	
           $(defActive).addClass('active');
    

    });

    $("#menuCredit").hoverIntent(function(){

           $("#mySubmenu").stop();
    

    $("#mySubmenu").html(submenuCredit);

           $("#mySubmenu").css("left","125vh");
           $(defActive).addClass('active');
    

    });



    $(".topnav").mouseleave(resetSubmenu);

    });

    var defSubmenu = ; var defActive = ;

    var resetSubmenu = function(){ $("#mySubmenu").html(defSubmenu);

           $(defActive).addClass('active');
    

    let mainNavLinks = document.querySelectorAll(".sidenav ul li a");

    let lastId; let cur = [];


    var topMenu = $("#top-menu"),

       subMenu = $(".submenuM"),
       sideMenu = $("#side-menu"),
       topMenuHeight = topMenu.outerHeight()+ subMenu.outerHeight()+ 15,
       menuItems = sideMenu.find("a");
    

    //menuItems.css("color", "green") // Bind click handler to menu items // so we can get a fancy scroll animation menuItems.click(function(e){

     var href = $(this).attr("href"),
         offsetTop = href === "#" ? 0 : $(href).offset().top-topMenuHeight+1;
     $('html, body').stop().animate({ 
         scrollTop: offsetTop
     }, 300);
     e.preventDefault();
    

    });

    window.addEventListener("scroll", event => {

     let fromTop = window.scrollY;
     mainNavLinks.forEach(link => {
       let section = document.querySelector(link.hash);
       if (((section.offsetTop - topMenuHeight - 10) <= fromTop) ) {
         if ((section.offsetTop + section.offsetHeight  - topMenuHeight - 10)> fromTop){
           link.classList.add("current");
         } else {
           link.classList.remove("current");
         }
       } 
       else {
         link.classList.remove("current");
       }
     });
    if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
           $("#BackToTop").show();
       } else {
           $("#BackToTop").hide();
       }
    

    });

    $(".ClickThis").click(function(){ $(this).siblings(".CollapseThis").toggle(400, "linear");

       });
       
       $(".collapseLink").click(function(e){
           var topMenu = $("#top-menu"),
           subMenu = $(".submenuM"),
           topMenuHeight = topMenu.outerHeight()+ subMenu.outerHeight()+ 1,
           href = $(this).attr("href"),
           offsetTop = href === "#" ? 0 : $(href).offset().top-topMenuHeight+1;
           
    

    $(".CollapseThis").hide(2, "linear");

           $(href).children(".CollapseThis").show(2, "linear");
           
           $('html, body').stop().animate({ 
           scrollTop: offsetTop
           }, 500);
           e.preventDefault();
       });
    

    }


    // When the user clicks on the button, scroll to the top of the document function topFunction() {

       document.body.scrollTop = 0; // For Safari
       document.documentElement.scrollTop = 0; // For Chrome, Firefox, IE and Opera
    

    }

    //Mobile Menu /* Toggle between adding and removing the "responsive" class to topnav when the user clicks on the icon */ function myFunction(y) {

       var x = document.getElementById("myMenu");
       if (x.className === "menuM") {
           x.className += " open";
       } else {
           x.className = "menuM";
       }
    

    y.classList.toggle("change");

    }