var imagesFolder = 'images/';
var menuImagesFolder = imagesFolder + 'menu/';
var mediasFolder = 'medias/';
var interviewsFolder = mediasFolder + 'interviews/';

var embedHTML = '<embed src="%s" width="320" height="256" controller="true" autoplay="false"></embed>';
var smallQTSuffix = '_small.mov';
var largeQTSuffix = '_large.mov';

var nextInterview = -1;
var currentInterview = -1;
var previousInterview = -1;

var menu = null;

var sections = [
    {
        titleImage:'subtitle_intro.gif',
        divId:'divIntroMain',
        sections:null
    },
    {
        titleImage:'subtitle_research.gif',
        divId:'divResearchMain',
        sections:[
            {divId:'divResearch0'},
            {divId:'divResearch1'},
            {divId:'divResearch2'},
            {divId:'divResearch3'},
            {divId:'divResearch4'},
            {divId:'divResearch5'},
            {divId:'divResearch6'}
        ]
    },
    //This section's data is in JSON so that the site doesn't load 9 quicktimes before being able to work properly
    {
        titleImage:'subtitle_interviews.gif',
        divId:'divInterviewMain',
        sections:[
            {divId:'divInterviewDetail',title:'Les participants',description:'Qui &ecirc;tes-vous? <br />Dans quel domaine travaillez-vous?',date:'Avril 2007',duration:'2:46 min',videoFileName:'participants'},
            {divId:'divInterviewDetail',title:'Au travail',description:'&Ecirc;tes-vous visible en tant que gai ou lesbienne dans votre milieu de travail?',date:'Avril 2007',duration:'5:48 min',videoFileName:'travail'},
            {divId:'divInterviewDetail',title:'Le d&eacute;voilement',description:'Dans quel contexte avez-vous d&eacute;voil&eacute; votre homosexualit&eacute;?<br /> Comment ont r&eacute;agi vos interlocuteurs?',date:'Avril 2007',duration:'3:37 min',videoFileName:'devoilement'},
            {divId:'divInterviewDetail',title:'Les coll&egrave;gues',description:'Et le quotidien, avec les coll&egrave;gues?<br />Vous offrent-ils du soutien?',date:'Avril 2007',duration:'2:10 min',videoFileName:'collegues'},
            {divId:'divInterviewDetail',title:'L\'autorit&eacute;',description:'Et avec les patrons, comment &ccedil;a se n&eacute;gocie?',date:'Avril 2007',duration:'1:01 min',videoFileName:'autorite'},
            {divId:'divInterviewDetail',title:'Les clients',description:'Votre orientation sexuelle a-t-elle un impact sur vos relations avec les clients?',date:'Avril 2007',duration:'1:14 min',videoFileName:'clients'},
            {divId:'divInterviewDetail',title:'Les homophobes',description:'Avez-vous d&eacute;j&agrave; &eacute;t&eacute; victime d&rsquo;homophobie au travail?<br />Que s&rsquo;est-il pass&eacute;?',date:'Avril 2007',duration:'6:29 min',videoFileName:'homophobes'},
            {divId:'divInterviewDetail',title:'Les inqui&eacute;tudes',description:'Quelles sont vos inqui&eacute;tudes &agrave; r&eacute;v&eacute;ler votre orientation sexuelle dans votre milieu professionnel?',date:'Avril 2007',duration:'2:24 min',videoFileName:'inquietudes'},
            {divId:'divInterviewDetail',title:'En conclusion',description:'Qu&rsquo;avez-vous appris de votre exp&eacute;rience?<br />Quelle le&ccedil;on en gardez-vous?',date:'Avril 2007',duration:'2:42 min',videoFileName:'conclusion'}
        ]
    },
    {
        titleImage:'subtitle_activities.gif',
        divId:'divActivitiesMain',
        sections:null
    },
    {
        titleImage:'subtitle_help.gif',
        divId:'divHelpMain',
        sections:null
    },
    {
        titleImage:'subtitle_credits.gif',
        divId:'divCreditsMain',
        sections:null
    },
    {
        titleImage:'subtitle_comment.gif',
        divId:'divCommentsMain',
        sections:null
    }
];

