/**
 * daapi widget: User * 
 * Surface persona for fitnessmagazine.com * * 	
 * @author Wade 
 * 
 **/

	function RenderUserWidget(User, element){
		var container = $(element);
		
		var PersonaPathWuser = "http://" + mdp.basepath + "/" + mdp.communityPath + "/persona.jsp?&plckUserId=" + User.UserKey.Key + "&userId=" + User.UserKey.Key;
		var fitnessPlanPath = "http://" + mdp.basepath + "/app/ycdi/members/profile.jsp";
		
		var BlogPathAppend = "&plckPersonaPage=PersonaBlog";
		var MsgPathAppend = "&plckPersonaPage=PersonaMessages";
		var LogoutPath = "http://" + mdp.basepath + "/common/profile/member/logout.jsp?successPage="  + encodeURIComponent(document.location.href);
		var LoginPath = "http://" + mdp.basepath + "/common/profile/login1.jsp?regSource=" + mdp.regSource;
		var RegPath = "http://" + mdp.basepath + "/common/profile/regStep1.jsp?regSource=" + mdp.regSource;
		
		var surfaceGreeting = "Welcome!"
		var AnonymousUserName = "Guest"
		
		if(User.DisplayName.length >= 15){
			var widgetDisplayName = User.DisplayName.substr(0,12) + '...';					
		}else{
			var widgetDisplayName = User.DisplayName;
		}
		
		var userWrapper = new Element('div',{'id':'userWidget'});
		var userAvatarWrapper = new Element('div',{'id':'userAvatar'});

		if (User.UserKey.Key != 'anonymous') {
			/* Regestered User */
			new Element('div',{'id':'userDisplayName'}).setHTML(surfaceGreeting+ ' <a href="' + PersonaPathWuser + '">' + widgetDisplayName + '</a>').injectInside(userWrapper);			
			new Element('div',{'id':'userAvatar'}).setHTML('<a href="' + PersonaPathWuser + '"><img height="60px" src="' + User.AvatarPhotoUrl + '" title="' + User.DisplayName + '"></a>').injectInside(userWrapper);
			
			new Element('div',{'id':'userBlog'}).setHTML('<a href="' + fitnessPlanPath + '">' + "My Fitness Plan" + '</a> | ' + '<a href="' + PersonaPathWuser + BlogPathAppend + '">' + "My Blog" + '</a>').injectInside(userWrapper);						
			new Element('div',{'id':'userLog'}).setHTML(User.NumberOfMessages + ' ' + '<a href="' + PersonaPathWuser + MsgPathAppend + '">' + ((User.NumberOfMessages = 1) ? ' Messages' : ' Message') + '</a>'+ ' | ' + '<a href="' + LogoutPath + '">' + "Log Out" + '</a>').injectInside(userWrapper);			
		}
		else {
			/* Anon */
			new Element('div',{'id':'userDisplayName'}).setHTML(surfaceGreeting+ ' <a href="javascript:return=false;">' + AnonymousUserName + '</a>').injectInside(userWrapper);
			new Element('div',{'id':'userAvatar'}).setHTML('<img height="60px" src="' + User.AvatarPhotoUrl + '" title="' + User.DisplayName + '">').injectInside(userWrapper);
			new Element('div',{'id':'userLog'}).setHTML('<a href="'+ LoginPath + '">Log In</a> | <a href="'+ RegPath + '">Register</a>').injectInside(userWrapper);
		}
				
		userWrapper.injectInside(container);
		container.style.display = "block";
	}



		mdp.subdomain = '';
		mdp.regSource = 7635;
		mdp.communityPath = 'dgroups';

		window.addEvent('domready', function(){
			/* Surface Persona */
			if((typeof(daapi) == 'function')&& $('SurfacePersona')){
				var personaRendered= $('userWidget');
				if(!personaRendered){ /* Already Rendered? */
					mdp.daapi = new daapi(mdp.subdomain, mdp.regSource, mdp.communityPath, mdp.domain,{
                        requests:[
                            {object:new UserKey(),
                                handler:function(){
                                    RenderUserWidget(mdp.pluck.User,$('SurfacePersona'));
                                }
                            }
                         ]
					}).request();
				}
			}
	});