/*	cyclic.js
 *	by kenny shen, www.northpole.sg
 */
 
// SponsorsGrp for managing rotating sponsors
Class('SponsorGrp', {
   has: {
       ident: {
           is: "rw",
           init: ""
       },
       time_limit: {
           is: "rw",
           init: 0
       }
   } 
});

$(document).ready(function() {
    var priority1 = 8000,
        priority2 = 5000;
    // initialize SponsorsGrp(s)
    var spgrp1 = new SponsorGrp({ ident:"sd_grp1", time_limit:priority1 });
    var spgrp2 = new SponsorGrp({ ident:"sd_grp2", time_limit:priority1 });
    var spgrp3 = new SponsorGrp({ ident:"sd_grp3", time_limit:priority2 });
    var spgrp4 = new SponsorGrp({ ident:"sd_grp4", time_limit:priority2 });
    var spgrp5 = new SponsorGrp({ ident:"sd_grp5", time_limit:priority2 });
    //var spgrp4 = new SponsorGrp({ ident:"sd_grp4", time_limit:priority2 });
    //var spgrp5 = new SponsorGrp({ ident:"sd_grp5", time_limit:priority2 });
    //var spgrp6 = new SponsorGrp({ ident:"sd_grp6", time_limit:priority2 });
    
    // show sponsors
    $('div#' + spgrp1.getIdent()).fadeIn().delay(spgrp1.getTime_limit()).fadeOut();
    $('div#' + spgrp2.getIdent()).delay(9000).fadeIn().delay(spgrp2.getTime_limit()).fadeOut();
    $('div#' + spgrp3.getIdent()).delay(18000).fadeIn().delay(spgrp3.getTime_limit()).fadeOut();
    $('div#' + spgrp4.getIdent()).delay(24000).fadeIn().delay(spgrp4.getTime_limit()).fadeOut();
    $('div#' + spgrp5.getIdent()).delay(30000).fadeIn().delay(spgrp5.getTime_limit()).fadeOut();
    //$('div#' + spgrp5.getIdent()).delay(31000).fadeIn().delay(spgrp5.getTime_limit()).fadeOut();
    //$('div#' + spgrp6.getIdent()).delay(36000).fadeIn().delay(spgrp6.getTime_limit()).fadeOut();
    
    // set timer for sponsors
    setInterval(function() {
        $('div#' + spgrp1.getIdent()).fadeIn().delay(spgrp1.getTime_limit()).fadeOut();
        $('div#' + spgrp2.getIdent()).delay(9000).fadeIn().delay(spgrp2.getTime_limit()).fadeOut();
        $('div#' + spgrp3.getIdent()).delay(18000).fadeIn().delay(spgrp3.getTime_limit()).fadeOut();
        $('div#' + spgrp4.getIdent()).delay(24000).fadeIn().delay(spgrp4.getTime_limit()).fadeOut();
        $('div#' + spgrp5.getIdent()).delay(30000).fadeIn().delay(spgrp5.getTime_limit()).fadeOut();
        //$('div#' + spgrp5.getIdent()).delay(31000).fadeIn().delay(spgrp5.getTime_limit()).fadeOut();
        //$('div#' + spgrp6.getIdent()).delay(36000).fadeIn().delay(spgrp6.getTime_limit()).fadeOut();
    }, 36000);
    
    
    var cat_desc_state = false,
        hover_state = false,
        cat_desc_box = 'div#category_description';
    
    // race category descriptions    
    var rtxt_tricycle = "Tricyclists are you ready? Get set, Go! The 100m Tricycle Ride at the F1 Pit Building is specially designed for children between the ages two(2) and five(5), so the whole family can ride together. Each child can be accompanied and guided on the track by an adult.",
        rtxt_kids = "Designed to ensure a safe and fun experience, this special ride is open to all children between the ages of six(6) and twelve(12).  You can let your children enjoy this safe and fun ride on their own, join as a parent-child duo or cycle as a family by taking up the Family Package!",
        rtxt_junior = "Designed to ensure a safe and fun experience, this special ride is open to all children between the ages of six(6) and twelve(12).  You can let your children enjoy this safe and fun ride on their own, join as a parent-child duo or cycle as a family by taking up the Family Package!",
        rtxt_community = "Whether you are an amateur cyclist or just looking for a fun day out, join this non-competitive ride as an individual, as a student, or form your team of four(4) to enjoy the 4-Cyclist Promo Package. This ride is for everyone of ages ten(10) and above on event day.",
        rtxt_challenge = "Ready for more than a community ride? Take up this challenge, which is open to anyone aged 14 and above.",
        rtxt_super = "Designed for the true cycling enthusiast, this challenge is open to riders aged 16 and above, subject to qualification.",
        rtxt_criterium = "A criterium, or crit, is a bike race held on a short course. The event's duration is shorter than that of a traditional road race, with the average speed and intensity being appreciably higher. All entries to these events are subject to qualification.";
    
    // rotating banner
    $('#rotate_banner img').each(function() {
			$(this).addClass("first");
		})
	try {
	    $('#rotate_banner').cycle({
    		fx: 'fade',
    		pause: 5,
    		pager:  '#rotate_banner_selector' 
    	});
	} catch(e) {}
	
	// header -> homepage
	$('#header_logo').click(function() {
	   window.location = '/'; 
	});

	
	// hide/show bg_cyclist
	($('div#content').height() >= 700) ? (function() { $('div#cyclist_bg').show(); })() : (function() { $('div#content_box').height(800); })()
	
	// category selector
	//setInterval(function() {
	//    !(hover_state) && (cat_desc_state) ? (function() { $(cat_desc_box).fadeOut(); cat_desc_state = false; })() : 0;
	//}, 2000);
	// -- tricycle
	$('div#cat_tricycle').hover(function() {
	    cat_desc_state ? (function() { $(cat_desc_box).text(rtxt_tricycle); })() : (function() { cat_desc_state = true; $(cat_desc_box).text(rtxt_tricycle) })()
	    $('div#cat_tricycle img').attr('src','/media/uploads/categories/signs_roll_01.jpg');
	    $('div#cat_kids_ride img').attr('src','/media/uploads/categories/signs_02.jpg');
	    $('div#cat_junior_challenge img').attr('src','/media/uploads/categories/signs_03.jpg');
	    $('div#cat_challenge img').attr('src','/media/uploads/categories/signs_05.jpg');
	    $('div#cat_super_challenge img').attr('src','/media/uploads/categories/signs_06.jpg');
	    $('div#cat_criterium img').attr('src','/media/uploads/categories/signs_07.jpg');
        $('div#cat_community_ride img').attr('src','/media/uploads/categories/signs_04.jpg');
	    hover_state = true;
	}, function() {
	    //cat_desc_state ? (function() { cat_desc_state = false; })() : (function() {})()
	    //$('div#cat_tricycle img').attr('src','/site_media/images/category_signs/signs_01.jpg');
	    //hover_state = false;
	});
	
	// -- kids ride
	$('div#cat_kids_ride').hover(function() {
	    cat_desc_state ? (function() { $(cat_desc_box).text(rtxt_kids); })() : (function() { cat_desc_state = true; $(cat_desc_box).text(rtxt_kids) })()
	    $('div#cat_kids_ride img').attr('src','/media/uploads/categories/signs_roll_02.jpg');
	    $('div#cat_tricycle img').attr('src','/media/uploads/categories/signs_01.jpg');
	    $('div#cat_junior_challenge img').attr('src','/media/uploads/categories/signs_03.jpg');
	    $('div#cat_challenge img').attr('src','/media/uploads/categories/signs_05.jpg');
	    $('div#cat_super_challenge img').attr('src','/media/uploads/categories/signs_06.jpg');
	    $('div#cat_criterium img').attr('src','/media/uploads/categories/signs_07.jpg');
        $('div#cat_community_ride img').attr('src','/media/uploads/categories/signs_04.jpg');
	    hover_state = true;
	}, function() {
	    //$('div#cat_kids_ride img').attr('src','/site_media/images/category_signs/signs_02.jpg');
	    //hover_state = false;
	});

	// -- junior challenge
	$('div#cat_junior_challenge').hover(function() {
	    cat_desc_state ? (function() { $(cat_desc_box).text(rtxt_junior); })() : (function() { cat_desc_state = true; $(cat_desc_box).text(rtxt_junior) })()
	    $('div#cat_tricycle img').attr('src','/media/uploads/categories/signs_01.jpg');
	    $('div#cat_kids_ride img').attr('src','/media/uploads/categories/signs_02.jpg');
	    $('div#cat_junior_challenge img').attr('src','/media/uploads/categories/signs_roll_03.jpg');
	    $('div#cat_community_ride img').attr('src','/media/uploads/categories/signs_04.jpg');
	    $('div#cat_challenge img').attr('src','/media/uploads/categories/signs_05.jpg');
	    $('div#cat_super_challenge img').attr('src','/media/uploads/categories/signs_06.jpg');
	    $('div#cat_criterium img').attr('src','/media/uploads/categories/signs_07.jpg');
	    hover_state = true;
	}, function() {
	    //cat_desc_state ? (function() { cat_desc_state = false; })() : (function() {})()
	    //$('div#cat_tricycle img').attr('src','/site_media/images/category_signs/signs_01.jpg');
	    //hover_state = false;
	});
	
	// -- community ride
	$('div#cat_community_ride').hover(function() {
	    cat_desc_state ? (function() { $(cat_desc_box).text(rtxt_community); })() : (function() { cat_desc_state = true; $(cat_desc_box).text(rtxt_community) })()
	    $('div#cat_tricycle img').attr('src','/media/uploads/categories/signs_01.jpg');
	    $('div#cat_kids_ride img').attr('src','/media/uploads/categories/signs_02.jpg');
	    $('div#cat_junior_challenge img').attr('src','/media/uploads/categories/signs_03.jpg');
	    $('div#cat_community_ride img').attr('src','/media/uploads/categories/signs_roll_04.jpg');
	    $('div#cat_challenge img').attr('src','/media/uploads/categories/signs_05.jpg');
	    $('div#cat_super_challenge img').attr('src','/media/uploads/categories/signs_06.jpg');
	    $('div#cat_criterium img').attr('src','/media/uploads/categories/signs_07.jpg');	    
	    hover_state = true;
	}, function() {
	    //$('div#cat_community_ride img').attr('src','/site_media/images/category_signs/signs_03.jpg');
	    //hover_state = false;
	});
	// -- challenge
	$('div#cat_challenge').hover(function() {
	    cat_desc_state ? (function() { $(cat_desc_box).text(rtxt_challenge); })() : (function() { cat_desc_state = true; $(cat_desc_box).text(rtxt_challenge) })()
	    $('div#cat_tricycle img').attr('src','/media/uploads/categories/signs_01.jpg');
	    $('div#cat_kids_ride img').attr('src','/media/uploads/categories/signs_02.jpg');
	    $('div#cat_junior_challenge img').attr('src','/media/uploads/categories/signs_03.jpg');
	    $('div#cat_community_ride img').attr('src','/media/uploads/categories/signs_04.jpg');
	    $('div#cat_challenge img').attr('src','/media/uploads/categories/signs_roll_05.jpg');
	    $('div#cat_super_challenge img').attr('src','/media/uploads/categories/signs_06.jpg');
	    $('div#cat_criterium img').attr('src','/media/uploads/categories/signs_07.jpg');	    
	    hover_state = true;
	}, function() {
	    //$('div#cat_challenge img').attr('src','/site_media/images/category_signs/signs_04.jpg');
	    //hover_state = false
	});
	// -- super challenge
	$('div#cat_super_challenge').hover(function() {
	    cat_desc_state ? (function() { $(cat_desc_box).text(rtxt_super); })() : (function() { cat_desc_state = true; $(cat_desc_box).text(rtxt_super) })()
	    $('div#cat_tricycle img').attr('src','/media/uploads/categories/signs_01.jpg');
	    $('div#cat_kids_ride img').attr('src','/media/uploads/categories/signs_02.jpg');
	    $('div#cat_junior_challenge img').attr('src','/media/uploads/categories/signs_03.jpg');
	    $('div#cat_community_ride img').attr('src','/media/uploads/categories/signs_04.jpg');
	    $('div#cat_challenge img').attr('src','/media/uploads/categories/signs_05.jpg');
	    $('div#cat_super_challenge img').attr('src','/media/uploads/categories/signs_roll_06.jpg');
	    $('div#cat_criterium img').attr('src','/media/uploads/categories/signs_07.jpg');	    
	    hover_state = true;
	}, function() {
	    //$('div#cat_super_challenge img').attr('src','/site_media/images/category_signs/signs_05.jpg');
	    //hover_state = false;
	});
	// -- criterium
	$('div#cat_criterium').hover(function() {
	    cat_desc_state ? (function() { $(cat_desc_box).text(rtxt_criterium); })() : (function() { cat_desc_state = true; $(cat_desc_box).text(rtxt_criterium) })()
	    $('div#cat_tricycle img').attr('src','/media/uploads/categories/signs_01.jpg');
	    $('div#cat_kids_ride img').attr('src','/media/uploads/categories/signs_02.jpg');
	    $('div#cat_junior_challenge img').attr('src','/media/uploads/categories/signs_03.jpg');
	    $('div#cat_community_ride img').attr('src','/media/uploads/categories/signs_04.jpg');
	    $('div#cat_challenge img').attr('src','/media/uploads/categories/signs_05.jpg');
	    $('div#cat_super_challenge img').attr('src','/media/uploads/categories/signs_06.jpg');
	    $('div#cat_criterium img').attr('src','/media/uploads/categories/signs_roll_07.jpg');	    
	    hover_state = true;
	}, function() {
	    //$('div#cat_criterium img').attr('src','/site_media/images/category_signs/signs_06.jpg');
	    //hover_state = false;
	});
    // default
    $("div#category_description").text(rtxt_community).fadeIn();
    $('div#cat_community_ride img').attr('src','/media/uploads/categories/signs_roll_04.jpg');
    
    // reg btn 
    // rollover
    $('#register_race_btn').hover(function() {$('#register_race_btn').attr('src', '/site_media/images/race/register_now_over.jpg');}, function() {$('#register_race_btn').attr('src', '/site_media/images/race/register_now.jpg');});
    $('.register_race_btn').hover(function() {$('.register_race_btn').attr('src', '/site_media/images/race/register_now_over.jpg');}, function() {$('.register_race_btn').attr('src', '/site_media/images/race/register_now.jpg');});
});


