
$(document).ready(function () {

    $("#tweets").tweet({
        count: 1,
        query: "from:gardenofliferaw",
        loading_text: "loading tweets..."
    }).bind("empty", function () { $(this).append("<div class=\"tweetError\">Follow us on <a href=\"http://twitter.com/gardenofliferaw\" target=\"_blank\">twitter</a>!</div>"); });

    $(".ellipsis").ThreeDots({ max_rows: 5 });

    $('.formTable label').each(function () {
        var $h = $(this);
        $h.html($h.html().replace('*', ''));
    });

    $('.formTable input').each(function () {
        $(this).parent('td').addClass('formTD1');
    });

    $('.formTable textarea').each(function () {
        if ($(this).hasClass('formMultiTextBox1')) {
            $(this).parent('td').addClass('formTD2 ');
        }
        if ($(this).hasClass('formMultiTextBox2')) {
            $(this).parent('td').addClass('formTD3 ');
        }
        if ($(this).hasClass('formMultiTextBox3')) {
            $(this).parent('td').addClass('formTD4');
        }
    });

    $(".formTable input, .formTable textarea").each(function () {
        $(this).focus(function () {
            $(this).addClass("formTextBoxBG");
        });
        $(this).blur(function () {
            if ($(this).val() === '') {
                $(this).removeClass("formTextBoxBG");
            }

        });
    });

	$('.formCheck input:checkbox').checkbox({
		empty: '/Portals/_default/Skins/GOL-2010/images/empty.png'
	});
	$('.formRadio input:radio').checkbox({
		cls:'jquery-radio',
		empty: '/Portals/_default/Skins/GOL-2010/images/empty.png'
	});
	
		$(".formSelectBox").selectbox().bind('change', function(){
			$('<div>Value of #default-usage-select changed to: '+$(this).val()+'</div>').appendTo('#demo-default-usage .demoTarget').fadeOut(5000, function(){
				$(this).remove();
			});
		});
		
		$(".formSelectBox").selectbox().bind('change', function(){
			$('<div>Value of #default-usage-select changed to: '+$(this).val()+'</div>').appendTo('#demo-default-usage .demoTarget').fadeOut(5000, function(){
				$(this).remove();
			});
		});
	$('.jquery-selectbox-list span:last').addClass('last');
	

});



// CSS Browser Selector
function css_browser_selector(u) { var ua = u.toLowerCase(), is = function (t) { return ua.indexOf(t) > -1; }, g = 'gecko', w = 'webkit', s = 'safari', o = 'opera', h = document.documentElement, b = [(!(/opera|webtv/i.test(ua)) && /msie\s(\d)/.test(ua)) ? ('ie ie' + RegExp.$1) : is('firefox/2') ? g + ' ff2' : is('firefox/3.5') ? g + ' ff3 ff3_5' : is('firefox/3') ? g + ' ff3' : is('gecko/') ? g : is('opera') ? o + (/version\/(\d+)/.test(ua) ? ' ' + o + RegExp.$1 : (/opera(\s|\/)(\d+)/.test(ua) ? ' ' + o + RegExp.$2 : '')) : is('konqueror') ? 'konqueror' : is('chrome') ? w + ' chrome' : is('iron') ? w + ' iron' : is('applewebkit/') ? w + ' ' + s + (/version\/(\d+)/.test(ua) ? ' ' + s + RegExp.$1 : '') : is('mozilla/') ? g : '', is('j2me') ? 'mobile' : is('iphone') ? 'iphone' : is('ipod') ? 'ipod' : is('mac') ? 'mac' : is('darwin') ? 'mac' : is('webtv') ? 'webtv' : is('win') ? 'win' : is('freebsd') ? 'freebsd' : (is('x11') || is('linux')) ? 'linux' : '', 'js']; c = b.join(' '); h.className += ' ' + c; return c; }; css_browser_selector(navigator.userAgent);

