/*

            _/    _/_/    _/_/_/_/_/                              _/       
               _/    _/      _/      _/_/    _/    _/    _/_/_/  _/_/_/    
          _/  _/  _/_/      _/    _/    _/  _/    _/  _/        _/    _/   
         _/  _/    _/      _/    _/    _/  _/    _/  _/        _/    _/    
        _/    _/_/  _/    _/      _/_/      _/_/_/    _/_/_/  _/    _/     
       _/                                                                  
    _/

    Created by David Kaneda <http://www.davidkaneda.com>
    Documentation and issue tracking on Google Code <http://code.google.com/p/jqtouch/>
    
    Special thanks to Jonathan Stark <http://jonathanstark.com/>
    and pinch/zoom <http://www.pinchzoom.com/>
    
    (c) 2009 by jQTouch project members.
    See LICENSE.txt for license.

*/

(function($) {
    if ($.jQTouch)
    {
        $.jQTouch.addExtension(function Floaty(jQT){
            
            $.fn.makeFloaty = function(options){
                var defaults = {
                    align: 'top',
                    spacing: 20,
                    time: '.3s'
                }
                var settings = $.extend({}, defaults, options);
                settings.align = (settings.align == 'top') ? 'top' : 'bottom';
                
                return this.each(function(){
                    var $el = $(this);
                    
                    $el.css({
                        '-webkit-transition': 'top ' + settings.time + ' ease-in-out',
                        'display': 'block',
                        'z-index':"-1",
                        'min-height': '0 !important'
                    }).data('settings', settings);
                    
                    $(document).bind('scroll', function(){
                        if ($el.data('floatyVisible') === true)
                        {
                        	$el.css({'z-index': '1'})
                            $el.scrollFloaty();
                        }
                    });
                    $el.hideFloaty();
                });
            }

            $.fn.scrollFloaty = function(){
                return this.each(function(){
                    var $el = $(this);
                    var settings = $el.data('settings');
                    var wHeight = $('html').attr('clientHeight'); // WRONG
                    
                    var newY = window.pageYOffset +
                        ((settings.align == 'top') ? 
                            settings.spacing : wHeight - settings.spacing - $el.get(0).offsetHeight);
                    
                    $el.css('top', newY).data('floatyVisible', true);
                });
            }

            $.fn.hideFloaty = function(){
                return this.each(function(){
                    var $el = $(this);
                    var oh = $el.get(0).offsetHeight;
                    
                    $el.css('top', -oh-10).data('floatyVisible', false);
                });
            }
            
            $.fn.toggleFloaty = function(){

                return this.each(function(){
                    var $el = $(this);
                    $el.css({'z-index': '1'})
                    if ($el.data('floatyVisible') === true){
                        $el.hideFloaty();
                    }
                    else
                    {
                        $el.scrollFloaty();
                    }
                });
            }
        });
    }
})(jQuery);




/*
 * Show your last tweet in real time
 * 
 * http://www.position-absolute.com
 *
 * Copyright (c) 2009 Cedric Dugas
 * Licensed under the MIT license.
 */
	$(document).ready(function() {
		tweetInterval("PosAbsolute")	// Start tweet funciton parameter: twitter username
		 
	});		
	function tweetInterval(twitterName){
		var lastTweet
		// TWEET STYLE
		

	
		 $("body").append('<div id="twitter_script"></div>')
		 setInterval("createJSONtweet('"+twitterName+"')",30000)
		 setTimeout("createJSONtweet('"+twitterName+"')",10000)
		 
		 twitterCallback2 = function(tweet) {		// FUNCTION CALLED WHEN TWITTER SCRIPT IS PARSED
		 	if(tweet){
			 	var updateTweet = tweet[0].text			// Tweet text
		 	}
			if(lastTweet != updateTweet){ 				// CREATE AND ANIMATE TWEET
				if(lastTweet){	
					var tweetAppend = '<a target="_blank" href="http://www.twitter.com/'+twitterName+'" id="lastTweet"><strong>'+twitterName+' just tweeted:</strong><span>'+updateTweet+'</span></a>'
					$(".floaty").html(tweetAppend)
	
					lastTweet = updateTweet
					$(".floaty").toggleFloaty()
					setTimeout('fadeTweetOut()',9000)
					
					fadeTweetOut = function(){
						$(".floaty").toggleFloaty()
					}
				}else{
					lastTweet = updateTweet
				}
			}
		 }
		createJSONtweet = function(twitterName){		// PARSE twitter SCRIPT GET CALLBACK FUNCTION AND JSON 	
			 var getTweet = document.createElement("script");
			 getTweet.src="http://twitter.com/statuses/user_timeline/"+twitterName+".json?callback=twitterCallback2&count=1";
			 document.getElementById('twitter_script').appendChild(getTweet)
		 }
	}