var CK_CONFIG={
    toolbar :
    [
    [ 'Bold', 'Italic', '-', 'NumberedList', 'BulletedList', '-', 'Link', 'Unlink','Superscript' ],
    [ 'UIColor','Styles','-','Source' ]
    ]
};
function rebind_inplace()
{
	$('#edit_mode .editable_textbox').each(function(){
			$(this).editable($(this).attr('data-target'), { 
				 cancel    : 'Cancel',
				 submit    : 'OK',
				 indicator : '<img src="/images/ajax_indicator.gif">',
				 tooltip   : 'Click to edit...',
				 onblur:	'ignore'

			});		 
		});

			//add basic editor
		$('#edit_mode .editable_boolean').each(function(){
			$(this).editable($(this).attr('data-target'), {
				 cancel    : 'Cancel',
					 type      : 'select',
					 data   :   "{'Yes':'Yes','No':'No'}",
				 submit    : 'OK',
				 indicator : '<img src="/images/ajax_indicator.gif">',
				 tooltip   : 'Click to edit...',
				 onblur:	'ignore'

			});
		});

		$('#edit_mode .editable_select').each(function(){
			$(this).editable($(this).attr('data-target'), {
				 cancel    : 'Cancel',
					 type      : 'select',
					 loadurl : $(this).attr('data-select-target'),
				 submit    : 'OK',
				 indicator : '<img src="/images/ajax_indicator.gif">',
				 tooltip   : 'Click to edit...',
				 onblur:	'ignore'

			});
		});
}
function toggle_edit_mode()
{
	if ($('#edit_mode').hasClass('default_edit')) {
		$('#edit_mode').removeClass('default_edit').addClass('secondary_edit');
		$('#cms_action').show();
		$('#top_page_status').addClass('top_page_status_low');
		$('#header').css("top","0px");
		$('#content').css("top","0px");
		$('#footer_links').css("top","0px");
	}else{
		$('#edit_mode').addClass('default_edit').removeClass('secondary_edit');
		$('#cms_action').hide();
		$('#top_page_status').removeClass('top_page_status_low');
		$('#header').css("top","0px");
		$('#content').css("top","0x");
		$('#footer_links').css("top","0px");
	}
}
$(function(){

    if (typeof(CKEDITOR)!="undefined") {
        CKEDITOR.addStylesSet('default', []);
    
        CKEDITOR.stylesSet.registered['default'].push({
            name: 'Marker: Draft Copy',
            element: 'span',
            styles: {
                'background-color': '#FF5F5F',
                'color': '#000000'
            }
        });
    }
	
	if ($('#edit_mode').length>0) {
		$('.button_label_toggle_mode').click(function(){
			$.get($(this).attr('data-save-state-href'),{state:$('#edit_mode').hasClass('default_edit')?1:0});
			
			toggle_edit_mode();

		})
		
		$('#edit_mode').addClass('default_edit');
		$('#edit_mode .section .section_buttons .delete_layout').live('click',function(e) {
				e.preventDefault();
				if (confirm('Are you sure you wish to remove this section?')) {
					var item_to_remove=$(this).closest('.section');
					$.get($(this).attr('href'),function(){
						item_to_remove.fadeOut();
					})
				}    
		});
		$('#edit_mode .section .column_buttons .delete_layout').live('click',function(e) {
				e.preventDefault();
				if (confirm('Are you sure you wish to remove this column section?')) {
					var item_to_remove=$(this).closest('.column_section');
					$.get($(this).attr('href'),function(){
						item_to_remove.fadeOut();
					})
				}    
		});
		$('#edit_mode .block').live('mouseover',function(){
			var block_edit=$(this).children('.block_edit');

			var new_width=$(this).width();
			var new_height=$(this).height();
			var content_child=$(this).children(':not(.block_edit):not(.spacer)');
			if (content_child.length==1) {
				new_width=content_child.outerWidth();
				new_height=content_child.outerHeight();
			}

			$(this).closest('.column').children('.add_widget').width(new_width-8);
			block_edit.children('.block_edit_wrap,.block_edit_title_bar').width(new_width);
			block_edit.children('.block_edit_wrap').height(new_height)
			block_edit.show();
		});
		$('#edit_mode .column .add_widget').live('click',function(e){
			e.preventDefault();
			$.get('/widgets/manage-block',{

				column_type:$(this).closest('.column_section').attr('data-type'),
				piece_id:$(this).attr('data-piece-id'),
				page_id:$(this).attr('data-page-id'),
				column_id:$(this).closest('.column').attr('data-column-id'),
				column_num:$(this).closest('.column').attr('data-column-num')
			},function(data){
				show_popup({
					content:data,
					popup_title:"Pick a widget"
				});
			})
		})
		$('#edit_mode .section .section_buttons .add_layout').live('click',function(e) {
			e.preventDefault();
			var columns=$(this).closest('.section').find('.section_content');
			
			$.get($(this).attr('href'),function(data) {
				columns.append(data);
				var added_item=columns.children().last();

				added_item.find('.section_bar_header .button').css('visibility','hidden');
				added_item.find('.column_header .button').css('visibility','hidden');
				//added_item.children('.column_header').css('background','#FFFF96').animate({backgroundColor:'#FCD396'},2000);
				//added_item.children('.column_content').css('background','#FEEFFF').animate({backgroundColor:'#FEEDD3'},2000);
				$.scrollTo(added_item,{offset: { top: -190}});
			});
		});
		$('#edit_mode .section .change_layout').live('click',function(e) {
			e.preventDefault();

			var column_layout=$(this).parents('.column_header');

			$.get($(this).attr('href'),function(data){
				$.facebox(data)
			});
			$('body').data('for_column',$(this).closest('.column_section'));
		});
		$('#edit_mode .button_label_edit_metadata').live('click',function(e) {
			e.preventDefault();

			$.get($(this).attr('data-popup-href'),function(data){
				$.facebox(data)
			});
		});
		$('#edit_mode .section .add_column').live('click',function(e) {
			e.preventDefault();

			var clicked_column_layout=$(this);
			$.get($(this).attr('href'),function(data){
				
				var section_content=clicked_column_layout.closest('.section_content');
				var save_wrapper_position=false;
				var old_wrapper_index;
				if (section_content.find('.slider_wrapper').length>0) {
					save_wrapper_position=section_content.find('.slider_wrapper').position().left;
					old_wrapper_index=section_content.children('.column_section').data('current_index');
				}
				section_content.children().remove();
				section_content.append(data);
				if (save_wrapper_position) {
					section_content.find('.column_section').data('current_index',old_wrapper_index);
				}
				$('body').trigger('columns_changed');
				if ($('.button_label_sort_widgets').hasClass('sorting')) {
					section_content.parent().find('.sort_widget').click();
				}
				if (save_wrapper_position) {
					section_content.find('.slider_nav_wrapper').children().show();
					section_content.find('.slider_wrapper').css('left',save_wrapper_position);
				}
				
				
				
			});
		});
		$('.column_layours_edit a').live('click',function(e){
			e.preventDefault();

			var clicked_column_layout=$(this);
			$.get($(this).attr('href'),function(data){
				var to_click=$('body').data('for_column').parent();
				/*to_click.children().remove();
				to_click.append(data);*/
				$('body').data('for_column').replaceWith(data);
				
				$('.ui-dialog').children().dialog("close");
				$('body').trigger('columns_changed');
				if ($('.button_label_sort_widgets').hasClass('sorting')) {
					to_click.find('.sort_widget').click();
				}
			});
		});
		$('#edit_mode #add_section').live('click',function(e) {
				e.preventDefault();
				$.get($(this).attr('href'),function(data) {
					$('#section_control').parent().append(data);
					$.scrollTo($('#section_control').parent().children(':last'),{offset: { top: -160}});
					//$('#section_control').parent().children(':last').css('background','#FFFF96').animate({backgroundColor:'#DEDEDE'},2000);
					rebind_inplace();
				});
				
		});
		//hide buttons on sections and show them on mouseovers
		$('#edit_mode .section .column_header').live('mouseover',function(){
			if (!$(this).next().is(':visible')) {
				return;
			}
			$('.block_controls').hide();
			$('.hovered').css('visibility','hidden');
			$(this).find('.content_button').css('visibility','visible').addClass('hovered');
		});	
		$('#edit_mode .section .section_bar_header').live('mouseover',function(){
			$('.hovered').css('visibility','hidden');
			$('.block_controls').hide();
			$(this).find('.content_button').css('visibility','visible').addClass('hovered');
		});
		$('#edit_mode .section .column_content').live('mouseover',function(){

			$('.hovered').css('visibility','hidden');
			$(this).prev().find('.content_button').css('visibility','visible').addClass('hovered');
		});
		
		$('.section_controls .megadropdown').live('picked',function(){
			
		})
		
		//add basic editor
		rebind_inplace();
		$('#edit_mode .change_settings').live('click',function(e){
			e.preventDefault();
			$(this).closest('.section_bar_header').next().toggle();
		});
		
		
		if ($('.button_label_toggle_mode').attr('data-state')) {
			toggle_edit_mode();
		}
	}
	
 	$('#cms_action .button_label_sort_sections').click(function(){
		$('.sort_section').click();
		if (!$(this).hasClass('sorting')) {
		    $(this).addClass('sorting');
		    $(this).children().children().text('Finish Sorting');
		}else{
			$(this).removeClass('sorting');
		    $(this).children().children().text('Sort Sections');
		}
	});

	$('#cms_action .button_label_sort_layout').click(function(){
		$('.sort_layout').click();
		if (!$(this).hasClass('sorting')) {
		    $(this).addClass('sorting');
		    $(this).children().children().text('Finish Sorting');
		}else{
			$(this).removeClass('sorting');
		    $(this).children().children().text('Sort Layout');
		}
	});

	$('#cms_action .button_label_sort_widgets').click(function(){
		$('.sort_widget').click();
		if (!$(this).hasClass('sorting')) {
		    $(this).addClass('sorting');
		    $(this).children().children().text('Finish Sorting');
		}else{
			$(this).removeClass('sorting');
		    $(this).children().children().text('Sort Widgets');
		}
	});
   
	$('#edit_mode .content_button.sort_section').live('click',function(e) {
		e.preventDefault();
		if (!$(this).hasClass('sorting')) {
			$(this).addClass('sorting');
			$('.section_content .column_section').hide();
			$(this).text('Finish Sorting');
			$('.section_bar_header').disableSelection();
			$('#content').sortable({items:'> .section:not(.locked_section)',cursor:'move',delay:150,helper:'clone',opacity:0.6});
		}else{
			var sort_order=$('#content').sortable('serialize',{key:'sections[]',attribute:'data-section-id',expression:'(.+)'});
			$.post($(this).attr('href'),sort_order,function(){
					//after sorting
			});
			$(this).removeClass('sorting');
			$(this).text('Sort Sections');
			$('.section_content .column_section').show();
			$('.section_bar_header').enableSelection();
			$('#content').sortable('destroy');
		}
	});

	$('#edit_mode .content_button.sort_layout').live('click',function(e) {
		e.preventDefault();
		var column_contents=$(this).parents('.section_bar_header').next().next();
		if (!column_contents.hasClass('ui-sortable')) {
			column_contents.find('.column_content').hide();
			column_contents.sortable({items:'> .column_section',cursor:'move',delay:150,helper:'clone',opacity:0.6});
			column_contents.disableSelection();
			$(this).text('Finish Sorting');
		}else{
			var sort_order=column_contents.sortable('serialize',{key:'data_columns[]',attribute:'data-column-section-id',expression:'(.+)'});
			$.post($(this).attr('href'),sort_order,function(){
				//after sorting
			});
			column_contents.sortable('destroy');
			column_contents.find('.column_content').show();
			$(this).text('Sort Layouts');
		}
	});

	$('#edit_mode .content_button.sort_widget').live('click',function(e) {
		e.preventDefault();
		var sort_content=$(this).parents('.column_header').next();
		if (!sort_content.find('.blocks').hasClass('ui-sortable')) {
			sort_content.find('.blocks').sortable({
				cursor: 'move',
				delay: 150,
				helper: 'clone',
				opacity: 0.6,
				connectWith: '.blocks',
				items:'> div',
				receive: function(event, ui) {
					$(ui.item).parent().find('.add_widget').appendTo($(ui.item).parent());
				}
			});
			sort_content.disableSelection();
			$(this).html('Finish Sorting');
		}else{
			//serialize all columns
			var combined_string='sorted=1';
			sort_content.find('.blocks').each(function(){
				var column_id=$(this).parents('.column').attr('data-column-id');
				var sort_order=$(this).sortable('serialize',{key:'data_blocks['+column_id+'][]',attribute:'data-block-id',expression:'(.+)'});
				combined_string+='&'+sort_order;

			})
			$.post($(this).attr('href'),combined_string,function(){
				//after sorting
			});
			sort_content.find('.blocks').sortable('destroy');
			$(this).text('Sort Widgets');
		}
	});


    $('.block').live('mouseout',function(){
        $(this).children('.block_edit').hide();
    });
	$('.delete_button').live('click',function(e){
		e.preventDefault();
		if (confirm('Are you sure you wish to remove this widget?')) {
			var clicked_button=$(this);
			$.get($(this).attr('data-delete-url'),function(){
				clicked_button.closest('.block').slideUp(function(){
					$(this).remove();
				});
			})
		}
		return false;
	});

    $('[data-handle-url]').live('click',function(e){
        e.preventDefault();
        $.get($(this).attr('data-handle-url'),function(data) {
            handleJson(data);
        },'json');
    });

    $('.widget_form').live('submit',function(){
        var widget_form=$(this);
        $(this).ajaxSubmit({
            success:function(data){
                handleJson(data,widget_form);
				$(window).trigger('widget_form_complete');
            },
            dataType:"json"
        });//,data:{json:false}
        return false;
    });


    
    $('.block_layouts a').live('click',function(e){
        var clicked_button=$(this);
        e.preventDefault();
        $.get('/widgets/manage-block',{
            block_type_id:clicked_button.attr('data-block-type-id'),
            column_id:clicked_button.closest('.block_layouts').attr('data-column-id'),
            block_id:clicked_button.closest('.block_layouts').attr('data-block-id')
        },function(data){
            handleJson(data,clicked_button);

			if (data.replace_with_id) {
				$('#'+data.replace_with_id+' .block_edit_wrap').click();
			}
			if (data.append_id || data.append_class) {
				$('#'+data.append_id+" .block:last .block_edit_wrap").click();
			}


            //move all add widgets to bottom
            $('.add_widget').each(function(){
                $(this).parent().append($(this));
            })
        },'json');
    })

    $('.dialog_popup').live('closing',function(){
        $(this).find('.editable_ck').each(function(){
            var existing_instance=CKEDITOR.instances[$(this).attr('id')];
            if (existing_instance) {
                existing_instance.destroy();
            }
        });
    });


    $('.dialog_popup .button_label_save_changes').live('click',function(){
        $(this).closest('form').submit();
    });
    $('.dialog_popup .button_label_cancel,button_label_back').live('click',function(){
        $(this).closest('.ui-dialog').children().dialog("close");
    });
    $('.dialog_popup .button_label_delete').live('click',function(){
		if (confirm('Are you sure you wish to remove this widget?')) {
			$(this).closest('.ui-dialog').children().dialog("close");
			var blockname = "#block_" + $(this).attr('data-block-id');
			$.get($(this).attr('data-delete-url'),function(){
				$(blockname).hide();
			})
		}
		return false;
	});
	$('.dialog_popup .button_label_change_widget').live('click',function(){
		var block=$('#block_'+$(this).attr('data-block-id'));
		var add_widget=block.parent().children('.add_widget');

		$.get('/widgets/manage-block',{
			column_type:add_widget.closest('.column_section').attr('data-type'),
            block_id:$(this).attr('data-block-id'),
            piece_id:add_widget.attr('data-piece-id'),
			page_id:add_widget.attr('data-page-id'),
			column_id:add_widget.closest('.column').attr('data-column-id'),
			column_num:add_widget.closest('.column').attr('data-column-num')
        },function(data){
            var popup=show_popup({
                content:data,
                popup_title:"Pick a new widget"
            });
			popup.bind('closing',function(){
				popup.unbind('closing');
				$('.ui-dialog').children().dialog("close");
			});
        })
	});
    $('.column_section .column').live('mouseover',function(){
        $(this).addClass('over');
    }).live('mouseout',function(){
        $(this).removeClass('over');
    });



    //****** section slider and timer Fade inout Slider *************** //
	$('body').bind('columns_changed',function(){
		$('.section_slider .column_section').each(function(){
			if ($(this).data('activated_slider')) {
				return;
			}
			$(this).data('activated_slider',true);
			$(this).css({
				overflow:'hidden',
				position:'relative',
				width: '950px'
			})
			var layout_column_type = $(this).attr("data-type");
			var layout_columns = 0;
			var max_height=0;
			var max_width = $(this).width();
			var columns=$(this).find('.column');
			var use_width=columns.eq(0).width();
			var is_timer_fade = $(this).parent().hasClass("section_slider_timer_fade_inout");
			var current_column_index = $(this).data('current_index')?$(this).data('current_index'):0;
			var data_current_index=$(this);
			switch(layout_column_type){
				case "one_column":
					layout_columns = 1;
					break;
				case "two_columns":
					layout_columns = 2;
					break;
				case "four_columns":
					layout_columns = 4;
					break;
				default:
					break;
			}


			//set width and height
			columns.each(function(){
				if ($(this).height()>max_height) {
					max_height=$(this).height() + 7; //+7px to height for shadow display
				}
			}).height(max_height).width(use_width);

			//add absolute wrapper
			var wrap=$("<div />").addClass('slider_wrapper').css({
				position:'absolute',
				top:'0',
				left:'5px'
			});

			//add controller wrapper
			var slider_nav_wrap = $('<div />').addClass('slider_nav_wrapper');

			//****** For timer fadeinout
			if(is_timer_fade){
				var timer_delay = 10000;
				var slide_index = 0;
				var timer_id;

				wrap.width(use_width).height(max_height);
				$(this).height(max_height).wrapInner(wrap);

				//hide all slides and reset z-index for each of them
				for(i=columns.length-1,j=0; i>=0; i--,j++){
					if(columns.eq(i)){
						columns.eq(i).hide();
						columns.eq(i).css({
							zIndex:j
						});
					}
				}

				//fade in first slide
				columns.eq(0).fadeIn("slow");


				function startSlider(){

					if(slide_index == (columns.length-1)){
						slide_index = -1;
					}
					slide_index++;

					slider_nav_wrap.find(".slider_nav_pointer").each(function(){
						if($(this).index() === slide_index){
							$(this).addClass("selected");
						}else{
							$(this).removeClass("selected");
						}
					});
					columns.each(function(){
						if($(this).index() === slide_index){
							$(this).fadeIn("slow");
						}else{
							$(this).fadeOut("fast");
						}
					})

				}
				//start timer
				timer_id = setInterval( startSlider, timer_delay);

				//add controller and its style will be in your own css
				var point_button = $('<div/>').addClass('slider_nav_pointer');

				for(p=0; p<columns.length; p++){
					var point = point_button.clone();
					if(p == 0) point.addClass("selected");
					slider_nav_wrap.append(point);
					point.bind("click", function(e){
						e.preventDefault();
						slide_index = $(this).index();

						//reset all selected class and add it to the one only
						$(this).parent().find(".slider_nav_pointer").removeClass("selected");
						$(this).addClass("selected");

						//
						columns.each(function(){
							if($(this).index() === slide_index){
								$(this).fadeIn("slow");
							}else{
								$(this).fadeOut("fast");
							}
						})

					});
				}
				$(this).append(slider_nav_wrap);
				return;
			}

			//**** For simple slide left/right

			wrap.width(use_width*columns.length).height(max_height);
			$(this).height(max_height).children(':last').wrapInner(wrap);

			if(layout_columns >= columns.length){
				return;
			}

			//add nav buttons and its style the wrapper and buttons in your own css.
			var slider_nav_left = $('<div />').addClass('slider_nav_left').css({
				height:max_height+"px"
			});
			var slider_nav_right = $('<div />').addClass('slider_nav_right').css({
				height:max_height+"px"
			});
			slider_nav_left.hide();
			slider_nav_wrap.append(slider_nav_right).append(slider_nav_left);
			slider_nav_wrap.insertBefore($(this));

			var slider_nav_right_timer_id = setInterval(function(){
				slider_nav_right.animate({marginRight:"-815px"}, 300).animate({marginRight:"-800px"}, 100);
			}, 3000);

			var slider_nav_left_timer_id = setInterval(function(){
				slider_nav_left.animate({marginLeft:"-815px"}, 300).animate({marginLeft:"-800px"}, 100);
			}, 3000);


			slider_nav_left.bind('click',function(e){
				e.preventDefault();

				var slider = $(this).parent().next().find(".slider_wrapper");
				if(!slider.is(':animated')){

					var current_left = slider.position().left;
					if(current_column_index == 1){
						$(this).hide();
						//clearInterval(slider_nav_right_timer_id);
					}
					if(current_left < 0){
						slider_nav_right.show();
						current_column_index--;
						data_current_index.data('current_index',current_column_index);
						if(current_column_index <0 ) current_column_index = 0;
						slider.animate({
							left:'+='+(use_width)
						}, 400,'swing');

					}	
				}
				//console.log("LEFT" +current_column_index);
			});
			slider_nav_left.bind("mouseover", function(){
				$(this).addClass("over");
			});
			slider_nav_left.bind("mouseout", function(){
				$(this).removeClass("over");
			});



			slider_nav_right.bind('click',function(e){
				e.preventDefault();

				var slider = $(this).parent().next().find(".slider_wrapper");
				if(!slider.is(':animated')){
					var current_left = slider.position().left;

					if(current_column_index == (columns.length-layout_columns-1)){
						$(this).hide();
						//clearInterval(slider_nav_right_timer_id);
					}
					//if(Math.abs(current_left - (-use_width*columns.length+max_width)) >use_width ){
					if(current_column_index <= (columns.length-layout_columns-1)){
						slider_nav_left.show();
						current_column_index++;
						data_current_index.data('current_index',current_column_index);
						if(current_column_index > (columns.length-1) ) current_column_index = columns.length-1;

							slider.animate({
								left:'-='+(use_width)
							}, 400,'swing');
					}                
				}

			   // console.log("RIGHT" +current_column_index + ", "+columns.length + " , "+layout_columns);
			});
			slider_nav_right.bind("mouseover", function(){
				$(this).addClass("over");
			});
			slider_nav_right.bind("mouseout", function(){
				$(this).removeClass("over");
			});




		});
	}).trigger('columns_changed');

    /* Slider script end */

	$('#cms_header_preview').hover(function(){
		
	})
    $('#cms_subheader .button_label_toggle_preview,#cms_header_preview').click(function(){
        $('body').attr('id',$('body').attr('id')=='edit_mode'?'not_editing':'edit_mode');
		if ($('body').attr('id')!='edit_mode') {
			$('body').css('padding-top',0);
		}else{
			$('body').css('padding-top',123);
		}
		$('#cms_header,#top_page_status,#cms_header_preview').toggle();
	
    })
});

