﻿/*
Created By: Bal Jagpal
Date Created: 09/10/10


Note: in css specify height of div rotator and overflow hidden incase of breakage
*/

$(document).ready(function() {
    new heroCycler();
});

var _HeroCyclerObj;

var heroCycler = function(){
    this.rotator = "rotatingBanners";
    this.rotatorArea = "heroCycler";
    this.rotatorNumbers = "rotateNumbers";
    this.imageControls = "wrapheronav";
    this.rotatePauseAndPlay= "rotatePauseAndPlay";

    _HeroCyclerObj = this;
    $('#' + _HeroCyclerObj.rotator).cycle({
        fx: 'fade',
        timeout: 9000,
        speed: 500,
        fastOnEvent: 300,
        before: _HeroCyclerObj.updateControls,
        next: '#rotateNext',
        prev: '#rotatePrev'
    });

    this.createControls();
    
}

heroCycler.prototype = {
    createControls: function() {
    var $rotatorArea = $('#' + _HeroCyclerObj.rotatorArea);
    var $rotatorNumbers = $("#" + _HeroCyclerObj.rotatorNumbers);
    var $imageControls = $("#" + _HeroCyclerObj.imageControls);
    var $rotator = $('#' + _HeroCyclerObj.rotator);
    var $rotatePauseAndPlay = $('#' + _HeroCyclerObj.rotatePauseAndPlay);
        $rotator.children().each(function(i) {

            $('<div class="irbtnOff" >' + (i + 1) + '</div>')
        .appendTo($rotatorNumbers)
        .click(function() {
            $rotatorNumbers.children().removeClass().addClass('irbtnOff');
            $($rotatorNumbers.children()[i]).removeClass().addClass('irbtnOn');
            $imageControls.children().removeClass().addClass('irbtnOff');
            $($imageControls.children()[i]).removeClass().addClass('irbtnOn');
            $rotator.cycle(i);
            return false;
        });


            $($imageControls.children()[i]).hover(function() {
                $rotatorNumbers.children().removeClass().addClass('irbtnOff');
                $($rotatorNumbers.children()[i]).removeClass().addClass('irbtnOn');
                $imageControls.children().removeClass().addClass('irbtnOff');
                $($imageControls.children()[i]).removeClass().addClass('irbtnOn');
                $rotator.cycle(i);
                return false;
            });


        });

        $($rotatorNumbers.children()[0]).removeClass().addClass('irbtnOn');
        $($imageControls.children()[0]).removeClass().addClass('irbtnOn');

        $rotatePauseAndPlay.click(function() {
            if ($(this).hasClass('play')) {
                $(this).removeClass().toggleClass('pause');
                $rotator.cycle('pause');
            }
            else {
                $(this).removeClass().toggleClass('play');
                $rotator.cycle('resume');
            }
        });

    },
    updateControls: function(curr, next, opts) {

    var $rotatorNumbers = $("#" + _HeroCyclerObj.rotatorNumbers);
    var $imageControls = $("#" + _HeroCyclerObj.imageControls);
        
        $rotatorNumbers.children().removeClass().addClass('irbtnOff');
        $($rotatorNumbers.children()[opts.nextSlide]).removeClass().addClass("irbtnOn");

        $imageControls.children().removeClass().addClass('irbtnOff');
        $($imageControls.children()[opts.nextSlide]).removeClass().addClass("irbtnOn");
    }
}
