(function($){
	$(function(){
		var overlay;
		var optionsCont
		var phase = 1;

		function getData(callback){
			var info = [];
			if(phase == 1){
				var info = ['../6-steps_XMLFiles/MoneySenseMainGoals.xml', 'maingoal', 'MainGoalId', 'maingoalstext'];
			}
			else{
				if(phase == 2){
					var info = ['../6-steps/Ajax_GetSubGoals.aspx', 'goals', 'type', 'goalstext'];
				}
			}
			var preventCache = {}; 
			preventCache[new Date().getTime()] = '';
			$.get(info[0], preventCache, function(res){
				var arr = [];
				var goals = res.getElementsByTagName(info[1]);
				for(var i = 1; i <= goals.length; i++){
					for (var j = 0; j < goals.length; j++) {
						if(goals[j].getAttribute(info[2]) == i){
							arr.push(goals[j].getElementsByTagName(info[3 ])[0].firstChild.data);
						}
					}
				}
				callback(arr);
			}, 'xml')
		}		
		
		function populate(callback){
			optionsCont.empty();
			getData(function(data){
				for(var i = 0; i < data.length; i++){
					var d = $('<div class="sOOption goToStage'+(i+1)+'"><span>'+data[i]+'</span></div>');
					optionsCont.append(d);
					callback.call(d, i);
				}
			});	
		}
		
		$('.overlay00').portalLink('ajaxportal', './6steps_overlay2.html', function(){
			overlay = this;
			optionsCont = overlay.find('.sOOptions');
			this.bind('overlay.onclose', function(){ 
				//$.cookie('SELECTEDMAINGOALID', '', {path: '/'});
				//$.cookie('SELECTEDSUBGOALID', '', {path: '/'});
				phase = 1;
			})
			populate(function(i){
				var callback = arguments.callee;
				var img = new Image();
				img.src = '../Images/six_steps_overlay/option_hover.png';
				var timer;
				var block = false;
				this.hover(function(){
					var obj = this;
					var timer = setTimeout(function(){
						overlay.find('div.sOOption').removeClass('hover');
						$(obj).addClass('hover');
					}, 50)
				},function(){
					clearTimeout(timer);
					$(this).removeClass('hover');
				}).click(function(){
					if(block){
						return false;
					}
					if(phase == 1){
						var val = i+1
						var cookieName = 'SELECTEDMAINGOALID';
						$.cookie(cookieName, val, {path: '/'});
						var wrapper = overlay.find('#sOPhases');
						//wrapper.css('height', wrapper.height()+'px')
						overlay.find('.sOPhase').fadeOut(function(){
							phase = 2;
							overlay.find('.sOPaginator').html('<a href="#" class="sOBack" title="back"><< back</a> 1 <img alt="" src="../Images/six_steps_overlay/pipe.gif" height="20" width="1" /> <span class="sOCurrent">2</span>');
							overlay.find('.sOBack').click(function(){
								overlay.find('.sOPhase').fadeOut(function(){
									$.cookie('SELECTEDMAINGOALID', '0', {path: '/'});
									//$.cookie('SELECTEDSUBGOALID', '100', {path: '/'});
									phase = 1;
									overlay.find('.sOPaginator').html('<span class="sOCurrent">1</span> <img height="20" width="1" src="../Images/six_steps_overlay/pipe.gif" alt=""/> 2');
									populate(callback);
									overlay.find('.sOTitle h2 img')
									.attr('src', '../Images/six_steps_overlay/step1title.gif')
									.attr('alt', '');
									$(this).fadeIn(function(){
										//wrapper.css('height', '');
									});							
								});
								return false;
							});
							populate(callback);
							overlay.find('.sOTitle h2 img')
							.attr('src', '../Images/six_steps_overlay/step2title.gif')
							.attr('alt', '');
							$(this).fadeIn(function(){
								//wrapper.css('height', '');
							});
						});
					}
					else{
						if(phase == 2){ 
							var val = i;
							var cookieName = 'SELECTEDSUBGOALID';
							$.cookie(cookieName, val, {path: '/'});
							window.location = './plan-your-goal-chosen.aspx';
							
						}
					}
					//block = true;
				});
			});
			
			overlay.find('.sOComeBackLater').add('.overlayClose00 a').click(function(){
				if(phase == 1){
					$.cookie('SELECTEDMAINGOALID', '0', {path: '/'});
				}
				else{
					if (phase == 2) {
						$.cookie('SELECTEDSUBGOALID', '100', {path: '/'});
					};
				};
				window.location = './plan-your-goal.aspx';
				return false;
			});
			
			overlay.find('.sONotRelevant a').click(function(){
				var wrapper = overlay.find('.stepsHolder01');
				//wrapper.css('height', wrapper.height()+'px')
				overlay.find('.sOFoot').fadeOut();
				overlay.find('.sOPhase').fadeOut(function(){
					optionsCont.empty();
					phase = 1;
					var sOPhase = $(this);
					sOPhase.load('./6steps_overlay_form.html', function(){
						sOPhase.find('#sOSubmit').click(function(){
							if (overlay.find('#sOwhatBrings').val() != '' && overlay.find('#sOwhatGoal').val() != '') {
								$.cookie('SELECTEDMAINGOALID', '0', {
									path: '/'
								});
								$.get('./Ajax_AddSuggestion.aspx', {whatBrings: overlay.find('#sOwhatBrings').val(), yourGoal: overlay.find('#sOwhatGoal').val()}, function(){
									sOPhase.fadeOut(function(){
										sOPhase.load('./6steps_overlay_thankyou.html', function(){
											$('#soBack').click(function(){
												$.cookie('SELECTEDMAINGOALID', '0', {
													path: '/'
												});
												window.location = './plan-your-goal-chosen.aspx';
											})
											sOPhase.fadeIn();
										})
									})
								});
							}
							else{
								if (overlay.find('#sOwhatBrings').val() == ''){
									overlay.find('.errorMessage').eq(0).html('Please enter a value for what brings you here')
								}
								else{
									overlay.find('.errorMessage').eq(0).empty();
								}
								if (overlay.find('#sOwhatGoal').val() == ''){
									overlay.find('.errorMessage').eq(1).html('Please enter a value for your goal')
								}
								else{
									overlay.find('.errorMessage').eq(1).empty();
								}
							}
							return false;
						})					
						sOPhase.find('.sOSkip').click(function(){
							$.cookie('SELECTEDMAINGOALID', '0', {path: '/'});
							window.location = './plan-your-goal-chosen.aspx';
							return false;
						})
						sOPhase.fadeIn();
					});
				})
				return false;
			})
		});
	});
})(jQuery);