//Page Init
window.onload = function(){	
    hideSections();
    
    Event.observe('Previous', 'click', previous);
    Event.observe('Next', 'click', next);
    
    var menuItem = null;
    var subMenuItem = null;
    
    menu = new VerticalMenu();
    menu.menuItemPadding = '0 1px 1px 9px';
    menu.background = 'white';
    menu.width = '152px';
    menu.onMenuItemClick = menuClick;
    
    //Introduction
    menuItem = menu.addMenuItem();
    menuItem.imageNormal = menuImagesFolder + 'm1_norm.gif';
    menuItem.bkgImageNormal = menuImagesFolder + 'bkgall.gif';
    menuItem.value = {sectionId: 0, subSectionId: null};
    
    //Research
    menuItem = menu.addMenuItem();
    menuItem.imageNormal = menuImagesFolder + 'm2_norm.gif';
    menuItem.imageOpened = menuImagesFolder + 'm2_open.gif';
    menuItem.bkgImageNormal = menuImagesFolder + 'bkgall.gif';
    menuItem.bkgImageRollover = menuImagesFolder + 'bkg2.gif';
    menuItem.value = {sectionId: 1, subSectionId: null};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm2_1_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm2_1_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm2_1_roll.gif';
    subMenuItem.value = {sectionId: 1, subSectionId: 0};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm2_2_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm2_2_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm2_2_roll.gif';
    subMenuItem.value = {sectionId: 1, subSectionId: 1};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm2_3_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm2_3_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm2_3_roll.gif';
    subMenuItem.value = {sectionId: 1, subSectionId: 2};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm2_4_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm2_4_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm2_4_roll.gif';
    subMenuItem.value = {sectionId: 1, subSectionId: 3};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm2_5_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm2_5_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm2_5_roll.gif';
    subMenuItem.value = {sectionId: 1, subSectionId: 4};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm2_6_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm2_6_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm2_6_roll.gif';
    subMenuItem.value = {sectionId: 1, subSectionId: 5};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm2_7_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm2_7_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm2_7_roll.gif';
    subMenuItem.value = {sectionId: 1, subSectionId: 6};
    
    //Interviews
    menuItem = menu.addMenuItem();
    menuItem.imageNormal = menuImagesFolder + 'm3_norm.gif';
    menuItem.imageOpened = menuImagesFolder + 'm3_open.gif';
    menuItem.bkgImageNormal = menuImagesFolder + 'bkgall.gif';
    menuItem.bkgImageRollover = menuImagesFolder + 'bkg3.gif';
    menuItem.value = {sectionId: 2, subSectionId: null};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm3_1_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm3_1_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm3_1_roll.gif';
    subMenuItem.value = {sectionId: 2, subSectionId: 0};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm3_2_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm3_2_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm3_2_roll.gif';
    subMenuItem.value = {sectionId: 2, subSectionId: 1};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm3_3_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm3_3_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm3_3_roll.gif';
    subMenuItem.value = {sectionId: 2, subSectionId: 2};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm3_4_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm3_4_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm3_4_roll.gif';
    subMenuItem.value = {sectionId: 2, subSectionId: 3};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm3_5_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm3_5_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm3_5_roll.gif';
    subMenuItem.value = {sectionId: 2, subSectionId: 4};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm3_6_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm3_6_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm3_6_roll.gif';
    subMenuItem.value = {sectionId: 2, subSectionId: 5};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm3_7_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm3_7_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm3_7_roll.gif';
    subMenuItem.value = {sectionId: 2, subSectionId: 6};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm3_8_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm3_8_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm3_8_roll.gif';
    subMenuItem.value = {sectionId: 2, subSectionId: 7};
    
    subMenuItem = menuItem.addMenuItem();
    subMenuItem.imageNormal = menuImagesFolder + 'sm3_9_norm.gif';
    //subMenuItem.imageRollover = menuImagesFolder + 'sm3_9_roll.gif';
    subMenuItem.imageSelected = menuImagesFolder + 'sm3_9_roll.gif';
    subMenuItem.value = {sectionId: 2, subSectionId: 8};
    
    //Activities
    menuItem = menu.addMenuItem();
    menuItem.imageNormal = menuImagesFolder + 'm4_norm.gif';
    menuItem.bkgImageNormal = menuImagesFolder + 'bkgall.gif';
    menuItem.bkgImageRollover = menuImagesFolder + 'bkg4.gif';
    menuItem.value = {sectionId: 3, subSectionId: null};
    
    //Help
    menuItem = menu.addMenuItem();
    menuItem.imageNormal = menuImagesFolder + 'm5_norm.gif';
    menuItem.bkgImageNormal = menuImagesFolder + 'bkgall.gif';
    menuItem.bkgImageRollover = menuImagesFolder + 'bkg5.gif';
    menuItem.value = {sectionId: 4, subSectionId: null};
    
    //Credits
    menuItem = menu.addMenuItem();
    menuItem.imageNormal = menuImagesFolder + 'm6_norm.gif';
    menuItem.bkgImageNormal = menuImagesFolder + 'bkgall.gif';
    menuItem.bkgImageRollover = menuImagesFolder + 'bkg6.gif';
    menuItem.value = {sectionId: 5, subSectionId: null};
    
    //Comments
    menuItem = menu.addMenuItem();
    menuItem.imageNormal = menuImagesFolder + 'm7_norm.gif';
    menuItem.bkgImageNormal = menuImagesFolder + 'bkgall.gif';
    menuItem.bkgImageRollover = menuImagesFolder + 'bkg7.gif';
    menuItem.value = {sectionId: 6, subSectionId: null};
    
    menu.display($('MenuWrapper'));
    
    innerLink(sectionToLoad[0], sectionToLoad[1]);
}

