// Appsaurus Screencast Controller
// QT alchemy lifted from eucalyptus.com
// thanks ya'll, great app!
var movie = null;
var movieController = null;
var currentMovieNum = 0;
ieDebug = false;
// function fullUrlForRelativeUrl(url) {
//     var anchor = $("<div>", { innerHTML: "<a href=\"" + url + "\">&nbsp;</a>" });
//     return anchor.childNodes[0].href;
// }
$(function() {       
        // These crazy machinations are because this works differently
        // in Safari, Firefox and IE...
        movie = $("object#qtMovie").get(0);
        
        // console.log(movie)
        if(movie) {
            movieController = $("embed#qtMovieEmbed").get(0);
            if(!movieController) {
                movieController = movie;
            }
        }
        // console.log(movie, movieController)
        if(movieController) { // still null if QT is not available.
            try {
                if(!$.browser.msie) {
                    // movie.qt_play = function(){ movieDidPlay(movieController); };
                    // movie.qt_ended = movieDidEnd;
                    $(movie).bind("qt_ended", movieDidEnd);
                    // movieController.qt_ended = function(){alert("egggnded")};
                    
                }
                movieController.SetResetPropertiesOnReload(false);
            } catch (e) {
                // We're probably on a linux machine without
                // full QT support.  We'll jsut stop trying
                // to use the movie.
                movieController = null;
                $("#noQT").show()
                //TODO add js animation
            }
        }        
        
        $("a.feature").click(function(e){
            // e.preventDefault();
            // // console.log("play movie:", $(this).attr("id").split("-")[1])
            // selectFeature($(this).attr("id").split("-")[1]);
            // // selectFeature(/*(currentMovieNum == 2) ? 0 : currentMovieNum+1*/3);
            // return false;
        });
        //track appstore exits
        $("a#appstore").click(function(){
            if (pageTracker) {
                pageTracker._trackEvent('Appstore', ad_id);
            }
        })
        $("a#fullfeatures").click(function(e){
            e.preventDefault();
            $("#featurelist").toggle("slide")
        })
        $("a#closefeatures").click(function(e){
            e.preventDefault();
            $("#featurelist").toggle("slide")
        })
        // $(".feature h4").mouseover(featureTitleMouseOver).onmouseout(featureTitleMouseOut);
    }
)

function trackMovieAction(num, action){    
    if (pageTracker) {
        pageTracker._trackEvent('Movie', action, num);
    }
}

function movieDidEnd(movie) {
    // on to the next one
    trackMovieAction(currentMovieNum, "end")
    selectFeature((currentMovieNum == 2) ? 0 : currentMovieNum+1);
    if(ieDebug) alert("on to the next one", (currentMovieNum == 2)? 0: currentMovieNum+1)
}

function selectFeature(newMovieNum) {
    newMovieNum = parseInt(newMovieNum)
    // if(!selectFeature.isAnimating) {
        // console.log("playing" + newMovieNum)
        var oldMovieNum = $(".feature.selected").attr("id").split("-")[1];
        // console.log("current?", currentMovieNum != newMovieNum, "old?", oldMovieNum != newMovieNum, "controller", movieController)
        if(oldMovieNum != newMovieNum && currentMovieNum != newMovieNum && movieController) {
            movieController.SetResetPropertiesOnReload(false);
            movieController.SetURL("http://hellochair.com/appsaurus/static/video/"+newMovieNum+".mov");
            trackMovieAction(newMovieNum, "play")
            // console.log("playing" + newMovieNum, movieController.GetURL())
            currentMovieNum = newMovieNum;
        }
        // console.log("new", newMovieNum)
        $(".feature.selected .video_playing").removeClass("video_playing").addClass("video_play")
        $(".feature.selected").removeClass("selected")
        $("#feature-"+newMovieNum+" .video_play").removeClass("video_play").addClass("video_playing")
        $("#feature-"+newMovieNum).addClass("selected")
        // removeArrowFrom(newFeatureNum);
        return false;
    // }
}


// function removeArrowFrom(titleNode) {
//     dojo.query(".arrow", titleNode).forEach(
//         function(arrowNode) {            
//             dojo.fadeOut({
//                         duration: 200, 
//                         node: arrowNode,
//                         onEnd: function() { 
//                                 var parent = arrowNode.parentNode; if(parent) parent.removeChild(arrowNode); 
//                             }
//                         }).play();
//         }
//     );
// }