$(document).ready(function(){
	// Change video links for mobile browsers
	fix_mobiles();
	
	_init_rotating_news();
	_init_home_videos();
	
	if( $('#twitts .list').length > 0 ) {
		$("#twitts .list").tweet({
			username: "wildcomm",
			list: "wildcomm-pro-hunters",
			avatar_size: 64,
			count: 10,
			loading_text: "loading tweets...",
			callback : function(){
				$('#twitts').vertical_scroll();
			}
		});	
	}
	
	// Fancybox
	try{
		$('a[rel*=fancybox]').fancybox();
	}catch(e){}
	
	
	$('.sign-up-button').click(function(){
		var div = $(this).parent().find('.sign-up-form:eq(0)');
		
		if( div.css('display') == 'none' ) {
			div.fadeIn();
		}else {
			div.hide();
		}
		return false;
	});
	
	$('.corps ul li').hover(
		function(){ $(this).addClass('corp-hover'); },
		function(){ $(this).removeClass('corp-hover'); }
	)
	
	$('.header-slides div').slide();
	
	
	//
	if(is_logged()) {
		$('.items-shows ul.entries li').css({ 'min-height' : '150px' });
	}
	/*
	$('.item-link').each(function(){
		var url = $(this).find('a:eq(0)').attr('href');
		$(this).parent().find('a.item-anchor:eq(0)').attr('href', url);
	})
	*/
	
	// Facebook feed
	//facebook_feed('75540539408');
	
	// Facebox
	try {
		$('a[rel*=facebox]').facebox({ popup_class : '' });
	} catch(e){}
	
	
	// fixing corp title
	if($('.corp-title').length > 0 ) {
		if($('.corp-title h1.title').text().indexOf(' ') != -1)
		$('.corp-title h1.title').html( '<strong>' + $('.corp-title h1.title').text().replace(' ', '</strong> ') );
	}
	
	// Active corp link
	var active_index = 0;
	var i = 0;
	$('.corp-nav a').each(function(){
		if( window.location.href.toString().indexOf( $(this).attr('href') ) != -1 ){
			active_index = i;
			return false;
		}
		i++;
	});
	$('.corp-nav li').eq(active_index).addClass('active');
	
	
	$('.wild-gears-home li').multiple_slide({ num: 3 });
	
	
	$('.corps li').css('cursor', 'pointer');
	$('.corps li').click(function(){
		window.location.href = $(this).find('a:eq(0)').attr('href');
		return false;
	});
	
	
	// Showing random logos;
	show_random_logos('.industrySponsors .industrySponsorsLogos:eq(0) li', 4);
	show_random_logos('.industrySponsors .industrySponsorsLogos:eq(1) li', 3);
	show_random_logos('.industrySponsors .industrySponsorsLogos:eq(2) li', 1);
	
	
	// Gear Hidden text
	$('.wild-gears .gear-desc').each(function(){
		var a = $(this).parent();
		var desc =  $(this).remove();
		a.html( '<span class="gear-info">' + a.html() + '</span>');
		a.append(desc);
	});
	
	$('.wild-gears li').hover(
		function(){
			var desc = $(this).find('.gear-desc');
			if(desc.length == 0) return;
			
			var info = $(this).find('.gear-info');
			
			info.hide();
			desc.fadeIn();
		},
		function(){
			var desc = $(this).find('.gear-desc');
			if(desc.length == 0) return;
			
			var info = $(this).find('.gear-info');
			
			desc.hide();
			info.fadeIn();
		}
	);
	
	$(window).load(function(){
		$('.industry-scroll').vertical_scroll();
	});
	
	$('img[src=""]').hide();
	
	$('.WCFORM textarea').parent().parent().addClass('WCformMessage right').removeClass('FORMitem');
	$('.WCFORM .FORMitem').wrapAll('<div class="left" />');
	$('.contact-form .captchaArea .captchaLabel, .contact-form .captchaArea input, .contact-form .captchaArea .errorEmpty').wrapAll('<div class="captchaLabelBox" />');
	
	
	// Facebook accordion
	$('.fb-accordion').fb_accordion({
		'ids' : [
			{'id':'74579639833', 'name': 'Addicted to the Outdoors'},
			{'id':'329636666152'},
			{'id':'MichaelWaddellsBoneCollector'},
			{'id':'59804552982'},
			{'id':'craigmorganmusic', 'name': 'Craig Morgan All Access'}
		]
	});
});



