var engine_live_ass_id = 601126;
var engine_staging_ass_id = 86370;
var engine_ass_id;
var engine_url = "http://raap.realage.com/data/json?callback=?";
var engine_child_id = readCookie("raap_child_id");
if (window.location.href.indexOf("www.realage.com")>=0) { 
	engine_url = "http://raap.realage.com/data/json?callback=?";
	engine_ass_id = engine_live_ass_id;
} else { 
	engine_url = "http://stageraap.realage.com/data/json?callback=?";
	engine_ass_id = engine_staging_ass_id;
} 
var engine_paramJSON;
//For IE 7 Compat
if (typeof JSON == 'undefined') {
  engine_paramJSON = Stringify({ "child_id" : engine_child_id, "assessment_id" : engine_ass_id});
} else {
  engine_paramJSON = JSON.stringify({ "child_id" : engine_child_id, "assessment_id" : engine_ass_id});
}
var engine_data = { "method": "getRecommendations", "params": engine_paramJSON};
var loc = "";
var ele = "";
function Stringify(jsonData) {
  var strJsonData = '{';
  var itemCount = 0;
  for (var item in jsonData) {
    if (itemCount > 0) { strJsonData += ', '; }
    strJsonData += '"' + item + '":"' + jsonData[item] + '"';
    itemCount++;
  }
  strJsonData += '}';
  return strJsonData;
}

var personalArticles;
var personalOffers;
var personalNewsletters;
var personalAssessments;
var personalActionPlans;
var personalTips;
var personalBlogs;
var personalRecipes;
var personalHomepageCarousel;


