

jQuery(function($) {


	google.load("feeds", "1",{"callback" : initializeBR});
	//initializeBR();

			/**
			 * printf() for Javascript
			 */
			function sprintf() {
                if( sprintf.arguments.length < 2 ) {
                    return;
                }
                var data = sprintf.arguments[ 0 ];
                for( var k=1; k<sprintf.arguments.length; ++k ) {
                    switch( typeof( sprintf.arguments[ k ] ) ){
                        case 'string':
                            data = data.replace( /%s/, sprintf.arguments[ k ] );
                            break;
                        case 'number':
                            data = data.replace( /%d/, sprintf.arguments[ k ] );
                            break;
                        case 'boolean':
                            data = data.replace( /%b/, sprintf.arguments[ k ] ? 'true' : 'false' );
                            break;
                            default:
                           /// function | object | undefined
                        break;
                    }
                }
                return(data);
            }
            if( !String.sprintf ) {
            	String.sprintf = sprintf;
            }


            /**
             * generate text showing the age of the bookmark's latest post
             */
            function getAge(days, hours){
                if (days > 1) {
                    return String.sprintf("%d days ago", days);
                } else if (days==1){
                	return "yesterday ";
                } else if (days< 1 && hours > 1) {
                	return String.sprintf("%d hrs ago", hours);
                } else if (days< 1 && hours == 1) {
                	return "in the last hour";
                } else if (days < 1 && hours < 1) {
                	return "just recently";
                }
            }
            /* add age and other info to bookmark*/
            function addAge(feed, bookmark, anchor, divID, previewtoggle, last_posttitle){
                var $li =$(bookmark),
                 $a =$(anchor),
                 $toggle =$(previewtoggle),
                 $title =$(last_posttitle),
                 now = (new Date()).getTime(),
                 then = (new Date()).getTime(),
                 ageInDays,
                 ageInHours,
                 randomAge,
                 ageMsg=[],
                 $snippet,
                 entry, author="";
                entry = feed.entries[0]
                /*,entry1= feed.entries[1] */;
                try {
                    then = new Date(entry.publishedDate).getTime();
                } catch (dateException) {
                    // do noting
                }
                                if(!(entry.author===null || entry.author == "")){
                    author = entry.author;
                } else {
                    if(!(feed.author===null || feed.author == "")){
                    	author = feed.author;
                    }
                }
                
                ageInDays =  Math.floor((now-then)/(1000*60*60*24)),
                ageInHours = Math.floor((now-then)%(1000*60*60*24)/3600000);

                try {
                    $entryTitle =$("<p></p>").html(entry.title);
                    $a.attr({title: $entryTitle.html()});
                } catch (titleException) {
                    $a.attr({title: ""});
                }
				if (!isNaN(then)){
					// insert age into list-item to allow sorting by age of post
                    $li.attr({age:then});
				} else {
		            /* add "very old" age to bookmarks with no feed-url */
					randomAge = Math.floor(Math.random()*1000001);
					$li.attr({age:randomAge});
				}

                                if (!(isNaN(ageInDays) || isNaN(ageInHours))){
                    ageMsg.push(getAge(ageInDays, ageInHours));
                                        if (author!= "" ) {
	                    ageMsg.push(" by ");
	                    ageMsg.push(author);
                    }
                                        $toggle.html(ageMsg.join('')).attr({feedurl:feed.link});
                }
                                			$title.html(entry.title);
			$title.attr( {
				href  : entry.link,
				title : $("<p></p>").html(entry.contentSnippet).html(),
				rel   : "external",
				rev   : "bookmark"
			});

			/*$title.parent().append($("<a></a>").attr({
					href : entry1.link,
					title: $("<p></p>").html(entry1.contentSnippet).html(),
					rel   : "external",
					rev   : "bookmark"
			}).html(entry1.title));*/
                                return;
            }
            /* add "very old" age to bookmarks with no feed-url */
            function addZeroAge(zeroAgeBookmark){
                var $zali =$(zeroAgeBookmark),
                randomAge = Math.floor(Math.random()*1000001);
                if ($zali !== null ) {
                    $zali.attr({age:randomAge});
                }
                return;
            }

            /* add jQuery-oberserver to enable mouse-clicks*/
            function addFeedControl(preview, feed, name){
                    var feedControl = new google.feeds.FeedControl();
                    feedControl.addFeed(feed, name);
                    feedControl.draw($(preview).get(0));
            }

			/*
			 *
			 */
            function feedreading_limit_display(){         				$.each($("#feedreading_blogroll_4 > li"), function(i4, $element4){
            				if(i4 > 4){
                				$($element4).css("display","none");
            				}
        				});
      				        }
            /*
             * Sort the blogroll with tsort()
             */
            function feedreading_automatic_sort() { 			var $allCompleted ,
			            				$hasCompleteAge4=true, isComplete4=false
          				;
					$.each($("#feedreading_blogroll_4>li"), function(idx4, $elem4) {
						var $age4 = $($elem4).attr("age");
						if ($age4 === null || $age4 == "" || isNaN($age4)) {
							$hasCompleteAge4 = false;
						}
					});


					if ($hasCompleteAge4 && !isComplete4) {
						$("#feedreading_blogroll_4>li").tsort({order:"desc",attr:"age"});
						isComplete4=true;
					}
          								$allCompleted =
									            				$hasCompleteAge4          				;				
				if ($allCompleted){
				clearInterval(myInterval);
								feedreading_limit_display();
								}
				            }

            /*
             * add observer to blogroll()
             */
	function feedreading_category_observer() {
	    		$("#widget_feedreading_blogroll, .widget_feedreading_blogroll").bind("change click keypress", function(event){
			var $eventTarget =$(event.target);
			if ($eventTarget.is('abbr')){
				$eventTarget.parent().parent().children(".preview_wrap").toggle("slow");

			}
			if ($eventTarget.is('small')){
				$eventTarget.parent().parent().parent().children(".preview_wrap").toggle("slow");

			}
		});
			}
			
      function initializeBR() { 						google.feeds.lookupFeed("http://www.classichousewife.com", function() {
							var url101= this.url, feed101 = new google.feeds.Feed(this.url);
                            feed101.load(function(result_101){
                                if (!result_101.error) {
                                addAge(result_101.feed, "#feedreading_bookmark_101", "#feedreading_anchor_101", "#feedreading_info_101", "#feedreading_previewtoggle_101", "#frbl_last_posttitle_101");
                                addFeedControl("#feedreading_preview_101", url101, "Classic Housewife");
						                  			} else {
                      			addZeroAge("#feedreading_bookmark_101");
                  			}
                                });

						});

                                          						google.feeds.lookupFeed("http://cultivatinghome.blogspot.com/", function() {
							var url31= this.url, feed31 = new google.feeds.Feed(this.url);
                            feed31.load(function(result_31){
                                if (!result_31.error) {
                                addAge(result_31.feed, "#feedreading_bookmark_31", "#feedreading_anchor_31", "#feedreading_info_31", "#feedreading_previewtoggle_31", "#frbl_last_posttitle_31");
                                addFeedControl("#feedreading_preview_31", url31, "Cultivating Home");
						                  			} else {
                      			addZeroAge("#feedreading_bookmark_31");
                  			}
                                });

						});

                                          						google.feeds.lookupFeed("http://eyesofwonder.typepad.com/", function() {
							var url32= this.url, feed32 = new google.feeds.Feed(this.url);
                            feed32.load(function(result_32){
                                if (!result_32.error) {
                                addAge(result_32.feed, "#feedreading_bookmark_32", "#feedreading_anchor_32", "#feedreading_info_32", "#feedreading_previewtoggle_32", "#frbl_last_posttitle_32");
                                addFeedControl("#feedreading_preview_32", url32, "Eyes of Wonder");
						                  			} else {
                      			addZeroAge("#feedreading_bookmark_32");
                  			}
                                });

						});

                                          						google.feeds.lookupFeed("http://bethany.preciousinfants.com/", function() {
							var url33= this.url, feed33 = new google.feeds.Feed(this.url);
                            feed33.load(function(result_33){
                                if (!result_33.error) {
                                addAge(result_33.feed, "#feedreading_bookmark_33", "#feedreading_anchor_33", "#feedreading_info_33", "#feedreading_previewtoggle_33", "#frbl_last_posttitle_33");
                                addFeedControl("#feedreading_preview_33", url33, "Happy To Be Called Mommy");
						                  			} else {
                      			addZeroAge("#feedreading_bookmark_33");
                  			}
                                });

						});

                                          						google.feeds.lookupFeed("http://home-school.contentquake.com/", function() {
							var url61= this.url, feed61 = new google.feeds.Feed(this.url);
                            feed61.load(function(result_61){
                                if (!result_61.error) {
                                addAge(result_61.feed, "#feedreading_bookmark_61", "#feedreading_anchor_61", "#feedreading_info_61", "#feedreading_previewtoggle_61", "#frbl_last_posttitle_61");
                                addFeedControl("#feedreading_preview_61", url61, "Homeschool Dad @ HS Central");
						                  			} else {
                      			addZeroAge("#feedreading_bookmark_61");
                  			}
                                });

						});

                                          						google.feeds.lookupFeed("http://www.Homeschool-diva.com", function() {
							var url63= this.url, feed63 = new google.feeds.Feed(this.url);
                            feed63.load(function(result_63){
                                if (!result_63.error) {
                                addAge(result_63.feed, "#feedreading_bookmark_63", "#feedreading_anchor_63", "#feedreading_info_63", "#feedreading_previewtoggle_63", "#frbl_last_posttitle_63");
                                addFeedControl("#feedreading_preview_63", url63, "Homeschool Diva");
						                  			} else {
                      			addZeroAge("#feedreading_bookmark_63");
                  			}
                                });

						});

                                          						google.feeds.lookupFeed("http://sbees.blogspot.com/", function() {
							var url102= this.url, feed102 = new google.feeds.Feed(this.url);
                            feed102.load(function(result_102){
                                if (!result_102.error) {
                                addAge(result_102.feed, "#feedreading_bookmark_102", "#feedreading_anchor_102", "#feedreading_info_102", "#feedreading_previewtoggle_102", "#frbl_last_posttitle_102");
                                addFeedControl("#feedreading_preview_102", url102, "Sprittibee");
						                  			} else {
                      			addZeroAge("#feedreading_bookmark_102");
                  			}
                                });

						});

                                          
																												feedreading_limit_display();
								feedreading_category_observer();
                }

});
            
                    