// NEWS 
var news = 0;
function _init_rotating_news(){
	var all_news = $('#rss li').length;
	window.setInterval(function(){
		news++;
		if( all_news == news )
			news = 0;
			
		_show_news( news );
	}, 3000);
}

function _show_news( index ){
	var top = -1 * 14 * index;
	$('#rss ul').animate({ 'top' : top + 'px' });
}

function is_logged(){
	var is_logged = $('a.logout').length > 0
	return is_logged;
}


// Home Videos
function _init_home_videos(){
	// Load Random video;
	var num_videos = $('.video-item').length - 1;
	var rand_index = get_rand(0, num_videos);
	
	load_video(rand_index);
	
	if( rand_index >= 4 && $('.videos ul').length == 1) {
		$('.videos').scrollTop(rand_index * $('.video-item').parent().height());
	}
	
	
	$('.video-item').click(function(){
		if($(this).attr('rel') == 'mobile')
			return true;
		//var index = $(this).parent().parent().find('a').index(this);
		var index = $('#main').find('a.video-item').index(this);
		load_video( index );
		return false;
	});
}

function load_video( index ){
	$('.video-item').removeClass('active');
	
	var link = $('.video-item').eq(index);
	link.addClass('active');
	
	/*var url = link.attr('href');
	
	$('#video').load(url);*/
	
	$('#video .video-content').hide();
	$('#video .video-content').eq(index).fadeIn();
}


(function($) {
	$.fn.slide = function(settings){
		
		var selector = $(this);
		var parent = $(selector).parent();
		parent.css({ 'position': 'relative' });
		
		var all = $(selector).length;
	
		if( all == 1 )
			return;
		
			
		var index = 0;
		var next_index;
		
		$(selector).css({'position' : 'absolute', 'top' : '0px', 'left' : '0px' });
		
		var max_z_index = all + 1;
		$(selector).each(function(){
			$(this).css({'z-index' : max_z_index });
			max_z_index--;
		})
		
		$(selector).eq(index).fadeIn();
		
		window.setInterval(function(){
			$(selector).eq(index).fadeOut('slow');
			index++;
			if( index == all ) {
				index = 0;
			}
			$(selector).eq(index).show();
		}, 4000);
		
	}
})(jQuery);


(function($) {
	$.fn.multiple_slide = function(settings){
		
		var selector = $(this);
		var parent = $(selector).parent();
		parent.css({ 'position': 'relative' });
		
		var num_to_animate = settings.num;
		
		var all = $(selector).length;
	
		if( all <= num_to_animate )
			return;
		
		var index_to_animate = num_to_animate;	
		var index = 0;
		var next_index;
		var h = $(selector).outerHeight();
		
		
		$(parent).css('position', 'relative');
		$(selector).hide()
			.css('position', 'absolute')
			.css('top', '0')
			.css('width', '100%')
			.css('left', '0');
		
		for(var i=index; i<index+num_to_animate; i++){
			$(selector).eq(i).fadeIn().css('top', i*h);
		}
		
		var j = 5;
		var last_index = 0;
		window.setInterval(function(){
			
			var last_index = index_to_animate - num_to_animate;
			if(last_index < 0 ){
				last_index = all + last_index;
			}
			
			var last_item = $(selector).eq(last_index);
			
			
			var new_item = $(selector).eq(index_to_animate);
			new_item.css('top', index*h).css('z-index', j);
			
			
			last_item.fadeOut('slow', function(){
				new_item.fadeIn('slow');
			});
			
			index++;
			if( index >= num_to_animate ) {
				index = 0;
			}
			
			index_to_animate++;
			if( index_to_animate >= all ) {
				index_to_animate = 0;
			}
			j++;
			
		}, 2500);
		
	}
})(jQuery);