var raRightRail = {
	toutArray : [],
	toutSet : rr_tout_set,
	toutSelectedSet : null,
	add : function(name){
		raRightRail.toutArray.push(name);
	},
	render : function(){
		var processResult = "";
		for (var i in raRightRail.toutArray){
			if (raRightRail.toutArray.hasOwnProperty(i)){
				processResult = this.processName(raRightRail.toutArray[i]);
				if (processResult.length > 0) {	$("[rrtout='"+raRightRail.toutArray[i]+"']").html(processResult); }
			}
		}
	},
	processName : function(name){
		var mystring = "";
		switch(name){
			case "personalized articles":
				return personalArticles;
			case "personalized offers":
				return personalOffers;
			case "personalized assessments":
				return personalAssessments;
			case "personalized action plans":
				return personalActionPlans;
			case "personalized tips":
				return personalTips;
			case "personalized blogs":
				return personalBlogs;
			case "personalized recipes":
				return personalRecipes;
			case "blog":
			case "blog (auto)":
				var tempBlogitem = raRightRail.toutSet.ra_default.blog;
				mystring = "<ul>";
				for (var ja in tempBlogitem){
					if (tempBlogitem.hasOwnProperty(ja)) {
						mystring += "<li><a href=\""+tempBlogitem[ja].url+"\">"+tempBlogitem[ja].title+"</a></li>";
					}
				}
				mystring += "</ul>";
				return mystring;
			case "most recent":
				mystring = "<ul>";
				for (var jb in this.toutSelectedSet.mr){
					if (this.toutSelectedSet.mr.hasOwnProperty(jb)) {
						mystring += "<li><a href=\""+this.toutSelectedSet.mr[jb].url+"\">"+this.toutSelectedSet.mr[jb].title+"</a></li>";
					}
				}
				mystring += "</ul>";
				return mystring;
			case "most popular":
				// there is also most popular tip, but there is 
				// nothing to determine how to detect between the two
				mystring = "<ul>";
				for (var jc in this.toutSelectedSet.mpa){
					if (this.toutSelectedSet.mpa.hasOwnProperty(jc)) {
						mystring += "<li><a href=\""+this.toutSelectedSet.mpa[jc].url+"\">"+this.toutSelectedSet.mpa[jc].title+"</a></li>";
					}
				}
				mystring += "</ul>";
				return mystring;
			case "realage recommends":
				alert("[TBA] RealAge Recommends feature based on user data!");
				return null;
			case "video":
			case "video (auto)":
				var vidScripts,
					vidToutData,
					vidToutLayout;
				
				vidScripts = [
					"http://admin.brightcove.com/js/BrightcoveExperiences.js",
					"http://admin.brightcove.com/js/APIModules_all.js"
				];
				
				function insertScript(scriptName) {
					var script = document.createElement("script");
					script.src = scriptName;
					document.getElementsByTagName('head')[0].appendChild(script);
				}
				
				for (var i = 0; i < vidScripts.length; i++) {
					insertScript(vidScripts[i]);
				}
				
				$.ajax({
					type: "GET",
					async: false,
					url: "http://api.brightcove.com/services/library?token=bjkrAJ08KJ3BUsaX_rx_J6tabLuy0NxF7umrKvBAbnI.&command=find_all_videos&sort_by=PUBLISH_DATE&page_size=1",
					dataType: "jsonp",
					success: function(data) {
						vidToutData = data.items[0];
						console.log(vidToutData);
						vidToutLayout = "<div class='rr_tout'><div class='tout_img'><a href='/videos/#v" +
										vidToutData.id +
										"'><img src=" +
										vidToutData.thumbnailURL +
										" /></a></div>" +
										"<h4><a href='/videos/#v" +
										vidToutData.id +
										"'>" + 
										vidToutData.name +
										"</a></h4><div class='vidtout_dek'>" +
										vidToutData.shortDescription + 
										"</div><div class='vidtout_btn'><a href='/videos/' class='ra_mediumbutton'>Watch More Videos</a></div></div>";
						$("[rrtout='video']").html(vidToutLayout);
					}
				});
				return null;
			default:
				return null;
		}
	},
	getTouts : function(name,top){
		if (this.toutSet[name]){
			this.suffix = name;
//			alert("toutSet found for section ["+this.suffix+"]");
		} else if (this.toutSet[top]){
			this.suffix = top;
//			alert("toutSet found for TOP SECTION ["+this.suffix+"]");
		} else {
			this.suffix = "ra_default";
//			alert("toutSet not found, using default");
		}
		this.toutSelectedSet = this.toutSet[this.suffix];
		var processResult = "";
		for (var i in raRightRail.toutArray){
			if (raRightRail.toutArray.hasOwnProperty(i)){
				processResult = this.processName(raRightRail.toutArray[i]);
				if (processResult) { $("[rrtout='"+raRightRail.toutArray[i]+"']").html(processResult); }
			}
		}
/*
		for (var i in raRightRail.toutArray){
			if(raRightRail.toutArray.hasOwnProperty(i)){
				$("[rrtout='"+raRightRail.toutArray[i]+"']").html(this.processName(raRightRail.toutArray[i]));
			}
		}
*/
	}
};
function personalize(next_function) {
	if (typeof(engine_child_id) != 'undefined') {
		if (engine_child_id) {
			if (Modernizr.localstorage) {
				personalArticles = localStorage.getItem("personalArticles");
				personalOffers = localStorage.getItem("personalOffers");
				personalNewsletters = localStorage.getItem("personalNewsletters");
				personalAssessments = localStorage.getItem("personalAssessments");
				personalActionPlans = localStorage.getItem("personalActionPlans");
				personalTips = localStorage.getItem("personalTips");
				personalBlogs = localStorage.getItem("personalBlogs");
				personalRecipes = localStorage.getItem("personalRecipes");
				personalHomepageCarousel = localStorage.getItem("personalHomepageCarousel");
			}
			if (!personalHomepageCarousel) {
				//Get JSON Feed
				$.getJSON(engine_url, engine_data, function(j) {
					string_variable = j;
					$.each(string_variable.result, function(i) {
						if (string_variable.result[i].list_items) {
							content = '<ul>';
							for (k=0; (k<string_variable.result[i].list_items.length && k<10); k++) {
								content += '<li>' + string_variable.result[i].list_items[k] + "</li>";
							}
							content += '</ul>';
						}
						eval(string_variable.result[i].header_text + " = content");
						if (Modernizr.localStorage) {
							eval("localstorage.setItem('" + string_variable.result[i].header_text + "',content)");
						}
					});
					if (next_function) { eval(next_function); }
				}); // end of .getJSON
			} else {
				if (next_function) { eval(next_function); }			
			}
		} else {
			if (next_function) { eval(next_function); }
		}
	} else {
		if (next_function) { eval(next_function); }
	}
}

