/**
* application.js
* Adam Florin - 2010
*/

$(document).ready(function() {
  /**
  * Init Uploadify
  */
  var uploadify_params = {
		'uploader': '/embed/uploader.swf',
		'script': 'media_files',
		'auto': true,
		'scriptData': auth_params
	};
	$("#parts_upload").fileUpload($.extend(uploadify_params, {'multi': true}));
	$.extend(uploadify_params.scriptData, {'media_file[is_primary]': true});
	$("#primary_file_upload").fileUpload($.extend(uploadify_params, {'multi': false}));
	
	/**
	* give_kudos ajax
	*/
	if (logged_in) {
	  $('a.give_kudos').click(function() {
  	  var $kudos_link = $(this);
      var post_url = $kudos_link.attr('href');
      var kudos_class = $kudos_link.closest('*[class^="kudos_"]').get(0).className;
      
      $.post(post_url, auth_params, function(data, textStatus, xhr) {
        $kudos_divs = $('div.' + kudos_class);
        $kudos_divs.find('.kudos_given').show();
        $kudos_divs.find('a').hide();
      });

  	  return false;
  	});
	}
	
	/**
	* Twitter feed
	*/
	$('#twitter div').tweetable({username: 'rebakery'});
});

/**
* String utils
*/
function is_email(str) {
  return str.match(/^[\w\d._-]+@[\w\d._-]+\.[\w]{2,4}$/);
}

/**
* DOM utils
*/
function hidden_field(name, value) {
  return jQuery.create('input', {type: 'hidden', name: name, value: value});
};

/**
* jQuery Array math utils
*/
jQuery.fn.sum = function() {
  var sum = 0;
  $(this).each(function() {
    sum += this;
  })
  return sum;
};
jQuery.fn.max = function() {
  var max = 0;
  $(this).each(function() {
    if (this > max) max = this;
  })
  return max;
};