// Facebook Feed
var facebook_div = '.facebook-posts';
var fb_id;
var facebook_updates;
function facebook_feed( facebook_id ){
	if( $(facebook_div).length == 0 ) 
		return;
		
	fb_id = facebook_id;
	
	$(facebook_div).html('<span class="fb-loading">Loading...</span>');
	
	var script_url = 'http://graph.facebook.com/' + facebook_id + '/posts';
	var script_url = '/resources/php/facebook_proxy.php?url=http://graph.facebook.com/' + facebook_id + '/posts';
	$.getJSON(script_url, function(data){
		facebook_updates = data;
		load_facebook_updates();
	})
}

function load_facebook_updates(){
	var limit = 10;
	var html = '';
	var fb_link = 'http://facebook.com/profile.php?id=' + fb_id; 
	var fb_profile_image_url = 'http://graph.facebook.com/' + fb_id + '/picture';
	
	for (var i=0; i < facebook_updates.data.length; i++) {
		
		var update = facebook_updates.data[i];
		
		if( typeof(update.message) == "undefined" ) {
			limit++;
			continue;
		}
		
		
		var message = update.message;
		var from = update.from.name;
		var time = from_facebook_date( update.created_time );
		
		var actions = '';
		
		if(typeof(update.actions) != 'undefined' ) {
			for ( var j=0; j < update.actions.length; j++ ) {
				var action = update.actions[j];
				actions += ' - <a href="' + action['link'] + '">' + action['name'] + '</a>';
			}
		}
		
		html += '<li>';
		html += '<a href="' + fb_link + '" target="_blank">';
		html += '<span class="entry-image"><img src="' + fb_profile_image_url + '" alt="" /></span>';
		html += '<span class="entry-info"><strong>' + from + '</strong>' + message + '</span>';
		html += '</a>';
		html += '</li>';
		
		
		if( i==limit-1 )
		break;
	};
	
	$(facebook_div).html( html );
	$('.facebook-posts-clip').vertical_scroll();
	
}

function htmlize( str ) {
	return str
    .replace(/(ftp|http|https|file):\/\/[\S]+(\b|$)/gim,
'<a href="$&" target="_blank" class="fb-link">$&</a>');

}

function from_facebook_date( fb_date ){
	//2010-06-15T14:19:29+0000
	var fb_date = fb_date.replace('+0000', '');
	var ex_fb_date = fb_date.split('T');
	
	var date = ex_fb_date[0];
	var time = ex_fb_date[1];
	
	var ex_date = date.split('-');
	var ex_time = time.split(':');
	
	var year = ex_date[0];
	var month = ex_date[1];
	var day = ex_date[2];
	
	var hours = ex_time[0];
	var minutes = ex_time[1];
	
	return month + '.' + day + '.' + year + ' ' + hours + ':' + minutes;
	
}

function get_rand(min, max)  {  
	return Math.floor(Math.random() * (max - min + 1)) + min; 
}


