
// 'stacks' is the Stacks global object.
// All of the other Stacks related Javascript will 
// be attatched to it.
var stacks = {};


// this call to jQuery gives us access to the globaal
// jQuery object. 
// 'noConflict' removes the '$' variable.
// 'true' removes the 'jQuery' variable.
// removing these globals reduces conflicts with other 
// jQuery versions that might be running on this page.
stacks.jQuery = jQuery.noConflict(true);

// Javascript for stacks_in_166_page1
// ---------------------------------------------------------------------

// Each stack has its own object with its own namespace.  The name of
// that object is the same as the stack's id.
stacks.stacks_in_166_page1 = {};

// A closure is defined and assigned to the stack's object.  The object
// is also passed in as 'stack' which gives you a shorthand for referring
// to this object from elsewhere.
stacks.stacks_in_166_page1 = (function(stack) {

	// When jQuery is used it will be available as $ and jQuery but only
	// inside the closure.
	var jQuery = stacks.jQuery;
	var $ = jQuery;
	

// xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
// TWEETS STACK BY http://www.doobox.co.uk XXXXXXX
// COPYRIGHT@2010 MR JG SIMPSON, TRADING AS DOOBOX
// ALL RIGHTS RESERVED XXXXXXXXXXXXXXXXXXXXXXXXXXX
// xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx




// DOCUMENT READY FUNCTIONS
$(document).ready(function() {

   switch ("simbo") { 
        case 'TimelessHotel': 

            break; //end case 

        case 'ParadiseInn': 
   
            break; //end case 

        case 'TetrisHotel': 
 
            break; //end case  

        case 'JamstoneInn': 
   
            break; //end case 
    }




(function($){
	
	$.fn.stacks_in_166_page1twitterfeed = function(username, options) {	
	
		// Set pluign defaults
		var defaults = {
			limit: 3,
			tweeticon: true,
			retweets: false,
			replies: false,
			ssl: false
		};  
		var options = $.extend(defaults, options); 
		
		// Functions
		return this.each(function(i, e) {
			var $e = $(e);
			var s = '';
			
			// Add feed class to user div
			if (!$e.hasClass('stacks_in_166_page1twitterFeed')) $e.addClass('stacks_in_166_page1twitterFeed');
			
			// Check for valid user name
			if (username == null) return false;

			// Check limit does not exceed max
			if (options.limit > 200) options.limit = 200;

			// Check for SSL protocol
			if (options.ssl) s = 's';

			// Reverse replies option
			if (options.replies == true) { options.replies = false; } else { options.replies = true; }

			// Define Twitter feed request
			var url = 'http'+ s +'://api.twitter.com/1/statuses/user_timeline.json?include_rts='+ options.retweets +'&exclude_replies='+ options.replies +'&screen_name='+ username +'&count='+ options.limit;
			var params = {};

			params.count = options.limit;

			// Send request
			jQuery.ajax({
				url: url,
				data: params,
				dataType: 'jsonp',
				success: function (o) {
					_callback(e, o, options);
				}
			});
				
		});
	};
	
	// Callback function to create HTML result
	var _callback = function(e, feeds, options) {
		if (!feeds) {
			return false;
		}
		var html = '';	
		

		// Add body
		html += '<ul>';
		
		// Add feeds
		for (var i=0; i<feeds.length; i++) {
			
			// Get individual feed
			if (feeds[i].retweeted_status) {
				var tweet= feeds[i].retweeted_status;
			} else {
				var tweet= feeds[i];
			}
			var link = '<a href="http://twitter.com/' + tweet.user.screen_name + '/" title="Visit '+ tweet.user.name +' on Twitter">';

			// Add feed row
			html += '<li class="stacks_in_166_page1twitterRow"><div class="stacks_in_166_page1rowinner">';

			// Add user icon if required
			if ("show" == "show") {
				var icon = tweet.user.profile_image_url;

				html += link + '<img src="'+ icon +'" alt="'+ name +'" /></a>';
			}
			
			if ("show" == "custom") {
				html += link + '<img src="files/testimagecontrol_166.png" alt="'+ name +'" /></a>';
			}
		
			
			// Add lapsed time if required
			if ("top" == "top") {
				var lapsedTime = getLapsedTime(tweet.created_at);
				html += '<div class="stacks_in_166_page1tweetTime">'+ lapsedTime +'</div>'
			}
			
			
			html += '<div class="stacks_in_166_page1bodycontainer">';
			
			

			// Add user if required
				var name = tweet.user.name;
				if ("username" == "username") {
				html += '<div class="stacks_in_166_page1tweetName">'+ link + name +'</a></div>'
				}else if("username" == "custom"){
				html += '<div class="stacks_in_166_page1tweetName">Recently Tweeted</div>'
				}else{
				html += ""
				}
			
			
			// Get tweet text and add links (by Yusuke Horie)
			var text = tweet.text
				.replace(/(https?:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)/, function (u) {
					var shortUrl = (u.length > 30) ? u.substr(0, 30) + '…': u;
					return '<a href="' + u + '" title="Click to view this link">' + shortUrl + '</a>';
				})
				.replace(/@([a-zA-Z0-9_]+)/g, '@<a href="http://twitter.com/$1" title="Click to view $1 on Twitter">$1</a>')
				.replace(/(?:^|\s)#([^\s\.\+:!]+)/g, function (a, u) {
					return ' <a href="http://twitter.com/search?q=' + encodeURIComponent(u) + '" title="Click to view this on Twitter">#' + u + '</a>';
			});
			html += '<div class="stacks_in_166_page1tweetmessage">'+ text+'</div>'
			html += '</div>';
			
			// Add lapsed time if required
			if ("top" == "bottom") {
				var lapsedTime = getLapsedTime(tweet.created_at);
				html += '<div class="stacks_in_166_page1tweetTime">'+ lapsedTime +'</div>'
			}
			
			
			html += '<div style="clear:both;"></div></div></li>';
						
		}
		
		html += '</ul>' +
			'</div>'
		
		$(e).html(html);
	};

	function getLapsedTime(strDate) {
		
		// Reformat Twitter date so that IE can convert
		strDate = Date.parse(strDate.replace(/^([a-z]{3})( [a-z]{3} \d\d?)(.*)( \d{4})$/i, '$1,$2$4$3'));

		// Define current time and format tweet date
		var todayDate = new Date();	
		var tweetDate = new Date(strDate)

		// Get lasped time in seconds
		var lapsedTime = Math.round((todayDate.getTime() - tweetDate.getTime())/1000)

		// Return lasped time in seconds, minutes, hours, days and weeks
		if (lapsedTime < 60) {
			return 'JP';
		} else if (lapsedTime < (60*60)) {
			return (Math.round(lapsedTime / 60)) + 'm';
		} else if (lapsedTime < (24*60*60)) {
			return (Math.round(lapsedTime / 3600)) + 'h';  //removed -1 from hour not so sure yet??
		} else if (lapsedTime < (7*24*60*60)) {
			return (Math.round(lapsedTime / 86400)) + 'd';  //removed -1 from day not so sure yet??
		} else {
			return (Math.round(lapsedTime / 604800)) + 'w'; //removed -1 from week not so sure yet??
		}
	};
})(jQuery);



$(document).ready(function () {

	$('.stacks_in_166_page1tweets').stacks_in_166_page1twitterfeed('gdalenaz', {
		limit: 3
	});
	
	var itsIEnine = navigator.userAgent.match(/MSIE 9/i) != null;

	if(itsIEnine){
	$(".stacks_in_166_page1rowinner").css({
    "background" : "#CCCCCC"
    });
	}
	
});


});





// xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
// END DOOBOX TWEETS STACK XXXXXXXXXXXXXXXXXXXX
// xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
	return stack;
})(stacks.stacks_in_166_page1);