// Three Dots
(function (e) { e.fn.ThreeDots = function (h) { var g = this; if ((typeof h == "object") || (h == undefined)) { e.fn.ThreeDots.the_selected = this; var g = e.fn.ThreeDots.update(h) } return g }; e.fn.ThreeDots.update = function (u) { var k, t = null; var m, j, s, q, o; var l, i; var r, h, n; if ((typeof u == "object") || (u == undefined)) { e.fn.ThreeDots.c_settings = e.extend({}, e.fn.ThreeDots.settings, u); var p = e.fn.ThreeDots.c_settings.max_rows; if (p < 1) { return e.fn.ThreeDots.the_selected } var g = false; jQuery.each(e.fn.ThreeDots.c_settings.valid_delimiters, function (v, w) { if (((new String(w)).length == 1)) { g = true } }); if (g == false) { return e.fn.ThreeDots.the_selected } e.fn.ThreeDots.the_selected.each(function () { k = e(this); if (e(k).children("." + e.fn.ThreeDots.c_settings.text_span_class).length == 0) { return true } l = e(k).children("." + e.fn.ThreeDots.c_settings.text_span_class).get(0); var y = a(k, true); var x = e(l).text(); d(k, l, y); var v = e(l).text(); if ((h = e(k).attr("threedots")) != undefined) { e(l).text(h); e(k).children("." + e.fn.ThreeDots.c_settings.e_span_class).remove() } r = e(l).text(); if (r.length <= 0) { r = "" } e(k).attr("threedots", x); if (a(k, y) > p) { curr_ellipsis = e(k).append('<span style="white-space:nowrap" class="' + e.fn.ThreeDots.c_settings.e_span_class + '">' + e.fn.ThreeDots.c_settings.ellipsis_string + "</span>"); while (a(k, y) > p) { i = b(e(l).text()); e(l).text(i.updated_string); t = i.word; n = i.del; if (n == null) { break } } if (t != null) { var w = c(k, y); if ((a(k, y) <= p - 1) || (w) || (!e.fn.ThreeDots.c_settings.whole_word)) { r = e(l).text(); if (i.del != null) { e(l).text(r + n) } if (a(k, y) > p) { e(l).text(r) } else { e(l).text(e(l).text() + t); if ((a(k, y) > p + 1) || (!e.fn.ThreeDots.c_settings.whole_word) || (v == t) || w) { while ((a(k, y) > p)) { if (e(l).text().length > 0) { e(l).text(e(l).text().substr(0, e(l).text().length - 1)) } else { break } } } } } } } if (x == e(e(k).children("." + e.fn.ThreeDots.c_settings.text_span_class).get(0)).text()) { e(k).children("." + e.fn.ThreeDots.c_settings.e_span_class).remove() } else { if ((e(k).children("." + e.fn.ThreeDots.c_settings.e_span_class)).length > 0) { if (e.fn.ThreeDots.c_settings.alt_text_t) { e(k).children("." + e.fn.ThreeDots.c_settings.text_span_class).attr("title", x) } if (e.fn.ThreeDots.c_settings.alt_text_e) { e(k).children("." + e.fn.ThreeDots.c_settings.e_span_class).attr("title", x) } } } }) } return e.fn.ThreeDots.the_selected }; e.fn.ThreeDots.settings = { valid_delimiters: [" ", ",", "."], ellipsis_string: "...", max_rows: 2, text_span_class: "ellipsis_text", e_span_class: "threedots_ellipsis", whole_word: true, allow_dangle: false, alt_text_e: false, alt_text_t: false }; function c(k, h) { if (e.fn.ThreeDots.c_settings.allow_dangle == true) { return false } var l = e(k).children("." + e.fn.ThreeDots.c_settings.e_span_class).get(0); var g = e(l).css("display"); var i = a(k, h); e(l).css("display", "none"); var j = a(k, h); e(l).css("display", g); if (i > j) { return true } else { return false } } function a(i, j) { var g = typeof j; if ((g == "object") || (g == undefined)) { return e(i).height() / j.lh } else { if (g == "boolean") { var h = f(e(i)); return { lh: h} } } } function b(k) { var j; var i = e.fn.ThreeDots.c_settings.valid_delimiters; k = jQuery.trim(k); var g = -1; var h = null; var l = null; jQuery.each(i, function (m, o) { if (((new String(o)).length != 1) || (o == null)) { return false } var n = k.lastIndexOf(o); if (n != -1) { if (n > g) { g = n; h = k.substring(g + 1); l = o } } }); if (g > 0) { return { updated_string: jQuery.trim(k.substring(0, g)), word: h, del: l} } else { return { updated_string: "", word: jQuery.trim(k), del: null} } } function f(h) { e(h).append("<div id='temp_ellipsis_div' style='position:absolute; visibility:hidden'>H</div>"); var g = e("#temp_ellipsis_div").height(); e("#temp_ellipsis_div").remove(); return g } function d(k, l, m) { var q = e(l).text(); var i = q; var o = e.fn.ThreeDots.c_settings.max_rows; var h, g, n, r, j; var p; if (a(k, m) <= o) { return } else { p = 0; curr_length = i.length; curr_middle = Math.floor((curr_length - p) / 2); h = q.substring(p, p + curr_middle); g = q.substring(p + curr_middle); while (curr_middle != 0) { e(l).text(h); if (a(k, m) <= (o)) { j = Math.floor(g.length / 2); n = g.substring(0, j); p = h.length; i = h + n; curr_length = i.length; e(l).text(i) } else { i = h; curr_length = i.length } curr_middle = Math.floor((curr_length - p) / 2); h = q.substring(0, p + curr_middle); g = q.substring(p + curr_middle) } } } })(jQuery);