(function($) {
	$.fn.fb_accordion = function(settings){
		var selector = $(this);
		var fb_ids = settings['ids'];
		
		if(selector.length == 0) {
			return;
		}
		
		var holder = $('<div class="fb-acc-widget"></div>').appendTo(selector);
		var ul = $('<ul class="list"></ul>').appendTo(holder);
		ul.css('top', 0).hide();
		
		var loading = $('<span class="fb-acc-loading"></span>').appendTo(holder);
		loading.fadeIn();
		
		// loading image and facebook name
		
		for(var i=0; i<fb_ids.length; i++) {
			
			
			
			var facebook_id = fb_ids[i]['id'];
			
			
			//var script_url = '/resources/php/facebook_proxy.php?url=http://graph.facebook.com/' + facebook_id;
			var script_url = '/resources/php/facebook_proxy.php';
			
			$.getJSON(script_url, {'url': 'http://graph.facebook.com/' + facebook_id, 'index': i}, function(data){
				
				
				var index = parseInt(this.url.split('index=')[1]);
				
				_append_li(data, index);
				
				//hide loading
				if( ul.find('li').length == fb_ids.length ) {
					loading.hide();
					ul.fadeIn(function(){ul.show()});
					
					holder.vertical_scroll({ 'is_fb' : true });
				}
			});
		}
		
		var last_index = -1;
		
		
		selector.find('.fb-head').live('click', function(){
			var fb_id = $(this).attr('fbid');
			var index = $(this).parent().parent().find('.fb-head').index(this);
			
			var li = $(this).parent();
			selector.find('.fb-posts-holder').hide();
			selector.find('.fb-acc-loading').hide();
			
			var ul_t = -1 * index * $(this).parent().outerHeight();
			
			
			
			if(last_index == index) {
				last_index = -1;
				return false;
			}
			
			
			
			var fb_post_holder = $(this).parent().find('.fb-posts-holder');
			fb_post_holder.fadeIn();
			
			ul.stop().animate({ 'top' : ul_t + 'px' }, function(){
				ul.css('top', ul_t + 'px');
			});
			
			if(fb_post_holder.find('.fb-acc-loading').length == 0 ) {
				fb_post_holder.append('<span class="fb-acc-loading"></span>');
			}
			
			fb_post_holder.find('.fb-acc-loading').fadeIn();
			
			
			
			
			if( li.find('.fb-posts').length > 0 ) {
				li.find('.fb-posts').show();
			}else {
				
				
				var script_url = '/resources/php/facebook_proxy.php?url=http://graph.facebook.com/' + fb_id + '/posts';
				$.getJSON(script_url, function(data){
					
					var html = _get_posts_html(fb_id, data);
					var posts_div = $('<div class="fb-posts"></div>').appendTo( fb_post_holder );
					var posts_ul = $('<ul></ul>').appendTo(posts_div);
					posts_ul.append(html);
					
					fb_post_holder.find('.fb-acc-loading').hide();
					
				});
			}
			
			last_index = index;
			
			return false;
		});
		
		
		function _append_li( data, index ) {
			
			var fb_name = typeof(fb_ids[index]['name']) != 'undefined' ? fb_ids[index]['name'] : data['name'];
			
			var html = '<li>';
			html += '<a href="#" class="fb-head" fbid="' + data['id']  +'">';
			html += '<span class="fb-img"><img src="' + data['picture'] + '" alt="" /></span>';
			html += '<span class="fb-name">' + fb_name + '</span>';
			html += '</a>';
			html += '<div class="fb-posts-holder" style="display:none"></div>';
			html += '</li>';
			
			ul.append(html);
		}
		
		
		function _get_posts_html(fb_id, data) {
			
			var facebook_data = data;
			var limit = 2;
			var html = '';
			var fb_link = 'http://facebook.com/profile.php?id=' + fb_id; ;
			
			for (var i=0; i < facebook_data.data.length; i++) {
				
				var update = facebook_data.data[i];
				
				if( typeof(update.message) == "undefined" ) {
					limit++;
					continue;
				}
				
				
				var message = htmlize(update.message);
				var from = update.from.name;
				
				html += '<li>';
				html += '<a class="fb-post-name" href="'+fb_link+'" target="_blank">' + from + ': </a>';
				html += '<span class="fb-post-message">' + message + '</span>';
				html += '</li>';
				
				if( i==limit-1 ) break;
			};
			
			return html;
		}
	}
})(jQuery);