function hideSections(sectionsToHide){
    if(typeof sectionsToHide != 'undefined'){
        sectionsToHide.each(function(section){
            $(section.divId).hide();
            if(section.sections){
                hideSections(section.sections);
            }
        });
        
        $('tdQTWrapper').update();
    }else{
        hideSections(sections);
    }
}

function showContent(sectionId,subSectionId){
    //Check ids
    if(sectionId < 0 || sectionId > (sections.length - 1)){
        return;
    }
    
    //Show title
    $('imgSubTitle').src = imagesFolder + sections[sectionId].titleImage;
    
    if(typeof subSectionId == 'number'){
        if(subSectionId < 0 || subSectionId > (sections[sectionId].sections.length - 1)){
            showContent(true,sectionId);
            return;
        }
        
        $(sections[sectionId].sections[subSectionId].divId).show();
        
        switch(sectionId){
            case 2:
                subSection = sections[sectionId].sections[subSectionId];
                $('spanInterTitle').update(subSection.title);
                $('spanInterDescription').update(subSection.description);
                $('spanInterDate').update(subSection.date);
                $('spanInterDuration').update(subSection.duration);
                $('tdQTWrapper').update(embedHTML.replace('%s',interviewsFolder + subSection.videoFileName + smallQTSuffix));
                
                if(subSectionId == 0){
                    $('Previous').hide();
                }else if(subSectionId == (sections[sectionId].sections.length - 1)){
                    $('Next').hide();
                }else{
                    $('Previous').show();
                    $('Next').show();
                }
                
                currentInterview = subSectionId;
                
                break;
        }
    }else{
        $(sections[sectionId].divId).show();
    }
}
function menuClick(value){
    hideSections();
    showContent(value.sectionId,value.subSectionId);
}
function innerLink(sectionId, subSectionId){
    menu.selectItem(sectionId,subSectionId);
}
function previous(){
    innerLink(2,currentInterview - 1);
}
function next(){
    innerLink(2,currentInterview + 1);
}
function large(){
    var video = interviewsFolder + sections[2].sections[currentInterview].videoFileName + largeQTSuffix;
    var url = 'large.php?s=' + video;
    var width = 640;
	var height = 496;
	var winl = (screen.width-width)/2;
	var wint = (screen.height-height)/2 - 50;
	if (winl < 0) winl = 0;
	if (wint < 0) wint = 0;
	
	window.open(url,"InterviewLarge",'top='+wint+',left='+winl+',width='+width+',height='+height+',toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0').focus();
}

function rollImg(oImg)
{
	//Settings
	var sNormSuffix = "_norm";
	var sOverSuffix = "_roll";
	var iStatusLen = sNormSuffix.length;

	//For manipulation only
	var sCurrentImgName = oImg.src.substring(oImg.src.lastIndexOf('/') + 1,oImg.src.length);
	var sCurrentStatus = sCurrentImgName.substr(sCurrentImgName.lastIndexOf('_'),iStatusLen);
	
	//Will be used for the final string building
	var sPath = oImg.src.substring(0,oImg.src.lastIndexOf('/') + 1);
	var sShortImgName = sCurrentImgName.substr(0,sCurrentImgName.lastIndexOf('_'));
	var sImgExt = sCurrentImgName.substring(sCurrentImgName.lastIndexOf('.'),sCurrentImgName.length);
	
	//New status
	var sNewStatus = ((sCurrentStatus == sNormSuffix) ? sOverSuffix : sNormSuffix);
	
	var sNewImgName = sPath + sShortImgName + sNewStatus + sImgExt;
	
	oImg.src = sNewImgName;
}