// Twitter Plugin
(function ($) { $.fn.tweet = function (o) { var s = { username: ["seaofclouds"], list: null, avatar_size: null, count: 3, intro_text: null, outro_text: null, join_text: null, auto_join_text_default: "i said,", auto_join_text_ed: "i", auto_join_text_ing: "i am", auto_join_text_reply: "i replied to", auto_join_text_url: "i was looking at", loading_text: null, query: null }; if (o) $.extend(s, o); $.fn.extend({ linkUrl: function () { var returning = []; var regexp = /((ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?)/gi; this.each(function () { returning.push(this.replace(regexp, "<a href=\"$1\" target=\"_blank\">$1</a>")) }); return $(returning) }, linkUser: function () { var returning = []; var regexp = /[\@]+([A-Za-z0-9-_]+)/gi; this.each(function () { returning.push(this.replace(regexp, "<a href=\"http://twitter.com/$1\" target=\"_blank\">@$1</a>")) }); return $(returning) }, linkHash: function () { var returning = []; var regexp = / [\#]+([A-Za-z0-9-_]+)/gi; this.each(function () { returning.push(this.replace(regexp, ' <a href="http://search.twitter.com/search?q=&tag=$1&lang=all&from=' + s.username.join("%2BOR%2B") + '" target=\"_blank\">#$1</a>')) }); return $(returning) }, capAwesome: function () { var returning = []; this.each(function () { returning.push(this.replace(/\b(awesome)\b/gi, '<span class="awesome">$1</span>')) }); return $(returning) }, capEpic: function () { var returning = []; this.each(function () { returning.push(this.replace(/\b(epic)\b/gi, '<span class="epic">$1</span>')) }); return $(returning) }, makeHeart: function () { var returning = []; this.each(function () { returning.push(this.replace(/(&lt;)+[3]/gi, "<tt class='heart'>&#x2665;</tt>")) }); return $(returning) } }); function parse_date(date_str) { return Date.parse(date_str.replace(/^([a-z]{3})( [a-z]{3} \d\d?)(.*)( \d{4})$/i, '$1,$2$4$3')) } function relative_time(time_value) { var parsed_date = parse_date(time_value); var relative_to = (arguments.length > 1) ? arguments[1] : new Date(); var delta = parseInt((relative_to.getTime() - parsed_date) / 1000); var pluralize = function (singular, n) { return '' + n + ' ' + singular + (n == 1 ? '' : 's') }; if (delta < 60) { return 'less than a minute ago' } else if (delta < (60 * 60)) { return 'about ' + pluralize("minute", parseInt(delta / 60)) + ' ago' } else if (delta < (24 * 60 * 60)) { return 'about ' + pluralize("hour", parseInt(delta / 3600)) + ' ago' } else { return 'about ' + pluralize("day", parseInt(delta / 86400)) + ' ago' } } function build_url() { var proto = ('https:' == document.location.protocol ? 'https:' : 'http:'); if (s.list) { return proto + "//api.twitter.com/1/" + s.username[0] + "/lists/" + s.list + "/statuses.json?per_page=" + s.count + "&callback=?" } else if (s.query == null && s.username.length == 1) { return proto + '//api.twitter.com/1/statuses/user_timeline.json?screen_name=' + s.username[0] + '&count=' + s.count + '&callback=?' } else { var query = (s.query || 'from:' + s.username.join(' OR from:')); return proto + '//search.twitter.com/search.json?&q=' + escape(query) + '&rpp=' + s.count + '&callback=?' } } return this.each(function (i, widget) { var list = $('<ul class="tweet_list">').appendTo(widget); var intro = '<p class="tweet_intro">' + s.intro_text + '</p>'; var outro = '<p class="tweet_outro">' + s.outro_text + '</p>'; var loading = $('<p class="loading">' + s.loading_text + '</p>'); if (typeof (s.username) == "string") { s.username = [s.username] } if (s.loading_text) $(widget).append(loading); $.getJSON(build_url(), function (data) { if (s.loading_text) loading.remove(); if (s.intro_text) list.before(intro); var tweets = (data.results || data); $.each(tweets, function (i, item) { if (s.join_text == "auto") { if (item.text.match(/^(@([A-Za-z0-9-_]+)) .*/i)) { var join_text = s.auto_join_text_reply } else if (item.text.match(/(^\w+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+) .*/i)) { var join_text = s.auto_join_text_url } else if (item.text.match(/^((\w+ed)|just) .*/im)) { var join_text = s.auto_join_text_ed } else if (item.text.match(/^(\w*ing) .*/i)) { var join_text = s.auto_join_text_ing } else { var join_text = s.auto_join_text_default } } else { var join_text = s.join_text }; var from_user = item.from_user || item.user.screen_name; var profile_image_url = item.profile_image_url || item.user.profile_image_url; var join_template = '<span class="tweet_join"> ' + join_text + ' </span>'; var join = ((s.join_text) ? join_template : ' '); var avatar_template = '<a class="tweet_avatar" href="http://twitter.com/' + from_user + '"><img src="' + profile_image_url + '" height="' + s.avatar_size + '" width="' + s.avatar_size + '" alt="' + from_user + '\'s avatar" title="' + from_user + '\'s avatar" border="0"/></a>'; var avatar = (s.avatar_size ? avatar_template : ''); var date = '<span class="tweet_time"><a href="http://twitter.com/' + from_user + '/statuses/' + item.id + '" title="view tweet on twitter">' + relative_time(item.created_at) + '</a></span>'; var text = '<span class="tweet_text">' + $([item.text]).linkUrl().linkUser().linkHash().makeHeart().capAwesome().capEpic()[0] + '</span>'; list.append('<li>' + avatar + date + join + text + '</li>'); list.children('li:first').addClass('tweet_first'); list.children('li:odd').addClass('tweet_even'); list.children('li:even').addClass('tweet_odd') }); if (s.outro_text) list.after(outro); $(widget).trigger("loaded").trigger((tweets.length == 0 ? "empty" : "full")) }) }) } })(jQuery);

// jQuery Checkbox
(function($){var i=function(e){if(!e)var e=window.event;e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation()};$.fn.checkbox=function(f){try{document.execCommand('BackgroundImageCache',false,true)}catch(e){}var g={cls:'jquery-checkbox',empty:'empty.png'};g=$.extend(g,f||{});var h=function(a){var b=a.checked;var c=a.disabled;var d=$(a);if(a.stateInterval)clearInterval(a.stateInterval);a.stateInterval=setInterval(function(){if(a.disabled!=c)d.trigger((c=!!a.disabled)?'disable':'enable');if(a.checked!=b)d.trigger((b=!!a.checked)?'check':'uncheck')},10);return d};return this.each(function(){var a=this;var b=h(a);if(a.wrapper)a.wrapper.remove();a.wrapper=$('<span class="'+g.cls+'"><span class="mark"><img src="'+g.empty+'" /></span></span>');a.wrapperInner=a.wrapper.children('span:eq(0)');a.wrapper.hover(function(e){a.wrapperInner.addClass(g.cls+'-hover');i(e)},function(e){a.wrapperInner.removeClass(g.cls+'-hover');i(e)});b.css({position:'absolute',zIndex:-1,visibility:'hidden'}).after(a.wrapper);var c=false;if(b.attr('id')){c=$('label[for='+b.attr('id')+']');if(!c.length)c=false}if(!c){c=b.closest?b.closest('label'):b.parents('label:eq(0)');if(!c.length)c=false}if(c){c.hover(function(e){a.wrapper.trigger('mouseover',[e])},function(e){a.wrapper.trigger('mouseout',[e])});c.click(function(e){b.trigger('click',[e]);i(e);return false})}a.wrapper.click(function(e){b.trigger('click',[e]);i(e);return false});b.click(function(e){i(e)});b.bind('disable',function(){a.wrapperInner.addClass(g.cls+'-disabled')}).bind('enable',function(){a.wrapperInner.removeClass(g.cls+'-disabled')});b.bind('check',function(){a.wrapper.addClass(g.cls+'-checked')}).bind('uncheck',function(){a.wrapper.removeClass(g.cls+'-checked')});$('img',a.wrapper).bind('dragstart',function(){return false}).bind('mousedown',function(){return false});if(window.getSelection)a.wrapper.css('MozUserSelect','none');if(a.checked)a.wrapper.addClass(g.cls+'-checked');if(a.disabled)a.wrapperInner.addClass(g.cls+'-disabled')})}})(jQuery);

// NOTE: The min version of this script does not function // 
/**
 * jQuery custom selectboxes
 * 
 * Copyright (c) 2008 Krzysztof Suszyński (suszynski.org)
 * Licensed under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 *
 * @version 0.6.1
 * @category visual
 * @package jquery
 * @subpakage ui.selectbox
 * @author Krzysztof Suszyński <k.suszynski@wit.edu.pl>
**/
jQuery.fn.selectbox = function(options){
	/* Default settings */
	var settings = {
		className: 'jquery-selectbox',
		animationSpeed: "normal",
		listboxMaxSize: 10,
		replaceInvisible: false
	};
	var commonClass = 'jquery-custom-selectboxes-replaced';
	var listOpen = false;
	var showList = function(listObj) {
		var selectbox = listObj.parents('.' + settings.className + '');
		listObj.slideDown(settings.animationSpeed, function(){
			listOpen = true;
		});
		selectbox.addClass('selecthover');
		jQuery(document).bind('click', onBlurList);
		return listObj;
	}
	var hideList = function(listObj) {
		var selectbox = listObj.parents('.' + settings.className + '');
		listObj.slideUp(settings.animationSpeed, function(){
			listOpen = false;
			jQuery(this).parents('.' + settings.className + '').removeClass('selecthover');
		});
		jQuery(document).unbind('click', onBlurList);
		return listObj;
	}
	var onBlurList = function(e) {
		var trgt = e.target;
		var currentListElements = jQuery('.' + settings.className + '-list:visible').parent().find('*').andSelf();
		if(jQuery.inArray(trgt, currentListElements)<0 && listOpen) {
			hideList( jQuery('.' + commonClass + '-list') );
		}
		return false;
	}
	
	/* Processing settings */
	settings = jQuery.extend(settings, options || {});
	/* Wrapping all passed elements */
	return this.each(function() {
		var _this = jQuery(this);
		if(_this.filter(':visible').length == 0 && !settings.replaceInvisible)
			return;
		var replacement = jQuery(
			'<div class="' + settings.className + ' ' + commonClass + '">' +
				'<div class="' + settings.className + '-moreButton" />' +
				'<div class="' + settings.className + '-list ' + commonClass + '-list" />' +
				'<span class="' + settings.className + '-currentItem" />' +
			'</div>'
		);
		jQuery('option', _this).each(function(k,v){
			var v = jQuery(v);
			var listElement =  jQuery('<span class="' + settings.className + '-item value-'+v.val()+' item-'+k+'">' + v.text() + '</span>');	
			listElement.click(function(){
				var thisListElement = jQuery(this);
				var thisReplacment = thisListElement.parents('.'+settings.className);
				var thisIndex = thisListElement[0].className.split(' ');
				for( k1 in thisIndex ) {
					if(/^item-[0-9]+$/.test(thisIndex[k1])) {
						thisIndex = parseInt(thisIndex[k1].replace('item-',''), 10);
						break;
					}
				};
				var thisValue = thisListElement[0].className.split(' ');
				for( k1 in thisValue ) {
					if(/^value-.+$/.test(thisValue[k1])) {
						thisValue = thisValue[k1].replace('value-','');
						break;
					}
				};
				thisReplacment
					.find('.' + settings.className + '-currentItem')
					.text(thisListElement.text());
				thisReplacment
					.find('select')
					.val(thisValue)
					.triggerHandler('change');
				var thisSublist = thisReplacment.find('.' + settings.className + '-list');
				if(thisSublist.filter(":visible").length > 0) {
					hideList( thisSublist );
				}else{
					showList( thisSublist );
				}
			}).bind('mouseenter',function(){
				jQuery(this).addClass('listelementhover');
			}).bind('mouseleave',function(){
				jQuery(this).removeClass('listelementhover');
			});
			jQuery('.' + settings.className + '-list', replacement).append(listElement);
			if(v.filter(':selected').length > 0) {
				jQuery('.'+settings.className + '-currentItem', replacement).text(v.text());
			}
		});
		replacement.find('.' + settings.className + '-moreButton').click(function(){
			var thisMoreButton = jQuery(this);
			var otherLists = jQuery('.' + settings.className + '-list')
				.not(thisMoreButton.siblings('.' + settings.className + '-list'));
			hideList( otherLists );
			var thisList = thisMoreButton.siblings('.' + settings.className + '-list');
			if(thisList.filter(":visible").length > 0) {
				hideList( thisList );
			}else{
				showList( thisList );
			}
		}).bind('mouseenter',function(){
			jQuery(this).addClass('morebuttonhover');
		}).bind('mouseleave',function(){
			jQuery(this).removeClass('morebuttonhover');
		});
		_this.hide().replaceWith(replacement).appendTo(replacement);
		var thisListBox = replacement.find('.' + settings.className + '-list');
		var thisListBoxSize = thisListBox.find('.' + settings.className + '-item').length;
		if(thisListBoxSize > settings.listboxMaxSize)
			thisListBoxSize = settings.listboxMaxSize;
		if(thisListBoxSize == 0)
			thisListBoxSize = 1;	
		var thisListBoxWidth = Math.round(_this.width() + 5);
		if(jQuery.browser.safari)
			thisListBoxWidth = thisListBoxWidth * 0.94;
		replacement.css('width', thisListBoxWidth + 'px');
		thisListBox.css({
			width: Math.round(thisListBoxWidth-5) + 'px',
			height: thisListBoxSize + 'em'
		});
	});
}
jQuery.fn.unselectbox = function(){
	var commonClass = 'jquery-custom-selectboxes-replaced';
	return this.each(function() {
		var selectToRemove = jQuery(this).filter('.' + commonClass);
		selectToRemove.replaceWith(selectToRemove.find('select').show());		
	});
}