(function($) {
	$.fn.vertical_scroll = function(settings){
		
		var clip = $(this);
	
		if(clip.length == 0 )
			return;
		
		var ul = clip.find('.list:eq(0)');
		
		var direction = 'bottom';
		var ul_h = ul.height();
		var is_fb = typeof(settings) != 'undefined' && typeof(settings.is_fb) != 'undefined' ? settings['is_fb'] : false;
		
		var clip_h = clip.height();
		var clip_y = clip.position().top;
		
		
		if( ul_h < clip_h && !is_fb )
			return;
		
		/*
		var html = '';
		html += '<div style="position:relative; padding:12px 0;" class="vs-rel">';
		html += '<span class="vs-arr vs-arr-t"></span>';
		html += '<span class="vs-arr vs-arr-b"></span>';
		html += '<div style="position:relative; overflow:hidden; height:' + (clip_h - 24) + 'px" class="vs-container">';
		html += '</div>';
		html += '</div>';
		
		clip.append(html);
		
		
		var top_arrow = clip.find('.vs-arr-t:eq(0)');
		var bottom_arrow = clip.find('.vs-arr-b:eq(0)');
		
		var vs_container = clip.find('.vs-container:eq(0)');
		vs_container.append(ul.remove());
		*/
		
		/*
		ul.wrap('<div style="position:relative; overflow:hidden; height:' + (clip_h - 24) + 'px" class="vs-container"></div>');
		
		var vs_container = clip.find('.vs-container:eq(0)');
		vs_container.wrap('<div style="position:relative; padding:12px 0;" class="vs-rel"></div>');
		vs_container.before('<span class="vs-arr vs-arr-t"></span>');
		vs_container.before('<span class="vs-arr vs-arr-b"></span>');
		
		var top_arrow = clip.find('.vs-arr-t:eq(0)');
		var bottom_arrow = clip.find('.vs-arr-b:eq(0)');
		
		
		var ul = vs_container.find('.list:eq(0)');
		*/
		
		var animated = false;
		
		var top_position;
		var direct;
		var space_not_enabled = Math.ceil(clip_h / 4);
		
		
		clip.mousemove(function(e){
			
			var y = e.pageY - clip.position().top;
			
			var top_y = clip_h / 2 - space_not_enabled;
			var bottom_y = clip_h / 2 + space_not_enabled;
			
			if( y > clip_h / 2 ) {
				direct = 'bottom';
			}else {
				direct = 'top';
			}
			
			if( direction != direct || !animated ){
				direction = direct;
				_animate_vertical();
			}
			
			if( y > top_y && y < bottom_y ) {
				_stop_v();
			}
			
		});
		
		/*
		top_arrow.mousedown(function(){ direction = 'top'; _animate_vertical();  });
		top_arrow.mouseup(function(){ _stop_v(); });
		
		bottom_arrow.mousedown(function(){ direction = 'bottom'; _animate_vertical(); });
		bottom_arrow.mouseup(function(){ _stop_v(); });
		*/
		
		clip.hover(function(){}, function(){
			_stop_v();
			
		});
		
		function _stop_v(){
			ul.stop();
			animated = false;
		}
		
		function _animate_vertical(){
			var ul_h = ul.height();
			
			if( ul_h < clip_h ) {
				return;
			}
			
			if( direction == 'top' ) {
				top_position = 0;
			}else {
				top_position = clip_h - ul_h;
			}
			
			var space_left = Math.abs( top_position - ul.position().top );
			time = Math.ceil(space_left / clip_h * 4000);
			
			
			ul.stop();
			ul.animate({ 'top' : top_position + 'px' }, time, 'linear');
			animated = true;
		}
		
	}
})(jQuery);


// Check if is mobile browser
var mobile_clients = [
	"midp",
	"240x320",
	"blackberry",
	"netfront",
	"nokia",
	"panasonic",
	"portalmmm",
	"sharp",
	"sie-",
	"sonyericsson",
	"symbian",
	"windows ce",
	"benq",
	"mda",
	"mot-",
	"opera mini",
	"philips",
	"pocket pc",
	"sagem",
	"samsung",
	"sda",
	"sgh-",
	"vodafone",
	"xda",
	"iphone",
	"android"
];

function is_mobile(){
	var uagent = navigator.userAgent.toLowerCase();
	for (var i in mobile_clients) {
		if (uagent.indexOf(mobile_clients[i]) != -1) {
			return true;
		}
	}
    return false;
}

function fix_mobiles(){
	// Mobile links change
	$('a.mobile-link').each(function(){
		this._mobile_link = $(this).attr('rel');
		$(this).attr({ 'rel': '' });
	});
	
	if( is_mobile() || !FlashDetect.installed ){
		$('a.mobile-link').each(function(){
			$(this).removeClass('tab');
			$(this).attr({ 'href': this._mobile_link });
			$(this).attr({ 'rel' : 'mobile' });
		});
	}
}