function getBlockPath(html_tag)
{
    var block_id=$(html_tag).attr('data-block-id');

    return '/blocks_handle/'+block_id;
}

//For Sheridan Only
$(function(){

    //Main Nav
   //jQuery.event.special.hover.delay = 1000;
   //jQuery.event.special.hover.speed = 1000;
   jQuery('#header ul.sf-menu').superfish({
        pathLevels:     1,
        delay:          800,// the delay in milliseconds that the mouse can remain outside a submenu without it closing
        animation:      {height:'show'},// an object equivalent to first parameter of jQuery’s .animate() method
        speed:          'fast',// speed of the animation. Equivalent to second parameter of jQuery’s .animate() method
        autoArrows:     false,
        dropShadows:    false,
        onBeforeShow:   showDropdown
        //onShow:         showDropdown
   });
   
   if( navigator.userAgent.match(/Android/i) ||
	 navigator.userAgent.match(/webOS/i) ||
	 navigator.userAgent.match(/iPhone/i) ||
	 navigator.userAgent.match(/iPad/i) ||
	 navigator.userAgent.match(/iPad2/i) ||
	 navigator.userAgent.match(/iPod/i)
	 ){
			 $('#footer_nav').removeClass('fix_pos').addClass('mobile');
			 $('#footer_links').addClass('mobile');
	 }


   function showDropdown(){
		var win_width = $(window).width();
		var offset = this.offset();
		var pos = this.position();
		var ul_width;
		if($.browser.msie)
			ul_width = this.outerWidth(true);
		else
			ul_width = this.width();
		var new_left;
                if(pos){
                    new_left = Math.abs(pos.left);
                    if(this.parent().offset()){
                        if( (this.parent().offset().left + 2*ul_width) > win_width ){
                                new_left = -Math.abs(pos.left);
                        }
                    }
                    this.css("left", new_left);
                }
	}


   if (typeof(CKEDITOR)!="undefined") {

        CK_CONFIG={
                toolbar :
                [
                    [ 'Bold', 'Italic', '-', 'NumberedList', 'BulletedList', '-', 'Link', 'Unlink','Superscript','Table' ],
                    ['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
                    [ 'UIColor','Styles','FontSize','-','Source','RemoveFormat' ]
                ]
            };

        CKEDITOR.stylesSet.registered['default'].push({
            name: 'Orange Title',
            element: 'span',
            styles: {
                'color': '#FFD35F'
            }
        });

        CKEDITOR.stylesSet.registered['default'].push({
            name: 'Green Title',
            element: 'span',
            styles: {
                'color': '#476E01'
            }
        });

        CKEDITOR.stylesSet.registered['default'].push({
            name: 'Red Title',
            element: 'span',
            styles: {
                'color': '#BB3617'
            }
        });
    }

	(function($){ $.fn.tooltip = function(){
		return this.each(function() {
			var text = $(this).parent().find(".hidden").html();
			if(text && text.toLowerCase() !='<br>\n' && text.toLowerCase() !='<br>'){
				$(this).hover(function(e){
					var tipX = e.pageX + 12;
					var tipY = e.pageY + 12;
					$("body").append("<div id='tooltip' style='position: absolute; z-index: 9999; display: none;'>" + text + "</div>");
					var tipWidth;
					if($.browser.msie)
						tipWidth = $("#tooltip").outerWidth(true);
					else
						tipWidth = $("#tooltip").width();
					$("#tooltip").width(tipWidth);
					$("#tooltip").css("left", tipX).css("top", tipY).css("width", "300").fadeIn("fast");
				}, function(){
					$("#tooltip").remove();
				});
				$(this).mousemove(function(e){
					var tipX = e.pageX + 12;
					var tipY = e.pageY + 12;
					var tipWidth = $("#tooltip").outerWidth(true);
					var tipHeight = $("#tooltip").outerHeight(true);
					if(tipX + tipWidth > $(window).scrollLeft() + $(window).width())
						tipX = e.pageX - tipWidth;
					if($(window).height()+$(window).scrollTop() < tipY + tipHeight)
						tipY = e.pageY - tipHeight;
					$("#tooltip").css("left", tipX).css("top", tipY).css("width", "300");
				});
			}
		});
	}})(jQuery);

   //footer
    $("#footer_nav .join_our_mailing_list").bind("click", function(e){
        e.preventDefault();
        var popup = $('#footer_nav .join_our_mailing_list_popup');
        popup.fadeIn(200);
        popup.find(".cancel_subscribe").bind("click", function(e){
            e.preventDefault();
            popup.fadeOut(200);
        })
    })
    
    
    $("#footer_nav .search_button").bind("click", function(e){
       e.preventDefault();
      var search_text = $("#footer_nav .search_textfield").val();
      if(search_text){
          window.location.href = location.protocol+"//"+location.host + "/plant_product_refine_search#//" + search_text;
      }else{
          window.location.href = location.protocol+"//"+location.host + "/plant_browser";
      }
       
    });

    //header
    $("#header .search_textfield").bind("focus", function(e){
        $(this).val("");
    });
    $("#header .search_textfield").bind("focusout", function(e){
        if(!$(this).val()){
            $(this).val("Search");
        }
    });

	// footer
	$.get($("#footer_nav .garden_footer_check").attr('href'),function(data){
		var new_item=$(data.details);
		$("#footer_nav .garden_footer").html(new_item);
	},'json');

    //add target to all links which don't have sheridannurseries.com
    $("a[href^=http]").each(
        function(){
            if(this.href.indexOf("sheridannurseries.com") == -1) {
                $(this).attr('target', '_blank');
            }
        }
    );
});
var widget_base='/blocks/sheridan/b2b_event_calendar/html/';

//******** Event Calendar ******//
var today = new Date();
var current_month = today.getMonth()+1;
var current_year = today.getFullYear();
var loc_colors = new Array();
var event_types = new Array();
var is_cal_updating = false;

$(function(){
    
    //collect data from filters and bind event for them
    $(".block_b2b_event_calendar").each(function(){

        //gets the location colors
        loc_colors = new Array();
        $(this).find(".left .locations dl").each(function(){
            var boxColor = $(this).find("span").css("backgroundColor");
            var data_id = $(this).attr("data-id");
            loc_colors.push({name:$.trim($(this).find("dt").html().toLowerCase()), id:data_id, color:boxColor});
            //bind event to location
            $(this).bind("click", function(e){
                e.preventDefault();
                var box = $(this).find("span");
                var boxes = $(this).closest(".block_b2b_event_calendar").find(".event_calendar span.loc_"+data_id);
                if(box.hasClass("checked")){
                    box.removeClass("checked");
                    if(data_id == "other"){
                        $(this).closest(".block_b2b_event_calendar").find(".event_calendar .event").each(function(){
                            if($(this).find("span").length <= 0){
                                $(this).fadeOut(200, checkIfNeedMoreButton2);
                            }
                           
                        });
                    }else{
                        boxes.each(function(){
                           $(this).fadeOut(400, function(){
                               if($(this).parent().find("span:visible").length >= 1){
                                   $(this).parent().fadeIn(200, checkIfNeedMoreButton2);
                               }else{
                                   $(this).parent().fadeOut(200, checkIfNeedMoreButton2);
                               }
                           });
                        });
                    }
                }else{
                    box.addClass("checked");
                    if(data_id == "other"){
                        $(this).closest(".block_b2b_event_calendar").find(".event_calendar .event").each(function(){
                            if($(this).find("span").length <= 0){
                                $(this).fadeIn(200, checkIfNeedMoreButton2);
                            }

                        });
                    }else{
                        boxes.each(function(){
                           if($(this).parent().is(":hidden")){
                               if(!checkIfEventDisabled2($(this).parent()) ){
                                    $(this).parent().fadeIn(200, checkIfNeedMoreButton2);
                               }
                           }
                           $(this).fadeIn(200);
                        });
                    }
                }
            });
            $(this).bind("mouseover", function(e){
                $(this).addClass("over");
            });
            $(this).bind("mouseout", function(e){
                $(this).removeClass("over");
            });
        });

        //gets the events
        event_types = new Array();
        $(this).find(".left .types dl").each(function(){            
            var type_name = $.trim($(this).find("dt").html().toLowerCase());
            var data_id = $(this).attr("data-id");
            event_types.push({name:type_name, id:data_id});
            //bind event to event types
            $(this).bind("click", function(e){
                e.preventDefault();
                var events = $(this).closest(".block_b2b_event_calendar").find(".event_calendar div.etype_"+data_id);
                var box = $(this).find("span");
                if(box.hasClass("checked")){
                    box.removeClass("checked");
                    events.each(function(){
                       $(this).fadeOut(200, checkIfNeedMoreButton2);
                    });
                }else{
                    box.addClass("checked");
                    events.each(function(){
                       $(this).fadeIn(200, checkIfNeedMoreButton2);
                    });                    
                }
            });
            $(this).bind("mouseover", function(e){
                $(this).addClass("over");
            });
            $(this).bind("mouseout", function(e){
                $(this).removeClass("over");
            });
        });
    });

    //Event Calendar
    $( ".block_b2b_event_calendar .event_calendar" ).datepicker({
        gotoCurrent:    false,
        prevText:       "",
        nextText:       "",
        dateFormat:     'yy-mm-dd',
        minDate:        new Date(2011, 1 - 1, 1),
        showOtherMonths: true,
        selectOtherMonths: false,
        dayNamesMin:    ['Sun', 'Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat'],
        //beforeShowDay: add_date_ids2,
        onChangeMonthYear: before_month_change2,
        onSelect: function(dateText, inst) {
            
            before_month_change2(current_year, current_month, inst)
        }
    });//.bind('afterChange',update_boxes);

    $(".block_b2b_event_calendar").each(function(){
		
        before_month_change2(current_year,current_month,$(this));
    });
   
});

function checkIfEventDisabled2(event_elm){
    var rs = false;
    var etype_id = event_elm.attr("data-id");
    event_elm.closest(".block_b2b_event_calendar").find(".left .types dl").each(function(){
        var box = $(this).find("span");
        var data_id = $(this).attr("data-id");
        if(!box.hasClass("checked") && etype_id == data_id){
            rs =  true;
        }
    });
    return rs;
}

function checkIfNeedMoreButton2(){
    
    $('.block_b2b_event_calendar .event_calendar').each(function(){
        $(this).find('a.ui-state-default').each(function(){
            var more = $(this).find("div.more");
            var events_wrapper = $(this).find(".events_wrapper");
            var events = events_wrapper.find("div.event:visible");
            if(more.length>0){
                if(events.length>0){
                    events_wrapper.addClass("more_events");
                    more.fadeIn();
                }else{
                    events_wrapper.removeClass("more_events");
                    more.fadeOut();
                }
            }
        });
    });
    
}

function add_date_ids2(date) {
    for (var i=0;i<last_event.length;i++) {
        if (last_event[i]==date.getDate()) {
            return [true, 'cal_date_'+date.getDate()+' has_event'];
        }
    }
    return [true, 'cal_date_'+date.getDate()];
}

function before_month_change2(year, month, inst) {
	
    current_month = month;
    current_year = year;
    var block = inst.dpDiv?inst.dpDiv.closest('.block'):inst;

    is_cal_updating = false;
    $.get(getBlockPath(block),
            {handler:"month_events", year:current_year,month:current_month},
            function(data) {
                update_boxes2(data)
            },
            'json'
    );
    
}

function update_boxes2(events){
	
    if(is_cal_updating) return;
    is_cal_updating = true;

    $('.block_b2b_event_calendar .event_calendar').each(function(){
        var day = 1;
        var events_per_day = 0;
       day = 1;
       var loc_fillter = $(this).closest(".wrapper").find(".locations");
       var type_fillter = $(this).closest(".wrapper").find(".types");
       var loc_fillter_box;
       var type_fillter_box;
	   
	   

       $(this).find('a.ui-state-default').each(function(){
           if($(this).find(".events_wrapper").length>0) return;
           $(this).parent().removeAttr("onclick")
           $(this).click(function(e){e.preventDefault();});
           var events_wrap = $("<div />").addClass("events_wrapper").attr("data-day", day);
           events_per_day = 0;


		   
           for(var i=0; i<events.length; i++){
               if(events[i].date<=day && events[i].date_to>=day){
                   events_per_day++;

                   var label = $("<label />");
                   label.html(events[i].title.substr(0, 14)+"...");

                   var title = $("<div />").addClass("title_long");
                   title.html(events[i].title);
                   
                   var desc = $("<div/>").addClass("desc");
                   if(events[i].description){
                        desc.html(events[i].description.substr(0, 120)+"...");
                   }

                   var event = $("<div />").addClass("event");
                   event.append(label);
                   event.append(title);
                   event.append(desc);

				   
                   //check locations                   
                   for(var j=0; j<loc_colors.length; j++){
                       for(var l=0; l<events[i].regions.length; l++){
                           if(events[i].regions[l].id == loc_colors[j].id){
                                var checkbox = $("<span />");
                                checkbox.addClass("loc_"+loc_colors[j].id);
                                loc_fillter_box = loc_fillter.find('dl[data-id=' +loc_colors[j].id+'] span');
                                event.append(checkbox.css({backgroundColor:loc_colors[j].color}));
                                if(!loc_fillter_box.hasClass("checked")){
                                    checkbox.hide();
                                }
							}
                       }
                   }

                   //check event types
                    type_fillter_box = type_fillter.find('dl[data-id=' +events[i].parent_piece_id+'] span');
                    if(!type_fillter_box.hasClass("checked")){
						event.hide();
                    }
                    event.addClass("etype_"+events[i].parent_piece_id);
                    event.attr("data-id", events[i].parent_piece_id);
                    event.attr("data-url", events[i].url);

                   event.bind('click', function(e){
                        e.preventDefault();
                        window.location.href = "/"+$(this).attr("data-url");
                   });
                   event.bind('mouseenter', function(e){
                        e.stopPropagation();
                        $(this).addClass("over");
                   });
                   event.bind('mouseleave', function(e){
                       e.stopPropagation();
                        $(this).removeClass("over");
                   });
                   var close_div = $("<div />").addClass("spacer");
                   event.append(close_div);

                   events_wrap.append(event);
               }
           }

           if(events_per_day>0){

               events_wrap.addClass("more_events");

               var more_button =$("<div></div>").addClass("more");
               more_button.bind('click', function(e){
                    e.preventDefault();
                    e.stopPropagation();
                    var wrap = $(this).parent().find(".events_wrapper");
                    wrap.stop(true,true);
                    if(!wrap.is(":animated")){
                        wrap.find("div.event").unbind("mouseenter").unbind("mouseleave");
                        wrap.addClass("expanded");
                        var single_event_height = 48*wrap.find(".event:visible").length+10;//(wrap.find(".event").eq(0).height()+4)*wrap.find(".event").length;
                        wrap.animate({height:(single_event_height)+"px", width:"300px", left:"-220px", padding:"10px"}, 200,
                            function(){
                               $(this).find("div.event").bind('mouseenter', function(){
                                    $(this).addClass("over");
                               }).bind('mouseleave', function(){
                                    $(this).removeClass("over");
                               });
							   $(this).height('auto');

                                $(this).bind('mouseleave', function(e){
                                    e.stopPropagation();
                                    $(this).parent().find(".more").removeClass("over");
                                    $(this).animate({height:"52px", width:"94px",left:0, padding:0}, 100,
                                            function(){
                                                $(this).removeClass("expanded");
                                        });

                               });

                        });
                    }
               });
               more_button.bind('mouseover', function(e){
                    e.stopPropagation();
                    $(this).addClass("over");
               });

               more_button.bind('mouseout', function(e){
                    e.stopPropagation();
                    $(this).removeClass("over");
               });

               $(this).append(more_button);
           }

           $(this).append(events_wrap);

           checkIfNeedMoreButton();
           day++;
       })
    });

}

//******** End of Event Calendar ******//

var widget_base='/blocks/sheridan/club_schedule/html/';
/* 
 * Club Schedule
 */
$(function(){

   $(".block_club_schedule .filter select").each(function(){

      $(this).closest(".block").find(".list dl").each(function(){
          
      });

      $(this).bind("change", function(e){
          var v = $(this).val();
          if(v!="all"){
            $(this).closest(".block").find(".list dl").each(function(){
                if($(this).hasClass("r_"+v)){
                    $(this).fadeIn(200);
                }else{
                    $(this).fadeOut(100);
                }
            });
          }else{
              $(this).closest(".block").find(".list dl").fadeIn(200);
          }
      });
      
   });

});



var widget_base='/blocks/sheridan/contact_form/html/';
$(function(){
   $(".block_contact_form").each(function(){
       var cat = $(this).find(".category");
       var loc = $(this).find(".location_piece_id");
       
		if(cat.val() != "store_email"){
			loc.attr('disabled', 'disabled');
			loc.val($('option:first', loc).val());
		}
		cat.change(function(){
			if(cat.val() == "store_email"){
				loc.attr('disabled', '');
			}else{
				loc.attr('disabled', 'disabled');
				loc.val($('option:first', loc).val());
			}
		});
	});
        
});

var widget_base='/blocks/sheridan/downloads/html/';
$(function(){
   $(".block_downloads").each(function(){
		//Click and Hover events for thumbnail list
		var content_left=$(this).find('.content_left ul');
		var content_right=$(this).find('.content_right');
		content_left.find("li").click(function(){
			//Set Variables
			var title = $(this).find('.lefttitle').html(); //Get File Name
			var description = $(this).find('.description').html(); //Get HTML of Description
			var link = $(this).find('.link').html(); 	//Get HTML of Download File
			var thumbnail = $(this).find('.thumbnail').html(); 	//Get HTML of Thumbnail

			if ($(this).is(".active")) {  //If it's already active, then...
				return false; // Don't click through
			} else {
				if(link) link = "<a href="+link+" class='link' target='_blank'>Download Here</a>";
				if(thumbnail) thumbnail = "<img class='image' src='"+thumbnail+"' alt=''/>";
				content_right.find(".thumbnail").html(thumbnail).animate({ marginBottom: "0" }, 350 );
				content_right.find(".download").html(link).animate({ marginBottom: "0" }, 350 );
				content_right.find(".righttitle").html(title).animate({ marginBottom: "0" }, 350 );
				content_right.find(".description").html(description).animate({ marginBottom: "0" }, 350 );
			}

			content_left.find("li").removeClass('active'); //Remove class of 'active' on all lists
			$(this).addClass('active');  //add class of 'active' on this list only
			return false;

		}) .hover(function(){
			$(this).addClass('hover');
			}, function() {
			$(this).removeClass('hover');
		});
	});
});//Close Function

var widget_base='/blocks/sheridan/event_calendar/html/';

//******** Event Calendar ******//
var today = new Date();
var current_month = today.getMonth()+1;
var current_year = today.getFullYear();
var loc_colors = new Array();
var event_types = new Array();
var is_cal_updating = false;

$(function(){
    
    //collect data from filters and bind event for them
    $(".block_event_calendar").each(function(){

        //gets the location colors
        loc_colors = new Array();
        $(this).find(".left .locations dl").each(function(){
            var boxColor = $(this).find("span").css("backgroundColor");
            var data_id = $(this).attr("data-id");
            loc_colors.push({name:$.trim($(this).find("dt").html().toLowerCase()), id:data_id, color:boxColor});
            //bind event to location
            $(this).bind("click", function(e){
                e.preventDefault();
                var box = $(this).find("span");
                var boxes = $(this).closest(".block_event_calendar").find(".event_calendar span.loc_"+data_id);
                if(box.hasClass("checked")){
                    box.removeClass("checked");
                    if(data_id == "other"){
                        $(this).closest(".block_event_calendar").find(".event_calendar .event").each(function(){
                            if($(this).find("span").length <= 0){
                                $(this).fadeOut(200, checkIfNeedMoreButton);
                            }
                           
                        });
                    }else{
                        boxes.each(function(){
                           $(this).fadeOut(400, function(){
                               if($(this).parent().find("span:visible").length >= 1){
                                   $(this).parent().fadeIn(200, checkIfNeedMoreButton);
                               }else{
                                   $(this).parent().fadeOut(200, checkIfNeedMoreButton);
                               }
                           });
                        });
                    }
                }else{
                    box.addClass("checked");
                    if(data_id == "other"){
                        $(this).closest(".block_event_calendar").find(".event_calendar .event").each(function(){
                            if($(this).find("span").length <= 0){
                                $(this).fadeIn(200, checkIfNeedMoreButton);
                            }

                        });
                    }else{
                        boxes.each(function(){
                           if($(this).parent().is(":hidden")){
                               if(!checkIfEventDisabled($(this).parent()) ){
                                    $(this).parent().fadeIn(200, checkIfNeedMoreButton);
                               }
                           }
                           $(this).fadeIn(200);
                        });
                    }
                }
            });
            $(this).bind("mouseover", function(e){
                $(this).addClass("over");
            });
            $(this).bind("mouseout", function(e){
                $(this).removeClass("over");
            });
        });

        //gets the events
        event_types = new Array();
        $(this).find(".left .types dl").each(function(){            
            var type_name = $.trim($(this).find("dt").html().toLowerCase());
            var data_id = $(this).attr("data-id");
            event_types.push({name:type_name, id:data_id});
            //bind event to event types
            $(this).bind("click", function(e){
                e.preventDefault();
                var events = $(this).closest(".block_event_calendar").find(".event_calendar div.etype_"+data_id);
                var box = $(this).find("span");
                if(box.hasClass("checked")){
                    box.removeClass("checked");
                    events.each(function(){
                       $(this).fadeOut(200, checkIfNeedMoreButton);
                    });
                }else{
                    box.addClass("checked");
                    events.each(function(){
                       $(this).fadeIn(200, checkIfNeedMoreButton);
                    });                    
                }
            });
            $(this).bind("mouseover", function(e){
                $(this).addClass("over");
            });
            $(this).bind("mouseout", function(e){
                $(this).removeClass("over");
            });
        });
    });

    //Event Calendar
    $( ".block_event_calendar .event_calendar" ).datepicker({
        gotoCurrent:    false,
        prevText:       "",
        nextText:       "",
        dateFormat:     'yy-mm-dd',
        minDate:        new Date(2011, 1 - 1, 1),
        showOtherMonths: true,
        selectOtherMonths: false,
        dayNamesMin:    ['Sun', 'Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat'],
        //beforeShowDay: add_date_ids,
        onChangeMonthYear: before_month_change,
        onSelect: function(dateText, inst) {
            
            before_month_change(current_year, current_month, inst)
        }
    });//.bind('afterChange',update_boxes);

    $(".block_event_calendar").each(function(){
        before_month_change(current_year,current_month,$(this));
    });
   
});

function checkIfEventDisabled(event_elm){
    var rs = false;
    var etype_id = event_elm.attr("data-id");
    event_elm.closest(".block_event_calendar").find(".left .types dl").each(function(){
        var box = $(this).find("span");
        var data_id = $(this).attr("data-id");
        if(!box.hasClass("checked") && etype_id == data_id){
            rs =  true;
        }
    });
    return rs;
}

function checkIfNeedMoreButton(){
    
    $('.block_event_calendar .event_calendar').each(function(){
        $(this).find('a.ui-state-default').each(function(){
            var more = $(this).find("div.more");
            var events_wrapper = $(this).find(".events_wrapper");
            var events = events_wrapper.find("div.event:visible");
            if(more.length>0){
                if(events.length>0){
                    events_wrapper.addClass("more_events");
                    more.fadeIn();
                }else{
                    events_wrapper.removeClass("more_events");
                    more.fadeOut();
                }
            }
        });
    });
    
}

function add_date_ids(date) {
    for (var i=0;i<last_event.length;i++) {
        if (last_event[i]==date.getDate()) {
            return [true, 'cal_date_'+date.getDate()+' has_event'];
        }
    }
    return [true, 'cal_date_'+date.getDate()];
}

function before_month_change(year, month, inst) {

    current_month = month;
    current_year = year;
    var block = inst.dpDiv?inst.dpDiv.closest('.block'):inst;

    is_cal_updating = false;
    $.get(getBlockPath(block),
            {handler:"month_events", year:current_year,month:current_month},
            function(data) {
                update_boxes(data)
            },
            'json'
    );
    
}

function update_boxes(events){
    if(is_cal_updating) return;
    is_cal_updating = true;

    $('.block_event_calendar .event_calendar').each(function(){
        var day = 1;
        var events_per_day = 0;
       day = 1;
       var loc_fillter = $(this).closest(".wrapper").find(".locations");
       var type_fillter = $(this).closest(".wrapper").find(".types");
       var loc_fillter_box;
       var type_fillter_box;

       $(this).find('a.ui-state-default').each(function(){
           if($(this).find(".events_wrapper").length>0) return;
           $(this).parent().removeAttr("onclick")
           $(this).click(function(e){e.preventDefault();});
           var events_wrap = $("<div />").addClass("events_wrapper").attr("data-day", day);
           events_per_day = 0;



           for(var i=0; i<events.length; i++){
               if(events[i].date<=day && events[i].date_to>=day){
                   events_per_day++;

                   var label = $("<label />");
                   label.html(events[i].title.substr(0, 14)+"...");

                   var title = $("<div />").addClass("title_long");
                   title.html(events[i].title);
                   
                   var desc = $("<div/>").addClass("desc");
                   if(events[i].description){
                        desc.html(events[i].description.substr(0, 120)+"...");
                   }

                   var event = $("<div />").addClass("event");
                   event.append(label);
                   event.append(title);
                   event.append(desc);

                   //check locations                   
                   for(var j=0; j<loc_colors.length; j++){
                       for(var l=0; l<events[i].regions.length; l++){
                           if(events[i].regions[l].id == loc_colors[j].id){
                                var checkbox = $("<span />");
                                checkbox.addClass("loc_"+loc_colors[j].id);
                                loc_fillter_box = loc_fillter.find('dl[data-id=' +loc_colors[j].id+'] span');
                                event.append(checkbox.css({backgroundColor:loc_colors[j].color}));
                                if(!loc_fillter_box.hasClass("checked")){
                                    checkbox.hide();
                                }
                           }
                       }
                   }

                   //check event types
                    type_fillter_box = type_fillter.find('dl[data-id=' +events[i].parent_piece_id+'] span');
                    if(!type_fillter_box.hasClass("checked")){
                       event.hide();
                    }
                    event.addClass("etype_"+events[i].parent_piece_id);
                    event.attr("data-id", events[i].parent_piece_id);
                    event.attr("data-url", events[i].url);


                   event.bind('click', function(e){
                        e.preventDefault();
                        window.location.href = $(this).attr("data-url");
                   });
                   event.bind('mouseenter', function(e){
                        e.stopPropagation();
                        $(this).addClass("over");
                   });
                   event.bind('mouseleave', function(e){
                       e.stopPropagation();
                        $(this).removeClass("over");
                   });
                   var close_div = $("<div />").addClass("spacer");
                   event.append(close_div);

                   events_wrap.append(event);
               }
           }

           if(events_per_day>0){

               events_wrap.addClass("more_events");

               var more_button =$("<div></div>").addClass("more");
               more_button.bind('click', function(e){
                    e.preventDefault();
                    e.stopPropagation();
                    var wrap = $(this).parent().find(".events_wrapper");
                    wrap.stop(true,true);
                    if(!wrap.is(":animated")){
                        wrap.find("div.event").unbind("mouseenter").unbind("mouseleave");
                        wrap.addClass("expanded");
                        var single_event_height = 48*wrap.find(".event:visible").length+10;//(wrap.find(".event").eq(0).height()+4)*wrap.find(".event").length;
                        wrap.animate({height:(single_event_height)+"px", width:"300px", left:"-220px", padding:"10px"}, 200,
                            function(){
                               $(this).find("div.event").bind('mouseenter', function(){
                                    $(this).addClass("over");
                               }).bind('mouseleave', function(){
                                    $(this).removeClass("over");
                               });
							   $(this).height('auto');

                                $(this).bind('mouseleave', function(e){
                                    e.stopPropagation();
                                    $(this).parent().find(".more").removeClass("over");
                                    $(this).animate({height:"52px", width:"94px",left:0, padding:0}, 100,
                                            function(){
                                                $(this).removeClass("expanded");
                                        });

                               });

                        });
                    }
               });
               more_button.bind('mouseover', function(e){
                    e.stopPropagation();
                    $(this).addClass("over");
               });

               more_button.bind('mouseout', function(e){
                    e.stopPropagation();
                    $(this).removeClass("over");
               });

               $(this).append(more_button);
           }

           $(this).append(events_wrap);

           checkIfNeedMoreButton();
           day++;
       })
    });

}

//******** End of Event Calendar ******//

var widget_base='/blocks/sheridan/event_upcoming/html/';
/*
 * Display Upcoming Events
 */
$(function(){

   $(".block_event_upcoming .filter select").each(function(){

      $(this).bind("change", function(e){
          var v = $(this).val();
          if(v!="all"){
            $(this).closest(".wrapper").find(".list a").each(function(){
                if($(this).hasClass("r_"+v)){
                    $(this).fadeIn(200);
                }else{
                    $(this).fadeOut(100);
                }
            });
          }else{
              $(this).closest(".wrapper").find(".list a").fadeIn(200);
          }
      });

   });

});



var widget_base='/blocks/sheridan/form_part/html/';
$(function(){
	$('.custom_form_submit').submit(function(){
		var fields=[];
		$('.custom_form_submitter').remove();
		var form=$('<form method="post" action="" class="custom_form_submitter" enctype="multipart/form-data" />').hide();
		form.append($('<input />').attr('type','hidden').attr('name','from_form_submitter').attr('value',1));
		$('.custom_form_submit input,.custom_form_submit select,.custom_form_submit textarea').each(function(){
			var new_field=$(this).clone();
			if (!$(this).is('input[type=file]')) {
				new_field.val($(this).val());
			}
			form.append(new_field);
			
		});
		$('body').append(form);
		form.submit();
		
		return false;
	}).show();
	$( ".custom_form .datetime" ).datepicker();	
	$(window).bind('widget_form_complete',function(){
		rebind_resizer();
	});
	rebind_resizer();
});
function rebind_resizer()
{
	if (typeof($.fn.colResizable)!="undefined") {
	$('.custom_csv_table').each(function(){
		var csv_table=$('.custom_csv_table');
		if (!$(this).data('has_resizer')) {
			$(this).data('has_resizer',true);
			$(this).colResizable({onResize:function(e){
				var th_items=[];
				$(e.currentTarget).find('th').each(function(){
					th_items.push($(this).width());
				});
				$.post(csv_table.parent().attr('data-url'),{column_sizes:th_items},function(){
					
				});
			}});
		}
	});
	}
}
var widget_base='/blocks/sheridan/garden_tips/html/';
/**
 * Garden Tips
 */
$(function(){

    $(".block_garden_tips").each(function(){

        $(this).find(".tips .tip").each(function(){

            var title = $(this).find(".title");
            var content = $(this).find(".content");
            var block_edit = $(this).find(".block_edit");
            if(block_edit.length<=0){
                content.hide();
            }

            title.bind("click", function(e){
                if(!content.is(":animated")){

                    //close open
                    $(this).closest(".column").find(".tip").each(function(){
                        $(this).css({backgroundColor:""});
                        $(this).find(".content:visible").not(content).slideUp(100);
                        $(this).find(".title").removeClass("clicked");
                    });

                    content.delay(150).slideToggle(200,function(){
                        var column = $(this).closest(".tip");
                        if($(this).is(":visible")){
                            column.css({
                                backgroundColor:"#FFFFDF"
                            });
                            column.find(".title").addClass("clicked");
                        }else{
                            column.css({
                                backgroundColor:""
                            });
                            column.find(".title").removeClass("clicked");
                        }
                    });
                }
            });

        });

        $(this).find(".select select").each(function(){

            $(this).bind("change", function(){

                var v = $(this).val();

               if(v != "all"){
                   $(this).closest(".wrapper").find(".tips .tip").each(function(){
                      if( $(this).hasClass("cat_"+v) ){
                          $(this).fadeIn(200);
                      }else{
                          $(this).fadeOut(200);
                      }
                   });
               }else{
                   $(this).closest(".wrapper").find(".tips .tip").fadeIn();
               }

            });

        });

    });

});
var widget_base='/blocks/sheridan/garden_tips_single_tip/html/';
/**
 * Garden Tips
 */
$(function(){

    $(".block_garden_tips_single_tip").each(function(){

        var title = $(this).find(".title");
        var content = $(this).find(".content");
        var block_edit = $(this).find(".block_edit");
        if(block_edit.length<=0){
            content.hide();
        }
        
        title.bind("click", function(e){
            if(!content.is(":animated")){
                //close open
                $(".block_garden_tips_single_tip").find(".wrapper").each(function(){
                    $(this).css({backgroundColor:""});
                    $(this).find(".content:visible").not(content).slideUp(100);
                    $(this).find(".title").removeClass("clicked");
                });

                content.delay(150).slideToggle(200,function(){
                    var wrapper = $(this).closest(".wrapper");
                    if($(this).is(":visible")){
                        wrapper.css({
                            backgroundColor:"#FFFFDF"
                        });
                        title.addClass("clicked");
                    }else{
                        wrapper.css({
                            backgroundColor:""
                        });
                        title.removeClass("clicked");
                    }
                });
            }
        });
    });


});
var widget_base='/blocks/sheridan/homepage_banner/html/';
$(function(){
    //****** section slider and timer Fade inout Slider *************** //
    $('.block_homepage_banner .fadeinout').each(function(){
        $(this).css({
            overflow:'hidden',
            position:'relative'
        });
        var max_height=0;
        var max_width = $(this).width();
        var columns=$(this).find('.slide');
        var use_width=columns.eq(0).width();

        //set width and height
        columns.each(function(){
            if ($(this).height()>max_height) {
                max_height=$(this).height();
            }
        }).height(max_height).width(use_width);

        //add absolute wrapper
        var wrap=$("<div />").addClass('slider_wrapper').css({
            position:'absolute',
            top:0,
            left:0
        });

        //add controller wrapper
        var slider_nav_wrap = $('<div />').addClass('slider_nav_wrapper');
        var slider_nav_play_pause;
        
        //****** For timer fadeinout
        
        var timer_delay = 10000;
        var slide_index = 0;
        var timer_id;

        wrap.width(use_width).height(max_height);
        $(this).height(max_height).wrapInner(wrap);

        //hide all slides and reset z-index for each of them
        for(i=columns.length-1,j=0; i>=0; i--,j++){
            if(columns.eq(i)){
                columns.eq(i).hide();
                columns.eq(i).css({
                    zIndex:j
                });
            }
        }

        //fade in first slide
        columns.eq(0).fadeIn("slow");


        function startSlider(){

            if(slide_index == (columns.length-1)){
                slide_index = -1;
            }
            slide_index++;

            slider_nav_wrap.find(".slider_nav_pointer").each(function(){
                if($(this).index() === slide_index){
                    $(this).addClass("selected");
                }else{
                    $(this).removeClass("selected");
                }
            });
            columns.each(function(){
                if($(this).index() === slide_index){
                    $(this).fadeIn("slow");
                }else{
                    $(this).fadeOut("fast");
                }
            })

        }

        //dispay controller when there is more than one slide
        if(columns.length > 1){
            
            //start timer
            timer_id = setInterval( startSlider, timer_delay);

            //add controller and its style will be in your own css
            var point_button = $('<div/>').addClass('slider_nav_pointer');

            for(p=0; p<columns.length; p++){
                var point = point_button.clone();
                if(p == 0) point.addClass("selected");
                slider_nav_wrap.append(point);
                point.bind("click", function(e){
                    e.preventDefault();
                    clearInterval(timer_id);

                    slide_index = $(this).index();

                    //reset all selected class and add it to the one only
                    $(this).parent().find(".slider_nav_pointer").removeClass("selected");
                    $(this).addClass("selected");

                    //
                    columns.each(function(){
                        if($(this).index() === slide_index){
                            $(this).fadeIn("slow");
                        }else{
                            $(this).fadeOut("fast");
                        }
                    });

                    timer_id = setInterval( startSlider, timer_delay);
                });
            }
            $(this).append(slider_nav_wrap);

            //add Play / Pause button
            slider_nav_play_pause = $('<div />').addClass('slider_nav_play_pause');
            slider_nav_play_pause.bind("click", function(e){
                e.preventDefault();
                if(timer_id){
                    $(this).addClass("pause");
                    clearInterval(timer_id);
                    timer_id ="";
                }else{
                    $(this).removeClass("pause");
                    timer_id = setInterval( startSlider, timer_delay);
                }
            });
            $(this).append(slider_nav_play_pause);

        }

        return;
        
    });
});
var widget_base='/blocks/sheridan/homepage_reminder/html/';
$(function(){
	slideInit();
	setInterval("slideReminder()",11000);
});

function slideInit(){
	//hide all reminders except the first and attach positions to each.
	var reminders = $('.block_homepage_reminder .reminder_display');
	reminders.hide();
	reminders.first().show();
	reminders.each(function(i){
		$(this).attr('slide-pos',i);
		if(i == 0){
			$(this).attr('shown','true');
		}
	});
}

function slideReminder(){
	//find the current reminder and advance to the next or start over if we've reached the end.
	var reminders = $('.block_homepage_reminder .reminder_display');
	var len = reminders.length;
	var current = $('.block_homepage_reminder .reminder_display[shown=true]');
	var pos = current.attr('slide-pos');

	if(pos == 0 && len == 1){
		return true;
	}

	//reminders.fadeOut(500);
        $('.block_homepage_reminder .reminder_display:visible').fadeOut(400);

	pos++;
	if(pos > (len - 1) ){
            pos = 0;
	}

	current.removeAttr('shown');
	current = $('.block_homepage_reminder .reminder_display[slide-pos='+pos+']').attr('shown','true');
	current.fadeIn("slow");
	return true;
}

var widget_base='/blocks/sheridan/jobs/html/';

//Join Our Team
$(function(){

    $(".block_jobs").each(function(){
        $(this).find(".job_cat .dropdown").each(function(){
            $(this).bind("click", function(e){
                e.preventDefault();
				$(this).find(".job_cat .job_wrapper").toggle();
                var content = $(this).parent().find(".job_wrapper");
                if(!content.is(":animated")){
                   content.slideToggle(300);
                }
				$(this).toggleClass("clicked");
            });
        });
    });
})
var widget_base='/blocks/sheridan/job_application_form/html/';
$(function(){
   $(".block_job_application_form").each(function(){
		$('.applicantStatus').change(function() {
			$('.returning_staff').toggle();
			$('.new_staff').toggle();
		});
	});
   $(".block_job_application_form").ready(function(){
		if($('.applicantStatus').val() == "returning") {
			$('.returning_staff').toggle();
			$('.new_staff').toggle();
		}
	});
});
var widget_base='/blocks/sheridan/my_garden/html/';
$(function(){
	$('.my_wishlist .delete_me a').click(function(e){
		e.preventDefault();
		if (confirm('Are you sure you wish to remove this item from your wishlist?')) {
			var item_to_remove=$(this);
			$.get($(this).attr('href'),function(){
				item_to_remove.closest('.item').fadeOut();
			});
		}
	})
	
	$(".profile_picture .inner_profile").each(function(){
		$(this).swfupload({
			flash_url : "/blocks/sheridan/my_garden/html/js/swfupload/Flash/swfupload.swf",
			upload_url: $('.profile_picture').attr('data-upload-url'),
			post_params: {"SID" : $('.profile_picture').attr('data-session-id')},

			file_size_limit : "5 MB",
			file_types : "*.png;*.gif;*.jpg;*.bmp",
			file_types_description : "Images",
			file_queue_limit : 1,
			button_window_mode:'transparent',

			button_image_url: "/blocks/sheridan/my_garden/html/images/transparent_upload.gif",
			button_placeholder_id: "profile_picture_manager",
			button_cursor : SWFUpload.CURSOR.HAND, 
			button_width: "156",
			button_height: "156"
		}).bind('fileQueued', function(event, file){
			// start the upload once a file is queued
			$(this).swfupload('startUpload');
		}).bind('uploadComplete', function(event, file){
			// start the upload (if more queued) once an upload is complete
			$(this).swfupload('startUpload');
			$.get($(".profile_picture").attr('data-finish-url'),function(data){
				if (data.image) {
					$(".profile_picture").css('background-image','url('+data.image+')')
				}else{
					alert('Invalid Picture. Please re-upload a valid profile picture.');
				}
			},'json');
			/*if ($(this).data('files')*1==0) {
				$('.my_garden_photos').addClass('uploading').text("Converting Photos...");

			}
			$(this).data('files',$(this).data('files')*1-1);*/
			//console.log($(this).swfupload().getInstance());
		}).bind('uploadStart',function(event,file){
			//garden_photos.addClass('uploading').text("My Garden Photos (Uploading New Photos "+($(this).data('max_files')*1-$(this).data('files')*1)+"/"+$(this).data('max_files')+"...)");
		}).bind('uploadSuccess',function(event,file,fileData){
			//garden_photos.removeClass('uploading').text("My Garden Photos");
		});	
	});
	
	
	$('.recently_viewed .add_whishlist_item').click(function(e){
		e.preventDefault();
		$(this).removeClass('add_whishlist_item');
		$(this).addClass('wishlist_included');
		$.get($(this).attr('href'),function(){
			alert("This plant is successfully added in your wish list");
		});
	});

	$('.recently_viewed .add_garden_plant').click(function(e){
		e.preventDefault();
		$(this).removeClass('add_garden_plant');
		$(this).addClass('included');
		$.get($(this).attr('href'),function(){
			alert("This plant is successfully added in your garden");
		});
	});

	$('.recently_viewed .included').click(function(e){
		e.preventDefault();
		alert("This plant already exists in this garden");
	});
	$('.recently_viewed .wishlist_included').click(function(e){
		e.preventDefault();
		alert("This plant already exists in your wishlist");
	});

	$('.recently_viewed .sf-top').click(function(e){
		e.preventDefault();
	});

$('.profile_actions .clear_wishlist').click(function(e){
		e.preventDefault();
		if (confirm('Are you sure you wish to clear your wishlist?')) {
			$.get($(this).attr('href'),function(){
				$('.my_wishlist .item').fadeOut();
			});
		}
	});
	$(document).keydown(function(e){
		if ($('.photo_button_container').length>0) {
			switch (e.keyCode) {
				case 37:
					$('.photo_button_previous').click();
					break;
				case 39:
					$('.photo_button_next').click();
					break;
			}
		}
	});

	$('.my_garden_account .hide_details a').click(function(e){
		e.preventDefault();
		var hide_details=$(this).closest('.hide_details')
		var garden_id=hide_details.attr('data-garden-id');
		var upload_url=hide_details.attr('data-upload-url');
		var session_id=hide_details.attr('data-session-id');
		var finish_url=hide_details.attr('data-finish-url');


		if ($(this).hasClass('items')) {
			var mark_clicked=$(this).hasClass('clicked')?0:1;
			$(this).html(!mark_clicked?'Close Garden':'View Garden');
			if (mark_clicked) {
				// hide details
				$(this).addClass('clicked');
				$(this).parent().next().slideUp();
			}else{
				// show details
				$('.show_details_button.items:not(".clicked")').click();
				$(this).removeClass('clicked');
				$(this).parent().next().slideDown();
			}
			return;
		}

		var details_button=$(this);
		$.get($(this).attr('href'),function(data){			
			var new_item=$(data.details);

			if (details_button.parent().next().hasClass('garden_expand')) {
				new_item.css('display','block');
				details_button.parent().next().replaceWith(new_item);
			}else{
				$('.show_details_button.items:not(".clicked")').click();
				new_item.insertAfter(details_button.parent());
				details_button.parent().next().slideToggle()
			}
			details_button.addClass('items');
			details_button.html('Close Garden');
			
			var plant_photos=hide_details.find('.plant_photos');
			rebind_photos(plant_photos.find('.item a:not(.delete_photo)'),hide_details);

			var garden_photos=hide_details.find('.my_garden_photos');
			
			$("#add_a_plant"+garden_id).swfupload({
				flash_url : "/blocks/sheridan/my_garden/html/js/swfupload/Flash/swfupload.swf",
				upload_url: upload_url,
				post_params: {"SID" : session_id},
				
				file_size_limit : "5 MB",
				file_types : "*.png;*.gif;*.jpg;*.bmp",
				file_types_description : "Images",
				file_queue_limit : 10,
				button_window_mode:'transparent',
				
				button_placeholder_id: "add_a_plant"+garden_id,
				button_cursor : SWFUpload.CURSOR.HAND,
				button_width: "100",
				button_height: "100"
			}).bind('fileQueued', function(event, file){
				// start the upload once a file is queued
				$(this).swfupload('startUpload');
			}).bind('uploadComplete', function(event, file){
				// start the upload (if more queued) once an upload is complete
				$(this).swfupload('startUpload');
				if ($(this).data('files')*1==0) {
					$('.my_garden_photos').addClass('uploading').text("Converting Photos...");
					$.get(finish_url,function(data){
						plant_photos.html(data.details);
						rebind_photos(plant_photos.find('.item a:not(.delete_photo)'),hide_details);
						$('.my_garden_photos').removeClass('uploading').text("My Garden Photos");
					},'json')
				}
				$(this).data('files',$(this).data('files')*1-1);
			}).bind('uploadStart',function(event,file){
				garden_photos.addClass('uploading').text("My Garden Photos (Uploading New Photos "+($(this).data('max_files')*1-$(this).data('files')*1)+"/"+$(this).data('max_files')+"...)");
			}).bind('uploadSuccess',function(event,file,fileData){
				garden_photos.removeClass('uploading').text("My Garden Photos");
			}).bind('fileDialogComplete',function(event, numFilesSelected, numFilesQueued){
				$(this).data('files',numFilesQueued*1-1);
				$(this).data('max_files',numFilesQueued);

			});
			
		},'json');
	});

	$('.section.my_garden_account .create_new_garden a.add_info').live('click',function(e){
		$(this).closest('.section.my_garden_account .create_new_garden').find('.new_garden').show();
		$(this).closest('.section.my_garden_account .create_new_garden').find('.garden_actions').show();
		e.preventDefault();
	});

	$('.section.my_garden_account .garden_actions a.save_add_info').live('click',function(e){
		e.preventDefault();
		var redirect_form = $(this).closest('.create_new_garden').find('.redirect_form');
		$(this).closest('.create_new_garden').find('form').ajaxSubmit({dataType:'json',success:function(data){
			if (data.error) {
				alert(data.error);
			}
			if (data.status > 0) {
				var new_url = redirect_form.attr("action")+data.status;
				redirect_form.attr("action", new_url);
				redirect_form.submit();
			}
		}})
	});

	$('.section.my_garden_account .profile_details .garden_expand .delete_me a').live('click',function(e){
		e.preventDefault();
		if (confirm('Are you sure you wish to remove this item from this garden?')) {
			var item_to_remove=$(this);
			$.get($(this).attr('href'),function(){
				item_to_remove.closest('.item').fadeOut();
			});
		}
	})

	$('.section.my_garden_account .profile_details .garden_expand .add_whishlist_item').live('click',function(e){
		e.preventDefault();
		$(this).removeClass('add_whishlist_item');
		$(this).addClass('wishlist_included');
		$.get($(this).attr('href'),function(){
			alert("This plant is successfully added in your wish list");
		});
	});

	$('.section.my_garden_account .profile_details .garden_expand .add_garden_plant').live('click',function(e){
		e.preventDefault();
		$(this).removeClass('add_garden_plant');
		$(this).addClass('included');
		var clicked_plant=$(this);
		$.get($(this).attr('href'),function(){
			var details_content=clicked_plant.closest('.hide_details');
			if (details_content.length>0) {
				details_content.find('.show_details_button').removeClass('items').click();
			}
		});
	});

	$('.section.my_garden_account .profile_details .garden_expand .included').live('click',function(e){
		e.preventDefault();
		alert("This plant already exists in this garden");
	});
	$('.section.my_garden_account .profile_details .garden_expand .wishlist_included').live('click',function(e){
		e.preventDefault();
		alert("This plant already exists in your wishlist");
	});

	$('.section.my_garden_account .profile_details .garden_expand .sf-top').live('click',function(e){
		e.preventDefault();
	});

	$('.section.my_garden_account .profile_actions a.update_info').live('click',function(e){
		$(this).text('Save');
		$(this).addClass('blue');
		$(this).addClass('finish_update');
		$(this).removeClass('update_info');
		$(this).siblings('.cancel_update_info').show();
		$(this).siblings('.delete_info').show();
		$(this).closest('.section.my_garden_account .profile_details').find('h5').show();
		e.preventDefault();

		$(this).closest('.section.my_garden_account .profile_details').find('.editable').each(function(i){
			if($(this).hasClass('dropdown')){
				$(this).hide();
				$(this).siblings('.dropdown_edit').show();
			}else{
				var text = $.trim($(this).text());
				text = text.replace(/'/g, '\'');
				var name = $(this).attr('field');
				$(this).html('<p class="fl editable" field="title"><input type="text" name="'+name+'" value="'+text+'" /></p>');
			}
		});
	});

	$('.section.my_garden_account .profile_actions a.finish_update,a.cancel_update_info').live('click',function(e){
		if ($(this).hasClass('cancel_update_info')) {
			$('.user_info form')[0].reset();
		}
		if($(this).hasClass('cancel_update_info')){
			$(this).hide();
		}else{
			$(this).closest('.profile_details').find('form').ajaxSubmit({dataType:'json',success:
				function(data){
					if (data.error) {
						alert(data.error);
					}
				}
			})
		}

		var btn = $(this).closest('div.profile_actions').find('a.finish_update');

		btn.text('Edit Info');
		btn.removeClass('blue');
		btn.removeClass('finish_update');
		btn.addClass('update_info');
		btn.siblings('.cancel_update_info').hide();
		btn.siblings('.delete_info').hide();
		$(this).closest('.section.my_garden_account').find('h5').hide();
		e.preventDefault();

		$(this).closest('.section.my_garden_account .profile_details').find('.editable').each(function(i){
			var text = $.trim($(this).find('input').val());
			$(this).html(text);
		});

		$(this).closest('.section.my_garden_account .profile_details').find('.dropdown_edit').each(function(i){
			$(this).hide();
			var text = $.trim($(this).find("option:selected").html());
			$(this).siblings('.dropdown').show();
			if(text == "Shade"){
				$(this).siblings('.dropdown').attr("src", "/blocks/sheridan/html/images/plant_product_blue_sun_icon.png");
			}else if(text == "Partial Shade"){
				$(this).siblings('.dropdown').attr("src", "/blocks/sheridan/html/images/plant_product_orange_sun_icon.png");
			}else if(text == "Sun"){
				$(this).siblings('.dropdown').attr("src", "/blocks/sheridan/html/images/plant_product_yellow_sun_icon.png");
			}else if(text == "None"){
				$(this).siblings('.dropdown').attr("src", "");
				$(this).siblings('.dropdown').html("");
			}else{
				$(this).siblings('.dropdown').html(text);
			}
		});
	});

	$('.section.my_garden_account .profile_actions a.delete_info').live('click',function(e){
		e.preventDefault();
		if (confirm('Are you sure you wish to delete this garden permanently?')) {
			var profile_details = $(this).closest('div.profile_details');
			$.get($(this).attr('href'),function(){
				profile_details.hide();
			});
		}
	});

	$('.section.my_garden_account .profile_actions a.private_toggle').live('click',function(e){
		e.preventDefault();
		
		var mark_private=$(this).hasClass('blue')?0:1;
		var share_button=$(this);
		var shared_garden=$(this).closest('.section.my_garden_account .profile_details').find('.shared_garden');
		var fb_like=$(this).closest('.section.my_garden_account .profile_details').find('.fb_like');
		if (mark_private || !mark_private && confirm('Are you sure you wish to mark your garden as shared?')) {
			$.get($(this).attr('href'),{mark_private:mark_private},function(){
				share_button.text(!mark_private?'Stop Sharing':'Share');
				if (mark_private) {
					share_button.addClass('blue');
					shared_garden.html('( Private )');
					fb_like.addClass('hide_details');
				}else{
					share_button.removeClass('blue');
					shared_garden.html('');
					fb_like.removeClass('hide_details');
				}
			});
		}
	});
	$('.my_garden_account .private_wishlist_toggle').click(function(e){
		e.preventDefault();
		
		var mark_private=$(this).hasClass('blue')?0:1;
		var share_button=$(this);
		if (mark_private || !mark_private && confirm('Are you sure you wish to mark your wishlist as shared?')) {
			$.get($(this).attr('href'),{mark_private:mark_private},function(){
				share_button.text(!mark_private?'Stop Sharing':'Share');
				if (mark_private) {
					share_button.addClass('blue');
					$('.my_garden_account .shared_garden').html("( Private )");
				}else{
					share_button.removeClass('blue');
					$('.my_garden_account .shared_garden').html('');
				}
			});
		}
	});

	$('.plant_product_database .add_whishlist_item').click(function(e){
		e.preventDefault();
		$(this).removeClass('add_whishlist_item');
		$(this).addClass('wishlist_included');
		var plant_name = $.trim($(this).closest('.section.plant_product_database').find('.product_details .name h1').text());
		var garden_name = $(this).text();
		var my_wishlist_url = $('.plant_product_database #msg_button .my_wishlist_url').attr('href');
		$('.plant_product_database #popupContact .back_garden').attr('href',my_wishlist_url);
		$('.plant_product_database #popupContact .back_garden').html('Back to My Wishlist');
		$('.plant_product_database #popupContact .plant_name').html(plant_name);
		$('.plant_product_database #popupContact .garden_name').html(garden_name);
		$.get($(this).attr('href'),function(){
			msgshow();
		});
	});

	$('.plant_product_database .add_garden_plant').click(function(e){
		e.preventDefault();
		$(this).removeClass('add_garden_plant');
		$(this).addClass('included');
		var plant_name = $.trim($(this).closest('.section.plant_product_database').find('.product_details .name h1').text());
		var garden_name = $(this).text();
		var garden_id = $(this).attr('garden_id')
		var garden_url = $('.plant_product_database #msg_button .my_garden_url').attr('href');
		var new_garden_url = garden_url + garden_id;
		$('.plant_product_database #popupContact .back_garden').attr('href',new_garden_url);
		$('.plant_product_database #popupContact .back_garden').html('Back to My Garden');
		$('.plant_product_database #popupContact .plant_name').html(plant_name);
		$('.plant_product_database #popupContact .garden_name').html(garden_name);
		$.get($(this).attr('href'),function(){
			msgshow();
		});
	});

	$('.plant_product_database .included').click(function(e){
		e.preventDefault();
		alert("This plant already exists in this garden");
	});
	$('.plant_product_database .wishlist_included').click(function(e){
		e.preventDefault();
		alert("This plant already exists in your wishlist");
	});

	$('.plant_product_database .sf-top').click(function(e){
		e.preventDefault();
	});

	$('.plant_product_database .add_recently_viewed').click(function(e){
		//e.preventDefault();
		$.get($(this).attr('href'));
	});

	if ($('.plant_product_database .add_recently_viewed').length != 0) {
		$(".plant_product_database .add_recently_viewed").click();
	}
	$('.forgot_password').click(function(e){
		e.preventDefault();
		$('.login_password').toggle();
		
		if ($('.login_password').is(':visible')) {
			$('.login_header').text('Login')
			$('.login_action').val('login');
			$('.login_button').val('Login');
			$('.forgot_password').text('Forgot your password?');
		}else{
			$('.login_header').text('Password Recovery')
			$('.login_action').val('forgot');
			$('.login_button').val('Send New Password');
			$('.forgot_password').text('Cancel');
		}
	})
	$('.my_garden_account input[type=text]:first').focus();
	$('.my_garden_account .login_form').submit(function(e){
		if (!$('.login_password').is(':visible')) {
			if ($.trim($('.login_form input[name=email]').val())=='' || $('.login_form input[name=email]').val().indexOf('@')==-1 || $('.login_form input[name=email]').val().indexOf('.')==-1) {
				alert('Please enter a valid email');
				$('.login_form input[name=email]').focus();
				return false;
			}
			
		}
	});
	if ($('.my_garden_account .forward_reminder').length>0) {
		$('.forgot_password').click();
	}

	if($('.my_garden_account .hide_details').length > 0){
		$('.my_garden_account .hide_details a').click();
	}

	if($('.my_garden_account #msg_button').length > 0){
		msgshow();
	}

	if ($('.my_garden_account .browse_help').length>0) {
		$('.section.my_garden_account .create_new_garden a.add_info').click();
	}
})

function rebind_photos(items,hide_details)
{
	var tag_url=hide_details.children('.garden_expand').attr('data-tagger-url');
	items.find('.delete_me a').click(function(e){
		e.preventDefault();
		e.stopPropagation();
		if (confirm('Are you sure you wish to remove this photo?')) {
			$(this).closest('.item').fadeOut();
		}
		return false;
	})
	items.click(function(e){
		e.preventDefault();
		var photo_tagger_content=$(hide_details.find('.photo_tagger').html());


		$.get($(this).attr('href'),function(data){
			$('.facebook_comments').html(data.details);
		},'json')
		
		if ($('.ui-dialog').length==0) {
			show_popup({popup_title:"Garden Photos",content:photo_tagger_content,height:800});
		}else{
			$('.dialog_popup').html(photo_tagger_content);
		}
		$('.ui-dialog').addClass('gallery_dialog');
		var photo_slider=$('.dialog_popup').find('.photo_slider');
		var photo_holder=$('.dialog_popup').find('.photo_holder');
		var item_element=$(this).closest('.item');
		$('.dialog_popup form').submit(function(){
			if ($(this).find('select[name=plant_id]').val()=="") {
				alert('Please pick a plant to use as a tag.')
				return false;
			}
			$.get($(this).attr('action'),{
				tag_action:'add_tag',
				x:photo_slider.position().left,
				y:photo_slider.position().top,
				plant_id:$(this).find('select[name=plant_id]').val(),
				size:$(this).find('select[name=size]').val(),
				file_id:item_element.attr('data-file-id')
			});

			$('.dialog_popup .photo_container .tagged_photo:not(.empty_photo)').remove();

			$('<span />').attr('data-size',$(this).find('select[name=size]').val()).attr('data-id',$(this).find('select[name=plant_id]').val()).attr('data-x',photo_slider.position().left).attr('data-y',photo_slider.position().top).text($(this).find('select[name=plant_id] option:selected').text()).appendTo(item_element.children('.tags'));

			photo_slider.hide();
			$('.tag_names').html("<span class='tag_title'>Tags: </span>");
			item_element.children('.tags').children().each(update_tags);
			return false;
		})

		$('.tag_names').html("<span class='tag_title'>Tags: </span>");
		item_element.children('.tags').children().each(update_tags);
		$('.dialog_popup .tagged_photo').css({opacity:0.8}).delay(1000).animate({opacity:0},1500);

		$('.dialog_popup .tagged_photo input[value=Remove]').click(function(){
			$.get(tag_url,{tag_action:'remove_tag',tag_id:$(this).closest('.tagged_photo').attr('data-id'),file_id:item_element.attr('data-file-id')})
			$(this).closest('.tagged_photo').fadeOut().unbind().data('item').remove();
			$('.tag_name[data-id="'+$(this).closest('.tagged_photo').attr('data-id')+'"]').remove();
		})

		photo_holder.append($('<img />').width(item_element.attr('data-size-width')).height(item_element.attr('data-size-height')).attr('src',item_element.attr('data-full-src')));
		$('.dialog_popup').find('.photo_container').width(item_element.attr('data-size-width')).height(item_element.attr('data-size-height')).css('top',(Math.round((600-item_element.attr('data-size-height'))/2)+5)+'px');
		//$('.dialog_popup').find('.photo_button_container,.photo_button_previous,.photo_button_next').height(item_element.attr('data-size-height'));
		$('.dialog_popup .photo_button_next').click(function(){
			var next_item=item_element.next();
			if (next_item.length==0) {
				next_item=item_element.parent().children(':first');
			}
			$('.tag_names').html("<span class='tag_title'>Tags: </span>");
			next_item.find('a:last').click();
		})
		$('.dialog_popup .photo_button_previous').click(function(){
			var next_item=item_element.prev();
			if (next_item.length==0) {
				next_item=item_element.parent().children(':last');
			}
			$('.tag_names').html("<span class='tag_title'>Tags: </span>");
			next_item.find('a:last').click();
		})


		var container_box=photo_slider.children('.container_box');
		photo_slider.find('select[name=size]').change(function(){
			switch ($(this).val()) {
				case 'Small':
					container_box.width(50).height(50);
					break;
				case 'Normal':
					container_box.width(100).height(100);
					break;
				case 'Large':
					container_box.width(150).height(150);
					break;
			}
		});
		photo_slider.find('input[value=Cancel]').click(function(){
			photo_slider.fadeOut();
		})
		photo_slider.find('input[value="Tag Plant"]').click(function(){
			$('.dialog_popup form').submit();
		})
		
		photo_tagger_content.find('.photo_container').click(function(e){
			if ($(e.target).closest('.container_contents').length>0 || $(e.target).closest('.tagged_photo .container_contents').length>0) {
				return;
			}
			var mouse_pos={x:Math.round(e.pageX-$(this).offset().left-container_box.width()/2-5),y:Math.round(e.pageY-$(this).offset().top-container_box.height()/2-5)};
			if (mouse_pos.x<0) {
				mouse_pos.x=0;
			}
			if (mouse_pos.y<0) {
				mouse_pos.y=0;
			}
			if (mouse_pos.x>(item_element.attr('data-size-width')*1-container_box.width()-10)) {
				mouse_pos.x=item_element.attr('data-size-width')*1-container_box.width()-10;
			}
			if (mouse_pos.y>(item_element.attr('data-size-height')*1-container_box.height()-10)) {
				mouse_pos.y=item_element.attr('data-size-height')*1-container_box.height()-10;
			}
			if (photo_slider.is(':visible')) {
				photo_slider.stop().animate({left:mouse_pos.x,top:mouse_pos.y,opacity:1}, {
					duration: 500,
					specialEasing: {
					  width: 'linear',
					  height: 'easeInQuad'
				}});
			}else{
				photo_slider.css({left:mouse_pos.x+"px",top:mouse_pos.y+"px"}).fadeIn();
			}
		})
	})
}

function update_tags()
{
	var empty_photo=$('.dialog_popup .empty_photo');
	var new_photo=empty_photo.clone().removeClass('empty_photo');
	new_photo.css({left:$(this).attr('data-x')+"px",top:$(this).attr('data-y')+"px"}).find('h3').text($(this).text());
	new_photo.attr('data-id',$(this).attr('data-id')).addClass($(this).attr('data-size'));
	new_photo.data('item',$(this));
	new_photo.appendTo($('.dialog_popup .photo_container'));
	new_photo.find('.container_contents').addClass($(this).attr('data-size'));

	$('.dialog_popup .tagged_photo').bind('mouseover',function(){
		$(this).clearQueue().stop().animate({opacity:1},200);
	}).bind('mouseout',function(){
		$(this).delay(500).animate({opacity:0},200);
	});

	$('.tag_names').append("<a class='tag_name' data-id='"+$(this).attr('data-id')+"'>"+$(this).text()+", </a>");

	$('.tag_names').find('.tag_name').click(function(){
		var new_id = $(this).attr("data-id");
		$('.dialog_popup .tagged_photo[data-id="'+new_id+'"]').css({opacity:0.8}).delay(100).animate({opacity:0},1500);
	})
}


var widget_base='/blocks/core/parts/bool/html/';
$('.bool_button').live('click',function(){
    var button=$(this).stop();
    if (button.data('state')!="on" && button.data('state')!="off") {
        button.data('state',button.hasClass('bool_state_off')?"off":"on");
    }

    if (button.data('state')=="on") {
        button.children('.off').stop().animate({left:"0px",opacity:1},{duration:200});
        button.children('.on').stop().animate({left:"-50px",opacity:0},{duration:200});
    }else{
        button.children('.off').stop().animate({left:"50px",opacity:0},{duration:200});
        button.children('.on').stop().animate({left:"0px",opacity:1},{duration:200});
    }
    button.data('state',button.data('state')=="on"?"off":"on");
    button.next().val(button.data('state')=="on"?'1':'');
})
var widget_base='/blocks/core/parts/file/html/';
$('.widget_form .ajax_tree span.item_has_children').live('click',function(){
    var clicked_child=$(this);

    if (clicked_child.closest('li').children('ul').length>0) {
        $(this).removeClass('open');
		$.get($(this).closest('form.widget_form').attr('action'),{remove_piece_id:$(this).closest('li').attr('data-piece-id'),json:false});
        clicked_child.closest('li').children('ul').remove();
        return;
    }
    clicked_child.addClass('loading');
    $.get($(this).closest('form.widget_form').attr('action'),{piece_id:$(this).closest('li').attr('data-piece-id'),json:false},function(data){
        clicked_child.addClass('open');
        clicked_child.removeClass('loading').closest('li').append(data)
    })
});
var widget_base='/blocks/core/parts/filecolumns/html/';
$(function() {
	$('.dialog_popup').live('popup',update_column_files).live('closing',update_column_files);
});
function update_column_files()
{
	$( ".filecolumns .filecolumn ul:not(.sorted)" ).addClass('sorted').sortable('destroy').sortable({
		update:function(){
			$('.filecolumns .filecolumn').each(function(col) {
				$(this).find('input').each(function(key){
					$(this).attr('name',$(this).attr('data-name')+"["+col+"]["+key+"]");
				})
			})
		},
		connectWith: ".connectedSortable"
	}).disableSelection();
}
var widget_base='/blocks/core/parts/queue/html/';
$(function(){
	$('.queue_manager .delete').live('click',function(){
		if (!confirm('Are you sure you wish to remove this item?')) {
			return;
		}
		$(this).closest('li').fadeOut(function(){
			$(this).remove();
			resort_queue();
		})
	})
	$('.dialog_popup').live('popup',function(){
		
		$('.queue_manager .start_date input,.queue_manager .end_date input').datetimepicker();
		$('.queue_manager .form_ul').sortable({items:'>li:not(.add_entry)',axis:'y',handle:'.sorter',cursor:'n-resize',update:resort_queue})
		
		$('.queue_manager .add_item').unbind('click').click(function(){
			var date_object=new Date();
			var rand_id=date_object.getMilliseconds()+Math.round(Math.random()*10000);
			if (!$(this).prev().is(':visible')) {
				$(this).text('Done').prev().show();
				return;
			}else{
				$(this).text('Add Item').prev().hide();
			}
			
			var cloned_item=$(this).closest('.form_ul').find('.blank_entry').clone().css('display','block').removeClass('blank_entry');
			$(this).closest('.form_ul').find('.blank_entry').before(cloned_item);
			cloned_item.find('.start_date input,.end_date input').each(function(){
				$(this).attr('id',$(this).attr('id')+'-'+rand_id).removeClass('hasDatepicker').datetimepicker();
			});
			cloned_item.find('.title').text($(this).parent().find('option:selected').text());
			resort_queue();
			cloned_item.find('.sorter input').val($(this).parent().find('option:selected').val());
		})
	});
})
function resort_queue()
{
	$('.queue_manager .form_ul').each(function(){
		$(this).find('li dt:visible').each(function(key){
			$(this).text(key+1);
		})
	})
}


var widget_base='/blocks/core/parts/singlefile/html/';
$(function(){
	$('input.singlefile_upload_core_part').live('change',function(){
		if (!$(this).data('has_file')) {
			var form_to_submit=$(this).closest('form');
			//$(this).data('has_file',true);
			var file_to_submit=$(this);
			form_to_submit.ajaxSubmit({
				iframe:true,
				dataType: 'json',
				url:"/widgets/create/slug/parts-singlefile/widget_action/uploadSingleFile/json/false",
				data:{file:file_to_submit.attr('id')},
				success: function(data){}
			});

		}		
	});
});
var widget_base='/blocks/sheridan/plant_browser/html/';
$(function(){


	$('.block_plant_browser ul.collapsable li label.parent .cat_checkbox').live('click',function(){
		var checked = $(this).attr('checked');
		if(checked){
			$(this).closest('div').parent().find('ul li .cat_checkbox').attr('checked',true);
			//$(this).closest('div').parent().find('ul li .cat_checkbox').attr('disabled',true);
		}else{
			$(this).closest('div').parent().find('ul li .cat_checkbox').attr('checked',false);
			//$(this).closest('div').parent().find('ul li .cat_checkbox').attr('disabled',false);
		}
	});


	function checkHash(){
		var hash = window.location.hash.toString();
		
		if(hash.length > 0){
			hash = hash.substr(1,hash.length);
			hash = hash.split(";");
			return hash;
		}
		return false;
	}

	function disableAll(){
		$('.block_plant_browser ul.collapsable li .plant_checkbox').each(function(i){

			$(this).attr('disabled',true);
		});
		$('.block_plant_browser ul.collapsable li .usage_checkbox').each(function(i){

			$(this).attr('disabled',true);
		});
	}

	$('.block_plant_browser ul.collapsable li .cat_checkbox').live('click',function(){
		var property_ids = [];

		$('.block_plant_browser ul.collapsable li .cat_checkbox:checked').each(function(i){
			
			property_ids.push($(this).val());
		});
		disableAll();
		//$('#usage_properties').hide();
		//$('#plant_properties').hide();
		$('#plant_properties').closest('td').css('background',"url('/public/images/loading_transparent.gif') no-repeat top right");
		findPlantsUsages();
		/*$.post('/widgets/create/slug/plant_browser/',{property_ids:property_ids,type:'plant_properties'},function(data){
			$('#plant_properties').closest('td').css('background',"none");
			if($.trim(data) == '0'){
				$('#plant_properties').html('');
				$('#usage_properties').html('');
			}else{
			
			$('#plant_properties').html(data).show();
			$('#plant_properties').find('ul.collapsable li ul').toggle();
			}
		});

		//$('#usage_properties').hide();
		$('#usage_properties').closest('td').css('background',"url('/public/images/loading_transparent.gif') no-repeat top right");
		$.post('/widgets/create/slug/plant_browser/',{property_ids:property_ids,type:'usage_properties'},function(data){
			$('#usage_properties').closest('td').css('background',"none");
			if($.trim(data) == '0'){
				$('#usage_properties').html('');
			}else{

			$('#usage_properties').html(data).show();
			$('#usage_properties').find('ul.collapsable li ul').toggle();
			}

		});*/

	});

	/*load usage properties after click*/
	function findPlantsUsages(){
		var property_ids = [];

		var hash = checkHash();
		if(hash){
			property_ids = property_ids.concat(hash);
			window.location.hash='';
			//alert('got here');
		}
		$('.block_plant_browser ul.collapsable li .cat_checkbox:checked').each(function(i){

			property_ids.push($(this).val());
		});
		$('.block_plant_browser ul.collapsable li .plant_checkbox:checked').each(function(i){

			property_ids.push($(this).val());
		});
		$('.block_plant_browser ul.collapsable li .usage_checkbox:checked').each(function(i){

			property_ids.push($(this).val());
		});
		disableAll();
		$('#plant_properties').closest('td').css('background',"url('/public/images/loading_transparent.gif') no-repeat top right");
		$.post('/widgets/create/slug/plant_browser/',{property_ids:property_ids,type:'plant_properties'},function(data){
			$('#plant_properties').closest('td').css('background',"none");
			
			if($.trim(data) == '0'){
				$('#plant_properties').hide().html('');
				$('#usage_properties').hide().html('');
			}else{
				

			}
			$('#plant_properties').html(data.plant_properties).show();
			$('#plant_properties').find('ul.collapsable li ul').toggle();

				
			$('#usage_properties').html(data.usage_properties).show();
			$('#usage_properties').find('ul.collapsable li ul').toggle();
		},'json');
/*
		$('#usage_properties').closest('td').css('background',"url('/public/images/loading_transparent.gif') no-repeat top right");
		$.post('/widgets/create/slug/plant_browser/',{property_ids:property_ids,type:'usage_properties'},function(data){
			$('#usage_properties').closest('td').css('background',"none");


			$('#usage_properties').html(data).show();
			$('#usage_properties').find('ul.collapsable li ul').toggle();


		});*/
	}

	$('.block_plant_browser ul.collapsable li .plant_checkbox,.usage_checkbox').live('click',findPlantsUsages);

	//find checked boxes on form submit and take zem to zee refine search page
	$('.block_plant_browser .submit_btn.steps').click(function(e){
		e.preventDefault();
		var url = location.protocol+"//"+location.host+"/plant_product_refine_search#";

		var segments = '';
		$('.block_plant_browser input[type=checkbox]:checked').each(function(i){
			segments+=$(this).val()+';';
		});
		//segments = segments.toString().substr(0,segments.toString().length-1);
		url = url+segments;
		window.location.href = url;
		return false;
	});

	$('.block_plant_browser form .submit_btn.search').click(function(e){
		e.preventDefault();
		var search = $(this).closest('form').find('input.text').val();
		var url = location.protocol+"//"+location.host+"/plant_product_refine_search#//"+escape(search);
		window.location.href = url;
	});

	/*toggle menu expansion*/
	$('.block_plant_browser ul.collapsable li ul').toggle();
	$('.block_plant_browser li a.collapsable').live('click',function(e){
		e.preventDefault();
		$(this).closest('div').nextAll().toggle();
		var display = $(this).closest('div').nextAll().css('display');

		if(display == 'none'){
			$(this).closest('div').find('img').attr('src','/blocks/sheridan/html/images/plant_product_rightarrow.png');
		}else{
			$(this).closest('div').find('img').attr('src','/blocks/sheridan/html/images/plant_product_downarrow.png');
		}

	});



	$('.block_plant_browser ul.subsubcats').each(function(i){
		$(this).hide();
		//console.log($(this).closest('li').find('a.subsubcollapsable').html());
		$(this).closest('li').find('a.subsubcollapsable').bind('click',function(e){
			e.preventDefault();
			var display = $(this).closest('li.subsubli').find('.subsubcats').css('display');

			if(display == 'none'){
				$(this).find('img').attr('src','/blocks/sheridan/html/images/plant_product_downarrow.png');
				$(this).closest('li').find('ul.subsubcats').show();
			}else{
				$(this).find('img').attr('src','/blocks/sheridan/html/images/plant_product_rightarrow.png');
				$(this).closest('li').find('ul.subsubcats').hide();
			}
		});
	});

	if($('.block_plant_browser').length > 0){
		var hash = checkHash();
		if(hash){
			var chlen = 0;
			var cllen = 1;
			var elemen = '';
			for(x in hash){
				$('.block_plant_browser ul.collapsable li .cat_checkbox').each(function(i){
					elemen = this;
					var val = $(this).val();
					if(val == hash[x]){
						$(this).attr('checked',true);
						//$(this).attr('disabled',true);
						var sub_children = $(this).closest('ul').closest('li').find('a');
						if(sub_children.hasClass('subsubcollapsable')){
							sub_children.closest('ul').show().closest('li').find('div a.collapsable img').attr('src','/blocks/sheridan/html/images/plant_product_downarrow.png');
						}

						$(this).closest('li').closest('ul').show().closest('li').find('a.collapsable,a.subsubcollapsable img').attr('src','/blocks/sheridan/html/images/plant_product_downarrow.png');
						chlen = $(this).closest('li').closest('ul').children().length;
						cllen = $(this).closest('li').closest('ul').find('.cat_checkbox:checked').length;
						if(chlen == cllen){
							$(this).closest('li').closest('ul').siblings('div').find('label.parent .cat_checkbox').attr('checked',true);
						}
					}
				});
			}

			findPlantsUsages();
		}
	}
	if ($('.block_plant_browser').length>0) {
		findPlantsUsages();
	}

});
var widget_base='/blocks/sheridan/plant_database/html/';
$(function(){
	$('.plant_product_database .pagination.last .links a').live('click',function(e){
		window.scrollTo(0,0);
	});

	$('.plant_product_database a.back_btn').live('click',function(e){
		e.preventDefault();
		var hash = window.location.hash;
		window.location.href='/plant_browser'+hash;
	});


	if ($('#plant_search_results').length>0) {
		setInterval(check_plant_hash,100)

		$('#plant_refine_selections li a.collapse').live('click',function(e){
			e.preventDefault();
			$(this).nextAll().toggle();
			var display = $(this).nextAll().css('display');

			if(display == 'none'){
				$(this).find('img').attr('src','/blocks/sheridan/html/images/plant_product_rightarrow.png');
			}else{
				$(this).find('img').attr('src','/blocks/sheridan/html/images/plant_product_downarrow.png');
			}

		});
		$('#plant_selections a,#plant_refine_selections a,#plant_search_results .result .actions a,#plant_search_results .pagination a').live('click',check_plant_hash);//instant refresh
	}
});
function check_plant_hash()
{
	
	if ($('body').data('hash')!=window.location.hash) {
		$('body').data('hash',window.location.hash);
		refresh_plant_list();
		$('body').data('has_content',true);
	}
}

function refresh_plant_list()
{
	var hash_tags=window.location.hash.replace('#','').split('/');
	var content_only=0;
	var search='';

	if (hash_tags.length>2) {
		search=hash_tags[2];
	}
	if (hash_tags.length>1) {
		var current_page=hash_tags[0];
		var items=hash_tags[1];
		content_only=$('body').data('has_content')==true && (items+'.'+search)==$('body').data('last_content')?1:0;
	}else{
		var current_page=0;
		var items=hash_tags[0];
	}
	var selections='';
	if (items) {
		selections=items.split(';');
	}
	var params={selections:selections,page:current_page,content_only:content_only,search:search};
	$('body').data('last_content',items+'.'+search);

	$('.pagination').css('background-image',"url('/public/images/loading_transparent.gif')");
	$.post('/widgets/create/slug/plant_database/',params,function(data){
		$('.pagination').css('background-image',"none");
		
		if (data.selections) {
			$('#plant_selections').html(data.selections);
		}
		if (data.refine) {
			$('#plant_refine_selections').html(data.refine);
			$('#plant_refine_selections li a.collapse').click();
			if ($('#plant_refine_selections').children().children().length==0) {
				$('#plant_refine_selections').prev().hide();
			}else{
				$('#plant_refine_selections').prev().show();
			}

		}
		if (data.search_results) {
			$('#plant_search_results').html(data.search_results);
		}
		if ($('body').data('total_results')!='set' && data.total_results==1) {
			//window.location.href=$('.search_results .result a').attr('href');
		}
		$('body').data('total_results','set');
		$(".tooltip").tooltip();
		activate_dropdown_menu();
	},'json');
}


function activate_dropdown_menu(){
	$('.plant_product_database .search_results .result .actions .action_link .add_whishlist_item').click(function(e){
		e.preventDefault();
		$(this).removeClass('add_whishlist_item');
		$(this).addClass('wishlist_included');
		var plant_name = $(this).closest('.result').find('.description h1 a').text();
		var garden_name = $(this).text();
		var my_wishlist_url = $('.plant_product_database #msg_button .my_wishlist_url').attr('href');
		$('.plant_product_database #popupContact .back_garden').attr('href',my_wishlist_url);
		$('.plant_product_database #popupContact .back_garden').html('Back to My Wishlist');
		$('.plant_product_database #popupContact .plant_name').html(plant_name);
		$('.plant_product_database #popupContact .garden_name').html(garden_name);
		$.get($(this).attr('href'),function(){
			msgshow();
		});
	});

	$('.plant_product_database .search_results .result .actions .action_link .add_garden_plant').click(function(e){
		e.preventDefault();
		$(this).removeClass('add_garden_plant');
		$(this).addClass('included');
		var plant_name = $(this).closest('.result').find('.description h1 a').text();
		var garden_name = $(this).text();
		var garden_id = $(this).attr('garden_id');
		var garden_url = $('.plant_product_database #msg_button .my_garden_url').attr('href');
		var new_garden_url = garden_url + garden_id;
		$('.plant_product_database #popupContact .back_garden').attr('href',new_garden_url);
		$('.plant_product_database #popupContact .back_garden').html('Back to My Garden');
		$('.plant_product_database #popupContact .plant_name').html(plant_name);
		$('.plant_product_database #popupContact .garden_name').html(garden_name);
		$.get($(this).attr('href'),function(){
			msgshow();
		});
	});

	$('.plant_product_database .search_results .result .actions .action_link .included').click(function(e){
		e.preventDefault();
		alert("This plant already exists in this garden");
	});
	$('.plant_product_database .search_results .result .actions .action_link .wishlist_included').click(function(e){
		e.preventDefault();
		alert("This plant already exists in your wishlist");
	});

	$('.plant_product_database .search_results .result .actions .action_link .sf-top').click(function(e){
		e.preventDefault();
	});
}
var widget_base='/blocks/sheridan/slider_box_image_content_link/html/';
$(function(){


   $(".block_slider_box_image_title_link").each(function(){
        var link = $(this).find(".link_small a");
        if(link){
            $(this).bind("click",function(e){
               e.preventDefault();
               e.stopPropagation();
               window.location.href = link.attr("href");
            });
        }
        
        $(this).bind("mouseenter",function(){
            $(this).addClass("boxover");
        });
        $(this).bind("mouseleave",function(){
            $(this).removeClass("boxover");
        });
   });


});
var widget_base='/blocks/sheridan/slider_box_my_account/html/';
$(function(){
	$('.block_slider_box_my_account [name=email]').focus(function(){
		if ($(this).val()=='Email') {
			$(this).val('');
		}
	});
	$('.block_slider_box_my_account .password').focus(function(){
		$(this).replaceWith($('<input type="password" name="password" class="textfield new_password" />'));
		$('.new_password').focus();
	})
});
var widget_base='/blocks/sheridan/slider_box_plant_finder/html/';
$('.block_slider_box_plant_finder .find_it').live('click',function(e){
        e.preventDefault();
        var search = $(this).closest('form').find('input.text').val();
        var url = location.protocol+"//"+location.host+"/plant_product_refine_search#//"+escape(search);
        window.location = url;
});

$('.block_slider_box_plant_finder .browse_all').live('click',function(e){
        e.preventDefault();
        var search = $(this).closest('form').find('input.text').val();
        var url = location.protocol+"//"+location.host+"/plant_browser";
        window.location = url;
});
var widget_base='/blocks/sheridan/store_features/html/';
$(document).ready(function(){
    $(".block_store_features").each(function(){
		$(".tooltip").tooltip();
	}); 
});

var widget_base='/blocks/sheridan/tooltip/html/';
$(document).ready(function(){
    $(".block_tooltip").each(function(){
		$(".tooltip").tooltip();
	});
});

var widget_base='/blocks/sheridan/unit_conversion_tool/html/';
/* 
 *Unit Conversion Tools
 */
$(function(){

    var measurement = new Array("Centimeter", "Feet", "Inch", "Meter");
    var Temperature = new Array("Celcius", "Fahrenheit");

    $(".block_unit_conversion_tool").each(function(){

        var swap_btn = $(this).find("a.swap");
        //var convert_btn = $(this).find("a.convert");
        var from_qty = $(this).find("input.from_qty");
        var to_qty = $(this).find("input.to_qty");
        var unit_select = $(this).find("select.unit_select");
        var convert_from = $(this).find("select.convert_from");
        var convert_to = $(this).find("select.convert_to");
        var from_qty_value = Number(from_qty.val());
        var to_qty_value = Number(to_qty.val());

        unit_select.bind("change", function(){

            var unit_select_value = $(this).val();
            if(unit_select_value == "Measurement"){
                fillUnitSelect(convert_from, measurement);
                fillUnitSelect(convert_to, measurement);
            }else if(unit_select_value == "Temperature"){
                fillUnitSelect(convert_from, Temperature);
                fillUnitSelect(convert_to, Temperature);
            }else{
                fillUnitSelect(convert_from, "");
                fillUnitSelect(convert_to, "");
            }
            from_qty.val("");
            to_qty.val(0);

        });
        
        convert_from.bind("change", function(){
            from_qty.val("");
            to_qty.val(0);
        });

        convert_to.bind("change", function(){
            from_qty.val("");
            to_qty.val(0);
        });
        
        from_qty.bind("keyup",function(){
           from_qty_value = Number(from_qty.val());
           if(from_qty_value > 0){
                to_qty.val(unitConvert(from_qty_value, convert_from.val(), convert_to.val()));
           }
        });
        swap_btn.bind("click", function(e){
            e.preventDefault();
            var from = convert_from.val();
            var to = convert_to.val();
            convert_to.val(from);
            convert_from.val(to);

            from_qty_value = Number(from_qty.val());
            to_qty_value = Number(to_qty.val());

            from_qty.val(to_qty_value);
            to_qty.val(from_qty_value);

            from_qty.focus();
        });
/*
        convert_btn.bind("click", function(e){
           e.preventDefault();
           from_qty_value = Number(from_qty.val());
           if(from_qty_value > 0){
                to_qty.val(unitConvert(from_qty_value, convert_from.val(), convert_to.val()));
           }
        });
*/
    });
});

function fillUnitSelect(elm, arr){
    elm.find("option").remove();
    for(var i=0; i<arr.length; i++){
        elm.append($("<option></option>").attr("value", arr[i]).text(arr[i]));
    }
}

function unitConvert(qty, from, to){    
    var rs = 0;
    switch(from){
        case "Centimeter":
            switch(to){
                case "Centimeter":
                    rs = 1;
                    break;
                case "Feet":
                    rs = 0.033;
                    break;
                case "Inch":
                    rs = 0.396
                    break;
                case "Meter":
                    rs = 0.01;
                    break;
            }
            return Number(rs * qty).toFixed(2);
            break;
        case "Feet":
            switch(to){
                case "Centimeter":
                    rs = 30.48;
                    break;
                case "Feet":
                    rs = 1;
                    break;
                case "Inch":
                    rs = 12;
                    break;
                case "Meter":
                    rs = 0.3048;
                    break;
            }
            return Number(rs * qty).toFixed(2);
            break;
        case "Inch":
            switch(to){
                case "Centimeter":
                    rs = 2.54;
                    break;
                case "Feet":
                    rs = 0.083;
                    break;
                case "Inch":
                    rs = 1;
                    break;
                case "Meter":
                    rs = 0.0254;
                    break;
            }
            return Number(rs * qty).toFixed(2);
            break;
        case "Meter":
            switch(to){
                case "Centimeter":
                    rs = 100;
                    break;
                case "Feet":
                    rs = 3.281;
                    break;
                case "Inch":
                    rs = 39.37;
                    break;
                case "Meter":
                    rs = 1;
                    break;
            }
            return Number(rs * qty).toFixed(2);
            break;
        case "Celcius":
            switch(to){
                case "Fahrenheit":
                    rs = (qty * 1.8) + 32;
                    break;
            }
            return Number(rs).toFixed(0);
            break;
        case "Fahrenheit":
            switch(to){
                case "Celcius":
                    rs = (qty - 32) * 5/9;
                    
                    break;
            }
            return Number(rs).toFixed(0);
            break;
    }

    
}




