//redefine in case of IE, Firefox, ... function getElementById(id){ return document.getElementById(id); } //HOME var current_description_id=''; function show_description(id){ return; if (current_description_id == id) return; //hide old if (current_description_id != '') getElementById(current_description_id).style.display = "block"; getElementById(id).style.display = "none"; current_description_id = id; } function hide_description(){ return; getElementById("tri_spec").style.visibility = "hidden"; getElementById("iss_spec").style.visibility = "hidden"; } //GLOBAL var toolbar = getElementById("toolbar"); var toolbar_tri = getElementById("toolbar_tri"); var toolbar_iss = getElementById("toolbar_iss"); var toolbar_rss = getElementById("toolbar_rss"); var default_toolbar_item_className = toolbar_tri.className; var tag_1puzzle = getElementById("tag_1puzzle"); var tag_markhere = getElementById("tag_markhere"); var tag_2048 = getElementById("tag_2048"); var tag_tri = getElementById("tag_tri"); var tag_iss = getElementById("tag_iss"); var tag_rss = getElementById("tag_rss"); var tag_home = getElementById("tag_home"); var current_tag_name; var current_tag = tag_home; var old_tag = tag_home; //load tag // id in ['tri', 'iss', '' --> home] function load(tag){ window.location.hash = '#' + tag; load_tag(tag, true); } function load_tag(tag, isEffect){ //alway set effect isEffect = true; if (tag == current_tag_name) return; if (tag != '' && tag != 'tri' && tag != 'iss' && tag != 'rss' && tag != '1puzzle' && tag != 'markhere' && tag != '2048') tag = ''; var player = getElementById(current_tag_name + "_player"); if (player && playerIsPlaying){ player.pause(); playerIsPlaying = false; } current_tag_name = tag; old_tag = current_tag; var fadeOut = (isEffect? "fadeOut":"hide_block"); var fadeIn = (isEffect? "fadeIn":"show_block"); old_tag.className = fadeOut + " container-rounded"; if (isEffect){ setTimeout("old_tag.style.display='none'", 500); } toolbar_tri.className = default_toolbar_item_className; toolbar_iss.className = default_toolbar_item_className; toolbar_rss.className = default_toolbar_item_className; toolbar_pty.className = default_toolbar_item_className; toolbar_1puzzle.className = default_toolbar_item_className; toolbar_markhere.className = default_toolbar_item_className; toolbar_2048.className = default_toolbar_item_className; if (tag == ''){ //-> go to "home" toolbar.className=fadeOut; current_tag = tag_home; }else{ toolbar.className=fadeIn; if (tag == 'tri'){ current_tag = tag_tri; toolbar_tri.className = "toolbar_item_highlight"; } else if (tag == 'iss'){ current_tag = tag_iss; toolbar_iss.className = "toolbar_item_highlight"; } else if (tag == 'rss'){ current_tag = tag_rss; toolbar_rss.className = "toolbar_item_highlight"; } else if (tag == '1puzzle'){ current_tag = tag_1puzzle; toolbar_1puzzle.className = "toolbar_item_highlight"; } else if (tag == 'markhere'){ current_tag = tag_markhere; toolbar_markhere.className = "toolbar_item_highlight"; } else if (tag == '2048'){ current_tag = tag_2048; toolbar_2048.className = "toolbar_item_highlight"; } } if (isEffect){ setTimeout("current_tag.className = 'fadeIn container-rounded'",500); setTimeout("current_tag.style.display = 'block';", 600); }else{ current_tag.className = fadeIn + ' container-rounded'; } } //For first time, at page load //On load, if window.location = "...#tri,screencast => move to screencast of Tri' load_tag(window.location.hash.substring(1,4), true); //Tri & iScreenSaver Apps var playerIsPlaying = false; function goto(where) { var reg=new RegExp("[ ,;]+", "g"); var tags = where.split(reg); //show/hide correspondent tag if (tags.length > 0){ load_tag(tags[0], true); } var container = getElementById(current_tag_name); if (container == null) return; //content of each tag var str = ''; if (tags.length > 1) str = tags[1]; if (str != ''){ if(container.className.indexOf('page2') == -1) container.className = 'container ' + str; getElementById(current_tag_name + '_second-label').innerHTML = { 'moreinfo': 'More Information', 'releases': 'Release Notes', 'screencast': 'Screencast'}[str]; container.className = 'container page2 ' + str; }else{ container.className = 'container '; } var player = getElementById(current_tag_name + "_player"); if (str == 'screencast'){ //scroll to show all video setTimeout(function(){ window.scrollBy(0,90); }, 1000); setTimeout(function(){ player.play(); playerIsPlaying = true; }, 3000); }else{ if (playerIsPlaying){ player.pause(); playerIsPlaying = false; } window.scrollBy(0,0); } } var currentPage = ''; //for each click on setInterval(function(){ if(window.location.hash != currentPage) { currentPage = window.location.hash; goto(window.location.hash.substring(1)); } }, 50);