function get_rand_numbers(start, end, count){
	var interval_start = start;
	var interval_end = end;
	
	var random_numbers = [], random_number, number_already_in_set;

	if (interval_end - interval_start < count - 1) {
		throw "avoid infinte loop. ";
	}

	while (random_numbers.length < count) {
		random_number = Math.floor(Math.random() * (interval_end - interval_start + 1)) + interval_start;
		number_already_in_set = false;
		for (var i=0; i < random_numbers.length; i++) {
			if (random_numbers[i]==random_number) {
				number_already_in_set = true;
				break;
			}
		}
		if (!number_already_in_set) {
			random_numbers.push(random_number);
		}
	}
	
	return random_numbers;
	
}

function show_random_logos( selector, num_logos ) {
	if( $(selector).length > num_logos ) {
		var logos = $(selector);
		var max = logos.length-1;
		var rands = get_rand_numbers(0, max, num_logos);
		
		logos.hide();
		for(var i=0; i<rands.length; i++){
			var rand = rands[i];
			logos.eq(rand).show();
		}
	}
}

var FlashDetect=new function(){var self=this;self.installed=false;self.raw="";self.major=-1;self.minor=-1;self.revision=-1;self.revisionStr="";var activeXDetectRules=[{"name":"ShockwaveFlash.ShockwaveFlash.7","version":function(obj){return getActiveXVersion(obj);}},{"name":"ShockwaveFlash.ShockwaveFlash.6","version":function(obj){var version="6,0,21";try{obj.AllowScriptAccess="always";version=getActiveXVersion(obj);}catch(err){}
return version;}},{"name":"ShockwaveFlash.ShockwaveFlash","version":function(obj){return getActiveXVersion(obj);}}];var getActiveXVersion=function(activeXObj){var version=-1;try{version=activeXObj.GetVariable("$version");}catch(err){}
return version;};var getActiveXObject=function(name){var obj=-1;try{obj=new ActiveXObject(name);}catch(err){obj={activeXError:true};}
return obj;};var parseActiveXVersion=function(str){var versionArray=str.split(",");return{"raw":str,"major":parseInt(versionArray[0].split(" ")[1],10),"minor":parseInt(versionArray[1],10),"revision":parseInt(versionArray[2],10),"revisionStr":versionArray[2]};};var parseStandardVersion=function(str){var descParts=str.split(/ +/);var majorMinor=descParts[2].split(/\./);var revisionStr=descParts[3];return{"raw":str,"major":parseInt(majorMinor[0],10),"minor":parseInt(majorMinor[1],10),"revisionStr":revisionStr,"revision":parseRevisionStrToInt(revisionStr)};};var parseRevisionStrToInt=function(str){return parseInt(str.replace(/[a-zA-Z]/g,""),10)||self.revision;};self.majorAtLeast=function(version){return self.major>=version;};self.minorAtLeast=function(version){return self.minor>=version;};self.revisionAtLeast=function(version){return self.revision>=version;};self.versionAtLeast=function(major){var properties=[self.major,self.minor,self.revision];var len=Math.min(properties.length,arguments.length);for(i=0;i<len;i++){if(properties[i]>=arguments[i]){if(i+1<len&&properties[i]==arguments[i]){continue;}else{return true;}}else{return false;}}};self.FlashDetect=function(){if(navigator.plugins&&navigator.plugins.length>0){var type='application/x-shockwave-flash';var mimeTypes=navigator.mimeTypes;if(mimeTypes&&mimeTypes[type]&&mimeTypes[type].enabledPlugin&&mimeTypes[type].enabledPlugin.description){var version=mimeTypes[type].enabledPlugin.description;var versionObj=parseStandardVersion(version);self.raw=versionObj.raw;self.major=versionObj.major;self.minor=versionObj.minor;self.revisionStr=versionObj.revisionStr;self.revision=versionObj.revision;self.installed=true;}}else if(navigator.appVersion.indexOf("Mac")==-1&&window.execScript){var version=-1;for(var i=0;i<activeXDetectRules.length&&version==-1;i++){var obj=getActiveXObject(activeXDetectRules[i].name);if(!obj.activeXError){self.installed=true;version=activeXDetectRules[i].version(obj);if(version!=-1){var versionObj=parseActiveXVersion(version);self.raw=versionObj.raw;self.major=versionObj.major;self.minor=versionObj.minor;self.revision=versionObj.revision;self.revisionStr=versionObj.revisionStr;}}}}}();};FlashDetect.JS_RELEASE="1.0.4";