function myInit() {
	
	$("a[href^='http:'],a[href^='https:']").not("[href*='boston.co.im']").attr('target','_blank');	
	
	$('#navigation ul li:has(li.selected)').addClass('selected');
	$('#archive > li > a').click( function() {		
		$(this).parent().find("ul:first").toggleClass("closed"); 
		return false;
		});
	$('#archive > li > ul > li > a').click( function() {		
		$(this).parent().find("ul:first").toggleClass("closed"); 
		return false;
		});
	/*
	$(".tabs").tabs("#carousel > li", {
		effect: 'fade',
		fadeInSpeed: 1000,
		rotate: true
	}).slideshow({autoplay: true, interval: 10000});
	*/
	
	$('#carousel').cycle({ 
		fx:     'fade', 
		speed:  500, 
		timeout: 5000, 
		pager:  '.tabs' 
		});	
	/*
	$('#content ul.team li div.bio p:last-child').after('<p><a href="#" class="less">Less</a></p>');
	$('#content ul.team li div.bio p').hide();
	$('#content ul.team li div.bio p:first-child').show().after('<a href="#" class="more">More</a>');
	
	$('#content ul.team li div.bio a.more').click(function() {
		$(this).parent().children().show();
		$(this).hide();
		return false;
		});
	$('#content ul.team li div.bio a.less').click(function() {
		$(this).parent().parent().children().hide();
		$(this).hide();
		return false;
		});
	*/
	
	$('#content ul.team li div.bio p.toggle a').click(function() {
		$(this).parent().parent().children('div').toggle();
		if ($(this).parent().parent().children('div').css('display') == 'block') {
		$(this).html('Less');
		} else {
		$(this).html('More');
		}
		
		return false;
		});


	$("#commentForm").submit(function() {		
		$('#commentForm').attr('method','post');
		errors = '';	
		if (!$('#cf_comment').val()) {
			errors += "Comment\n";
			}
		if (!$('#cf_name').val()) {
			errors += "Name\n";
			}
		if (!$('#cf_email').val()) {
			errors += "Email\n";
			}
		if (errors) {			
			alert("The following fields are required:\n\n"+errors);
			return false;
			} 	
		});
	}


function commentForm(id) {
	
	document.write('<input type="hidden" name="postId" value="'+id+'" /><table><tr><td><label>Name</label></td><td><input type="text" name="name" id="cf_name" class="text"/></td></tr><tr><td><label>Email</label></td><td><input type="text" name="email" id="cf_email" class="text" /></td></tr><tr><td><label>Website</label></td><td><input type="text" name="website" id="cf_website" class="text" /></td></tr><tr><td><label>Comment</label></td><td><textarea name="comment" id="cf_comment"></textarea></td></tr><tr><td>&nbsp;</td><td><input type="submit" value="Send" /> (your comments will not appear until moderated)</td></tr></table>');
	}

window.onload = function() {
	var url = 'http://twitter.com/statuses/user_timeline/bostongroupltd.json?callback=twitterCallback2&count=3';
	var script = document.createElement('script');
	script.setAttribute('src', url);
	document.body.appendChild(script);	
	}
	
function twitterCallback2(twitters) {
	var statusHTML = [];
	for (var i=0; i<twitters.length; i++){
		var username = twitters[i].user.screen_name;
		var status = twitters[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
			return '<a href="'+url+'">'+url+'</a>';
			}).replace(/\B@([_a-z0-9]+)/ig, function(reply) {
			return  reply.charAt(0)+'<a href="http://twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
			});																				
		statusHTML.push('<li><span>'+status+'</span> <span style="font-size:85%">'+relative_time(twitters[i].created_at)+'</span></li>');
		}
	if (document.getElementById('twitter_update_list')) {
		document.getElementById('twitter_update_list').innerHTML = statusHTML.join('');
		}
	}





function relative_time(time_value) {
  var values = time_value.split(" ");
  time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
  var parsed_date = Date.parse(time_value);
  var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
  var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
  delta = delta + (relative_to.getTimezoneOffset() * 60);

  if (delta < 60) {
    return 'less than a minute ago';
  } else if(delta < 120) {
    return 'about a minute ago';
  } else if(delta < (60*60)) {
    return (parseInt(delta / 60)).toString() + ' minutes ago';
  } else if(delta < (120*60)) {
    return 'about an hour ago';
  } else if(delta < (24*60*60)) {
    return 'about ' + (parseInt(delta / 3600)).toString() + ' hours ago';
  } else if(delta < (48*60*60)) {
    return '1 day ago';
  } else {
    return (parseInt(delta / 86400)).toString() + ' days ago';
  }
}
