var TrackScrambler = $.extend(TrackPuzzle, {
    
    /*
    getClueNumber: function(clue) {
        return "clue-" + $(clue).data("cluenum");
    },
    savePuzzleCompletion: function() {
        if (!this.isTrackingActive)
            return;
        
        var inputtedCount = $("#quizForm input[type=radio]:checked").length;
        var questionCount = $("#quizForm div.quiz").length;
        
        this.puzzleCompletion = (inputtedCount / questionCount).toFixed(2);
    },
    saveClueStartTime: function(clue) {
        if (!this.isTrackingActive)
            return;
        
        //End the timing for the last clue
        this.endClueTracking();
        
        //Set start time for current
        var clueNumber = this.getClueNumber(clue);
        if (this.clueTimes[clueNumber])
        {
            this.clueTimes[clueNumber].start = this.getCurrentTime();
        }
        else
        {
            this.clueTimes[clueNumber] = {
                start: this.getCurrentTime()
            };
        }
        
        //Set current clue as last selected
        this.lastSelectedClue = clue;
    },
    endClueTracking: function() {
        if (!this.isTrackingActive)
            return;
        
        //End the timing for the last clue
        if (this.lastSelectedClue)
        {
            var clueNumber = this.getClueNumber(this.lastSelectedClue);
            if (this.clueTimes[clueNumber] && this.clueTimes[clueNumber].start)
            {
                var timeSpent = this.getCurrentTime() - this.clueTimes[clueNumber].start;
                
                if (timeSpent > 0)
                {
                    //If time spent is positive, append it
                    if (this.clueTimes[clueNumber].time_spent)
                        this.clueTimes[clueNumber].time_spent += timeSpent;
                    else
                        this.clueTimes[clueNumber].time_spent = timeSpent;
                }
                else
                {
                    //If time spent is negative, log error message
                    //console.log("Time spent for the clue is negative! Clue: " + clueNumber);
                }
            }
        }
    },
    savePuzzleStatistics: function() {
        if (!this.isTrackingActive)
            return;
        
        //End game timing and puzzle completion tracking
        this.endGame();
        //End the timing for the last clue
        //this.endClueTracking();
        

        $.ajax({
            contentType : "application/x-www-form-urlencoded; charset=utf-8",
            dataType : "json",
            type : "POST", 
            async : false,
            timeout: 5000,
            url : TrackQuiz.serviceURL,
            data : {
                puzzle_id : TrackQuiz.puzzleId,
                game_duration : TrackQuiz.gameDuration.duration,
                game_completion : TrackQuiz.puzzleCompletion,
                questions_duration : JSON.stringify(TrackQuiz.clueTimes)
            },
            success: function(msg)
            {
                //console.log(msg);
            },
            complete: function()
            {
            }
        });
    },
    lastSelectedClue: undefined,
    clueTimes: {}
    */
});