dojo.declare("LBase",null,{user:window.loggedUser?loggedUser:{displayName:"timeline",person:{id:-1},pref:{help:-1},topic:{contributor:false}},GLOBAL:{CONTROLS:{}},constructor:function(){if(window.GLOBAL){var b=window.GLOBAL,a;for(a in b){this.GLOBAL[a]=b[a];}}this.user.logged=window.loggedUser?true:false;dojo.connect(document,"onkeypress",function(c){dojo.publish("keypressed",[c]);});},getUser:function(){return this.user;},setUser:function(a){if(a){this.user=a;this.user.logged=true;}}});LB=new LBase();Array.prototype.union=function(g){var a=this,b={},f=[],c,d,e;for(c=0,d=a.length;c<d;c++){e=a[c];if(!b[e]){f.push(e);b[e]=true;}}for(c=0,d=g.length;c<d;c++){e=g[c];if(!b[e]){f.push(e);b[e]=true;}}return f;};Array.prototype.intersection=function(h){var a=this,d={},c={},g=[],b,e,f;for(b=0,e=h.length;b<e;b++){c[h[b]]=true;}for(b=0,e=a.length;b<e;b++){f=a[b];if(!d[f]){d[f]=true;if(c[f]){g.push(f);}}}return g;};Array.prototype.complement=function(h){var a=this,d={},c={},g=[],b,e,f;for(b=0,e=h.length;b<e;b++){c[h[b]]=true;}for(b=0,e=a.length;b<e;b++){f=a[b];if(!d[f]){d[f]=true;if(!c[f]){g.push(f);}}}return g;};smd={SMDVersion:"2.0",id:"http://www.lifeblob.com/ajax",description:"Lifeblob API",target:"http://www.lifeblob.com/ajax/",transport:"POST",envelope:"URL",additionalParameters:false,parameters:[{name:"v",optional:false,"default":"1.0"},{name:"format",optional:false,"default":"json"}],services:{checkDisplayName:{target:"checkDisplayName",parameters:[{name:"displayName",type:"string",optional:false},{name:"user",type:"boolean",optional:false}]},saveMemoir:{target:"memoir/save",parameters:[{name:"primaryId",type:"integer",optional:true},{name:"primaryType",type:"integer",optional:true},{name:"title",type:"string",optional:false},{name:"desc",type:"string",optional:true,"default":""},{name:"happened",type:"string",optional:true},{name:"visibility",type:"integer",optional:true},{name:"commentable",type:"boolean",optional:true},{name:"participants",type:"string",optional:true},{name:"fbIds",type:"string",optional:true},{name:"emails",type:"string",optional:true},{name:"topics",type:"string",optional:true},{name:"topicIds",type:"string",optional:true},{name:"tags",type:"string",optional:true},{name:"place",type:"integer",optional:true,"default":0},{name:"images",type:"array",optional:true},{name:"videos",type:"array",optional:true},{name:"autoLinkable",type:"boolean",optional:true}]},saveUploadMemoir:{target:"memoir/saveUpload",parameters:[{name:"title",type:"string",optional:false},{name:"placeId",type:"integer",optional:false},{name:"imageIdsToAdd",type:"string",optional:false},{name:"imageIdsToRemove",type:"string",optional:false},{name:"imageCaptionIds",type:"string",optional:false},{name:"captions",type:"string",optional:false},{name:"imageTagIds",type:"string",optional:false},{name:"tags",type:"string",optional:false}]},deleteMemoir:{target:"memoir/delete",parameters:[{name:"memoirId",type:"integer",optional:false}]},link:{target:"memoir/link",parameters:[{name:"memoirId",type:"integer",optional:false}]},linkAcceptReject:{target:"memoir/linkAcceptReject",parameters:[{name:"personId",type:"integer",optional:false},{name:"memoirId",type:"integer",optional:false},{name:"accept",type:"boolean",optional:false}]},unLink:{target:"memoir/unlink",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"typeId",type:"integer",optional:false},{name:"type",type:"integer",optional:false}]},fetchPhotos:{target:"photo/fetch",parameters:[{name:"memoirId",type:"integer",optional:false}]},fetchVideos:{target:"video/fetch",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"start",type:"integer",optional:false},{name:"count",type:"integer",optional:false,"default":10}]},fetchComments:{target:"fetchComments",parameters:[{name:"memoirId",type:"integer",optional:false}]},deleteComment:{target:"deleteComment",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"cid",type:"integer",optional:false}]},deleteFBComment:{target:"deleteFBComment",parameters:[{name:"albumId",type:"string",optional:false},{name:"cid",type:"integer",optional:false}]},addComment:{target:"addComment",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"comment",type:"string",optional:false},{name:"photoId",type:"integer",optional:true}]},addFBComment:{target:"addFBComment",parameters:[{name:"albumId",type:"string",optional:false},{name:"comment",type:"string",optional:false},{name:"photoId",type:"integer",optional:true}]},invite:{target:"invite/friends",parameters:[{name:"emails",type:"string",optional:false},{name:"message",type:"string",optional:true},{name:"inviteType",type:"integer",optional:false}]},inviteByName:{target:"invite/friendsByName",parameters:[{name:"emails",type:"string",optional:false},{name:"names",type:"string",optional:false},{name:"message",type:"string",optional:true},{name:"inviteType",type:"integer",optional:false}]},createFBAccount:{target:"account/createFBAccount",parameters:[]},importRequest:{target:"imports/request",parameters:[{name:"url",type:"string",optional:false},{name:"appType",type:"integer",optional:false},{name:"topicId",type:"integer",optional:true}]},importAddressbook:{target:"imports/credentialsRequest",parameters:[{name:"username",type:"string",optional:false},{name:"password",type:"string",optional:false},{name:"appType",type:"integer",optional:false}]},facebookImportRequest:{target:"imports/facebookRequest",parameters:[]},importStatus:{target:"imports/status",parameters:[{name:"id",type:"integer",optional:false}]},deleteImportConfig:{target:"imports/delete",parameters:[{name:"appType",type:"integer",optional:false},{name:"aggregatorId",type:"integer",optional:false},{name:"deleteData",type:"boolean",optional:false}]},updateImportConfig:{target:"imports/update",parameters:[{name:"appType",type:"integer",optional:false},{name:"aggregatorId",type:"integer",optional:false},{name:"schedule",type:"integer",optional:false},{name:"writeenabled",type:"string",optional:false}]},friendFinder:{target:"friendFinder",parameters:[{name:"id",type:"integer",optional:false}]},discover:{target:"recommend/discover",parameters:[]},linkupFacebook:{target:"facebook/linkup",parameters:[]},fbPerms:{target:"facebook/permission",parameters:[{name:"granted",type:"string",optional:true},{name:"notgranted",type:"string",optional:true}]},facebookUserTimelinePublished:{target:"facebook/publish/facebookPublished",parameters:[]},facebookLinkupTimelinePublished:{target:"facebook/publish/facebookTimelineLinkPublished",parameters:[]},facebookTopicPublished:{target:"facebook/publish/facebookTopicPublished",parameters:[{name:"topicId",type:"integer",optional:false}]},searchLocation:{target:"location/search",parameters:[{name:"query",type:"string",optional:false},{name:"count",type:"integer",optional:false,"default":10}]},searchNearby:{target:"location/nearby",parameters:[{name:"latitude",type:"number",optional:false},{name:"longitude",type:"number",optional:false},{name:"count",type:"integer",optional:false,"default":10}]},fetchPending:{target:"pending/fetch",parameters:[{name:"appType",type:"integer",optional:false}]},updatePending:{target:"pending/update",parameters:[{name:"id",type:"integer",optional:false},{name:"visibility",type:"integer",optional:false},{name:"participants",type:"string",optional:false},{name:"tags",type:"string",optional:false}]},skipApp:{target:"pending/skipApp",parameters:[{name:"appType",type:"integer",optional:false}]},skipIds:{target:"pending/skipIds",parameters:[{name:"ids",type:"string",optional:false}]},updateStatus:{target:"profile/updateStatus",parameters:[{name:"status",type:"string",optional:false},{name:"generateActivity",type:"boolean",optional:false,"default":true}]},addFriend:{target:"profile/addFriend",parameters:[{name:"personId",type:"integer",optional:false}]},addMultiFriends:{target:"profile/addMultiFriends",parameters:[{name:"ids",type:"string",optional:false}]},removeFriend:{target:"profile/removeFriend",parameters:[{name:"personId",type:"integer",optional:false}]},approveFriend:{target:"profile/approveFriend",parameters:[{name:"personId",type:"integer",optional:false}]},rejectFriend:{target:"profile/rejectFriend",parameters:[{name:"personId",type:"integer",optional:false},{name:"ignore",type:"boolean",optional:false,"default":false}]},deleteMessage:{target:"profile/deleteMessage",parameters:[{name:"messageId",type:"integer",optional:false},{name:"sentBox",type:"integer",optional:false}]},defaultPic:{target:"profile/defaultPic",parameters:[{name:"pic",type:"integer",optional:false}]},followUser:{target:"follow",parameters:[{name:"typeid",type:"integer",optional:false}]},unfollowUser:{target:"unfollow",parameters:[{name:"typeid",type:"integer",optional:false}]},addressbook:{target:"addressbook",parameters:[]},joinGroup:{target:"topic/join",parameters:[{name:"groupId",type:"integer",optional:false}]},requestContribution:{target:"topic/requestContribution",parameters:[{name:"topicId",type:"integer",optional:false}]},acceptContribution:{target:"topic/acceptContribution",parameters:[{name:"topicId",type:"integer",optional:false},{name:"personId",type:"integer",optional:false}]},rejectContribution:{target:"topic/rejectContribution",parameters:[{name:"topicId",type:"integer",optional:false},{name:"personId",type:"integer",optional:false}]},acceptContributionInvite:{target:"topic/acceptContributionInvite",parameters:[{name:"topicId",type:"integer",optional:false}]},rejectContributionInvite:{target:"topic/rejectContributionInvite",parameters:[{name:"topicId",type:"integer",optional:false}]},removeContribution:{target:"topic/removeContribution",parameters:[{name:"topicId",type:"integer",optional:false}]},removeContributor:{target:"topic/removeContributor",parameters:[{name:"contributorId",type:"integer",optional:false},{name:"topicId",type:"integer",optional:false}]},topicPic:{target:"topic/pic",parameters:[{name:"topicId",type:"integer",optional:false},{name:"url",type:"string",optional:true},]},inviteContributors:{target:"invite/contributors",parameters:[{name:"topicId",type:"integer",optional:false},{name:"people",type:"string",optional:true},{name:"emails",type:"string",optional:true}]},browseTopics:{target:"topic/browse",parameters:[{name:"categoryId",type:"integer",optional:false},{name:"startChar",type:"string",optional:true},{name:"page",type:"integer",optional:true}]},sendToFriends:{target:"memoir/sendToFriends",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"typeId",type:"integer",optional:false},{name:"type",type:"integer",optional:false},{name:"emails",type:"string",optional:false},{name:"message",type:"string",optional:false},{name:"personName",type:"string",optional:true},{name:"personEmail",type:"string",optional:true}]},likeMemoir:{target:"memoir/like",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"like",type:"boolean",optional:false}]},getPhotoLikers:{target:"memoir/like/getPhotoLikers",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false}]},photoViewed:{target:"memoir/like/photoViewed",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"people",type:"string",optional:false},{name:"tags",type:"string",optional:false},{name:"place",type:"string",optional:false}]},getPhotoInfo:{target:"memoir/info/getPhotoInfo",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"timelineId",type:"integer",optional:false,"default":0},{name:"timelineType",type:"integer",optional:false,"default":1}]},getVideoInfo:{target:"memoir/info/getVideoInfo",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"videoId",type:"integer",optional:false}]},likePhoto:{target:"memoir/like/photoLike",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"extra",type:"boolean",optional:true}]},unlikePhoto:{target:"memoir/like/photoUnLike",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"extra",type:"boolean",optional:true}]},getVideoLikers:{target:"memoir/like/getVideoLikers",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"videoId",type:"integer",optional:false}]},likeVideo:{target:"memoir/like/videoLike",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"videoId",type:"integer",optional:false}]},unlikeVideo:{target:"memoir/like/videoUnLike",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"videoId",type:"integer",optional:false}]},likeFBMemoir:{target:"memoir/facebookLike",parameters:[{name:"albumId",type:"string",optional:false},{name:"like",type:"boolean",optional:false}]},rateTimeline:{target:"timeline/rate",parameters:[{name:"timelineType",type:"integer",optional:false},{name:"timelineId",type:"integer",optional:false},{name:"rating",type:"integer",optional:false}]},getTags:{target:"timeline/getTags",parameters:[{name:"timelineType",type:"integer",optional:false},{name:"timelineId",type:"integer",optional:false}]},getInfo:{target:"timeline/getInfo",parameters:[{name:"type",type:"integer",optional:false},{name:"id",type:"integer",optional:false},{name:"fetchBuckets",type:"boolean",optional:true}]},getRecent:{target:"profile/recent",parameters:[]},fetchProfile:{target:"profile/fetch",parameters:[]},updateProfile:{target:"profile/update",parameters:[{name:"firstName",type:"string",optional:false},{name:"lastName",type:"string",optional:false},{name:"dob",type:"string",optional:false},{name:"gender",type:"integer",optional:false},{name:"about",type:"string",optional:true},{name:"city",type:"string",optional:true},{name:"country",type:"integer",optional:true}]},fetchTopic:{target:"topic/fetch",parameters:[{name:"topicId",type:"integer",optional:false}]},updateTopic:{target:"topic/update",parameters:[{name:"topicId",type:"integer",optional:false},{name:"title",type:"string",optional:false},{name:"description",type:"string",optional:false},{name:"category",type:"integer",optional:false},{name:"unlisted",type:"boolean",optional:false}]},fetchMemoirs:{target:"memoir/fetch",parameters:[{name:"typeid",type:"integer",optional:false},{name:"type",type:"integer",optional:false},{name:"buckets",type:"string",optional:false}]},fetchDetails:{target:"memoir/fetchDetails",parameters:[{name:"memoirIds",type:"string",optional:false}]},similarMemoirs:{target:"memoir/similar",parameters:[{name:"memoirIds",type:"string",optional:false}]},addPhotos:{target:"photo/add",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"urls",type:"string",optional:false},{name:"update",type:"boolean",optional:true,"default":true}]},deletePhoto:{target:"photo/delete",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"update",type:"boolean",optional:true,"default":true}]},setPhotoCaption:{target:"photo/caption",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"caption",type:"string",optional:true,"default":""},{name:"update",type:"boolean",optional:true,"default":true}]},rotate:{target:"photo/rotate",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"angle",type:"integer",optional:false}]},setCover:{target:"photo/setCover",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false}]},setPhotoTags:{target:"photo/setTags",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"tags",type:"string",optional:false}]},updatePhotos:{target:"photo/update",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"deletePhotos",type:"string",optional:false},{name:"photoIds",type:"string",optional:false},{name:"captions",type:"string",optional:false},{name:"photoTagIds",type:"string",optional:false},{name:"tags",type:"string",optional:false},{name:"update",type:"boolean",optional:true,"default":true}]},getPhotoComments:{target:"photo/getComments",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false}]},getPhotoLikes:{target:"photo/getLikes",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false}]},addPhotoComment:{target:"photo/addComment",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"comment",type:"string",optional:false}]},addVideos:{target:"video/add",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"videoUrls",type:"string",optional:false},{name:"update",type:"boolean",optional:true,"default":true}]},deleteVideo:{target:"video/delete",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"videoId",type:"integer",optional:false},{name:"update",type:"boolean",optional:true,"default":true}]},setVideoCaption:{target:"video/caption",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"videoId",type:"integer",optional:false},{name:"caption",type:"string",optional:true,"default":""},{name:"update",type:"boolean",optional:true,"default":true}]},setVideoTags:{target:"video/setTags",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"videoId",type:"integer",optional:false},{name:"tags",type:"string",optional:false}]},updateVideos:{target:"video/update",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"deleteVideos",type:"string",optional:false},{name:"videoIds",type:"string",optional:false},{name:"captions",type:"string",optional:false},{name:"update",type:"boolean",optional:true,"default":true}]},addParticipants:{target:"dimension/addParticipants",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"personIds",type:"string",optional:true},{name:"emails",type:"string",optional:true},{name:"fbIds",type:"string",optional:true}]},removeParticipants:{target:"dimension/removeParticipants",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"personIds",type:"string",optional:false}]},updateParticipants:{target:"dimension/updateParticipants",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"peopleToAdd",type:"string",optional:true},{name:"emailsToAdd",type:"string",optional:true},{name:"fbIds",type:"string",optional:true},{name:"peopleToDelete",type:"string",optional:true}]},updateFBParticipants:{target:"dimension/updateFBParticipants",parameters:[{name:"albumId",type:"string",optional:false},{name:"peopleToAdd",type:"string",optional:true}]},addTopics:{target:"dimension/addTopics",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"topicIds",type:"string",optional:false}]},removeTopics:{target:"dimension/removeTopics",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"topicIds",type:"string",optional:false}]},updateTopics:{target:"dimension/updateTopics",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"topicsToAdd",type:"string",optional:true},{name:"topicsToDelete",type:"string",optional:true}]},setPlace:{target:"dimension/setPlace",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"placeId",type:"integer",optional:false}]},removePlace:{target:"dimension/removePlace",parameters:[{name:"memoirId",type:"integer",optional:false}]},setTags:{target:"dimension/setTags",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"tags",type:"string",optional:false}]},update:{target:"memoir/update",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"title",type:"string",optional:false},{name:"happened",type:"string",optional:false},{name:"description",type:"string",optional:false,"default":""},{name:"visibility",type:"integer",optional:false}]},tagPhoto:{target:"photo/tag",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"personId",type:"integer",optional:true},{name:"fbId",type:"integer",optional:true},{name:"tag",type:"string",optional:true},{name:"personEmail",type:"string",optional:true},{name:"leftPercent",type:"number",optional:false},{name:"topPercent",type:"number",optional:false}]},tagAcceptReject:{target:"photo/tagAcceptReject",parameters:[{name:"tagRequestId",type:"integer",optional:false},{name:"accept",type:"boolean",optional:false}]},removePhotoTag:{target:"photo/removeTag",parameters:[{name:"memoirId",type:"integer",optional:false},{name:"photoId",type:"integer",optional:false},{name:"tagId",type:"integer",optional:false}]},eventPublish:{target:"memoir/publish",parameters:[{name:"memoirId",type:"integer",optional:false}]},sendMessage:{target:"message/send",parameters:[{name:"personIds",type:"string",optional:false},{name:"subject",type:"string",optional:false},{name:"body",type:"integer",optional:false},{name:"threadId",type:"integer",optional:true}]},help:{target:"helpOverlays",parameters:[{name:"type",type:"integer",optional:false},{name:"disable",type:"string",optional:false}]},beta:{target:"invite/beta",parameters:[{name:"email",type:"string",optional:false},{name:"name",type:"string",optional:false},{name:"referrer",type:"string",optional:false}]},notifyTopBlobbers:{target:"topblobbersNotify",parameters:[{name:"topblobbers",type:"string",optional:true}]},getStreamStories:{target:"stream/get",parameters:[{name:"typeid",type:"integer",optional:false},{name:"type",type:"integer",optional:false},{name:"page",type:"integer",optional:false}]},getNewsfeed:{target:"stream/getNewsFeed",parameters:[{name:"page",type:"integer",optional:false}]},getLikesfeed:{target:"stream/getLikesFeed",parameters:[{name:"personId",type:"integer",optional:false},{name:"page",type:"integer",optional:false}]},getDiscussionFeed:{target:"stream/getDiscussionFeed",parameters:[{name:"timelineId",type:"integer",optional:false},{name:"timelineType",type:"integer",optional:false},{name:"page",type:"integer",optional:false}]},getRiverView:{target:"stream/getRiverView",parameters:[{name:"typeid",type:"integer",optional:false},{name:"type",type:"integer",optional:false},{name:"page",type:"integer",optional:false},{name:"embed",type:"boolean",optional:false,"default":false},{name:"sort",type:"boolean",optional:false,"default":false}]},getSearchRiverView:{target:"stream/searchRiver",parameters:[{name:"query",type:"string",optional:false},{name:"page",type:"integer",optional:false}]},getStreamStoryComments:{target:"stream/comment/get",parameters:[{name:"activityId",type:"integer",optional:false},{name:"memoirId",type:"integer",optional:true}]},getDiscussionComments:{target:"discussion/getComments",parameters:[{name:"discussionId",type:"integer",optional:false}]},removeDiscussionComment:{target:"discussion/removeComment",parameters:[{name:"discussionId",type:"integer",optional:false},{name:"commentId",type:"integer",optional:false}]},addDiscussionComment:{target:"discussion/addComment",parameters:[{name:"discussionId",type:"integer",optional:false},{name:"comment",type:"string",optional:false}]},addDiscussion:{target:"discussion/add",parameters:[{name:"timelineId",type:"integer",optional:false},{name:"timelineType",type:"integer",optional:false},{name:"comment",type:"string",optional:false}]},removeDiscussion:{target:"discussion/delete",parameters:[{name:"discussionId",type:"integer",optional:false}]},addStreamStoryComment:{target:"stream/comment/add",parameters:[{name:"activityId",type:"integer",optional:false},{name:"comment",type:"string",optional:false},{name:"memoirId",type:"integer",optional:true},{name:"extra",type:"boolean",optional:true}]},removeStreamStoryComment:{target:"stream/comment/remove",parameters:[{name:"activityId",type:"integer",optional:false},{name:"commentId",type:"integer",optional:false},{name:"memoirId",type:"integer",optional:true}]},getStreamStoryLikes:{target:"stream/like/get",parameters:[{name:"activityId",type:"integer",optional:false},{name:"memoirId",type:"integer",optional:true}]},likeStreamStory:{target:"stream/like/like",parameters:[{name:"activityId",type:"integer",optional:false},{name:"memoirId",type:"integer",optional:true}]},unlikeStreamStory:{target:"stream/like/unlike",parameters:[{name:"activityId",type:"integer",optional:false},{name:"memoirId",type:"integer",optional:true}]},updateShoppingCart:{target:"store/cart/update",parameters:[{name:"cartId",type:"integer",optional:false},{name:"quantity",type:"integer",optional:false}]},addCollagePhoto:{target:"facebook/collage/addCollagePhoto",parameters:[{name:"collage",type:"string",optional:false},{name:"url",type:"string",optional:false},{name:"pid",type:"string",optional:true},{name:"top",type:"string",optional:false},{name:"left",type:"string",optional:false},{name:"height",type:"string",optional:false},{name:"width",type:"string",optional:false},{name:"marginTop",type:"string",optional:false},{name:"marginLeft",type:"string",optional:false}]},clearCollage:{target:"facebook/collage/clearCollage",parameters:[{name:"collage",type:"string",optional:false}]},setCollageTitle:{target:"facebook/collage/setCollageTitle",parameters:[{name:"collage",type:"string",optional:false},{name:"title",type:"string",optional:false}]},login:{target:"account/login",parameters:[{name:"login",type:"string",optional:false},{name:"password",type:"string",optional:false},{name:"remember",type:"boolean",optional:true,"default":true}]},create:{target:"account/create",parameters:[{name:"email",type:"string",optional:false},{name:"password",type:"string",optional:false},{name:"remember",type:"boolean",optional:true,"default":true}]},fblinkup:{target:"account/fblinkup",parameters:[{name:"login",type:"string",optional:false},{name:"password",type:"string",optional:false}]},fbnew:{target:"account/fbnew",parameters:[{name:"email",type:"string",optional:false}]},postFeedback:{target:"postFeedback",parameters:[{name:"message",type:"string",optional:false},{name:"url",type:"string",optional:false},{name:"email",type:"string",optional:true}]}}};TIMELINE_BG="http://cdn2.lifeblob.com/lifeblob/img/timeline/timeline-bg-1-525.v04435e.png";ZOOM_IN_CUR="http://cdn0.lifeblob.com/lifeblob/img/common/zoom-in.v5473ba.cur";GRABING_CUR="http://cdn0.lifeblob.com/lifeblob/img/common/grabbing.v41aaa6.cur";GRAB_CUR="http://cdn3.lifeblob.com/lifeblob/img/common/grab.vfba3dd.cur";FLASH_UPLOADER="http://www.lifeblob.com/js/lib/swfupload/swfupload.ve3f767.swf";ERROR_IMG="http://cdn3.lifeblob.com/lifeblob/img/common/error-16.ve2461d.png";SUCCESS_IMG="http://cdn2.lifeblob.com/lifeblob/img/common/success-16.v92e1e1.png";EDITOR_CSS="http://cdn3.lifeblob.com/lifeblob/css/editor.v0d256c.css";TRANS_IMG="http://cdn2.lifeblob.com/lifeblob/img/common/trans.v18c520.gif";GEOTAG_IMG="http://cdn3.lifeblob.com/lifeblob/img/common/place-50.va04ff8.png";TAG_IMG="http://cdn0.lifeblob.com/lifeblob/img/common/tag-50.v1ecd38.png";dojo.require("dojox.rpc.Service");dojo.require("dijit.Tooltip");dojo.require("dojo.cookie");dojo.require("dojo.i18n");dojo.registerModulePath("i18n","data/i18n");API_SVC=null;M=null;dojo.addOnLoad(function(){var a="messages.v46664d";dojo.requireLocalization("i18n",a,null,"ar,ca,da,de,cs,el,es,fi,fr,he,hu,ja,it,ko,nb,nl,pl,pt,ru,sk,sl,th,sv,tr,zh,pt-pt,zh-tw");M=dojo.i18n.getLocalization("i18n",a,dojo.locale);if(window.fbParams){for(var b in fbParams){smd.parameters.push({name:b,optional:false,"default":fbParams[b]});}}API_SVC=new dojox.rpc.Service(smd);});(function(){var ag="_gat",au="_gaq",at=true,ar=false,aq=undefined,al="4.6.5",ap="length",ao="cookie",af="location",ae="&",ad="=",ac="__utma=",ab="__utmb=",R="__utmc=",ah="__utmk=",I="__utmv=",F="__utmz=",z="__utmx=",u="GASO=";var t=function(r){return aq==r||"-"==r||""==r;},a=function(r){return r[ap]>0&&" \n\r\t".indexOf(r)>-1;},p=function(x,r,y){var w="-",v;if(!t(x)&&!t(r)&&!t(y)){v=x.indexOf(r);if(v>-1){y=x.indexOf(y,v);if(y<0){y=x[ap];}w=q(x,v+r.indexOf(ad)+1,y);}}return w;},o=function(x){var r=ar,y=0,w,v;if(!t(x)){r=at;for(w=0;w<x[ap];w++){v=x.charAt(w);y+="."==v?1:0;r=r&&y<=1&&(0==w&&"-"==v||".0123456789".indexOf(v)>-1);}}return r;},m=function(v,r){var w=encodeURIComponent;return w instanceof Function?r?encodeURI(v):w(v):escape(v);},l=function(x,r){var y=decodeURIComponent,w;x=x.split("+").join(" ");if(y instanceof Function){try{w=r?decodeURI(x):y(x);}catch(v){w=unescape(x);}}else{w=unescape(x);}return w;},k=function(v,r){return v.indexOf(r)>-1;},h=function(v,r){v[v[ap]]=r;},g=function(r){return r.toLowerCase();},e=function(v,r){return v.split(r);},am=function(v,r){return v.indexOf(r);},q=function(v,r,w){w=aq==w?v[ap]:w;return v.substring(r,w);},ai=function(v,r){return v.join(r);},an=function(w){var r=1,x=0,v;if(!t(w)){r=0;for(v=w[ap]-1;v>=0;v--){x=w.charCodeAt(v);r=(r<<6&268435455)+x+(x<<14);x=r&266338304;r=x!=0?r^x>>21:r;}}return r;},aj=function(){var v=window,r=aq;if(v&&v.gaGlobal&&v.gaGlobal.hid){r=v.gaGlobal.hid;}else{r=d();v.gaGlobal=v.gaGlobal?v.gaGlobal:{};v.gaGlobal.hid=r;}return r;},d=function(){return Math.round(Math.random()*2147483647);},b={Ha:function(v,r){this.bb=v;this.nb=r;},ib:ar,_gasoDomain:aq,_gasoCPath:aq};b.Gb=function(){function w(y){return new v(y[0],y[1]);}function r(y){var B=[];y=y.split(",");var A;for(A=0;A<y.length;++A){B.push(w(y[A].split(":")));}return B;}var x=this,v=b.Ha;x.Ia="utm_campaign";x.Ja="utm_content";x.Ka="utm_id";x.La="utm_medium";x.Ma="utm_nooverride";x.Na="utm_source";x.Oa="utm_term";x.Pa="gclid";x.ba=0;x.z=0;x.Ta=15768000000;x.sb=1800000;x.v=63072000000;x.ta=[];x.va=[];x.nc="cse";x.oc="q";x.ob=5;x.T=r("daum:q,eniro:search_word,naver:query,images.google:q,google:q,yahoo:p,msn:q,bing:q,aol:query,aol:encquery,lycos:query,ask:q,altavista:q,netscape:query,cnn:query,about:terms,mamma:query,alltheweb:q,voila:rdata,virgilio:qs,live:q,baidu:wd,alice:qs,yandex:text,najdi:q,aol:q,mama:query,seznam:q,search:q,wp:szukaj,onet:qt,szukacz:q,yam:k,pchome:q,kvasir:q,sesam:q,ozu:q,terra:query,mynet:q,ekolay:q,rambler:words");x.t=aq;x.lb=ar;x.h="/";x.U=100;x.oa="/__utm.gif";x.ga=1;x.ha=1;x.u="|";x.fa=1;x.da=1;x.Ra=1;x.b="auto";x.I=1;x.ra=1000;x.Jc=10;x.Pb=10;x.Kc=0.2;x.o=aq;x.a=document;x.e=window;};b.Hb=function(x){function r(H,D,E,K){var J="",G=0;J=p(H,"2"+D,";");if(!t(J)){H=J.indexOf("^"+E+".");if(H<0){return["",0];}J=q(J,H+E[ap]+2);if(J.indexOf("^")>0){J=J.split("^")[0];}E=J.split(":");J=E[1];G=parseInt(E[0],10);if(!K&&G<C.r){J="";}}if(t(J)){J="";}return[J,G];}function A(E,D){return"^"+ai([[D,E[1]].join("."),E[0]],":");}function w(E,D){B.a[ao]=E+"; path="+B.h+"; "+D+C.fb();}function v(E){var D=new Date;E=new Date(D.getTime()+E);return"expires="+E.toGMTString()+"; ";}var C=this,B=x;C.r=(new Date).getTime();var y=[ac,ab,R,F,I,z,u];C.k=function(){var D=B.a[ao];return B.o?C.Wb(D,B.o):D;};C.Wb=function(G,D){var E=[],J,H;for(J=0;J<y[ap];J++){H=r(G,y[J],D)[0];t(H)||(E[E[ap]]=y[J]+H+";");}return E.join("");};C.l=function(G,D,E){var H=E>0?v(E):"";if(B.o){D=C.kc(B.a[ao],G,B.o,D,E);G="2"+G;H=E>0?v(B.v):"";}w(G+D,H);};C.kc=function(H,D,E,K,J){var G="";J=J||B.v;K=A([K,C.r+J*1],E);G=p(H,"2"+D,";");if(!t(G)){H=A(r(H,D,E,at),E);G=ai(G.split(H),"");return G=K+G;}return K;};C.fb=function(){return t(B.b)?"":"domain="+B.b+";";};};b.$=function(A){function w(L){L=L instanceof Array?L.join("."):"";return t(L)?"-":L;}function C(L,N){var O=[];if(!t(L)){O=L.split(".");if(N){for(L=0;L<O[ap];L++){o(O[L])||(O[L]="-");}}}return O;}function J(N,Q,S){var L=G.M,P,O;for(P=0;P<L[ap];P++){O=L[P][0];O+=t(Q)?Q:Q+L[P][4];L[P][2](p(N,O,S));}}var x,r,D,B,E,H,y,G=this,v,K=A;G.j=new b.Hb(A);G.kb=function(){return aq==v||v==G.P();};G.k=function(){return G.j.k();};G.ma=function(){return E?E:"-";};G.vb=function(L){E=L;};G.za=function(L){v=o(L)?L*1:"-";};G.la=function(){return w(H);};G.Aa=function(L){H=C(L);};G.Vb=function(){G.j.l(I,"",-1);};G.lc=function(){return v?v:"-";};G.fb=function(){return t(K.b)?"":"domain="+K.b+";";};G.ja=function(){return w(x);};G.tb=function(L){x=C(L,1);};G.C=function(){return w(r);};G.ya=function(L){r=C(L,1);};G.ka=function(){return w(D);};G.ub=function(L){D=C(L,1);};G.na=function(){return w(B);};G.wb=function(L){B=C(L);for(L=0;L<B[ap];L++){if(L<4&&!o(B[L])){B[L]="-";}}};G.fc=function(){return y;};G.Dc=function(L){y=L;};G.Sb=function(){x=[];r=[];D=[];B=[];E=aq;H=[];v=aq;};G.P=function(){var L="",N;for(N=0;N<G.M[ap];N++){L+=G.M[N][1]();}return an(L);};G.ua=function(L){var N=G.k(),O=ar;if(N){J(N,L,";");G.za(G.P());O=at;}return O;};G.zc=function(L){J(L,"",ae);G.za(p(L,ah,ae));};G.Hc=function(){var L=G.M,N=[],O;for(O=0;O<L[ap];O++){h(N,L[O][0]+L[O][1]());}h(N,ah+G.P());return N.join(ae);};G.Nc=function(N,O){var P=G.M,L=K.h;G.ua(N);K.h=O;for(N=0;N<P[ap];N++){t(P[N][1]())||P[N][3]();}K.h=L;};G.Cb=function(){G.j.l(ac,G.ja(),K.v);};G.Ea=function(){G.j.l(ab,G.C(),K.sb);};G.Db=function(){G.j.l(R,G.ka(),0);};G.Ga=function(){G.j.l(F,G.na(),K.Ta);};G.Eb=function(){G.j.l(z,G.ma(),K.v);};G.Fa=function(){G.j.l(I,G.la(),K.v);};G.Oc=function(){G.j.l(u,G.fc(),0);};G.M=[[ac,G.ja,G.tb,G.Cb,"."],[ab,G.C,G.ya,G.Ea,""],[R,G.ka,G.ub,G.Db,""],[z,G.ma,G.vb,G.Eb,""],[F,G.na,G.wb,G.Ga,"."],[I,G.la,G.Aa,G.Fa,"."]];};b.Kb=function(x){var r=this,y=x,w=new b.$(y),v=function(){},A=function(C){var B=(new Date).getTime(),D;D=(B-C[3])*(y.Kc/1000);if(D>=1){C[2]=Math.min(Math.floor(C[2]*1+D),y.Pb);C[3]=B;}return C;};r.H=function(E,D,G,K,C,H){var B,L=y.I,J=y.a[af];w.ua(G);B=e(w.C(),".");if(B[1]<500||K){if(C){B=A(B);}if(K||!C||B[2]>=1){if(!K&&C){B[2]=B[2]*1-1;}B[1]=B[1]*1+1;E="?utmwv="+al+"&utmn="+d()+(t(J.hostname)?"":"&utmhn="+m(J.hostname))+(y.U==100?"":"&utmsp="+m(y.U))+E;if(0==L||2==L){K=2==L?v:H||v;r.$a(y.oa+E,K);}if(1==L||2==L){E=("https:"==J.protocol?"https://ssl.google-analytics.com/__utm.gif":"http://www.google-analytics.com/__utm.gif")+E+"&utmac="+D+"&utmcc="+r.ac(G);if(c){E+="&gaq=1";}r.$a(E,H);}}}w.ya(B.join("."));w.Ea();};r.$a=function(C,B){var D=new Image(1,1);D.src=C;D.onload=function(){D.onload=null;(B||v)();};};r.ac=function(E){var D=[],G=[ac,F,I,z],B,C=w.k(),H;for(B=0;B<G[ap];B++){H=p(C,G[B]+E,";");if(!t(H)){if(G[B]==I){H=e(H.split(E+".")[1],"|")[0];if(t(H)){continue;}H=E+"."+H;}h(D,G[B]+H+";");}}return m(D.join("+"));};};b.n=function(){var r=this;r.Y=[];r.hb=function(v){var y,x=r.Y,w;for(w=0;w<x.length;w++){y=v==x[w].q?x[w]:y;}return y;};r.Ob=function(w,A,E,x,v,B,y,C){var D=r.hb(w);if(aq==D){D=new b.n.Mb(w,A,E,x,v,B,y,C);h(r.Y,D);}else{D.Qa=A;D.Ab=E;D.zb=x;D.xb=v;D.Xa=B;D.yb=y;D.Za=C;}return D;};};b.n.Lb=function(x,r,y,w,v,B){var A=this;A.Bb=x;A.Ba=r;A.D=y;A.Va=w;A.pb=v;A.qb=B;A.Ca=function(){return"&"+["utmt=item","tid="+m(A.Bb),"ipc="+m(A.Ba),"ipn="+m(A.D),"iva="+m(A.Va),"ipr="+m(A.pb),"iqt="+m(A.qb)].join("&utm");};};b.n.Mb=function(x,v,A,D,w,r,B,y){var C=this;C.q=x;C.Qa=v;C.Ab=A;C.zb=D;C.xb=w;C.Xa=r;C.yb=B;C.Za=y;C.R=[];C.Nb=function(G,H,N,L,J){var E=C.gc(G),K=C.q;if(aq==E){h(C.R,new b.n.Lb(K,G,H,N,L,J));}else{E.Bb=K;E.Ba=G;E.D=H;E.Va=N;E.pb=L;E.qb=J;}};C.gc=function(E){var G,J=C.R,H;for(H=0;H<J.length;H++){G=E==J[H].Ba?J[H]:G;}return G;};C.Ca=function(){return"&"+["utmt=tran","id="+m(C.q),"st="+m(C.Qa),"to="+m(C.Ab),"tx="+m(C.zb),"sp="+m(C.xb),"ci="+m(C.Xa),"rg="+m(C.yb),"co="+m(C.Za)].join("&utmt");};};b.Fb=function(x){function r(){var G,E,H;E="ShockwaveFlash";var B="$version",C=v.d?v.d.plugins:aq;if(C&&C[ap]>0){for(G=0;G<C[ap]&&!H;G++){E=C[G];if(k(E.name,"Shockwave Flash")){H=E.description.split("Shockwave Flash ")[1];}}}else{E=E+"."+E;try{G=new ActiveXObject(E+".7");H=G.GetVariable(B);}catch(K){}if(!H){try{G=new ActiveXObject(E+".6");H="WIN 6,0,21,0";G.AllowScriptAccess="always";H=G.GetVariable(B);}catch(J){}}if(!H){try{G=new ActiveXObject(E);H=G.GetVariable(B);}catch(D){}}if(H){H=e(H.split(" ")[1],",");H=H[0]+"."+H[1]+" r"+H[2];}}return H?H:A;}var y=x,w=y.e,v=this,A="-";v.V=w.screen;v.Sa=!v.V&&w.java?java.awt.Toolkit.getDefaultToolkit():aq;v.d=w.navigator;v.W=A;v.xa=A;v.Wa=A;v.qa=A;v.pa=1;v.eb=A;v.bc=function(){var C;if(w.screen){v.W=v.V.width+"x"+v.V.height;v.xa=v.V.colorDepth+"-bit";}else{if(v.Sa){try{C=v.Sa.getScreenSize();v.W=C.width+"x"+C.height;}catch(B){}}}v.qa=g(v.d&&v.d.language?v.d.language:v.d&&v.d.browserLanguage?v.d.browserLanguage:A);v.pa=v.d&&v.d.javaEnabled()?1:0;v.eb=y.ha?r():A;v.Wa=m(y.a.characterSet?y.a.characterSet:y.a.charset?y.a.charset:A);};v.Ic=function(){return ae+"utm"+["cs="+m(v.Wa),"sr="+v.W,"sc="+v.xa,"ul="+v.qa,"je="+v.pa,"fl="+m(v.eb)].join("&utm");};v.$b=function(){var C=y.a,B=w.history[ap];C=v.d.appName+v.d.version+v.qa+v.d.platform+v.d.userAgent+v.pa+v.W+v.xa+(C[ao]?C[ao]:"")+(C.referrer?C.referrer:"");for(var D=C[ap];B>0;){C+=B--^D++;}return an(C);};};b.m=function(x,r,A,w){function v(E){var D="";E=g(E.split("://")[1]);if(k(E,"/")){E=E.split("/")[1];if(k(E,"?")){D=E.split("?")[0];}}return D;}function C(E){var D="";D=g(E.split("://")[1]);if(k(D,"/")){D=D.split("/")[0];}return D;}var B=w,y=this;y.c=x;y.rb=r;y.r=A;y.ic=function(E){var D=y.gb();return new b.m.w(p(E,B.Ka+ad,ae),p(E,B.Na+ad,ae),p(E,B.Pa+ad,ae),y.Q(E,B.Ia,"(not set)"),y.Q(E,B.La,"(not set)"),y.Q(E,B.Oa,D&&!t(D.K)?l(D.K):aq),y.Q(E,B.Ja,aq));};y.jb=function(G){var D=C(G),E=v(G);if(k(D,"google")){G=G.split("?").join(ae);if(k(G,ae+B.oc+ad)){if(E==B.nc){return at;}}}return ar;};y.gb=function(){var G,D=y.rb,E,J,H=B.T;if(!(t(D)||"0"==D||!k(D,"://")||y.jb(D))){G=C(D);for(E=0;E<H[ap];E++){J=H[E];if(k(G,g(J.bb))){D=D.split("?").join(ae);if(k(D,ae+J.nb+ad)){G=D.split(ae+J.nb+ad)[1];if(k(G,ae)){G=G.split(ae)[0];}return new b.m.w(aq,J.bb,aq,"(organic)","organic",G,aq);}}}}};y.Q=function(G,D,E){G=p(G,D+ad,ae);return E=!t(G)?l(G):!t(E)?E:"-";};y.uc=function(G){var D=B.ta,E=ar,H;if(G&&"organic"==G.S){G=g(l(G.K));for(H=0;H<D[ap];H++){E=E||g(D[H])==G;}}return E;};y.hc=function(){var E="",D="";E=y.rb;if(!(t(E)||"0"==E||!k(E,"://")||y.jb(E))){E=E.split("://")[1];if(k(E,"/")){D=q(E,E.indexOf("/"));D=D.split("?")[0];E=g(E.split("/")[0]);}if(0==E.indexOf("www.")){E=q(E,4);}return new b.m.w(aq,E,aq,"(referral)","referral",aq,D);}};y.Xb=function(E){var D="";if(B.ba){D=E&&E.hash?E.href.substring(E.href.indexOf("#")):"";D=""!=D?D+ae:D;}D+=E.search;return D;};y.dc=function(){return new b.m.w(aq,"(direct)",aq,"(direct)","(none)",aq,aq);};y.vc=function(G){var D=ar,E,H=B.va;if(G&&"referral"==G.S){G=g(m(G.X));for(E=0;E<H[ap];E++){D=D||k(G,g(H[E]));}}return D;};y.L=function(D){return aq!=D&&D.mb();};y.cc=function(J,N){var G="",K="-",E,O=0,L,H,D=y.c;if(!J){return"";}H=J.k();G=y.Xb(B.a[af]);if(B.z&&J.kb()){K=J.na();if(!t(K)&&!k(K,";")){J.Ga();return"";}}K=p(H,F+D+".",";");E=y.ic(G);if(y.L(E)){G=p(G,B.Ma+ad,ae);if("1"==G&&!t(K)){return"";}}if(!y.L(E)){E=y.gb();if(!t(K)&&y.uc(E)){return"";}}if(!y.L(E)&&N){E=y.hc();if(!t(K)&&y.vc(E)){return"";}}if(!y.L(E)){if(t(K)&&N){E=y.dc();}}if(!y.L(E)){return"";}if(!t(K)){O=K.split(".");L=new b.m.w;L.Zb(O.slice(4).join("."));L=g(L.Da())==g(E.Da());O=O[3]*1;}if(!L||N){N=p(H,ac+D+".",";");H=N.lastIndexOf(".");N=H>9?q(N,H+1)*1:0;O++;N=0==N?1:N;J.wb([D,y.r,N,O,E.Da()].join("."));J.Ga();return ae+"utmcn=1";}else{return ae+"utmcr=1";}};};b.m.w=function(x,r,A,w,v,C,B){var y=this;y.q=x;y.X=r;y.ea=A;y.D=w;y.S=v;y.K=C;y.Ya=B;y.Da=function(){var G=[],D=[["cid",y.q],["csr",y.X],["gclid",y.ea],["ccn",y.D],["cmd",y.S],["ctr",y.K],["cct",y.Ya]],E,H;if(y.mb()){for(E=0;E<D[ap];E++){if(!t(D[E][1])){H=D[E][1].split("+").join("%20");H=H.split(" ").join("%20");h(G,"utm"+D[E][0]+ad+H);}}}return G.join("|");};y.mb=function(){return !(t(y.q)&&t(y.X)&&t(y.ea));};y.Zb=function(E){var D=function(G){return l(p(E,"utm"+G+ad,"|"));};y.q=D("cid");y.X=D("csr");y.ea=D("gclid");y.D=D("ccn");y.S=D("cmd");y.K=D("ctr");y.Ya=D("cct");};};b.Ib=function(x,v,A,E){function w(H,L,K){var J;if(!t(K)){K=K.split(",");for(var G=0;G<K[ap];G++){J=K[G];if(!t(J)){J=J.split(y);if(J[ap]==4){L[J[0]]=[J[1],J[2],H];}}}}}var r=this,B=v,y=ad,C=x,D=E;r.O=A;r.sa="";r.p={};r.tc=function(){var G;G=e(p(r.O.k(),I+B+".",";"),B+".")[1];if(!t(G)){G=G.split("|");w(1,r.p,G[1]);r.sa=G[0];r.Z();}};r.Z=function(){r.Qb();var G=r.sa,K,J,H="";for(K in r.p){if((J=r.p[K])&&1===J[2]){H+=K+y+J[0]+y+J[1]+y+1+",";}}t(H)||(G+="|"+H);if(t(G)){r.O.Vb();}else{r.O.Aa(B+"."+G);r.O.Fa();}};r.Ec=function(G){r.sa=G;r.Z();};r.Cc=function(H,L,K,J){if(1!=J&&2!=J&&3!=J){J=3;}var G=ar;if(L&&K&&H>0&&H<=C.ob){L=m(L);K=m(K);if(L[ap]+K[ap]<=64){r.p[H]=[L,K,J];r.Z();G=at;}}return G;};r.mc=function(G){if((G=r.p[G])&&1===G[2]){return G[1];}};r.Ub=function(G){var H=r.p;if(H[G]){delete H[G];r.Z();}};r.Qb=function(){D._clearKey(8);D._clearKey(9);D._clearKey(11);var G=r.p,J,H;for(H in G){if(J=G[H]){D._setKey(8,H,J[0]);D._setKey(9,H,J[1]);(J=J[2])&&3!=J&&D._setKey(11,H,""+J);}}};};b.N=function(){function B(P,S,Q,T){if(aq==E[P]){E[P]={};}if(aq==E[P][S]){E[P][S]=[];}E[P][S][Q]=T;}function x(P,S){if(aq!=E[P]&&aq!=E[P][S]){E[P][S]=aq;S=at;var Q;for(Q=0;Q<L[ap];Q++){if(aq!=E[P][L[Q]]){S=ar;break;}}if(S){E[P]=aq;}}}function D(P){var S="",Q=ar,T,U;for(T=0;T<L[ap];T++){U=P[L[T]];if(aq!=U){if(Q){S+=L[T];}S+=N(U);Q=ar;}else{Q=at;}}return S;}function N(P){var S=[],Q,T;for(T=0;T<P[ap];T++){if(aq!=P[T]){Q="";if(T!=v&&aq==P[T-1]){Q+=T.toString()+O;}Q+=y(P[T]);h(S,Q);}}return A+S.join(w)+J;}function y(P){var S="",Q,T,U;for(Q=0;Q<P[ap];Q++){T=P.charAt(Q);U=G[T];S+=aq!=U?U:T;}return S;}var r=this,E={},C="k",H="v",L=[C,H],A="(",J=")",w="*",O="!",K="'",G={};G[K]="'0";G[J]="'1";G[w]="'2";G[O]="'3";var v=1;r.qc=function(P){return aq!=E[P];};r.G=function(){var P="",Q;for(Q in E){if(aq!=E[Q]){P+=Q.toString()+D(E[Q]);}}return P;};r.Ac=function(P){if(P==aq){return r.G();}var S=P.G(),Q;for(Q in E){if(aq!=E[Q]&&!P.qc(Q)){S+=Q.toString()+D(E[Q]);}}return S;};r._setKey=function(P,S,Q){if(typeof Q!="string"){return ar;}B(P,C,S,Q);return at;};r._setValue=function(P,S,Q){if(typeof Q!="number"&&(aq==Number||!(Q instanceof Number))||Math.round(Q)!=Q||Q==NaN||Q==Infinity){return ar;}B(P,H,S,Q.toString());return at;};r._getKey=function(P,Q){return aq!=E[P]&&aq!=E[P][C]?E[P][C][Q]:aq;};r._getValue=function(P,Q){return aq!=E[P]&&aq!=E[P][H]?E[P][H][Q]:aq;};r._clearKey=function(P){x(P,C);};r._clearValue=function(P){x(P,H);};};b.Jb=function(v,r){var w=this;w.Qc=r;w.xc=v;w._trackEvent=function(y,x,A){return r._trackEvent(w.xc,y,x,A);};};b.aa=function(A,w){function C(){if("auto"==G.b){var L=G.a.domain;if("www."==q(L,0,4)){L=q(L,4);}G.b=L;}G.b=g(G.b);}function J(){var L=G.b,N=L.indexOf("www.google.")*L.indexOf(".google.")*L.indexOf("google.");return N||"/"!=G.h||L.indexOf("google.org")>-1;}function x(L,N,O){if(t(L)||t(N)||t(O)){return"-";}L=p(L,ac+H.c+".",N);if(!t(L)){L=L.split(".");L[5]=L[5]?L[5]*1+1:1;L[3]=L[4];L[4]=O;L=L.join(".");}return L;}function r(){return"file:"!=G.a[af].protocol&&J();}function D(L){if(!L||""==L){return"";}for(;a(L.charAt(0));){L=q(L,1);}for(;a(L.charAt(L[ap]-1));){L=q(L,0,L[ap]-1);}return L;}function B(N,O,P,L){if(!t(N())){O(L?l(N()):N());k(N(),";")||P();}}function E(L){var N,O=""!=L&&G.a[af].host!=L;if(O){for(N=0;N<G.t[ap];N++){O=O&&am(g(L),g(G.t[N]))==-1;}}return O;}var H=this,y=aq,G=new b.Gb,v=ar,K=aq;H.e=window;H.r=Math.round((new Date).getTime()/1000);H.s=A||"UA-XXXXX-X";H.ab=G.a.referrer;H.ia=aq;H.f=aq;H.B=aq;H.F=ar;H.A=aq;H.Ua="";H.g=aq;H.cb=aq;H.c=aq;H.i=aq;G.o=w?m(w):aq;H.wc=function(){var L=ar;if(H.B){L=H.B.match(/^[0-9a-z-_.]{10,1200}$/i);}return L;};H.jc=function(){return d()^H.A.$b()&2147483647;};H.ec=function(){if(!G.b||""==G.b||"none"==G.b){G.b="";return 1;}C();return G.Ra?an(G.b):1;};H.Yb=function(L,N){if(t(L)){L="-";}else{N+=G.h&&"/"!=G.h?G.h:"";N=L.indexOf(N);L=N>=0&&N<=8?"0":"["==L.charAt(0)&&"]"==L.charAt(L[ap]-1)?"-":L;}return L;};H.wa=function(L){var N="",O=G.a;N+=G.fa?H.A.Ic():"";N+=G.da?H.Ua:"";N+=G.ga&&!t(O.title)?"&utmdt="+m(O.title):"";N+="&utmhid="+aj()+"&utmr="+m(H.ia)+"&utmp="+m(H.Bc(L));return N;};H.Bc=function(L){var N=G.a[af];return L=aq!=L&&""!=L?m(L,at):m(N.pathname+N.search,at);};H.Lc=function(L){if(H.J()){var N="";if(H.g!=aq&&H.g.G()[ap]>0){N+="&utme="+m(H.g.G());}N+=H.wa(L);y.H(N,H.s,H.c);}};H.Tb=function(){var L=new b.$(G);return L.ua(H.c)?L.Hc():aq;};H._getLinkerUrl=function(N,P){var Q=N.split("#"),L=N,O=H.Tb();if(O){if(P&&1>=Q[ap]){L+="#"+O;}else{if(!P||1>=Q[ap]){if(1>=Q[ap]){L+=(k(N,"?")?ae:"?")+O;}else{L=Q[0]+(k(N,"?")?ae:"?")+O+"#"+Q[1];}}}}return L;};H.Fc=function(){var L;if(H.wc()){H.i.Dc(H.B);H.i.Oc();b._gasoDomain=G.b;b._gasoCPath=G.h;L=G.a.createElement("script");L.type="text/javascript";L.id="_gasojs";L.src="https://www.google.com/analytics/reporting/overlay_js?gaso="+H.B+ae+d();G.a.getElementsByTagName("head")[0].appendChild(L);}};H.pc=function(){var W=H.r,T=H.i,N=T.k(),P=H.c+"",L=G.e,Z=L?L.gaGlobal:aq,V,U=k(N,ac+P+"."),O=k(N,ab+P),Y=k(N,R+P),aa,X=[],Q="",S=ar;N=t(N)?"":N;if(G.z){V=G.a[af]&&G.a[af].hash?G.a[af].href.substring(G.a[af].href.indexOf("#")):"";if(G.ba&&!t(V)){Q=V+ae;}Q+=G.a[af].search;if(!t(Q)&&k(Q,ac)){T.zc(Q);T.kb()||T.Sb();aa=T.ja();}B(T.ma,T.vb,T.Eb,true);B(T.la,T.Aa,T.Fa);}if(t(aa)){if(U){if(!O||!Y){aa=x(N,";",W);H.F=at;}else{aa=p(N,ac+P+".",";");X=e(p(N,ab+P,";"),".");}}else{aa=ai([P,H.jc(),W,W,W,1],".");S=H.F=at;}}else{if(t(T.C())||t(T.ka())){aa=x(Q,ae,W);H.F=at;}else{X=e(T.C(),".");P=X[0];}}aa=aa.split(".");if(L&&Z&&Z.dh==P&&!G.o){aa[4]=Z.sid?Z.sid:aa[4];if(S){aa[3]=Z.sid?Z.sid:aa[4];if(Z.vid){W=Z.vid.split(".");aa[1]=W[0];aa[2]=W[1];}}}T.tb(aa.join("."));X[0]=P;X[1]=X[1]?X[1]:0;X[2]=aq!=X[2]?X[2]:G.Jc;X[3]=X[3]?X[3]:aa[4];T.ya(X.join("."));T.ub(P);t(T.lc())||T.za(T.P());T.Cb();T.Ea();T.Db();};H.rc=function(){y=new b.Kb(G);};H._initData=function(){var L;if(!v){if(!H.A){H.A=new b.Fb(G);H.A.bc();}H.c=H.ec();H.i=new b.$(G);H.g=new b.N;K=new b.Ib(G,H.c,H.i,H.g);H.rc();}if(r()){H.pc();K.tc();}if(!v){if(r()){H.ia=H.Yb(H.ab,G.a.domain);if(G.da){L=new b.m(H.c,H.ia,H.r,G);H.Ua=L.cc(H.i,H.F);}}H.cb=new b.N;v=at;}b.ib||H.sc();};H._visitCode=function(){H._initData();var L=p(H.i.k(),ac+H.c+".",";");L=L.split(".");return L[ap]<4?"":L[1];};H._cookiePathCopy=function(L){H._initData();H.i&&H.i.Nc(H.c,L);};H.sc=function(){var L=G.a[af].hash;if(L&&1==L.indexOf("gaso=")){L=p(L,"gaso=",ae);}else{L=(L=G.e.name)&&0<=L.indexOf("gaso=")?p(L,"gaso=",ae):p(H.i.k(),u,";");}if(L[ap]>=10){H.B=L;H.Fc();}b.ib=at;};H.J=function(){return H._visitCode()%10000<G.U*100;};H.Gc=function(){var L,N,O=G.a.links;if(!G.lb){L=G.a.domain;if("www."==q(L,0,4)){L=q(L,4);}G.t.push("."+L);}for(L=0;L<O[ap]&&(G.ra==-1||L<G.ra);L++){N=O[L];if(E(N.host)){if(!N.gatcOnclick){N.gatcOnclick=N.onclick?N.onclick:H.yc;N.onclick=function(P){var Q=!this.target||this.target=="_self"||this.target=="_top"||this.target=="_parent";Q=Q&&!H.Rb(P);H.Mc(P,this,Q);return Q?ar:this.gatcOnclick?this.gatcOnclick(P):at;};}}}};H.yc=function(){};H._trackPageview=function(L){if(r()){H._initData();G.t&&H.Gc();H.Lc(L);H.F=ar;}};H._trackTrans=function(){var N=H.c,P=[],Q,L,O;H._initData();if(H.f&&H.J()){for(Q=0;Q<H.f.Y[ap];Q++){L=H.f.Y[Q];h(P,L.Ca());for(O=0;O<L.R[ap];O++){h(P,L.R[O].Ca());}}for(Q=0;Q<P[ap];Q++){y.H(P[Q],H.s,N,at);}}};H._setTrans=function(){var N=G.a,O,P,L;N=N.getElementById?N.getElementById("utmtrans"):N.utmform&&N.utmform.utmtrans?N.utmform.utmtrans:aq;H._initData();if(N&&N.value){H.f=new b.n;L=N.value.split("UTM:");G.u=!G.u||""==G.u?"|":G.u;for(N=0;N<L[ap];N++){L[N]=D(L[N]);O=L[N].split(G.u);for(P=0;P<O[ap];P++){O[P]=D(O[P]);}if("T"==O[0]){H._addTrans(O[1],O[2],O[3],O[4],O[5],O[6],O[7],O[8]);}else{"I"==O[0]&&H._addItem(O[1],O[2],O[3],O[4],O[5],O[6]);}}}};H._addTrans=function(N,Q,T,L,P,O,S,U){H.f=H.f?H.f:new b.n;return H.f.Ob(N,Q,T,L,P,O,S,U);};H._addItem=function(N,Q,T,L,P,O){var S;H.f=H.f?H.f:new b.n;(S=H.f.hb(N))||(S=H._addTrans(N,"","","","","","",""));S.Nb(Q,T,L,P,O);};H._setVar=function(L){if(L&&""!=L&&J()){H._initData();K.Ec(m(L));H.J()&&y.H("&utmt=var",H.s,H.c);}};H._setCustomVar=function(N,O,P,L){H._initData();return K.Cc(N,O,P,L);};H._deleteCustomVar=function(L){H._initData();K.Ub(L);};H._getVisitorCustomVar=function(L){H._initData();return K.mc(L);};H._setMaxCustomVariables=function(L){G.ob=L;};H._link=function(L,N){if(G.z&&L){H._initData();G.a[af].href=H._getLinkerUrl(L,N);}};H._linkByPost=function(L,N){if(G.z&&L&&L.action){H._initData();L.action=H._getLinkerUrl(L.action,N);}};H._setXKey=function(L,N,O){H.g._setKey(L,N,O);};H._setXValue=function(L,N,O){H.g._setValue(L,N,O);};H._getXKey=function(L,N){return H.g._getKey(L,N);};H._getXValue=function(L,N){return H.g.getValue(L,N);};H._clearXKey=function(L){H.g._clearKey(L);};H._clearXValue=function(L){H.g._clearValue(L);};H._createXObj=function(){H._initData();return new b.N;};H._sendXEvent=function(L){var N="";H._initData();if(H.J()){N+="&utmt=event&utme="+m(H.g.Ac(L))+H.wa();y.H(N,H.s,H.c,ar,at);}};H._createEventTracker=function(L){H._initData();return new b.Jb(L,H);};H._trackEvent=function(N,P,Q,L){var O=H.cb;if(aq!=N&&aq!=P&&""!=N&&""!=P){O._clearKey(5);O._clearValue(5);(N=O._setKey(5,1,N)&&O._setKey(5,2,P)&&(aq==Q||O._setKey(5,3,Q))&&(aq==L||O._setValue(5,1,L)))&&H._sendXEvent(O);}else{N=ar;}return N;};H.Mc=function(N,Q,S){H._initData();if(H.J()){var L=new b.N;L._setKey(6,1,Q.href);var P=S?function(){H.db(N,Q);}:aq;y.H("&utmt=event&utme="+m(L.G())+H.wa(),H.s,H.c,ar,at,P);if(S){var O=this;G.e.setTimeout(function(){O.db(N,Q);},500);}}};H.db=function(L,N){if(!L){L=G.e.event;}var O=at;if(N.gatcOnclick){O=N.gatcOnclick(L);}if(O||typeof O=="undefined"){if(!N.target||N.target=="_self"){G.e[af]=N.href;}else{if(N.target=="_top"){G.e.top.document[af]=N.href;}else{if(N.target=="_parent"){G.e.parent.document[af]=N.href;}}}}};H.Rb=function(L){if(!L){L=G.e.event;}var N=L.shiftKey||L.ctrlKey||L.altKey;if(!N){if(L.modifiers&&G.e.Event){N=L.modifiers&G.e.Event.CONTROL_MASK||L.modifiers&G.e.Event.SHIFT_MASK||L.modifiers&G.e.Event.ALT_MASK;}}return N;};H.Pc=function(){return G;};H._setDomainName=function(L){G.b=L;};H._addOrganic=function(L,N,O){G.T.splice(O?0:G.T.length,0,new b.Ha(L,N));};H._clearOrganic=function(){G.T=[];};H._addIgnoredOrganic=function(L){h(G.ta,L);};H._clearIgnoredOrganic=function(){G.ta=[];};H._addIgnoredRef=function(L){h(G.va,L);};H._clearIgnoredRef=function(){G.va=[];};H._setAllowHash=function(L){G.Ra=L?1:0;};H._setCampaignTrack=function(L){G.da=L?1:0;};H._setClientInfo=function(L){G.fa=L?1:0;};H._getClientInfo=function(){return G.fa;};H._setCookiePath=function(L){G.h=L;};H._setTransactionDelim=function(L){G.u=L;};H._setCookieTimeout=function(L){H._setCampaignCookieTimeout(L*1000);};H._setCampaignCookieTimeout=function(L){G.Ta=L;};H._setDetectFlash=function(L){G.ha=L?1:0;};H._getDetectFlash=function(){return G.ha;};H._setDetectTitle=function(L){G.ga=L?1:0;};H._getDetectTitle=function(){return G.ga;};H._setLocalGifPath=function(L){G.oa=L;};H._getLocalGifPath=function(){return G.oa;};H._setLocalServerMode=function(){G.I=0;};H._setRemoteServerMode=function(){G.I=1;};H._setLocalRemoteServerMode=function(){G.I=2;};H._getServiceMode=function(){return G.I;};H._setSampleRate=function(L){G.U=L;};H._setSessionTimeout=function(L){H._setSessionCookieTimeout(L*1000);};H._setSessionCookieTimeout=function(L){G.sb=L;};H._setAllowLinker=function(L){G.z=L?1:0;};H._setAllowAnchor=function(L){G.ba=L?1:0;};H._setCampNameKey=function(L){G.Ia=L;};H._setCampContentKey=function(L){G.Ja=L;};H._setCampIdKey=function(L){G.Ka=L;};H._setCampMediumKey=function(L){G.La=L;};H._setCampNOKey=function(L){G.Ma=L;};H._setCampSourceKey=function(L){G.Na=L;};H._setCampTermKey=function(L){G.Oa=L;};H._setCampCIdKey=function(L){G.Pa=L;};H._getAccount=function(){return H.s;};H._setAccount=function(L){H.s=L;};H._setNamespace=function(L){G.o=L?m(L):aq;};H._getVersion=function(){return al;};H._setAutoTrackOutbound=function(L){G.t=[];if(L){G.t=L;}};H._setTrackOutboundSubdomains=function(L){G.lb=L;};H._setHrefExamineLimit=function(L){G.ra=L;};H._setReferrerOverride=function(L){H.ab=L;};H._setCookiePersistence=function(L){H._setVisitorCookieTimeout(L);};H._setVisitorCookieTimeout=function(L){G.v=L;};};b._getTracker=function(v,r){return new b.aa(v,r);};var c=ar,ak={ca:{},_createAsyncTracker:function(v,r){r=r||"";v=new b.aa(v);ak.ca[r]=v;c=at;return v;},_getAsyncTracker:function(v){v=v||"";var r=ak.ca[v];if(!r){r=new b.aa;ak.ca[v]=r;c=at;}return r;},push:function(){for(var x=arguments,r=0,A=0;A<x[ap];A++){try{if(typeof x[A]==="function"){x[A]();}else{var w="",v=x[A][0],C=v.lastIndexOf(".");if(C>0){w=q(v,0,C);v=q(v,C+1);}var B=ak._getAsyncTracker(w);B[v].apply(B,x[A].slice(1));}}catch(y){r++;}}return r;}};window[ag]=b;function f(){var v=window[au],r=ar;if(v&&typeof v.push=="function"){r=v.constructor==Array;if(!r){return;}}window[au]=ak;r&&ak.push.apply(ak,v);}f();})();Date.parseFunctions={count:0};Date.parseRegexes=[];Date.formatFunctions={count:0};DOFF=new Date().getTimezoneOffset()*60;Date.prototype.dateFormat=function(b){if(Date.formatFunctions[b]==null){Date.createNewFormat(b);}var a=Date.formatFunctions[b];return this[a]();};Date.createNewFormat=function(format){var funcName="format"+Date.formatFunctions.count++,code="Date.prototype."+funcName+" = function(){return ",special=false,ch="",i;Date.formatFunctions[format]=funcName;for(i=0;i<format.length;++i){ch=format.charAt(i);if(!special&&ch=="\\"){special=true;}else{if(special){special=false;code+="'"+String.escape(ch)+"' + ";}else{code+=Date.getFormatCode(ch);}}}eval(code.substring(0,code.length-3)+";}");};Date.getFormatCode=function(a){switch(a){case"d":return"String.leftPad(this.getDate(), 2, '0') + ";case"D":return"Date.dayNames[this.getDay()].substring(0, 3) + ";case"j":return"this.getDate() + ";case"l":return"Date.dayNames[this.getDay()] + ";case"S":return"this.getSuffix() + ";case"w":return"this.getDay() + ";case"z":return"this.getDayOfYear() + ";case"W":return"this.getWeekOfYear() + ";case"F":return"Date.monthNames[this.getMonth()] + ";case"m":return"String.leftPad(this.getMonth() + 1, 2, '0') + ";case"M":return"Date.monthNames[this.getMonth()].substring(0, 3) + ";case"n":return"(this.getMonth() + 1) + ";case"t":return"this.getDaysInMonth() + ";case"L":return"(this.isLeapYear() ? 1 : 0) + ";case"Y":return"this.getFullYear() + ";case"y":return"('' + this.getFullYear()).substring(2, 4) + ";case"a":return"(this.getHours() < 12 ? 'am' : 'pm') + ";case"A":return"(this.getHours() < 12 ? 'AM' : 'PM') + ";case"g":return"((this.getHours() %12) ? this.getHours() % 12 : 12) + ";case"G":return"this.getHours() + ";case"h":return"String.leftPad((this.getHours() %12) ? this.getHours() % 12 : 12, 2, '0') + ";case"H":return"String.leftPad(this.getHours(), 2, '0') + ";case"i":return"String.leftPad(this.getMinutes(), 2, '0') + ";case"s":return"String.leftPad(this.getSeconds(), 2, '0') + ";case"O":return"this.getGMTOffset() + ";case"T":return"this.getTimezone() + ";case"Z":return"(this.getTimezoneOffset() * -60) + ";case"X":return"String.leftPad(this.getMilliseconds(), 3, '0') + ";default:return"'"+String.escape(a)+"' + ";}};Date.parseDate=function(a,d,b){if(Date.parseFunctions[d]==null){Date.createParser(d,b);}var c=Date.parseFunctions[d];return Date[c](a);};Date.createParser=function(format,utc){var funcName="parse"+Date.parseFunctions.count++,regexNum=Date.parseRegexes.length,currentGroup=1,regex="",special=false,ch="",code="Date."+funcName+" = function(input){\nvar y = -1, m = -1, d = -1, h = -1, i = -1, s = -1, x = 0;\nvar d = new Date();\ny = d.getFullYear();\nm = d.getMonth();\nd = d.getDate();\nvar results = input.match(Date.parseRegexes["+regexNum+"]);\nif (results && results.length > 0) {",i,obj;Date.parseFunctions[format]=funcName;for(i=0;i<format.length;++i){ch=format.charAt(i);if(!special&&ch=="\\"){special=true;}else{if(special){special=false;regex+=String.escape(ch);}else{obj=Date.formatCodeToRegex(ch,currentGroup,(!utc?0:DOFF));currentGroup+=obj.g;regex+=obj.s;if(obj.g&&obj.c){code+=obj.c;}}}}code+="if (y > 0 && m >= 0 && d > 0 && h >= 0 && i >= 0 && x >= 0 && "+(!utc?"s >= 0":"true")+")\n{return new Date(y, m, d, h, i, s, x);}\nelse if (y > 0 && m >= 0 && d > 0 && h >= 0 && i >= 0 && x >= 0)\n{return new Date(y, m, d, h, i, x);}\nelse if (y > 0 && m >= 0 && d > 0 && h >= 0 && i >= 0)\n{return new Date(y, m, d, h, i);}\nelse if (y > 0 && m >= 0 && d > 0 && h >= 0)\n{return new Date(y, m, d, h);}\nelse if (y > 0 && m >= 0 && d > 0)\n{return new Date(y, m, d);}\nelse if (y > 0 && m >= 0)\n{return new Date(y, m);}\nelse if (y > 0)\n{return new Date(y);}\n}return null;}";Date.parseRegexes[regexNum]=new RegExp("^"+regex+"$");eval(code);};Date.formatCodeToRegex=function(b,a,c){switch(b){case"D":return{g:0,c:null,s:"(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat)"};case"j":case"d":return{g:1,c:"d = parseInt(results["+a+"], 10);\n",s:"(\\d{1,2})"};case"l":return{g:0,c:null,s:"(?:"+Date.dayNames.join("|")+")"};case"S":return{g:0,c:null,s:"(?:st|nd|rd|th)"};case"w":return{g:0,c:null,s:"\\d"};case"z":return{g:0,c:null,s:"(?:\\d{1,3})"};case"W":return{g:0,c:null,s:"(?:\\d{2})"};case"F":return{g:1,c:"m = parseInt(Date.monthNumbers[results["+a+"].substring(0, 3)], 10);\n",s:"("+Date.monthNames.join("|")+")"};case"M":return{g:1,c:"m = parseInt(Date.monthNumbers[results["+a+"]], 10);\n",s:"(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)"};case"n":case"m":return{g:1,c:"m = parseInt(results["+a+"], 10) - 1;\n",s:"(\\d{1,2})"};case"t":return{g:0,c:null,s:"\\d{1,2}"};case"L":return{g:0,c:null,s:"(?:1|0)"};case"Y":return{g:1,c:"y = parseInt(results["+a+"], 10);\n",s:"(\\d{4})"};case"y":return{g:1,c:"var ty = parseInt(results["+a+"], 10);\ny = ty > Date.y2kYear ? 1900 + ty : 2000 + ty;\n",s:"(\\d{1,2})"};case"a":return{g:1,c:"if (results["+a+"] == 'am') {\nif (h == 12) { h = 0; }\n} else { if (h < 12) { h += 12; }}",s:"(am|pm)"};case"A":return{g:1,c:"if (results["+a+"] == 'AM') {\nif (h == 12) { h = 0; }\n} else { if (h < 12) { h += 12; }}",s:"(AM|PM)"};case"g":case"G":case"h":case"H":return{g:1,c:"h = parseInt(results["+a+"], 10);\n",s:"(\\d{1,2})"};case"i":return{g:1,c:"i = parseInt(results["+a+"], 10);\n",s:"(\\d{2})"};case"s":return{g:1,c:"s = parseInt(results["+a+"], 10)-("+c+");\n",s:"(\\d{2})"};case"X":return{g:1,c:"x = parseInt(results["+a+"], 10);\n",s:"?(\\d{1,3})?"};case"O":return{g:0,c:null,s:"[+-]\\d{4}"};case"T":return{g:0,c:null,s:"[A-Z]{3}"};case"Z":return{g:0,c:null,s:"[+-]\\d{1,5}"};default:return{g:0,c:null,s:String.escape(b)};}};Date.prototype.getTimezone=function(){return this.toString().replace(/^.*? ([A-Z]{3}) [0-9]{4}.*$/,"$1").replace(/^.*?\(([A-Z])[a-z]+ ([A-Z])[a-z]+ ([A-Z])[a-z]+\)$/,"$1$2$3");};Date.prototype.getGMTOffset=function(){return(this.getTimezoneOffset()>0?"-":"+")+String.leftPad(Math.floor(this.getTimezoneOffset()/60),2,"0")+String.leftPad(this.getTimezoneOffset()%60,2,"0");};Date.prototype.getDayOfYear=function(){var a=0,b;Date.daysInMonth[1]=this.isLeapYear()?29:28;for(b=0;b<this.getMonth();++b){a+=Date.daysInMonth[b];}return a+this.getDate()-1;};Date.prototype.getWeekOfYear=function(){var b=this.getDayOfYear()+(4-this.getDay()),a=new Date(this.getFullYear(),0,1),c=(7-a.getDay()+4);document.write(c);return String.leftPad(((b-c)/7)+1,2,"0");};Date.prototype.isLeapYear=function(){var a=this.getFullYear();return((a&3)==0&&(a%100||(a%400==0&&a)));};Date.prototype.getFirstDayOfMonth=function(){var a=(this.getDay()-(this.getDate()-1))%7;return(a<0)?(a+7):a;};Date.prototype.getLastDayOfMonth=function(){var a=(this.getDay()+(Date.daysInMonth[this.getMonth()]-this.getDate()))%7;return(a<0)?(a+7):a;};Date.prototype.getDaysInMonth=function(){Date.daysInMonth[1]=this.isLeapYear()?29:28;return Date.daysInMonth[this.getMonth()];};Date.prototype.getSuffix=function(){switch(this.getDate()){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th";}};String.escape=function(a){return a.replace(/('|\\)/g,"\\$1");};String.leftPad=function(d,b,c){var a=new String(d);if(c==null){c=" ";}while(a.length<b){a=c+a;}return a;};Date.daysInMonth=[31,28,31,30,31,30,31,31,30,31,30,31];Date.monthNames=["January","February","March","April","May","June","July","August","September","October","November","December"];Date.dayNames=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];Date.y2kYear=50;Date.monthNumbers={Jan:0,Feb:1,Mar:2,Apr:3,May:4,Jun:5,Jul:6,Aug:7,Sep:8,Oct:9,Nov:10,Dec:11};Date.patterns={ISO8601LongPattern:"Y-m-d H:i:s",ISO8601ShortPattern:"Y-m-d",ShortDatePattern:"n/j/Y",LongDatePattern:"l, F d, Y",FullDateTimePattern:"l, F d, Y g:i:s A",MonthDayPattern:"F d",ShortTimePattern:"g:i A",LongTimePattern:"g:i:s A",SortableDateTimePattern:"Y-m-d\\TH:i:s",UTC:"Y-m-d\\TH:i:s\\Z",UTCM:"Y-m-d\\TH:i:s.X\\Z",UniversalSortableDateTimePattern:"Y-m-d H:i:sO",YearMonthPattern:"F, Y"};Date.prototype.clone=function(){return new Date(this.getTime());};Date.prototype.compareTo=function(a){if(isNaN(this)){throw new Error(this);}else{if(a instanceof Date&&!isNaN(a)){return(this>a)?1:(this<a)?-1:0;}}throw new TypeError(a);};Date.prototype.pretty=function(){var c=this.getTime(),b=(((new Date()).getTime()-c)/1000),a=Math.floor(b/86400);if(isNaN(a)||a<0||a>=31){return this.dateFormat("d M Y, H:i");}return a==0&&(b<60&&"just now"||b<120&&"1 minute ago"||b<3600&&Math.floor(b/60)+" minutes ago"||b<7200&&"1 hour ago"||b<86400&&Math.floor(b/3600)+" hours ago")||a==1&&"Yesterday"||a<7&&a+" days ago"||a<31&&Math.ceil(a/7)+" weeks ago";};GSFN={feedback:function(b){this.feedback_url=b;this.tab_html='<a href="#" id="fdbk_tab">FEEDBACK</a>';this.overlay_html='<div id="fdbk_overlay" style="display:none"><div id="fdbk_container"><a href="#" onclick="GSFN.hide();return false" id="fdbk_close"></a><iframe src="" id="fdbk_iframe" allowTransparency="true" scrolling="no" frameborder="0"></iframe></div><div id="fdbk_screen"></div></div>';var a=document.getElementsByTagName("body")[0];this.gId("fdbk_tab").onclick=function(){GSFN.show();return false;};this.gId("fdbk_iframe").setAttribute("src","");},set_position:function(){this.scroll_top=document.documentElement.scrollTop||document.body.scrollTop;this.scroll_height=document.documentElement.scrollHeight;this.client_height=window.innerHeight||document.documentElement.clientHeight;this.gId("fdbk_screen").style.height=this.scroll_height+"px";this.gId("fdbk_container").style.top=this.scroll_top+(this.client_height*0.1)+"px";},show:function(){if(this.gId("fdbk_iframe").getAttribute("src")==""){this.gId("fdbk_iframe").setAttribute("src",this.feedback_url);if(this.gId("fdbk_iframe").addEventListener){this.gId("fdbk_iframe").addEventListener("load",GSFN.loaded,false);}else{if(this.gId("fdbk_iframe").attachEvent){this.gId("fdbk_iframe").detachEvent("onload",GSFN.loaded);this.gId("fdbk_iframe").attachEvent("onload",GSFN.loaded);}}}this.set_position();this.gId("fdbk_overlay").style.display="block";},hide:function(){this.gId("fdbk_overlay").style.display="none";},loaded:function(){GSFN.gId("fdbk_iframe").className="loaded";},gId:function(a){return document.getElementById(a);}};BASIC=0;MIN=1;MAX=2;PERSON_TYPE="user";PLACE_TYPE="place";DERIVED_TYPE="derived";FACEBOOK_APP_TYPE="facebookapp";TAG_TYPE="tag";TOPIC_TYPE="topic";FACEBOOK_PERSON_TYPE="facebook/view";NEW=0;INITIALIZED=1;MID=2;VISIBLE=3;MAXIMIZED=4;DELETED=5;DP=[Date.patterns.ISO8601LongPattern,Date.patterns.UTC,Date.patterns.UTCM];APP_TYPE={LB_UI:0,LB_AUTO:1,PICASA:11,FLICKR:12,SMUGMUG:13,FACEBOOK_PHOTOS:14,PHOTOBUCKET:16,BLOG:20,MAIL:40,GMAIL:41,YMAIL:42,AOL:45,LIVE:43,FACEBOOK:44,YOUTUBE:51,TWITTER:61,FREEBASE:100,DAYLIFE:101,SUGGEST:9,NONPERSISTENT:15};EMAIL_REGEX=new RegExp("\\b(^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@([A-Za-z0-9-])+(\\.[A-Za-z0-9-]+)*((\\.[A-Za-z0-9]{2,})|(\\.[A-Za-z0-9]{2,}\\.[A-Za-z0-9]{2,}))$)\\b","g");TIMELINE_COMMENTS_PER_PAGE=5;TIMELINE_COMMENTS_PER_BLOCK=100;NEW_POST_DELTA=3600000*24;dojo.declare("Suggest",null,{constructor:function(f,a,d,b){var e=this;e.iv=b.initialValues||[];e.c=f;e.type=d;e.cb=b.callbacks||{};e.clazz=b.clazz;e.additional=b.additional;e.n=a;e.nv=b.newValueText||"";e.ss=b.singleSelect||false;e.h=b.helpText||"";e.data={user:"suggest.friends",topic:"suggest.topics",tags:"suggest.tags","user.name":"suggest.friends.name","user.email":"suggest.friends.email","suggest.all":"suggest.all","suggest.fb":"suggest.fb"};},addAdditionals:function(c){var a=this.additional,b;if(a){for(b=0;b<a.length;b++){c.push(a[b]);}}return c;},initialize:function(){Suggest.count++;var b=this,a=b.data[b.type];try{if(!cm.get(a)){Suggest.init();}b.dd=new DropDown();b.dd.initialize(b.c,b.n,b.iv,b.addAdditionals(cm.get(a)),b.nv,b.h,b.ss,b.cb,b.clazz);}catch(c){console.log("exception in suggest init");console.log(c);}},clear:function(a){if(this.dd){this.dd.clear(a);}},addSelected:function(a){if(this.dd){this.dd.addSelected(a);}}});Suggest.count=0;Suggest.init=function(){try{if(!cm.get("addressbook.friends")){var l=[],a=[],b=[],c=[],h=[],m={},d={},f=LB.getUser();if(f.logged){var g=f.person;g.type=1;l.push({key:g.name,value:{k:"id",v:g.id},original:g});l.push({key:"Me",value:{k:"id",v:g.id},original:g});h.push({key:g.name,value:{k:"id",v:g.id},original:g});h.push({key:"Me",value:{k:"id",v:g.id},original:g});c.push({key:"My Timeline",value:{k:"pid",v:g.id},original:g});m[g.id]=g;}cm.put("addressbook.imports",a);cm.put("addressbook.friends",l);cm.put("addressbook.friends.idmap",m);cm.put("addressbook.friends.fidmap",d);cm.put("user.name",l);cm.put("user.email",a);cm.put("user.topics",b);cm.put("suggest.fb",[]);cm.put("suggest.all",c);cm.put("suggest.topics",b);cm.put("suggest.tags",[]);cm.put("suggest.friends",h);cm.put("suggest.friends.name",l);cm.put("suggest.friends.email",a);cm.put("suggest.newemails",{});}}catch(k){console.log("error in suggest.load");console.log(k);}};Suggest.flush=function(){if(cm){cm.put("suggest.friends",null);cm.put("suggest.topics",null);cm.put("suggest.tags",null);cm.put("suggest.friends.name",null);cm.put("suggest.friends.email",null);cm.put("user.allsuggest",null);cm.put("addressbook.friends",null);}};Suggest.fetchTags=function(){try{if(!cm.get("tags.loaded")){console.log("Fetching Tags");cm.put("tags.loaded",true);var c=cm.get("suggest.tags"),a=LB.getUser(),b,h=1;if(a.logged){b=a.person.id;if(window.th&&th.opts){var g=th.opts.obj,d=g.type;h=(d==TOPIC_TYPE)?4:((d==PLACE_TYPE)?2:((d==TAG_TYPE)?3:1));if(h!=1){b=g.id;}}API_SVC.getTags(h,b).addCallback(function(l){if(l.stat!="ok"){return;}var k=l.result,o=k.length,e,m;for(m=0;m<o;m++){e=k[m];c.push({key:e.name,value:{k:"name",v:e.displayName},original:e});}});dojo.publish("suggest.rebuild");}}}catch(f){console.log("error in suggest.fetchTags");console.log(f);}};Suggest.fetchAddressBook=function(){try{API_SVC.addressbook().addCallback(function(g){if(g.stat!="ok"){console.log("Error. Code:"+g.code+" Desc:"+g.desc);return;}var u=g.result,k=u.imports,h=u.people,q=u.topics,t=cm.get("addressbook.friends"),b=cm.get("addressbook.imports"),d=cm.get("user.topics"),r=cm.get("addressbook.friends.idmap"),f=cm.get("addressbook.friends.fidmap"),e=cm.get("suggest.all"),m=cm.get("suggest.friends"),l;for(l=0;l<k.length;l++){var o=k[l];o.type=10;b.push({key:o.email,value:{k:"email",v:o.email},original:o});e.push({key:o.email,value:{k:"email",v:o.email},original:o});m.push({key:o.email,value:{k:"email",v:o.email},original:o});}for(l=0;l<h.length;l++){var c=h[l];c.type=1;t.push({key:c.name,value:{k:"id",v:c.id},original:c});e.push({key:c.name,value:{k:"pid",v:c.id},original:c});m.push({key:c.name,value:{k:"id",v:c.id},original:c});r[c.id]=c;if(c.fbid){f[c.fbid]=c;}}for(l=0;l<q.length;l++){var p=q[l];p.type=2;d.push({key:p.name,value:{k:"id",v:p.id},original:p});e.push({key:p.name,value:{k:"tid",v:p.id},original:p});}d.sort(function(w,v){return w.original.name.localeCompare(v.original.name);});dojo.publish("suggest.rebuild");});}catch(a){console.log("error in suggest.fetchAddressBook");console.log(a);}};Suggest.getEmails=function(l,f){var e=true,c=[],a=cm.get("addressbook.imports"),b=cm.get("suggest.all"),d=cm.get("suggest.friends"),g=cm.get("suggest.newemails"),k,h=false;dojo.query(l,f).forEach(function(m){k=m.value;if(!ut.getEmail(k)){dojo.addClass(m.parentNode,"sugg_error");e=false;}else{c.push(k);if(dojo.attr(m,"suggested")&&!g[k]){var o={name:k,email:k};a.push({key:k,value:{k:"email",v:k},original:o});b.push({key:k,value:{k:"email",v:k},original:o});d.push({key:k,value:{k:"email",v:k},original:o});h=true;g[k]=true;}}});if(h){dojo.publish("suggest.rebuild");}return e?c:false;};function DropDown(){this.data=[];this.dataIndex=[];this.suggestOpen=false;this.floater;this.floaterContent;this.max_matches=10;var a=this;this.initialize=function(d,c,h,l,m,r,g,q,o){this.data=l;this.container=d;this.singleSelect=g;this.enableNew=(m.length!=0);this.newValueText=m;var u=document.createElement("ul");dojo.addClass(u,"sugg_cont");dojo.place("<li class='spacer'></li>",u);var f=document.createElement("input");dojo.addClass(f,"suggest_text_box");dojo.attr(f,"type","text");dojo.attr(f,"autocomplete","off");var e=dojo.place("<li></li>",u);e.appendChild(f);d.appendChild(u);var p=document.createElement("div");dojo.addClass(p,o||"suggest_holder");this.floaterContent=document.createElement("div");p.appendChild(this.floaterContent);dojo.connect(p,"keydown",this,"handleKeyDown");dojo.connect(p,"keyup",this,"handleKeyPress");dojo.place(p,u,"after");dojo.connect(f,"keydown",this,"handleKeyDown");dojo.connect(f,"keyup",this,"handleKeyPress");dojo.connect(f,"focus",this,"handleFocus");dojo.connect(f,"blur",this,"handleBlur");if(r.length>0){var b=document.createElement("div");b.appendChild(document.createTextNode(r));dojo.addClass(b,"suggest_help_text");dojo.place(b,u,"after");dojo.addClass(b,"hidden");this.helpTextNode=b;}dojo.connect(document,"mouseup",this,"handleClick");dojo.connect(document,"mouseover",this,"handleMouseOver");if(q){if(q.onselect){dojo.connect(this,"afterActivateCurrentSmartInputMatch",q.onselect);}if(q.onenter){dojo.connect(this,"nonSuggestionCreate",q.onenter);}if(q.onhide){dojo.connect(this,"hideSmartInputFloater",q.onhide);}if(q.onshow){dojo.connect(this,"showSmartInputFloater",q.onshow);}}dojo.connect(this,"afterActivateCurrentSmartInputMatch",this,"verifySingleSelect");dojo.connect(this,"nonSuggestionCreate",this,"verifySingleSelect");dojo.connect(this.container,"keydown",this,"mainContainerKeyPress");dojo.connect(this.container,"onclick",this,"textBoxFocus");this.count=0;this.sequence=0;this.fieldCont=u;this.inputBox=f;this.inputBoxHolder=e;this.name=c;this.floater=p;for(var k=0;k<h.length;k++){var t=h[k];dojo.place(this.createSuggestion(t.key,t.value,t.original,!t.disabled),e,"before");}dojo.subscribe("suggest.rebuild",null,function(){a.dataIndex=[];delete (a.revisedCollection);});};this.addSelected=function(c){for(var b=0;b<c.length;b++){dojo.place(this.createSuggestion(c[b].key,c[b].value,c[b].original,!c[b].disabled),this.inputBoxHolder,"before");}};this.verifySingleSelect=function(){dojo.query("li.sugg_hold",this.containerDiv).forEach(function(d,c,b){if((c==0)&&a.singleSelect){dojo.addClass(a.inputBox,"hidden");}});};this.mainContainerKeyPress=function(c){var b=c.keyCode;if(b){switch(c.keyCode){case 46:this.deleteFocus();break;case 8:if(this.inputBox.value.length==0){this.setLastFocus();}break;case 37:this.moveLeft();break;case 39:this.moveRight();break;}}};this.textBoxFocus=function(b){if(!dojo.hasClass(this.inputBox,"hidden")){this.inputBox.focus();}};this.suggestionUnselect=function(b){dojo.query(".sugg_focus",this.containerDiv).removeClass("sugg_focus");};this.suggestionSelect=function(b){this.suggestionUnselect();dojo.addClass(b.currentTarget,"sugg_focus");};this.moveLeft=function(){var b=0;dojo.query(".sugg_focus",this.containerDiv).forEach(function(c){b=parseInt(c.getAttribute("index"));});if(b>1){this.suggestionUnselect();this.selectSuggestionIndex(b-1);}};this.moveRight=function(){var b=this.count;dojo.query(".sugg_focus",this.containerDiv).forEach(function(c){b=parseInt(c.getAttribute("index"));});if(b<this.count){this.suggestionUnselect();this.selectSuggestionIndex(b+1);}};this.selectSuggestionIndex=function(b){dojo.query("[index="+b+"]",this.containerDiv).addClass("sugg_focus");};this.hasSuggests=function(){return dojo.query(".suggest_holder",this.containerDiv).length>0;};this.hasFocus=function(){return dojo.query(".sugg_focus",this.containerDiv).length>0;};this.deleteFocus=function(){dojo.query(".sugg_focus",this.containerDiv).orphan();dojo.removeClass(this.inputBox,"hidden");this.updateIndices();};this.setLastFocus=function(){this.suggestionUnselect();if(this.hasSuggests()){dojo.query("[index="+this.count+"]",this.containerDiv).addClass("sugg_focus");}};this.addSuggestion=function(f,e,c,d,b){dojo.place(this.createSuggestion(f,e,c,d,b),this.inputBoxHolder,"before");};this.updateIndices=function(){var b=this;b.count=0;dojo.query(".sugg_hold").forEach(function(c){b.count++;c.setAttribute("index",b.count);});};this.createSuggestion=function(m,k,b,g,d){var h=this,f=document.createElement("li"),e;dojo.addClass(f,"sugg_hold");f.innerHTML=m+" ";if(g){dojo.connect(f,"onclick",h,"suggestionSelect");h.sequence++;dojo.attr(f,"seq","suggest_"+h.sequence);var o=document.createElement("img");dojo.addClass(o,"remove");o.src="http://cdn0.lifeblob.com/lifeblob/img/theme-gray/common/suggest/delete.v9406d0.png";o.title="Delete";dojo.attr(o,"del",h.sequence);f.appendChild(o);dojo.connect(o,"onclick",function(p){dojo.query("[seq=suggest_"+dojo.attr(p.currentTarget,"del")+"]",f.parentNode).orphan();dojo.removeClass(h.inputBox,"hidden");});if(b&&b.type==4){dojo.addClass(f,"sugg_fb");}}else{dojo.addClass(f,"sugg_readonly");f.title="Cannot remove";}var c=["<input name='",h.name,k.k,"' value='",k.v,"' type='hidden'/>"].join(""),l=dojo.place(c,f);for(e in d){dojo.attr(l,e,d[e]);}return f;};this.nonSuggestionCreate=function(){};this.freezeEvent=function(b){dojo.stopEvent(b);return false;};this.isWithinNode=function(h,d,l,b,g){var f=false,k=h;while(k&&!f){if((k.id&&(k.id==d))||(k.className&&(k.className==d+"Class"))||(!b&&l&&k.className&&(k.className==l))||(!b&&l&&k.className&&(k.className.indexOf(l)!=-1))||(b&&k.tagName&&(k.tagName.toLowerCase()==b))||(g&&(k==g))){f=k;}else{k=k.parentNode;}}return k;};this.handleKeyPress=function(d){if(this.helpTextNode){dojo.addClass(this.helpTextNode,"hidden");}var c=d.keyCode,b=this.inputBox;if(this.suggestOpen&&((c==13)||(c==9))){this.selectingSomething=true;if(dojo.isSafari){b.blur();}b.focus();b.value=b.value.replace(/[ \r\n\t\f\s]+$/gi," ");this.hideSmartInputFloater();}else{if(d.target&&(c!=38)&&(c!=40)&&(c!=37)&&(c!=39)&&(c!=13)&&(c!=27)){if(!this.suggestOpen||(this.suggestOpen&&!this.selectingSomething)){this.processSmartInput(d.target);}}else{if(this.suggestOpen&&b){b.focus();}}}};this.handleKeyDown=function(d){if(this.helpTextNode){dojo.addClass(this.helpTextNode,"hidden");}var c=d.keyCode,b=this.inputBox,f=this.newValueText;if(this.suggestOpen&&c){if(c==40){this.selectingSomething=true;this.freezeEvent(d);if(dojo.isGecko){b.blur();}this.selectNextSmartInputMatchItem();}else{if(c==38){this.selectingSomething=true;this.freezeEvent(d);if(dojo.isGecko){b.blur();}this.selectPreviousSmartInputMatchItem();}else{if((c==13)||(c==9)){this.selectingSomething=true;this.activateCurrentSmartInputMatch();this.hideSmartInputFloater();this.afterActivateCurrentSmartInputMatch();this.freezeEvent(d);}else{if(c==27){this.hideSmartInputFloater();this.freezeEvent(d);}else{if(c==188&&b.value.length>0&&this.enableNew){var e={k:f,v:b.value};this.addSuggestion(b.value,e,null,true,{suggested:"false"});this.inputBox.value="";this.freezeEvent(d);this.nonSuggestionCreate();}else{this.selectingSomething=false;}}}}}}else{if((c==188||c==9||c==13)&&b.value.length>0&&this.enableNew){var e={k:f,v:b.value};this.addSuggestion(b.value,e,null,true,{suggested:"false"});b.value="";this.freezeEvent(d);this.nonSuggestionCreate();}}};this.handleFocus=function(b){if(!this.suggestOpen||(this.suggestOpen&&!this.selectingSomething)){this.processSmartInput(b.target);}if(dojo.style(this.floater,"display")=="none"&&this.helpTextNode){dojo.removeClass(this.helpTextNode,"hidden");}};this.handleBlur=function(d){if(this.helpTextNode){dojo.addClass(this.helpTextNode,"hidden");}var b=this.inputBox,f=this.newValueText,c=this.enableNew;if(this.suggestOpen&&!this.selectingSomething){this.hideSmartInputFloater();if(b.value.length>0&&c){var e={k:f,v:b.value};this.addSuggestion(b.value,e,null,true,{suggested:"false"});this.nonSuggestionCreate();}b.value="";return;}if(!this.suggestOpen){if(b.value.length>0&&c){var e={k:f,v:b.value};this.addSuggestion(b.value,e,null,true,{suggested:"false"});this.nonSuggestionCreate();}b.value="";return;}b.value="";return;};this.handleClick=function(b){if(this.suggestOpen&&this.selectingSomething){this.selectFromMouseClick();}};this.handleMouseOver=function(b){if(this.suggestOpen&&(mEl=this.isWithinNode(b.target,null,"match_suggest_item",null,null))){this.selectingSomething=true;this.selectFromMouseOver(mEl);}else{if(this.suggestOpen){this.selectingSomething=false;}}};this.showSmartInputFloater=function(){if(dojo.style(this.floater,"display")=="none"){dojo.style(this.floater,"display","block");}};this.hideSmartInputFloater=function(){if(this.suggestOpen){dojo.style(this.floater,"display","none");this.suggestOpen=false;}};this.processSmartInput=function(b){if(!this.suggestOpen){this.suggestOpen=true;this.customFloater=false;this.select_suggest_item=null;}this.inputBox=b;this.setSmartInputData();if(this.matchCollection&&(this.matchCollection.length>0)){this.selectSmartInputMatchItem(0);}var c=this.getSmartInputBoxContent();if(c){this.modifySmartInputBoxContent(c);this.showSmartInputFloater();}else{this.hideSmartInputFloater();}};this.smartInputMatch=function(c,d,b){this.key=c;this.value=d;this.original=b;this.isSelected=false;};this.simplify=function(b){return b.replace(/^[ \s\f\t\n\r]+/,"").replace(/[ \s\f\t\n\r]+$/,"");};this.getUserInputToMatch=function(d){var c=d;if(c){var b=d.split(",");if(b.length>0){c=b[b.length-1];}}return c;};this.getUserInputBase=function(){var b=this.inputBox.value;if((lastComma=b.lastIndexOf(","))!=-1){b=b.replace(/^(.*\,[ \r\n\t\f\s]*).*$/i,"$1");}else{b="";}return b;};this.runMatchingLogic=function(g,e){var g=this.simplify(g),l=g.charAt(0).toLowerCase();if(l=='"'){l=(n=g.charAt(1))?n.toLowerCase():"z";}if(e){g=l;}if(this.suggestOpen){this.matchCollection=new Array();}var c=this.data;if(this.suggestOpen&&this.revisedCollection&&(this.revisedCollection.length>0)&&this.lastUserInput&&(g.indexOf(this.lastUserInput)==0)){c=this.revisedCollection;}else{if(this.dataIndex[g]&&(this.dataIndex[g].length>0)){c=this.dataIndex[g];}else{if(this.dataIndex[l]&&(this.dataIndex[l].length>0)){c=this.dataIndex[l];}else{if(this.suggestOpen&&(g.length==1)&&(!this.dataIndex[l])){this.buildIndex=true;}else{if(this.suggestOpen){this.buildIndex=false;}}}}}var m=new Array(),k=new RegExp('^([ "><-]*)('+g+")","i"),d=new RegExp('([ "><-]+)('+g+")","i"),p,o,b,q,h,f;for(h=0,f=0;(h<c.length);h++){p=((!e)&&(f<this.max_matches));o=c[h];b=this.simplify(o.key);if(!e&&(b.indexOf(g)==0)){g=g.replace(/\>/gi,"\\}").replace(/\< ?/gi,"\\{");q=new RegExp("("+g+")","i");if(p){this.matchCollection[f]=new this.smartInputMatch(o.key,o.value,o.original);}m[f]=o;f++;}else{if(b.match(k)||b.match(d)){if(!e&&p){this.matchCollection[f]=new this.smartInputMatch(o.key,o.value,o.original);}m[f]=o;f++;}}}if(m.length>1){m.sort(function(t,r){return t.original.type-r.original.type;});}if(this.suggestOpen){this.lastUserInput=g;this.revisedCollection=m;this.dataIndex[g]=m;}if(e||this.buildIndex){this.dataIndex[l]=m;if(this.suggestOpen){this.buildIndex=false;}}};this.setSmartInputData=function(){if(this.suggestOpen){var c=this.inputBox.value;c=this.getUserInputToMatch(c);if(typeof c=="undefined"){return;}var b=c.toLowerCase().replace(/[\r\n\t\f\s]+/gi," ").replace(/^ +/gi,"").replace(/ +$/gi,"").replace(/ +/gi," ").replace(/\\/gi,"").replace(/\[/gi,"").replace(/\(/gi,"").replace(/\./gi,".").replace(/\?/gi,"");if(b&&(b!="")&&(b!='"')){this.runMatchingLogic(b);}else{this.matchCollection=null;}}};this.getSmartInputBoxContent=function(){var h=null,c=this.matchCollection,f;if(this.suggestOpen&&c&&(c.length>0)){h=[];for(f=0;f<c.length;f++){var b=c[f],d=(b.isSelected?" select_suggest_item":""),k=b.key.replace(/\{ */gi,"&lt;").replace(/\} */gi,"&gt;"),e=b.original,g=e.type;if(g==1){h.push("<div class='match_suggest_item",d,"'><img src='",ut.getProfileURL(e,"small",PERSON_TYPE),"'/><div><span>",k,"</span><small>Person</small></div></div>");}else{if(g==2){h.push("<div class='match_suggest_item",d,"'><img src='",ut.getProfileURL(e,"small",TOPIC_TYPE),"'/><div><span>",k,"</span><small>Lifeblob</small></div></div>");}else{if(g==4){h.push("<div class='match_suggest_item",d,"'><img src='",e.pic_square,"'/><div><span>",k,"</span><small>Facebook User</small></div></div>");}else{h.push("<div class='match_suggest_item",d,"'>",k,"</div>");}}}}h=(h.length>2)?h.join(""):"";}return h;};this.modifySmartInputBoxContent=function(b){this.floaterContent.innerHTML='<div class="suggestResults">'+b+"</div>";};this.selectFromMouseOver=function(d){var b=this.getCurrentlyselect_suggest_item();if(b!=null){this.deSelectSmartInputMatchItem(b);}var c=this.getIndexFromElement(d);this.selectSmartInputMatchItem(c);this.modifySmartInputBoxContent(this.getSmartInputBoxContent());};this.selectFromMouseClick=function(){this.activateCurrentSmartInputMatch();this.inputBox.focus();this.hideSmartInputFloater();this.afterActivateCurrentSmartInputMatch();};this.getIndexFromElement=function(c){var b=0;while(c=c.previousSibling){b++;}return b;};this.getCurrentlyselect_suggest_item=function(){var c=null;for(var b=0;((b<this.matchCollection.length)&&!c);b++){if(this.matchCollection[b].isSelected){c=b;}}return c;};this.selectSmartInputMatchItem=function(b){this.matchCollection[b].isSelected=true;};this.deSelectSmartInputMatchItem=function(b){this.matchCollection[b].isSelected=false;};this.selectNextSmartInputMatchItem=function(){var b=this.getCurrentlyselect_suggest_item();if(b!=null){this.deSelectSmartInputMatchItem(b);if((b+1)<this.matchCollection.length){this.selectSmartInputMatchItem(b+1);}else{this.selectSmartInputMatchItem(0);}}else{this.selectSmartInputMatchItem(0);}this.modifySmartInputBoxContent(this.getSmartInputBoxContent());};this.selectPreviousSmartInputMatchItem=function(){var b=this.getCurrentlyselect_suggest_item();if(b!=null){this.deSelectSmartInputMatchItem(b);if((b-1)>=0){this.selectSmartInputMatchItem(b-1);}else{this.selectSmartInputMatchItem(this.matchCollection.length-1);}}else{this.selectSmartInputMatchItem(this.matchCollection.length-1);}this.modifySmartInputBoxContent(this.getSmartInputBoxContent());};this.activateCurrentSmartInputMatch=function(){if((selIndex=this.getCurrentlyselect_suggest_item())!=null){var b=this.matchCollection[selIndex];dojo.place(this.createSuggestion(b.key,b.value,b.original,true),this.inputBoxHolder,"before");this.inputBox.value="";this.runMatchingLogic(b.key,true);this.updateIndices();}};this.afterActivateCurrentSmartInputMatch=function(){};this.clear=function(b){dojo.query(".sugg_hold",this.container).orphan();dojo.removeClass(this.inputBox,"hidden");this.inputBox.value="";if(b){this.inputBox.focus();}};}dojo.require("dojo.number");dojo.declare("Util",null,{pp:new RegExp("lh[0-9]+.(google|ggpht).com"),fp:new RegExp("farm[0-9]+.static.flickr.com"),sp:new RegExp("smugmug.com"),fbp:new RegExp("freebase.com/api/trans/raw"),arrowRegex:new RegExp("<(.*)>"),nameRegex:new RegExp('(".*" )(.*)'),SAFECHARS:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_.!~*'()",HEX:"0123456789ABCDEF",HEXCHARS:"0123456789ABCDEFabcdef",digits:"0123456789",phoneNumberDelimiters:"()- ",validWorldPhoneChars:"()- +",minDigitsInIPhoneNumber:10,picVersion:{small:25,medium:50,large:100},selfTimelinePopupShown:false,facebookMemoirCounter:0,getAppIcon:function(a){switch(a){case 3:return"email_icon";case 11:return"picasa_icon";case 12:return"flickr_icon";case 13:return"smugmug_icon";case 20:return"blog_icon";case 21:return"blogger_icon";case 40:return"mail_icon";case 41:return"gmail_icon";case 42:return"yahoo_icon";case 43:return"live_icon";case 51:return"youtube_icon";case 61:return"facebook_icon";case 100:return"freebase_icon";}},getAppName:function(a){switch(a){case 3:return M.APP_EMAIL;case 11:return M.APP_PICASA;case 12:return M.APP_FLICKR;case 13:return M.APP_SMUG;case 14:return M.APP_FACEBOOK_PHOTOS;case 16:return M.APP_PHOTO_BUCKET;case 44:return M.APP_FACEBOOK;case 20:return M.APP_BLOG;case 21:return M.APP_BLOG;case 40:return M.APP_MAILS;case 41:return M.APP_GMAIL;case 42:return M.APP_YAHOO;case 45:return M.APP_AOL;case 43:return M.APP_HOTMAIL;case 51:return M.APP_YOUTUBE;case 61:return M.APP_TWITTER;default:return M.APP_UNKNOWN;}},getEmail:function(a){if(!a){return false;}var b=a.toLowerCase();b=b.replace(this.arrowRegex,"$1");b=b.replace(this.nameRegex,"$2");if(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(b)){return b;}return false;},getStaticOffset:function(a){return(dojo.isString(a)?a.charCodeAt(0):a)%4;},getProfileURL:function(c,a,b){switch(b||c.type){case PERSON_TYPE:if(c.picUrl&&c.picUrl!=""){return c.picUrl;}if(c.pic){return["http://cdn",ut.getStaticOffset(c.id),".lifeblob.com/lifeblob/pic/",c.id,"/",a,".v",c.pic,".jpg"].join("");}else{return"http://cdn0.lifeblob.com/lifeblob/pic/default/"+a+".v2.jpg";}break;case PLACE_TYPE:return["http://cdn",ut.getStaticOffset(c.id),".lifeblob.com/lifeblob/img/common/place-50.png"].join("");break;case TAG_TYPE:return["http://cdn",ut.getStaticOffset(c.id),".lifeblob.com/lifeblob/img/common/tag-50.png"].join("");break;case TOPIC_TYPE:if(c.ext_pic&&c.ext_pic!=""){if(this.fbp.test(c.ext_pic)){return c.ext_pic.replace(/^(.*)\/raw\/(.*)$/i,"$1/image_thumb/$2?maxwidth="+this.picVersion[a]);}return c.ext_pic;}if(c.pic){return["http://cdn",ut.getStaticOffset(c.id),".lifeblob.com/lifeblob/topic_pic/",c.id,"/",a,".v",c.pic,".jpg"].join("");}else{return"http://cdn0.lifeblob.com/lifeblob/topic_pic/default/"+a+".v2.jpg";}}},scale:function(f,a,k,d){var b=(a&&!k)?"width":((k&&!a)?"height":((k&&a&&(f.width/f.height<a/k))?"width":"height")),l={width:f.width,height:f.height},c,h;d=d||{noalign:false};h=d.key;switch(b){case"width":if(f.width>a){l.width=a;l.height=f.height*a/f.width;dojo.style(f,"width",a+"px");}break;case"height":if(f.height>k){l.height=k;l.width=f.width*k/f.height;dojo.style(f,"height",k+"px");}if(a&&!d.noalign){c=(a-l.width)/2;l.marginLeft=c;dojo.style(f,"marginLeft",c+"px");}break;}if(h&&window.cm){var g="imageSizeCache",e=cm.get(g);if(!e){e={};cm.put(g,e);}e[h]=l;}return l;},scaleFixed:function(c,f,a,b){var e=(f&&!a)?"width":((a&&!f)?"height":((a&&f&&(c.width/c.height<f/a))?"height":"width"));var d={width:c.width,height:c.height};switch(e){case"width":if(c.width>f){d.width=f;d.height=c.height*f/c.width;dojo.style(c,"width",f+"px");}break;case"height":if(c.height>a){d.height=a;d.width=c.width*a/c.height;dojo.style(c,"height",a+"px");}if(f&&!b){dojo.style(c,"marginLeft",(f-d.width)/2+"px");}break;}return d;},getVideoEmbedCode:function(d,c,a,b){d=ut.escapeHTML(d);var e='<embed src="'+d+'&hl=en&fs=1&rel=0&autoplay=1" type="application/x-shockwave-flash" allowfullscreen="true" width="${0}" height="${1}"></embed>';if(!dojo.isIE||(dojo.isIE>=7)){e='<object width="${0}" height="${1}"><param name="movie" value="'+d+'&hl=en&fs=1&rel=0&autoplay=1"></param><param name="allowFullScreen" value="true"></param>'+e+"</object>";}switch(parseInt(b)){case APP_TYPE.YOUTUBE:c=c||650;a=a||365;default:c=c||425;a=a||350;}return[dojo.string.substitute(e,[c,a]),c,a];},getImageURL:function(l,d,r,u,g){var e=this,k=ut.escapeHTML(l),f=Math.max(d,r),o,q;if(k.indexOf("http://")==0){if(e.fp.test(k)){k=k.replace(/^(.*)((_m|_s|_b|_t).jpg)$/,"$1.jpg");if(f<=75){return k.replace(/^(.*)(.jpg)$/,"$1_s.jpg");}else{if(f<=100){return k.replace(/^(.*)(.jpg)$/,"$1_t.jpg");}else{if(f<=240){return k.replace(/^(.*)(.jpg)$/,"$1_m.jpg");}else{if(f<=580){return k;}else{if(f<=1024){return k.replace(/^(.*)(.jpg)$/,"$1_b.jpg");}}}}}}else{if(e.pp.test(k)){if(k.indexOf("s512")!=-1){return k;}else{if(f<=72){return k.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s72$2");}else{if(f<=144){return k.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s144$2");}else{if(f<=288){return k.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s288$2");}else{if(f<=576){return k.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s576$2");}else{if(f<=720){return k.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s720$2");}}}}}}}else{if(e.sp.test(k)){if(f<=100){return k.replace(/^(.*)-(.*)\.(.*)$/i,"$1-Ti.$3");}else{if(f<=150){return k.replace(/^(.*)-(.*)\.(.*)$/i,"$1-Th.$3");}else{if(f<=400){return k.replace(/^(.*)-(.*)\.(.*)$/i,"$1-S.$3");}else{if(f<=600){return k.replace(/^(.*)-(.*)\.(.*)$/i,"$1-M.$3");}else{if(f<=800){return k.replace(/^(.*)-(.*)\.(.*)$/i,"$1-L.$3");}else{if(f<=1024){return k.replace(/^(.*)-(.*)\.(.*)$/i,"$1-XL.$3");}}}}}}}else{if(k.indexOf("http://photos-")==0){o=k.split("/");q=o[o.length-1].charCodeAt(0);if(q>=97&&q<=122){if(d<=75&&r<=225){return k.replace(/^(.*)\/([a-z])?(.*)$/i,"$1/t$3");}else{if(f<=130){return k.replace(/^(.*)\/([a-z])?(.*)$/i,"$1/s$3");}else{if(f<=180){return k.replace(/^(.*)\/([a-z])?(.*)$/i,"$1/a$3");}else{return k.replace(/^(.*)\/([a-z])?(.*)$/i,"$1/n$3");}}}}else{if(d<=75&&r<=225){return k.replace(/^(.*)\/(.*)([a-z])\.jpg$/i,"$1/$2t.jpg");}else{if(f<=130){return k.replace(/^(.*)\/(.*)([a-z])\.jpg$/i,"$1/$2s.jpg");}else{if(f<=180){return k.replace(/^(.*)\/(.*)([a-z])\.jpg$/i,"$1/$2a.jpg");}else{return k.replace(/^(.*)\/(.*)([a-z])\.jpg$/i,"$1/$2n.jpg");}}}}}else{if(e.fbp.test(k)){return k.replace(/^(.*)\/raw\/(.*)$/i,"$1/image_thumb/$2?maxwidth="+f);}}}}}return k;}else{if(k.indexOf("https://")==0){return k;}else{var b=".lifeblob.com/lifeblob/",t="original",c=g||{};if(c.temp){return["http://static",ut.getStaticOffset(k),b,"temp/",c.personId,"/",k,".jpg"].join("");}else{if(f<=100){t="thumb";}else{if(f<=200){t="small";}else{if(f<=512){t="medium";}else{if(f<=1024){t="large";}}}}var a=["http://static",ut.getStaticOffset(k),b,"images/",t,"/",u,"/"];if(c.captionUrl){var h=c.captionUrl,m=h.length;if(m>0){if(m>100){h=h.substring(0,100);}a.push(ut.getSEOText(h),"-");}}a.push(k,".jpg");return a.join("");}}}},getLargeImageURL:function(l,d,o,r,g){var e=this,k=ut.escapeHTML(l),f=Math.max(d,o);if(k.indexOf("http://")==0){if(e.fp.test(k)){k=k.replace(/^(.*)((_m|_s|_b|_t).jpg)$/,"$1.jpg");return k.replace(/^(.*)(.jpg)$/,"$1_b.jpg");}else{if(e.pp.test(k)){if(k.indexOf("s512")!=-1){return k;}else{return k.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s720$2");}}else{if(e.sp.test(k)){return k.replace(/^(.*)-(.*)\.(.*)$/i,"$1-XL.$3");}else{if(e.fbp.test(k)){return k.replace(/^(.*)\/raw\/(.*)$/i,"$1/image_thumb/$2?maxwidth=500");}}}}return k;}else{if(k.indexOf("https://")==0){return k;}else{var b=".lifeblob.com/lifeblob/",q="original",c=g||{};if(c.temp){return["http://static",ut.getStaticOffset(k),b,"temp/",c.personId,"/",k,".jpg"].join("");}else{q="large";var a=["http://static",ut.getStaticOffset(k),b,"images/",q,"/",r,"/"];if(c.captionUrl){var h=c.captionUrl,m=h.length;if(m>0){if(m>100){h=h.substring(0,100);}a.push(ut.getSEOText(h),"-");}}a.push(k,".jpg");return a.join("");}}}},fb_encode:function(d){var c=["template_data","attachment","action_links","to_ids"],a,b;for(a=0;a!=c.length;a++){b=c[a];if(d[b]){d[b]=encodeURIComponent(dojo.toJson(d[b]));}}for(b in d){if(!d[b]){delete d[b];}}},fb_query:function(d){var a="",b;for(b in d){var c={key:b,value:d[b]};a+=c.key+"="+encodeURIComponent((c.value))+"&";}if(a!==""&&a.charAt(a.length-1)==="&"){a=a.substr(0,a.length-1);}return a;},fbStreamPublish:function(d,c,a,p,o,m,l,k){var e=this,b="http://www.facebook.com/connect/prompt_feed.php",f=(window.screen.width/2-300),h=(window.screen.height/2-194),g={message:d,attachment:c,action_links:a,target_id:p,actor_id:k,user_message_prompt:o};e.fb_encode(g);b+="?"+e.fb_query(g);console.log(b);b="http://www.lifeblob.com/account/popup/redirect?next="+ut.encode(b);window.open(b,"","toolbar=0,status=0,width=600px,height=388px, left="+f+"px, screenX="+f+"px, top="+h+"px, screenY="+h+"px");},getUrl:function(b,d,c){if(c){return this.getFacebookUrl(b);}if(!b.display||!b.type){return null;}else{var a=["http://www.lifeblob.com/",b.type,"/",b.display];if(b.view){a.push("/view/",b.view,d?"/embed":"");}if(b.src){a.push("?src="+b.src);}if(b.utm_source){a.push(b.src?"&":"?");a.push("utm_source="+b.utm_source);a.push("&utm_campaign="+b.utm_campaign);a.push("&utm_medium="+b.utm_medium);if(b.utm_term){a.push("&utm_term="+b.utm_term);}if(b.utm_content){a.push("&utm_content="+b.utm_content);}}if(b.at){a.push("#at=");a.push(b.at.dateFormat(DP[1]));if(b.id){a.push("&mid=");a.push(b.id);if(b.max){a.push("&max=true");}}}return a.join("");}},loadScript:function(b,c){var a=document.createElement("script");a.type="text/javascript";if(a.readyState){a.onreadystatechange=function(){if(a.readyState=="loaded"||a.readyState=="complete"){a.onreadystatechange=null;c();}};}else{a.onload=function(){c();};}a.src=b;document.getElementsByTagName("head")[0].appendChild(a);},getFacebookUrl:function(b){if(!b.display||!b.type){return null;}else{var a=["http://www.lifeblob.com/","facebook/view",b.type!=FACEBOOK_PERSON_TYPE?"/user/":"/",b.display];a.push("?",fbParamsString,"&ht=true");if(b.forced_album){a.push("&falbum="+b.forced_album);}if(b.at){a.push("#at=");a.push(b.at.dateFormat(DP[1]));if(b.id){a.push("&mid=");a.push(b.id);if(b.max){a.push("&max=true");}}}return a.join("");}},getSEOText:function(a){return a.replace(/[\s/\\/.]+/g,"-").replace(/[^a-z0-9A-Z\-]/g,"").replace(/-+/g,"-");},encode:function(c){var e=[];for(var b=0;b<c.length;b++){var d=c.charAt(b);if(d==" "){e.push("+");}else{if(this.SAFECHARS.indexOf(d)!=-1){e.push(d);}else{var a=d.charCodeAt(0);if(a>255){e.push("+");}else{e.push("%",this.HEX.charAt((a>>4)&15),this.HEX.charAt(a&15));}}}}return e.join("");},decode:function(e){var b=[],d=e.length,a=0;while(a<d){var c=e.charAt(a);if(c=="+"){b.push(" ");a++;}else{if(c=="%"){if(a<(e.length-2)&&this.HEXCHARS.indexOf(e.charAt(a+1))!=-1&&this.HEXCHARS.indexOf(e.charAt(a+2))!=-1){b.push(unescape(e.substr(a,3)));a+=3;}else{a++;}}else{b.push(c);a++;}}}return b.join("");},encodeCur:function(){return ut.encode(window.location.href);},getFBPostUrl:function(b){if(!b.display||!b.type){return null;}else{var a=["http://apps.facebook.com/lifeblob","",b.type!=FACEBOOK_PERSON_TYPE?"/user/":"/",b.display];if(b.at){a.push("#at=");a.push(b.at.dateFormat(DP[1]));if(b.id){a.push("&mid=");a.push(b.id);if(b.max){a.push("&max=true");}}}return a.join("");}},getUrlFromId:function(a){if(a){return["http://www.lifeblob.com/","user?personId=",a].join("");}},rL:function(){return"http://www.lifeblob.com/account/login?next="+escape(window.location.href);},rdL:function(){var a=this.rL();this.rd(a);},rd:function(a){if(dojo.isIE==6){setTimeout(function(){window.location=a;},0);}else{window.location.href=a;}},reload:function(){window.location.reload(false);},escapeHTML:function(a){return !a?a:(a.replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/&/g,"&amp;").replace(/'/g,"&#39;").replace(/"/g,"&quot;"));},escapeJs:function(a){return a.replace(/(["'\f\b\n\t\r])/gm,"\\$1");},getYoutubeId:function(a){var b=a.replace(/^[^v]+v.(.{11}).*/,"$1");return(a!=b)?b:null;},getTimelineType:function(a){return(a==TOPIC_TYPE)?4:((a==PLACE_TYPE)?2:((a==TAG_TYPE)?3:((a==DERIVED_TYPE)?5:1)));},addFbToSuggest:function(){var c=FB.Connect.get_loggedInUser(),a,b;FB.Facebook.apiClient.fql_query("SELECT uid, name, pic_square, is_app_user FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1="+c+")",function(o,e){if(!e){Suggest.init();var d=cm.get("suggest.all"),h=cm.get("suggest.friends"),m=cm.get("addressbook.friends"),f=cm.get("addressbook.friends.fidmap"),g=cm.get("suggest.fb");for(var l=0;l<o.length;l++){var k=o[l];if(k.pic_square==""){k.pic_square="http://cdn0.lifeblob.com/lifeblob/pic/default/medium.v1.jpg";}k.type=4;g.push({key:k.name,value:{k:"fbid",v:k.uid},original:k});if(f){if(f[k.uid]){continue;}f[k.uid]=k;}d.push({key:k.name,value:{k:"fbid",v:k.uid},original:k});h.push({key:k.name,value:{k:"fbid",v:k.uid},original:k});m.push({key:k.name,value:{k:"fbid",v:k.uid},original:k});}dojo.publish("suggest.rebuild");dojo.publish("facebook.suggest.updated");}});},fisherYates:function(c){var b=c.length;if(b==0){return false;}while(--b){var a=Math.floor(Math.random()*(b+1));var e=c[b];var d=c[a];c[b]=d;c[a]=e;}},getFrequencyBucketFromlist:function(b,c){var a=b[c];return a?a:0;},_getFreqData:function(c,b){var a=b.type;if(a==TAG_TYPE){return c.tags;}else{if(a==TOPIC_TYPE){return c.topics;}else{if(a==PERSON_TYPE){return c.people;}else{if(a==PLACE_TYPE){return c.places;}}}}},getFrequencyBucket:function(f,d,c){var a=c.type,e=ut._getFreqData(f,c);if(!e){e=[];}var b=ut.getFrequencyBucketFromlist(e,c.id);if(b==0){b=1;}return e?Math.min(b*d,100):d;},getTagCloudCompatibleName:function(c){var a=c.title||c.name,b=c.type;if(b==PERSON_TYPE){a=a.split(" ")[0];}else{if(b==PLACE_TYPE){a=a.split(",")[0];}}return ut.truncate(a,28);},getIntersects:function(e,c){var a=c.type,d=ut._getFreqData(e,c),b=d?ut.getFrequencyBucketFromlist(d,c.id):0;return b?"intersects":"";},wbr:function(b,a){return !b?b:b.replace(RegExp("(\\w{"+a+"})(\\w)","g"),function(d,e,c){return e+"<wbr>"+c;});},shy:function(b,a){return !b?b:b.replace(RegExp("(\\w{"+a+"})(\\w)","g"),function(d,e,c){return e+"&shy;"+c;});},wb:function(b,a){return ut.shy(b,a);},truncate:function(c,b,a){var a=a||"...";return(c.length>b)?c.substr(0,b-a.length)+a:c;},isInteger:function(b){var a;for(a=0;a<b.length;a++){var d=b.charAt(a);if(((d<"0")||(d>"9"))){return false;}}return true;},trim:function(d){var b;var a="";for(b=0;b<d.length;b++){var e=d.charAt(b);if(e!=" "){a+=e;}}return a;},stripCharsInBag:function(d,e){var b;var a="";for(b=0;b<d.length;b++){var f=d.charAt(b);if(e.indexOf(f)==-1){a+=f;}}return a;},checkInternationalPhone:function(a){var c=3;a=this.trim(a);if(a.indexOf("+")>1){return false;}if(a.indexOf("-")!=-1){c=c+1;}if(a.indexOf("(")!=-1&&a.indexOf("(")>c){return false;}var b=a.indexOf("(");if(a.indexOf("(")!=-1&&a.charAt(b+2)!=")"){return false;}if(a.indexOf("(")==-1&&a.indexOf(")")!=-1){return false;}s=this.stripCharsInBag(a,this.validWorldPhoneChars);return(this.isInteger(s)&&s.length>=this.minDigitsInIPhoneNumber);},price:function(a){return dojo.number.format(a,{pattern:"##0.00"});},currency:function(a){return"Rs. "+this.price(a);},highlightNode:function(c,a,d,b){var d=d||"#ffffff",b=b||"#ffffcc";dojo.fx.chain([dojo.animateProperty({node:c,duration:a,properties:{backgroundColor:{end:b}}}),dojo.animateProperty({node:c,duration:a,properties:{backgroundColor:{end:d}}})]).play();},isValidEmail:function(f){var a="@";var b=".";var e=f.indexOf(a);var c=f.length;var d=f.indexOf(b);if(f.indexOf(a)==-1){return false;}if(f.indexOf(a)==-1||f.indexOf(a)==0||f.indexOf(a)==c){return false;}if(f.indexOf(b)==-1||f.indexOf(b)==0||f.indexOf(b)==c){return false;}if(f.indexOf(a,(e+1))!=-1){return false;}if(f.substring(e-1,e)==b||f.substring(e+1,e+2)==b){return false;}if(f.indexOf(b,(e+2))==-1){return false;}if(f.indexOf(" ")!=-1){return false;}return true;}});var ut=new Util();function Cache(){this.initialize=function(){};}var cache=new Cache();function TimelineObject(){this.id;this.displayName;this.name;this.bounds;this.chunks;this.getType=function(){return PERSON_TYPE;};this.getStatus=function(){return this.status||"";};this.isLogged=function(){return(this.getType()==PERSON_TYPE)&&((this.displayName.length==th.getUser().displayName.length)&&(this.displayName.indexOf(th.getUser().displayName)==0));};this.getFullName=function(){return this.getName();};this.getName=function(){return ut.escapeHTML(this.name||this.displayName.charAt(0).toUpperCase().concat(this.displayName.substr(1)));};this.equals=function(a){return(!a)?false:(a.getType()==this.getType())&&(a.displayName.indexOf(this.displayName)==0);};}function Person(){this.name;this.pic;this.email;this.getType=function(){return PERSON_TYPE;};this.getName=function(){return ut.escapeHTML(this.name);};this.getFullName=function(){return this.getName();};}function Place(){this.region;this.country;this.lat;this.lng;this.getType=function(){return PLACE_TYPE;};}function Tag(){this.getType=function(){return TAG_TYPE;};}function Topic(){this.desc;this.pic;this.ext_pic;this.isLogged=function(){return(this.getType()==TOPIC_TYPE)&&th.getUser().topic.contributor;};this.getTitle=function(){return ut.escapeHTML(this.title);};this.getType=function(){return TOPIC_TYPE;};}function MemoirData(){this.id;this.primaryId;this.primaryType;this.happened;this.creator;this.subject;this.desc;this.createdAt;this.updatedAt;this.appType;this.persons;this.persons;this.place;this.tags;this.totalImages;this.images;this.totalVideos;this.video;this.viewCount;this.commentCount;this.info=BASIC;this.type;}Person.prototype=new TimelineObject();Place.prototype=new TimelineObject();Tag.prototype=new TimelineObject();Topic.prototype=new TimelineObject();function PostSignUpStuff(){var ref=this;this._activeImports={};this.urlRegex=new RegExp("http://(.+)");this.logEvent=function(dimension2,dimension3){dojo.publish("logAjaxEvent",[window.startupFlow?"startupflow":"normalflow",dimension2,dimension3]);};this.importStuff=function(appType,id){this._activeImports[appType]={};var ref=this;this.logEvent("import-start-linkup",ut.getAppName(appType).toLowerCase());if(appType==APP_TYPE.BLOG){this._blogImport(appType);}else{if(appType==APP_TYPE.FACEBOOK_PHOTOS){ref._setWaitingState(appType,M.WAITING_FOR_AUTHENTICATION);dojo.query(".legal").removeClass("hidden");FB.Facebook.apiClient.users_hasAppPermission("offline_access",function(result){if(result==0){FB.Connect.showPermissionDialog("offline_access",function(result1){if(result1){ref.logEvent("facebook-import-type","perma");var newIframe=document.createElement("iframe");dojo.byId("facebook_offline_loaded_iframe_container").appendChild(newIframe);dojo.attr(newIframe,"src","http://www.lifeblob.com/xd_domain_load.htm");}else{ref.logEvent("facebook-import-type","session");ref._facebookImport(appType);}});}else{ref._facebookImport(appType);}});}else{this._showPopup(appType);}}};this.importUrl=function(appType){this._activeImports[appType]={};this.logEvent("import-start-import",ut.getAppName(appType).toLowerCase());this._blogImport(appType);};this.facebookImport=function(){this._activeImports[APP_TYPE.FACEBOOK_PHOTOS]={};this._facebookImport(APP_TYPE.FACEBOOK_PHOTOS);};this._facebookImport=function(appType){var appName=ut.getAppName(appType);var lowerAppName=appName.toLowerCase().replace(/ /g,"_");var topicId=0;API_SVC.facebookImportRequest().addCallback(dojo.hitch(ref,ref._importBlogResponse,appType));};this._blogImport=function(appType){var appName=ut.getAppName(appType);var lowerAppName=appName.toLowerCase().replace(/ /g,"_");var topicId=topic?entityId:0;dojo.query("."+lowerAppName+"_url").forEach(function(elem){var blogURL=elem.value;if(ref.urlRegex.test(blogURL)){API_SVC.importRequest(blogURL,appType,topicId).addCallback(dojo.hitch(ref,ref._importBlogResponse,appType));}else{dojo.addClass(elem,"input_error");alert("Please enter a valid url");}});};this._importBlogResponse=function(appType,response){if(!response.result||response.result<0){this.logEvent("import-error-create",ut.getAppName(appType).toLowerCase());}if(appType==APP_TYPE.FACEBOOK_PHOTOS&&!response.result&&response.code==3){this.logEvent("facebook-error-session",ut.getAppName(appType).toLowerCase());}this._importResponse(appType,response.result,false);if(appType==APP_TYPE.FACEBOOK_PHOTOS&&!response.result&&response.code==3){facebookReloadPage();}};this._showPopup=function(appType){var width=700;var height=500;var top=100;if(appType==APP_TYPE.YMAIL||appType==APP_TYPE.FLICKR){width=780;height=700;top=10;}if(appType==APP_TYPE.TWITTER){width=776;top=10;}var left=window.screen.width/2-width/2;var popup=ref._activeImports[appType].popup;if(popup){try{popup.close();}catch(ex){}}switch(appType){case APP_TYPE.PICASA:popup=window.open("https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D11TOPIC_POINTER&scope=http%3A%2F%2Fpicasaweb.google.com%2Fdata%2F&secure=0&session=1".replace("TOPIC_POINTER",ref._getTopicReplace()),"","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.FLICKR:popup=window.open("http://www.flickr.com/services/auth/?api_key=0c46e7f6525547b571fdc05b2d7a9957&perms=read&api_sig=54cf32fac9c008dd3d0718f1e0f10f2a","","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.SMUGMUG:popup=window.open("http://www.lifeblob.com/callback/oauth/authorizeUser?appType=13","","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.YOUTUBE:popup=window.open("https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D51TOPIC_POINTER&scope=http%3A%2F%2Fgdata.youtube.com%2F&secure=0&session=1".replace("TOPIC_POINTER",ref._getTopicReplace()),"","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.TWITTER:popup=window.open("http://www.lifeblob.com/callback/oauth/authorizeUser?appType=61TOPIC_POINTER".replace("TOPIC_POINTER",ref._getTopicOauthReplace()),"","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.PHOTOBUCKET:popup=window.open("http://www.lifeblob.com/callback/oauth/authorizeUser?appType=16","","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;default:return;}if(!popup){return;}popup.focus();this._activeImports[appType].popup=popup;ref._setWaitingState(appType,M.WAITING_FOR_AUTHENTICATION);ref._waitForPopup(appType);};this._getTopicReplace=function(){if(window.topic){return"%26topicId%3D"+entityId;}return"";};this._getTopicOauthReplace=function(){if(window.topic){return"&topicId="+entityId;}return"";};this._restoreRow=function(appType){dojo.query(".busy_icon").addClass("hidden");dojo.query(".import_url .url input").forEach(function(elem){elem.value="http://";});dojo.query(".legal").removeClass("hidden");};this._waitForPopup=function(appType){ref._activeImports[appType].popupWait=setInterval(function(){if(ref._activeImports[appType].popup.closed){ref.logEvent("import-popup-closed",ut.getAppName(appType).toLowerCase());clearInterval(ref._activeImports[appType].popupWait);ref._restoreRow(appType);}},3000);};this._setWaitingState=function(appType,message){dojo.query(".busy_icon").removeClass("hidden");dojo.query(".busy_icon span").forEach(function(elem){elem.innerHTML=message+"&nbsp;";});dojo.query(".legal").addClass("hidden");};this._importResponse=function(appType,id,closepopup){if((appType==APP_TYPE.YOUTUBE||appType==APP_TYPE.PICASA||appType==APP_TYPE.FLICKR||appType==APP_TYPE.SMUGMUG||appType==APP_TYPE.TWITTER||appType==APP_TYPE.PHOTOBUCKET)&&closepopup){ref._activeImports[appType].popup.close();clearInterval(ref._activeImports[appType].popupWait);ref._activeImports[appType].popupWait=null;}ref._activeImports[appType].impID=id;ref._activeImports[appType].appType=appType;if(id>0){if(appType==APP_TYPE.TWITTER){ref._setWaitingState(appType,M.IMPORTING_TWITTER_DATA);}else{ref._setWaitingState(appType,M.IMPORTING_DATA);}ref._showProgress(appType);}else{ref._showError();}};this._showProgress=function(appType){ref._activeImports[appType].handle=setInterval(function(){if(!ref._activeImports[appType].processing){ref._activeImports[appType].processing=true;API_SVC.importStatus(ref._activeImports[appType].impID).addCallback(dojo.hitch(ref,ref._onImportStatusResponse,appType));}},3000);};this._showError=function(appType,status){alert(dojo.string.substitute(M.IMPORT_ERROR,[ut.getAppName(appType)]));this._restoreRow(appType);};this._showDupError=function(appType,status){alert(dojo.string.substitute(M.IMPORT_DUP_ERROR,[ut.getAppName(appType)]));this._restoreRow(appType);};this._showTwitterError=function(appType,status){alert(dojo.string.substitute(M.IMPORT_TWITTER_ERROR,[ut.getAppName(appType)]));this._restoreRow(appType);};this._onImportStatusResponse=function(appType,response){if(response.stat!="ok"){console.log("Error. Code:"+response.code+" Desc:"+response.desc);ref._activeImports[appType].processing=false;return;}switch(response.result.status){case 0:ref._activeImports[appType].processing=false;return;case 1:ref.logEvent("import-success",ut.getAppName(appType).toLowerCase());ref._restoreRow(appType);ref.attachResponse(appType,response.result);if(window._gwo_key){dojo.publish("trackExperimentalGoal",[_gwo_key]);}dojo.publish("reloadTimeline");dojo.publish("importSuccess");break;default:ref.logEvent("import-error-import",ut.getAppName(appType).toLowerCase());if(response.result.errorCode==2){ref.logEvent("import-error-create-duplicate",ut.getAppName(appType).toLowerCase());ref._showDupError(appType,response.result.status);}else{if(response.result.errorCode==6){ref.logEvent("import-error-twitter-oauth",ut.getAppName(appType).toLowerCase());ref._showTwitterError(appType,response.result.status);}else{ref._showError(appType,response.result.status);}}break;}clearInterval(ref._activeImports[appType].handle);ref._activeImports[appType].handle=null;ref._activeImports[appType].processing=false;};this._getAppSummary=function(appType,appSum){if(appSum.length<6){return"";}switch(appType){case APP_TYPE.PICASA:case APP_TYPE.PHOTOBUCKET:case APP_TYPE.FLICKR:case APP_TYPE.SMUGMUG:return dojo.string.substitute(M.IM_ALBUM_STATS,[appSum[0],appSum[1],appSum[3],appSum[5]]);case APP_TYPE.YOUTUBE:return dojo.string.substitute(M.IM_VIDEO_STATS,[appSum[0],appSum[2],appSum[3],appSum[5]]);case APP_TYPE.BLOG:return dojo.string.substitute(M.IM_POST_STATS,[appSum[0],appSum[1],appSum[3],appSum[5]]);case APP_TYPE.TWITTER:return dojo.string.substitute(M.IM_TWITTER_STATS,[appSum[0],appSum[1],appSum[3],appSum[5]]);case APP_TYPE.FACEBOOK_PHOTOS:return dojo.string.substitute(M.IM_FACEBOOK_PHOTOS_STATS,[appSum[0],appSum[1],appSum[3],appSum[5]]);}};this.deleteImport=function(event){var actionParams=eval("("+dojo.attr(event.currentTarget,"actionParams")+")");API_SVC.deleteImportConfig(actionParams.appType,actionParams.aggregatorId,true);dojo.query("[result="+actionParams.aggregatorId+"]").orphan();dojo.stopEvent(event);};this._wrapWithDiv=function(node){var div=document.createElement("div");div.appendChild(node);return div;};this.createResultNode=function(appType,result,isEven){var div=document.createElement("tr");dojo.attr(div,"result",result.aggregatorId);dojo.addClass(div,"row");if(isEven){dojo.addClass(div,"even");}var account=document.createElement("td");dojo.addClass(account,"account");account.appendChild(this._wrapWithDiv(document.createTextNode(result.source)));div.appendChild(account);var dateParsed=document.createElement("td");dateParsed.appendChild(this._wrapWithDiv(document.createTextNode(Date.parseDate(result.doneAt,DP[1],true).dateFormat("d M Y"))));dojo.addClass(dateParsed,"updated");div.appendChild(dateParsed);var summary=document.createElement("td");dojo.addClass(summary,"summary");summary.appendChild(this._wrapWithDiv(document.createTextNode(this._getAppSummary(appType,result.data))));div.appendChild(summary);var deleteNode=document.createElement("td");dojo.addClass(deleteNode,"actions");var deleteLink=document.createElement("a");dojo.attr(deleteLink,"new","true");deleteLink.appendChild(document.createTextNode("Delete"));dojo.attr(deleteLink,"action","deleteImport");dojo.attr(deleteLink,"actionParams",'{ "appType" : '+appType+', "aggregatorId" : '+result.aggregatorId+"}");deleteNode.appendChild(this._wrapWithDiv(deleteLink));if(appType==61){var editLink=document.createElement("a");dojo.attr(editLink,"editnew","true");editLink.appendChild(document.createTextNode("Edit"));dojo.attr(editLink,"action","editImport");dojo.attr(editLink,"actionParams",'{ "appType" : '+appType+', "aggregatorId" : '+result.aggregatorId+', "scheduleType" : '+result.schedule+', "writedisabled" : ['+result.disabledWrites.join(",")+"]}");dojo.place(editLink,deleteLink,"after");dojo.place(document.createTextNode(" / "),editLink,"before");}div.appendChild(deleteNode);return div;};this.attachResponse=function(appType,result){var appName=ut.getAppName(appType),lowerAppName=appName.toLowerCase().replace(/ /g,"_");dojo.query("."+lowerAppName+"_results").removeClass("hidden");dojo.query("."+lowerAppName+"_results .import_results_tbody").forEach(function(elem){var isEven=false;dojo.query(".row:last-child",elem).forEach(function(row){isEven=!dojo.hasClass(row,"even");});elem.appendChild(ref.createResultNode(appType,result,isEven));dojo.publish("attachNewDeleteImports");dojo.query("a[new='true']",elem).forEach(function(link){dojo.attr(link,"new","false");});});if(lowerAppName=="twitter"){dojo.publish("attachNewEditImports");dojo.query(".twitter_linkup_holder").addClass("hidden");dojo.query(".twitter_linkup_thankyou").removeClass("hidden");}else{if(appType==APP_TYPE.FACEBOOK_PHOTOS){dojo.query(".facebook_linkup_holder").addClass("hidden");dojo.query(".facebook_linkup_thankyou").removeClass("hidden");dojo.publish("importSuccess");}}};this.close=function(appType){var appName=ut.getAppName(appType);var lowerAppName=appName.toLowerCase().replace(/ /g,"_");var rowNode=dojo.byId(lowerAppName+"_import_row");var cNode=dojo.byId(lowerAppName+"_import");cNode.innerHTML=M.IMPORTING_DATA_DONE+appName;dojo.fx.combine([dojo.animateProperty({node:rowNode,duration:2000,properties:{backgroundColor:{end:"#ffffff"}}})]).play();};this.isImporting=function(){var rv=true;dojo.query(".busy_icon").forEach(function(elem){if(dojo.hasClass(elem,"hidden")){rv=false;}});return rv;};dojo.subscribe("importStuff",this,"importStuff");dojo.subscribe("importUrl",this,"importUrl");this.importresponsesubscription=dojo.subscribe("importStuffResponse",this,"_importResponse");dojo.subscribe("deleteImport",this,"deleteImport");}var postSignUpStuff=new PostSignUpStuff();function PhotoImporterModule(){var ref=this;this._activeImports={};this.urlRegex=new RegExp("http://(.+)");this.logEvent=function(dimension2,dimension3){dojo.publish("logAjaxEvent",[window.startupFlow?"startupflow":"normalflow",dimension2,dimension3]);};this.importStuff=function(appType,id){this._activeImports[appType]={};var ref=this;this.logEvent("import-start-linkup",ut.getAppName(appType).toLowerCase());if(appType==APP_TYPE.BLOG){this._blogImport(appType);}else{if(appType==APP_TYPE.FACEBOOK_PHOTOS){ref._setWaitingState(appType,M.WAITING_FOR_AUTHENTICATION);dojo.query(".legal").removeClass("hidden");FB.Connect.requireSession(function(){API_SVC.linkupFacebook().addCallback(function(){FB.Facebook.apiClient.users_hasAppPermission("offline_access",function(result){if(result==0){FB.Connect.showPermissionDialog("offline_access",function(result1){if(result1){ref.logEvent("facebook-import-type","perma");var newIframe=document.createElement("iframe");dojo.byId("facebook_offline_loaded_iframe_container").appendChild(newIframe);dojo.attr(newIframe,"src","http://www.lifeblob.com/xd_domain_load.htm");}else{ref.logEvent("facebook-import-type","session");ref._facebookImport(appType);}});}else{ref._facebookImport(appType);}});});});}else{this._showPopup(appType);}}};this.importUrl=function(appType){this._activeImports[appType]={};this.logEvent("import-start-import",ut.getAppName(appType).toLowerCase());this._blogImport(appType);};this.facebookImport=function(){this._activeImports[APP_TYPE.FACEBOOK_PHOTOS]={};this._facebookImport(APP_TYPE.FACEBOOK_PHOTOS);};this._facebookImport=function(appType){var appName=ut.getAppName(appType);var lowerAppName=appName.toLowerCase().replace(/ /g,"_");var topicId=0;API_SVC.facebookImportRequest().addCallback(dojo.hitch(ref,ref._importBlogResponse,appType));};this._blogImport=function(appType){var appName=ut.getAppName(appType);var lowerAppName=appName.toLowerCase().replace(/ /g,"_");var topicId=topic?entityId:0;dojo.query("."+lowerAppName+"_url").forEach(function(elem){var blogURL=elem.value;if(ref.urlRegex.test(blogURL)){API_SVC.importRequest(blogURL,appType,topicId).addCallback(dojo.hitch(ref,ref._importBlogResponse,appType));}else{dojo.addClass(elem,"input_error");alert("Please enter a valid url");}});};this._importBlogResponse=function(appType,response){if(!response.result||response.result<0){this.logEvent("import-error-create",ut.getAppName(appType).toLowerCase());}if(appType==APP_TYPE.FACEBOOK_PHOTOS&&!response.result&&response.code==3){this.logEvent("facebook-error-session",ut.getAppName(appType).toLowerCase());}this._importResponse(appType,response.result,false);if(appType==APP_TYPE.FACEBOOK_PHOTOS&&!response.result&&response.code==3){facebookReloadPage();}};this._showPopup=function(appType){var width=700;var height=500;var top=100;if(appType==APP_TYPE.YMAIL||appType==APP_TYPE.FLICKR){width=780;height=700;top=10;}if(appType==APP_TYPE.TWITTER){width=776;top=10;}var left=window.screen.width/2-width/2;var popup=ref._activeImports[appType].popup;if(popup){try{popup.close();}catch(ex){}}switch(appType){case APP_TYPE.PICASA:popup=window.open("https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D11TOPIC_POINTER&scope=http%3A%2F%2Fpicasaweb.google.com%2Fdata%2F&secure=0&session=1".replace("TOPIC_POINTER",ref._getTopicReplace()),"","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.FLICKR:popup=window.open("http://www.flickr.com/services/auth/?api_key=0c46e7f6525547b571fdc05b2d7a9957&perms=read&api_sig=54cf32fac9c008dd3d0718f1e0f10f2a","","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.SMUGMUG:popup=window.open("http://www.lifeblob.com/callback/oauth/authorizeUser?appType=13","","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.YOUTUBE:popup=window.open("https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D51TOPIC_POINTER&scope=http%3A%2F%2Fgdata.youtube.com%2F&secure=0&session=1".replace("TOPIC_POINTER",ref._getTopicReplace()),"","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.TWITTER:popup=window.open("http://www.lifeblob.com/callback/oauth/authorizeUser?appType=61TOPIC_POINTER".replace("TOPIC_POINTER",ref._getTopicOauthReplace()),"","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;case APP_TYPE.PHOTOBUCKET:popup=window.open("http://www.lifeblob.com/callback/oauth/authorizeUser?appType=16","","status=false, width="+width+"px, height="+height+"px, left="+left+"px, screenX="+left+"px, top="+top+"px, screenY="+top+"px");break;default:return;}if(!popup){return;}popup.focus();this._activeImports[appType].popup=popup;ref._setWaitingState(appType,M.WAITING_FOR_AUTHENTICATION);ref._waitForPopup(appType);};this._getTopicReplace=function(){if(window.topic){return"%26topicId%3D"+entityId;}return"";};this._getTopicOauthReplace=function(){if(window.topic){return"&topicId="+entityId;}return"";};this._restoreRow=function(appType){dojo.query(".import_busy_icon").addClass("hidden");dojo.query(".import_url .url input").forEach(function(elem){elem.value="http://";});dojo.query(".legal").removeClass("hidden");};this._waitForPopup=function(appType){ref._activeImports[appType].popupWait=setInterval(function(){if(ref._activeImports[appType].popup.closed){ref.logEvent("import-popup-closed",ut.getAppName(appType).toLowerCase());clearInterval(ref._activeImports[appType].popupWait);ref._restoreRow(appType);}},3000);};this._setWaitingState=function(appType,message){dojo.query(".import_busy_icon").removeClass("hidden");dojo.query(".import_busy_icon span").forEach(function(elem){elem.innerHTML=message+"&nbsp;";});dojo.query(".legal").addClass("hidden");};this._importResponse=function(appType,id,closepopup){if((appType==APP_TYPE.YOUTUBE||appType==APP_TYPE.PICASA||appType==APP_TYPE.FLICKR||appType==APP_TYPE.SMUGMUG||appType==APP_TYPE.TWITTER||appType==APP_TYPE.PHOTOBUCKET)&&closepopup){ref._activeImports[appType].popup.close();clearInterval(ref._activeImports[appType].popupWait);ref._activeImports[appType].popupWait=null;}ref._activeImports[appType].impID=id;ref._activeImports[appType].appType=appType;if(id>0){if(appType==APP_TYPE.TWITTER){ref._setWaitingState(appType,M.IMPORTING_TWITTER_DATA);}else{ref._setWaitingState(appType,M.IMPORTING_DATA);}ref._showProgress(appType);}else{ref._showError();}};this._showProgress=function(appType){ref._activeImports[appType].handle=setInterval(function(){if(!ref._activeImports[appType].processing){ref._activeImports[appType].processing=true;API_SVC.importStatus(ref._activeImports[appType].impID).addCallback(dojo.hitch(ref,ref._onImportStatusResponse,appType));}},3000);};this._showError=function(appType,status){alert(dojo.string.substitute(M.IMPORT_ERROR,[ut.getAppName(appType)]));this._restoreRow(appType);};this._showDupError=function(appType,status){alert(dojo.string.substitute(M.IMPORT_DUP_ERROR,[ut.getAppName(appType)]));this._restoreRow(appType);};this._showTwitterError=function(appType,status){alert(dojo.string.substitute(M.IMPORT_TWITTER_ERROR,[ut.getAppName(appType)]));this._restoreRow(appType);};this._onImportStatusResponse=function(appType,response){if(response.stat!="ok"){console.log("Error. Code:"+response.code+" Desc:"+response.desc);ref._activeImports[appType].processing=false;return;}switch(response.result.status){case 0:ref._activeImports[appType].processing=false;return;case 1:ref.logEvent("import-success",ut.getAppName(appType).toLowerCase());ref._restoreRow(appType);ref.attachResponse(appType,response.result);if(window._gwo_key){dojo.publish("trackExperimentalGoal",[_gwo_key]);}dojo.publish("importSuccess");break;default:ref.logEvent("import-error-import",ut.getAppName(appType).toLowerCase());if(response.result.errorCode==2){ref.logEvent("import-error-create-duplicate",ut.getAppName(appType).toLowerCase());ref._showDupError(appType,response.result.status);}else{if(response.result.errorCode==6){ref.logEvent("import-error-twitter-oauth",ut.getAppName(appType).toLowerCase());ref._showTwitterError(appType,response.result.status);}else{ref._showError(appType,response.result.status);}}break;}clearInterval(ref._activeImports[appType].handle);ref._activeImports[appType].handle=null;ref._activeImports[appType].processing=false;};this._getAppSummary=function(appType,appSum){if(appSum.length<6){return"";}switch(appType){case APP_TYPE.PICASA:case APP_TYPE.PHOTOBUCKET:case APP_TYPE.FLICKR:case APP_TYPE.SMUGMUG:return dojo.string.substitute(M.IM_ALBUM_STATS,[appSum[0],appSum[1],appSum[3],appSum[5]]);case APP_TYPE.YOUTUBE:return dojo.string.substitute(M.IM_VIDEO_STATS,[appSum[0],appSum[2],appSum[3],appSum[5]]);case APP_TYPE.BLOG:return dojo.string.substitute(M.IM_POST_STATS,[appSum[0],appSum[1],appSum[3],appSum[5]]);case APP_TYPE.TWITTER:return dojo.string.substitute(M.IM_TWITTER_STATS,[appSum[0],appSum[1],appSum[3],appSum[5]]);case APP_TYPE.FACEBOOK_PHOTOS:return dojo.string.substitute(M.IM_FACEBOOK_PHOTOS_STATS,[appSum[0],appSum[1],appSum[3],appSum[5]]);}};this.deleteImport=function(event){var actionParams=eval("("+dojo.attr(event.currentTarget,"actionParams")+")");API_SVC.deleteImportConfig(actionParams.appType,actionParams.aggregatorId,true);dojo.query("[result="+actionParams.aggregatorId+"]").orphan();dojo.stopEvent(event);};this._wrapWithDiv=function(node){var div=document.createElement("div");div.appendChild(node);return div;};this.createResultNode=function(appType,result,isEven){var div=document.createElement("tr");dojo.attr(div,"result",result.aggregatorId);dojo.addClass(div,"row");if(isEven){dojo.addClass(div,"even");}var account=document.createElement("td");dojo.addClass(account,"account");account.appendChild(this._wrapWithDiv(document.createTextNode(result.source)));div.appendChild(account);var dateParsed=document.createElement("td");dateParsed.appendChild(this._wrapWithDiv(document.createTextNode(Date.parseDate(result.doneAt,DP[1],true).dateFormat("d M Y"))));dojo.addClass(dateParsed,"updated");div.appendChild(dateParsed);var summary=document.createElement("td");dojo.addClass(summary,"summary");summary.appendChild(this._wrapWithDiv(document.createTextNode(this._getAppSummary(appType,result.data))));div.appendChild(summary);var deleteNode=document.createElement("td");dojo.addClass(deleteNode,"actions");var deleteLink=document.createElement("a");dojo.attr(deleteLink,"new","true");deleteLink.appendChild(document.createTextNode("Delete"));dojo.attr(deleteLink,"action","deleteImport");dojo.attr(deleteLink,"actionParams",'{ "appType" : '+appType+', "aggregatorId" : '+result.aggregatorId+"}");deleteNode.appendChild(this._wrapWithDiv(deleteLink));if(appType==61){var editLink=document.createElement("a");dojo.attr(editLink,"editnew","true");editLink.appendChild(document.createTextNode("Edit"));dojo.attr(editLink,"action","editImport");dojo.attr(editLink,"actionParams",'{ "appType" : '+appType+', "aggregatorId" : '+result.aggregatorId+', "scheduleType" : '+result.schedule+', "writedisabled" : ['+result.disabledWrites.join(",")+"]}");dojo.place(editLink,deleteLink,"after");dojo.place(document.createTextNode(" / "),editLink,"before");}div.appendChild(deleteNode);return div;};this.attachResponse=function(appType,result){};this.close=function(appType){var appName=ut.getAppName(appType);var lowerAppName=appName.toLowerCase().replace(/ /g,"_");var rowNode=dojo.byId(lowerAppName+"_import_row");var cNode=dojo.byId(lowerAppName+"_import");cNode.innerHTML=M.IMPORTING_DATA_DONE+appName;dojo.fx.combine([dojo.animateProperty({node:rowNode,duration:2000,properties:{backgroundColor:{end:"#ffffff"}}})]).play();};this.isImporting=function(){var rv=true;dojo.query(".import_busy_icon").forEach(function(elem){if(dojo.hasClass(elem,"hidden")){rv=false;}});return rv;};dojo.subscribe("importStuffResponse2",this,"_importResponse");}function Analytics(b,a){this.pageName=b;this.trackingCode=a;this.tracker;this.initialize=function(g,e){var d=this,f=new Date().getTime()-g;if(!e&&dojo.config.isDebug){console.log("Tracking PageName["+d.pageName+"] using Profile["+d.trackingCode+"]. Load Time["+f+" ms]");}d.tracker=_gat._getTracker(d.trackingCode);var c=d.tracker;if(!e&&window.location.href.indexOf("max=true")<0){c._trackPageview(d.pageName);}dojo.subscribe("logEvent",d,"_logEvent");dojo.subscribe("logAjaxEvent",d,"_logAjaxEvent");};this._logEvent=function(c){try{if(dojo.config.isDebug){console.log("  Tracking Event["+c+"]");}this.tracker._trackPageview(c);}catch(d){if(dojo.config.isDebug){console.log("Event "+c+" could not be logged");}}};this._logAjaxEvent=function(e,g,c,f){try{if(dojo.config.isDebug){console.log("Tracking Ajax Event["+e+","+g+","+c+","+f+"]");}this.tracker._trackEvent(e,g,c,f);}catch(d){if(dojo.config.isDebug){console.log("Event "+evt+" could not be logged");}}};this._trackExperimentGoal=function(e){try{var c=_gat._getTracker("UA-8322649-1");c._trackPageview("/"+e+"/goal");}catch(d){}};dojo.subscribe("trackExperimentalGoal",this,"_trackExperimentGoal");}dojo.require("dojox.collections.Dictionary");function CacheManager(){this.dictionaries={};this.put=function(b,d,a){var c=(!a)?"global":a;if(!this.dictionaries[c]){this.dictionaries[c]=new dojox.collections.Dictionary();}this.dictionaries[c].add(b,d);};this.get=function(b,a){var c=(!a)?"global":a;return(!this.dictionaries[c])?null:this.dictionaries[c].item(b);};this.remove=function(b,a){var c=(!a)?"global":a;return(!this.dictionaries[c])?null:this.dictionaries[c].remove(b);};this.destroy=function(){};}var cm=new CacheManager();function PageUtil(){console.time("PageUtil");this.dnTimer;var a=this;this.createErrorElement=function(b){var c=document.createElement("div");c.appendChild(document.createTextNode(b));dojo.addClass(c,"fielderror");return c;};this.createUser=function(c,l){dojo.query(".fielderror").orphan();var h=dojo.byId("firstName"),k=dojo.byId("lastName"),d=dojo.byId("userEmail"),f=dojo.byId("invite"),m=dojo.byId("userPassword"),g=new RegExp(emailRegexp()),e=new RegExp("^[a-zA-Z0-9\d]{6,}$"),b=true;if(!d.value.match(g)){dojo.place(this.createErrorElement("Email is invalid"),d,"after");b=false;}if(m&&!m.value.match(e)){dojo.place(this.createErrorElement("Password should be minimum 6 characters and can contain only letters and numbers"),m,"after");b=false;}if(f&&f.value==""){dojo.place(this.createErrorElement("Invite code mandatory"),f,"after");b=false;}if(!b){return;}document.signup_form.submit();};this.createTopic=function(c,b){dojo.query(".middle",c).forEach("item.innerHTML='"+b+"'");dojo.query("+",c).removeClass("hidden");document.signup_form.submit();};this.showRating=function(b){if(!dojo.attr(dojo.byId("tr_cont"),"trRated")){this._showRatingValue(b,true);}};this.showDefaultRating=function(){var b=dojo.attr(dojo.byId("tr_cont"),"trValue");this._showRatingValue(b,false);dojo.byId("tr_desc").innerHTML=dojo.attr(dojo.byId("tr_desc"),"trDefaultText");};this._showRatingValue=function(b,c){dojo.byId("tr_desc").innerHTML="";dojo.query(".tr_star").forEach(function(d){dojo.removeClass(d,"tr_filled_star");if(dojo.attr(d,"trValue")<=b){dojo.addClass(d,"tr_filled_star");}if(c&&dojo.attr(d,"trValue")==b){dojo.byId("tr_desc").innerHTML=dojo.attr(d,"trText");}});dojo.query(".tr_description").forEach(function(d){d.innerHTML=c;});};this.rateTimeline=function(c,d,b){if(!dojo.attr(dojo.byId("tr_cont"),"trRated")){dojo.attr(dojo.byId("tr_cont"),"trValue",c);dojo.attr(dojo.byId("tr_cont"),"trRated",true);this._showRatingValue(c,false);API_SVC.rateTimeline(d,b,c);dojo.byId("tr_desc").innerHTML=M.TIMELINE_RATING_THANKS;dojo.publish("logAjaxEvent",["social","rate-timeline",d,c]);}};this.showHomeStatus=function(){dojo.query(".home_status .status_msg").style("display","none");dojo.query(".home_status .link_change").style("display","none");dojo.query(".home_status .link_done").style("display","inline");dojo.query(".home_status .status_input").style("display","inline").forEach("item.focus();item.select();");};this.hideHomeStatus=function(){dojo.query(".home_status input").forEach(function(b){dojo.query(".home_status .status_msg").forEach(function(d){var c=dojo.trim(b.value);if((c.length>2)&&(d.innerHTML!=c)){d.innerHTML=ut.escapeHTML(b.value);API_SVC.updateStatus(b.value);}}).style("display","inline");}).style("display","none");dojo.query(".home_status .link_change").style("display","inline");dojo.query(".home_status .link_done").style("display","none");};this.keyHomeStatus=function(c,b){var b=b||window.event;var d=b.which||b.keyCode;if(d==13){this.hideHomeStatus();}};this.checkDisplayName=function(c){var b=dojo.byId("displayName").value;dojo.query(".dn_preview").forEach("item.innerHTML = '"+b+"';");clearTimeout(a.dnTimer);if(dojo.query(".dn_check_loading").style("display")=="none"){dojo.query(".dn_msg").style("display","none");dojo.query(".dn_check_loading").style("display","block");dojo.query(".dn_preview_pre").style("display","none");}a.dnTimer=setTimeout(function(){API_SVC.checkDisplayName(b,c).addCallback(a._onDisplayNameResult);clearTimeout(a.dnTimer);},2000);};this._onDisplayNameResult=function(b){dojo.query(".dn_check_loading").style("display","none");if(b.result=="error"){dojo.query(".dn_preview").style("color","red");dojo.query(".dn_msg").style("color","red");dojo.query(".dn_msg").forEach("item.innerHTML = '"+M.DISPLAY_INVALID+"';");dojo.query(".dn_msg").style("display","block");dojo.query(".dn_preview_pre").style("display","none");}else{if(b.result=="no"){dojo.query(".dn_preview").style("color","red");dojo.query(".dn_msg").style("color","red");dojo.query(".dn_msg").forEach("item.innerHTML = '"+M.DISPLAY_TAKEN+"';");dojo.query(".dn_msg").style("display","block");dojo.query(".dn_preview_pre").style("display","none");}else{dojo.query(".dn_preview").style("color","green");dojo.query(".dn_msg").style("display","none");dojo.query(".dn_preview_pre").style("display","block");}}};this.recheckToAddressHeight=function(){tarea=dojo.byId("toAddresses");var c=tarea.value;var b=parseInt((c.length/45))+1;dojo.style(tarea,"height",(b*17)+"px");};this.deleteMessage=function(b,c){API_SVC.deleteMessage(b,c);dojo.toggleClass(dojo.byId("message_"+b),"hidden");};this.deleteNotification=function(b,c){API_SVC.deleteMessage(b,c);dojo.toggleClass(dojo.byId("message_"+b),"hidden");dojo.toggleClass(dojo.byId("notif_seperator_"+b),"hidden");};this.sendMessage=function(){var b=true;dojo.byId("subject_err").innerHTML="";dojo.byId("email_err").innerHTML="";if(dojo.query("[name='personid']").length<=0){dojo.byId("email_err").innerHTML="[No destination mail ids provided]";return;}if(dojo.trim(dojo.byId("subject").value)<=0){dojo.byId("subject_err").innerHTML="[Subject cannot be empty]";return;}document.compose_message_form.submit();};this.togglePicasaMemoirForm=function(){if(dojo.byId("allowOrganize").checked==true){dojo.query(".memoir_form").addClass("hidden");}else{dojo.query(".memoir_form").removeClass("hidden");}};this.uploadPicasa=function(){var e=true;dojo.query(".fielderror").addClass("hidden").forEach(function(h){h.innerHTML="";});dojo.query("input[name='participantemail']",dojo.byId("picasa_participants")).forEach(function(k){var h=ut.getEmail(k.value);if(h){}else{dojo.addClass(k.parentNode,"suggest_error");e=false;}});if(!e){dojo.byId("email_err").innerHTML="[Invalid email Id]";dojo.removeClass(dojo.byId("email_err"),"hidden");}if(!e){return;}if(dojo.trim(dojo.byId("title").value)<=0){dojo.byId("title_err").innerHTML="[Title cannot be empty]";dojo.removeClass(dojo.byId("title_err"),"hidden");return;}var c,d,b,g,f;dojo.query("[name='month'] option").forEach(function(h){if(h.selected){f=parseInt(h.value)-1;}});dojo.query("[name='date']").forEach(function(h){c=parseInt(h.value,10);});dojo.query("[name='year']").forEach(function(h){d=parseInt(h.value,10);});dojo.query("[name='hour']").forEach(function(h){b=parseInt(h.value,10);});dojo.query("[name='minute']").forEach(function(h){g=parseInt(h.value,10);});dateObj=new Date(d,f,c,b,g);if(dateObj.getDate()!=c||dateObj.getMinutes()!=g){dojo.byId("date_err").innerHTML="[Date is invalid]";dojo.removeClass(dojo.byId("date_err"),"hidden");return;}dateString=[dateObj.getUTCFullYear(),"-",(dateObj.getUTCMonth()+1),"-",dateObj.getUTCDate(),"T",dateObj.getUTCHours(),":",dateObj.getUTCMinutes(),":",dateObj.getUTCSeconds(),"Z"].join("");dojo.query("[name='happened']").forEach(function(h){h.value=dateString;});document.picasa_memoir_form.submit();};dojo.subscribe("showRating",this,"showRating");dojo.subscribe("showDefaultRating",this,"showDefaultRating");dojo.subscribe("rateTimeline",this,"rateTimeline");dojo.subscribe("createTopic",this,"createTopic");dojo.subscribe("createUser",this,"createUser");dojo.subscribe("checkDisplayName",this,"checkDisplayName");dojo.subscribe("recheckToAddressHeight",this,"recheckToAddressHeight");dojo.subscribe("deleteMessage",this,"deleteMessage");dojo.subscribe("deleteNotification",this,"deleteNotification");dojo.subscribe("sendMessage",this,"sendMessage");dojo.subscribe("uploadPicasa",this,"uploadPicasa");dojo.subscribe("togglePicasaMemoirForm",this,"togglePicasaMemoirForm");this._onFetchRecent=function(c){if(c.stat!="ok"){return;}var b=c.result;if(b.length>0){var e='<li><span class="title">Recent Lifeblobs</span></li>';for(var d=0;d<b.length;d++){var f=b[d];e+='<li><a href="'+f.url+'">'+f.name+"</a></li>";}dojo.query(".menu").forEach(function(g){dojo.query(".spinner",g).style("display","none");if(dojo.attr(g,"tabType")=="timeline"){g.innerHTML+=e;}});}else{dojo.query(".menu .spinner").style("display","none");}};this.truncate=function(d,c,b){var b=b||"...";return(d.length>c)?d.substr(0,c-b.length)+b:d;};console.timeEnd("PageUtil");}var pu=new PageUtil();dojo.require("dojo.hash");dojo.declare("Hash",null,{constructor:function(){this.hash="";},initialize:function(){var a=this;a.timelinePage=window.th?true:false;dojo.subscribe("/dojo/hashchange",a,"_onChange");dojo.subscribe("hash",a,"_set");dojo.subscribe("chgLoc",a,"_set");},_set:function(c,a){var b=this;if(b.timelinePage){var d=th.opts;if(d.embedded||d.obj.type==DERIVED_TYPE||d.ignoreUrl){return;}}if(c!=this.hash){this.hash=c;dojo.hash(c,a);}},_onChange:function(c){var a=this,d=a.hash,b;if(c==d){return;}b=dojo.queryToObject(c);a.hash=c;if(a.timelinePage&&b.at){a._timelineChanges(b,dojo.queryToObject(d));}else{}},_timelineChanges:function(e,d){var c=th.my.timeline;if(!e.mid){dojo.publish("closeBlob",[null,false]);}if(e.max||!d.at){c.redraw({zoom:true,at:e.at,id:e.mid,max:e.max,history:true});}else{var a=Date.parseDate(e.at,DP[2],true).getTime(),b=Date.parseDate(d.at,DP[2],true).getTime();c.moveBy(a>b?-1:1);}}});new Hash().initialize();dojo.declare("Base",null,{handles:{},clearElement:function(a){while(a.childNodes.length>0){a.removeChild(a.firstChild);}},isEmpty:function(a){return(a==undefined)||/^\s*$/.test(a);},stripTags:function(a){return a.replace(/<\/?[^>]+>/gi,"");},stripScripts:function(a){return a.replace(new RegExp("(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)","img"),"");},truncate:function(c,b,a){var a=a||"...";return(c.length>b)?c.substr(0,b-a.length)+a:c;},clearSelection:function(){if(document.selection&&document.selection.empty){document.selection.empty();}else{if(window.getSelection){var a=window.getSelection();if(a&&a.removeAllRanges){a.removeAllRanges();}}}},connect:function(a,c,b,e){var d=dojo.connect(c,b,e);if(this.handles[a]){dojo.disconnect(this.handles[a]);}this.handles[a]=d;},disconnect:function(a){if(this.handles[a]){dojo.disconnect(this.handles[a]);delete (this.handles[a]);}}});dojo.declare("Size",null,{constructor:function(b,a){this.width=b;this.height=a;},equals:function(a){if((a.width==this.width)&&(a.height==this.height)){return true;}return false;}});dojo.declare("Bounds",null,{constructor:function(){this.xMid=new Date();this.xMin=this.xMid;this.xMax=this.xMid;},contains:function(a){return((this.xMin<=a)&&(this.xMax>=a));},include:function(a){if(this.xMin>a){this.xMin=a;}else{if(this.xMax<a){this.xMax=a;}}}});dojo.declare("Point",null,{constructor:function(a,b){this.x=(!a)?0:a;this.y=(!b)?0:b;},equals:function(a){if((a.x==this.x)&&(a.y==this.y)){return true;}return false;}});dojo.declare("Control",Base,{initialize:function(a){this.timeline=a;},remove:function(){},getName:function(){},getIcon:function(){},appHandle:function(){return false;},show:function(){}});dojo.require("dojo.io.script");dojo.declare("PublisherControl",Control,{initialize:function(c){var b=this,a=LB.getUser(),e=c.obj;if(!a.logged){return;}b.callCount=0;b.suggestControls=[];b.addToTimelines=[];b.timeline=c;b.addToTimelines=[];b.isOwnTimeline=(e.type=="user"&&a.person.id==e.id);if(e.type=="topic"){b.timelineType=4;b.addToTimelines.push({key:e.name,value:{k:"tid",v:e.id},disabled:true});b.addToTimelines.push({key:"My Timeline",value:{k:"pid",v:a.person.id},disabled:false});}else{if((e.type=="user"||e.type=="facebookapp")&&a.person.id!=e.id&&e.id>0){b.addToTimelines.push({key:e.name,value:{k:"pid",v:e.id},disabled:true});b.addToTimelines.push({key:"My Timeline",value:{k:"pid",v:a.person.id},disabled:true});}else{if((e.type=="facebookapp")&&e.fbid){b.addToTimelines.push({key:e.name,value:{k:"fbid",v:e.fbid},disabled:true});b.addToTimelines.push({key:"My Timeline",value:{k:"pid",v:a.person.id},disabled:true});}else{b.addToTimelines.push({key:"My Timeline",value:{k:"pid",v:a.person.id},disabled:true});}}}dojo.query(".publisher").forEach(function(f){b.cont=f;b.handler=dojo.connect(f,"onclick",b,"_clickHandlers");dojo.query(".act_on_enter").onkeydown(function(g){if(g.keyCode==13){b._postShort();}});});dojo.query(".person_input").forEach(function(f){var g=new Suggest(f,"add_","suggest.all",{helpText:"Start typing a person name, email id or lifeblob name",newValueText:"email",initialValues:b.addToTimelines,callbacks:{onshow:dojo.hitch(b,"_onSShow"),onhide:dojo.hitch(b,"_onSHide")}});g.initialize();b.suggestControls.push(g);});b.resetDate();var d=dojo.byId("dateOffset");if(d){d.value=new Date().getTimezoneOffset()*60000;}},_onSShow:function(){dojo.query(".publisher select").style("visibility","hidden");},_onSHide:function(){dojo.query(".publisher select").style("visibility","visible");},getHappened:function(){var c,f,d,b,g,a,e;dojo.query("tr.happened").forEach(function(h){dojo.query("[name='month'] option",h).forEach(function(k){if(k.selected){f=parseInt(k.value)-1;}});dojo.query("[name='date']",h).forEach(function(k){c=parseInt(k.value,10);});dojo.query("[name='year']",h).forEach(function(k){d=parseInt(k.value,10);});dojo.query("[name='hour']",h).forEach(function(k){b=parseInt(k.value,10);});dojo.query("[name='minute']",h).forEach(function(k){g=parseInt(k.value,10);});});a=new Date(d,f,c,b,g);if(a.getDate()!=c||a.getMinutes()!=g){return false;}e=[a.getUTCFullYear(),"-",(a.getUTCMonth()+1),"-",a.getUTCDate(),"T",a.getUTCHours(),":",a.getUTCMinutes(),":",a.getUTCSeconds(),"Z"].join("");return e;},getAddTo:function(c,a){var b=[];dojo.query("#"+c+" [name='"+a+"']").forEach(function(d){b.push(d.value);});return b;},reset:function(a){dojo.query("tr[advanced='"+a+"']").addClass("hidden");dojo.query("tr.publisher_advanced[advanced='"+a+"']").removeClass("hidden");ref.resetDate();},resetDate:function(){var a=new Date();dojo.query("tr.happened").forEach(function(b){dojo.query("[name='month'] option",b).forEach(function(c){if((parseInt(c.value)-1)==a.getMonth()){c.selected=true;}});dojo.query("input",b).forEach(function(d){var c=dojo.attr(d,"name"),e;switch(c){case"date":e="0"+a.getDate();e=e.substr(e.length-2,2);d.value=e;break;case"year":d.value=""+a.getFullYear();break;case"hour":e="0"+a.getHours();e=e.substr(e.length-2,2);d.value=e;break;case"minute":e="0"+a.getMinutes();e=e.substr(e.length-2,2);d.value=e;break;}});});dojo.query(".date_error").style("display","none");},_setWaitingState:function(){var b=this,a=b.cont;b.waiting=true;dojo.query("img",a).removeClass("hidden");dojo.query("a.gray_rounded_button",a).addClass("hidden");},_clearWaitingState:function(){var b=this,a=b.cont;b.waiting=false;dojo.query("img",a).addClass("hidden");dojo.query("a.gray_rounded_button",a).removeClass("hidden");},_clear:function(){var c=this,a=c.cont;for(var b in c.suggestControls){c.suggestControls[b].clear();c.suggestControls[b].addSelected(c.addToTimelines);}dojo.query(".publisher_extra",a).forEach(function(d){d.innerHTML="";});dojo.query(".advanced",a).addClass("hidden");dojo.query("input[type='text']",a).forEach(function(d){d.value="";});dojo.query(".publisher_tab input[type='checkbox']").forEach(function(d){d.checked=dojo.attr(d,"advanced")?true:false;});dojo.query(".publisher textarea").forEach(function(d){d.value="";});dojo.query(".publisher_upload_question_cont").addClass("hidden");dojo.query("#publisher_upload_question").forEach(function(d){d.checked=false;});dojo.query(".publisher_status_update",a).forEach(function(d){d.value=dojo.attr(d,"defaultText");dojo.addClass(d,"publisher_status_default");});},_clickHandlers:function(e){var d=this,c=e.target,a=d.cont,f=dojo.attr(c,"action"),b=dojo.attr(c,"actionParams");if(d.waiting==true){return;}switch(f){case"publisherTab":dojo.query(".publisher_label",a).forEach(function(h){var g=dojo.attr(h,"actionParams");if(g==b){dojo.addClass(h,"active_publisher_label");}else{dojo.removeClass(h,"active_publisher_label");}});dojo.query(".publisher_tab",a).forEach(function(h){var g=dojo.attr(h,"publisherTab");if(g==b){dojo.removeClass(h,"hidden");}else{dojo.addClass(h,"hidden");}});break;case"statusClick":if(dojo.hasClass(c,"publisher_status_default")){dojo.removeClass(c,"publisher_status_default");c.value="";c.focus();c.handler=dojo.connect(c,"onblur",d,"_statusBlurHandler");}break;case"addPhoto":d._addPhoto();break;case"addVideo":d._addVideo();break;case"videoInput":if(dojo.hasClass(c,"publisher_input_default")){c.value="";dojo.removeClass(c,"publisher_input_default");c.focus();c.handler=dojo.connect(c,"onblur",d,"_videoBlurHandler");}break;case"advanced":dojo.query(".advanced").toggleClass("hidden");break;case"postShort":d._postShort();break;case"postBlob":d._postBlob();break;case"uploadOption":if(dojo.byId("publisher_upload_question").checked){dojo.query(".publisher_upload_help").removeClass("hidden");}else{dojo.query(".publisher_upload_help").addClass("hidden");}break;}},_statusBlurHandler:function(b){var a=b.currentTarget;if(a.value==""){a.value=dojo.attr(a,"defaultText");dojo.addClass(a,"publisher_status_default");dojo.disconnect(a.handler);}},_addPhoto:function(){var c=this,a=c.cont;var b=document.createElement("div");dojo.addClass(b,"publisher_extra_photo");b.innerHTML=['<div class="publisher_extra_field_cont">','<div class="publisher_extra_field">',M.PHOTO,"</div>",'<input type="file" name="upload" size="43">',"</div>"].join("");dojo.query(".publisher_extra",a).forEach(function(d){d.appendChild(b);});dojo.query(".publisher_upload_question_cont").removeClass("hidden");},_addVideo:function(){var c=this,a=c.cont;var b=document.createElement("div");dojo.addClass(b,"publisher_extra_video");b.innerHTML=['<div class="publisher_extra_field_cont">','<div class="publisher_extra_field">',M.VIDEO,"</div>",'<input type="text" name="video" class="publisher_input publisher_input_default" defaultText="',M.PUBLISHER_YOUTUBE_PROMPT,'" action="videoInput">',"</div>"].join("");dojo.query(".publisher_extra",a).forEach(function(d){d.appendChild(b);});dojo.query(".publisher_input",b).forEach(function(d){d.value=dojo.attr(d,"defaultText");});},_videoBlurHandler:function(b){var a=b.currentTarget;if(a.value==""){a.value=dojo.attr(a,"defaultText");dojo.addClass(a,"publisher_input_default");dojo.disconnect(a.handler);}},_postShort:function(){var c=this,a=c.cont,d=c.timeline.obj,b;dojo.query(".publisher_status_update",a).forEach(function(f){var e=f.value;if(c.isOwnTimeline){API_SVC.updateStatus(e,true).addCallback(c,"_onPostStatus",e);}else{switch(d.type){case"user":b=1;break;case"topic":b=4;break;}API_SVC.postTimelineComment(d.id,b,e,true).addCallback(c,"_onPostStatus",e);}c._setWaitingState();});},_onPostStatus:function(c,a){var b=this;b._clearWaitingState();if(a.stat!="ok"){console.log("Error. Code:"+a.code+" Desc:"+a.desc);return;}b._clear();dojo.publish("shortAdded",[a.result]);},_postBlob:function(){var b=this,p=b.cont,k=dojo.byId("text_title").value,d=dojo.byId("text_desc").value,a=dojo.byId("text_public").checked?3:2,h=dojo.byId("isLinkEText").checked,g=dojo.byId("publisher_upload_question").checked,l=b.getHappened("text"),c=b.getAddTo("textPost","add_pid"),f=b.getAddTo("textPost","add_fbid"),o=b.getAddTo("textPost","add_tid"),e=Suggest.getEmails("#textPost [name='add_email']"),m;if(!e){dojo.query("#text_email_error").style("display","block");dojo.query("#textPost input.suggest_text_box").onkeydown(function(q){dojo.query("#text_email_error").style("display","none");});return;}else{if(!k){dojo.query("#text_title_error").style("display","block");dojo.query("#text_title").onkeydown(function(q){dojo.query("#text_title_error").style("display","none");});return;}else{if(!l){console.log("3");dojo.query("tr.happened .date_error").style("display","block");dojo.query("tr.happened input").onkeydown(function(q){dojo.query("tr.happened .date_error").style("display","none");});return;}}}b._setWaitingState();dojo.io.iframe.send({form:dojo.byId("textPost"),handleAs:"application/json",content:{increment:this.callCount++,fileFields:""},handle:function(q){b._clearWaitingState();q=dojo.fromJson(q);if(q.status==0){m=b._constructMemoir(q.result);b._clear();b._showMemoir(m);if(g){dojo.publish("editPhotos",[m]);}dojo.publish("memoirAdded",[m]);}else{if(q.status==-2){dojo.query("tr.happened .date_error").style("display","block");dojo.query("tr.happened input").onkeydown(function(r){dojo.query("tr.happened .date_error").style("display","none");});}}dojo.publish("logEvent",["/lb/blob/new"]);}});},_constructMemoir:function(a){var h=a,d=a.people,e=this.timeline.obj.timeline,f=e?e.getObj():undefined,g=(e==undefined),c=e?e.manager:undefined,b;h.id=a.id;h.title=a.title;h.happened=Date.parseDate(a.happened,DP[1]);h.updated=Date.parseDate(a.updated,DP[1]);h.visibility=a.visibility;h.tags=a.tags;h.desc=a.desc;h.created=a.created;h.photo=a.photo;h.video=a.video;if(window.FB&&window.FB.Connect&&FB.Connect.get_loggedInUser()&&FB.Connect.get_loggedInUser()!=""){h.fbPublish=true;}if(d){for(b=0;b<d.length;b++){if(d[b].id==a.created.by){h.created.by_person=d[b];break;}}}c.addMemoir(h);return h;},_showMemoir:function(b){var a=this.timeline.obj.timeline;a.redraw({zoom:true,id:b.id,max:true,at:b.happened.dateFormat(DP[1])});}});dojo.require("dojo.fx.easing");dojo.declare("MemoirBase",Base,{constructor:function(b,d){var a=this,c=(d||{});a.CONTEST_TOPIC=3613622;dojo.query(".mm").forEach(function(e){c.cycleMode=false;a.params=c;a.timeline=b;a.ignoreUrl=c.ignoreUrl;a.loggedUser=LB.getUser(),a.current={id:0,seq:0,type:0};dojo.connect(e,"onclick",a,"_clickHandlers");dojo.subscribe("keypressed",a,"_keyHandlers");dojo.subscribe("suggest.rebuild",a,"_loadAddGroups");a.closeHandle=dojo.subscribe("closeBlob",a,"close");});a.skipPhotoTrack=true;},getId:function(){return this.data.id;},getData:function(){return this.data;},getObj:function(){return this.timeline.obj;},prev:function(c){var f=this,d=cm.get("memoir.cache_ordered"),b=dojo.indexOf(d,f.memoir),e=f.timeline,a;if(b>0){a=d[b-1];if(c){e.moveBy(1);}return a;}},next:function(c){var f=this,d=cm.get("memoir.cache_ordered"),b=dojo.indexOf(d,f.memoir),e=f.timeline,a;if(b<d.length-1){a=d[b+1];if(c){e.moveBy(-1);}return a;}},isPrev:function(){var d=this,b=cm.get("memoir.cache_ordered"),a=dojo.indexOf(b,d.memoir),c=d.timeline;if(a>0){return b[a-1]||(c.getObj().bounds.xMin.getTime()<b[0].data.happened.getTime());}},isNext:function(){var d=this,b=cm.get("memoir.cache_ordered"),a=dojo.indexOf(b,d.memoir),c=d.timeline;if(a<b.length-1){return b[a+1]||(c.getObj().bounds.xMin.getTime()>b[b.length-1].data.happened.getTime());}},maximize:function(h,g){xp=h;var f=this;f.memoir=h;f.data=h.getData();f.sizeMap={};window.scrollTo(0,0);if(!g||!g.evt){return f._maximize(g);}var e=dojo.create("div",{"class":"ld"},dojo.body()),c=window.innerWidth||document.body.clientWidth,d=1002-24,a=465,b=g.evt;dojo.animateProperty({node:e,duration:500,onBegin:function(){dojo.style(e,{background:"#ececec",border:"1px solid #ccc",width:"1px",height:"1px",opacity:0.3,zIndex:100,position:"absolute",left:b.pageX+"px",top:b.pageY+"px"});},properties:{width:{start:1,end:d,unit:"px"},height:{start:1,end:a,unit:"px"},opacity:{end:1},left:{start:b.pageX,end:(c-d)/2-7,unit:"px"},top:{start:b.pageY,end:51,unit:"px"}},onEnd:function(){f._maximize(g);document.body.removeChild(e);}}).play();},_maximize:function(x){th.maximized=true;this.params=x;var w=this.data,h=this,y=w.photos,l=w.photo||w.video,c={1:M.MAX_VISIBILITY_ME,2:M.MAX_VISIBILITY_PARTICIPANTS,3:M.MAX_VISIBILITY_EVERYONE},g="",o=h.prev(false),p=h.next(false),r="",e="",k=h.loggedUser.person,u=(k.id==-1),m="",v=w.visibility,q="No more posts",b=q,t;t=dojo.query(".mm")[0];if(o){b="Previous: "+o.data.title;}r=["<img action='blob-left' style ='margin-right:3px' class='ai ",(o?"":"hide"),"' src='http://cdn1.lifeblob.com/lifeblob/img/timeline/maxblob/move-left.v1b81ab.png' title='",b,"'/>"].join("");b=p?("Next: "+p.data.title):q;e=["<img action='blob-right' style='margin-right:3px;' class='ai ",(p?"":"hide"),"' src='http://cdn2.lifeblob.com/lifeblob/img/timeline/maxblob/move-right.vdb64e3.png' title='",b,"'/>"].join("");var f=["http://www.lifeblob.com/blob/",ut.getSEOText(w.title),"/show/",w.id].join("");f=escape(f);f=f.replace("+","%2B");f=f.replace("/","%2F");var a=["mailto:?subject=Check%20out%20",w.title,"&body=Hi,%0D%0A%0D%0AI%20would%20like%20to%20share%20this%20post%20about%20%22",w.title,"%22%20with%20you.%0D%0A%0D%0AHere%20is%20the%20link:%20",f,"%3Fsrc%3Demail_share%0D%0A%0D%0A%0D%0A%0D%0ASent%20from%20http%3A%2F%2Fwww.lifeblob.com"].join("");t.innerHTML=["<div class='blinder'></div>","<div class='container'>","<table cellpadding=0 cellspacing=0 border=0 style='width:100%'>","<tr><td><div class='tl'></div></td><td class='tmd'><div class='tm'></div></td><td><div class='tr'></div></td></tr>","<tr><td class='ml'></td><td class='mid_mid'>","<div class='enclosure'>","<div class='links' style='float: right; padding-top: 8px; padding-right: 22px;'>",r,e,"<a action='close'><img action='close' class='ai' src='http://cdn0.lifeblob.com/lifeblob/img/timeline/maxblob/close.vb46fd9.png' title='Close'/></a>","</div>","<div class='header clearall'>","<div class='lhs'>","<h1 class='title'>",w.title,"</h1>","<div class='by_author'>","<span class='c9'>by </span>","<a class='by' href='",ut.getUrl({display:w.created.by_person.displayName,type:PERSON_TYPE}),"'>",w.created.by_person.name,"</a>","<span class='dt'> on ",w.happened.dateFormat("d M Y"),"</span>","<span class='vw hidden'></span>","</div>","</div>",'<div class="rhs">','<div class="sharebuttons">','<div class="rd_right">','<iframe width="72" scrolling="no" height="20" frameborder="0" style="float:left;padding-top:2px;" src="http://api.tweetmeme.com/button.js?url=http%3A//www.lifeblob.com/blob/',w.title,"/show/",w.id,'&amp;style=compact"></iframe>','<a class="fbshare" ext="facebook" action="share-ext" href="http://www.facebook.com/sharer.php?u=',f,'" title="Submit ',w.title,' on Facebook" target="_blank"></a>','<a title="Embed in blog" class="embed" href="">','<img src="http://cdn0.lifeblob.com/lifeblob/img/theme-gray/common/share/embed.vde6789.png"/>',"</a>","</div>","</div>","</div>","</div>","<div class='content clearall'>","<div class='memoir_load'><img src='http://cdn0.lifeblob.com/lifeblob/img/theme-gray/spinners/hourglass.v199e1c.gif'/><div>",M.LOADING_MEMOIR,"</div></div>","<table class='t' border=0 cellpadding=0 cellspacing=0><tr>","<td class='left'></td>","<td class='right'></td>","</tr></table>","</div>","</td><td class='mr'></td></tr>","<tr><td><div class='bl'></div></td><td class='bmd'><div class='bm'></div></td><td><div class='br'></div></td></tr>","</table>","</div>"].join("");h.fetch();if(!l&&(!x||!x.history)&&!h.ignoreUrl){dojo.publish("chgLoc",[["at=",w.happened.dateFormat(DP[2]),"&mid=",w.id,"&max=true"].join("")]);}dojo.publish("logEvent",["/lb/blob/timeline/"+(h.isParticipant()?"own/":"other/")+h.getObj().type+(x&&x.auto?"/auto":"")]);},fetch:function(){var c=this,k=c.data,a=cm.get("memoir.cache_ordered"),m=-1,l=[],b=a.length,h,f,g=3,e=5,o;for(h=0;h<b;h++){if(a[h].data.id==k.id){m=h;break;}}if(k.max){c.showMaxStage();if(m>=g&&!a[m-g].data.max){for(h=(m-g),f=0;(h>=0&&f<e);h--,f++){o=a[h].data;if(!o.max){l.push(o.id);}}}if(m<(a.length-g)&&!a[m+g].data.max){for(h=(m+g),f=0;(h<a.length&&f<e);h++,f++){o=a[h].data;if(!o.max){l.push(o.id);}}}if(l.length>0){API_SVC.fetchDetails({memoirIds:l}).addCallback(c,"_onFetchDetails");}}else{l.push(k.id);for(h=(m-1),f=0;(h>=0&&f<e);h--,f++){o=a[h].data;if(!o.max){l.push(o.id);}}for(h=(m+1),f=0;(h<a.length&&f<e);h++,f++){o=a[h].data;if(!o.max){l.push(o.id);}}API_SVC.fetchDetails({memoirIds:l}).addCallback(c,"_onFetchDetails");}},close:function(a,b,f){var c=this,e=c.data;if(e){dojo.query(".mm").forEach("item.innerHTML=''");c.sizeMap={};if(!b&&!c.ignoreUrl){dojo.publish("chgLoc",[["at=",e.happened.dateFormat(DP[2])].join("")]);th.maximized=false;}if(a){dojo.stopEvent(a);}dojo.publish("logAjaxEvent",["nav","blob-close","blob"]);}},_onFetchDetails:function(a){if(a.stat!="ok"){console.log("Error. Code:"+a.code+" Desc:"+a.desc);return;}var c=this,u=c.data,e=a.result,t=new Object(),k=cm.get("memoir.cache_ordered"),h=k.length,l=-1,o=10,v=e.length,g,q,d,r,p,b,m=false,f=false;for(r=0;r<h;r++){if(k[r].data.id==u.id){l=r;break;}}for(r=(l-1),p=0;(r>=0&&p<o);r--,p++){memoir=k[r].data;if(!memoir.max){t[memoir.id]={pos:r,memoir:memoir};}}for(r=(l+1),p=0;(r<k.length&&p<o);r++,p++){memoir=k[r].data;if(!memoir.max){t[memoir.id]={pos:r,memoir:memoir};}}for(r=0;r<v;r++){q=e[r];m=(u.id==q.id);d=t[q.id];if(m){g=u;f=true;}else{if(d){g=d.memoir;}else{console.log("Ignoring");console.log(q);continue;}}q.happened=g.happened;q.updated=g.updated;q.created=g.created;q.photo=g.photo;q.video=g.video;q.fbPublish=g.fbPublish;q.max=true;q.likers={photos:{},videos:{}};q.photorecommendations={};q.videorecommendations={};q.photoviews={};q.videoviews={};if(q.service.id==APP_TYPE.SUGGEST){q.isProcessed=false;if(q.photos){for(p=0;p<q.photos.length;p++){q.photos[p].toBeDeleted=true;}}}if(!c.isEmpty(g.desc)){q.descFull=q.desc;q.desc=g.desc;q.hasDesc=true;}else{q.hasDesc=false;}b=q.people;if(b){for(p=0;p<b.length;p++){if(b[p].id==q.created.by){q.created.by_person=b[p];break;}}}if(m){c.data=q;if(k[l]){k[l].data=q;}}else{if(d){k[d.pos].data=q;}}}if(f){c.showMaxStage();}},showMaxStage:function(){var S=this,X=S.data,K=X.title,x=S.getObj(),b=(X.photos?X.photos.length:0),f=(X.videos?X.videos.length:0),z=X.hasDesc,u=b+f,F=u+(z?1:0),P=S.loggedUser.person,W=S.isOwner(),L=S.isContributor(),C=S.isParticipant(),e=(W||L||C),Q=(W||C),t=S.hasDelete(),k=S.isTimelineOwner(),O=(P.id==-1),Z=X.likes||[],y=X.people,g=X.place,G=X.tags,T=X.topics,U=ut.getSEOText(X.title),o=X.service,A=o.id,m=o.source,h=(A==APP_TYPE.FREEBASE||A==APP_TYPE.DAYLIFE),l=["http://www.lifeblob.com/blob/",U,"/show/",X.id].join(""),H=l,w=0,q=0,R=(b>0),v=R,Y=escape(l),a=S.params,J=S._getThumbs(a),r=G?G.length:0,B=(X.comments?X.comments.items.length:0),D=0,V,E,p,c,I;X.tagMap={};X.likes=Z;S.current={id:0,seq:0,type:0};if(r){for(I=0;I!=r;I++){var N=G[I];X.tagMap[N.id]=N;}}console.log(x);if(x.contest||(x.type==TOPIC_TYPE&&x.category&&x.category==521)){X.voteMode=true;}X.seoTitle=U;X.isEditable=e;l=escape(l);l=l.replace("+","%2B");l=l.replace("/","%2F");X.url=l;X.liked=S._isLiking(),S._rebuildTagCloud();dojo.query(".memoir_load").orphan();dojo.query(".mm .content .left").forEach(function(aa){if(J&&J.matched){v=true;c=J.matched;if(c.type==1){R=true;w=c.seq;if(w>0){D=w;}}else{q=c.seq;R=false;if(q>0){D=q+b;}}}var ah=(!y||!y.length),ai=!g,aj=(!T||!T.length);E=["<table cellspacing='0' cellpadding='0' border='0' class='pt'>","<td class='mmtd td'></td>","<td class='td'>"];if(z){var ag="<div>"+dojo.trim(X.descFull)+"</div>",d=dojo.place(ag,"dummy","only");E.push("<div class='dect ",(u>0?"hidden":""),"'><div class='desc'><div class='c'>");E.push("<div class='cont'>",d.innerHTML,"</div></div></div>");E.push("<div class='ac hidden'><img title='Scroll Up' action='text-up' src='http://cdn2.lifeblob.com/lifeblob/img/timeline/maxblob/desc_up.vcaf0b1.png' class='img invisible'/>");E.push("<img title='Scroll Down' action='text-down' src='http://cdn1.lifeblob.com/lifeblob/img/timeline/maxblob/desc_down.v021bf2.png' class='img'/></div></div>");}if(Q){dojo.addClass(aa,"showdef");}if(u){var af="hide",ab=D!=0,ad=(D<F+1&&F!=1),ae="";if(F<=1){af="hidden";}if(e){var ac=['<span class="cs nav-li">','<a class="link la">Tools</a>','<ul class="nav-sub-ul">','<li class="nav-sub-li f hidden"><a class="nav-sub-a" target="_blank" href="">Download photo</a></li>','<li class="nav-sub-li cover ',u?"":"hidden",'">','<a class="nav-sub-a" action="album-cover">',"Set as album cover",'<img class="l hidden" src="http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif"/>','<img class="ls hidden" src="http://cdn2.lifeblob.com/lifeblob/img/common/success-16.v92e1e1.png"/>',"</a>","</li>",'<li class="nav-sub-li rotate hidden"><a class="nav-sub-a" action="rotate" angle="270">Rotate left <img class="l hidden" src="http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif"/></a></li>','<li class="nav-sub-li rotate hidden"><a class="nav-sub-a" action="rotate" angle="90">Rotate right <img class="l hidden" src="http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif"/></a></li>',"</ul>","</span>"];ae=ac.join("");}E.push("<div class='media'>","<div class='pc fl'>","<div class='lk'>","<div class='fl'>","<a class='media_prev boldh' action='media_prev'>« Prev</a><a class='media_next boldh' action='media_next'>Next »</a>","</div>","<div class='fr'>",ae,"<span class='cs c'>","<a class='link ha la' action='comment-show'>",M.COMMENT,"</a> <span class='cnt'>",(B>0?"("+B+")":""),"</span>","</span>","<span class='likes'>&nbsp;</span>","</div>","</div>",R?["<div class='ild'><img src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/hourglass-gray.ve9cc3d.gif'/></div>"].join(""):"","<div class='img soloimgholder clearall'>","</div>","<div class='ta' action='tag'></div>","<div class='ptc'>","<div class='fs'><div class='fsi'></div></div>","<div class='pt'>","<div class='ti'>","<span class='pl'>",M.MAX_PHOTO_TAG_NAME,"</span>","<div class='tag_name' loaded='no'></div>","</div>","<div class='ti' style='display:none;margin-top:5px;'>","<span class='pl' style='padding-right:3px;'>",M.MAX_PHOTO_TAG_EMAIL,"</span>","<div class='tag_email' loaded='no'></div>","</div>","<div class='pb'>","<a href='javascript:void(0)' action='tag-save'>",M.MAX_PHOTO_TAG,"</a> | ","<a href='javascript:void(0)' action='tag-cancel'>",M.MAX_CANCEL,"</a>","</div>","</div>","</div>","</div>","</div>");}E.push("</td><td class='mmtd td'>");if(u){E.push("<img src='http://cdn1.lifeblob.com/lifeblob/img/theme-gray/spinners/spinner-16-blue.vb00628.gif' class='l'/>");}E.push("</td></table>");if(u){E.push("<div class='cp clearall'><div class='t'></div></div>","<div class='tg'><div class='h fl'>Face tags:</div><div class='tgr'><span class='p'></span><div class='t'>( click on photo to tag people you know )</div></div></div>","<div class='spd' action='showmore'>« show details »</div>",e?['<div class="ploc tc-places dh"><div class="h fl">Location:</div><div class="t">',S._getRelatedPHtml(e,"places",g?[g]:null,"related place","Edit"),"</div></div>"].join(""):"","<div class='mtg clearall dh'><div class='h fl'>Tags:</div><div class='t'></div></div>");}E.push("<div class='bcw clearall lpanelspacer'>",S._getCommentsHtml(),"</div>");E.push("<div class='vlist clearall lpanelspacer tc-people ",ah?"hidden":"","'>");E.push(S._getRelatedHListHtml(e,"people",y,"Shared with people","Edit"));E.push("</div>");E.push("<div class='vlist clearall lpanelspacer tc-lifeblobs ",aj?"hidden":"","'>");E.push(S._getRelatedVListHtml(e,"lifeblobs",T,"Shared with groups","Edit"));E.push("</div>");if(e&&(ah||aj)){E.push("<div class='sb ab clearall lpanelspacer'>");if(ah){E.push("<button type='button' action='edit-people'>Add People</button>");}if(aj){E.push("<button type='button' action='edit-lifeblobs'>Add to Groups</button>");}E.push("</div>");}if(h){E.push("<div class='attr clearall'></div>");}else{if(m){E.push("<div class='attr clearall'>Source: <a rel='nofollow' href='",m,"' target='_blank'>",K,"</a></div>");}}aa.innerHTML=E.join("");if(z){p=dojo.position(dojo.query(".mm .desc .cont")[0],true);if(p.h<=400){dojo.query(".mm .desc").style("paddingBottom","20px");}}if(h){S._showAttribution();}});dojo.query(".mm .content .right").forEach(function(ab){var ae="Edit",aa,ah,d=[];if(O){d.push('<div class="bloblinks invisible"></div>');}else{d.push('<div class="bloblinks"><div class="fl">','<div class="nav-li ug">','<a class="link la" action="addGrp" href="javascript:void(0)">Add to group</a>','<div class="grp"><div class="ld"><img src="http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif" class="va-m"/>Loading....</div></div>',"</div>");if(e||C){var ag="Delete";if(!S._submittedToContest()&&(C||W)){d.push('<span class="cs nav-li">','<a class="link la">Post to contest</a>','<ul class="nav-sub-ul" style="width: 178px;">','<li class="nav-sub-li cover submitToContestContainer"',u?"":"hidden",'">','<a class="nav-sub-a" style="white-space: nowrap;" action="submit-c">','<span style="white-space: nowrap;" action="submit-c">Colors of Spring photo contest</span>','<img class="l hidden submitToContest" src="http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif"/>','<span action="submit-c" style="white-space: nowrap;color: #b3b3b3; display:block; padding-top:3px;">Ends: March 31, 2010</span>',"</a>","</li>","</ul>","</span>");}d.push("</div>");d.push('<div class="fr">');if(e){d.push("<span class='nav-li nohover'><a class='link la' href='/blob/edit/",X.id);if(x.type==TOPIC_TYPE){d.push("?tid=",x.id);}d.push("'>Edit</a></span>");}if(C||W||k){if(t==0||t==1){d.push("<span class='nav-li nohover'><a class='link la'");if(t==0){d.push("title='",ag,"'action='delete'>");}else{d.push("title='",M.DELETE_POST,"'action='unlink'>");}d.push(ag,"</a></span>");}}}d.push("</div></div>");}d.push("<div class='bmt ",((F>1)?"":"hidden"),"'>");if(F>1){d.push(S._getThumbsHtml({},J));}d.push("</div><div class='pch'></div>");d.push("<div class='ct recoblock hidden'><div class='c'>","<div class='ld'>","<div class='recohead'>Related photos</div>","<div class='loading'><img class='l' src='http://cdn1.lifeblob.com/lifeblob/img/theme-gray/spinners/spinner-16-blue.vb00628.gif'/> Loading ...</div>","</div>","<div class='rcs'></div>","<div class='clearall'></div>","</div></div>","<div class='ct recoblock hidden'><div class='c'>","<div class='dt'></div>","<div class='clearall'></div>","</div></div>");if(a.ignoreUrl){}else{if(adVisible){d.push("<div class='ad_medium_rect'>","<iframe src='/ads/blob?blobId=",X.id,"&authKey=",X.authKey,"&adSize=2' width=300 height=250 scrolling='no' frameborder=0>","</div>");}}var ac=(!y||!y.length),ad=!g,af=(!T||!T.length);d.push("<div class='tc tc-likes hidden'></div>");ab.innerHTML=d.join("");});if(v){if(R){S._showSolo(w);}else{S._showVideo(q+b);}}else{if(z){if(p.h>400){dojo.query(".mm .dect .ac").removeClass("hidden");}}}dojo.query(".mm .header .vw").forEach(function(d){d.innerHTML="("+X.views+" views)";dojo.removeClass(d,"hidden");});S._loadAddGroups();},_getTags:function(d){var c=[],e=this.data.tagMap,b,a,f=d?d.length:0;if(f){for(b=0;b!=f;b++){a=e[d[b]];if(a){c.push(a);}}}return c;},_getViewHtml:function(){var c=this;if(parseInt(c.current.id)==0){return;}var e=c.data,b=c.current.id,a=c.current.type==1?e.photoviews[b]:e.videoviews[b];return["(",a," views",")"].join("");},_getLikeHtml:function(){var c=this;if(parseInt(c.current.id)==0){return;}var h=c.data,l=h.voteMode,b=c.current.id,e=c.current.type==1?h.likers.photos[b]:h.likers.videos[b],m=false,k=(e?e.length:0),a=c.loggedUser.person.id,g=["<a class='act' action='edit-likes'>"],f;if(k){for(f=0;f<k;f++){if(e[f]&&e[f].id==a){m=true;break;}}}if(m){g.push("<img class='img' action='edit-likes' src='http://cdn3.lifeblob.com/lifeblob/img/timeline/maxblob/like_off.v644ee4.png'/>");g.push("<span action='edit-likes' class='m ul'> ",(l?"Voted":"Liked")," <span action='edit-likes' class='c'>(",k,")</span></span>");}else{g.push("<img class='img' action='edit-likes' src='http://cdn0.lifeblob.com/lifeblob/img/timeline/maxblob/like_on.vc88ea3.png'/>");if(k){g.push("<span action='edit-likes' class='m'> ",(l?"Votes":"Likes")," <span action='edit-likes' class='c'>(",k,")</span></span>");}else{g.push("<span action='edit-likes' class='m'> ",(l?"Vote":"Like"),"</span>");}}g.push("</a>");return g.join("");},_setLikeHeader:function(){var a=this;dojo.query(".mm .media .lk .likes").forEach(function(b){b.innerHTML=a._getLikeHtml();});dojo.query(".header .vw").forEach(function(b){b.innerHTML=a._getViewHtml();});},_unsetLikeHeader:function(){var a=this;dojo.query(".mm .media .ltg .lk .likes").forEach(function(b){b.innerHTML="";});},_setCommentHeader:function(){var c=this.data,a=(c.comments?c.comments.items.length:0),b="";dojo.query(".mm .media .lk .c").forEach(function(d){if(a>0){b="("+a+")";}d.innerHTML=["<a class='link ha la' action='comment-show'>",M.COMMENT,"</a> <span class='cnt'>",b,"</span>"].join("");});},_rebuildTagCloud:function(g){var H=this,m={},k={},q=0,I=H.timeline,F=I.timelineFrequencyMap,Q=H.data,h=Q.id,A=Q.people,f=Q.place,J=Q.topics,C=Q.tags,S=Q.likes,P=A?A.length:0,p=J?J.length:0,u=C?C.length:0,l=S.length,L=5,v=0,R=Q.happened.dateFormat(DP[2]),o={},e="user",N="topic",b="tag",x="place",y="?src=max-blob#at=",c="&mid=",a="/";if(g){delete (Q.relations);}var O,w,B,z,G,D;H.tagCloud={};for(O=0;O!=P;O++){z=A[O];z.type=e;z.url=[a,e,a,z.displayName,y,R,c,h].join("");o[e+z.id]=z;}for(O=0;O!=l;O++){z=S[O];z.type=e;z.url=[a,e,a,z.displayName,"?src=max-blob-like#at=",R,c,h].join("");o[e+z.id]=z;}for(O=0;O!=p;O++){z=J[O];z.type=N;z.url=[a,N,a,z.displayName,y,R,c,h].join("");o[N+z.id]=z;}for(O=0;O!=u;O++){z=C[O];z.type=b;z.url=[a,b,a,z.displayName,y,R,c,h].join("");o[b+z.id]=z;}if(f){f.type=x;f.url=[a,x,a,f.displayName,y,R,c,h].join("");o[x+f.id]=f;}D=o.length;for(G in o){z=o[G];if(!k[G]){k[G]=z;m[G]=1;}else{m[G]=m[G]+1;}q++;}for(w in m){B=m[w];if(B>v){v=B;}if(B<L){L=B;}}for(G in k){B=m[G];m[G]=ut.getFrequencyBucket(F,(1+(B>L?7*(B-L)/(v-L):0))|0,k[G]);}L=65,v=0;for(w in m){B=m[w];if(B>v){v=B;}if(B<L){L=B;}}if(L==v){for(G in k){B=m[G];m[G]=ut.getFrequencyBucket(F,1,k[G]);}}else{L=Math.log(L);v=Math.log(v);for(G in k){B=Math.log(m[G]);m[G]=(1+(B>L?7*(B-L)/(v-L):0))|0;}}for(G in k){var K=k[G],B=m[G],E=ut.getIntersects(I.viewerFrequencyMap,K);H.tagCloud[G]={freq:B,interests:E};}},_isLiking:function(){var e=this,g=e.data,a=g.likes,f=a?a.length:0,c=e.loggedUser.person.id,b;for(b=0;b<f;b++){if(a[b]&&a[b].id==c){return true;}}return false;},_getThumbs:function(E){E=E||{};var o=this,D=o.data,G=D.photos,p=D.videos,w=D.hasDesc,m=(G?G.length:0),y=(p?p.length:0),B=m+y,H=B+(w?1:0),f=[],b=[],I=0,l=0,h=4,c=(E.srcSeq?parseInt(E.srcSeq):-1),A=(E.photo?parseInt(E.photo):-1),u=(E.video?parseInt(E.video):-1),a=(E.fromSeq?parseInt(E.fromSeq):-1),z,t,v,C,F=[],k=0,g=0;for(z=0;z<m;z++){t=G[z];C={seq:z,id:t.id,type:1};f.push(C);if(t.id==A||c==I){v=C;l=I;}I++;}for(z=0;z<y;z++){t=p[z];C={seq:z,id:t.id,type:2};f.push(C);if(t.id==u||c==I){v=C;l=I;}I++;}if(E.photoSeq){z=parseInt(E.photoSeq);t=G[z];if(t){v={seq:z,id:t.id,type:1};l=z;}}else{if(E.videoSeq){z=parseInt(E.videoSeq);t=p[z];if(t){v={seq:z,id:t.id,type:2};l=z+m;}}}I=f.length;if(I>0){if(a>-1){var x=a,e=h+a;if(e>I){x-=(e-I);e=I;}F=f.slice(x,e);l=a;}else{if(l<3){var q=Math.min(h,I);F=f.slice(0,q);}else{if(l>(I-3)){F=f.slice(Math.max(I-h,0),I);}else{var r=0;if(E.lastOffset){r=parseInt(E.lastOffset);}if(!r){F=f.slice(l-2,l+3);}else{if(r==4){l--;}else{if(r==1){l++;}}F=f.slice(l-2,l+3);}}}}}if(!v&&B){if(m){v={seq:0,id:G[0].id,type:1};}else{if(y){v={seq:0,id:p[0].id,type:2};}}}if(a>-1){if(l<1&&w){b.push({seq:0,id:0,type:0});}}else{if(l<2&&w){b.push({seq:0,id:0,type:0});}}if(F.length>0){b=b.concat(F);}I=b.length;if(I>h){b=b.splice(0,h);I=h;}if(I>=1){k=b[0].seq;t=b[b.length-1];g=t.seq;if(t.type==2){g+=m;}}return{thumbnails:b,matched:v,start:k,end:g,currentSeq:l,total:B};},_keyHandlers:function(r){if(!th.maximized){return;}var c=this,g=c.params,e=r.target,t=r.charOrCode,k=dojo.keys,o=c.data,v=(o.photos?o.photos.length:0),f=(o.videos?o.videos.length:0),b=o.hasDesc?1:0,l=v+f+b,m=c.current,u=m.seq,g={lastOffset:0},a=g.cycleMode,p=m.type;var h=dojo.attr(e,"type"),q=e.nodeName;if(q&&q.toLowerCase()=="textarea"){return;}if(h=="textarea"||h=="text"){return;}switch(t){case k.LEFT_ARROW:switch(p){case 0:if(a&&f){c._hideText();c._showVideo(f-1,g);}else{if(a&&v){c._hideText();c._showSolo(v-1,g);}}break;case 1:if(u>0){c._showSolo(u-1,g);}else{if(b){c._showText();}else{if(a&&f){c._showVideo(f-1,g);}else{if(a&&v>0){c._showSolo(v-1,g);}}}}break;case 2:if(u>0){c._showVideo(u-1,g);}else{if(v){c._showSolo(v-1,g);}else{if(b){c._showText();}else{if(a&&f>1){c._showVideo(f-1,g);}}}}break;}break;case k.RIGHT_ARROW:switch(p){case 0:if(v){c._hideText();c._showSolo(0,g);}else{if(f){c._hideText();c._showVideo(0,g);}}break;case 1:if(u<v-1){c._showSolo(u+1,g);}else{if(f){c._showVideo(0,g);}else{if(a&&b){c._showText();}else{if(a&&u!=0){c._showSolo(0,g);}}}}break;case 2:if(u<f-1){c._showVideo(u+1,g);}else{if(a&&b){c._showText();}else{if(a&&v){c._showSolo(0,g);}else{if(a&&u!=0){c._showVideo(0,g);}}}}break;}break;default:return;}dojo.stopEvent(r);},_clickHandlers:function(S){var al=this,ar=al.data,k=ar.id,Y=ar.title,h=al.getObj(),x=al.timeline,I=ar.people,p=(ar.place?[ar.place]:null),Q=ar.tags,am=ar.topics,l=ar.isEditable,e=(ar.photos?ar.photos.length:0),o=(ar.videos?ar.videos.length:0),L=ar.hasDesc?1:0,B=e+o+L,ad=al.loggedUser.person,ac=(ad.id==-1),av=ar.likes,X=S.target,g=dojo.attr(X,"action"),f=al.params||{},w=f.startFlow,D="Edit",m=(h.trackUrl?h.trackUrl:"/lb/timeline/"),a=dojo.string.substitute,P,ag,af;switch(g){case"share-ext":var K=dojo.attr(X,"href"),H=K?X:X.parentNode,ap=dojo.attr(H,"ext"),E=al.current,P=E.seq;K="";if(E.type==1){var ao=(ar.seoTitle||ut.getSEOText(ar.title)),T=["http://www.lifeblob.com/blob/",ao,"/show/",ar.id,"?photoId="+ar.photos[P].id].join(""),u;u=escape(T);u=u.replace("+","%2B");u=u.replace("/","%2F");switch(ap){case"facebook":dojo.attr(H,"href","http://www.facebook.com/sharer.php?u="+u);break;case"stumbleupon":dojo.attr(H,"href","http://www.stumbleupon.com/submit?url="+u);break;case"digg":dojo.attr(H,"href","http://digg.com/submit?phase=2&url="+u);break;}dojo.publish("logAjaxEvent",["social",ap,"blob"]);}return;case"share-twitter":dojo.stopEvent(S);var E=al.current,P=E.seq,ao=(ar.seoTitle||ut.getSEOText(ar.title)),T;if(E.type==1){T=["http://www.lifeblob.com/blob/",ao,"/show/",ar.id,"?photoId="+ar.photos[P].id].join("");}else{T=dojo.attr(X,"href")||window.location.href;}dojo.io.script.get({callbackParamName:"callback",timeout:3000,url:"http://api.bit.ly/shorten?version=2.0.1&longUrl="+T+"&login=lifeblob&apiKey=R_e85116cf942e82bd6442ed5887f80871",load:function(az){var ax=az.results,d,c,ay;for(d in ax){c=ax[d].shortUrl;}d=c||T;ay=window.open(["http://twitter.com/home?status=Check+out+",ar.title,"+at+",d,"+%23lifeblob"].join(""),"_blank");ay.focus();},error:function(c){console.log(c);var d=window.open(["http://twitter.com/home?status=Check+out+",ar.title,"+at+",T,"+%23lifeblob"].join(""),"_blank");d.focus();}});dojo.publish("logAjaxEvent",["social","twitter","blob"]);break;case"album-cover":var r=dojo.attr(X,"saving"),E=al.current,P=E.seq;if(E.type!=1||r){return;}dojo.attr(X,"saving","true");dojo.query(".l",X).removeClass("hidden");API_SVC.setCover(k,E.id).addCallback(function(c){if(c.stat!="ok"){return;}else{var d=h.type;if(ar.video){ar.video=null;}ar.photo=ut.getImageURL(ar.photos[P].loc,176,0,k,d);if(al.memoir){dojo.query(".memoir_cont[slot='"+al.memoir.group.bucket.slot+"'] .media .ep").style({width:"auto"}).attr("src",ar.photo);}dojo.query(".ls",X).forEach(function(ax){dojo.style(ax,"opacity","0");dojo.removeClass(ax,"hidden");dojo.fadeIn({node:ax,onEnd:function(){dojo.addClass(ax,"hidden");}}).play();});}dojo.removeAttr(X,"saving");dojo.query(".l",X).addClass("hidden");});dojo.publish("logAjaxEvent",["manage","cover-photo","blob"]);break;case"rotate":var C=parseInt(dojo.attr(X,"angle")),r=dojo.attr(X,"saving"),E=al.current,P=E.seq,v;if(E.type!=1||r){return;}v=ar.photos[P];dojo.attr(X,"saving","true");dojo.query(".l",X).removeClass("hidden");API_SVC.rotate(k,E.id,C).addCallback(function(d){if(d.stat!="ok"){return;}else{var c=h.type,aH=v.loc,aG=d.result,aB=ut.getImageURL(aH,100,100,k,c),az=ut.getImageURL(aH,75,0,k,c),ay=ut.getImageURL(aH,495,0,k,c),ax=ut.getImageURL(aH,176,0,k,c),aF=ut.getImageURL(aG,100,100,k,c),aE=ut.getImageURL(aG,75,0,k,c),aD=ut.getImageURL(aG,495,0,k,c),aA=ut.getImageURL(aG,176,0,k,c),aC=cm.get("imageSizeCache");v.loc=aG;if(aC){aC[("mml:"+k+":"+P)]=null;aC[("mms:"+k+":"+P)]=null;}al._showSolo(P);dojo.query("img[src='"+ax+"']").attr("src",aA);dojo.query("img[src='"+aB+"']").attr("src",aF);dojo.query("img[src='"+az+"']").attr("src",aE);}dojo.removeAttr(X,"saving");dojo.query(".l",X).addClass("hidden");});dojo.publish("logAjaxEvent",["manage","rotate-photo","blob"]);break;case"more-reco":dojo.stopEvent(S);var ai=dojo.attr(X,"reco");dojo.query(".mm .ct .dt .more-"+ai).removeClass("hidden").forEach(function(c){c.innerHTML=al._showHiddenReco(ai);});dojo.query(".more-reco",X.parentNode).orphan();break;case"more-recoclick":dojo.stopEvent(S);var ai=dojo.attr(X,"reco");dojo.query(".mm .ct .rcs .more-"+ai).removeClass("hidden").forEach(function(c){c.innerHTML=al._showHiddenReco(ai);});dojo.query(".more-reco",X.parentNode).orphan();break;case"showmore":dojo.stopEvent(S);dojo.addClass(X,"hidden");dojo.query("> .dh",X.parentNode).removeClass("dh");break;case"hide":dojo.stopEvent(S);var ai=dojo.attr(X,"type");dojo.query(".mm .ct .dt .block-"+ai).addClass("hidden");dojo.query(".mm .ct .dt .hide-"+ai).addClass("hidden");dojo.query(".mm .ct .dt .unhide-"+ai).removeClass("hidden");break;case"unhide":dojo.stopEvent(S);var ai=dojo.attr(X,"type");dojo.query(".mm .ct .dt .block-"+ai).removeClass("hidden");dojo.query(".mm .ct .dt .unhide-"+ai).addClass("hidden");dojo.query(".mm .ct .dt .hide-"+ai).removeClass("hidden");break;case"hidecl":dojo.stopEvent(S);var ai=dojo.attr(X,"type");dojo.query(".mm .ct .rcs .block-"+ai).addClass("hidden");dojo.query(".mm .ct .rcs .hide-"+ai).addClass("hidden");dojo.query(".mm .ct .rcs .unhide-"+ai).removeClass("hidden");break;case"unhidecl":dojo.stopEvent(S);dojo.query(".mm .ct .rcs .block-"+ai).removeClass("hidden");dojo.query(".mm .ct .rcs .unhide-"+ai).addClass("hidden");dojo.query(".mm .ct .rcs .hide-"+ai).removeClass("hidden");break;case"hidelist":dojo.stopEvent(S);var ai=dojo.attr(X,"type");dojo.query(".list",X.parentNode.parentNode).addClass("hidden");dojo.addClass(X,"hidden");dojo.query(".unhidelist",X.parentNode).removeClass("hidden");break;case"unhidelist":dojo.stopEvent(S);dojo.query(".list",X.parentNode.parentNode).removeClass("hidden");dojo.addClass(X,"hidden");dojo.query(".hidelist",X.parentNode).removeClass("hidden");break;case"blob-left":case"blob-right":dojo.stopEvent(S);if(dojo.hasClass(X,"hide")){return;}var ae=(g=="blob-left"),b=ae?al.prev(true):al.next(true);if(b){if(f&&f.auto){dojo.publish("logEvent",[m]);}al.close(null,true,true);dojo.publish("logAjaxEvent",["nav",ae?"blob-left":"blob-right","blob"]);al.maximize(b);}break;case"al":dojo.stopEvent(S);var au=a(M.PARTICIPATION_PENDING,[ar.created.by_person.name]);if(ac){var G=f.ignoreUrl?"claim-participation/standalone":"claim-participation/overlay",aq=dojo.hitch(al,function(){API_SVC.link(k);});dojo.publish("quickAccount",[G,aq,au]);return;}dojo.attr(X,"action","");dojo.query("+ img",X).removeClass("hidden");API_SVC.link(k).addCallback(function(c){if(c.stat!="ok"){dojo.query(".mm .al").orphan();if(c.code==109){dojo.publish("tt",[{message:M.PARTICIPATION_ERROR,type:"warning"}]);}else{if(c.code==99){dojo.publish("tt",[{message:a(M.PARTICIPATION_PENDING,[ar.created.by_person.name])}]);}}return;}if(c.result=="true"){var d=(ar.happened.getTime()<=new Date().getTime())?M.PARTICIPATION_SUCCESS:M.PARTICIPATION_FUTURE_SUCCESS;dojo.publish("tt",[{message:d}]);if(!I){ar.people=[];I=ar.people;}I.unshift(ad);al._rebuildTagCloud(true);al.showMaxStage();dojo.publish("logAjaxEvent",["manage","rotate-photo","blob"]);}else{dojo.query(".mm .al").orphan();dojo.publish("tt",[{message:au}]);}});break;case"delete":case"unlink":var ak=(al.hasDelete()==0)?M.DELETE_OWN_EVENT_QUESTION:M.DELETE_QUESTION;var u=dojo.attr(X,"url");if(confirm(ak)){if(g=="delete"){API_SVC.deleteMemoir(k);}else{API_SVC.unLink(k,h.id,((h.type=="user")?1:4));}if(u&&u!=""){window.location.href=u;}else{if(f&&f.auto){dojo.publish("logEvent",[m]);}al.close();x.manager.removeMemoir(k);if(!al.ignoreUrl){dojo.publish("chgLoc",[["at=",ar.happened.dateFormat(DP[2])].join("")]);}x.redraw({zoom:true,regroup:true});}}break;case"media_next":case"media_prev":dojo.stopEvent(S);if(dojo.hasClass(X,"hide")){return;}var R=parseInt(dojo.attr(X,"seq")),P=R;if(P<0){dojo.query(".mm .media").removeClass("hidden");dojo.query(".mm .dect").addClass("hidden");dojo.query(".mm .left .tg").removeClass("hidden");dojo.query(".mm .left .cp").removeClass("hidden");dojo.query(".mm .left .mtg").removeClass("hidden");if(ar.photos&&ar.photos[0]){var v=ar.photos[0];al.current={id:v.id,seq:P,type:1};al._showMediaComments(v.id,"photo");}}else{if((g=="media_prev")&&(P>0)){P--;}else{if((g=="media_next")&&(P<B-1)){P++;}}if(R!=P){if(P<e){al._showSolo(P);}else{al._showVideo(P);}}}break;case"thumb-left":case"thumb-right":var ab=parseInt(dojo.attr(X,"fromSeq"));al._showThumb({fromSeq:ab});break;case"show-text":if(dojo.attr(X,"scl")){window.scrollTo(0,10);}al._showText();break;case"tp":case"tv":if(dojo.attr(X,"scl")){window.scrollTo(0,10);}P=parseInt(dojo.attr(X,"seq"));var ah=parseInt(dojo.attr(X,"offset")),aa=dojo.attr(X,"browse");dojo.query(".mm .dect").forEach(function(c){if(!dojo.hasClass(c,"hidden")){dojo.query(".mm .media").removeClass("hidden");dojo.addClass(c,"hidden");dojo.query(".mm .left .tg").removeClass("hidden");dojo.query(".mm .left .cp").removeClass("hidden");dojo.query(".mm .left .mtg").removeClass("hidden");}});al._unsetLikeHeader();al._unsetLikers();if(g=="tp"){al._showSolo(P,{lastOffset:ah,skipThumbs:aa});}else{al._showVideo(P,{lastOffset:ah,skipThumbs:aa});}break;case"text-up":case"text-down":al._scrollText(g=="text-up");break;case"close":if(f&&f.auto){dojo.publish("logEvent",[m]);}al.close(S,false,true);break;case"edit-likes":dojo.stopEvent(S);if(ac){var G=f.ignoreUrl?"like/standalone":"like/overlay",aq=dojo.hitch(al,function(){this._editLike();});dojo.publish("quickAccount",[G,aq,"Your like has been added to the photo."]);return;}al._editLike();break;case"edit-people":al._editPeople();break;case"edit-places":al._editPlaces();break;case"edit-lifeblobs":al._editLifeblobs();break;case"euser-c":al._showRelation(l,"people",I,"Shared with people",D);break;case"etopic-c":al._showVRelation(l,"lifeblobs",am,"Shared with groups",D);break;case"epl-c":al._showPRelation(l,"places",p,"related place",D);break;case"edit-location-photo":al._editPhotoLoc();break;case"ppl-s":al._savePhotoLoc();break;case"ppl-c":al._cancelPhotoLoc();break;case"euser-s":al._savePeople();break;case"etopic-s":al._saveTopics();break;case"submit-c":al._submitToContest();break;case"epl-s":al._savePlace();break;case"tag":dojo.stopEvent(S);if(ac){if(confirm(M.LOGIN_REQUIRED)){ut.rdL();}return;}al._startFaceTag(S);break;case"tag-cancel":al._stopFaceTag();break;case"tag-save":if(ac){var G=f.ignoreUrl?"facetag/standalone":"facetag/overlay",aq=dojo.hitch(al,"_savePhotoTag");dojo.publish("quickAccount",[G,aq,"Your face tag has been added to the photo."]);return;}al._savePhotoTag();break;case"tag-del":var A=dojo.attr(X,"tag"),P=parseInt(dojo.attr(X,"seq")),q=ar.photos[P],t=q.faceTags,U=t.length;API_SVC.removePhotoTag(k,q.id,A);dojo.publish("logAjaxEvent",["manage","delete-photo-tag","blob"]);dojo.query(".mm .tgr [tag="+A+"]").orphan();dojo.query(".mm a.f[tagId="+A+"]").orphan();for(an=0;an<U;an++){if(t[an].id==A){t.splice(an,1);break;}}break;case"comment-show":var z=dojo.position(dojo.query(".bc")[0]);window.scrollTo(z.x,z.y+50);break;case"comment-delete":var W=parseInt(dojo.attr(X,"cid")),J=parseInt(dojo.attr(X,"photo")),at=ar.comments.items,O=at.length,an;for(an=0;an<O;an++){if(at[an].id==W){at.splice(an,1);API_SVC.deleteComment(k,W);dojo.query(".mm .bcw").forEach(function(d){d.innerHTML=al._getCommentsHtml();var ax=al.current,c=ax.type==1;if(c){al._showMediaComments(ax.id,"photo");}else{al._showMediaComments(0,"post");}});break;}}dojo.publish("logAjaxEvent",["social","comment-delete","blob"]);break;case"comment-create":dojo.stopEvent(S);var E=al.current,V=E.type==1,y=X.parentNode,Z="",v;if(V){v=E.id;}dojo.query(".txt",y).forEach(function(c){Z=c.value;c.value="";});if(al.isEmpty(Z)){return;}if(ac){var G=f.ignoreUrl?"comment/standalone":"comment/overlay",aq=dojo.hitch(al,function(){API_SVC.addComment(k,Z,v);});dojo.publish("quickAccount",[G,aq,"Your comment has been successfully posted."]);return;}dojo.addClass(X,"hidden");dojo.query("img.l",y).removeClass("hidden");API_SVC.addComment(k,Z,v).addCallback(function(d){dojo.query("img.l",y).addClass("hidden");dojo.removeClass(X,"hidden");if(d.stat!="ok"){return;}var ax=ar.comments,c=d.result;if(!ax){ax={items:[],people:[ad]};ax.items.sorted=true;ar.comments=ax;}c.creator=al.loggedUser.person;c.created_at_parsed=Date.parseDate(c.created_at,DP[1],true);c.parsed=true;ax.items.unshift(c);dojo.query(".mm .bcw").forEach(function(ay){ay.innerHTML=al._getCommentsHtml();if(v){al._showMediaComments(v,"photo");}else{al._showMediaComments(0,"post");}});});dojo.publish("logAjaxEvent",["social","comment-photo-post","blob"]);break;case"mediatag-edit":case"mediatag-c":case"mediatag-s":var P=dojo.attr(X,"seq"),aw=dojo.attr(X,"media"),N=(aw=="photo");if(g=="mediatag-edit"){al._editTags(P,N);}else{if(g=="mediatag-c"){al._showTags(P,N);}else{al._saveTags(P,N);}}break;case"caption-edit":dojo.query(".mm .cp .t").forEach(function(ay){var d="",c=dojo.attr(X,"seq"),ax=dojo.attr(X,"media");dojo.query(".mc",ay).forEach(function(az){d=az.innerHTML;});ay.innerHTML=["<textarea class='txt'>",d,"</textarea>","<input class='eia' type='submit' media='",ax,"' seq='",c,"' action='caption-s' value='",M.MAX_SAVE,"'/>","<input class='eia' type='button' media='",ax,"' seq='",c,"' action='caption-c' value='",M.MAX_CANCEL,"'/>"].join("");});dojo.publish("logAjaxEvent",["social","caption-photo-edit","blob"]);break;case"caption-c":P=dojo.attr(X,"seq");var aw=dojo.attr(X,"media");al._showCaption(P,(aw=="photo"));dojo.publish("logAjaxEvent",["social","caption-photo-cancel","blob"]);break;case"caption-s":dojo.query(".mm .cp .t").forEach(function(az){var d=dojo.query(".txt",az)[0].value,c=dojo.attr(X,"seq"),ay=dojo.attr(X,"media"),ax=(ay=="photo"),aA=ax?ar.photos[c]:ar.videos[c];aA.caption=d;if(ax){API_SVC.setPhotoCaption(k,aA.id,d);}else{API_SVC.setVideoCaption(k,aA.id,d);}al._showCaption(c,ax);});dojo.publish("logAjaxEvent",["social","caption-photo-save","blob"]);break;case"grpMultiChoose":var F=al._hasGroupAdditionChanged();dojo.query(".mm .bloblinks .ug").forEach(function(c){if(F){dojo.addClass(c,"uge");}else{dojo.removeClass(c,"uge");}dojo.query(".act",c).forEach(function(d){if(F){d.innerHTML="<a href='javascript:void(0);' action='grpApply' class='bold'>Apply</a> | <a href='javascript:void(0);' action='grpCancel'>Cancel</a>";}else{d.innerHTML=["<a href='/topic/new?next=",ut.encodeCur(),"'>Start new group</a>"].join("");}});});return;case"grpChoose":var aj=parseInt(dojo.attr(X,"id").substring(3)),H=dojo.byId("ag"+aj);dojo.attr(H,"checked",!dojo.attr(H,"checked"));if(dojo.attr(X,"saving")){return;}dojo.attr(X,"saving","true");al._updateGroups();return;case"grpApply":if(dojo.attr(X,"saving")){return;}dojo.attr(X,"saving","true");al._updateGroups();return;case"grpCancel":dojo.query(".mm .bloblinks .ug").removeClass("uge");al._loadAddGroups();return;default:return;}dojo.stopEvent(S);if(w){dojo.query(".ttc-bot").addClass("hidden");}},_cancelPhotoLoc:function(){var a=this.data.place;dojo.query(".mm .left .ploc .t").forEach(function(c){var b;if(a){b=["<span class='mc'>",a.name,", ",a.country,"</span>"];}else{b=["<a action='edit-location-photo' class='la'>Set Location</a>"];}c.innerHTML=b.join("");});},_savePhotoLoc:function(){var b=this,c=b.data,e=dojo.query(".mm .left .ploc")[0],a=dojo.byId("placeId").value;if(a==""){a=0;}dojo.query(".eia",e).addClass("hidden");dojo.query("img.l",e).removeClass("hidden");API_SVC.setPlace(c.id,a).addCallback(function(f){if(f.stat!="ok"){return;}var d=f.result;if(!d.id){d=null;}c.place=d;b._rebuildTagCloud(true);b._cancelPhotoLoc();});dojo.publish("logAjaxEvent",["edit","edit-place","blob"]);},_editPhotoLoc:function(){var e=this,g=e.data,a=g.place,c="",b=0,f="Start typing a place name";dojo.query(".mm .left .ploc .t").forEach(function(d){if(a){b=a.id;c=a.name+", "+a.country;}d.innerHTML=['<div class="pcs">','<input type="text" value="',(b==0?f:c),'" autocomplete="off" pid="0" class="pi input"/>','<div class="ac"/></div>','<div class="ht suggest_help_text hidden">',f,"</div>",'<div class="he suggest_help_error hidden">No places matching this name</div>',"</div>",'<input name="placeId" id="placeId" type="hidden" value="',c,'" class=""/>','<input name="placeName" id="placeName" type="hidden" value="',b,'" class=""/>',e._getAction("ppl")].join("");(new PlaceSuggestControl()).initialize();});},_showText:function(){var b=this,c=b.data;b.current={id:0,seq:0,type:0};dojo.query(".mm .media").addClass("hidden");dojo.query(".mm .left .tg").addClass("hidden");dojo.query(".mm .left .cp").addClass("hidden");dojo.query(".mm .left .mtg").addClass("hidden");dojo.query(".mm .dect").removeClass("hidden");b._showMediaComments(0,"post");b._unsetLikeHeader();b._unsetLikers();b._unsetRecos();if(!b.ignoreUrl){var a=["at=",c.happened.dateFormat(DP[2]),"&mid=",c.id,"&max=true"];dojo.publish("chgLoc",[a.join(""),true]);}},_hideText:function(){dojo.query(".mm .dect").forEach(function(a){if(!dojo.hasClass(a,"hidden")){dojo.query(".mm .media").removeClass("hidden");dojo.addClass(a,"hidden");dojo.query(".mm .left .tg").removeClass("hidden");dojo.query(".mm .left .cp").removeClass("hidden");dojo.query(".mm .left .mtg").removeClass("hidden");}});},_scrollText:function(a){dojo.query(".mm .desc .c").forEach(function(f){var c="marginTop",b=dojo.style(f,c),o=".mm .dect",e=o+" .img[action='text-down']",d=o+" .img[action='text-up']",p="invisible",l=dojo.position(dojo.query(o+" .cont")[0],true),k=l.h,m=400,h=200,g;if(a){if(b<0){b+=h;if(b>0){b=0;}dojo.style(f,c,b+"px");if(b==0){dojo.query(d).addClass(p);}else{dojo.query(e).removeClass(p);}}}else{if((m-b)<k){b-=h;g=-1*(k-m);if(b<g){b=g;}dojo.style(f,c,b+"px");if(b==g){dojo.query(e).addClass(p);}else{dojo.query(d).removeClass(p);}}}});},_editLike:function(){var a=this;if(a.current.type==1){a._editLikePhoto();}else{a._editLikeVideo();}},_editLikePhoto:function(){var c=this,h=c.data,f=h.voteMode?M.VOTE_MSG:M.LIKE_MSG,b=c.current.id,e=h.likers.photos[b];if(!e){return;}var k=(e?e.length:0),a=c.loggedUser.person.id,l=false,k=e.length,g;for(g=0;g<k;g++){if(e[g]&&e[g].id==a){l=true;break;}}if(l){API_SVC.unlikePhoto(h.id,b).addCallback(function(d){if(d.result){for(var m=0;m<e.length;m++){if(e[m]&&e[m].id==a){e.splice(m,1);break;}}}c._setLikeHeader();c._showLikers(true,f);});dojo.publish("logAjaxEvent",["social","photo-unlike","blob"]);}else{API_SVC.likePhoto(h.id,dojo.attr(dojo.query(".media .pc .img .ic img")[0],"id")).addCallback(function(){e.unshift(c.loggedUser.person);c._setLikeHeader();c._showLikers(true,f);});dojo.publish("logAjaxEvent",["social","photo-like","blob"]);}},_editLikeVideo:function(){var b=this,g=b.data,e=g.voteMode?M.VOTE_MSG:M.LIKE_MSG,h=b.current.id,c=g.likers.videos[h];if(!c){return;}var k=c.length,a=b.loggedUser.person.id,l=false,f;if(k){for(f=0;f<k;f++){if(c[f]&&c[f].id==a){l=true;break;}}}if(l){API_SVC.unlikeVideo(g.id,h).addCallback(function(d){if(d.result){for(var m=0;m<c.length;m++){if(c[m]&&c[m].id==a){c.splice(m,1);break;}}}b._setLikeHeader();b._showLikers(true,e);});dojo.publish("logAjaxEvent",["social","video-unlike","blob"]);}else{API_SVC.likeVideo(g.id,h).addCallback(function(){c.unshift(b.loggedUser.person);b._setLikeHeader();b._showLikers(true,e);});dojo.publish("logAjaxEvent",["social","video-like","blob"]);}},_showVRelation:function(a,c,e,f,d){var b=this._getRelatedVListHtml(a,c,e,f,d);dojo.query(".mm .tc-"+c).removeClass("hidden").forEach(function(g){g.innerHTML=b;});},_showPRelation:function(a,c,e,f,d){var b=this._getRelatedPHtml(a,c,e,f,d);dojo.query(".mm .tc-"+c+" .t").removeClass("hidden").forEach(function(g){g.innerHTML=b;});},_showRelation:function(a,c,e,f,d){var b=this._getRelatedHListHtml(a,c,e,f,d);dojo.query(".mm .tc-"+c).removeClass("hidden").forEach(function(g){g.innerHTML=b;});},_showLikers:function(o,c){var e=this;if(parseInt(e.current.id)==0){return;}var k=e.data,m=k.voteMode,b=e.current.id,f=e.current.type==1?k.likers.photos[b]:k.likers.videos[b],l=(f?f.length:0),a=e.loggedUser.person.id,p=false,g,h;if(l){for(g=0;g<l;g++){if(f[g]&&f[g].id==a){p=true;break;}}}h=this._getLikedHtml(o,f,c,p?(m?M.UNVOTE:M.UNLIKE):(m?M.VOTE:M.LIKE),p);dojo.query(".mm .ltg").removeClass("hidden").forEach(function(d){d.innerHTML=h;});},_unsetLikers:function(){dojo.query(".mm .ltg").addClass("hidden");},_getAction:function(a){return["<input class='eia' type='button' action='",a,"-s' value='",M.MAX_SAVE,"'/>","<input class='eia' type='button' action='",a,"-c' value='",M.MAX_CANCEL,"'/>","<img class='l hidden' src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif'/>"].join("");},_editPeople:function(){var f=this,k=f.data,g=k.people,c=f.isOwner(),h=(g?g.length:0),e=[],b,a;for(b=0;b<h;b++){a=g[b];e.push({key:a.name,value:{k:"id",v:a.id},disabled:!c});}f._createSuggest(".mm .tc-people","Type the name of a friend, or email address",e,"user","email");},_savePeople:function(){var e=this,o=e.data,b=o.people,q=(b?b.length:0),r={},l=[],k=[],h=[],m=[],c=dojo.query(".mm .tc-people")[0],g,f,a;for(g=0;g<q;g++){r[b[g].id]=true;}dojo.query("input[name='user_id']",c).forEach(function(d){a=parseInt(d.value);if(r[a]){r[a]=false;}else{l.push(a);}});dojo.query("input[name='user_fbid']",c).forEach(function(d){m.push(d.value);});h=Suggest.getEmails("input[name='user_email']",c);if(!h){return;}for(g in r){if(r[g]){k.push(parseInt(g));}}if(l.length==0&&k.length==0&&h.length==0&&m.length==0){e._showRelation(true,"people",b,"Shared with people","Edit");return;}dojo.query(".eia",c).addClass("hidden");dojo.query("img.l",c).removeClass("hidden");API_SVC.updateParticipants({memoirId:o.id,peopleToAdd:l,emailsToAdd:h,fbIds:m,peopleToDelete:k}).addCallback(function(p){if(p.stat!="ok"){return;}var d=p.result,t=d.length;if(k){for(g=0;g<k.length;g++){for(j=0;j<b.length;j++){if(b[j].id==k[g]){b.splice(j,1);break;}}}}if(t&&!b){b=[];o.people=b;}for(g=0;g<t;g++){f=d[g];b.unshift(f);if(f.anon&&f.fbid){m.push(f.fbid);}}e._rebuildTagCloud(true);e._showRelation(true,"people",b,"Shared with people","Edit");});dojo.publish("logAjaxEvent",["edit","edit-participants","blob"]);},_editLifeblobs:function(){var f=this,z=f.data,r=f.getObj(),l=z.topics,q=z.people,b=(l?l.length:0),k=(q?q.length:0),e=z.created.on_topic,a=f.isOwner(),g=f.loggedUser.person,y=false,w={},m=[],x,v,u,c;if(!a){var h=cm.get("user.topics");if(l){for(x=0;x<h.length;x++){for(v=0;v<b;v++){u=l[v];if(h[x].value.v==u.id){w[u.id]=true;}}}}if(q){for(x=0;x<k;x++){if(q[x].id==g.id){y=true;break;}}}if((!y)&&(w.__count__==0)){return;}}if(l){for(x=0;x<b;x++){u=l[x];c=false;if(!a&&!w[u]){c=true;}else{if(e&&(u.id==e)){c=true;}}m.push({key:u.name,value:{k:"id",v:u.id},disabled:c});}}f._createSuggest(".mm .tc-lifeblobs","Type the name of a group",m,"topic");},_submittedToContest:function(){var e=this,f=e.data,c=f.topics,a=(c?c.length:0);for(var b=0;b<a;b++){if(c[b].id==e.CONTEST_TOPIC){return true;}}return false;},_submitToContest:function(){var c=this,k=c.data,o=k.topics,l=(o?o.length:0),m={},h=[],g=[],b=dojo.query(".mm .tc-lifeblobs")[0],e,f,a;dojo.query(".submitToContest").removeClass("hidden");API_SVC.updateTopics({memoirId:k.id,topicsToAdd:[c.CONTEST_TOPIC],topicsToDelete:[]}).addCallback(function(p){dojo.query(".submitToContest").addClass("hidden");if(p.stat!="ok"){return;}var d=p.result,q=p.result.length;dojo.query(".submitToContestContainer").forEach(function(r){r.innerHTML=['<a class="nav-sub-a" href="/topic/potw" style="white-space: nowrap;">','<span style="white-space: nowrap;color: #b3b3b3; display:block; padding-top:3px;">Entry posted successfully!<img class="ls" style="padding-left:3px; vertical-align:middle" src="http://cdn2.lifeblob.com/lifeblob/img/common/success-16.v92e1e1.png"/></span>','<span style="white-space: nowrap;">Click to see all contest entries</span>',"</a>"].join("");});if(q){o=[];k.topics=o;}for(e=0;e<q;e++){o.unshift(d[e]);}c._rebuildTagCloud(true);c._loadAddGroups();c._showVRelation(true,"lifeblobs",o,"Shared with groups","Edit");});dojo.publish("logAjaxEvent",["edit","contest-submission","blob"]);},_saveTopics:function(){var c=this,k=c.data,o=k.topics,l=(o?o.length:0),m={},h=[],g=[],b=dojo.query(".mm .tc-lifeblobs")[0],e,f,a;for(e=0;e<l;e++){m[o[e].id]=true;}dojo.query("input[name='topic_id']",b).forEach(function(d){a=parseInt(d.value);if(m[a]){m[a]=false;}else{h.push(a);}});for(e in m){if(m[e]){g.push(parseInt(e));}}if(h.length==0&&g.length==0){c._showVRelation(true,"lifeblobs",o,"Shared with groups","Edit");return;}dojo.query(".eia",b).addClass("hidden");dojo.query("img.l",b).removeClass("hidden");API_SVC.updateTopics({memoirId:k.id,topicsToAdd:h,topicsToDelete:g}).addCallback(c,"_onUpdateGroups",h,g,{});dojo.publish("logAjaxEvent",["edit","edit-topics","blob"]);},_updateGroups:function(){var e=this,r=e.data,f=r.topics,k=[],c=[],q,m,l;dojo.query(".mm .bloblinks .grp").forEach(function(d){dojo.query(".act",d).forEach(function(v){v.innerHTML="<img class='va-m' src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif'>Updating ...";});dojo.query("input[type=checkbox]:checked",d).forEach(function(v){c.push(parseInt(dojo.attr(v,"id").substring(2)));});});if(f){for(q=0,m=f.length;q<m;q++){k.push(f[q].id);}}var p=k.complement(c),h=c.complement(k),u=cm.get("user.topics"),b=u?u.length:0,a={},o=[],g=[],t;for(q=0;q<b;q++){t=u[q].original;a[t.id]=t;}for(q=0;q<p.length;q++){t=a[p[q]];if(t){g.push(t.name);}}for(q=0;q<h.length;q++){t=a[h[q]];if(t){o.push(t.name);}}API_SVC.updateTopics({memoirId:r.id,topicsToAdd:h,topicsToDelete:p}).addCallback(e,"_onUpdateGroups",h,p,{dropDown:true,groupNamesToAdd:o,groupNamesToDelete:g});dojo.publish("logAjaxEvent",["edit","edit-topics","blob"]);},_onUpdateGroups:function(o,c,e,g){if(g.stat!="ok"){return;}var a=this,p=a.data,b=p.topics,v=g.result,q=v.length,t,l,k;if(c&&b){t=b.length;for(l=0;l<c.length;l++){var f=c[l];for(k=0;k<t;k++){if(b[k].id==f){b.splice(k,1);break;}}}}if(v.length&&!b){b=[];p.topics=b;}for(l=0;l<q;l++){b.unshift(v[l]);}if(e&&e.dropDown){dojo.query(".mm .bloblinks .ug").removeClass("uge");var m=e.groupNamesToAdd,h=e.groupNamesToDelete,u="",r;k=m.length;if(k){u="Added blob to "+a._getGroupNames(m);}if(h.length){if(k){u+="<br/><br/>";}u+="Removed blob from "+a._getGroupNames(h);}dojo.publish("tt",[{message:u}]);}a._rebuildTagCloud(true);a._loadAddGroups();a._showVRelation(true,"lifeblobs",b,"Shared with groups","Edit");},_getGroupNames:function(a){var b=[],d=a.length,c;for(c=0;c<d;c++){b.push("<strong>",a[c],"</strong>");if(c==d-2){b.push(" and ");}else{if(c<d-2){b.push(", ");}}}return b.join("");},_createSuggest:function(a,f,d,b,e){var c=this;dojo.query(a).removeClass("hidden");dojo.query(a+" .e .link").orphan();dojo.query(a+" .list").forEach(function(l){var k=dojo.create("div",{"class":"ei"},l,"only"),g=c._getAction("e"+b),k,h;dojo.place(g,k,"after");h=new Suggest(k,b+"_",b,{helpText:f,initialValues:d,newValueText:e});h.initialize();});},_editPlaces:function(){var f=this,h=f.data,a=".mm .tc-places",b=h.place,e="",c=0,g="Start typing a place name";dojo.query(a).removeClass("hidden");dojo.query(a+" .e .link").orphan();dojo.query(a+" .t").forEach(function(d){if(b){c=b.id;e=b.name+", "+b.country;}d.innerHTML=['<div class="pcs">','<input type="text" value="',(c==0?g:e),'" autocomplete="off" pid="0" class="pi input"/>','<div class="ac"/></div>','<div class="ht suggest_help_text hidden">',g,"</div>",'<div class="he suggest_help_error hidden">No places matching this name</div>',"</div>",'<input name="placeId" id="placeId" type="hidden" value="',e,'" class=""/>','<input name="placeName" id="placeName" type="hidden" value="',c,'" class=""/>',f._getAction("epl")].join("");(new PlaceSuggestControl()).initialize();});},_savePlace:function(){var b=this,c=b.data,e=dojo.query(".mm .tc-places")[0],a=dojo.byId("placeId").value;if(a==""){a=0;}dojo.query(".eia",e).addClass("hidden");dojo.query("img.l",e).removeClass("hidden");API_SVC.setPlace(c.id,a).addCallback(function(f){if(f.stat!="ok"){return;}var d=f.result;if(!d.id){d=null;}c.place=d;b._rebuildTagCloud(true);b._showPRelation(true,"places",(d?[d]:null),"related place","Edit");});dojo.publish("logAjaxEvent",["edit","edit-place","blob"]);},_editTags:function(a,b){var e=this,f=e.data,c=[];Suggest.fetchTags();dojo.query(".mm .mtg .t").forEach(function(g){var m=b?"photo":"video",h,q,p,r;if(b){h=f.photos[parseInt(a)].tags;}else{h=f.videos[parseInt(a)].tags;}q=e._getTags(h);p=q.length;for(index=0;index<p;index++){r=q[index];c.push({key:r.name,value:{k:"name",v:r.displayName}});}var d=dojo.create("div",{"class":"ei"},g,"only"),l=["<input class='eia' type='submit' media='",m,"' seq='",a,"' action='mediatag-s' value='",M.MAX_SAVE,"'/>","<input class='eia' type='button' media='",m,"' seq='",a,"' action='mediatag-c' value='",M.MAX_CANCEL,"'/>","<img class='l hidden' src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif'/>"].join(""),o,k;dojo.place(l,d,"after");suggest=new Suggest(d,"tag_","tags",{helpText:"Type the name of a tag",initialValues:c,newValueText:"new"});suggest.initialize();});},_showTags:function(b,e){var f=this,g=f.data,h=g.photos,c=g.videos,a=g.isEditable;dojo.query(".mm .mtg .t").forEach(function(r){var q=e?h[b].tags:c[b].tags,m=f._getTags(q),k=m.length,p=(e?"photo":"video"),o=[],l,d;dojo.removeClass(r,"hidden");if(k){o.push("<span class='mc'>");for(l=0;l<k;l++){d=m[l];o.push("<a class='la' href='",d.url,"'>",d.name,"</a>");if(l<k-1){o.push(", ");}}o.push("</span>");}if(a){o.push("<a class='la ",(k?"link":""),"' media='",p,"' seq='",b,"' action='mediatag-edit'>",(k?"Edit":"Add Tags"),"</a>");}r.innerHTML=o.join("");});},_saveTags:function(l,m){var g=this,k=g.data,f=dojo.query(".mm .mtg .t")[0],o=[],a;dojo.query("input[name='tag_name']",f).forEach(function(d){o.push(d.value);});dojo.query("input[name='tag_new']",f).forEach(function(d){o.push(d.value);});a=o.join(",");dojo.query(".eia",f).addClass("hidden");dojo.query("img.l",f).removeClass("hidden");if(m){var c=k.photos[parseInt(l)],b=c.id;API_SVC.setPhotoTags(k.id,b,a).addCallback(function(p){if(p.stat!="ok"){return;}var d=p.result,r=[];if(k.tags){k.tags=k.tags.concat(d);}else{k.tags=d;}for(var q=0;q<d.length;q++){r.push(d[q].id);}c.tags=r;g._addTags(d);g._showTags(l,true);});dojo.publish("logAjaxEvent",["edit","edit-tags","photo"]);}else{var e=k.videos[parseInt(l)],h=e.id;API_SVC.setVideoTags(k.id,h,a).addCallback(function(p){if(p.stat!="ok"){return;}var d=p.result,r=[];if(k.tags){k.tags=k.tags.concat(d);}else{k.tags=d;}for(var q=0;q<d.length;q++){r.push(d[q].id);}e.tags=r;g._addTags(d);g._showTags(l,false);});dojo.publish("logAjaxEvent",["edit","edit-tags","video"]);}},_addTags:function(l){var a=this,g=a.data,k=g.tags,c=k?k.length:0,b={},f,e,h;for(f=0;f!=c;f++){e=k[f];b[e.id]=e;}if(l){for(f=0,h=l.length;f!=h;f++){e=l[f];if(!b[e.id]){if(!k){g.tags=[];k=g.tags;b[e.id]=e;}k.push(e);}}}g.tagMap=b;a._rebuildTagCloud(true);},_getRelatedHListHtml:function(o,k,f,c,l){var m=f?f.length:0,g=this.tagCloud,p,e,b,d,a,h="";if(k=="people"){h="part";}else{if(k=="places"){h="loc";}else{if(k=="lifeblobs"){h="lb";}}}p=['<div class="h"><div class="fl">',c,"(",m,")",o?['<a action="edit-',k,'" class="link la">Edit</a>'].join(""):"",'</div><div class="fr hidelist" action="hidelist"></div><div class="fr unhidelist hidden" action="unhidelist"></div>'];p.push('</div><div class="list"><ul class="photolist">');if(m){for(e=0;e!=m;e++){b=f[e];p.push('<li class="photoitem ');if(e%2==0){p.push("clearall ");if(e<m-1){p.push(" odditem ");}}if(e<2){p.push("firstrow");}p.push('"><a href="',b.url,'" class="d"><img src="',ut.getProfileURL(b,"medium",PERSON_TYPE),'"></img></a><div class="rpanel"><a href="',b.url,'">',b.name,"</a>");if(b.stats){p.push("<div>",b.stats.photos," photos, ",b.stats.connections," friends</div>");}p.push("</div></li>");}}p.push("</ul></div>");return p.join("");},_getRelatedHListHtmlOld:function(o,k,f,c,l){var m=f?f.length:0,g=this.tagCloud,p,e,b,d,a,h="";if(k=="people"){h="part";}else{if(k=="places"){h="loc";}else{if(k=="lifeblobs"){h="lb";}}}p=['<div class="h"><div class="fl">',c,"</div>"];if(o){p.push('<div class="e fr"><a action="edit-',k,'" class="link la">Edit</a></div>');}p.push('</div><div class="list"><ul class="photolist">');if(m){for(e=0;e!=m;e++){b=f[e];p.push('<li class="photoitem ');if(e%5==0){p.push("clearall");}p.push('"><a href="',b.url,'" class="d"><img src="',ut.getProfileURL({id:b.id,pic:b.pic},"medium",PERSON_TYPE),'"></img></a><a href="',b.url,'" class="d">',b.name,"</a></li>");}}p.push("</ul></div>");return p.join("");},_getRelatedPHtml:function(o,k,f,c,l){var m=f?f.length:0,g=this.tagCloud,p,e,b,d,a,h="";if(k=="people"){h="part";}else{if(k=="places"){h="loc";}else{if(k=="lifeblobs"){h="lb";}}}p=[];if(m){for(e=0;e!=m;e++){b=f[e];p.push("<a href='/search?query=",b.name,"&src=max-blob-loc'>",b.name,"</a> / <a href='/search?query=",b.region,"&src=max-blob-loc'>",b.region,"</a> / <a href='/search?query=",b.country,"&src=max-blob-loc'>",b.country,"</a>");}}else{p.push("(Enter the location of these photos)");}if(o){p.push('<a action="edit-',k,'" class="link la">Edit</a>');}return p.join("");},_getRelatedVListHtml:function(o,k,f,c,l){var m=f?f.length:0,g=this.tagCloud,p,e,b,d,a,h="";if(k=="people"){h="part";}else{if(k=="places"){h="loc";}else{if(k=="lifeblobs"){h="lb";}}}p=['<div class="h"><div class="fl">',c,"(",m,")",o?['<a action="edit-',k,'" class="link la">Edit</a>'].join(""):"",'</div><div class="fr hidelist" action="hidelist"></div><div class="fr unhidelist hidden" action="unhidelist"></div>'];p.push('</div><div class="list"><ul class="photolist">');if(m){for(e=0;e!=m;e++){b=f[e];p.push('<li class="photoitem ');if(e%2==0){p.push("clearall ");if(e<m-1){p.push(" odditem ");}}if(e<2){p.push("firstrow");}p.push('"><a href="',b.url,'" class="d"><img src="',ut.getProfileURL(b,"medium",TOPIC_TYPE),'"></img></a><div class="rpanel"><a href="',b.url,'">',b.name,"</a><div>",b.stats.photos," photos, ",b.stats.contributors," members</div></div></li>");}}p.push("</ul></div>");return p.join("");},_getLikedHtml:function(q,k,d,m,c){var e=this,o=k?k.length:0,l=e.tagCloud,p=e.data.voteMode,f=p?"Votes on this photo":"Likes on this photo",r,h,b,g,a;r=['<div class="h"><div class="fr hidelist" action="hidelist"></div><div class="fr unhidelist hidden" action="unhidelist"></div>',f,(o>0?(" ("+o+")"):""),'</div><div class="t list"><span class="mc lk">'];if(o){for(h=0;h!=o;h++){b=k[h];if(b&&b.name){r.push((h!=0?", ":""),"<a href='/user/",b.displayName,"?src=",(p?"votedby":"likedby"),"' class='d s1'>",b.name.split(" ")[0],"</a>");}}r.push(p?" voted for it":" liked it");}else{r.push("<span class='prompt'>Be the first one to ",(p?"vote":"like")," this photo</span>");}r.push("</span>");if(q){r.push("<a class='link la lkfl ",(c?"likedkfl":""),"' action='edit-likes'>",m,"</a><div class='clearborder'></div>");}r.push("</div>");return r.join("");},_getThumbsHtml:function(K,c){K=K||{};if(!c){c=this._getThumbs(K);}var m=this,O=cm.get("imageSizeCache")||{},J=m.data,E=J.id,D=m.getObj(),C=D.type,I=(J.seoTitle||ut.getSEOText(J.title)),t=4,B=J.hasDesc,L=J.photos,u=J.videos,l=(L?L.length:0),G=(u?u.length:0),N=l+G+(B?1:0),r=["<div class='bms'>"],k=c.start,g=c.end,H=k+1,a=g+1,b=c.thumbnails,P=b.length,q,y,h,F,A,w,x,f,p,z;if(N>t){if(B){if(k==0&&g==3){a=g+2;}else{H=k+2;a=g+2;}}var e=g-t-3;if(e<0){e=0;}}for(q=0;q<P;q++){y=b[q];if(y.type==0){r.push("<a seq='0' offset='",(q+1),"' action='show-text' class='bma bmat'>T</a>");}else{A=y.seq;isPhoto=y.type==1;if(isPhoto){h=ut.getImageURL(L[A].loc,100,100,E,C);F="tp";f="photoId";}else{h=ut.escapeHTML(u[A].thumb);F="tv";A+=l;f="videoId";}r.push("<a class='bma' href='javascript:void(0);'>");if(!isPhoto){r.push("<img action='",F,"' browse='true' seq='",A,"' class='play' src='http://cdn0.lifeblob.com/lifeblob/img/theme-gray/common/video_play.vf0eacd.png'/>");}p="mms:"+E+":"+A;z=O[p];if(z&&(z.height||z.width)){r.push("<img offset='",(q+1),"' class='img' browse='true' action='",F,"' seq='",A,"' src='",h,"' style='");if(z.width){r.push("width:",z.width,"px;");}if(z.height){r.push("height:",z.height,"px;");}if(z.marginLeft){r.push("margin-left:",z.marginLeft,"px;");}r.push("'/></a>");}else{r.push("<img offset='",(q+1),"' class='img' browse='true' action='",F,"' seq='",A,"' src='",h,'\' onload=\'ut.scale(this, 67, 67, {"key": "',p,"\"});'/></a>");}}}if(N>t){x=B?(g+2==N):(g+1==N);var v=g+1;r.push("<div class='clearall'>");r.push("<a href='javascript:void(0);' fromSeq='",v,"' action='thumb-right' class='bmcm bmcr boldh clearall",(c.end+1==c.total?"invisible":""),"'>Next »</a>");r.push("<div class='index'>",c.start+1," - ",c.end+1," of ",c.total,"</div>");r.push("<a href='javascript:void(0);' fromSeq='",e,"' action='thumb-left' class='bmcm bmcl boldh ",((c.start==0)?"invisible":""),"'>« Prev</a>");r.push("</div>");}r.push("</div><div class='bmc'>");if(N>t){}r.push("</div>");return r.join("");},_getCommentsHtml:function(){var c=this,e=c.data,b=c.loggedUser,a=e.comments?e.comments.items.length:0;return["<div class='bc'>","<div class='bct single hidden'>","<div class='h'><div class='fr hidelist' action='hidelist'></div><div class='fr unhidelist hidden' action='unhidelist'></div>Comments on this <span class='ty'>photo</span> <span class='t'>(0)</span></div>","<div class='bch list'>",'<div class="commentrequest">','<div class="lupp"><img class="luppimg" src="',ut.getProfileURL(b.person,"medium",PERSON_TYPE),'" /></div>',"<textarea class='txt'></textarea>","<input type='submit' action='comment-create' class='pst' value='Comment'/>","<img align='absmiddle' src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif' class='l hidden'/>","</div>","<div class='bcc clearall'></div>","</div>","</div>","<div class='ltg clearall'></div>","<div class='bct clearall all ",(a?"":"hidden"),"'>","<div class='h'><div class='fr hidelist' action='hidelist'></div><div class='fr unhidelist hidden' action='unhidelist'></div>Other photos being discussed <span class='t'>(",a,")</span></div>","<div class='bch list'>",c._getComments(),"</div>","</div>","</div>"].join("");},_getMediaComments:function(b,h){var e=this.data.comments,f=e?e.items:null,k=f?f.length:0,l=(h=="post"),a=(h=="photo"),g,d;if(h&&k>0){if(!b&&a){return;}g=[];for(d=0;d<k;d++){if(a){if(f[d][h]==b){g.push(f[d]);}}else{if(l){if(!f[d].photo){g.push(f[d]);}}}}}return g;},_showHiddenReco:function(k){var f=this,g=f.current,a=g.id,h=f.data;if(parseInt(a)==0){return"";}var e=g.type==1?h.photorecommendations[a]:h.videorecommendations[a],b=[],c=4;if(k=="reco-people"){b=e.people;}else{if(k=="reco-place"){b=e.place;}else{if(k=="reco-clicks"){b=e.photoclicks;}else{b=e.tag;c=8;}}}return f._showSubHiddenReco(a,g.type,b,k,c);},_getWarningHtml:function(a){if(a.showfriendreco){return'<div class="warn clearall fl"><div>Hey, you need to have at least <b>20 friends</b> for us to find related photos of friends.<div style="padding-top: 5px;"><a href="/account/findfriends?src=recofriend-warn" style="font-weight: bold;">Invite your friends</a> now to see their related photos in this section.</div></div></div>';}if(a.showaddmorefriendreco){return'<div class="warn clearall fl"><div>Hey, we didn\'t find any related photos of <b>your friends</b>. Try <a style="font-weight: bold;" href="/account/findfriends?src=recofriend-warn">inviting more friends</a> to see their photos here.</div></div>';}return"";},_showReco:function(){var c=this,e=c.current,a=e.id,g=c.data,f=c.params||{};if(parseInt(a)==0){return;}var b=e.type==1?g.photorecommendations[a]:g.videorecommendations[a];dojo.query(".mm .ct .c").forEach(function(d){dojo.query(".ld",d).addClass("hidden");dojo.query(".dt",d).forEach(function(k){if(b){var h=[];c._showSubReco(a,e.type,b.tag,h,"Photos with something in common","reco-tag","",8);c._showSubReco(a,e.type,b.people,h,(b.nofriendcontext||b.showfriendreco||b.showaddmorefriendreco)?"Related photos by people":"Related photos by friends","reco-people",c._getWarningHtml(b));k.innerHTML=h.join("");}else{k.innerHTML="No related photos found.";}});dojo.query(".rcs",d).forEach(function(k){if(b&&b.photoclicks&&b.photoclicks.length){var h=[];dojo.removeClass(d.parentNode,"hidden");c._showRecoClicks(a,b.photoclicks,h,"Photos that got people here","reco-clicks");k.innerHTML=h.join("");}else{dojo.addClass(d.parentNode,"hidden");k.innerHTML="No related photos found.";}});});},_showRecoClicks:function(c,g,l,e,a){var o=g.length,k=cm.get("imageSizeCache")||{},f=4,d=o>f,p,h,m,q,b;if(o){l.push("<div class='dth'><div class='fl'>",e,"</div><div class='fr hide hide-",a,"' type='",a,"' action='hidecl'></div><div class='fr unhide hidden unhide-",a,"' action='unhidecl' type='",a,"'></div></div><div class='recophotosblocks block-",a,"'>");l.push("<div class='clearall'></div><div class='ph'>");for(h=0;h<o;h++){p=g[h];if(h==f){l.push("<div class='hidden more-",a,"'>");}l.push("<ul class='ulbma ",h%f==0?"clearall":"","'><li class='libma'><a class='rbma' href='/blob/",ut.getSEOText(p.title),"/show/",p.memoirId,"?src=",a,"&photoId=",p.id,"'>");m="lmms:"+p.id;q=k[m];b=p.url;l.push("<img class='img' src='",b);if(q&&(q.height||q.width)){l.push("' style='");if(q.width){l.push("width:",q.width,"px;");}if(q.height){l.push("height:",q.height,"px;");}if(q.marginLeft){l.push("margin-left:",q.marginLeft,"px;");}l.push("'/>");}else{l.push('\' onload=\'ut.scale(this, 67, 67, {"key": "',m,"\"});'/>");}l.push("</a>");l.push("<div class='tt'><div class='rt'>",p.title,"</div>");l.push("<div class='rabt'>",p.occurredat," by ",p.by,"</div>");l.push("</div><div class='tta na'></div></li></ul>");}if(d){l.push("</div>");}l.push("</div>");}if(d){l.push("<div class='fr'><a class='more-reco boldh' action='more-recoclick' reco='",a,"'>See More »</a></div>");}l.push("</div>");},_showSubReco:function(g,b,p,l,e,h,q,k){var w=p.length,v=cm.get("imageSizeCache")||{},o=k?k:4,t=w>o,a,r,f,m,c,u=this.data;if(w){l.push("<div class='dth'><div class='fl'>",e,"</div><div class='fr hide hide-",h,"' type='",h,"' action='hide'></div><div class='fr unhide hidden unhide-",h,"' action='unhide' type='",h,"'></div></div><div class='recophotosblock block-",h,"'>");l.push(q);l.push("<div class='clearall'></div>");for(r=0;r<w;r++){a=p[r];if(r==o){l.push("<div class='ph hidden more-",h,"'>");break;}if(r%4==0){l.push("<div class='ph'>");}l.push("<ul class='ulbma ",r%o==0?"clearall":"","'><li class='libma'><a id='","rp-",g,"-",a.id,"' class='rbma' href='/blob/",ut.getSEOText(a.title),"/show/",a.memoirId,"?src=",h,"&photoId=",a.id,b==1?["&fromId=",g,"&fromalbum=",u.id].join(""):"","&rclick=",(r>=o?2:1),"'>");f="lmms:"+a.id;m=v[f];c=a.url;l.push("<img class='img' src='",c);if(m&&(m.height||m.width)){l.push("' style='");if(m.width){l.push("width:",m.width,"px;");}if(m.height){l.push("height:",m.height,"px;");}if(m.marginLeft){l.push("margin-left:",m.marginLeft,"px;");}l.push("'/>");}else{l.push('\' onload=\'ut.scale(this, 67, 67, {"key": "',f,"\"});'/>");}l.push("</a>");l.push("<div class='tt'><div class='rt'>",a.title,"</div>");l.push("<div class='rabt'>",a.occurredat," by ",a.by,"</div>");if(a.reason&&a.reason.secondary){l.push("<div class='rh'>Showing up because</div><div class='rb'>",this._generateRecoText(a.reason,a.rlinked),"</div>");}l.push("</div><div class='tta na'></div></li>");if(a.reason&&a.reason.primary){l.push("<li class='lilbma'><a class='recreas' href='/blob/",ut.getSEOText(a.title),"/show/",a.memoirId,"?src=",h,"&photoId=",a.id,b==1?["&fromId=",g,"&fromalbum=",u.id].join(""):"","&rclick=",(r>=o?2:1),"'>");l.push(this._generateRecoReasonText(a.reason,a.rlinked));l.push("</a></li>");}l.push("</ul>");if(r%4==3){l.push("</div>");}}if(t){l.push("</div>");}if(t){l.push("<div class='fr'><a class='more-reco boldh' action='more-reco' reco='",h,"'>See More »</a></div>");}l.push("</div>");}},_showSubHiddenReco:function(c,q,g,a,m){var r=g.length,k=cm.get("imageSizeCache")||{},f=m?m:4,e=r>f,t,h,p,u,b,o=this.data,l=[];if(r){for(h=f;h<r;h++){t=g[h];l.push("<ul class='ulbma ",h%f==0?"clearall":"","'><li class='libma'><a id='","rp-",c,"-",t.id,"' class='rbma' href='/blob/",ut.getSEOText(t.title),"/show/",t.memoirId,"?src=",a,"&photoId=",t.id,q==1?["&fromId=",c,"&fromalbum=",o.id].join(""):"","&rclick=",(h>=f?2:1),"'>");p="lmms:"+t.id;u=k[p];b=t.url;l.push("<img class='img' src='",b);if(u&&(u.height||u.width)){l.push("' style='");if(u.width){l.push("width:",u.width,"px;");}if(u.height){l.push("height:",u.height,"px;");}if(u.marginLeft){l.push("margin-left:",u.marginLeft,"px;");}l.push("'/>");}else{l.push('\' onload=\'ut.scale(this, 67, 67, {"key": "',p,"\"});'/>");}l.push("</a>");l.push("<div class='tt'><div class='rt'>",t.title,"</div>");l.push("<div class='rabt'>",t.occurredat," by ",t.by,"</div>");if(t.reason&&t.reason.secondary){l.push("<div class='rh'>Showing up because</div><div class='rb'>",this._generateRecoText(t.reason,t.rlinked),"</div>");}l.push("</div><div class='tta na'></div></li>");if(t.reason&&t.reason.primary){l.push("<li class='lilbma'><a class='recreas' href='/blob/",ut.getSEOText(t.title),"/show/",t.memoirId,"?src=",a,"&photoId=",t.id,q==1?["&fromId=",c,"&fromalbum=",o.id].join(""):"","&rclick=",(h>=f?2:1),"'>");l.push(this._generateRecoReasonText(t.reason,t.rlinked));l.push("</a></li>");}l.push("</ul>");}}return l.join("");},_hasReasonLinks:function(b){for(var a=0;a<b.length;a++){if(b[a].assType){return true;}}return false;},_generateRecoReasonText:function(a,b){if(a.primary){return a.primary;}else{return"";}},_generateRecoText:function(e,d){var b=[],c,e=e.secondary;for(var a=0;a<e.length;a++){c=e[a];b.push("<div class='rr'>",c,"</div>");}return b.join("");},_unsetRecos:function(){dojo.query(".mm .recoblock").addClass("hidden");},_loadReco:function(){dojo.query(".mm .recoblock").removeClass("hidden").forEach(function(a){dojo.query(".c",a).forEach(function(b){dojo.query(".ld",b).removeClass("hidden");dojo.query(".dt",b).forEach("item.innerHTML=''");dojo.query(".rtc",b).forEach("item.innerHTML=''");dojo.query(".rcs",b).forEach("item.innerHTML=''");});});},_updatePhotolikedata:function(f){var c=this,l=c.data,r=f.result,q=r.people,o=q.length,p=r.photos,h={},k,b,a,e,m,g;for(k=0;k<o;k++){h[q[k].id]=q[k];}for(b in p){a=p[b];photoIdKey=""+b,e=a.likes;m=e.length;g=[];for(k=0;k<m;k++){g.push(h[e[k]]);}l.likers.photos[photoIdKey]=g;l.photorecommendations[photoIdKey]=a.recos;l.photoviews[photoIdKey]=a.views;}c._setLikeHeader();c._showLikers(true,l.voteMode?M.VOTE_MSG:M.LIKE_MSG);c._showReco();},_updateVideolikedata:function(f){var b=this,m=b.data,r=f.result,q=r.people,p=q.length,c=r.videos,h={},k,l,a,e,o,g;for(k=0;k<p;k++){h[q[k].id]=q[k];}for(l in c){a=c[l];videoIdKey=""+l,e=a.likes;o=e.length;g=[];for(k=0;k<o;k++){g.push(h[e[k]]);}m.likers.videos[videoIdKey]=g;m.videorecommendations[videoIdKey]=a.recos;m.videoviews[videoIdKey]=a.views;}b._setLikeHeader();b._showLikers(true,m.voteMode?M.VOTE_MSG:M.LIKE_MSG);b._showReco();},_showPhotoLikesData:function(f,a){var b=this,g=b.data,e=b.getObj(),c=ut.getTimelineType(e.type);b._loadReco();if(!g.likers.photos[""+f]){API_SVC.getPhotoInfo(g.id,f,e.id,c).addCallback(b,"_updatePhotolikedata");}else{b._setLikeHeader();b._showLikers(true,g.voteMode?M.VOTE_MSG:M.LIKE_MSG);b._showReco();}},_showVideoLikesData:function(c,a){var b=this,e=b.data;b._loadReco();if(!e.likers.videos[""+c]){API_SVC.getVideoInfo(e.id,c).addCallback(b,"_updateVideolikedata");}else{b._setLikeHeader();b._showLikers(true,e.voteMode?M.VOTE_MSG:M.LIKE_MSG);b._showReco();}},_showMediaComments:function(q,e){var h=this,o=h._getMediaComments(q,e),p=o?o.length:0,m=h.data.comments,l=m?m.items.length:0,r=(l-p),k=".mm .bc",g=k+" .single",f=k+" .all",c=" .ct",u="hidden",b,a=[],t=m?m.items:[];for(var v=t.length-1;v>=0;v--){var d=(t[v]).photo;if(parseInt(q)!=d){if(dojo.indexOf(a,d)<0){a.push(d);}}}r=a.length;dojo.query(g).forEach(function(w){dojo.query(" .t",w).forEach("item.innerHTML='("+p+")'");dojo.query(f).forEach(function(x){if(r>0){dojo.removeClass(x,u);}else{dojo.addClass(x,u);}dojo.query(c,x).removeClass(u);dojo.query(c+q,x).addClass(u);dojo.query(" .t",x).forEach("item.innerHTML='("+r+")'");});if(p==0){b="<div class='nc'>Be the first one to comment on this "+e+"</div>";}else{b=h._getComments(o);}dojo.query(".mm .lk .c .cnt").forEach("item.innerHTML='"+(p==0?"":("("+p+")"))+"'");dojo.query(" .ty",w).forEach("item.innerHTML='"+e+"'");dojo.query(" .bcc",w).forEach(function(x){x.innerHTML=b;});if(e=="post"){dojo.addClass(w,"hidden");}else{dojo.removeClass(w,u);}});},_getComments:function(q){var h=this,G=h.data,e=h.loggedUser,x=e.person.id,t=G.comments,F=G.happened.dateFormat(DP[1]),C=[],A=G.hasDesc,E,D;if(t){var f=t.people,y=q?q:t.items,o=y.length,v=f.length,I=G.photos,g=(I?I.length:0),B=h.getObj(),J={},z={},H,k,a,m,b,r,K,w;for(E=0;E<v;E++){a=f[E];a.url=["/user/",a.displayName,"?src=maxblob-comment#at=",F,"&mid=",G.id].join("");z[a.id]=a;}if(!t.sorted){y.sort(function(d,c){return c.id-d.id;});t.items.sort(function(d,c){return c.id-d.id;});t.sorted=true;}for(E=0;E<o;E++){H=y[E];b=H.photo?H.photo:0;r=J[b];if(!r){J[b]=[];r=J[b];}r.push(H);}var u=0;C.push("<div class='clearall'>");for(b in J){if(u&&u%6==0){C.push("</div><div class='clearall'>");}u++;r=J[b];w=null;C.push("<div class='ct ct",b,"'><div class='commentblock'>");if(b){var E=0;for(E=0;E<g;E++){if(I[E].id==b){w=I[E];break;}}if(w){var l=ut.getImageURL(w.loc,75,0,G.id,B.type);C.push("<div class='l'><a class='ic'><img class='img' scl='true' action='tp' seq='",E,"' src='",l,"'/></a><div><div class='cicon'>",r.length,"</div></div></div>");}else{C.push("<div class='l'><a seq='0' scl='true' action='",(A?"show-text":""),"' class='bma bmat'>T</a></div>");}}C.push("<div class='r'>");K=r.length;for(E=0;E<K;E++){H=r[E];if(!H.created_at_parsed){H.created_at_parsed=Date.parseDate(H.created_at,DP[1],true);}m=H.creator_person;a=(m==x?e.person:z[m]);if(!a){continue;}k=((m==x)||(x==G.created.by_person.id));C.push("<div id='c_",H.id,"' class='cc ",E==K-1?"last-child":"","'><div class='pp'><img class='ppimg' src='",ut.getProfileURL(a,"medium",PERSON_TYPE),"' /></div><div class='commenttext'><span class='p'>",H.comment,"</span><p><a class='sl' href='",a.url,"'>",a.name,"</a>");C.push("<span class='d'> ",H.created_at_parsed.pretty(),"</span>");if(k){C.push("<a class='dl' title='Delete Comment' action='comment-delete' cid='",H.id,"' photo='",b,"'></a>");}C.push("</p></div></div>");}C.push("</div></div></div>");}C.push("</div>");}return C.join("");},_showVideo:function(r,f){var c=this,h=c.data,a=f||{},q=(h.photos?h.photos.length:0),e=(h.videos?h.videos.length:0),b=h.hasDesc?1:0,g=q+e+b,o=h.isEditable,k=r-q,m=h.videos[k];dojo.query(".mm .left").forEach(function(d){dojo.query(".pc .img",d).forEach(function(p){p.innerHTML="<div class='vd'>"+ut.getVideoEmbedCode(m.url,468,269,m.appType)[0]+"</div>";});dojo.query(".mmtd .l").addClass("hidden");dojo.query(".cp",d).removeClass("hidden");dojo.query(".tg",d).addClass("hidden");dojo.query(".pc .ta",d).addClass("hidden");c._showCaption(k,false);c._showTags(k,false);});c.current={id:m.id,seq:k,type:2};if(!a.skipThumbs){c._showThumb({videoSeq:k.toString(),lastOffset:a.lastOffset});}c._showMediaComments(0,"post");c._showVideoLikesData(m.id,2);dojo.query(".mm .lk .nav-li").addClass("hidden");if(!c.ignoreUrl){var l=["at=",h.happened.dateFormat(DP[2]),"&mid=",h.id,"&max=true","&video=",m.id];dojo.publish("chgLoc",[l.join(""),true]);}},_showCaption:function(b,e){var f=this,g=f.data,h=g.photos,c=g.videos,a=g.isEditable;dojo.query(".mm .cp .t").forEach(function(m){var d=e?h[b].caption:c[b].caption,o=!f.isEmpty(d),l=(e?"photo":"video"),k=[];dojo.removeClass(m,"hidden");if(o){k.push("<h2 class='mc'>",ut.wb(d,20),"</h2>");}if(a){k.push("<a class='la ",(o?"link":""),"' media='",l,"' seq='",b,"' action='caption-edit'>",(o?"Edit":"Add a Caption"),"</a>");}m.innerHTML=k.join("");});},_showThumb:function(b){var a=this;dojo.query(".mm .right .bmt").forEach(function(d){var c=a._getThumbsHtml(b);d.innerHTML=c;});},_preloadImage:function(k,h){var b=this,f=b.data,g=f.photos,a=f.id,e=b.getObj(),c=e.type;dojo.query(".mm .right .pch").forEach(function(o){var m=[],l,d,p;for(l=k;l<h;l++){d=g[l];p="mml:"+a+":"+l;m.push("<img src='",ut.getImageURL(d.loc,495,0,a,c),'\' onload=\'ut.scale(this, 468, 0, {"key": "',p,"\"});'/>");}o.innerHTML=m.join("");});},_getShareHtml:function(){return"";},_showSolo:function(v,g){var e=this,b=g||{},q=e.data,t=q.title,w=q.isEditable,l=q.id,k=cm.get("imageSizeCache")||{},c=e.getObj(),u=q.photos,r=u.length,f=(q.videos?q.videos.length:0),a=u[v],h=e._getImgCaption(a),m=("mml:"+l+":"+v),x;dojo.query(".mmtd .l").removeClass("hidden");dojo.query(".photominheight").removeClass("photominheight");dojo.query(".mm .left .pc > .img").forEach(function(o){x=k[m];var d=ut.getImageURL(a.loc,495,0,l,{captionUrl:h});if(x&&(x.height||x.width)){var p=["<img class='img' alt='",h,"' title='",h,"' src='",d,"' id='",a.id,"' style='"];if(x.width){p.push("width:",x.width,"px;");}if(x.height){p.push("height:",x.height,"px;");}if(x.marginLeft){p.push("margin-left:",x.marginLeft,"px;");}p.push("'/>");p.push(e._getShareHtml());photoDiv=dojo.create("div",{seq:v,"class":"ic icl",innerHTML:p.join("")},o,"first");e._showImage(v,x);}else{var p=["<img class='img' alt='",h,"' title='",h,"' src='",d,"' id='",a.id,"'/>",e._getShareHtml()].join("");photoDiv=dojo.create("div",{seq:v,"class":"ic icl",innerHTML:p},o,"first");dojo.query(".ic:first-child img.img",o).onload(function(y){var z=ut.scale(y.target,468,0,{key:m});e._showImage(v,z);});}});dojo.query(".media_prev").attr("seq",v).forEach(function(d){if(v==0){dojo.addClass(d,"hidden");}else{dojo.removeClass(d,"hidden");}});dojo.query(".media_next").attr("seq",v).forEach(function(d){if((v+1)==(r+f)){dojo.addClass(d,"hidden");}else{dojo.removeClass(d,"hidden");}});e.current={id:a.id,seq:v,type:1};if(!b.skipThumbs){e._showThumb({photoSeq:v.toString(),lastOffset:b.lastOffset});}e._showPhotoLikesData(a.id,1);e._showMediaComments(a.id,"photo");dojo.query(".mm .lk .nav-li").forEach(function(d){dojo.removeClass(d,"hidden");dojo.query(".f",d).forEach(function(o){dojo.removeClass(o,"hidden");dojo.query(".nav-sub-a",o).attr("href",ut.getImageURL(a.loc,Number.MAX_VALUE,0,l,c.type));});dojo.query(".e",d).forEach(function(o){dojo.removeClass(o,"hidden");dojo.query(".nav-sub-a",o).attr("href","/photo/"+q.id+"/allSizes/"+a.id);});if(w){if(a.loc.indexOf("http://")==-1){dojo.query(".rotate",d).removeClass("hidden");}else{dojo.query(".rotate",d).addClass("hidden");}}});dojo.query(".mm .rhs .embed").forEach(function(d){d.href="/photo/"+q.id+"/allSizes/"+a.id;});if(e.skipPhotoTrack){e.skipPhotoTrack=false;}else{if(b.ignoreUrl){dojo.publish("logEvent",["/lb/photo/view-page"]);}else{dojo.publish("logEvent",["/lb/photo/timeline/"+(e.isParticipant()?"own/":"other/")+c.type+(b.auto?"/auto":"")]);}}},_showImage:function(p,o){var e=this,x=e.data,z=(x.photos?x.photos.length:0),g=(x.videos?x.videos.length:0),r=x.hasDesc?1:0,w=z+g+r,q=x.photos[p],a=!e.isEmpty(q.caption),f=q.faceTags,l=f?f.length:0,k=x.isEditable,c=e.loggedUser,y=o?true:false,v,t,u,m,h;dojo.query(".mm .ild").orphan();dojo.query(".mm .left").forEach(function(B){dojo.query(".mmtd .l").addClass("hidden");var A=0;dojo.query(".pc .ic",B).filter(function(C){A++;return A>1;}).orphan();dojo.query(".pc .vd",B).orphan();dojo.query(".pc .ic",B).removeClass("icl");dojo.query(".pc .ic img.img",B).forEach(function(C){if(!y){o=ut.scale(C,468,0);}m=o.height;t=o.width;dojo.style(C.parentNode,{width:t+"px",height:m+"px"});if(!y){dojo.fadeIn({node:C.parentNode}).play();}v=dojo.position(C,true);});e._showCaption(p,true);e._showTags(p,true);var d=dojo.position(dojo.query(".mm .container")[0],true);dojo.query(".pc .ta",B).removeClass("hidden").addClass("tah").style({left:(v.x-d.x)+"px",top:(v.y-d.y)+"px",width:t+"px",height:m+"px"}).forEach(function(E){if(f){var D=[],C,F,H,G;for(C=0;C<l;C++){F=f[C];H=F.leftPercent*t/100;G=F.topPercent*m/100;H=(H<40)?40:((H>t-40)?t-40:H);G=(G<40)?40:((G>m-40)?m-40:G);D.push("<a href='javascript:void(0)' tagId='",F.id,"' class='f' style='left:",H,"px; top:",G,"px;'>","<div class='or'><div class='ir'></div></div>","<div class='n'>",F.tag,"</div>","</a>");}E.innerHTML=D.join("");dojo.fadeOut({node:E,duration:1000,onEnd:function(){dojo.removeClass(E,"tah");dojo.style(E,"opacity","1");}}).play(1000);}else{E.innerHTML="";}});dojo.query(".tg",B).forEach(function(H){if(f){var G=[],D=x.created.by,J=c.person.id,F,C,E,I;for(F=0;F<l;F++){C=f[F];I=C.person;E=(J==D)||(J==C.creator)||(J==I);if(I){G.push("<a href='",ut.getUrlFromId(I),"' action='showFaceMarker' tag='",C.id,"'>",C.tag,"</a>");}else{G.push("<span action='showFaceMarker' tag='",C.id,"'>",C.tag,"</span>");}if(E){G.push("<span class='del' tag='",C.id,"'><a action='tag-del' tag='",C.id,"' seq='",p,"' class='photo_tag_list_delete'></a>",((F<l-1)?", ":""),"</span>");}else{G.push((F<l-1)?", ":"");}}dojo.query(".p",H).forEach(function(K){K.innerHTML=G.join("");});}else{dojo.query(".p",H).forEach("item.innerHTML=''");}dojo.removeClass(H,"hidden");dojo.query("[action='showFaceMarker']",H).onmouseover(function(K){var L=dojo.attr(K.currentTarget,"tag");dojo.query(["a.f[tagId='",L,"']"].join("")).style("display","block").addClass("fv");}).onmouseout(function(K){var L=dojo.attr(K.currentTarget,"tag");dojo.query(["a.f[tagId='",L,"']"].join("")).removeClass("fv");});});});if(p<z-1){e._preloadImage(p+1,p+2);}if(!e.ignoreUrl){var b=["at=",x.happened.dateFormat(DP[2]),"&mid=",x.id,"&max=true","&photo=",q.id];dojo.publish("chgLoc",[b.join(""),true]);}if(dojo.isIE==7){dojo.query(".mm .pt").addClass("hidden").removeClass("hidden");}},_getImgCaption:function(f){var c=this,l=c.data,h=l.place,g=f.faceTags,m=g?g.length:0,e=f.caption,a=c.getObj(),b=[],k;if(g&&m){var o="";for(k=0;k<m;k++){b.push(o,g[k].tag);o=", ";}b.push(" in ",l.title);}else{b.push(l.title);if(!c.isEmpty(e)){b.push(" - ",e);}}if(a.type==TOPIC_TYPE){b.push(" on ",a.name);}else{b.push(" by ",l.created.by_person.name);}if(h){b.push(" at ",h.name,", ",h.country);}return b.join("").replace('"',"").replace("'","");},_likeMsg:function(){var e=this.data,c=e.voteMode,a=e.likes.length,b=dojo.string.substitute;if(a>0){if(e.liked){return(a>1)?b((c?M.VOTE2:M.LIKE2),[a-1]):(c?M.VOTE3:M.LIKE3);}else{return(a==1)?M.LIKEN0:b(M.LIKEN1,[a]);}}return"";},_startFaceTag:function(l){var c=this,d=l.target,b=window.innerWidth||document.body.clientWidth,h=dojo.position(d,true),f=dojo.position(dojo.query(".mm .container")[0],true),k=l.pageX,a=(k-f.x),g=l.pageY,e;if((k-h.x)<40){a+=40;}if((k-h.x)>(h.w-40)){a-=40;}if((g-h.y)<40){g=h.y+40;}if((g-h.y)>(h.h-40)){g=h.y+h.h-40;}e=dojo.position(dojo.query(".mm .container")[0],true).y;dojo.query(".mm .media .ptc").style({left:a+"px",top:(g-e)+"px",display:"block"}).attr("xPercent",((l.pageX-h.x)*100/h.w)+"").attr("yPercent",((l.pageY-h.y)*100/h.h)+"").forEach(function(m){dojo.query(".tag_name[loaded='no']",m).forEach(function(o){c.suggest=new Suggest(o,"tag_","user.name",{newValueText:"new",singleSelect:true,callbacks:{onselect:dojo.hitch(c,"_savePhotoTag",true),onenter:dojo.hitch(c,"_showTagEmail",true),onshow:dojo.hitch(c,"_hideTagEmail"),onhide:dojo.hitch(c,"_showTagEmail")}});c.suggest.initialize();}).attr("loaded","yes");c.suggest.clear(true);c._hideTagEmail();});},_savePhotoTag:function(){var c=this,b=c.data.id,a,d;dojo.query(".mm .pc").forEach(function(e){dojo.query(".ic img.img",e).forEach(function(f){a=parseInt(dojo.attr(f,"id"));d=parseInt(dojo.attr(f.parentNode,"seq"));});dojo.query(".ptc",e).forEach(function(k){var q=parseInt(dojo.attr(k,"xPercent")),m=parseInt(dojo.attr(k,"yPercent")),t=cm.get("addressbook.friends.idmap"),h=cm.get("addressbook.friends.fidmap"),f=c.loggedUser.person,l,r,g="";dojo.query("input[name='tag_id']",k).forEach(function(u){l=u.value;});if(l){g=((l==f.id)?f.name:t[l].name);API_SVC.tagPhoto({memoirId:b,photoId:a,personId:l,leftPercent:q,topPercent:m}).addCallback(c,"_onPhotoTag",d,g);dojo.publish("logAjaxEvent",["social","tag-photo-suggest","blob"]);}else{dojo.query("input[name='tag_fbid']",k).forEach(function(u){r=u.value;});if(r){g=h[r]?h[r].name:"";API_SVC.tagPhoto({memoirId:b,photoId:a,fbId:r,leftPercent:q,topPercent:m}).addCallback(c,"_onPhotoTag",d,g);dojo.publish("logAjaxEvent",["social","tag-photo-suggest-fb","blob"]);}else{var p=Suggest.getEmails("input[name='email_email']",k);if(!p){console.log("Invalid email / empty email id");return;}var o=(p.length==0)?"":p[0];dojo.query("input[name='tag_new']",k).forEach(function(u){g=u.value;});API_SVC.tagPhoto({memoirId:b,photoId:a,tag:g,personEmail:o,leftPercent:q,topPercent:m}).addCallback(c,"_onPhotoTag",d,g);dojo.publish("logAjaxEvent",["social","tag-photo-non-suggest","blob"]);}}dojo.style(k,"display","none");c.suggest.clear();if(c.emailSuggest){c.emailSuggest.clear();}});});},_onPhotoTag:function(c,f,b){if(b.stat!="ok"){console.log("Error. Code:"+b.code+" Desc:"+b.desc);return;}var a=b.result;if(a.tag.id!=0){var h=this.data,g=h.photos[c],e=a.person;g.faceTags=g.faceTags||[];g.faceTags.push(a.tag);this._showImage(c);}else{dojo.publish("tt",[{message:dojo.string.substitute(M.MAX_PHOTO_TAG_PENDING,[f])}]);}},_stopFaceTag:function(){dojo.query(".mm .pc .ptc").style("display","none");dojo.query(".mm .ta a.f").style("display","block");if(!dojo.cookie("ftag")){dojo.cookie("ftag",true);}},_hideTagEmail:function(){if(this.emailSuggest){this.emailSuggest.clear();}dojo.query(".mm .media .ptc .tag_email").forEach(function(a){dojo.style(a.parentNode,"display","none");});},_showTagEmail:function(b){var d=this,a=false,c=".mm .media .ptc";dojo.query(c).forEach(function(e){dojo.query("input[name='tag_new']",e).forEach(function(f){a=true;});if(!a){dojo.query(".tag_name .suggest_text_box",e).forEach(function(f){if(f.value!=""){a=true;}});}if(a){dojo.query(".tag_email",e).forEach(function(g){var f=dojo.attr(g,"loaded");if(f=="no"){d.emailSuggest=new Suggest(g,"email_","user.email",{newValueText:"email",singleSelect:true,callbacks:{onselect:dojo.hitch(d,"_savePhotoTag"),onenter:dojo.hitch(d,"_savePhotoTag")}});d.emailSuggest.initialize();dojo.attr(g,"loaded","yes");}dojo.style(g.parentNode,"display","block");});d.emailSuggest.clear(b);}});},_loadAddGroups:function(){var b=this,c=b.data,a=b.loggedUser.logged;if(a){dojo.query(".mm .bloblinks .grp").forEach(function(f){var p=cm.get("user.topics"),e=c.topics,d=p?p.length:0,m=e?e.length:0,o,l,h;if(d){f.innerHTML=["<div class='ld'><img src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif' class='va-m'/> ",M.LOADING_MESSAGE,"</div>"].join("");var g=["<div class='gp'>"],k={};for(l=0;l<m;l++){k[e[l].id]=true;}for(l=0;l<d;l++){o=p[l];h=o.value.v;g.push("<div class='it'><input action='grpMultiChoose' class='checkbox' type='checkbox' id='ag",h,"' ");if(k[h]){g.push(" checked='checked'");}g.push("/><span action='grpChoose' class='lb' id='agl",h,"'>",o.original.name,"</span><div class='clearall'></div></div>");}g.push("</div><div class='act'><a href='/topic/new?next=",ut.encode(window.location.href),"'>Start new group</a></div>");f.innerHTML=g.join("");}});}},_hasGroupAdditionChanged:function(){var g=this,k=g.data,a=k.topics,e=[],h=[],f,c,b;if(a){for(f=0,c=a.length;f<c;f++){h.push(a[f].id);}}dojo.query(".mm .bloblinks .grp input[type=checkbox]:checked").forEach(function(d){e.push(parseInt(dojo.attr(d,"id").substring(2)));});f=h.length;c=e.length;b=h.union(e).length;return(f!=b)||(c!=b);},_showAttribution:function(){var b=this,c=b.getData(),a=".mm .attr";if(c.service==APP_TYPE.FREEBASE||c.service.id==APP_TYPE.FREEBASE){dojo.query(a).forEach(function(f){var e=c.service.source,h="Freebase",g=e.split("http://www.freebase.com/view");if(g.length==2){var d=g[1];dojo.io.script.get({callbackParamName:"callback",timeout:3000,url:'http://www.freebase.com/api/service/mqlread?query={"query":{"id":"'+d+'","name":null}}',load:function(k){dojo.create("div",{innerHTML:b._getFBAttribution(e,k.result.name)},f);},error:function(k){console.log(k);dojo.create("div",{innerHTML:b._getFBAttribution(e)},f);}});}else{dojo.create("div",{innerHTML:b._getFBAttribution(e)},f);}});}else{if(c.service==APP_TYPE.DAYLIFE||c.service.id==APP_TYPE.DAYLIFE){dojo.query(a).forEach(function(d){dojo.create("div",{innerHTML:['<div style="font-size: x-small;">','<img src="http://cdn1.lifeblob.com/lifeblob/img/timeline/daylife.vf70fdc.jpg" style="float:left; margin-right: 5px; margun-bottom: 11px;" />',"</div>",'<div style="margin-left:30px"><a href="'+c.service.source+'">'+c.service.source+"</a></div>"].join("")},d);});}}},_getFBAttribution:function(b,c){var a=[];if(c){a.push('&quot<a href="',b,'" title="',c,": Freebase &ndash; The World's Database\">",c,"</a>&quot ");}return['<div style="font-size: x-small;">','<img src="http://www.freebase.com/policies/freebase-cc-by-61x23.png" style="float:left; margin-right: 5px; margun-bottom: 11px;" />',"</div>",'<div style="margin-left:30px"> Source: <a href="',(c?"http://www.freebase.com":b),'" title="Freebase &ndash; The World\'s Database">Freebase</a> &ndash; The World&apos;s Database <br/>',a.join(""),'Freely licensed under <a href="http://www.freebase.com/view/common/license/cc_attribution_25">CC-BY</a>.</div>',].join("");},isOwner:function(){var c=this,a=c.data.created.by_person.id,b=c.loggedUser.person.id;if(a==b){return true;}return(b==1||b==59721);},isContributor:function(){var a=cm.get("user.topics"),d=this.data.topics,c,b;if(d&&a){for(c=0;c<a.length;c++){for(b=0;b<d.length;b++){if(a[c].value.v==d[b].id){return true;}}}}return false;},isTeamUser:function(){return true;},isParticipant:function(){var d=this,a=d.loggedUser.person.id,c=d.data.people,b;if(c){for(b=0;b<c.length;b++){if(c[b].id==a){return true;}}}return false;},isTimelineOwner:function(){return this.loggedUser.isTimelineOwner;},hasDelete:function(){var e=this,f=e.getObj(),a=f.id,c=f.type,g=e.data,h=g.created,b=h.on_topic;if(!e.loggedUser.hasDelete){return 2;}else{if(c=="topic"&&b==a){return 0;}else{if(c=="user"&&!b&&h.by==a){return 0;}}}return 1;}});dojo.require("dojox.rpc.Service");dojo.declare("TimelineHelper",null,{maximized:false,constructor:function(){var b=this;if(!window.API_SVC){if(window.fbParams){for(var a in fbParams){smd.parameters.push({name:a,optional:false,"default":fbParams[a]});}}API_SVC=new dojox.rpc.Service(smd);}if(dojo.isIE){document.execCommand("BackgroundImageCache",false,true);}},initialize:function(e){console.time("TimelineHelper");var c=e.obj.buckets;var b=new Bounds();if(c.length>0){b.xMin=new Date(c[0][1]);b.xMax=new Date(c[c.length-1][2]);}else{b.xMin=new Date();b.xMax=new Date();}e.obj.bounds=b;e.view=e.view||"stack";var a=["at","mid","max","photo","video"],g=[],d;if(e.mid){for(d=0;d<a.length;d++){if(e[d]){g=["&",d,"=",e[d]].concat(g);}}this.maximized=true;dojo.publish("hash",[g.join("")]);}else{if(!e.embedded&&e.obj.type!=DERIVED_TYPE&&!e.ignoreUrl){var f=dojo.hash();if(!f){f=["at=",b.xMax.dateFormat(DP[2])].join("");dojo.publish("hash",[f]);}}}if(false&&!e.embedded&&window.console&&window.console.firebug&&!dojo.cookie("fb")){dojo.cookie("fb",true);dojo.publish("ott",[{message:"<img src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/common/warning.vb2fe9e.ico' class='toasterIcon'/>For the best Lifeblob performance, we suggest disabling Firebug for www.lifeblob.com",type:"warning"}]);}if(this.checkOpts(e)){this.opts=e;this.showTimelineForUrl();}dojo.subscribe("reloadTimeline",this,"reloadTimeline");console.timeEnd("TimelineHelper");},checkOpts:function(c){var b=["obj","timeline"];for(var a=0;a<b.length;a++){if(!c[b[a]]){throw new Error(['"',b[a],'" ',"is a required parameter"].join(""));}}return true;},onLoad:function(){var a=th.opts;if(!a.embedded&&!this.done){this.done=true;dojo.query(".interesting_timelines_cont").forEach(function(b){b.innerHTML=interestingTimelines;});dojo.query(".newsfeed_cont").forEach(function(b){b.innerHTML=newsfeed;});}},showTimeline:function(c){if(!this.my){dojo.subscribe("timelineRedrawMiddle",this,"onLoad",c);var b={};this.my=b;b.timeline=new Timeline(dojo.byId(c.timeline));b.timeline.initialize(c);b.controls={};b.controls.scrollBar=new ScrollControl();if(!c.embedded&&!c.facebookapp){}for(var a in b.controls){b.timeline.addControl(b.controls[a]);}this.opts.obj.timeline=b.timeline;b.timeline.show({init:true,zoom:true,at:c.at,id:c.mid,max:c.max,photo:c.photo,video:c.video});}},reloadTimeline:function(){this.my.timeline.refreshData();},getUser:function(){return LB.getUser();},getObj:function(){return this.my.timeline.obj;},showTimelineForUrl:function(){this.showTimeline(dojo.mixin(this.parseHash(),this.opts));},parseHash:function(){return dojo.queryToObject(dojo.hash());}});SLICE_WIDTH=200;MILLI=[3153600000000,315360000000,2592000000,604800000,86400000,3600000,1];dojo.declare("Memoir",Base,{constructor:function(a){this.data=a;this.state=NEW;},initialize:function(a,b){this.timeline=a;this.group=b;this.cont=a.getContainer();this.state=INITIALIZED;},getId:function(){return this.data.id;},getData:function(){return this.data;},getObj:function(){return this.timeline.getObj();},_populateRelations:function(){var m=this.timeline,l=m.getObj(),y=this.getData(),o=l.type,g=y.photo||y.video,p=!this.isEmpty(y.desc),e=(o==PERSON_TYPE),u=(o==TOPIC_TYPE),f=(o==TAG_TYPE),v=(o==PLACE_TYPE),A=(l.type==FACEBOOK_APP_TYPE),h=y.tags&&(!f||(y.tags.length>1)),q=y.people&&(!e||(y.people.length>1)),z=y.place&&!v,c=y.topics&&(!u||(y.topics.length>1)),x=y.happened.dateFormat(DP[2]);if(!y.relations){y.relations=[];if(c&&!m.facebookapp){for(var w=0;w<y.topics.length;w++){var r=y.topics[w];if(!u||(l.displayName!=r.displayName)){var b=["/topic/",r.displayName,"?src=rel#at=",x,"&mid=",y.id].join("");y.relations.push({name:r.name,url:b,type:TOPIC_TYPE,id:r.id});}}}if(q){for(var w=0;w<y.people.length;w++){var a=y.people[w],k=window.fbParamsString,b;if((!e&&!A)||(l.displayName!=a.displayName)){if(!a.dummy){if(m.facebookapp){b=["http://www.lifeblob.com/facebook/view/user/",a.displayName,"?",k,"&ht=true&src=rel-fb#at=",x,"&mid=",y.id].join("");}else{b=["/user/",a.displayName,"?src=rel#at=",x,"&mid=",y.id].join("");}}else{b=["http://www.lifeblob.com/facebook/view/",a.displayName,"?",k,"&falbum=",y.fbaid,"&ht=true&src=rel-fb#at=",x,"&mid=",y.id].join("");}y.relations.push({name:a.name,url:b,type:PERSON_TYPE,id:a.id});}}}if(z&&!m.facebookapp){var b=["/place/",y.place.displayName,"?src=rel#at=",x,"&mid=",y.id].join("");y.relations.push({name:y.place.name,url:b,type:PLACE_TYPE,id:y.place.id});}if(h&&!m.facebookapp){for(var w=0;w<y.tags.length;w++){var B=y.tags[w];if(!f||(l.displayName!=B.displayName)){var b=["/tag/",B.displayName,"?src=rel#at=",x,"&mid=",y.id].join("");y.relations.push({name:B.name,url:b,type:TAG_TYPE,id:B.id});}}}}},getFrequencyBucketFromlist:function(d,e){var b=d,c=d.length;for(var a=0;a<c;a++){if(b[a].id==e){return b[a].count;}}return 1;},getFrequencyBucket:function(b,a){if(a.type==TAG_TYPE){if(b.tags){return this.getFrequencyBucketFromlist(b.tags,a.id);}}else{if(a.type==TOPIC_TYPE){if(b.topics){return this.getFrequencyBucketFromlist(b.topics,a.id);}}else{if(a.type==PERSON_TYPE){if(b.people){return this.getFrequencyBucketFromlist(b.people,a.id);}}else{if(a.type==PLACE_TYPE){if(b.places){return this.getFrequencyBucketFromlist(b.places,a.id);}}}}}return"1";},getIntersectsFromlist:function(d,e){var b=d,c=d.length;for(var a=0;a<c;a++){if(b[a].id==e){return"intersects";}}return"";},getIntersects:function(b,a){if(a.type==TAG_TYPE){if(b.tags){return this.getIntersectsFromlist(b.tags,a.id);}}else{if(a.type==TOPIC_TYPE){if(b.topics){return this.getIntersectsFromlist(b.topics,a.id);}}else{if(a.type==PERSON_TYPE){if(b.people){return this.getIntersectsFromlist(b.people,a.id);}}else{if(a.type==PLACE_TYPE){if(b.places){return this.getIntersectsFromlist(b.places,a.id);}}}}}return"1";},getTagCloudCompatibleName:function(b){var a=b.title||b.name;if(b.type==TAG_TYPE){return this.truncate(a,28);}else{if(b.type==TOPIC_TYPE){return this.truncate(a,28);}else{if(b.type==PERSON_TYPE){return this.truncate((a.split(" "))[0],28);}else{if(b.type==PLACE_TYPE){return this.truncate((a.split(","))[0],28);}}}}return a;},show:function(B,l,A,k,v,u){this._populateRelations();u=u?u:false;var h=this,r=h.timeline,q=r.getObj(),y=h.getData(),z=y.relations.length,f={1:M.MAX_VISIBILITY_ME,2:M.MAX_VISIBILITY_PARTICIPANTS,3:M.MAX_VISIBILITY_EVERYONE},a=(dojo.isIE==6)?"http://cdn1.lifeblob.com/lifeblob/img/theme-gray/common/video_play_ie6.v940325.png":"http://cdn0.lifeblob.com/lifeblob/img/theme-gray/common/video_play.vf0eacd.png",x=th.getUser().postHighlight,p=false,w=y.visibility,b=k[0],m=(w==3),e=r.embedded,g=e?"target='_blank'":"",c=!m?(["<img class='visibility' src='http://cdn3.lifeblob.com/lifeblob/img/theme-gray/common/lock_white.v8b6a21.gif' title='",f[w],"' />"].join("")):"";if(x){p=(Math.abs(new Date().getTime()-y.updated.getTime())<=NEW_POST_DELTA);}var o=["<div class='memoir_cont' slot='",B.slot,"'>","<div class='date'>"];if(q.type==TOPIC_TYPE&&q.category&&q.category==521){o.push("<span class='vote'><img class='img' src='http://cdn0.lifeblob.com/lifeblob/img/timeline/maxblob/like_on.vc88ea3.png'/>Vote</span>");}o.push("<span class='major'>",B.major,"</span><span class='minor'>",B.minor,"</div>","<div class='img_cont'>","<div class='media'>",(y.photo?["<img class='ep' src='",ut.getImageURL(y.photo,176,0,y.id),"' onload='Memoir.fitImage(this, null,",u,")'/>"].join(""):(y.video?["<img class='ep' src='",ut.getImageURL(y.video,176,0,y.id),"' style='width:176px' onload='Memoir.fitImage(this, true,",u,")'/><img class='play' src='",a,"' /> "].join(""):(!h.isEmpty(y.desc)?["<div class='text'>",y.desc,"</div>"].join(""):""))),"</div>");o.push("<div class='title_cont ",(p?"new_post":""),"'>","<div class='title_bg'></div>",(p?"<div class='title_bd'></div>":""),"<div class='title'>",h.truncate(y.title,28),"</div>","<div class='about ",m?"":"fl","'>",y.created.by_person.name,"</div>",c);o.push("</div></div>");o.push("</div>");b.innerHTML=o.join("");dojo.style(b,"visibility","visible");dojo.removeClass(b,"no_memoir");},moreRelations:function(c,b,a){},_makeVisible:function(a){dojo.style(a,"visibility","visible");},highlight:function(c){var b=cm.get("memoir.cache_ordered"),a=dojo.indexOf(b,this),d=b[a-1].group.stack;dojo.query(".title_cont",d[0]).forEach(function(e){dojo.animateProperty({node:e,duration:5000,onBegin:function(){dojo.addClass(e,"new_post");},onEnd:function(){dojo.removeClass(e,"new_post");}}).play();});}});Memoir.fitImage=function(b,f,a){if(!f){var e=127,d=176,c=ut.scale(b,d,e,{noalign:true});if(c.height<(e-29)){dojo.style(b,"marginTop",((98-c.height)/2)+"px");}}if(true){dojo.fadeIn({node:b}).play();}else{dojo.style(b,"opacity","1");}};dojo.declare("MemoirGroup",null,{constructor:function(a){this.bucket=a;this.cache={};this.memoirs=[];this.active=0;this.bounds={};},initialize:function(a){this.timeline=a;this.cont=a.getContainer();},addMemoir:function(b){if(!this.cache[b.data.id]){this.cache[b.data.id]=b;this.memoirs.push(b);b.initialize(this.timeline,this);b._populateRelations();var a=b.data.happened;if(!this.bounds.xMin){this.bounds.xMin=a;}else{if(this.bounds.xMin.getTime()>a.getTime()){this.bounds.xMin=a;}}if(!this.bounds.xMax){this.bounds.xMax=a;}else{if(this.bounds.xMax.getTime()<a.getTime()){this.bounds.xMax=a;}}}},removeMemoir:function(b){var a=dojo.indexOf(this.memoirs,b);this.memoirs.splice(a,1);},getBounds:function(){return this.bounds;},next:function(){if(this.timeline.interactive){this.active=(this.active+1)%this.memoirs.length;this.memoirs[this.active].show(this.bucket,this.active+1,this.memoirs.length,this.stack);dojo.publish("logAjaxEvent",["nav","memoir-next","timeline"]);}},prev:function(){if(this.timeline.interactive){this.active=!this.active?(this.memoirs.length-1):(this.active-1);this.memoirs[this.active].show(this.bucket,this.active+1,this.memoirs.length,this.stack);dojo.publish("logAjaxEvent",["nav","memoir-prev","timeline"]);}},redraw:function(a,c,b){this.stack=a||this.stack;this.memoirs[this.active].show(this.bucket,this.active+1,this.memoirs.length,this.stack,c,b);},getMemoir:function(){return this.memoirs[this.active];},moreRelations:function(b,a){this.memoirs[this.active].moreRelations(b,a,this.stack);},forPrefetch:function(){var c=this.memoirs;var b=[];if(this.active==0){if(!c[0].similar){for(var a=0;a<Math.min(2,c.length);a++){b.push(c[a].data.id);}if(c.length>2){b.push(c[c.length-1].data.id);}}}else{}return b;},setActive:function(b){var a=dojo.indexOf(this.memoirs,b);this.active=(a>=0?a:this.active);}});dojo.require("dojo.dnd.move");dojo.declare("ScrollControl",Control,{initialize:function(b){this.pixelMap={};this.pad=5;this.timeline=b;this.cont=b.getContainer();var a=this;dojo.subscribe("timelineResize",a,"_resize");dojo.subscribe("timelineRedraw",a,"_redraw");dojo.subscribe("timelineReload",a,"_reload");dojo.query(".scrollbar").forEach(function(f){var d=a.timeline,g=d.getBounds(),c=d.getObj().bounds,e=d.size.width-(d.embedded?125:60);f.innerHTML=["<table border=0 cellpadding=0 cellspacing=0><tr>","<td class='sc_btn sc_btn_left'><div class='sc_scroll_left move_left' title='",M.SC_MOVE_HELP,"'></div></td>","<td class='sc_scroll'><div class='sc_scroll_center'><hr class='line'/>","<div class='sc_peg' title='",M.SC_DRAG_HELP,"'>","<div class='sc_slider'><div class='sc_center'></div><div class='sc_right'></div></div>","<div class='sc_range'></div>","</div>","</div></td>","<td class='sc_btn sc_btn_right'><div class='sc_scroll_right move_right' title='",M.SC_MOVE_HELP,"'></div></td>","</tr>","<tr>","<td></td>","<td>","<div class='sc_left_date'>",c.xMin.dateFormat("M, Y"),"</div><div class='sc_right_date'>",c.xMax.dateFormat("M, Y"),"</div>","</td>","<td></td>","</tr>","</table>",].join("");dojo.query(".sc_scroll_center",f).onclick(function(h){if(dojo.hasClass(h.target,"sc_scroll_center")){var l=h.pageX-95;var k=a.pixelMap[d.getZoom()][l];if(k){g.xMax=k.rightDate;}else{g.xMax=new Date(c.xMin.getTime()+(l*(c.xMax.getTime()-c.xMin.getTime())/e));}d.redraw({redraw:true});}});dojo.query(".sc_peg",f).forEach(function(k){var h=new dojo.dnd.move.parentConstrainedMoveable(k,{area:"padding",within:true});dojo.query(".sc_range",k).forEach(function(l){dojo.connect(h,"onMoveStart",function(m){d.interactive=false;dojo.fadeIn({node:l,onBegin:function(){dojo.style(l,"display","block");}}).play();});h.onMove=function(o,u){var r=o.marginBox;var q=u.l-r.l-95;var t=a.pixelMap[d.getZoom()][Math.floor(q)];var m=parseInt(dojo.style(k,"width"));if(t){h.constraintBox.r=e-t.right+t.left;g.xMax=t.rightDate;dojo.animateProperty({onBegin:function(){l.innerHTML=[t.leftDate.dateFormat("d My")," - ",t.rightDate.dateFormat("d My")].join("");},node:k,duration:50,properties:{width:{start:m,end:(t.right-t.left),unit:"px"},left:{end:t.left,unit:"px"}},onAnimate:function(w){var v=parseInt(w.width);dojo.style(l,"marginLeft",(v-100)/2+"px");}}).play();}else{if(!this.fetching){this.fetching=true;var p=q+m/2;g.xMax=new Date(c.xMin.getTime()+(p*(c.xMax.getTime()-c.xMin.getTime())/e));d.redraw({scroll:true});}}};dojo.connect(h,"onMoveStop",function(o){var r=parseInt(dojo.style(k,"left"));var m=parseInt(dojo.style(k,"width"));var q=a.pixelMap[d.getZoom()][Math.floor(r+a.pad+m/2)];try{g.xMax=q.rightDate;}catch(p){}dojo.fadeOut({node:l,onEnd:function(){dojo.style(l,"display","none");}}).play();d.redraw({redraw:true});d.interactive=true;dojo.publish("chgLoc",[["at=",g.xMax.dateFormat(DP[2])].join("")]);dojo.publish("logAjaxEvent",["nav","scroll-peg","timeline"]);});});});});this._setupHandlers();this._resize();},_ondblclick:function(a){dojo.stopEvent(a);this._stopScroll();},_moveLeft:function(c){var b=this,a=b.timeline;a.moveBy(1);this._stopScroll();this.handle=setInterval(function(){a.moveBy(1);},200);dojo.stopEvent(c);dojo.publish("chgLoc",[["at=",a.getBounds().xMax.dateFormat(DP[2])].join("")]);dojo.publish("logAjaxEvent",["nav","scroll-left","timeline"]);},_moveRight:function(c){var b=this,a=b.timeline;a.moveBy(-1);this._stopScroll();this.handle=setInterval(function(){a.moveBy(-1);},200);dojo.stopEvent(c);dojo.publish("chgLoc",[["at=",a.getBounds().xMax.dateFormat(DP[2])].join("")]);dojo.publish("logAjaxEvent",["nav","scroll-right","timeline"]);},_stopScroll:function(){clearInterval(this.handle);this.handle=null;},_resize:function(){dojo.query(".sc_right",this.cont).style({left:this.timeline.size.width-20+"px"});},_redraw:function(e){if(e.fetched||e.zoom){this._buildPixelMap();}if(!e.scroll){var k=this.timeline,g=k.getBounds(),f=k.getObj().bounds,b=k.size.width-(k.embedded?125:60),h=k.getZoom(),l=cm.get("memoir.groups_ordered")[h],d=l.length,a=k.getGroupCount();if(d>0&&d>a){if(f.xMax>f.xMin){var c=Math.floor((g.xMin.getTime()-f.xMin.getTime())*b/(f.xMax.getTime()-f.xMin.getTime()));var b=Math.floor(Math.max(((g.xMax.getTime()-g.xMin.getTime())*b/(f.xMax.getTime()-f.xMin.getTime())),0));dojo.query(".scrollbar .sc_peg").style({left:c+"px",width:b+"px"});}else{dojo.query(".scrollbar .sc_peg").style({left:0+"px",width:b+"px"});}}else{dojo.query(".scrollbar .sc_peg").style({left:0+"px",width:b+"px"});}}},_reload:function(){this.cont=this.timeline.getContainer();this._resize();this._redraw({fetched:true});this._setupHandlers();},_setupHandlers:function(){var a=this;dojo.query(".move_left").onmousedown(a,"_moveLeft").onmouseup(a,"_stopScroll").onmouseout(a,"_stopScroll").connect("ondblclick",a,"_ondblclick");dojo.query(".move_right").onmousedown(a,"_moveRight").onmouseup(a,"_stopScroll").onmouseout(a,"_stopScroll").connect("ondblclick",a,"_ondblclick");},_buildPixelMap:function(){var h=this.timeline,k=h.getObj().bounds,a=h.getZoom(),b=cm.get("memoir.groups_ordered")[a],m=h.size.width-(h.embedded?125:60),q=k.xMin.getTime(),v=k.xMax.getTime(),c=(v-q)/m,w=this.pixelMap[a]||{},u=b.length,d=u-1,e=u-h.getGroupCount(),x,o,y,l,r,p;if(u>0){x=Math.floor((b[u-1].bounds.xMax-q)/c);}else{x=0;}for(r=e;r>=0;r--){var g=b[e].bounds,f=b[d].bounds;o=Math.floor((f.xMax-q)/c);y=Math.floor((g.xMin-q)/c);l=Math.floor((y+o)/2);w[l]={left:y,right:o,leftDate:g.xMin,rightDate:f.xMax};for(p=l;p<x;p++){w[p+1]=w[l];}if(r==0){for(p=l;p>y;p--){w[p-1]=w[l];}}x=l;d-=1;e-=1;}this.pixelMap[a]=w;this.fetching=false;},getName:function(){return"Scroll Control";}});dojo.declare("NavigationControl",Control,{initialize:function(timeline){this.timeline=timeline;this.cont=timeline.getContainer();var ref=this;var obj=timeline.getObj();dojo.query(".timeline_actions").forEach(function(actionNode){var filterCookie=dojo.cookie("_vf!"),filterDisabled={};if(!filterCookie){filterDisabled.tw=true;}else{if(filterCookie!="all"){var filters=filterCookie.split("-");for(var index in filters){filterDisabled[filters[index]]=true;}}}var arrowHtml=((obj.type==PLACE_TYPE)||(obj.type==TAG_TYPE))?'<img handle="true" src="http://cdn0.lifeblob.com/lifeblob/img/theme-gray/common/small_arrow_down_blue.vc80485.png"/>':'<img handle="true" src="http://cdn1.lifeblob.com/lifeblob/img/theme-gray/common/small_arrow_down_brown.vcaaff7.png"/>';actionNode.innerHTML=['<span class="timeline_action">',M.ZOOM,'<span class="filters" handle="true">','<span handle="true" class="title">',eval("M.NAV_ZOOM_"+timeline.getZoom()),"</span>",arrowHtml,'<div class="choose hidden" action="zoom" style="right:195px;width:65px;">','<a class="option zoom" param="0" href="javascript:void(0)">',M.NAV_ZOOM_0,"</a>",'<a class="option zoom" param="1" href="javascript:void(0)">',M.NAV_ZOOM_1,"</a>",'<a class="option zoom" param="2" href="javascript:void(0)">',M.NAV_ZOOM_2,"</a>",'<a class="option zoom" param="3" href="javascript:void(0)">',M.NAV_ZOOM_3,"</a>",'<a class="option" param="4" href="javascript:void(0)">',M.NAV_ZOOM_4,"</a>","</div>","</span>","</span>",'<span class="timeline_action">',M.FILTER,'<span class="filters" handle="true">','<span handle="true" class="title">',ref.getFilter(),"</span>",arrowHtml,'<div class="choose hidden" action="filter" >','<div class="ftitle">',M.NAV_FILTER_TITLE,"</div>",'<a class="filter" href="javascript:void(0)"><input type="checkbox" class="checkbox" param="p" id="f_photo" ',(filterDisabled.p?"":"checked"),'/><label for="f_photo">',M.NAV_FILTER_P,"</label></a>",'<a class="filter" href="javascript:void(0)"><input type="checkbox" class="checkbox" param="v" id="f_video" ',(filterDisabled.v?"":"checked"),'/><label for="f_video">',M.NAV_FILTER_V,"</label></a>",'<a class="filter apply" href="javascript:void(0)">',M.NAV_FILTER_APPLY,"</a>","</div>","</span>","</span>",'<span class="timeline_action">','<a class="link" style="padding: 0 0 0 5px; display: inline" href="javascript:void(0)" action="showHideStack" actionParams="hide">',M.HIDE_RELATIONS,"</a>","</span>"].join("");dojo.query(".filters",actionNode).onclick(function(event){if(!dojo.attr(event.target,"handle")){return;}var filterNode=event.currentTarget;dojo.query(".choose",filterNode).forEach(function(chooseNode){if(!dojo.hasClass(chooseNode,"hidden")){dojo.addClass(chooseNode,"hidden");return;}dojo.removeClass(chooseNode,"hidden");});});dojo.query(".choose",actionNode).forEach(function(chooseNode){var actionType=dojo.attr(chooseNode,"action");switch(actionType){case"zoom":dojo.query("a",chooseNode).onclick(function(event){var elem=event.currentTarget,zoom=dojo.attr(elem,"param");dojo.addClass(chooseNode,"hidden");dojo.query(".title",chooseNode.parentNode).forEach("item.innerHTML='"+eval("M.NAV_ZOOM_"+zoom)+"'");ref.timeline.setZoom(parseInt(zoom));dojo.stopEvent(event);});break;case"filter":dojo.query("input[type='checkbox']",chooseNode).onchange(function(event){dojo.query("a.apply",chooseNode).style("display","block");});dojo.query("a.apply",chooseNode).onclick(function(event){var notSelected=[];dojo.query("input[type='checkbox']",chooseNode).forEach(function(cE){if(cE.checked!=true){notSelected.push(dojo.attr(cE,"param"));}});if(notSelected.length==0){dojo.cookie("_vf!","all",{expires:100,path:"/"});}else{dojo.cookie("_vf!",notSelected.join("-"),{expires:100,path:"/"});}dojo.query(".title",chooseNode.parentNode).forEach("item.innerHTML='"+ref.getFilter()+"'");dojo.style(event.currentTarget,"display","none");dojo.addClass(chooseNode,"hidden");dojo.publish("reloadTimeline");dojo.stopEvent(event);});break;}});dojo.query("[action='showHideStack']",actionNode).onclick(function(evt){var node=evt.currentTarget,action=dojo.attr(node,"actionParams"),t=ref.timeline;switch(action){case"show":t.showStack();node.innerHTML=M.HIDE_RELATIONS;dojo.attr(node,"actionParams","hide");break;case"hide":t.hideStack();node.innerHTML=M.SHOW_RELATIONS;dojo.attr(node,"actionParams","show");break;}});});},getFilter:function(){var filterCookie=dojo.cookie("_vf!");console.log("Cookie Value: ["+filterCookie+"]");if(!filterCookie||filterCookie=="all"){return M.NAV_FILTER_NONE;}var hidden=[];var filters=filterCookie.split("-");for(var index in filters){var value=eval("M.NAV_FILTER_"+filters[index].toUpperCase());if(value){hidden.push(value);}}if(hidden.length>0){return hidden.join(", ")+" hidden";}return M.NAV_FILTER_NONE;},getName:function(){return"Nav Control";}});dojo.declare("Timeline",null,{constructor:function(a){this.container=a;this.node;this.obj;this.zoomlevel=-1;this.paneCount=6;this.size=new Size(1000,300);this.groupCount=4;this.groupWidth=205;this.controls={};this.bounds=new Bounds();this.wheelScroll=false;this.wheelZoom=false;this.animation=true;this.visible=false;this.embedded=false;this.facebookapp=false;this.interactive=true;this.lastMemoirs;this.viewerFrequencyMap;this.timelineFrequencyMap;},initialize:function(b){b=b||{};b.width=b.width||this.container.offsetWidth;b.height=b.height||this.container.offsetHeight;if(b.embedded){if(dojo.isIE){b.height=b.height-46;}else{if(dojo.isChrome){b.height=document.height-49;}else{b.height=document.height-46;}}this.paneCount=1;this.embedded=true;this.container.innerHTML="";dojo.removeClass(this.container,"embed_preloading");}this.spawnLinks=b.spawnLinks||false;if(b.facebookapp){this.facebookapp=true;}this.timelineFrequencyMap=b.timelineFrequencyMap||{};this.viewerFrequencyMap=b.viewerFrequencyMap||{};if(th.getUser().person.id>0){if(!this.viewerFrequencyMap.people){this.viewerFrequencyMap.people={};}this.viewerFrequencyMap.people[th.getUser().person.id]=1;}this.obj=b.obj;this.size=(b.width+b.height!=0)?new Size(b.width,b.height):this.size;this.showHeight=300;this.hideHeight=200;this.zoomlevel=(b.zoom!=undefined)?parseInt(""+b.zoom):this.zoomlevel;if(this.zoomlevel>5||this.zoomlevel<0){this.zoomlevel=3;}if(b.view=="derived"){this.zoomlevel=4;}this.zoomlevel=5;this.bounds.xMax=b.end||b.obj.bounds.xMax.clone();this.groupCount=Math.floor(this.size.width/this.groupWidth);this.lastMemoirs=b.lastMemoirs||[];this.node=document.createElement("div");dojo.addClass(this.node,"stack");dojo.style(this.node,{height:this.size.height+"px"});var e=this.getLeftOffset(),d=[],c,a;d.push("<div class='stack_pane stack_pane_1' style='left:",e,"px'>");for(a=0;a<15;a++){d.push("<div class='memoir' style='visibility:hidden;'></div>");}d.push("</div>");d.push("<a href='javascript:void(0)' class='sc_left move_left' title='",M.SC_MOVE_HELP,"'></a>","<a href='javascript:void(0)' class='sc_right move_right' title='",M.SC_MOVE_HELP,"'></a>");this.container.innerHTML="";this.container.appendChild(this.node);this.node.innerHTML=d.join("");this.manager=new MemoirManager(this);this.manager.initialize();dojo.connect(window,"onresize",this,"resize");},getLeftOffset:function(){return(this.size.width-this.groupWidth*(15+(this.groupCount%2==0?-1:0))+64)/2;},getContainer:function(){return this.node;},getGroupCount:function(){return this.groupCount;},getZoom:function(){return this.zoomlevel;},getSize:function(){return this.size;},getObj:function(){return this.obj;},getBounds:function(){return this.bounds;},getManager:function(){return this.manager;},getLastMemoirs:function(){return this.lastMemoirs;},setSize:function(a){this.size=a;},setType:function(a){this.type=a;},moveTo:function(a,b){},moveBy:function(e){if(this.interactive&&this.manager.canMove(e)){var c=cm.get("memoir.panes"),d=c.start,a=(c.start+14)%15,b;if(e>0){for(b=0;b<c[a].length;b++){dojo.place(c[a][b],c[d][b],"before");dojo.style(c[a][b],"visibility","hidden");}if(c.start>0){c.start--;}else{c.start=14;}delete (c[a].group);}else{for(b=0;b<c[d].length;b++){dojo.place(c[d][b],c[a][b],"after");dojo.style(c[d][b],"visibility","hidden");}if(c.start<14){c.start++;}else{c.start=0;}delete (c[d].group);}this.redraw({move:e});}},setZoom:function(a){if((this.zoomlevel!=a)&&(a>=0)&&(a<=4)){this.zoomlevel=a;this.redraw({zoom:true});dojo.publish("logAjaxEvent",["nav","zoom","timeline"]);}},zoomIn:function(a){if(this.zoomlevel<4){this.zoomlevel++;this.redraw({zoom:true,center:a});dojo.publish("logAjaxEvent",["nav","zoom-in","timeline"]);}},zoomOut:function(a){if(this.zoomlevel>0){this.zoomlevel--;this.redraw({zoom:true,center:a});dojo.publish("logAjaxEvent",["nav","zoom-out","timeline"]);}},addControl:function(a){if(!this.controls[a.getName()]){this.controls[a.getName()]=a;a.initialize(this);}},removeControl:function(a){delete this.controls[a.getName()];a.remove();},_getControls:function(){return this.controls;},resize:function(b){this.size.width=this.container.offsetWidth||this.size.width;this.size.height=this.container.offsetHeight||this.size.height;this.groupCount=Math.floor(this.size.width/this.groupWidth);var a=this.getLeftOffset();dojo.query(".stack_pane",this.getContainer()).style("left",a+"px");dojo.publish("timelineResize");this.redraw((b.target)?{redraw:true}:b);},redraw:function(a){if(this.visible){this.manager.refresh(a);}},refreshData:function(){var b=this.obj;var a=(b.type==TOPIC_TYPE)?4:((b.type==PLACE_TYPE)?2:((b.type==TAG_TYPE)?3:((b.type==DERIVED_TYPE)?5:(b.type==FACEBOOK_APP_TYPE?6:1))));this.hide();this.node.parentNode.removeChild(this.node);this.obj.buckets=[];this.obj.bounds=null;API_SVC.getInfo(a,b.id,true).addCallback(this,"_onRefreshData");},_onRefreshData:function(d){if(d.stat!="ok"){console.log("Error. Code:"+d.code+" Desc:"+d.desc);return;}var a=d.result;var c=a.buckets;var b=new Bounds();if(c.length>0){b.xMin=new Date(c[0][1]);b.xMax=new Date(c[c.length-1][2]);}else{b.xMin=new Date();b.xMax=new Date();}this.obj.buckets=c;this.obj.bounds=b;this.bounds=b;this.lastMemoirs=a.lastMemoirs||[];this.node=document.createElement("div");dojo.addClass(this.node,"stack");dojo.style(this.node,{height:this.size.height+"px"});var h=this.getLeftOffset(),g=[],f,e;g.push("<div class='stack_pane stack_pane_1' style='left:",h,"px'>");for(e=0;e<15;e++){g.push("<div class='memoir' style='visibility:hidden;'></div>");}g.push("</div>");g.push("<a href='javascript:void(0)' class='sc_left move_left' title='",M.SC_MOVE_HELP,"'></a>","<a href='javascript:void(0)' class='sc_right move_right' title='",M.SC_MOVE_HELP,"'></a>");this.container.appendChild(this.node);this.node.innerHTML=g.join("");this.manager=new MemoirManager(this);this.manager.initialize();this.show({init:true,zoom:true});dojo.publish("timelineReload");},hide:function(){if(this.visible){dojo.style(this.node,"display","none");this.visible=false;dojo.publish("notifyEnd");dojo.publish("timelineHidden");}},show:function(a){if(!this.visible){dojo.publish("notifyStart");dojo.style(this.node,"display","block");this.visible=true;dojo.publish("timelineShown");this.resize(a);}},showStack:function(c){var a=this.container,b=this;dojo.style(a,"overflow","hidden");dojo.removeClass(a,"hidden_stack");dojo.animateProperty({node:a,duration:500,properties:{height:{start:b.hideHeight,end:b.showHeight,unit:"px"}},onEnd:function(){dojo.style(a,"overflow","visible");b.resize({});dojo.style(b.node,{height:b.showHeight+"px"});if(c){c();}}}).play();},hideStack:function(d){var a=this.container,c=this,b=c.node;dojo.style(a,"overflow","hidden");dojo.animateProperty({node:a,duration:500,properties:{height:{start:c.showHeight,end:c.hideHeight,unit:"px"}},onEnd:function(){dojo.style(a,"overflow","visible");c.resize({});dojo.addClass(a,"hidden_stack");dojo.style(c.node,{height:c.hideHeight+"px"});if(d){d();}}}).play();},getBucket:function(b){var d,a,c;switch(this.zoomlevel){case 0:d=(b.getFullYear()-(b.getFullYear()%10));return{slot:d,major:d,minor:""};case 1:d=b.getFullYear();return{slot:d,major:d,minor:""};case 2:d=((b.getFullYear()*100)+b.getMonth());a=b.dateFormat("M");c=b.dateFormat("'y");return{slot:d,major:a,minor:c};case 3:d=((b.getFullYear()*10000)+(b.getMonth()*100)+b.getDate());a=b.dateFormat("D");c=b.dateFormat("M d 'y");return{slot:d,major:a,minor:c};case 4:d=((b.getFullYear()*1000000)+(b.getMonth()*10000)+(b.getDate()*100)+b.getHours());a=b.dateFormat("g");c=b.dateFormat("A M d 'y");return{slot:d,major:a,minor:c};case 5:d=b.getTime();a=b.dateFormat("d");c=b.dateFormat("M 'y");return{slot:d,major:a,minor:c};}}});dojo.declare("MemoirManager",Base,{constructor:function(a){this.timeline=a;this.processing=false;this.retry=false;this.cache={};this.cacheOrdered=[];this.groups={};this.groupsOrdered={};this.panes=[];this.seq=1;this.mouseovertimer=0;this.mouseoverindex=-1;this.maxBlob=new MemoirBase(a);dojo.subscribe("memoirRefresh",this,"refresh");},initialize:function(){var d=this,a=-1,c=this.panes,b=this.timeline,e;dojo.query(".memoir",this.timeline.getContainer()).forEach(function(k,h,g){e=Math.floor(h%15);if(!e){a++;}if(!c[e]){c[e]=[];}c[e][a]=k;}).connect("onmouseover",this,"_onmouseoverHandlers").connect("onmouseout",this,"_onmouseoutHandlers");c.start=0;var f=c[0][0].parentNode;dojo.connect(f,"onclick",this,"_clickHandlers");cm.put("memoir.cache",this.cache);cm.put("memoir.cache_ordered",this.cacheOrdered);cm.put("memoir.groups",this.groups);cm.put("memoir.groups_ordered",this.groupsOrdered);cm.put("memoir.panes",this.panes);},_onmouseoverHandlers:function(a){dojo.stopEvent(a);if(this.mouseovertimer){clearTimeout(this.mouseovertimer);this.mouseovertimer=0;}var d=this,c=this.panes;if(this.mouseoverindex>0&&a.currentTarget==c[this.mouseoverindex][0]){return;}for(var b=0;b<15;b++){if(c[b][0]==a.currentTarget){this.mouseoverindex=b;break;}}dojo.query("> .memoir_cont",a.currentTarget).forEach(function(f){var k=dojo.attr(f,"slot"),g=d.groups[d.zoom][k],h=g.getMemoir();if(!h.data.relations){h._populateRelations();}var e=h.data.relations;dojo.query("#tagcloud .relation").removeClass("connected").filter(function(o){var l;for(var m=0;m<e.length;m++){l=e[m].type+e[m].id;if(dojo.hasClass(o,l)){return true;}}return false;}).addClass("connected");});},_onmouseoutHandlers:function(a){dojo.stopEvent(a);if(this.mouseovertimer){clearTimeout(this.mouseovertimer);this.mouseovertimer=0;}this.mouseovertimer=setTimeout(dojo.hitch(this,"_clearTagcloudSelection"),500);},_clearTagcloudSelection:function(){clearTimeout(this.mouseovertimer);this.mouseovertimer=0;this.mouseoverindex=-1;dojo.query("#tagcloud .connected").removeClass("connected");},_clickHandlers:function(k){var l=this.timeline,c=k.target,b=c.id,g=this.maxBlob;if(!l.interactive){return;}if(c.tagName!="A"){var e,f,h;while(!dojo.hasClass(c,"stack_pane")){if(dojo.hasClass(c,"memoir_cont")){e=dojo.attr(c,"slot");break;}else{c=c.parentNode;}}if(!e){return;}h=this.groups[this.zoom][e];f=h.getMemoir();if(l.spawnLinks){var a=l.getBounds(),d=l.getObj();window.open(ut.getUrl({type:d.type,display:d.displayName,at:f.data.happened,id:f.data.id,src:"spawn"}),"_blank");}else{if(l.embedded){var a=l.getBounds(),d=l.getObj();window.open(ut.getUrl({type:d.type,display:d.displayName,at:f.data.happened,id:f.data.id,max:true,src:"embed",utm_source:d.type,utm_campaign:"lifeblob_embed",utm_medium:"embed",utm_term:d.displayName}),"_blank");}else{g.maximize(f,{evt:k});}}}else{var e=dojo.attr(c,"slot");if(e){var h=this.groups[this.zoom][e],f=h.getMemoir();g.maximize(f,{evt:k});}}},addMemoirs:function(a){var b,c=a.length;a.sort(function(e,d){return e.id-d.id;});for(b=0;b<c;b++){this.addMemoir(a[b]);}},addMemoir:function(d){if(!this.cache[d.id]){var h=new Memoir(d),c=this.timeline,f=this.zoom,b=this.seq,a=h.data.happened,g=c.getBucket(a),e=this.groups[f][g.slot];this.cache[d.id]=h;this.cacheOrdered.push(h);if(e){if(b>999){b=1;}g.slot-=b;a.setTime(a.getTime()-b);b++;this.seq=b;}e=new MemoirGroup(g);this.groups[f][g.slot]=e;this.groupsOrdered[f].push(e);e.initialize(c);e.addMemoir(h);}else{this.updateMemoir(d);}},removeMemoir:function(a){delete this.cache[a];},getMemoir:function(a){return this.cache[a];},updateMemoirs:function(a){var b;for(b=0;b<a.length;b++){this.updateMemoir(a[b]);}},updateMemoir:function(a){var b=this.cache[a.id];if(b){b.data=a;}},canMove:function(b){var o=this.timeline,h=this.zoom,e=this.groups,k=o.getBounds(),a=o.getObj().buckets,l=this.groupsOrdered[h],d=o.getBucket(k.xMax),c=dojo.indexOf(l,e[h][d.slot]),m=o.getBucket(k.xMin),f=dojo.indexOf(l,e[h][m.slot]);if((b>0)&&((f>0)||(!a[0].fetched))){return true;}else{if((b<0)&&((c<l.length-1)||(!a[a.length-1].fetched))){return true;}}return false;},refresh:function(b){var a=b||{};if(!this.processing){dojo.publish("notifyStart");this.processing=true;this.retry=null;this._fetchMemoirs(a);}else{this.retry=this.retry||{move:0};this.retry.force=a.force||this.retry.force;this.retry.zoom=a.zoom||this.retry.zoom;this.retry.redraw=a.redraw||this.retry.redraw;this.retry.move+=a.move||0;}},_fetchMemoirs:function(u){var c=this.timeline,t=c.getLastMemoirs(),h=c.getObj(),a=c.getZoom(),k=c.getBounds(),b=h.buckets,o=b.length,q=c.getGroupCount(),r,d,g,e,l=[],p,m=false,v=o+1;if(u.zoom){this.zoom=this.timeline.getZoom();this._groupMemoirs(u.regroup);this._sortGroups();}e=(u.at?Date.parseDate(u.at,DP[2],true).getTime():k.xMax.getTime())+(q*MILLI[a]);g=e-(3*q*MILLI[a]);for(r=0;r<o;r++){if(b[r].fetched){m=true;v=Math.min(v,r);}if((b[r][2]>=g)&&(b[r][1]<=e)){if(!b[r].fetched){l.push(b[r][0]);b[r].fetched=true;}}}m=m&&(v>0)&&this._getNearestGroupIndex(new Date(e))<16;if(m&&!b[v-1].fetched){l.push(b[v-1][0]);b[v-1].fetched=true;}if(u.init&&o>1&&l.length==1&&l[0]==b[o-1][0]){var p=b[o-2];l.push(p[0]);p.fetched=true;}if(o>0){var f=b[o-1][0];if(((l.length==1&&l[0]==f)||(l.length==2&&(l[0]==f||l[1]==f)))&&t.length){this._addMemoirs(u,t);return;}}if(!l.length&&(b.length>0)&&!b[0].fetched&&(e<b[0][1])){l.push(b[0][0]);b[0][0].fetched=true;}if(l.length){d=(h.type==TOPIC_TYPE)?4:((h.type==PLACE_TYPE)?2:((h.type==TAG_TYPE)?3:((h.type==DERIVED_TYPE)?5:1)));API_SVC.fetchMemoirs(h.id,d,l.join(",")).addCallback(this,"_onFetchMemoir",u,l);}else{this._finish(u);}},_onFetchMemoir:function(c,b,a){if(a.stat!="ok"){console.log("Error. Code:"+a.code+" Desc:"+a.desc);return;}this._addMemoirs(c,a.result,b);},_addMemoirs:function(d,m,c){var g,e,l,q;var h=Number.MAX_VALUE,p=Number.MIN_VALUE;if(m.length>0){for(g=0;g<m.length;g++){l=m[g];l.happened=Date.parseDate(l.happened,DP[1],true);l.updated=Date.parseDate(l.updated,DP[1],true);if(l.happened.getTime()<h){h=l.happened.getTime();}if(l.happened.getTime()>p){p=l.happened.getTime();}q=l.people;if(q){for(e=0;e<q.length;e++){if(q[e].id==l.created.by){l.created.by_person=q[e];break;}}}}this.addMemoirs(m);}d.fetched=true;this._sortGroups();this._finish(d);if(c){var o=this.timeline,f=o.getObj(),b=f.buckets,k,a;c.sort();if(h!=Number.MAX_VALUE){k=c[0]-1;b[k][1]=h;if(k>0){b[k-1][2]=h-1;}}if(p!=Number.MIN_VALUE){k=c[c.length-1]-1;b[k][2]=p;if(k<(b.length-1)){b[k+1][1]=p+1;}}}},_groupMemoirs:function(a){if(!this.groups[this.zoom]||a){this.groups[this.zoom]={};this.groupsOrdered[this.zoom]=[];}var b,e,d,c;for(b in this.cache){e=this.cache[b];d=this.timeline.getBucket(e.data.happened);c=this.groups[this.zoom][d.slot];if(!c){c=new MemoirGroup(d);this.groups[this.zoom][d.slot]=c;this.groupsOrdered[this.zoom].push(c);c.initialize(this.timeline);}c.addMemoir(e);}},_sortGroups:function(){this.groupsOrdered[this.zoom].sort(function(d,c){return((d.bucket.slot>c.bucket.slot)?1:((d.bucket.slot<c.bucket.slot)?-1:0));});this.cacheOrdered.sort(function(d,c){return((d.data.happened>c.data.happened)?1:((d.data.happened<c.data.happened)?-1:0));});},_getNearestGroupIndex:function(b){var a=this.groupsOrdered[this.zoom],e=this.timeline.getBucket(b),d=dojo.indexOf(a,this.groups[this.zoom][e.slot]),c;if((d==-1)&&a.length>0){if(e.slot>a[a.length-1].bucket.slot){d=a.length-1;}else{d=0;for(c=a.length-1;c>=0;c--){if((e.slot-a[c].bucket.slot)>0){d=c;break;}}}}return d;},_finish:function(D){var m=this.groupsOrdered[this.zoom],p=this.timeline,A=p.getGroupCount(),h=p.getBounds(),G=this._getNearestGroupIndex(D.at?Date.parseDate(D.at,DP[2],true):h.xMax),k=this.panes,q=k.start,o=0,C=15,x=D.history,e,f,H,u,r,y,w,v,B,z;if(G<A){G=Math.min(A-1,m.length-1);}if(G>=0&&G<m.length){h.xMax=m[G].getBounds().xMax;}if(D.move){G-=D.move;if(G<m.length){h.xMax=m[G].getBounds().xMax;}}e=(G>=A)?(G-A+1):0;if(e>=0&&e<m.length){h.xMin=m[e].getBounds().xMin;}if(D.zoom||D.move||D.redraw){f=Math.floor((15-A)/2);H=f+A-1;if(D.move&&!D.fetched){o=(D.move>0)?(D.move-1):(15+D.move);C=(D.move>0)?(o+D.move):15;}var a=h.xMax.getTime(),b=h.xMin.getTime(),E=false,c=false,d=this,g=0,F,l;if(D.id){w=this.cache[D.id];if(w){w.group.setActive(w);}}for(u=C-1;u>=o;u--){c=false;v=(u+q)%15;r=u-f+e;if((r>=0)&&(r<m.length)){k[v].group=m[r].bucket.slot;l=m[r].bounds.xMax.getTime();if(!E&&u==o){E=true;c=true;}if(D.init&&(l<=a)){g++;setTimeout(dojo.hitch(d,"gpRedraw",m[r],k[v],D.init,c),((g*200)+1));}else{m[r].redraw(k[v],false,x);}}else{for(z=0;z<6;z++){F=k[v][z];if(!F){break;}if(z>0||r<0||(r>(A-1))){dojo.style(F,"visibility","hidden");}else{F.innerHTML="";dojo.addClass(F,"no_memoir");dojo.style(F,"visibility","visible");}}delete k[v].group;}}if(!E){dojo.publish("timelineRedrawMiddle");}if(D.id){w=this.cache[D.id];if(D.max&&w){this.maxBlob.maximize(w,{history:D.history,photo:D.photo,video:D.video,auto:true});}else{if(!D.history&&w){dojo.publish("chgLoc",[["at=",h.xMax.dateFormat(DP[2]),"&mid=",w.data.id].join("")]);}}}else{dojo.publish("hash",[["at=",h.xMax.dateFormat(DP[2])].join("")]);}}this.rebuildTagCloud();dojo.publish("timelineRedraw",[D]);dojo.publish("notifyEnd");this.processing=false;if(this.retry){this.refresh(this.retry);}},rebuildTagCloud:function(){var u={},e={},o=this.groupsOrdered[this.zoom],h=this.panes,w=h.start,b=0,v=this.timeline,p=v.timelineFrequencyMap,c=(v.embedded?"target='_blank'":""),B=v.getGroupCount();startSeq=Math.floor((15-B)/2),endSeq=startSeq+B-1,fmin=5,fmax=0;var C,A,z,D,d,g,a;for(C=startSeq;C<=endSeq;C++){var y=(C+w)%15,m=h[y].group,l,f;if(m){l=o[this._getNearestGroupIndex(new Date(m))];for(A=0;A<l.memoirs.length;A++){f=l.memoirs[A].data.relations;if(!f){l.memoirs[A]._populateRelations();f=l.memoirs[A].data.relations;}for(z=0;z<f.length;z++){g=f[z];a=g.type+g.id;if(!e[a]){e[a]=g;u[a]=1;}else{u[a]=u[a]+1;}b++;}}}}for(D in u){d=u[D];if(d>fmax){fmax=d;}if(d<fmin){fmin=d;}}for(a in e){d=u[a];u[a]=ut.getFrequencyBucket(p,(1+(d>fmin?7*(d-fmin)/(fmax-fmin):0))|0,e[a]);}fmin=65,fmax=0;for(D in u){d=u[D];if(d>fmax){fmax=d;}if(d<fmin){fmin=d;}}if(fmin==fmax){for(a in e){d=u[a];u[a]=ut.getFrequencyBucket(p,1,e[a]);}}else{fmin=Math.log(fmin);fmax=Math.log(fmax);for(a in e){d=Math.log(u[a]);u[a]=(1+(d>fmin?7*(d-fmin)/(fmax-fmin):0))|0;}}var q=[];for(a in e){var x=e[a];q.push("<a class='relation ",a," size",u[a]," ",ut.getIntersects(v.viewerFrequencyMap,x),"' ",c,"href='",x.url,"'>",ut.getTagCloudCompatibleName(x),"</a> ");}dojo.query(".tagcloud").forEach(function(k){k.innerHTML=q.join("");});},gpRedraw:function(c,a,d,b){c.redraw(a,d);if(b){dojo.publish("timelineRedrawMiddle");}}});dojo.declare("PageControl",null,{handles:{},initialize:function(a){this.timeline=a;},truncate:function(c,b,a){var a=a||"...";return(c.length>b)?c.substr(0,b-a.length)+a:c;},connect:function(a,c,b,e){var d=dojo.connect(c,b,e);if(this.handles[a]){dojo.disconnect(this.handles[a]);}this.handles[a]=d;},disconnect:function(a){if(this.handles[a]){dojo.disconnect(this.handles[a]);delete (this.handles[a]);}},getName:function(){}});dojo.declare("CommonControl",PageControl,{constructor:function(){pref=this;pref.globalControls=LB.GLOBAL.CONTROLS;},initialize:function(d,f){var e=f.page,c=this,a=LB.getUser().logged,b="Common Control. Page["+e+"]";console.time(b);c.common(d,f);switch(e){case"view_logged":case"view_anon":(new StreamControl()).initialize(d,f);(new PublisherControl()).initialize(d,f);(new EditPostControl()).initialize(d,f);(new ProfilePicControl()).initialize(d,f);(new ShareControl()).initialize(d,f);c.sd();c.tma();c.tabs();c.connect();c.timelineActions();break;case"store":(new StoreControl()).initialize(d,f);break;case"search":(new StreamControl()).initialize(d,f);break;case"view_likes":case"view_stream":case"view_newsfeed":case"view_leaderboard":case"view_river":case"view_discussions":(new StreamControl()).initialize(d,f);c.tabs();if(a){(new ProfilePicControl()).initialize(d,f);}break;case"facebook_publisher":(new NewPostControl()).initialize(d,f);c._addControl(AddPhotoControl,d,f);(new PlaceSuggestControl()).initialize();c.textHelp(".publisher_input_tags");c.fbpublisher();break;case"facebook_timeline":(new PublisherControl()).initialize(d,f);(new EditPostControl()).initialize(d,f);c.fbtimelinepages();break;case"timeline_start":(new StartControl()).initialize(d,f);(new HelpControl()).initialize(d,f);(new PublisherControl()).initialize(d,f);(new EditPostControl()).initialize(d,f);(new ProfilePicControl()).initialize(d,f);c.sd();c.tma();c.imp();c.ff();break;case"blob_new":case"facebook_blob_new":(new NewPostControl()).initialize(d,f);c._addControl(AddPhotoControl,d,f);(new PlaceSuggestControl()).initialize();c.textHelp(".publisher_input_tags");break;case"home_logged":(new PublisherControl()).initialize(d,f);(new EditPostControl()).initialize(d,f);c.tma();break;case"embed_code":(new EmbedControl()).initialize(d,f);break;case"browse_topics":c.tma();c.browseTopics();break;case"friendandimport":(new FriendsAndImportControl()).initialize(d,f);break;case"findfriends":c.ff();break;case"import":(new ImDelControl()).initialize(d,f);(new ImEditControl()).initialize(d,f);c.imp();break;case"signup":c.signup();break;case"reorganize":c.reorganize();break;case"unlinkedfacebook":c.ufb();break;case"request":c.request();case"notifications":case"outbox":case"inbox":case"view_msg":case"view_msgthd":c.cm();break;case"delete_account":c.da();break;case"app_create":c.appCreate();break;case"services":c.services();break;case"contest":c.contest();break;case"choosephotos":c.choosePhotos();break;default:console.log("default:"+e);}(new FeedbackControl()).initialize();dojo.subscribe("timelineTabSelect",c,"selectTab");console.timeEnd(b);},_addControl:function(d,a,e){var b=this.globalControls,c=new d;c.initialize(a,e);b[c.declaredClass]=c;},contest:function(){dojo.query(".contest a.contest-signup").onclick(function(a){dojo.addClass(a.currentTarget,"hidden");dojo.query(".contest .signup").removeClass("hidden");dojo.query(".anon_actions").style("height","320px");dojo.query(".right_action").style("height","320px");});},choosePhotos:function(){dojo.query(".choosememoir").onclick(function(a){memid=dojo.attr(a.currentTarget,"memoirid");photos=giftablePhotos[memid];dojo.query(".photoList").forEach(function(d){var c=[];for(var b=0;b<photos.length;b++){c.push("<img src='",photos[b].url,"' memid='",memid,"' photoid='",photos[b].id,"' />");}d.innerHTML=c.join("");});});dojo.query(".photoList").onclick(function(a){dojo.query(".selectedPhotosPanel").forEach(function(c){var b=[];b.push("<img src='",a.target.src,"'/>");b.push("<input name='memoirId' type='hidden' value='",dojo.attr(a.target,"memid"),"'/>");b.push("<input name='memoirphotoId' type='hidden' value='",dojo.attr(a.target,"photoid"),"'/>");c.innerHTML=b.join("");});});},textHelp:function(b){var a="defaulttext",c;dojo.query(b).onblur(function(d){c=d.currentTarget;if(c.value==""){c.value=dojo.attr(c,a);}}).onclick(function(d){c=d.currentTarget;if(c.value==dojo.attr(c,a)){c.value="";}}).forEach(function(d){if(d.value==""){d.value=dojo.attr(d,a);}});},common:function(c,e){var b=this,d=e.page,a=LB.getUser();b.textHelp(".text_help");b.tableToggle();b.shareTrack();(new ActionControl()).initialize(c,e);if(a.person.id>0){(new ToasterControl()).initialize(c,e);(new SendMessageControl()).initialize(c,e);(new FBConnectControl()).initialize(c,e);(new InviteContributorsControl()).initialize(c,e);}else{(new AccountControl()).initialize(c,e);}},shareTrack:function(){dojo.query(".sharetrack").onclick(function(b){var a=b.currentTarget,c=dojo.attr(a,"params")||"";c=c.split("#");if(c.length>2){dojo.publish("logAjaxEvent",c);}});},request:function(){dojo.query(".static_content button.small_button").onclick(function(a){var e=a.currentTarget,g=dojo.attr(e,"action"),h=dojo.attr(e,"reqid"),c=dojo.byId(h);if(c){dojo.addClass(c,"hidden");}switch(g){case"conn_accept":case"conn_reject":var f=(g=="conn_accept"),m=dojo.attr(e,"pid"),d=(f?"#yes-":"#no-")+h;dojo.query(d).removeClass("hidden");if(f){API_SVC.approveFriend(m);}else{API_SVC.rejectFriend(m,false);}break;case"part_accept":case"part_reject":var f=(g=="part_accept"),m=dojo.attr(e,"pid"),k=dojo.attr(e,"mid"),d=(f?"#yes-":"#no-")+h;dojo.query(d).removeClass("hidden");API_SVC.linkAcceptReject(m,k,f);break;case"tag_accept":case"tag_reject":var f=(g=="tag_accept"),b=dojo.attr(e,"rid"),d=(f?"#yes-":"#no-")+h;dojo.query(d).removeClass("hidden");API_SVC.tagAcceptReject(b,f);break;case"cr_accept":case"cr_reject":var f=(g=="cr_accept"),m=dojo.attr(e,"pid"),l=dojo.attr(e,"tid"),d=(f?"#yes-":"#no-")+h;dojo.query(d).removeClass("hidden");if(f){API_SVC.acceptContribution(l,m);}else{API_SVC.rejectContribution(l,m);}break;case"ci_accept":case"ci_reject":var f=(g=="ci_accept"),l=dojo.attr(e,"tid"),d=(f?"#yes-":"#no-")+h;dojo.query(d).removeClass("hidden");if(f){API_SVC.acceptContributionInvite(l);}else{API_SVC.rejectContributionInvite(l);}break;case"addasfriend":var d="#add_"+h,m=dojo.attr(e,"pid");API_SVC.addFriend(m);dojo.addClass(e,"hidden");dojo.query(d).removeClass("hidden");break;default:break;}});},browseTopics:function(){var a=this;dojo.query("a.shift").onclick(function(b){dojo.stopEvent(b);});dojo.query(".topic_page_shift").onclick(function(e){dojo.stopEvent(e);var d=e.currentTarget,b=dojo.attr(d,"bcCategory"),g=dojo.attr(d,"bcChar"),f=dojo.attr(d,"bcPage");a._topicBrowse(b,g,f);});dojo.query(".category_list li a[bcCategoryId]").onclick(function(d){dojo.stopEvent(d);var c=d.currentTarget,b=dojo.attr(c,"bcCategoryId");a._topicBrowse(b);});dojo.query(".character_list div.item").onclick(function(e){dojo.stopEvent(e);var d=e.currentTarget,f=dojo.attr(d,"bcChar"),b=dojo.query(".category_list li.selected a").attr("bcCategoryId");if(b.length!=1){console.log("Exactly one category must be selected");console.log(b);}var c=b[0]!=0?b[0]:281;a._topicBrowse(c,f,0);});dojo.query("[action='bcScrollCategories']").onclick(function(d){var c=d.currentTarget,e=parseInt(dojo.attr(c,"bcCurrentPage")),b=(e+1)%2;dojo.query("li[bcPage='"+e+"']").addClass("obscured");dojo.query("li[bcPage='"+b+"']").removeClass("obscured");dojo.attr(c,"bcCurrentPage",b);});},_topicBrowse:function(d,b,e){var c=this,a=dojo.byId("topic_list_cont");dojo.query(".category_list li").removeClass("selected");dojo.query(".category_list li [bcCategoryId='"+d+"']").forEach(function(f){dojo.addClass(f.parentNode,"selected");});dojo.query(".character_list .selected").removeClass("selected");if(!b){dojo.query(".character_list div[bcCharAll='true']").addClass("selected");}else{dojo.query(".character_list div[bcChar='"+b+"']").addClass("selected");}a.innerHTML="<div class='load'><img src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/scaler_blue.vd641b3.gif'/></div>";API_SVC.browseTopics(d,b,e).addCallback(function(f){if(f.stat!="ok"){console.log(f);return;}var o=f.result,l;if(o.length!=0){var m=Math.ceil(o.length/6),h,k,g;l=["<table class='topic_table'><tr>"];for(h=0;h<6;h++){l.push("<td>");for(k=h*m;(k-h*m)<m&&k<o.length;k++){g=o[k];l.push(["<div><a class='topic_table_item' href='/topic/",g.displayName,"?src=browse-topics' title='",g.name,"'>",c.truncate(g.name,20,"..."),"</a></div>"].join(""));}l.push("</td>");}l.push("</tr></table>");}else{l=["<div class='load'>",M.NO_TOPICS,"</div>"];}l.push("<div class='topics_nav'>");e=e?parseInt(e):0;b=b?b:"A";if(e!=0){dojo.query(".topic_prev_button").style("display","block").forEach(function(p){dojo.attr(p,"bcCategory",d+"");dojo.attr(p,"bcChar",b);dojo.attr(p,"bcPage",e-1);});}else{dojo.query(".topic_prev_button").style("display","none");}if(d==0){dojo.query(".topic_next_button").style("display","block").forEach(function(p){dojo.attr(p,"bcCategory",281+"");dojo.attr(p,"bcChar","A");dojo.attr(p,"bcPage",0);});}else{if(o.length==60){dojo.query(".topic_next_button").style("display","block").forEach(function(p){dojo.attr(p,"bcCategory",d+"");dojo.attr(p,"bcChar",b);dojo.attr(p,"bcPage",e+1);});}else{b=String.fromCharCode(b.charCodeAt(0)+1);e=0;dojo.query(".topic_next_button").forEach(function(p){dojo.attr(p,"bcCategory",d+"");dojo.attr(p,"bcChar",b);dojo.attr(p,"bcPage",e);});}}l.push("</div>");a.innerHTML=l.join("");});dojo.publish("logEvent",["/lb/browse/cat-"+d+"/page-"+(e?e:"0")+"/char-"+(b?b:"all")]);},help:function(){dojo.query("table.helpout a").onclick(function(b){var a=dojo.attr(b.currentTarget,"help");dojo.query("table.helpout[help='"+a+"']").style("display","none");});},tableToggle:function(){dojo.query(".showdetails").onclick(function(c){var b=c.currentTarget,a=b.parentNode.parentNode;dojo.query("~",a).removeClass("hidden");dojo.addClass(b,"hidden");dojo.query(".hidedetails",a).removeClass("hidden");dojo.query("[action='toggleDetails']",a).attr("actionType","hide");});dojo.query(".hidedetails").onclick(function(c){var b=c.currentTarget,a=b.parentNode.parentNode;dojo.query("~",a).addClass("hidden");dojo.addClass(b,"hidden");dojo.query(".showdetails",a).removeClass("hidden");dojo.query("[action='toggleDetails']",a).attr("actionType","show");});dojo.query("a[togglelink='true']").onclick(function(b){var a=dojo.attr(b.currentTarget,"target");dojo.query("[toggletarget='"+a+"']").forEach(function(c){if(dojo.hasClass(c,"hidden")){dojo.removeClass(c,"hidden");}else{dojo.addClass(c,"hidden");}dojo.stopEvent(b);});});dojo.query("div.header_title[action='toggleDetails']").onclick(function(d){var c=d.currentTarget,a=c.parentNode,b=dojo.attr(c,"actionType");switch(b){case"hide":dojo.query(".hidedetails",a).addClass("hidden");dojo.query(".showdetails",a).removeClass("hidden");dojo.query("~",a).addClass("hidden");dojo.attr(c,"actionType","show");break;case"show":dojo.query(".hidedetails",a).removeClass("hidden");dojo.query(".showdetails",a).addClass("hidden");dojo.query("~",a).removeClass("hidden");dojo.attr(c,"actionType","hide");break;}});},sd:function(){dojo.query("a.showDetail").onmouseover(function(event){if(event.target.tagName=="IMG"){var ref=event.currentTarget;var obj=eval("("+dojo.attr(ref,"actionParams")+")");obj.type=PERSON_TYPE;pref.detailNode=ref;dijit.showTooltip(["<table cellspacing='0' cellpadding='0' border='0' class='flyout'><tbody><tr><td class='c11' colspan='2'/>","<td class='c13'/></tr><tr><td class='c21'/><td class='c22'>","<table cellspacing='0' cellpadding='0' border='0' class='p_flyout'><tbody><tr>","<td class='left'>","<a href='",ut.getUrl({type:obj.type,display:obj.displayName}),"'>","<img src='",ut.getProfileURL(obj,"medium"),"'/></a>","</td>","<td>","<div class='dname'><a href='",ut.getUrl({type:obj.type,display:obj.displayName}),"'>",obj.displayName,"</a></div>","<span class='name'>",obj.name,"</span>","<span> ",obj.status,"</span>","</td>","</tr></tbody></table>","</td><td class='c23'/></tr><tr><td class='c31'/><td class='c32'/><td class='c33'/></tr></tbody></table>"].join(""),ref);pref.connect("showDetail",document,"onclick",function(){if(pref.detailNode){dijit.hideTooltip(pref.detailNode);}pref.disconnect("showDetail");});}}).onmouseout(function(event){if(pref.detailNode){dijit.hideTooltip(pref.detailNode);pref.disconnect("showDetail");}});},tt:function(){dojo.query("[action='tooltip']").onmouseover(function(b){var a=b.currentTarget,c=dojo.attr(a,"actionParams");pref.detailNode=a;dijit.showTooltip(["<table cellspacing='0' cellpadding='0' border='0' class='flyout flyout_narrow'><tbody><tr><td class='c11' colspan='2'/>","<td class='c13'/></tr><tr><td class='c21'/><td class='c22'>",c,"</td><td class='c23'/></tr><tr><td class='c31'/><td class='c32'/><td class='c33'/></tr></tbody></table>"].join(""),a);pref.connect("tooltip",document,"onclick",function(){if(pref.detailNode){dijit.hideTooltip(pref.detailNode);}pref.disconnect("tooltip");});}).onmouseout(function(a){if(pref.detailNode){dijit.hideTooltip(pref.detailNode);pref.disconnect("tooltip");}});},tma:function(){dojo.query(".interestingTab").onclick(function(c){var b=c.currentTarget,d=dojo.attr(b,"actionType"),a;dojo.query(".interestingTab").forEach(function(e){a=dojo.attr(e,"actionType");if(a==d){dojo.addClass(e,"active");}else{dojo.removeClass(e,"active");}});dojo.query("[itContent]",b.parentNode.parentNode).forEach(function(e){a=dojo.attr(e,"itContent");if(a==d){dojo.style(e,"display","block");}else{dojo.style(e,"display","none");}});});dojo.query(".personTopicsTab").onclick(function(c){var b=c.currentTarget,d=dojo.attr(b,"actionType"),a;dojo.query(".personTopicsTab").forEach(function(e){a=dojo.attr(e,"actionType");if(a==d){dojo.addClass(e,"active");}else{dojo.removeClass(e,"active");}});dojo.query("[ptContent]",b.parentNode.parentNode).forEach(function(e){a=dojo.attr(e,"ptContent");if(a==d){dojo.style(e,"display","block");}else{dojo.style(e,"display","none");}});});},ff:function(){dojo.query("[appType='select_all_friends']").onclick(function(a){dojo.query(".invite_friends .invite_table div.body input").forEach(function(b){b.checked=a.currentTarget.checked;});});dojo.query("[appType='select_all_users']").onclick(function(a){dojo.query(".invite_users .invite_table div.body input").forEach(function(b){b.checked=a.currentTarget.checked;});});dojo.query("[action='sendMoreEmailInvites']").onclick(function(a){dojo.query(".emailImports").removeClass("hidden");dojo.query(".emailImports textarea").forEach(function(b){b.value="";});dojo.query(".emailsSent").addClass("hidden");});dojo.query("button.aol_import_button").onclick(function(a){dojo.query(".facebookInviteContainer").addClass("hidden");dojo.query(".aolInviteContainer").addClass("hidden");postSignUpUtil._setWaitingState(APP_TYPE.YMAIL,M.IMPORTING_CONTACTS);API_SVC.importAddressbook(dojo.byId("aolusername").value,dojo.byId("aolpassword").value,APP_TYPE.AOL).addCallback(function(b){importResponse(APP_TYPE.AOL,b.result);});});},imp:function(){dojo.query("[action='showimports']").onclick(function(event){if(postSignUpStuff.isImporting()){alert(M.IMPORT_IN_PROGRESS_ALERT);}else{var importname=dojo.attr(event.currentTarget,"actionParams");dojo.publish("logAjaxEvent",[window.startupFlow?"startupflow":"normalflow","import-switch",importname]);dojo.query(".import_services .service_node").removeClass("selected_service_node");dojo.query(".import_services ."+importname+"_service_node").addClass("selected_service_node");dojo.query(".linkups").addClass("hidden");dojo.query("."+importname+"_linkup").removeClass("hidden");dojo.query(".import_results").addClass("hidden");if(dojo.query("."+importname+"_results .row").length>0){dojo.query("."+importname+"_results").removeClass("hidden");}}});dojo.query("[action='showandImport']").onclick(function(event){if(postSignUpStuff.isImporting()){alert(M.IMPORT_IN_PROGRESS_ALERT);}else{var importname=dojo.attr(event.currentTarget,"actionParams");dojo.publish("logAjaxEvent",[window.startupFlow?"startupflow":"normalflow","import-switch",importname]);dojo.query(".import_services .service_node").removeClass("selected_service_node");dojo.query(".import_services ."+importname+"_service_node").addClass("selected_service_node");dojo.query(".linkups").addClass("hidden");dojo.query("."+importname+"_linkup").removeClass("hidden");dojo.query(".import_results").addClass("hidden");if(dojo.query("."+importname+"_results .row").length>0){dojo.query("."+importname+"_results").removeClass("hidden");}dojo.publish("importStuff",[eval(dojo.attr(event.currentTarget,"importParams"))]);}});dojo.query("[action='startAggregation']").onclick(function(event){var target=event.currentTarget;var facebookUserId=dojo.attr(event.currentTarget,"actionParams");API_SVC.startAggregating(facebookUserId).addCallback(function(){dojo.query(".stopAggregation",target.parentNode.parentNode).removeClass("hidden");dojo.addClass(target.parentNode,"hidden");});});dojo.query("[action='stopAggregation']").onclick(function(event){var target=event.currentTarget;var facebookUserId=dojo.attr(event.currentTarget,"actionParams");API_SVC.stopAggregating(facebookUserId).addCallback(function(){dojo.query(".startAggregation",target.parentNode.parentNode).removeClass("hidden");dojo.addClass(target.parentNode,"hidden");});});dojo.query("[action='importStuff']").onclick(function(event){if(postSignUpStuff.isImporting()){alert(M.IMPORT_IN_PROGRESS_ALERT);}else{dojo.publish("importStuff",[eval(dojo.attr(event.currentTarget,"actionParams"))]);}});dojo.query("[action='facebookImportStuff']").onclick(function(event){if(postSignUpStuff.isImporting()){alert(M.IMPORT_IN_PROGRESS_ALERT);}else{var param=eval(dojo.attr(event.currentTarget,"actionParams"));FB.Connect.requireSession(function(){API_SVC.linkupFacebook().addCallback(function(response){if(response.stat!="ok"){console.log("Error. Code:"+response.code+" Desc:"+response.desc);return;}var result=response.result,userId=result.userId,linkStatus=result.status;if(LB.getUser().uid!=LB.getUser()){alert('This facebook user is linked to another lifeblob account. Clicking "Ok" will log you into that account.');window.location.reload(false);}else{if(linkStatus==0||linkStatus==3){if(postSignUpStuff.isImporting()){alert(M.IMPORT_IN_PROGRESS_ALERT);}else{dojo.publish("importStuff",[param]);}}else{if(linkStatus==1){alert('This lifeblob account already has a facebook user linked to it. Click "Ok" to create a new account for your facebook user.');ut.rd("/account/simplelogout?next=/account/fconnect");}else{if(linkStatus==2||linkStatus==4){alert('This facebook user is linked to another lifeblob account. Clicking "Ok" will log you into that account.');window.location.reload(false);}}}}});});}});dojo.query("[action='importUrl']").onclick(function(event){if(postSignUpStuff.isImporting()){alert(M.IMPORT_IN_PROGRESS_ALERT);}else{dojo.publish("importUrl",[eval(dojo.attr(event.currentTarget,"actionParams"))]);}});},maps:function(){dojo.query(".place_map").forEach(function(b){try{google.load("maps","2.x",{callback:function(){var d=new google.maps.Map2(b),r=places.length,c,o,g,h;d.enableDoubleClickZoom();d.enableContinuousZoom();d.enableScrollWheelZoom();d.addControl(new google.maps.SmallMapControl());d.setCenter(new google.maps.LatLng(47.4419,-100.1419),3);c=new google.maps.LatLngBounds();if(r==0){var p=google.loader.ClientLocation,e=opts.obj,m=(th.getUser().person.id==e.id&&e.type==PERSON_TYPE),l=["<div class='place_info' style='padding-top:20px;width: 250px'>",m?M.TIMELINE_NO_LOC:M.TIMELINE_NO_LOC_OTH,"</div>"].join("");if(p){f=new google.maps.LatLng(p.latitude,p.longitude);}else{f=new google.maps.LatLng(47.4419,-100.1419);}var k=new google.maps.Marker(f);d.setCenter(f,8);d.addOverlay(k);k.openInfoWindowHtml(l);}else{h=Math.floor(0+(r-1)*Math.random());for(o=0;o<r;o++){g=places[o];var f=new google.maps.LatLng(g.lat,g.lng);c.extend(f);var l=["<div class='place_info'>View ","<a href='/place/",g.displayName,"'>",g.name,"'s lifeblob</a>","</div>"].join("");var k=q(f,l);d.addOverlay(k);if(o==h){k.openInfoWindowHtml(l);}}d.setCenter(c.getCenter());d.setZoom(d.getBoundsZoomLevel(c));}function q(t,v){var u=new google.maps.Marker(t);GEvent.addListener(u,"click",function(){u.openInfoWindowHtml(v);});return u;}}});}catch(a){if(dojo.config.isDebug){console.log("Google AJAX API could not be loaded");}}});},cm:function(){dojo.query("[nptype='message_compose_recepients']").forEach(function(a){var b=new Suggest(a,"person","user.name",{helpText:"Enter your friend's names"});b.initialize();a.clear=dojo.hitch(b,"clear");});dojo.query("[action='ajaxSendMessage']").onclick(function(b){var c=dojo.byId("compose_message_box");dojo.query(".fielderror",c).orphan();var a=[];dojo.query("[name='personid']",c).forEach(function(d){a.push(d.value);});if(a.length<=0){dojo.place(pu.createErrorElement("Enter atleast one friend's name"),dojo.byId("list_holder"),"after");return;}subject=dojo.byId("subject");if(subject.value.length<=0){dojo.place(pu.createErrorElement("Enter atleast one friend's name"),subject,"after");return;}body=dojo.byId("compose_body");API_SVC.sendMessage(a,subject.value,body.value,0);dojo.publish("logAjaxEvent",["social","send-message","message"]);dojo.addClass(c,"hidden");dojo.removeClass(dojo.byId("compose_message_thankyou"),"hidden");});dojo.query("[action='resetComposeBox']").onclick(function(a){dojo.query("[nptype='message_compose_recepients']").forEach(function(b){b.clear();});dojo.byId("subject").value="";dojo.byId("compose_body").value="";dojo.removeClass(dojo.byId("compose_message_box"),"hidden");dojo.addClass(dojo.byId("compose_message_thankyou"),"hidden");});},services:function(){dojo.query(".param").onclick(function(a){dojo.query("~ div",a.currentTarget).forEach(function(b){if(dojo.style(b,"display")=="block"){dojo.style(b,"display","none");}else{dojo.style(b,"display","block");}});});},appCreate:function(){dojo.query(".radio").onclick(function(a){if(a.currentTarget.id=="browser"){dojo.query("tr.callback").removeClass("hidden");}else{dojo.query("tr.callback").addClass("hidden");}});},signup:function(){dojo.require("dojox.rpc.Service");var b={SMDVersion:"2.0",id:"http://www.lifeblob.com/ajax",description:"Lifeblob API",target:"http://www.lifeblob.com/ajax/",transport:"POST",envelope:"URL",additionalParameters:false,services:{invite:{target:"invite/beta",parameters:[{name:"email",type:"string",optional:false},{name:"name",type:"string",optional:false},{name:"referrer",type:"string",optional:false}]}}},a=new dojox.rpc.Service(b);dojo.query("[action='invite']").onclick(function(d){var h=dojo.byId("inviteName"),g=dojo.byId("inviteEmail"),f=h.value,e=g.value,c=true;if(f==""){dojo.style(h,"border","1px solid #BE4126");dojo.query("#inviteName").onkeydown(function(k){dojo.style(k.currentTarget,"border","1px solid #B2B2B2");});c=false;}if(e==""){dojo.style(g,"border","1px solid #BE4126");dojo.query("#inviteEmail").onkeydown(function(k){dojo.style(k.currentTarget,"border","1px solid #B2B2B2");});c=false;}if(!c){return;}dojo.query(".invite img").removeClass("hidden");a.invite(e,f,document.referrer).addCallback(function(k){dojo.query(".invite img").addClass("hidden");if(k.stat!="ok"){dojo.style(g,"border","1px solid #BE4126");dojo.query("#inviteEmail").onkeydown(function(l){dojo.style(l.currentTarget,"border","1px solid #B2B2B2");});return;}dojo.query(".invite").addClass("hidden");dojo.query(".invitesuccess").removeClass("hidden");});});this.tt();},ufb:function(){dojo.query("[action='haveLifeblobAccount']").onclick(function(a){dojo.query(".facebook_linkup_form").removeClass("hidden");dojo.query(".facebook_linkup_options").addClass("hidden");});dojo.query("[action='noLifeblobAccount']").onclick(function(a){dojo.query(".facebook_linkup_form").addClass("hidden");dojo.query(".facebook_linkup_options").removeClass("hidden");});},reorganize:function(){dojo.query("[action='reorganize']").connect("onclick",function(a){var g=dojo.attr(a.currentTarget,"actionParams");var b=dojo.byId("um_"+g);dojo.query(".fielderror",b).addClass("hidden");var k="";dojo.query("[name='title']",b).forEach(function(l){k=l.value;});if(k==""){dojo.query(".title_error",b).removeClass("hidden").forEach("item.innerHTML='[Title should not be empty]'");return;}var c,h,e,d,f;dojo.query("[name='month'] option",b).forEach(function(l){if(l.selected){f=parseInt(l.value)-1;}});dojo.query("[name='date']",b).forEach(function(l){c=parseInt(l.value,10);});dojo.query("[name='year']",b).forEach(function(l){h=parseInt(l.value,10);});dojo.query("[name='hour']",b).forEach(function(l){e=parseInt(l.value,10);});dojo.query("[name='minute']",b).forEach(function(l){d=parseInt(l.value,10);});dateObj=new Date(h,f,c,e,d);if(dateObj.getDate()!=c||dateObj.getMinutes()!=d){dojo.query(".date_error",b).removeClass("hidden").forEach("item.innerHTML='[Date is invalid]'");return;}dateString=[dateObj.getUTCFullYear(),"-",(dateObj.getUTCMonth()+1),"-",dateObj.getUTCDate(),"T",dateObj.getUTCHours(),":",dateObj.getUTCMinutes(),":",dateObj.getUTCSeconds(),"Z"].join("");API_SVC.update(g,k,dateString,dojo.query("[name='description']",b)[0].value,dojo.query("[name='visibility']",b)[0].value).addCallback(function(m){if(m.stat!="ok"){console.log(m);return;}var l=dojo.byId("umc_"+g);dojo.query("span.om_title",l).forEach(function(o){o.innerHTML=k;});dojo.query("span.om_date",l).forEach(function(o){o.innerHTML=dateObj.dateFormat("F d,Y");});dojo.removeClass(l,"hidden");dojo.addClass(b,"hidden");});}).forEach(function(b){var a=Date.parseDate(dojo.query("[name='actualDate']",b.parentNode)[0].value,DP[1],true);dojo.query("[name='month'] option",b.parentNode).forEach(function(c){if((parseInt(c.value)-1)==a.getMonth()){c.selected=true;}});dojo.query("[name='date']",b.parentNode).forEach(function(d){var c="0"+a.getDate();c=c.substr(c.length-2,2);d.value=c;});dojo.query("[name='year']",b.parentNode).forEach(function(c){var d=""+a.getFullYear();c.value=d;});dojo.query("[name='hour']",b.parentNode).forEach(function(c){var d="0"+a.getHours();d=d.substr(d.length-2,2);c.value=d;});dojo.query("[name='minute']",b.parentNode).forEach(function(d){var c="0"+a.getMinutes();c=c.substr(c.length-2,2);d.value=c;});});},da:function(){dojo.query("div.delete_reasons .radio").onclick(function(a){var b=a.currentTarget;dojo.query(".delete_followup").addClass("hidden");dojo.query("."+b.id).removeClass("hidden");});},tabs:function(){var a=this;dojo.query(".timeline_tab").onclick(function(b){var d=b.currentTarget,c=dojo.attr(d,"tTab");dojo.stopEvent(b);a.selectTab(c);});},timelineActions:function(){dojo.query("a.showconn").onclick(function(a){var b=a.currentTarget;dojo.query(".tagcloud").forEach(function(c){if(dojo.hasClass(c,"hidden")){dojo.removeClass(c,"hidden");dojo.addClass(b,"hideconn");b.innerHTML="Hide Connections";}else{dojo.addClass(c,"hidden");dojo.removeClass(b,"hideconn");b.innerHTML="Show Connections";}});});},selectTab:function(a){dojo.query(".timeline_tab").forEach(function(d){var b=dojo.attr(d,"tTab");if(b!=a){dojo.removeClass(d,"selected_timeline_tab");}else{dojo.addClass(d,"selected_timeline_tab");dojo.publish("feedType",[b]);}});dojo.query("[tTabContent]").forEach(function(d){var b=dojo.attr(d,"tTabContent");if(b==a){dojo.removeClass(d,"hidden");}else{dojo.addClass(d,"hidden");}});},connect:function(){var a=this;dojo.query("#connectAndFollow").onclick(function(h){var g=h.currentTarget;if(window.FB&&window.FB.Connect){var b=dojo.attr(g,"pid");var f=dojo.attr(g,"pname");var d=dojo.attr(g,"pic");var e=dojo.attr(g,"t");var c=dojo.attr(g,"pdisp");var k=dojo.attr(g,"pdesc");FB.Connect.requireSession(function(){API_SVC.createFBAccount().addCallback(function(){API_SVC.followUser(b).addCallback(function(){var o="user/",q=(k&&dojo.trim(k).length>0),l=q?k:"",m=q?72114293047:72114633047,p="user_";if(e==4||e=="4"){o="topic/";p="topic_";}g="http://www.lifeblob.com/"+o+c+"?utm_source="+p+"follow&utm_campaign=lifeblob_"+m+"&utm_medium=facebook";window.location.reload(false);});});});}});dojo.query("#fbconnect").onclick(function(b){if(window.FB&&window.FB.Connect){FB.Connect.requireSession(function(){dojo.query(".fbconnect .button").addClass("hidden");dojo.query(".fbconnect .spinner").removeClass("hidden");API_SVC.createFBAccount().addCallback(function(){window.location.reload(false);});});}});},fbpublisher:function(){dojo.query("[action='toggleFacebookInvite']").onclick(function(){dojo.query(".fb_publisher_invite_controller").forEach(function(a){if(dojo.hasClass(a,"hidden")){dojo.removeClass(a,"hidden");}else{dojo.addClass(a,"hidden");}});});},fbtimelinepages:function(){dojo.query(".facebook_info_module > .close_holder > .close").onclick(function(){dojo.query(".facebook_info_module").orphan();});dojo.query(".fb_default_blob_button .button_term").onclick(function(){dojo.query(".fb_default_blob_buttons").addClass("hidden");dojo.query(".fb_publisher_block_holder").removeClass("hidden");});dojo.query(".fb_publisher_partinvite_container .facebook_popup_module .header").onclick(function(){dojo.query(".fb_publisher_invite_controller").addClass("hidden").forEach(function(a){});});dojo.query(".inviteFacebookParticipantsButton").onclick(function(){dojo.query(".fb_publisher_invite_controller").removeClass("hidden");});},getName:function(){return"Common Control";}});dojo.declare("ToasterControl",PageControl,{initialize:function(a){dojo.subscribe("tt",this,"_show");var b={};b.message="<img src='http://cdn1.lifeblob.com/lifeblob/img/theme-gray/common/message.v9499ca.ico' class='toasterIcon'/>";b.error="<img src='http://cdn0.lifeblob.com/lifeblob/img/theme-gray/common/error.v6ffe7c.ico' class='toasterIcon'/>";b.warning="<img src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/common/warning.vb2fe9e.ico' class='toasterIcon'/>";this.m=b;},_show:function(b){var a=this.m[b.type]||this.m.message;b.message=a+b.message;dojo.publish("ott",[b]);},getName:function(){return"Toaster Control";}});dojo.declare("FlyoutControl",PageControl,{initNode:function(f){var d=this,e=f?f:{},b=e.grad,c="backgroundPosition",a;this.p=e;dojo.query(".flyout_cont").forEach(function(g){dojo.query(".flyout_tab").forEach(function(h){a="";if(e.title){a=["<tr><td><span class='title'>",e.title,"</span></td><td class='close'><a href='javascript:void(0)'/></td></tr>"].join("");}g.innerHTML=["<table class='flyout' cellspacing='0' cellpadding='0' border='0'><tbody>","<tr><td class='c11' colspan='2'></td><td class='c13'></td></tr>","<tr><td class='c21'></td><td class='c22'>","<table cellspacing='0' cellpadding='0' border='0' width='100%'>",a,"<tr><td><div class='content'></div></td></tr>","</table></td>","<td class='c23'></td></tr>","<tr><td class='c31'></td><td class='c32'></td><td class='c33'></td></tr>","</table>"].join("");dojo.query("table.flyout td.close",g).onclick(function(k){d.close();dojo.stopEvent(k);});h.innerHTML=["<table class='flyout tab' cellspacing='0' cellpadding='0' border='0'><tbody>","<tr><td class='c11' colspan='2'></td><td class='c13'></td></tr>","<tr><td class='c21'></td><td class='c22'></td><td class='c23'></td></tr>","<tr><td class='c31'></td><td class='c32'></td><td class='c33'></td></tr>","</table>"].join("");if(b){dojo.query("table.flyout td.c11").style(c,"0 "+b+"px");dojo.query("table.flyout td.c21").style(c,"0 "+b+"px");dojo.query("table.flyout td.c22").style(c,"0 "+b+"px");}});});},show:function(h,c){var g=this.p,e=this,b=h,a=c,f,d;dojo.query(".flyout_cont").forEach(function(k){dojo.query(".flyout_tab").forEach(function(m){dojo.removeClass(k,"hidden");dojo.removeClass(m,"hidden");dojo.style(m,"left",(a.x-5)+"px");dojo.style(m,"width",(a.w+20)+"px");dojo.style(m,"top",(a.y-5)+"px");dojo.style(m,"height",(a.h+20)+"px");f=dojo.position(m,true);d=dojo.position(k,true);dojo.style(k,"left",((b.x>d.w)?(a.x+f.w-d.w-5):f.x)+"px");var l=!g.forceDown&&(b.y>d.h);if(l){dojo.style(k,"top",(a.y-d.h+5)+"px");dojo.query("table.tab td.c11",m).removeClass("c111");dojo.query("table.tab td.c21",m).addClass("no_bg");dojo.query("table.tab td.c22",m).addClass("no_bg");dojo.query("table.tab td.c31",m).removeClass("none_bg");dojo.query("table.tab td.c32",m).removeClass("none_bg");dojo.query("table.tab td.c33",m).removeClass("none_bg");}else{dojo.style(k,"top",(f.y+a.h+8)+"px");dojo.query("table.tab td.c11",m).addClass("c111");dojo.query("table.tab td.c21",m).removeClass("no_bg");dojo.query("table.tab td.c22",m).removeClass("no_bg");dojo.query("table.tab td.c31",m).addClass("none_bg");dojo.query("table.tab td.c32",m).addClass("none_bg");dojo.query("table.tab td.c33",m).addClass("none_bg");}});});},closeNode:function(){},close:function(a){dojo.query(".flyout_cont").addClass("hidden");dojo.query(".flyout_tab").addClass("hidden");this.closeNode();},getDataQuery:function(){return".flyout_cont .content";},getTitleQuery:function(){return".flyout_cont .title";}});dojo.declare("ActionControl",FlyoutControl,{initialize:function(b){var a=this;a.loggedUser=LB.getUser();a.t=b;a._fr();},_fr:function(){var b=this,a=b.loggedUser.logged;dojo.query("a[action='actioncontrol']").onclick(function(m){dojo.query(".flyout_link").removeClass("flyout_link");var f=m.currentTarget,y="done",g=dojo.string.substitute,h,o,c,q,k,v,u="",z,l="actionType",p,w,x;if(dojo.attr(f,y)){return;}h=dojo.attr(f,l);o=dojo.attr(f,"pid");c=dojo.attr(f,"pname");q=dojo.attr(f,"pic");k=dojo.attr(f,"t");sid=dojo.attr(f,"sid");pdisp=dojo.attr(f,"pdisp");pdesc=dojo.attr(f,"pdesc");switch(h){case"follow_user_slide":v=g(M.ADD_FOM,[c]);u=g(M.ADD_FOM1,[c.split(" ")[0]]);z=M.ADD_FO;x=q;break;case"fan_remove":v=g(M.RM_FOM,[c]);z=M.RM_FO;x=q;break;case"fadd":v=g(M.ADD_FM,[c]);u=g(M.ADD_FM1,[c.split(" ")[0]]);z=M.ADD_F;break;case"fapprove":v=g(M.APP_FM,[c]);z=M.ADD_F;break;case"fremove":v=g(M.RM_FM,[c]);z=M.RM_F;break;case"tadd":v=g(M.ADD_CM,[c]);u=M.ADD_CM1;z=M.ADD_C;x=q;break;case"tremove":v=g(M.RM_CM,[c]);z=M.RM_C;x=q;break;case"tremovecontr":v=g(M.RM_CM_OWN,[c]);z=M.RM_C;x=q;break;case"follow_user":if(!a){var e="You are now following "+c,r=dojo.hitch(b,function(){API_SVC.followUser(o);});dojo.publish("quickAccount",["add-fan",r,e]);return;}API_SVC.followUser(o).addCallback(function(){b._reload();});return;case"friend_user":if(!a){var e="Your request is pending authorization!",r=dojo.hitch(b,function(){API_SVC.addFriend(o);});dojo.publish("quickAccount",["add-friend",r,e]);return;}API_SVC.addFriend(o).addCallback(function(){dojo.publish("logAjaxEvent",["social","add-friend","network"]);f.innerHTML=M.PENDING_FRIEND;dojo.removeClass(f,"gray_blue_rounded_button");dojo.addClass(f,"pending");dojo.attr(f,y,"y");});return;case"unfriend_user":if(confirm("Are you sure you want to remove "+c+" as your friend?")){dojo.publish("logAjaxEvent",["social","remove-friend","network"]);API_SVC.removeFriend(o).addCallback(b,"_reload");}return;case"unfollow_user":if(confirm("Are you sure you want to stop following "+c+"?")){dojo.publish("logAjaxEvent",["social","remove-fan"]);API_SVC.unfollowUser(o).addCallback(b,"_reload");}return;case"user_message":if(!a){var e="You can now send a message to this user!";dojo.publish("quickAccount",["send-message",null,e]);}return;case"join_group":if(!a){var e=dojo.attr(f,"open")=="true"?"You are now a member!":"Your request is pending authorization!",r=dojo.hitch(b,function(){API_SVC.joinGroup(o);});dojo.publish("quickAccount",["open-group-membership",r,e]);return;}API_SVC.joinGroup(o).addCallback(function(d){if(d.stat!="ok"){return;}if(d.result){b._reload();}else{dojo.publish("logAjaxEvent",["social","request-contribution","timeline"]);f.innerHTML=M.PENDING_CONTRIBUTOR;dojo.removeClass(f,"gray_blue_rounded_button");dojo.addClass(f,"pending");dojo.attr(f,y,"y");}});return;case"leave_group":if(confirm("Are you sure you want to leave "+c+"'s group?")){dojo.publish("logAjaxEvent",["manage","remove-contribution","timeline"]);API_SVC.removeContribution(o).addCallback(b,"_reload");}return;default:console.log("Invalid actionType["+h+"] for action api.");return;}if(!x){x=ut.getProfileURL({id:o,pic:q},"medium",PERSON_TYPE);}b.initNode({});dojo.query(b.getDataQuery()).forEach(function(d){d.innerHTML=["<table border=0 cellpadding=0 cellspacing=5>","<tr>","<td class='pic'><a href='javascript:void(0)'><img src='",x,"'/></a></td>","<td class='amsg'>","<div class='atitle'>",v,"</div>","<div>",u,"</div>","</td>","</tr>","<tr><td></td>","<td class='abut'><button type='button' action='do' class='norm_button'>",z,"</button>","<button type='button' action='cancel' class='norm_button'>",M.CANCEL,"</button></td>","</tr></table>"].join("");dojo.query(".abut button[action='cancel']",d).onclick(function(t){b.close();});dojo.query(".pic img",d).connect("onload",function(){b.show(dojo.position(f),dojo.position(f,true));});dojo.query(".abut button[action='do']",d).onclick(function(t){switch(h){case"follow_user_slide":dojo.publish("logAjaxEvent",["social","add-fan"]);API_SVC.followUser(o).addCallback(b,"_reload");break;case"fan_remove":dojo.publish("logAjaxEvent",["social","remove-fan"]);API_SVC.unfollowUser(o).addCallback(b,"_reload");break;case"fadd":API_SVC.addFriend(o);dojo.publish("logAjaxEvent",["social","add-friend","network"]);f.innerHTML=M.PENDING_FRIEND;dojo.style(f,"color","#666");dojo.attr(f,y,"y");break;case"fapprove":API_SVC.approveFriend(o);dojo.publish("logAjaxEvent",["social","approve-friend","network"]);f.innerHTML="";dojo.style(f,"color","#666");dojo.attr(f,y,"y");break;case"fremove":dojo.publish("logAjaxEvent",["social","remove-friend","network"]);API_SVC.removeFriend(o).addCallback(b,"_reload");break;case"tadd":API_SVC.requestContribution(o);dojo.publish("logAjaxEvent",["social","request-contribution","timeline"]);f.innerHTML=M.PENDING_CONTRIBUTOR;dojo.style(f,"color","#666");dojo.attr(f,y,"y");break;case"tremove":dojo.publish("logAjaxEvent",["manage","remove-contribution","timeline"]);API_SVC.removeContribution(o).addCallback(b,"_reload");break;case"tremovecontr":dojo.publish("logAjaxEvent",["manage","remove-contribution","timeline"]);API_SVC.removeContributor(o,sid).addCallback(b,"_reload");break;}b.close();});});dojo.addClass(f,"flyout_link");b.show(dojo.position(f),dojo.position(f,true));});},_reload:function(){window.location.reload(false);},closeNode:function(){dojo.query("a[action='actioncontrol']").removeClass("flyout_link");},getName:function(){return"Action Control";}});dojo.declare("AccountControl",PageControl,{constructor:function(){var a=this;a.passwordRegex=new RegExp("^[a-zA-Z0-9\d]{6,}$");},initialize:function(b){var a=this;a.deferMsg=null;a.deferFunc=null;a.src=null;dojo.query(".qsl").forEach(function(c){dojo.connect(c,"onclick",a,"_clickHandlers");a.node=c;a.resetHtml=c.innerHTML;});dojo.subscribe("quickAccount",a,"_open");dojo.subscribe("quickAccountIdentity",a,"_identity");},_clickHandlers:function(c){var b=this,a=c.target,d=dojo.attr(a,"action");if(!d){while(a&&!d&&!dojo.hasClass(a,"qsl")){a=a.parentNode;d=dojo.attr(a,"action");}}switch(d){case"reset":b._reset();var e=dojo.attr(a,"params");if(e){dojo.publish("logAjaxEvent",e.split("#"));}break;case"close":b._close();break;case"reload":ut.reload();break;case"connect_facebook":b._aT("login-choose","facebook");b._fb();break;case"linkfb":b._linkfb();break;case"tgpass":b._tgPass();return;case"create":b._preCreate();b._aT("signup-choose","lifeblob");break;case"createlb":b._createlb();break;case"connect_lifeblob":b._preLogin();b._aT("login-choose","lifeblob");break;case"loginlb":b._loginlb();break;case"connect_google":b._aT("login-choose","google");b._connectGoogle();break;}},_createlb:function(){var c=this,b=dojo.byId("qsl_email").value,a=dojo.byId("qsl_pass").value;if(!ut.getEmail(b)){c._preCreate(b,a);c._formErr("Enter a valid email");c._aT("signup-error-pre-email","lifeblob");return;}else{if(!a||!a.match(c.passwordRegex)){c._preCreate(b,a);c._formErr("Password needs to be alphanumeric and atleast 6 characters");c._aT("signup-error-pre-pass","lifeblob");return;}}c._loadMsg("Creating your lifeblob account...");c._aT("signup-submit","lifeblob");API_SVC.create(b,a,true).addCallback(function(e){console.log(e);if(e.stat!="ok"){if(e.code==2){c._preCreate(b,a);c._formErr("Error processing request. Please retry...");}else{if(e.code==105){c._aT("signup-error","lifeblob");alert("Already logged in. Reloading page");ut.reload();return;}}c._aT("signup-invalid","lifeblob");console.log("Error. Code:"+e.code+" Desc:"+e.desc);return;}var d=e.result,f;switch(d.status){case 1:c._done(d,"/lb/account/finish/signup/lifeblob","signup-success","lifeblob");return;case 2:f="Enter a valid email";break;case 3:f="Email already taken. Please login instead.";break;case 4:f="Password needs to be alphanumeric and atleast 6 characters";break;default:f="Error processing request. Please retry...";break;}c._preCreate(b,a);c._formErr(f);c._aT("signup-invalid","lifeblob");});},_loginlb:function(){var c=this,b=dojo.byId("qsl_email").value,a=dojo.byId("qsl_pass").value;if(!b){c._aT("login-error-pre-login","lifeblob");return;}else{if(!a){c._aT("login-error-pre-pass","lifeblob");return;}}c._loadMsg("Authenticating with your lifeblob account...");c._aT("login-submit","lifeblob");API_SVC.login(b,a,true).addCallback(function(e){if(e.stat!="ok"){if(e.code==2){c._preLogin(b,a);c._formErr("Error processing request. Please retry...");}else{if(e.code==105){c._aT("login-error","lifeblob");alert("Already logged in. Reloading page");ut.reload();return;}}c._aT("login-invalid","lifeblob");console.log("Error. Code:"+e.code+" Desc:"+e.desc);return;}var d=e.result;if(!d.status){c._preLogin(b,a);c._formErr("Invalid email / password");c._aT("login-invalid","lifeblob");}else{c._done(d,"/lb/account/finish/login/lifeblob","login-success","lifeblob");}});},_connectGoogle:function(){var e=this,b=e.popup,d=450,a=500,f=(window.screen.height/2-a/2),g=(window.screen.width/2-d/2);if(b){try{b.close();}catch(c){}}b=window.open("http://www.lifeblob.com/account/popup/googleopen","","status=1,location=1,resizable=yes,width="+d+",height="+a+",left="+g+",top="+f);if(!b){e._showMainErr("Popup Blocked detected. Please allow popups from Lifeblob and try again.");e._aT("login-error-pre-popup-blocked","google");dojo.query(".qslbp").addClass("hidden");return false;}else{e._aT("login-submit","google");dojo.query(".qslbp").removeClass("hidden");}b.focus();e._waitForPopup();e.popup=b;},_fb:function(){var c=this,a=c.popup,d=(window.screen.width/2-448/2);if(a){try{a.close();}catch(b){}}a=window.open("http://www.lifeblob.com/account/popup/fconnectopen","","status=false, width=448px, height=488px, left="+d+"px, screenX="+d+"px, top=100px, screenY=100px");if(!a){c._showMainErr("Popup Blocked detected. Please allow popups from Lifeblob and try again.");c._aT("login-error-pre-popup-blocked","facebook");dojo.query(".qslbp").addClass("hidden");return false;}else{dojo.query(".qslbp").removeClass("hidden");c._aT("login-submit","facebook");}a.focus();c._waitForPopup();c.popup=a;},_waitForPopup:function(){var a=this;a.popupWait=setInterval(function(){if(a.popup.closed){dojo.query(".qslbp").addClass("hidden");clearInterval(a.popupWait);}},3000);},_identity:function(b,a){console.log(b);console.log(a);dojo.query(".qslbp").addClass("hidden");var c=this;if(b&&a){switch(b){case"facebook":c._fbIdentity(a);break;case"google":c._onGoogle(a);break;}}},_runDefer:function(){var b=this;if(b.deferFunc){try{b.deferFunc();}catch(a){console.log(a);}}},_onGoogle:function(a){var b=this;switch(a.status){case"LOGIN":b._done(a,"/lb/account/finish/login/google","login-success","google");break;case"LINKUP":b._done(a,"/lb/account/finish/signup/google/linked","signup-success","google");break;case"NEW":b._done(a,"/lb/account/finish/signup/google/email","signup-success","google");break;case"AUTH_ERROR":b._showMainErr("Google connect was cancelled.");b._aT("login-cancel","google");break;case"EXCEPTION":b._showMainErr("There was an error processing your request. Please try again.");b._aT("login-invalid","google");break;}},_fbIdentity:function(a){var b=this;b.fbinfo=a;switch(a.status){case"cancel":b._showMainErr("Facebook Connect was cancelled.");b._aT("login-cancel","facebook");break;case"alreadylinked":b._done(a,"/lb/account/finish/login/facebook","login-success","facebook");break;case"linked":b._done(a,"/lb/account/finish/signup/facebook/linked","signup-success","facebook");break;case"new":dojo.publish("logEvent",["/lb/account/intemediate/signup/facebook"]);b._preFbLinkup(true);break;case"exception":b._showMainErr("There was an error processing your request. Please try again.");b._aT("login-invalid","facebook");break;}},_linkfb:function(){var f=this,a=f.fbinfo,e=f.node,d=dojo.byId("qsl_lg").checked,c=dojo.byId("qsl_email").value,b=dojo.byId("qsl_pass").value;console.log("checked:"+d);if(d){if(!c){f._aT("signup-linkup-error-login","facebook");return;}else{if(!b){f._aT("signup-linkup-error-pass","facebook");return;}}f._aT("signup-linkup-login-submit","facebook");f._loadMsg("Authenticating with your lifeblob account...");API_SVC.fblinkup(c,b).addCallback(function(h){if(h.stat!="ok"){if(h.code==2){f._preFbLinkup(false,c,b);f._showMainErr("Error processing request. Please retry...");}else{if(h.code==105){f._aT("signup-linkup-error-email-error","facebook");alert("Already logged in. Reloading page");ut.reload();return;}}f._aT("signup-linkup-error-email-invalid","facebook");return;}var g=h.result;switch(g.status){case -1:f._preFbLinkup(false,c,b);f._showMainErr("Invalid email / password");f._aT("signup-linkup-error-email-invalid","facebook");return;case 0:case 3:if(g.status==0){f._done(g,"/lb/account/finish/signup/facebook/email-same","signup-success","facebook");}else{f._done(g,"/lb/account/finish/signup/facebook/email-linkup","signup-success","facebook");}return;case 1:f._preFbLinkup(false,c,b);f._showMainErr("There is already a facebook account linked to the given account.");f._aT("signup-linkup-error-diff-account","facebook");return;case 2:case 4:f._aT("signup-linkup-error-case-"+g.status,"facebook");alert("Already logged in. Reloading page");ut.reload();return;}});}else{if(!ut.getEmail(c)){f._preFbLinkup(true,c);f._showMainErr("Enter a valid email");f._aT("signup-linkup-error-email","facebook");return;}f._aT("signup-linkup-new-submit","facebook");f._loadMsg("Creating your lifeblob account...");API_SVC.fbnew(c).addCallback(function(h){if(h.stat!="ok"){if(h.code==2){f._preFbLinkup(true,c);f._showMainErr("Error processing request. Please retry...");}else{if(h.code==105){f._aT("signup-linkup-error-new-error","facebook");alert("Already logged in. Reloading page");ut.reload();return;}}f._aT("signup-linkup-error-new-invalid","facebook");return;}var g=h.result;switch(g.status){case 2:f._preFbLinkup(true,c);f._showMainErr("Invalid email");f._aT("signup-linkup-error-new-email-invalid","facebook");return;case 3:f._preFbLinkup(true,c);f._showMainErr("Email already taken");f._aT("signup-linkup-error-new-email-taken","facebook");return;case 0:case 1:if(g.status==0){f._done(g,"/lb/account/finish/signup/facebook/email-new","signup-success","facebook");}else{f._done(g,"/lb/account/finish/signup/facebook/email-linkup","signup-success","facebook");}return;}});}},_done:function(a,d,e,c){var b=this;LB.setUser(a.user);if(a.cookie){dojo.cookie("__lt",a.cookie,{expires:a.expires||0,path:"/"});}b._runDefer();dojo.publish("logEvent",[d]);b._aT(e,c);b._success(b.deferMsg);},_tgPass:function(){dojo.query(".cbp",this.node).toggleClass("hidden");dojo.query(".but",this.node).toggleClass("buts");},_preCreate:function(b,a){var c=this;c.node.innerHTML=c._preHtml("Create a new account","Enter your email and password below to sign up for a lifeblob account.","createlb","Signup","account#signup-cancel#lifeblob",b,a);},_preLogin:function(b,a){var c=this;c.node.innerHTML=c._preHtml("Sign in with Lifeblob","Enter your email and password below to sign in with your lifeblob account.","loginlb","Login","account#login-cancel#lifeblob",b,a);},_preHtml:function(g,d,e,a,f,c,b){c=c||"";b=b||"";return['<div class="qf">','<div class="cl invisible"><a href="javascript:void(0)" action="close">Close</a></div>','<div class="t">',g,"</div>",'<div class="s">',d,"</div>",'<div class="err"><div class="msg"></div></div>','<table class="tb">','<tr><td class="td"><div class="tl">Email:</div></td><td class="td"><input class="input" type="text" value="',c,'" id="qsl_email"/></tr>','<tr><td class="td"><div class="tl">Password:</div></td><td class="td"><input class="input" type="password" value="',b,'" id="qsl_pass"/></tr>','<tr><td class="tdb" colspan="2"><button action="',e,'" value="Submit" class="blue_button"><span>',a,"</span></button>",'<a class="can" title="Go back" params="',f,'" action="reset">Cancel</a></td></tr>',"</table>","</div>"].join("");},_preFbLinkup:function(d,b,a){var c=this;c.node.innerHTML=c._emailHtml("One last thing!","Please enter your email id so that we can notify you of any response.",c.fbinfo.facebook.pic,"I have an existing lifeblob account with this email","linkfb","Continue","account#signup-cancel#facebook",d,b,a);},_emailHtml:function(k,a,e,f,c,d,b,g,h,l){return['<div class="top">','<div class="cl invisible"><a href="javascript:void(0)" action="close">Close</a></div>','<div class="t">',k,"</div>",'<div class="s ss">',a,"</div>",'<div class="err"><div class="msg"></div></div>','<table class="emf"><tr>','<td class="td1"><img class="img" src="',e,'"/></td>','<td class="td2">','<span class="em">Email:</span><input class="input" type="text" value="',h,'" id="qsl_email"/>','<div class="cb"><input ',(g?"":"checked='checked'"),' action="tgpass" id="qsl_lg" type="checkbox" class="checkbox"/><label class="label" for="qsl_lg">',f,"</label></div>",'<div class="cb cbp ',(g?"hidden":""),'"><div class="em">Password for your existing account:</div><input class="input" type="password" value="',l,'" id="qsl_pass"/></div>','<div class="but ',(g?"":"buts"),'"><button action="',c,'" value="Submit" class="blue_button"><span>',d,"</span></button>",'<a class="can" title="Go back" params="',b,'" action="reset">Cancel</a></div>',"</td>","</tr></table>","</div>"].join("");},_loadMsg:function(a){this.node.innerHTML=["<div class='ld'><img src='http://cdn0.lifeblob.com/lifeblob/img/theme-gray/spinners/hourglass.v199e1c.gif' class='img'/><span class='msg'>",a,"</span></div>"].join("");},_formErr:function(a){dojo.query(".qf",this.node).forEach(function(b){dojo.query(".err .msg",b).forEach(function(c){c.innerHTML=a;});dojo.addClass(b,"qferr");});},_showMainErr:function(a){dojo.query(".top",this.node).forEach(function(b){dojo.query(".err .msg",b).forEach(function(c){c.innerHTML=a;});dojo.addClass(b,"merr");});},_success:function(c){var b=this,a=["<div class='rd'>"];if(c){a.push("<div class='msg'>",c,"</div>");}a.push("<div class='tim' time='6'>This page will automatically refresh in 5 seconds...</div>");a.push("<button action='reload' class='norm_button'>Refresh Now!</button>");b.node.innerHTML=a.join("");dojo.fadeIn({node:b.node,rate:1000,duration:5000,onAnimate:function(){var e=dojo.query(".tim")[0],d=parseInt(dojo.attr(e,"time"))-1;if(d>=0){e.innerHTML="This page will automatically refresh in "+d+" seconds...";dojo.attr(e,"time",d);}},onEnd:function(){ut.reload();}}).play();},_open:function(c,a,d){if(false&&confirm(M.LOGIN_REQUIRED)){ut.rdL();return;}var b=this;b._reset();dojo.removeClass(b.node,"hidden");b.deferFunc=a;b.deferMsg=d;b.src=c;dojo.query(".qslb").removeClass("hidden");dojo.publish("logEvent",["/lb/account/open/"+c]);b._aT("open",c);},_close:function(){var a=this;a._reset();dojo.addClass(a.node,"hidden");a._aT("close",a.src);a.deferFunc=null;a.deferMsg=null;a.src=null;dojo.query(".qslb").addClass("hidden");},_reset:function(){var a=this;a.node.innerHTML=a.resetHtml;delete (a.fbinfo);},_aT:function(c,a,b){dojo.publish("logAjaxEvent",["account",c,a,b]);},getName:function(){return"AccountControl";}});dojo.declare("InviteContributorsControl",FlyoutControl,{initialize:function(c){var b=this;var a=c.obj.id;dojo.query("a[action='inviteContributors']").onclick(function(d){dojo.query(".flyout_link").removeClass("flyout_link");var e=dojo.string.substitute(M.INV_EXT,["",a]);b.initNode({title:M.IC_TITLE});var g;dojo.query(b.getDataQuery()).forEach(function(h){h.innerHTML=["<div>",M.IC_MSG,"</div>","<table border=0 cellpadding=0 cellspacing=5>","<tr>","<td class='ic'>",M.TO,"</td>","<td><div class='ic_to'></div></td>","</tr>","<tr>","<td class='ic'>",M.MSG,"</td>","<td><textarea class='ic_msg'></textarea></td>","</tr>","<tr><td colspan='2'>",e,"</td></tr>","<tr><td colspan='2' class='ic_invite'>","<button type='button' class='norm_button'>",M.INVITE,"</button></td></tr></table>"].join("");dojo.query(".ic_to",h).forEach(function(k){g=new Suggest(k,"part_","user",{helpText:M.SFE,newValueText:"email",callbacks:{onselect:function(){b.show(dojo.position(f),dojo.position(f,true));},onenter:function(){b.show(dojo.position(f),dojo.position(f,true));}}});g.initialize();});dojo.query(".ic_invite button",h).onclick(function(k){var l=[];dojo.query("input[name='part_id']",h).forEach(function(o){var p=parseInt(o.value);l.push(p);});var m=Suggest.getEmails("input[name='part_email']");if(!m){return;}if(l.length!=0||m.length!=0){API_SVC.inviteContributors({topicId:a,people:l,emails:m});dojo.publish("tt",[{message:dojo.string.substitute(M.INV_STATUS,[(l.length+m.length)])}]);dojo.publish("logAjaxEvent",["manage","invite-contributors","timeline",m.length]);b.close();}});});var f=d.currentTarget;dojo.addClass(f,"flyout_link");b.show(dojo.position(f),dojo.position(f,true));g.clear(true);dojo.publish("logEvent",[["/lb/topicinvite/home"]]);});},closeNode:function(){dojo.query("a[action='inviteContributors']").removeClass("flyout_link");},getName:function(){return"IC";}});dojo.declare("ProfilePicControl",FlyoutControl,{initialize:function(b){var a=this;this.callCount=0;dojo.query("#profilePic").onclick(function(c){a.handle(c,a);});},handle:function(m,a){var d="borderColor",g="table.defaults",f="table.upload",b="table.url",l="<img src='http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_blue_16_wht.v67bd14.gif'/>",k,c,o,e;dojo.query(".flyout_link").removeClass("flyout_link");o=m.currentTarget;e=dojo.attr(o,"topic");k=["<span class='ppu_head'>","<span><a class='selected' action='upload' href='javascript:void(0)'>",M.PP_COMP,"</a></span>","<span>|</span>","<span><a action='",(e?"url":"defaults"),"' href='javascript:void(0)'>",(e?M.PP_URL:M.PP_DEF),"</a></span>","</span>"].join("");a.initNode({title:k,grad:-40});dojo.query(a.getTitleQuery()).forEach(function(p){dojo.query("a",p).onclick(function(q){c=q.currentTarget;dojo.query("a",p).removeClass("selected");dojo.addClass(c,"selected");dojo.query(".ppu_content table").style("display","none");dojo.query(".ppu_content table."+dojo.attr(c,"action")).style("display","block");});});dojo.query(a.getDataQuery()).forEach(function(q){q.innerHTML=["<div class='ppu_content'>","<form class='upload' action='/photo/profilePicture' method='post' enctype='multipart/form-data'>","<table class='upload' border=0 cellpadding=0 cellspacing=5>","<tr class='choose'>","<td><input name='upload' type='file'/>",(e?["<input name='topicId' value='",e,"' type='hidden'/>"].join(""):""),"</td>","<td>","<button type='button' class='norm_button'>",M.UPLOAD,"</button>","</td>","</tr>","<tr class='choose'>","<td colspan='2'>",M.PP_PHOTO_LIMIT,"</td>","</tr>","<tr class='wait' style='display:none;margin-top: 3px;'>","<td>",l,"</td>","<td>",M.PP_UP_WAIT,"</td>","</tr>","<tr class='error' style='display:none;margin-top: 3px;'>","<td colspan='2'>&nbsp;</td>","</tr>","</table>","</form>","<table class='url' border=0 cellpadding=0 cellspacing=5>","<tr class='choose'>","<td><input type='text' value='http://'/></td>","<td>","<button type='button' class='norm_button'>",M.CHOOSE,"</button>","</td>","</tr>","<tr class='wait' style='display:none;margin-top: 3px;'>","<td>",l,"</td>","<td>",M.PP_URL_WAIT,"</td>","</tr>","<tr class='error' style='display:none;margin-top: 3px;'>","<td colspan='2'>&nbsp;</td>","</tr>","</table>","<table class='defaults' border=0 cellpadding=0 cellspacing=5>","<tr class='choose'>","<td>","<a class='dp' pic='1' href='javascript:void(0)'><img src='http://cdn0.lifeblob.com/lifeblob/img/theme-gray/system/profile_pics/person/1/medium.v297fcd.jpg'/></a>","<a class='dp' pic='2' href='javascript:void(0)'><img src='http://cdn0.lifeblob.com/lifeblob/img/theme-gray/system/profile_pics/person/2/medium.v44f8cc.jpg'/></a>","<a class='dp' pic='3' href='javascript:void(0)'><img src='http://cdn0.lifeblob.com/lifeblob/img/theme-gray/system/profile_pics/person/3/medium.va02526.jpg'/></a>","<a class='dp' pic='4' href='javascript:void(0)'><img src='http://cdn0.lifeblob.com/lifeblob/img/theme-gray/system/profile_pics/person/4/medium.vb92dc7.jpg'/></a>","</td>","<td>","<button class='norm_button'>",M.CHOOSE,"</button></td>","</tr>","<tr class='wait' style='display:none;margin-top: 3px;'>","<td>",l,"</td>","<td>",M.PP_DEF_WAIT,"</td>","</tr>","</table>","</div>"].join("");dojo.query(b+" button.norm_button",q).onclick(function(r){var t;dojo.query(b+" input",q).forEach(function(u){t=u.value;});if(t&&t!="http://"){dojo.query(b+" tr.choose").style("display","none");dojo.query(b+" tr.wait").style("display","block");API_SVC.topicPic(e,t).addCallback(function(u){if(u.stat!="ok"){console.log("Error. Code:"+u.code+" Desc:"+u.desc);return;}a.upTPic(t);});dojo.publish("logAjaxEvent",["edit","change-topic-pic-url","timeline"]);}});dojo.query(f+" button.norm_button",q).onclick(function(r){dojo.query(f+" tr.choose").style("display","none");dojo.query(f+" tr.wait").style("display","block");dojo.io.iframe.send({form:dojo.query("form.upload",q)[0],handleAs:"application/json",content:{increment:this.callCount++,fileFields:""},handle:function(v){var t=dojo.fromJson(v),u=t.version;if(t.status!=0){console.log("Error. Status:"+t.status);dojo.query(f+" tr.choose").style("display","none");dojo.query(f+" tr.wait").style("display","none");dojo.query(f+" tr.error").style("display","block").forEach(function(w){dojo.query("> td",w).forEach(function(x){x.innerHTML=M.PP_PHOTO_LIMIT;});});return;}if(e){a.upTPic(ut.getProfileURL({id:e,pic:u},"medium",TOPIC_TYPE));dojo.publish("logAjaxEvent",["edit","change-topic-pic-upload","timeline"]);}else{a.upPic(u,"up");dojo.publish("logAjaxEvent",["edit","change-person-pic-upload","timeline"]);}}});});var p=g+" a.dp";dojo.query(p,q).onclick(function(r){c=r.currentTarget;dojo.query(p,q).style(d,"#fff").attr("sel","false");dojo.style(c,d,"#BE4126");dojo.attr(c,"sel","true");});dojo.query(g+" button.norm_button",q).onclick(function(r){var t;dojo.query(g+" a.dp[sel='true']",q).forEach(function(u){t=dojo.attr(u,"pic");});if(t){dojo.query(g+" tr.choose").style("display","none");dojo.query(g+" tr.wait").style("display","block");API_SVC.defaultPic(t).addCallback(function(u){if(u.stat!="ok"){console.log("Error. Code:"+u.code+" Desc:"+u.desc);return;}a.upPic(u.result,"def");});dojo.publish("logAjaxEvent",["edit","change-person-default-pic","timeline"]);}});});var h=m.currentTarget;dojo.addClass(h,"flyout_link");a.show(dojo.position(h),dojo.position(h,true));},upTPic:function(a){dojo.query("img.timelinepic").forEach("item.src = '"+a+"'");this.close({fade:300});},upPic:function(f,b){var h=(dojo.isIE<7)?(new Date()).getTime():f,e=th.getUser().person,g=PERSON_TYPE,c=ut.getProfileURL(e,"small",g),k=ut.getProfileURL(e,"medium",g),a=ut.getProfileURL(e,"large",g),d=this;dojo.query("table.helpout[help='pic']").forEach(function(m){var l=dojo.query("td.c22",m)[0].innerHTML;m.innerHTML=l;dojo.query(".profile_actions[link='before']",m).style("display","none");dojo.query(".profile_actions[link='after']",m).style("display","block");dojo.query("a[action='profilePic']",m).onclick(function(o){d.handle(o,d);});dojo.attr(m,"help","pic_done");});th.getUser().person.pic=h;dojo.query("img[src='"+c+"']").forEach("item.src = '"+ut.getProfileURL(e,"small",g)+"'");dojo.query("img[src='"+k+"']").forEach("item.src = '"+ut.getProfileURL(e,"medium",g)+"'");dojo.query("img[src='"+a+"']").forEach("item.src = '"+ut.getProfileURL(e,"large",g)+"'");this.close({fade:300});},closeNode:function(){dojo.query("a[action='profilePic']").removeClass("flyout_link");},getName:function(){return"PPC";}});dojo.declare("SendMessageControl",FlyoutControl,{initialize:function(b){var a=this;dojo.query("a[action='sendMessage']").onclick(function(c){dojo.query(".flyout_link").removeClass("flyout_link");var d=c.currentTarget;a.initNode({title:M.SMSG});dojo.query(a.getDataQuery()).forEach(function(g){var e=dojo.attr(d,"pid");var f=dojo.attr(d,"pname");g.innerHTML=["<table border=0 cellpadding=0 cellspacing=5>","<tr>","<td class='ic'>",M.TO,"</td>","<td><div class='msg_to'></div></td>","</tr>","<tr>","<td class='ic'>",M.SUB,"</td>","<td><input class='fly_sub'/></td>","</tr>","<tr>","<td class='ic'>",M.MSG,"</td>","<td><textarea class='ic_msg'></textarea></td>","</tr>","<tr><td colspan='2' class='ic_invite'>","<button type='button' class='norm_button'>",M.SEND,"</button></td></tr></table>"].join("");dojo.query(".msg_to",g).forEach(function(l){var h=[];h.push({key:f,value:{k:"id",v:e},disabled:true});var k=new Suggest(l,"part_","user",{initialValues:h,singleSelect:true});k.initialize();});dojo.query(".ic_invite button").onclick(function(h){var k,l;dojo.query(".fly_sub",g).forEach(function(m){k=m.value;m.focus();});if(k==""){return;}dojo.query(".ic_msg",g).forEach(function(m){l=m.value;});API_SVC.sendMessage([e],k,l,0);dojo.publish("logAjaxEvent",["social","send-message","message"]);dojo.publish("tt",[{message:dojo.string.substitute(M.MSG_STATUS,[f])}]);dojo.publish("logEvent",[["/lb/sendmessage/success"]]);a.close();});});dojo.addClass(d,"flyout_link");a.show(dojo.position(d),dojo.position(d,true));dojo.publish("logEvent",[["/lb/sendmessage/home"]]);});},closeNode:function(){dojo.query("a[action='sendMessage']").removeClass("flyout_link");},getName:function(){return"Send Message Control";}});dojo.declare("FBConnectControl",FlyoutControl,{fbConnected:false,initialize:function(c){var b=this,a=LB.getUser();if(a.logged){return;}b.fbConnected=(a.person.fbid!=0);if(b.fbConnected){return;}dojo.subscribe("importFb",b,"importFb");dojo.query("a#fbconnect").onclick(function(d){if(b.fbConnected){console.log("Already connected to facebook");b.removeFb();return;}dojo.query(".flyout_link").removeClass("flyout_link");var e=d.currentTarget;b.initNode({title:M.FB_CONNECT,forceDown:true});dojo.query(b.getDataQuery()).forEach(function(f){f.innerHTML=["<div class='fbconnect'>","<div style='margin-top: 5px'>","<a href='javascript:void(0);' action='connect'>","<img width='107' height='25' src='http://static.ak.fbcdn.net/images/fbconnect/login-buttons/connect_light_large_short.gif' alt='Connect'/>","</a>","</div>","<div class='legal_oneline'>","By clicking the button above, you agree to lifeblob's <a href='javascript:void(0);'>terms and conditions</a> for facebook photos.","</div>","<div class='legal hidden'>","<div>By clicking the button above, you confirm that lifeblob may access your Facebook photos and retain links to them in order to create your lifeblob.</div>","<div>You may also be prompted to give lifeblob offline access to your photos. Granting access is highly recommended as it lets us keep your lifeblob synchronized with your photos on Facebook.</div>","<div>Your privacy is important to us. We make our best attempt at ensuring that your photos are not made visible to anyone who cannot view them otherwise. You will be able to fine-tune the visibility further on lifeblob. You can read our entire terms of service <a target='_blank' href='http://www.lifeblob.com/terms'>here</a>.</div>","</div>","</div>","<div class='fb_auth hidden'>","<img width='16' height='16' align='absmiddle' src='http://cdn3.lifeblob.com/lifeblob/img/theme-gray/spinners/loader_16_E8E7E3.v186e19.gif'/>","<span>",M.WAITING_FOR_AUTHENTICATION,"</span>","<div class='hidden'>",M.FB_IMP_SUC,"</div>","<a class='gray_button hidden'><span class='middle'>Close</span><span class='right'></span></a>","</div>"].join("");dojo.query(".legal_oneline a",f).onclick(function(g){dojo.query(".legal",f).toggleClass("hidden");});dojo.query("[action='connect']",f).onclick(function(g){FB.Connect.requireSession(function(){dojo.query(".fbconnect",f).addClass("hidden");dojo.query(".fb_auth",f).removeClass("hidden");API_SVC.linkupFacebook().addCallback(function(l){if(l.stat!="ok"){console.log("Error. Code:"+l.code+" Desc:"+l.desc);return;}var h=l.result,m=h.userId,k=h.status;if(LB.getUser().uid!=LB.getUser()){alert('This facebook user is linked to another lifeblob account. Clicking "Ok" will log you into that account.');window.location.reload(false);}else{if(k==0||k==3){b.importFb();}else{if(k==1){alert('This lifeblob account already has a facebook user linked to it. Click "Ok" to create a new account for your facebook user.');ut.rd("/account/simplelogout?next=/account/fconnect");}else{if(k==2||k==4){alert('This facebook user is linked to another lifeblob account. Clicking "Ok" will log you into that account.');window.location.reload(false);}}}}});});});});dojo.addClass(e,"flyout_link");b.show(dojo.position(e),dojo.position(e,true));dojo.publish("logEvent",[["/lb/fbconnect/home"]]);});},importFb:function(){var a=this;FB.Facebook.apiClient.users_hasAppPermission("offline_access",function(b){if(b==0){FB.Connect.showPermissionDialog("offline_access",function(c){if(c){a.logEvent("facebook-import-type","perma");var d=document.createElement("iframe");dojo.byId("fb_iframe_cont").appendChild(d);dojo.attr(d,"src","http://www.lifeblob.com/xd_domain_load.htm");}else{a.logEvent("facebook-import-type","session");a._facebookImport();}});}else{a._facebookImport();}});},_facebookImport:function(){var b=this,d=false,e="FacebookPhotos",f="http://cdn3.lifeblob.com/lifeblob/img/common/error-16.ve2461d.png",a="http://cdn2.lifeblob.com/lifeblob/img/common/success-16.v92e1e1.png",c;dojo.query(this.getDataQuery()).forEach(function(g){dojo.query(".fb_auth > span",g).forEach("item.innerHTML='"+M.IMPORTING_DATA+"'");API_SVC.facebookImportRequest().addCallback(function(h){if(!h.result||h.result<0){b.logEvent("import-error-create",e);return;}else{if(!h.result&&h.code==3){b.logEvent("facebook-error-session",e);window.location.reload(false);return;}}c=setInterval(function(){if(!d){d=true;API_SVC.importStatus(h.result).addCallback(function(m){if(m.stat!="ok"){d=false;return;}var l=m.result;switch(l.status){case 0:d=false;return;case 1:b.logEvent("import-success",e);var p=l.data,k=dojo.string.substitute(M.IM_FB_STATS,[p[1],p[5]]);dojo.query(".fb_auth > span",g).forEach("item.innerHTML='"+k+"'");dojo.query(".fb_auth img",g).forEach(function(t){t.src=a;});b.fbConnected=true;dojo.query(".fb_auth div",g).removeClass("hidden");dojo.query(".fb_auth a",g).removeClass("hidden").onclick(function(t){b.closeAndRemove();});dojo.publish("reloadTimeline");break;default:b.logEvent("import-error-import",e);var r=(l.errorCode==2),q=r?M.FB_DUP_ERROR:M.IMPORT_ERROR,o=dojo.string.substitute(q,["Facebook"]);dojo.query(".fb_auth > span",g).forEach("item.innerHTML='"+o+"'");dojo.query(".fb_auth img",g).forEach(function(t){t.src=f;});if(r){b.logEvent("import-error-create-duplicate",e);b.fbConnected=true;dojo.query(".fb_auth a",g).removeClass("hidden").onclick(function(t){b.closeAndRemove();});}break;}clearInterval(c);c=null;d=false;});}},3000);});});},logEvent:function(b,a){dojo.publish("logAjaxEvent",["suggestflow",b,a]);},closeAndRemove:function(){this.removeFb();this.close();},closeNode:function(){dojo.query("a#fbconnect").removeClass("flyout_link");if(this.fbConnected){this.removeFb();}},removeFb:function(){dojo.query("a#fbconnect").forEach(function(b){var a=b.parentNode.parentNode;if(dojo.hasClass(a,"info_line")){a.parentNode.removeChild(a);dojo.query(".info_right_pane div.info_line:first-child").addClass("first_line");}});},getName:function(){return"FB Connect Control";}});dojo.declare("ShareControl",PageControl,{initialize:function(b){var a=this;dojo.query(".external .fbshare").onclick(function(l){if(window.FB&&window.FB.Connect){dojo.stopEvent(l);var p="",f=l.currentTarget;dojo.query(".sidebar .desc").forEach(function(e){p=e.innerHTML;});p=dojo.trim(p);if(p.length==0){var c=dojo.query("meta[name='description']");if(c&&c.length>0){p=c[0].content;}}var o=document.title,h=b.obj,m=(h.type==TOPIC_TYPE)?4:((h.type==PLACE_TYPE)?2:((h.type==TAG_TYPE)?3:1)),d="http://cdn.lifeblob.com/lifeblob/flash/Lifeblob.swf?id="+h.id+"&type="+m,g=dojo.attr(f,"image"),k={media:[{type:"flash",swfsrc:d,imgsrc:"http://www.lifeblob.com/image/overlay?url="+g,width:"100",height:"80",expanded_width:"420",expanded_height:"260"}],name:o,description:p};FB.Connect.streamPublish("",k);}});},getName:function(){return"Share Control";}});dojo.require("dojo.io.script");dojo.declare("PublisherControl",Control,{initialize:function(c){var b=this,a=LB.getUser(),e=c.obj;if(!a.logged){return;}b.callCount=0;b.suggestControls=[];b.addToTimelines=[];b.timeline=c;b.addToTimelines=[];b.isOwnTimeline=(e.type=="user"&&a.person.id==e.id);if(e.type=="topic"){b.timelineType=4;b.addToTimelines.push({key:e.name,value:{k:"tid",v:e.id},disabled:true});b.addToTimelines.push({key:"My Timeline",value:{k:"pid",v:a.person.id},disabled:false});}else{if((e.type=="user"||e.type=="facebookapp")&&a.person.id!=e.id&&e.id>0){b.addToTimelines.push({key:e.name,value:{k:"pid",v:e.id},disabled:true});b.addToTimelines.push({key:"My Timeline",value:{k:"pid",v:a.person.id},disabled:true});}else{if((e.type=="facebookapp")&&e.fbid){b.addToTimelines.push({key:e.name,value:{k:"fbid",v:e.fbid},disabled:true});b.addToTimelines.push({key:"My Timeline",value:{k:"pid",v:a.person.id},disabled:true});}else{b.addToTimelines.push({key:"My Timeline",value:{k:"pid",v:a.person.id},disabled:true});}}}dojo.query(".publisher").forEach(function(f){b.cont=f;b.handler=dojo.connect(f,"onclick",b,"_clickHandlers");dojo.query(".act_on_enter").onkeydown(function(g){if(g.keyCode==13){b._postShort();}});});dojo.query(".person_input").forEach(function(f){var g=new Suggest(f,"add_","suggest.all",{helpText:"Start typing a person name, email id or lifeblob name",newValueText:"email",initialValues:b.addToTimelines,callbacks:{onshow:dojo.hitch(b,"_onSShow"),onhide:dojo.hitch(b,"_onSHide")}});g.initialize();b.suggestControls.push(g);});b.resetDate();var d=dojo.byId("dateOffset");if(d){d.value=new Date().getTimezoneOffset()*60000;}},_onSShow:function(){dojo.query(".publisher select").style("visibility","hidden");},_onSHide:function(){dojo.query(".publisher select").style("visibility","visible");},getHappened:function(){var c,f,d,b,g,a,e;dojo.query("tr.happened").forEach(function(h){dojo.query("[name='month'] option",h).forEach(function(k){if(k.selected){f=parseInt(k.value)-1;}});dojo.query("[name='date']",h).forEach(function(k){c=parseInt(k.value,10);});dojo.query("[name='year']",h).forEach(function(k){d=parseInt(k.value,10);});dojo.query("[name='hour']",h).forEach(function(k){b=parseInt(k.value,10);});dojo.query("[name='minute']",h).forEach(function(k){g=parseInt(k.value,10);});});a=new Date(d,f,c,b,g);if(a.getDate()!=c||a.getMinutes()!=g){return false;}e=[a.getUTCFullYear(),"-",(a.getUTCMonth()+1),"-",a.getUTCDate(),"T",a.getUTCHours(),":",a.getUTCMinutes(),":",a.getUTCSeconds(),"Z"].join("");return e;},getAddTo:function(c,a){var b=[];dojo.query("#"+c+" [name='"+a+"']").forEach(function(d){b.push(d.value);});return b;},reset:function(a){dojo.query("tr[advanced='"+a+"']").addClass("hidden");dojo.query("tr.publisher_advanced[advanced='"+a+"']").removeClass("hidden");ref.resetDate();},resetDate:function(){var a=new Date();dojo.query("tr.happened").forEach(function(b){dojo.query("[name='month'] option",b).forEach(function(c){if((parseInt(c.value)-1)==a.getMonth()){c.selected=true;}});dojo.query("input",b).forEach(function(d){var c=dojo.attr(d,"name"),e;switch(c){case"date":e="0"+a.getDate();e=e.substr(e.length-2,2);d.value=e;break;case"year":d.value=""+a.getFullYear();break;case"hour":e="0"+a.getHours();e=e.substr(e.length-2,2);d.value=e;break;case"minute":e="0"+a.getMinutes();e=e.substr(e.length-2,2);d.value=e;break;}});});dojo.query(".date_error").style("display","none");},_setWaitingState:function(){var b=this,a=b.cont;b.waiting=true;dojo.query("img",a).removeClass("hidden");dojo.query("a.gray_rounded_button",a).addClass("hidden");},_clearWaitingState:function(){var b=this,a=b.cont;b.waiting=false;dojo.query("img",a).addClass("hidden");dojo.query("a.gray_rounded_button",a).removeClass("hidden");},_clear:function(){var c=this,a=c.cont;for(var b in c.suggestControls){c.suggestControls[b].clear();c.suggestControls[b].addSelected(c.addToTimelines);}dojo.query(".publisher_extra",a).forEach(function(d){d.innerHTML="";});dojo.query(".advanced",a).addClass("hidden");dojo.query("input[type='text']",a).forEach(function(d){d.value="";});dojo.query(".publisher_tab input[type='checkbox']").forEach(function(d){d.checked=dojo.attr(d,"advanced")?true:false;});dojo.query(".publisher textarea").forEach(function(d){d.value="";});dojo.query(".publisher_upload_question_cont").addClass("hidden");dojo.query("#publisher_upload_question").forEach(function(d){d.checked=false;});dojo.query(".publisher_status_update",a).forEach(function(d){d.value=dojo.attr(d,"defaultText");dojo.addClass(d,"publisher_status_default");});},_clickHandlers:function(e){var d=this,c=e.target,a=d.cont,f=dojo.attr(c,"action"),b=dojo.attr(c,"actionParams");if(d.waiting==true){return;}switch(f){case"publisherTab":dojo.query(".publisher_label",a).forEach(function(h){var g=dojo.attr(h,"actionParams");if(g==b){dojo.addClass(h,"active_publisher_label");}else{dojo.removeClass(h,"active_publisher_label");}});dojo.query(".publisher_tab",a).forEach(function(h){var g=dojo.attr(h,"publisherTab");if(g==b){dojo.removeClass(h,"hidden");}else{dojo.addClass(h,"hidden");}});break;case"statusClick":if(dojo.hasClass(c,"publisher_status_default")){dojo.removeClass(c,"publisher_status_default");c.value="";c.focus();c.handler=dojo.connect(c,"onblur",d,"_statusBlurHandler");}break;case"addPhoto":d._addPhoto();break;case"addVideo":d._addVideo();break;case"videoInput":if(dojo.hasClass(c,"publisher_input_default")){c.value="";dojo.removeClass(c,"publisher_input_default");c.focus();c.handler=dojo.connect(c,"onblur",d,"_videoBlurHandler");}break;case"advanced":dojo.query(".advanced").toggleClass("hidden");break;case"postShort":d._postShort();break;case"postBlob":d._postBlob();break;case"uploadOption":if(dojo.byId("publisher_upload_question").checked){dojo.query(".publisher_upload_help").removeClass("hidden");}else{dojo.query(".publisher_upload_help").addClass("hidden");}break;}},_statusBlurHandler:function(b){var a=b.currentTarget;if(a.value==""){a.value=dojo.attr(a,"defaultText");dojo.addClass(a,"publisher_status_default");dojo.disconnect(a.handler);}},_addPhoto:function(){var c=this,a=c.cont;var b=document.createElement("div");dojo.addClass(b,"publisher_extra_photo");b.innerHTML=['<div class="publisher_extra_field_cont">','<div class="publisher_extra_field">',M.PHOTO,"</div>",'<input type="file" name="upload" size="43">',"</div>"].join("");dojo.query(".publisher_extra",a).forEach(function(d){d.appendChild(b);});dojo.query(".publisher_upload_question_cont").removeClass("hidden");},_addVideo:function(){var c=this,a=c.cont;var b=document.createElement("div");dojo.addClass(b,"publisher_extra_video");b.innerHTML=['<div class="publisher_extra_field_cont">','<div class="publisher_extra_field">',M.VIDEO,"</div>",'<input type="text" name="video" class="publisher_input publisher_input_default" defaultText="',M.PUBLISHER_YOUTUBE_PROMPT,'" action="videoInput">',"</div>"].join("");dojo.query(".publisher_extra",a).forEach(function(d){d.appendChild(b);});dojo.query(".publisher_input",b).forEach(function(d){d.value=dojo.attr(d,"defaultText");});},_videoBlurHandler:function(b){var a=b.currentTarget;if(a.value==""){a.value=dojo.attr(a,"defaultText");dojo.addClass(a,"publisher_input_default");dojo.disconnect(a.handler);}},_postShort:function(){var c=this,a=c.cont,d=c.timeline.obj,b;dojo.query(".publisher_status_update",a).forEach(function(f){var e=f.value;if(c.isOwnTimeline){API_SVC.updateStatus(e,true).addCallback(c,"_onPostStatus",e);}else{switch(d.type){case"user":b=1;break;case"topic":b=4;break;}API_SVC.postTimelineComment(d.id,b,e,true).addCallback(c,"_onPostStatus",e);}c._setWaitingState();});},_onPostStatus:function(c,a){var b=this;b._clearWaitingState();if(a.stat!="ok"){console.log("Error. Code:"+a.code+" Desc:"+a.desc);return;}b._clear();dojo.publish("shortAdded",[a.result]);},_postBlob:function(){var b=this,p=b.cont,k=dojo.byId("text_title").value,d=dojo.byId("text_desc").value,a=dojo.byId("text_public").checked?3:2,h=dojo.byId("isLinkEText").checked,g=dojo.byId("publisher_upload_question").checked,l=b.getHappened("text"),c=b.getAddTo("textPost","add_pid"),f=b.getAddTo("textPost","add_fbid"),o=b.getAddTo("textPost","add_tid"),e=Suggest.getEmails("#textPost [name='add_email']"),m;if(!e){dojo.query("#text_email_error").style("display","block");dojo.query("#textPost input.suggest_text_box").onkeydown(function(q){dojo.query("#text_email_error").style("display","none");});return;}else{if(!k){dojo.query("#text_title_error").style("display","block");dojo.query("#text_title").onkeydown(function(q){dojo.query("#text_title_error").style("display","none");});return;}else{if(!l){console.log("3");dojo.query("tr.happened .date_error").style("display","block");dojo.query("tr.happened input").onkeydown(function(q){dojo.query("tr.happened .date_error").style("display","none");});return;}}}b._setWaitingState();dojo.io.iframe.send({form:dojo.byId("textPost"),handleAs:"application/json",content:{increment:this.callCount++,fileFields:""},handle:function(q){b._clearWaitingState();q=dojo.fromJson(q);if(q.status==0){m=b._constructMemoir(q.result);b._clear();b._showMemoir(m);if(g){dojo.publish("editPhotos",[m]);}dojo.publish("memoirAdded",[m]);}else{if(q.status==-2){dojo.query("tr.happened .date_error").style("display","block");dojo.query("tr.happened input").onkeydown(function(r){dojo.query("tr.happened .date_error").style("display","none");});}}dojo.publish("logEvent",["/lb/blob/new"]);}});},_constructMemoir:function(a){var h=a,d=a.people,e=this.timeline.obj.timeline,f=e?e.getObj():undefined,g=(e==undefined),c=e?e.manager:undefined,b;h.id=a.id;h.title=a.title;h.happened=Date.parseDate(a.happened,DP[1]);h.updated=Date.parseDate(a.updated,DP[1]);h.visibility=a.visibility;h.tags=a.tags;h.desc=a.desc;h.created=a.created;h.photo=a.photo;h.video=a.video;if(window.FB&&window.FB.Connect&&FB.Connect.get_loggedInUser()&&FB.Connect.get_loggedInUser()!=""){h.fbPublish=true;}if(d){for(b=0;b<d.length;b++){if(d[b].id==a.created.by){h.created.by_person=d[b];break;}}}c.addMemoir(h);return h;},_showMemoir:function(b){var a=this.timeline.obj.timeline;a.redraw({zoom:true,id:b.id,max:true,at:b.happened.dateFormat(DP[1])});}});function EditPostControl(){this.initialize=function(a){};this.getName=function(){return"Edit Post";};}dojo.declare("PlaceSuggestControl",PageControl,{constructor:function(){this.isSelecting=false;},initialize:function(){var a=".pcs";this.ht=a+" .ht";this.he=a+" .he";this.ac=a+" .ac";this.pi=a+" input";this._show();},_ps:function(){dojo.query(this.ac).forEach("item.innerHTML=''");},_h:function(a){dojo.query(a).addClass("hidden");},_s:function(a){dojo.query(a).removeClass("hidden");},_se:function(){var a=this;a._ps();a._s(a.ht);a._h(a.he);},_serr:function(){var a=this;a._ps();a._h(a.ht);a._s(a.he);},_cl:function(){var a=this;a._ps();a._h(a.ht);a._h(a.he);},_ts:function(){var a=this;dojo.query(this.ac+" li.selected").forEach(function(b){dojo.query(a.pi).forEach(function(d){var c=dojo.attr(b,"pname"),f=dojo.attr(b,"country"),e=(c+", "+f);d.value=e;dojo.byId("placeId").value=dojo.attr(b,"pid");dojo.byId("placeName").value=e;a._ps();});});},selectUp:function(){var a="selected";dojo.query(this.ac+" li").forEach(function(d,c,b){if(c>0&&dojo.hasClass(d,a)){dojo.removeClass(d,a);dojo.addClass(b[c-1],a);}});},selectDown:function(){var a="selected";dojo.query(this.ac+" li."+a).forEach(function(b){dojo.query(" + li",b).forEach(function(c){dojo.removeClass(b,a);dojo.addClass(c,a);});});},_show:function(){var f,b=this,e="Start typing a place name",d,c,a;dojo.query(b.ac).onmouseover(function(g){b.isSelecting=true;}).onmouseout(function(g){b.isSelecting=false;});dojo.query(b.pi).onfocus(function(g){d=g.currentTarget;b._se();if(d.value==e){d.value="";}}).onblur(function(g){if(b.isSelecting){b._ts();}d=g.currentTarget;c=d.value;a=dojo.byId("placeName");if(a.value!=c||c==""){d.value=e;dojo.byId("placeId").value="";a.value="";}b._cl();}).onkeyup(function(h){var m=h.keyCode,l=false,k=h.currentTarget,g;if((m>=48&&m<=57)||(m>=65&&m<=90)||m==8||m==46||m==118||m==222||m==32){l=true;}if(!l){return;}dojo.attr(k,"pid","0");g=dojo.trim(k.value);if(g.length<=1){return;}clearTimeout(f);f=setTimeout(function(){dojo.addClass(k,"spinner");API_SVC.searchLocation(g+"*",5).addCallback(b,"_pr");clearTimeout(f);},450);}).onkeydown(function(g){var h=g.keyCode;if(h==13){b._ts();b._ps();dojo.stopEvent(g);}else{if(h==27){b._cl();dojo.stopEvent(g);}else{if(h==9){b._ts();b._ps();}else{if(h==38){b.selectUp();}else{if(h==40){b.selectDown();}}}}}});},_pr:function(a){var b=this;dojo.query(b.pi).forEach(function(c){dojo.query(b.ac).forEach(function(o){dojo.removeClass(c,"spinner");if(a.stat!="ok"){return;}var p=a.result,k=p.length,l=dojo.byId("placeId"),h=dojo.byId("placeName"),f=["<ul>"],e={},g,d;if(p.length==0){o.innerHTML="";b._serr();l.value="";h.value="";return;}else{b._cl();l.value="";h.value="";}for(g=0;g!=k;g++){d=p[g];var m=d.name+"_"+d.country;e[m]=true;}for(g=0;g!=k;g++){d=p[g];f.push("<li ",((g==0)?"class='selected'":""),"lat='",d.lat,"' lng='",d.lng,"' pid='",d.id,"' pname='",d.name,"' region='",d.region,"' country='",d.country,"' displayName='",d.displayName,"' >");var m=d.name+"_"+d.country;if(e[m]){f.push(d.name,", ",d.region,", ",d.country,"</li>");}else{f.push(d.name,", ",d.country,"</li>");e[m]=true;}}f.push("</ul>");o.innerHTML=f.join("");dojo.query("li",o).onmouseover(function(q){var r="selected";dojo.query("li",o).removeClass(r);dojo.addClass(q.currentTarget,r);}).onclick(function(q){o.innerHTML="";var t=q.currentTarget,r=dojo.attr(t,"pname"),v=dojo.attr(t,"country"),u=(r+", "+v);dojo.byId("placeId").value=dojo.attr(t,"pid");dojo.byId("placeName").value=u;c.value=u;dojo.stopEvent(q);});});});},getName:function(){return"Place Suggest Control";}});dojo.declare("StreamControl",PageControl,{initialize:function(e){var d=this,f=e.obj,b={NEWSFEED:0,ACTIVITY:1,LIKES:2,LEADERBOARD:3,RIVERVIEW:4,DISCUSSIONS:5},a={},c=false,g;d.timeline=f.timeline;d.embed=e.embed;d.sort=e.sort;d.searchTerm=e.searchTerm;if(f.trackUrl){d.trackUrl=f.trackUrl.replace(new RegExp("(.*)([0-9]?)\\?src=.*"),"$1").replace(new RegExp("(.*)/[0-9]+"),"$1");}d.obj=f;d.timelineId=f.id;d.timelineType=(f.type==TOPIC_TYPE)?4:((f.type==PLACE_TYPE)?2:((f.type==TAG_TYPE)?3:((f.type==DERIVED_TYPE)?5:1)));d.loggedUser=LB.getUser();d.feedTypes=b;dojo.query(".activity_stream").forEach(function(k){var h=dojo.attr(k,"attr"),m=dojo.attr(k,"active"),l=k;if(h=="nf"){a[b.NEWSFEED]=k;if(m){d.selectedFeed=b.NEWSFEED;}}else{if(h=="ls"){a[b.ACTIVITY]=k;if(m){d.selectedFeed=b.ACTIVITY;}}else{if(h=="lc"){a[b.LIKES]=k;if(m){d.selectedFeed=b.LIKES;}}else{if(h=="rv"){a[b.RIVERVIEW]=k;c=true;if(m){d.selectedFeed=b.RIVERVIEW;}}else{if(h=="ds"){a[b.DISCUSSIONS]=k;c=true;if(m){d.selectedFeed=b.DISCUSSIONS;}l=k.parentNode;}}}}}dojo.connect(l,"onclick",d,"_clickHandlers");});if(c){dojo.connect(window.document,"onscroll",d,"_scrollHandler");}d.nodes=a;d.isOwnTimeline=false;if(f.type==PERSON_TYPE&&d.loggedUser.person.id==f.id){d.isOwnTimeline=true;}else{if(f.type==TOPIC_TYPE&&f.contest){d.selectedFeed=b.LEADERBOARD;}}dojo.subscribe("memoirAdded",d,"_addMemoirToTop");dojo.subscribe("shortAdded",d,"_addShortToTop");dojo.subscribe("feedType",d,"_feed");},_feed:function(k,h,m){var f=this,b=f.nodes,p=f.feedTypes,c=f.selectedFeed,a=p.ACTIVITY,l=p.NEWSFEED,q=p.LIKES,e=p.DISCUSSIONS,g='<div class="loading"><img src="http://cdn2.lifeblob.com/lifeblob/img/theme-gray/spinners/scaler_blue.vd641b3.gif"/></div>',d="_rebuildActivityPage";switch(k){case"lifestream":if(c==a){if(h){if(h=="status"){f._addStatusToAs(m);}else{f._addMemoirToAs(m);}}return;}f.selectedFeed=a;for(var o in b){if(o!=a){b[o].innerHTML=g;}}API_SVC.getStreamStories(f.timelineId,f.timelineType,1).addCallback(f,d,{feedType:a,createPagination:true,extraKey:h,extraValue:m});break;case"newsfeed":if(c==l){return;}f.selectedFeed=l;for(var o in b){if(o!=l){b[o].innerHTML=g;}}API_SVC.getNewsfeed(1).addCallback(f,d,{feedType:l,createPagination:true});break;case"likecomment":if(c==q){return;}f.selectedFeed=q;for(var o in b){if(o!=q){b[o].innerHTML=g;}}API_SVC.getLikesfeed(f.timelineId,1).addCallback(f,d,{feedType:q,createPagination:true});break;case"discussions":if(c==e){return;}f.selectedFeed=e;for(var o in b){if(o!=e){b[o].innerHTML=g;}}API_SVC.getDiscussionFeed(f.timelineId,f.timelineType,1).addCallback(f,d,{feedType:e,createPagination:true});break;default:break;}dojo.publish("logAjaxEvent",["social","feed-choose",k]);},_rebuildActivityPage:function(c,d){if(d.stat!="ok"){console.log("Error. Code:"+d.code+" Desc:"+d.desc);return;}var a=this,o=a.feedTypes,k=c.feedType,q=a.nodes[k],r=d.result,h=r.total,g=r.page,f=dojo.trim(r.html),p=(g<=(h-1));a.fetching=false;if(c.createPagination){q.innerHTML='<div class="clearall" style="padding-top:4px"><a action="sm_'+k+":"+(g+1)+'2" href="javascript:void(0)" class="pagination">show more<img class="hidden" align="absmiddle" src="http://cdn1.lifeblob.com/lifeblob/img/theme-gray/spinners/spinner-16-blue.vb00628.gif"/></a></div>';}if(h==0){f=["<div class='nostream'>"];switch(k){case o.NEWSFEED:f.push("No friend activities to show. Add more friend or follow groups");break;case o.ACTIVITY:f.push("No user activities to show");break;case o.LIKES:f.push("No user likes or comments to show");break;case o.DISCUSSIONS:f.push("No discussions to show");break;}f.push("</div>");f=f.join("");}dojo.query(".pagination",q).forEach(function(v){if(p){var t=dojo.query(".activity_stream_entry",v.parentNode.parentNode);if(t&&t.length>0){var u=t[t.length-1];dojo.removeClass(u,"noborder");t=null;u=null;}}dojo.place(f,v.parentNode,"before");if(p){dojo.attr(v,"action","sm_"+k+":"+(g+1));}else{dojo.addClass(v.parentNode,"hidden");}dojo.attr(v,"fetching",false);dojo.query("img",v).addClass("hidden");if(h==0){dojo.addClass(v,"hidden");}});var b=c.extraKey,l=c.extraValue;if(b){if(b=="status"){this._addStatusToAs(l);}else{this._addMemoirToAs(l);}}if(c.infinitescroll){var e=dojo.byId("scroll_status"),m=parseInt((g/h)*100);if(g<h){e.innerHTML=["loaded ",m,"% of all photos"].join("");}else{dojo.query(".scroll_status").orphan();dojo.query(".pagination",q).orphan();}}if(c.scroll){window.scrollTo(0,341);}},selectTab:function(a,c,d){var b=this;dojo.query(".timeline_tab").forEach(function(f){var e=dojo.attr(f,"tTab");if(e!=a){dojo.removeClass(f,"selected_timeline_tab");}else{dojo.addClass(f,"selected_timeline_tab");b._feed(e,c,d);}});dojo.query("[tTabContent]").forEach(function(f){var e=dojo.attr(f,"tTabContent");if(e==a){dojo.removeClass(f,"hidden");}else{dojo.addClass(f,"hidden");}});},_addMemoirToTop:function(a){this.selectTab("lifestream","memoir",a);},_addShortToTop:function(a){this.selectTab("lifestream","status",a);},_addMemoirToAs:function(c){var b=this,a=b.nodes.ACTIVITY;ut.highlightNode(a.getElementsByTagName("div")[0],1000);},_addStatusToAs:function(d){var a=this,l=a.nodes.ACTIVITY,g=a.isOwnTimeline,k=g?d.status:d.comment,c=a.loggedUser,e=c.person,b,f;if(dojo.byId("s_"+d.aid)){return;}var b=dojo.create("div",{"class":"activity_stream_entry",id:"s_"+d.aid},l,"first");f=['<div class="first_as"><a href="/user/',c.displayName,'"><img class="pic" src="',ut.getProfileURL(e,"large",PERSON_TYPE),'"/></a></div>','<div class="second_as"><div class="line fl"><a class="name" href="/user/',c.displayName,'">',e.name,"</a> ",k,"</div>",'<div class="remove fr hidden"><a action="rm_',d.aid,'" class="activity_comment_delete" title="Remove Status"></a></div>','<div class="links"><span>',M.JUST_NOW,"</span>",'<a action="sc_',d.aid,'" href="javascript:void(0)" class="link">Comment</a>','<a action="like_',d.aid,'" href="javascript:void(0)" class="link">Like</a>',"</div>",'<div class="activity_holder hidden">','<div class="likes hidden">like this</div>','<div class="comments no_likes">','<div class="new_activity_comment">','<textarea action="sc_',d.aid,'">Write a comment...</textarea>','<a action="pc_',d.aid,'" class="gray_rounded_button as_comment_post">Comment</a>','<span class="spinner"></span>',"</div>","</div>","</div>","</div>"].join("");b.innerHTML=f;ut.highlightNode(b,1000);},_scrollHandler:function(m){var e=this,l=e.feedTypes,g=l.RIVERVIEW,d=e.selectedFeed,b=e.nodes,o=dijit.getViewport(),h=o.t,a=o.h,c=o.w,p=document.documentElement.scrollHeight,k=0;if(p==0){return;}k=(p-a)-h;if(k<2400&&!e.fetching){if(d==g){var f=dojo.query(".pagination",b[g]);if(f.length){e._showMore(g,parseInt(f.attr("action")[0].split(":")[1]));}}}},_showMore:function(b,f){var e=this,d=e.timelineId,g=e.timelineType,c=e.feedTypes,a="_rebuildActivityPage";if(!e.fetching){e.fetching=true;switch(b){case c.NEWSFEED:API_SVC.getNewsfeed(f).addCallback(e,a,{feedType:b});break;case c.ACTIVITY:API_SVC.getStreamStories(d,g,f).addCallback(e,a,{feedType:b});break;case c.LIKES:API_SVC.getLikesfeed(d,f).addCallback(e,a,{feedType:b});break;case c.DISCUSSIONS:API_SVC.getDiscussionFeed(d,g,f).addCallback(e,a,{feedType:b});break;case c.RIVERVIEW:if(e.searchTerm){API_SVC.getSearchRiverView(e.searchTerm,f).addCallback(e,a,{feedType:b,infinitescroll:true});}else{API_SVC.getRiverView(d,g,f,e.embed,e.sort).addCallback(e,a,{feedType:b,infinitescroll:true});}break;}}dojo.publish("logEvent",[e.trackUrl+"/"+f]);},_clickHandlers:function(v){var H=this,J=H.feedTypes,y=v.target,F=H.loggedUser.person,E=(F.id==-1),D=(window.FB&&window.FB.Connect&&FB.Connect.get_loggedInUser()&&FB.Connect.get_loggedInUser()!=""),u=dojo.attr(y,"action"),w=(u?u.split("_"):[]),e=w[0],d=w[1],m=H.timelineId,G=H.timelineType,k,r,g,x,C,P,h,f,l,c,z,B,p,b,O,o,L,K,x,I;H.isFbLogged=D;if(d){k=d.split(":");r=k[0];}console.log("action["+e+"]  other["+d+"]");switch(e){case"postDiscussion":dojo.stopEvent(v);if(dojo.attr(y,"posting")){return;}var a=dojo.query("textarea.msg",y.parentNode)[0];I=a.value;if(I==""||I=="Start a new discussion..."){return;}dojo.attr(y,"posting",true);dojo.query(".l",y.parentNode).removeClass("hidden");API_SVC.addDiscussion(m,G,I).addCallback(function(R){if(R.stat!="ok"){}else{var Q=R.result,S=Q.discussion,T=[],U;B=H.nodes[H.feedTypes.DISCUSSIONS];U=dojo.create("div",{"class":"activity_stream_entry",id:"s_"+S.id,style:{height:"auto",display:"none"}},B,"first");T=['<div class="first_as"><a href="/user/',F.displayName,'?src=df"><img class="pic" src="',ut.getProfileURL(F,"large",PERSON_TYPE),'"/></a></div>','<div class="second_as">','<div class="line"><a class="name" href="/user/',F.displayName,'?src=df">',F.name,'</a><span class="dis">',S.comment,"</span> ",' <span class="date">',M.JUST_NOW,"</span> ",' <a class="delete" title="Delete Discussion" action="dd_',S.id,'">&nbsp</a></div>','<table class="pht"><tr><td class="sc">','<div class="activity_holder"><div class="comments no_likes"><div class="new_activity_comment">','<div class="ncl"><a href="/user/',F.displayName,'?src=df"><img class="cpic" src="',ut.getProfileURL(F,"medium",PERSON_TYPE),'"/></a></div>','<div class="ncr"><textarea action="sc_',S.id,'">',M.STREAM_NEW_DISCUSS,'</textarea><input type="submit" value="Comment" class="as_comment_post" action="dcp_',S.activityId,":",S.id,':df"/><span class="spinner"></span></div>','<div class="clearall"></div>',"</div></div></div>","</td></tr></table>","</div>"].join("");U.innerHTML=T;a.value=M.STREAM_START_DISCUSS;dojo.removeClass(a,"ed");dojo.fx.wipeIn({node:U}).play();dojo.query(".nostream",B).addClass("hidden");}dojo.attr(y,"posting",false);dojo.query(".l",y.parentNode).addClass("hidden");});dojo.attr(y,"fetching",false);break;case"discMsg":dojo.addClass(y,"ed");if(y.value==M.STREAM_START_DISCUSS){y.value="";}y.focus();if(!y.handlers){y.handlers=[];}y.handlers.push(dojo.connect(y,"onblur",H,"_blurTextHandler"));dojo.publish("logAjaxEvent",["social","discuss-start","feed"]);break;case"sm":dojo.stopEvent(v);if(dojo.attr(y,"fetching")){return;}dojo.attr(y,"fetching",true);dojo.query("img",y).removeClass("hidden");L=parseInt(k[0]);h=parseInt(k[1]);H._showMore(L,h);break;case"sals":dojo.stopEvent(v);if(dojo.attr(y,"fetching")){return;}dojo.attr(y,"fetching",true);dojo.query("img",y).removeClass("hidden");h=k[0];API_SVC.getStreamStories(m,G,h).addCallback(H,"_rebuildActivityPage",{feedType:J.ACTIVITY});break;case"sanf":dojo.stopEvent(v);if(dojo.attr(y,"fetching")){return;}dojo.attr(y,"fetching",true);dojo.query("img",y).removeClass("hidden");h=k[0];API_SVC.getNewsfeed(h).addCallback(H,"_rebuildActivityPage",{feedType:J.NEWSFEED});break;case"sb":dojo.stopEvent(v);b=d.split("#");r=b[0];g=b[1];l=b[2];H.timeline.redraw({at:l,id:g,refresh:true,max:true,zoom:true});break;case"vtp":b=d.split("#");var t=b[0],A=parseInt(dojo.attr(y,"votes"));g=b[1];l=b[2];API_SVC.likePhoto(g,t);dojo.addClass(y,"voted");dojo.removeAttr(y,"action");A++;if(dojo.hasClass(y,"toppervote")){y.innerHTML="Voted ("+A+")";}else{y.innerHTML=""+A;}dojo.attr(y,"votes",A);dojo.attr(y,"title","You have voted this photo");dojo.publish("logAjaxEvent",["social","photo-vote","contest-leaderboard"]);break;case"aa":L=k[1];g=k[2];API_SVC.fetchDetails({memoirIds:[g]}).addCallback(function(Q){if(Q.stat!="ok"){console.log("Error. Code:"+Q.code+" Desc:"+Q.desc);return;}dojo.query("#s_"+r+" .rel").forEach(function(R){H._renderRelations(R,L,Q.result);});});dojo.publish("logAjaxEvent",["social","show-all-relations",L]);break;case"sc":dojo.query("#s_"+r+" .activity_holder").addClass("editing").removeClass("hidden").forEach(function(Q){dojo.query("textarea",Q).forEach(function(R){if(R.value==M.STREAM_NEW_COMMENT||R.value==M.STREAM_NEW_DISCUSS){R.value="";}R.focus();if(!R.handlers){R.handlers=[];}R.handlers.push(dojo.connect(R,"onblur",H,"_blurHandlers"));});});dojo.publish("logAjaxEvent",["social","comment-start","feed"]);break;case"pc":L=k[1];g=k[2];dojo.query("#s_"+r+" .activity_holder .new_activity_comment").forEach(function(Q){if(!dojo.hasClass(Q,"waiting")){dojo.addClass(Q,"waiting");dojo.query("textarea",Q).forEach(function(R){var S=R.value;if(S&&S!=""){b={aid:r,mid:g,feedType:L};API_SVC.addStreamStoryComment(r,S,g,D).addCallback(H,"_onPostComment",b);}});}});dojo.publish("logAjaxEvent",["social","comment-post","feed"]);break;case"pcp":var t=k[0];r=k[1];g=k[2];L=k[3];if(E){var q="comment/stream-"+L,N=dojo.hitch(H,function(){H._postPhotoComment(t,r,g,L);});dojo.publish("quickAccount",[q,N,"Your comment has been added to the photo."]);return;}H._postPhotoComment(t,r,g,L);dojo.publish("logAjaxEvent",["social","comment-photo-post",L]);break;case"dcp":r=k[0];K=k[1];L=k[2];if(E){var q="discussion-comment/stream-"+L,N=dojo.hitch(H,function(){H._postDiscussionComment(r,K,L);});dojo.publish("quickAccount",[q,N,"Your comment has been added to the discussion."]);return;}H._postDiscussionComment(r,K,L);dojo.publish("logAjaxEvent",["social","comment-discussion-post",L]);break;case"dc":if(confirm("Are you sure you want to remove this comment?")){cid=k[1];g=k[2];dojo.fx.wipeOut({node:"ac_"+cid}).play();API_SVC.removeStreamStoryComment(r,cid,g);dojo.publish("logAjaxEvent",["social","comment-delete","feed"]);}break;case"dcd":if(confirm("Are you sure you want to remove this comment?")){K=k[0],x=k[1];dojo.fx.wipeOut({node:"ac_"+x}).play();API_SVC.removeDiscussionComment(K,x);dojo.publish("logAjaxEvent",["social","discussion-comment-delete","feed"]);}break;case"dd":if(confirm("Are you sure you want to remove this discussion?")){K=k[0];dojo.fx.wipeOut({node:"s_"+K}).play();API_SVC.removeDiscussion(K);dojo.publish("logAjaxEvent",["social","discussion-delete","feed"]);}break;case"ac":L=k[1];g=k[2];owner=k[3];b={aid:r,mid:g,owner:owner,feedType:L};API_SVC.getStreamStoryComments(r,g).addCallback(H,"_fetchComments",b);dojo.publish("logAjaxEvent",["social","show-all-comments",L]);break;case"apc":var t=k[0];r=k[1];g=k[2];L=k[3];owner=k[4];b={aid:r,mid:g,photoId:t,owner:owner,feedType:L};API_SVC.getPhotoComments(g,t).addCallback(H,"_fetchComments",b);dojo.publish("logAjaxEvent",["social","show-all-photo-comments",L]);break;case"adc":r=k[0],K=k[1];L=k[2];owner=k[3];b={aid:r,discussionId:K,owner:owner,feedType:L};API_SVC.getDiscussionComments(K).addCallback(H,"_fetchComments",b);dojo.publish("logAjaxEvent",["social","show-all-discussion-comments",L]);break;case"lp":var t=k[0];r=k[1];g=k[2];L=k[3];if(E){var q="like/stream-"+L,N=dojo.hitch(H,function(){API_SVC.likePhoto(g,t,true).addCallback(H,"_onPhotoLikeActivity",true,g,t,r,L);});dojo.publish("quickAccount",[q,N,"Your like has been added to the photo."]);return;}API_SVC.likePhoto(g,t,true).addCallback(H,"_onPhotoLikeActivity",true,g,t,r,L);dojo.publish("logAjaxEvent",["social","photo-like",L]);break;case"ulp":var t=k[0];r=k[1];g=k[2];L=k[3];API_SVC.unlikePhoto(g,t,true).addCallback(H,"_onPhotoLikeActivity",false,g,t,r,L);dojo.publish("logAjaxEvent",["social","photo-unlike",L]);break;case"like":L=k[1];g=k[2];API_SVC.likeStreamStory(r,g).addCallback(H,"_onLikeActivity",true,r,u,L);dojo.publish("logAjaxEvent",["social","story-like",L]);break;case"unlike":L=k[1];g=k[2];API_SVC.unlikeStreamStory(r,g).addCallback(H,"_onLikeActivity",false,r,u,L);dojo.publish("logAjaxEvent",["social","story-unlike",L]);break;case"al":L=k[1];g=k[2];API_SVC.getStreamStoryLikes(r,g).addCallback(function(Q){if(Q.stat!="ok"){console.log("Error. Code:"+Q.code+" Desc:"+Q.desc);return;}dojo.query("#s_"+r+" .activity_holder .likes").forEach(function(R){H._renderLikes(R,L,Q.result);});});dojo.publish("logAjaxEvent",["social","show-all-likes",L]);break;case"apl":var t=k[0];r=k[1];g=k[2];L=k[3];API_SVC.getPhotoLikes(g,t).addCallback(function(Q){if(Q.stat!="ok"){console.log("Error. Code:"+Q.code+" Desc:"+Q.desc);return;}dojo.query("#s_"+t+" .activity_holder .likes").forEach(function(R){H._renderLikes(R,L,Q.result);});});dojo.publish("logAjaxEvent",["social","show-all-likes",L]);break;case"join":o=k[1];API_SVC.requestContribution(o).addCallback(H,"_onJoin",r);dojo.publish("logAjaxEvent",["social","join-topic","feed"]);break;case"pfollow":C=k[1];API_SVC.followUser(C).addCallback(H,"_onFollow",r,"user");dojo.publish("logAjaxEvent",["social","follow-person","feed"]);break;case"ma":API_SVC.getStreamStories(m,G,1).addCallback(H,"_rebuildActivityPage",{scroll:true,feedType:J.ACTIVITY,createPagination:true});dojo.publish("logAjaxEvent",["social","show-more-activities",L]);break;}},_postPhotoComment:function(b,e,c,a){var d=this;dojo.query("#s_"+b+" .activity_holder .new_activity_comment").forEach(function(f){if(!dojo.hasClass(f,"waiting")){dojo.addClass(f,"waiting");dojo.query("textarea",f).forEach(function(g){var h=g.value;if(h&&h!=""){API_SVC.addPhotoComment(c,b,h).addCallback(d,"_onPostComment",{aid:e,mid:c,photoId:b,feedType:a});}});}});},_postDiscussionComment:function(d,a,b){var c=this;dojo.query("#s_"+a+" .activity_holder .new_activity_comment").forEach(function(e){if(!dojo.hasClass(e,"waiting")){dojo.addClass(e,"waiting");dojo.query("textarea",e).forEach(function(f){var g=f.value;if(g&&g!=""){API_SVC.addDiscussionComment(a,g).addCallback(c,"_onPostComment",{aid:d,discussionId:a,feedType:b});}});}});},_onJoin:function(e,a){var c=this,b,f;dojo.query("#s_"+e).forEach(function(d){dojo.query(".links span.join",d).forEach(function(g){if(a.stat!="ok"){if(a.code==99){g.innerHTML=M.ALEADY_PENDING;}else{if(a.code==301){g.innerHTML=M.ALEADY_MEMBER;}else{console.log("Error. Code:"+a.code+" Desc:"+a.desc);}}return;}g.innerHTML=M.ALEADY_PENDING;});});},_onFollow:function(f,b,a){var e=this,c,g;dojo.query("#s_"+f).forEach(function(d){dojo.query(".links span.follow",d).forEach(function(h){if(a.stat!="ok"){if(a.code==108){h.innerHTML=M.ALEADY_FOLLOW;}else{console.log("Error. Code:"+a.code+" Desc:"+a.desc);}return;}h.innerHTML=M.FOLLOW_ON;});});},_blurHandlers:function(b){var g=this,f=b.target,e=f.handlers,k,d;if(f.type=="textarea"){d=f.value!="";dojo.attr(f,"dirty",d);var a=dojo.attr(f,"action").split("_")[1];others=a.split(":"),aid=others[0];if(!d){if(g.selectedFeed=g.feedTypes.DISCUSSIONS){f.value=M.STREAM_NEW_DISCUSS;}else{f.value=M.STREAM_NEW_COMMENT;}dojo.query("#s_"+aid+" .activity_holder").removeClass("editing");}for(k in e){dojo.disconnect(e[k]);}f.handlers=[];}},_blurTextHandler:function(a){var f=this,e=a.target,d=e.handlers,g,b;if(e.type=="textarea"){b=e.value!="";dojo.attr(e,"dirty",b);if(!b){e.value=M.STREAM_START_DISCUSS;dojo.removeClass(e,"ed");}for(g in d){dojo.disconnect(d[g]);}e.handlers=[];}},_onPostComment:function(f,g){var c=this,p,l;if(g.stat!="ok"){console.log("Error. Code:"+g.code+" Desc:"+g.desc);return;}var r=g.result,h=r.comment,e=r.extra,b=f.aid,o=f.mid,a=f.photoId,q=f.discussionId,m=f.feedType,k=a?c._newCommentStyle:c._newComment;if(q){k=c._discussionCommentStyle;}dojo.query("#s_"+(a||q||b)).forEach(function(d){dojo.query(".activity_holder .comments",d).forEach(function(u){dojo.removeClass(u.parentNode,"hidden");dojo.removeClass(u.parentNode,"editing");var t=document.createElement("div");dojo.addClass(t,"activity_comment");t.innerHTML=k(b,c.loggedUser.person,h,m,true,(o||q));t.id="ac_"+h.id;dojo.query(".new_activity_comment",u).removeClass("waiting").forEach(function(v){u.insertBefore(t,v);});dojo.query("textarea",u).forEach(function(v){if(c.selectedFeed=c.feedTypes.DISCUSSIONS){v.value=M.STREAM_NEW_DISCUSS;}else{v.value=M.STREAM_NEW_COMMENT;}dojo.attr(u,"dirty",false);});});});},_getEntryJson:function(g){var f=['{"visibility": ',g.visibility,', "at": "',g.happened,'", "title": "',ut.escapeHTML(g.title),'"'],a=[],e,c,b=0;if(g.photos||g.videos){if(g.photos){for(c=0;c<g.photos.length&&b<4;c++,b++){a.push('"'+ut.getImageURL(g.photos[c].loc,100,100,g.id)+'"');}}if(g.videos){for(c=0;c<g.videos.length&&b<4;c++,b++){a.push('"'+g.videos[c].loc+'"');}}f.push(', "photos": [',a.join(","),"]");}f.push("}");return f.join("");},_fetchComments:function(t,b){var f=this;if(b.stat!="ok"){console.log("Error. Code:"+b.code+" Desc:"+b.desc);return;}var m=b.result,k=m.comments,w=k.length,e=m.people,g=t.aid,u=t.mid,l=t.photoId,o=t.discussionId,a=t.owner,v=t.feedType,q={},r=f.loggedUser.person.id,h,c,d;for(h=0;h<e.length;h++){q[e[h].id]=e[h];}dojo.query("#s_"+(l||o||g)).forEach(function(p){dojo.query(".comments",p).forEach(function(y){dojo.query(".new_activity_comment",y).forEach(function(D){d=D;});dojo.query(".comments .activity_comment",p).orphan();for(h=0;h!=w;h++){c=k[h];var x=q[c.creator_person];if(!x){continue;}var C=(c.creator_person==r),B=(a&&a==r),z=document.createElement("div"),A=l?f._newCommentStyle:f._newComment;if(o){A=f._discussionCommentStyle;}dojo.addClass(z,"activity_comment");z.innerHTML=A(g,q[c.creator_person],c,v,(C||B),(u||o));z.id="ac_"+c.id;y.insertBefore(z,d);}});});d=null;},_onLikeActivity:function(a,b,d,k,e){var c=this;if(e.stat!="ok"){console.log("Error. Code:"+e.code+" Desc:"+e.desc);return;}var f=e.result,g=d?d.split("_"):[],h=g[1];dojo.query("#s_"+b).forEach(function(o){var m=c.loggedUser.person,l=m.displayName;if(a){dojo.query(".activity_holder",o).removeClass("hidden").forEach(function(p){dojo.query(".likes",p).forEach(function(q){c._renderLikes(q,k,f);});});}else{dojo.query(".likes",o).forEach(function(p){c._renderLikes(p,k,f);});}dojo.query("a[action='"+d+"']",o).forEach(function(p){p.innerHTML=a?M.UNLIKE:M.LIKE;dojo.attr(p,"action",(a?"unlike_":"like_")+h);});});},_onPhotoLikeActivity:function(b,p,c,d,l,f){var e=this,g=f.result,a=e.loggedUser.person,m=a.displayName,o=c+":"+d+":"+p+":"+l,q="lp_"+o,k="ulp_"+o,h=b?k:q;if(f.stat!="ok"){console.log("Error. Code:"+f.code+" Desc:"+f.desc);return;}dojo.query("#s_"+c).forEach(function(r){if(b){dojo.query(".activity_holder",r).removeClass("hidden").forEach(function(t){dojo.query(".likes",t).forEach(function(u){e._renderLikes(u,l,g);});});}else{dojo.query(".likes",r).forEach(function(t){e._renderLikes(t,l,g);});}dojo.query(".lp *",r).attr("action",h);dojo.query(".lp .txt",r).forEach("item.innerHTML='"+(b?"Liked":M.LIKE)+"'");dojo.query(".lp .img",r).forEach(function(t){t.src=b?"http://cdn3.lifeblob.com/lifeblob/img/timeline/maxblob/like_off.v644ee4.png":"http://cdn0.lifeblob.com/lifeblob/img/timeline/maxblob/like_on.vc88ea3.png";});});},_renderLikes:function(e,a,b){var d=[],c,f,g=b.length;for(c=0;c<g;c++){f=b[c];d.push("<a class='activity_like_person' href='/user/",f.displayName,"?src=",a,"'>",f.name.split(" ")[0],"</a>");if(c==g-2){d.push(" and ");}else{if(c<g-2){d.push(", ");}}}d.push(g>1?" like this":" likes this");e.innerHTML=d.join("");if(g==0){dojo.addClass(e,"hidden");dojo.query(".comments",e.parentNode).addClass("no_likes");}else{dojo.removeClass(e,"hidden");dojo.query(".comments",e.parentNode).removeClass("no_likes");}},_renderRelations:function(c,m,e){var p=e[0],h=[],r=p.people,a=p.topics,f=p.place,q=p.tags,o=(r?r.length:0)+(a?a.length:0)+(q?q.length:0)+(f?1:0),k=0,g,b,l;k=this._showRelations(r,"user",o,k,h,m);k=this._showRelations(a,"topic",o,k,h,m);if(f){k=this._showRelations([f],"place",o,k,h,m);}k=this._showRelations(q,"tag",o,k,h,m);c.innerHTML="Connected to: "+h.join("");},_showRelations:function(b,e,f,g,c,a){if(b){var k=b.length,h;for(i=0;i<k;i++){h=b[i];c.push("<a class='rel_link' href='/",e,"/",h.displayName,"?src=",a,"'>",h.name,"</a>");if(g==f-2){c.push(" and ");}else{if(g<f-2){c.push(", ");}}g++;}}return g;},_newComment:function(f,b,g,a,e){var d=["<pre>",g.comment,"</pre> - "];if(b){d.push('<a href="/user/',b.displayName,"?src=",a,'">',b.name,"</a>");}else{d.push('<a href="javscript:void(0)">Deleted User</a>');}d.push('<span class="date">',Date.parseDate(g.created_at,DP[1],true).pretty(),"</span>");if(e){d.push('<a title="Delete Comment" class="delete" action="dc_',f,":",g.id,'"></a>');}return d.join("");},_newCommentStyle:function(g,d,h,a,f,b){var e=["<div class='fcc'><a href='/user/",d.displayName,"?src=",a,"'><img class='cpic' alt='",d.name,"' src='",ut.getProfileURL({id:d.id,pic:d.pic},"medium",PERSON_TYPE),"'/></a></div><div class='scc'><pre>",h.comment,"</pre><div>"];if(d){e.push('<a href="/user/',d.displayName,"?src=",a,'">',d.name,"</a>");}else{e.push('<a href="javscript:void(0)">Deleted User</a>');}e.push('<span class="date">',Date.parseDate(h.created_at,DP[1],true).pretty(),"</span>");if(f){e.push('<a title="Delete Comment" class="delete" action="dc_',g,":",h.id,":",b,'"></a>');}e.push("</div></div><div class='clearall'></div>");return e.join("");},_discussionCommentStyle:function(g,b,h,a,e,f){var d=["<div class='fcc'><a href='/user/",b.displayName,"?src=",a,"'><img class='cpic' alt='",b.name,"' src='",ut.getProfileURL({id:b.id,pic:b.pic},"medium",PERSON_TYPE),"'/></a></div><div class='scc'><pre>",h.comment,"</pre><div>"];if(b){d.push('<a href="/user/',b.displayName,"?src=",a,'">',b.name,"</a>");}else{d.push('<a href="javscript:void(0)">Deleted User</a>');}d.push('<span class="date">',Date.parseDate(h.created_at,DP[1],true).pretty(),"</span>");if(e){d.push('<a title="Delete Comment" class="delete" action="dcd_',f,":",h.id,'"></a>');}d.push("</div></div><div class='clearall'></div>");return d.join("");}});dojo.require("dojo.NodeList-manipulate");dojo.require("dojo.number");dojo.declare("StorePageUpdater",null,{_initializeTemplate:function(d){dojo.query(".store .page").addClass("hidden");if(d.horizontal){dojo.query(".store .shadow_top").addClass("hidden");dojo.query(".store .shadow_right").removeClass("nobackground");}else{dojo.query(".store .shadow_top").removeClass("hidden");dojo.query(".store .shadow_right").addClass("nobackground");}var a=[],c=d.metadata,f=c.length,b,e;for(b=0;b<f;b++){a.push('<a class="opt ',((b==(f-1))?"optr":""),'" href="javascript:void(0);" action="showpage@',b+1,'">',M[c[b].pageName],"</a>");}e=a.join("");dojo.query(".store .step2_details .theme_h").forEach(function(g){g.innerHTML=e;});dojo.query(".uploadanchor").forEach(function(g){dojo.attr(g,"href","/blob/printnew?templateId="+d.id);});},_initializeTemplateData:function(a,b,d,c){dojo.hitch(this,"_initialize_"+b.type)(a,b,d,c);},_initialize_plain:function(b,c,e,d){var a=c.defaultImage?(e.horizontal?"http://cdn1.lifeblob.com/lifeblob/img/theme-gray/store/plainpreviewhorizontal.v2b30a0.png":"@mg/theme-gray/store/plainpreviewhorizontal.png@"):["http://cdn0.lifeblob.com/lifeblob/img/store/",d,"/preview_",b,".v",e.version,".png"].join("");dojo.query("[page='plain'] .cont").forEach(function(f){var g=new Image();g.onload=function(){dojo.query(".cont").style({width:g.width+"px",height:g.height+"px"});dojo.query(".cont").style({width:g.width+"px",height:g.height+"px"});dojo.create(g,null,f,"only");};g.src=a;});dojo.query("[page='plain']").removeClass("hidden");},_initialize_photoset:function(b,c,e,d,a){dojo.query("[page='photos']").forEach(function(f){var g=new Image();g.onload=function(){dojo.query(".front",f).forEach(function(h){dojo.addClass(g,"behind");dojo.create(g,null,h,"only");});dojo.query(".cont").style({width:g.width+"px",height:g.height+"px"});dojo.query(".back img",f).orphan();dojo.query(".loading",f).addClass("hidden");if(a){a();}};g.src=["http://cdn0.lifeblob.com/lifeblob/img/store/",d,"/preview_",b,".v",e.version,".png"].join("");}).removeClass("hidden");},_initialize_photocaption:function(b,c,f,e,a){var d=this;dojo.query("[page='photocaption']").forEach(function(g){var k=c.caption;dojo.query("[field='4']",g).forEach(function(l){l.innerHTML=k.defaultMessage;dojo.attr(l,{ffamily:k.ffamily,fsize:k.fsize,fcolor:k.fcolor});dojo.style(l,{fontSize:d.captionfontsizes[k.fsize-1],fontFamily:k.ffamily,color:k.fcolor});dojo.removeClass(l.parentNode,"hidden");});var h=new Image();h.onload=function(){dojo.query(".front",g).forEach(function(l){dojo.addClass(h,"behind");dojo.create(h,null,l,"only");});dojo.query(".cont").style({width:h.width+"px",height:h.height+"px"});dojo.query(".back img",g).orphan();dojo.query(".loading",g).addClass("hidden");if(a){a();}};h.src=["http://cdn0.lifeblob.com/lifeblob/img/store/",e,"/preview_",b,".v",f.version,".png"].join("");}).removeClass("hidden");},_initialize_message:function(a,b,e,d){var c=this;dojo.query("[page='text']").forEach(function(g){dojo.query(".preview_img",g).orphan();var h=new Image();h.onload=function(){dojo.query(".preview",g).forEach(function(k){dojo.query(dojo.create(h,null,k,"first")).addClass("preview_img").style("position","absolute");dojo.query(".cont").style({width:h.width+"px",height:h.height+"px"});});};h.src=["http://cdn0.lifeblob.com/lifeblob/img/store/",d,"/preview_",a,".v",e.version,".png"].join("");for(var f=0;f<b.texts.length;f++){text=b.texts[f];if(!text.empty){dojo.query("[field='"+(f+1)+"']",g).forEach(function(k){k.innerHTML=text.defaultMessage;dojo.attr(k,{ffamily:text.ffamily,fsize:text.fsize,fcolor:text.fcolor});dojo.removeClass(k.parentNode,"hidden");});}else{dojo.query("[field='"+(f+1)+"']",g).forEach(function(k){dojo.addClass(k.parentNode,"hidden");});}}node2=dojo.query("[action='setText@1']")[0];dojo.query(".store .grid .font").removeClass("hidden");dojo.query(".previewArea").forEach(function(k){k.value=dojo.trim(node2.innerHTML).replace("<br>","\n");});dojo.query(".selectFontSize").val(dojo.style(node2,"fontSize"));dojo.query(".selectFontFamily").val(dojo.attr(node2,"ff"));dojo.query(".selectFontColor").val(dojo.attr(node2,"fc"));dojo.query(".store .greeting .psel").removeClass("psel");dojo.addClass(node2.parentNode,"psel");c.currentEditField=1;}).removeClass("hidden");},_copyTemplateData:function(a,b){return dojo.hitch(this,"_copy_"+b.type)(a,b);},_copy_plain:function(a,b){return[];},_copy_photoset:function(b,c){var d=[],a=c.photos[0];dojo.query("[page='photos'] .back img").forEach(function(e){d.push({image:e.src,memoirId:parseInt(dojo.attr(e,"memoirId")),photoId:parseInt(dojo.attr(e,"photoId")),scw:parseInt(dojo.coords(e).w),sch:parseInt(dojo.coords(e).h),topY:parseInt((dojo.coords(e).t*(a.required.w))/(a.scaled.w)),topX:parseInt((dojo.coords(e).l*(a.required.w))/(a.scaled.w))});});return d;},_copy_photocaption:function(b,c){var d=[],a=c.photos[0];dojo.query("[page='photocaption'] .back img").forEach(function(e){d.push({image:e.src,memoirId:parseInt(dojo.attr(e,"memoirId")),photoId:parseInt(dojo.attr(e,"photoId")),scw:parseInt(dojo.coords(e).w),sch:parseInt(dojo.coords(e).h),topY:parseInt((dojo.coords(e).t*(a.required.w))/(a.scaled.w)),topX:parseInt((dojo.coords(e).l*(a.required.w))/(a.scaled.w))});});dojo.query("[page='photocaption'] [field='4']").forEach(function(e){d.push({color:dojo.attr(e,"fc"),family:dojo.attr(e,"ffi"),size:dojo.style(e,"fontSize"),message:dojo.trim(e.innerHTML).replace("<br>","\n")});});return d;},_copy_message:function(a,b){var c=[];dojo.query("[page='text']").forEach(function(e){for(var d=0;d<b.texts.length;d++){var f=b.texts[d];if(!f.empty){dojo.query("[field='"+(d+1)+"']",e).forEach(function(g){c.push({color:dojo.attr(g,"fc"),family:dojo.attr(g,"ffi"),size:dojo.style(g,"fontSize"),message:dojo.trim(g.innerHTML).replace("<br>","\n")});});}else{c.push({});}}});return c;},_validateTemplateData:function(b,c,a){return dojo.hitch(this,"_validate_"+a.type)(b,c,a);},_validate_plain:function(b,c,a){return true;},_validate_photoset:function(b,c,a){return true;},_validate_photocaption:function(b,c,a){return true;},_validate_message:function(b,c,a){if(!c||!c.length){return confirm(["You have not added a personalized message on Page",b+1,". Do you want to proceed without adding the message?"].join(""));}return true;},_visitTemplateData:function(a,e,b,d,c){dojo.query(".store .page").addClass("hidden");dojo.hitch(this,"_visit_"+b.type)(a,e,b,d,c);},_visit_plain:function(a,e,b,d,c){this._initialize_plain(a,b,d,c);},_visit_photoset:function(a,e,b,d,c){this._initialize_photoset(a,b,d,c,function(){if(!e||!e.length){return;}var f=b.photos[0];var g=e[0];dojo.query(dojo.create("img",{src:g.image},dojo.query("[page='photos'] .back")[0],"only")).forEach(function(h){dojo.attr(h,{memoirId:g.memoirId,photoId:g.memoirId});dojo.style(h,{top:(g.topY*f.scaled.w)/f.required.w+"px",left:(g.topX*f.scaled.w)/f.required.w+"px",width:g.scw+"px",height:g.sch+"px",position:"absolute"});});});},_visit_message:function(a,e,b,d,c){if(!e||!e.length){this._initialize_message(a,b,d,c);}else{dojo.query("[page='text']").forEach(function(g){dojo.query(".preview_img",g).orphan();var h=new Image();h.onload=function(){dojo.query(".preview",g).forEach(function(k){dojo.query(dojo.create(h,null,k,"first")).addClass("preview_img").style("position","absolute");dojo.query(".cont").style({width:h.width+"px",height:h.height+"px"});});};h.src=["http://cdn0.lifeblob.com/lifeblob/img/store/",c,"/preview_",a,".v",d.version,".png"].join("");for(var f=0;f<e.length;f++){text=e[f];if(text.color){dojo.query("[field='"+(f+1)+"']",g).forEach(function(k){k.innerHTML=text.message;dojo.attr(k,{family:text.ffamily,size:text.fsize,color:text.fcolor});dojo.removeClass(k.parentNode,"hidden");});}else{dojo.query("[field='"+(f+1)+"']",g).forEach(function(k){dojo.addClass(k.parentNode,"hidden");});}}}).removeClass("hidden");}}});dojo.declare("StoreControl",[PageControl,StorePageUpdater],{initialize:function(b){var a=this;a.loggedUser=LB.getUser();a.currentShoppingAddressIndex=dojo.query(".addressholder").length;a.currentPage=1;a.textedited=false;a.currentEditField=0;a.dimensions=[];a._addBackDefaults();a.importer=new PhotoImporterModule();dojo.unsubscribe(postSignUpStuff.importresponsesubscription);a.captionfontsizes=["10px","12px","14px","16px","20px","22px","24px","28px"];dojo.query(".store").forEach(function(c){dojo.connect(c,"onclick",a,"_clickHandlers");dojo.query(".defaultable",c).onblur(a,"_blurHandlers").onfocus(a,"_clearDefaults");dojo.query(".previewArea").forEach(function(e){dojo.connect(e,"onkeyup",a,"_previewUpdate");});if(window.GLOBAL){a.templates=GLOBAL.templates;}dojo.query("select",c).connect("onchange",a,"_changeHandlers");var d=dojo.attr(c,"defaultTemplate");if(d){a._chooseTemplate(dojo.query("[action='choosetemplate@"+d+"']")[0],d);}}).onmousedown(a,"_mouseDownHandlers").onmouseup(a,"_mouseUpHandlers").onmousemove(a,"_mouseMoveHandlers");dojo.subscribe("importSuccess",a,"_importSuccess");dojo.subscribe("importStuffFacebook",a,"_importFacebook");a.zones=[1,2,2,1,1,1,1,2,2,1,1,2,1,1,1,1,1,2,2,2,2,2,1,1,1,1,1,2,1,1,1,2,1,1,1,1];},_importFacebook:function(a){this.importer.importStuff(a);},_importSuccess:function(){window.location.href="/store/greeting_card/create?templateId="+this.tid;},_chooseTemplate:function(d,b){var c=this;var e=templates[b];tid=e.id;version=e.version;horizontal=e.horizontal;c.metadata=e.metadata;c.templatedata=e;c.answers=[];c.tid=tid;for(var a=0;a<c.metadata.length;a++){c.answers.push([]);}dojo.query(".store .theme_c .img_sel").removeClass("img_sel");dojo.addClass(d,"img_sel");dojo.query(".store .step2").addClass("actstep");dojo.query(".store .step2_details").removeClass("hidden");dojo.query(".store .step3").removeClass("actstep");dojo.query(".store .step3_details").addClass("hidden");dojo.byId("templateId").value=tid;c.tname=e.name;c._initializeTemplate(c.templatedata);c._initializeTemplateData(1,c.metadata[0],c.templatedata,c.tname);c.currentIndex=0;c.textedited=false;c.photochosen=false;c.currentPage=1;c.currentEditField=0;},_previewUpdate:function(a){var c=this,b=a.target;c._getCurrentNode().innerHTML=b.value.replace("\n","<br>");dojo.addClass(c._getCurrentNode().parentNode,"psel");},_isPhotoNode:function(a){while(!dojo.hasClass(a,"store")){if(dojo.hasClass(a,"photoconfig")){return true;}a=a.parentNode;}return false;},_getPhotoNode:function(a){while(!dojo.hasClass(a,"store")){if(dojo.hasClass(a,"photoconfig")){return a;}a=a.parentNode;}return false;},_mouseDownHandlers:function(k){var b=this;if(!b.photochosen){return;}if(b._isPhotoNode(k.target)){var a=(b.metadata[b.currentIndex].photos)[0],f=a.required.w,g=a.required.h,c=a.scaled.w,e=a.scaled.h,l=parseInt((a.photoOffset.x*c)/f),h=parseInt((a.photoOffset.y*e)/g);var d=dojo.coords(dojo.query(".back img",b._getPhotoNode(k.target))[0]);b.mousedown=true;b.limits=(b.motion=="V"?b._getRangeV(h,l,c,e,d.w,d.h):b._getRangeH(h,l,c,e,d.w,d.h));b.mouseloc=[k.pageX,k.pageY];}},_mouseUpHandlers:function(a){var b=this;b.mousedown=false;},_mouseMoveHandlers:function(b){var c=this;if(!c.mousedown||!c.photochosen){return;}if(!c._isPhotoNode(b.target)){c.mousedown=false;return;}var a=c._getPhotoNode(b.target);if(c.motion=="V"){var e=b.pageY-c.mouseloc[1];var d=dojo.coords(dojo.query(".back img",a)[0]);if(!(((d.t+e)<c.limits[0])||((d.t+e)>c.limits[1]))){dojo.query(".back img",a).style("top",(d.t+e)+"px");}}else{var e=b.pageX-c.mouseloc[0];var d=dojo.coords(dojo.query(".back img",a)[0]);if(!(((d.l+e)<c.limits[0])||((d.l+e)>c.limits[1]))){dojo.query(".back img",a).style("left",(d.l+e)+"px");}}c.mouseloc=[b.pageX,b.pageY];dojo.stopEvent(b);},_changeHandlers:function(m){var e=this,q=m.target,f=e.loggedUser.person,b=e.templates,t=(f.id==-1),p=(window.FB&&window.FB.Connect&&FB.Connect.get_loggedInUser()&&FB.Connect.get_loggedInUser()!=""),v=dojo.attr(q,"action")||"",g=e.timelineId,o=e.timelineType,h=e.currentEditField.currentPage=e.currentPage,a,r,d,x,w,u,l,k;if(v.indexOf("_")!=-1&&v.indexOf("@")==-1){dojo.deprecated("Older action format. Newer format: action@param1:param2:...");a=v.split("_",2);}else{a=v.split("@",2);}r=a[0],d=a[1],e.isFbLogged=p;if(d){x=d.split(":");aid=x[0];}console.log("action["+r+"]  other["+d+"]");switch(r){case"copybillingaddress":if(q.value!="-1"){e._copyBillingAddress();}break;case"shoppingcartQuantity":e._updateCartQuantity(x[0],q.value);break;case"quantity":dojo.query(".store .step3_details .price").forEach(function(y){var z=dojo.byId("print_size"),A=parseFloat(dojo.attr(z.options[z.selectedIndex],"price"));y.innerHTML=["Rs ",(parseInt(q.value)*A)].join("");});break;case"printSize":dojo.query(".store .step3_details .price").forEach(function(y){y.innerHTML=["Rs ",(parseInt(dojo.query("#print_quantity").val())*parseFloat(dojo.attr(q.options[q.selectedIndex],"price")))].join("");});break;case"chooseFont":var c=e._getCurrentNode();dojo.style(c,"fontFamily",q.value);dojo.attr(c,{ff:q.value,ffi:dojo.attr(q.options[q.selectedIndex],"fontindex")});dojo.addClass(c.parentNode,"psel");break;case"chooseFontSize":var c=e._getCurrentNode();dojo.style(c,"fontSize",q.value);dojo.addClass(c.parentNode,"psel");break;case"chooseColor":var c=e._getCurrentNode();dojo.style(c,"color",q.value);dojo.attr(c,"fc",q.value);dojo.addClass(c.parentNode,"psel");break;case"shippingstatechange":e._updatePrices();break;}},_getNode:function(b,a){while(!dojo.hasClass(b,"store")){if(dojo.hasClass(b,a)){return b;}b=b.parentNode;}return 0;},_getPage:function(a){return this._getNode(a,"page");},_clickHandlers:function(t){var e=this,x=t.target,g=e.loggedUser.person,b=e.templates,z=(g.id==-1),w=(window.FB&&window.FB.Connect&&FB.Connect.get_loggedInUser()&&FB.Connect.get_loggedInUser()!=""),C=dojo.attr(x,"action")||"",l=e.timelineId,v=e.timelineType,m=e.currentEditField.currentPage=e.currentPage,a,y,d,F,E,B,r,q,c,D;if(C.indexOf("_")!=-1&&C.indexOf("@")==-1){dojo.deprecated("Older action format. Newer format: action@param1:param2:...");a=C.split("_",2);}else{a=C.split("@",2);}y=a[0],d=a[1],e.isFbLogged=w;if(d){F=d.split(":");aid=F[0];}console.log("action["+y+"]  other["+d+"]");switch(y){case"bar":dojo.query(".arrow",x).toggleClass("hidden");dojo.query(".panel_content",x.parentNode).toggleClass("hidden");break;case"chooseblob":E=F[0];dojo.query(".store .blobs .blob").removeClass("sel");dojo.addClass(dojo.hasClass(x,"blob")?x:x.parentNode,"sel");dojo.query(".store .grid .photos").forEach(function(G){G.innerHTML=["<div class='loading'><img class='va-m' src='http://cdn1.lifeblob.com/lifeblob/img/theme-gray/spinners/spinner-16-blue.vb00628.gif'/>",M.LOADING_MESSAGE,"</div>"].join("");}).removeClass("hidden");API_SVC.fetchPhotos(E).addCallback(e,"_onPhotosFetch",E);break;case"changetemplatetype":dojo.query(".toptsel",x.parentNode).removeClass("toptsel");dojo.addClass(x,"toptsel");dojo.query(".store .step1 .theme_c").addClass("hidden").filter(function(G){return dojo.hasClass(G,"templatetype_"+F[0]);}).removeClass("hidden");break;case"choosetemplate":var p=b[F[0]];B=p.id;c=p.version;D=p.horizontal;e.metadata=p.metadata;e.templatedata=p;e.answers=[];e.tid=B;for(var A=0;A<e.metadata.length;A++){e.answers.push([]);}dojo.query(".store .theme_c .img_sel").removeClass("img_sel");dojo.addClass(x.parentNode,"img_sel");dojo.query(".store .step2").addClass("actstep");dojo.query(".store .step2_details").removeClass("hidden");dojo.query(".store .step3").removeClass("actstep");dojo.query(".store .step3_details").addClass("hidden");dojo.byId("templateId").value=B;e.tname=p.name;e._initializeTemplate(e.templatedata);e._initializeTemplateData(1,e.metadata[0],e.templatedata,e.tname);e.currentIndex=0;e.textedited=false;e.photochosen=false;e.currentPage=1;e.currentEditField=0;break;case"choosephoto":E=F[1];var q=F[0],h=dojo.attr(x,"largeimg"),f,u;dojo.query(".screen_1",e._getPage(x)).forEach(function(G){dojo.query(".loading",G).removeClass("hidden");f=(e.metadata[e.currentIndex].photos)[0];u=new Image();u.onload=function(){if(e._imagePrintChoose(u,f)){dojo.create(u,null,dojo.query(".back",G)[0],"only");dojo.query(".store .step3_details").removeClass("hidden");dojo.query(".store .step3").addClass("actstep");}else{alert("The image size is too small and cannot be printed");}dojo.query(".loading",G).addClass("hidden");dojo.attr(u,{memoirId:E,photoId:q,topX:0,topY:0});dojo.removeAttr(u,"width");dojo.removeAttr(u,"height");};u.src=h;if(dojo.isChrome||dojo.isSafari){u.src="";u.src=h;}});e.photochosen=true;break;case"addshippingaddress":e._addShippingAddress();break;case"removeaddress":e._removeShippingAddress(F[0]);break;case"showpage":e.answers[e.currentIndex]=e._copyTemplateData(e.currentIndex+1,e.metadata[e.currentIndex]);e.currentPage=parseInt(F[0]);e.currentIndex=e.currentPage-1;e._visitTemplateData(e.currentIndex+1,e.answers[e.currentIndex],e.metadata[e.currentIndex],e.templatedata,e.tname);break;case"switchtophoto":dojo.query(".togglenodes",e._getNode(x,"grid")).addClass("hidden");dojo.query(".topt",x.parentNode).removeClass("toptsel");dojo.addClass(x,"toptsel");dojo.query(".store_photo_selector",e._getNode(x,"grid")).removeClass("hidden");break;case"switchtotext":dojo.query(".togglenodes",e._getNode(x,"grid")).addClass("hidden");dojo.query(".topt",x.parentNode).removeClass("toptsel");dojo.addClass(x,"toptsel");dojo.query(".store_caption_selector",e._getNode(x,"grid")).removeClass("hidden");x=dojo.query(".msg",e._getPage(x))[0];case"setText":dojo.query(".font",e._getPage(x)).removeClass("hidden");dojo.query(".previewArea").forEach(function(G){G.value=dojo.trim(x.innerHTML).replace("<br>","\n");});dojo.query(".selectFontSize").val(dojo.style(x,"fontSize"));dojo.query(".selectFontFamily").val(dojo.attr(x,"ff"));dojo.query(".selectFontColor").val(dojo.attr(x,"fc"));dojo.query(".store .greeting .psel").removeClass("psel");if(F[0]=="4"){dojo.query(".togglenodes",e._getNode(x,"grid")).addClass("hidden");dojo.query(".topt",e._getNode(x,"grid")).removeClass("toptsel");dojo.query(".toptr",e._getNode(x,"grid")).addClass("toptsel");dojo.query(".store_caption_selector",e._getNode(x,"grid")).removeClass("hidden");}else{dojo.addClass(x.parentNode,"psel");}e.currentEditField=parseInt(F[0]);break;case"addToCart":e.answers[e.currentIndex]=e._copyTemplateData(e.currentIndex+1,e.metadata[e.currentIndex]);dojo.byId("params").value=dojo.toJson(e._postParams());for(var A=0;A<e.answers.length;A++){if(!e._validateTemplateData(A,e.answers[A],e.metadata[A])){dojo.stopEvent(t);return;}}return;case"shippingAddressesUpdate":e._checkShippingAddresses();break;case"billingAddressUpdate":dojo.query(".error").orphan();e._removeDefaults();if(e._checkBillingAddress(dojo.query(".addressholder")[0])){dojo.byId("billingform").submit();}else{e._addBackDefaults();}break;case"removeCartItem":var o=confirm("Are you sure you want to remove this item?");if(o){}else{dojo.stopEvent(t);}break;case"importStuff":if(e.importer.isImporting()){alert(M.IMPORT_IN_PROGRESS_ALERT);}else{e.importer.importStuff(parseInt(F[0]));}default:if(e.metadata&&e.metadata[e.currentIndex].type=="message"){var k=x;while(!dojo.hasClass(k,"store")){if(dojo.hasClass(k,"font")){return;}k=k.parentNode;}dojo.query(".store .greeting .psel").removeClass("psel");}break;}},_imagePrintChoose:function(c,a){var b=this,d=b.tid,u=b.tname,p=a.required.w,q=a.required.h,g=a.scaled.w,l=a.scaled.h,t=parseInt((a.photoOffset.x*g)/p),r=parseInt((a.photoOffset.y*l)/q),o=c.width,k=c.height,m=4,f=(b.templates[d]).price.costs,h,e;if(o<p||k<q){if(f.length<=1){return false;}m=5;p/=2;q/=2;if(o<p||k<q){if(f.length<=2){return false;}m=6;p/=2;q/=2;if(o<p||k<q){return false;}}}h=b._getPos(p,q,g,l,c.width,c.height);e=b._getOffset(t,r,p,q,g,l,c.width,c.height);h.position="absolute";dojo.style(c,h);dojo.style(c,e);dojo.attr(c,{scw:h.width?h.width:"0",sch:h.height?h.height:"0"});b._updateImageSizes(b.templates[d],m);b.dimensions=a;b.motion=b._getMotion(t,r,p,q,g,l,c.width,c.height);return true;},_updateImageSizes:function(a,l){var d=a.price.costs,c=d.length,e=[],h=l||0,b,g,f,k=0;b=dojo.create("select",{id:"print_size",name:"printSize","class":"select",action:"printSize"},"printSize","only");dojo.connect(b,"onchange",this,"_changeHandlers");for(g=0;g<c;g++){f=d[g];if(f.size.size>=h){b.options[k]=new Option(M[f.size.sizeName],f.size.size+"");dojo.attr(b.options[k],{price:f.price});k++;}}dojo.query(".store .step3_details .price").forEach(function(m){var o=dojo.byId("print_size"),p=parseFloat(dojo.attr(o.options[o.selectedIndex],"price"));m.innerHTML=["Rs ",(parseInt(dojo.query("#print_quantity").val())*p)].join("");});},_clearDefaults:function(a){if(dojo.hasClass(a.target,"defaultable")){if(dojo.string.trim(a.target.value)==dojo.attr(a.target,"defaulttext")){a.target.value="";}}},_blurHandlers:function(a){if(dojo.hasClass(a.target,"defaultable")){if(dojo.string.trim(a.target.value).length==0){a.target.value=dojo.attr(a.target,"defaulttext");}}},_updateCartQuantity:function(b,a){API_SVC.updateShoppingCart(b,a).addCallback(this,"_updateCartPrices");},_updateCartPrices:function(){var a=0;dojo.query(".cart_long_items").forEach(function(c){var b=parseFloat(dojo.attr(dojo.query(".price",c)[0],"price")),d=(dojo.query(".quantity_select",c)[0]).selectedIndex+1,f=d*b,e=dojo.attr(c,"itemid");dojo.query(".qitem_"+e).forEach("item.innerHTML='"+d+"'");dojo.query(".qprice_"+e).forEach("item.innerHTML='"+ut.price(f)+"'");dojo.query(".total",c).forEach("item.innerHTML='"+ut.price(f)+"'");a+=f;});dojo.query(".cart_total_desc").forEach("item.innerHTML='Grand total: "+ut.currency(a)+"'");dojo.query(".cart_summary_total").forEach("item.innerHTML='Total: "+ut.currency(a)+"'");},_copyBillingAddress:function(){var a=dojo.query("[name='shippingAddressesSelect']")[0].value;dojo.query("[cartId='"+a+"']").forEach(function(b){dojo.query(".addressholder").forEach(function(c){dojo.query(".fnamecover input",c)[0].value=dojo.query("[name='shoppingCartFirstName']",b)[0].value;dojo.query(".lnamecover input",c)[0].value=dojo.query("[name='shoppingCartLastName']",b)[0].value;dojo.query("[name='addressFirstLine']",c)[0].value=dojo.query("[name='shoppingCartAddressFirstLine']",b)[0].value;dojo.query("[name='addressSecondLine']",c)[0].value=dojo.query("[name='shoppingCartAddressSecondLine']",b)[0].value;dojo.query(".statecover select",c)[0].value=dojo.query("[name='shoppingCartState']",b)[0].value;dojo.query(".citycover input",c)[0].value=dojo.query("[name='shoppingCartCity']",b)[0].value;dojo.query(".pincover input",c)[0].value=dojo.query("[name='shoppingCartPinCode']",b)[0].value;dojo.query(".mobilecover input",c)[0].value=dojo.query("[name='shoppingCartMobile']",b)[0].value;dojo.query(".homecover input",c)[0].value=dojo.query("[name='shoppingCartHome']",b)[0].value;dojo.query(".officecover input",c)[0].value=dojo.query("[name='shoppingCartOffice']",b)[0].value;});});this._addBackDefaults();},_getCurrentNode:function(){var a=this;return dojo.query(".store .step2_details .msg[field='"+a.currentEditField+"']")[0];},_resetImage:function(a){var b=this,c=a?".page":".sel_page";dojo.query(".store "+c+" .back img").forEach(function(d){dojo.attr(d,{memoirId:0,photoId:0,topX:0,topY:0});});},_postParams:function(){var a=this,b=a._additionals();var c={printSize:parseInt(dojo.query("#print_size").val()),answers:a.answers,additionals:b};return c;},_additionals:function(){var a={};dojo.query(".additinal_details").forEach(function(b){a[dojo.attr(b,"paramname")]=b.value;});return a;},_removeDefaults:function(){dojo.query(".defaultable").forEach(function(a){if(dojo.string.trim(a.value)==dojo.attr(a,"defaulttext")){a.value="";}});},_addBackDefaults:function(){dojo.query(".defaultable").forEach(function(a){if(dojo.string.trim(a.value).length==0){a.value=dojo.attr(a,"defaulttext");}});},_checkShippingAddresses:function(){var a=false,b=this;dojo.query(".error").orphan();b._removeDefaults();dojo.query(".addressholder").forEach(function(c){if(!b._checkShippingAddress(c)){a=true;}});if(!a){dojo.byId("shippingform").submit();}else{b._addBackDefaults();}},_addError:function(b,a){dojo.create("div",{innerHTML:a,"class":"error"},b,"after");},_checkEmpty:function(c,d,a){var b=this;if(dojo.query(d,c).filter(function(e){if(dojo.string.trim(e.value).length==0){b._addError(e,a);return true;}return false;}).length>0){return true;}return false;},_checkShippingAddress:function(a){var b=this;if(b._checkEmpty(a,".fnamecover input","First name is required")){return false;}if(b._checkEmpty(a,".lnamecover input","Last name is required")){return false;}if(dojo.query(".addressline input",a).filter(function(c){return dojo.string.trim(c.value).length!=0;}).length==0){b._addError(dojo.query(".addressline input",a)[0],"Address is mandatory");return false;}if(b._checkEmpty(a,".citycover input","City name is required")){return false;}if(dojo.query(".statecover select",a).filter(function(c){if(c.selectedIndex==0){b._addError(c,"Please select a state");return true;}return false;}).length>0){return false;}if(dojo.query(".pincover input",a).filter(function(c){if(dojo.string.trim(c.value).length==0){b._addError(c,"Pincode is required");return true;}if(isNaN(dojo.string.trim(c.value))||dojo.string.trim(c.value).length!=6){b._addError(c,"Incorrect pincode");return true;}return false;}).length>0){return false;}if(dojo.query(".mobilecover input",a).filter(function(c){return dojo.string.trim(c.value).length!=0;}).length==0&&dojo.query(".homecover input",a).filter(function(c){return dojo.string.trim(c.value).length!=0;}).length==0&&dojo.query(".officecover input",a).filter(function(c){return dojo.string.trim(c.value).length!=0;}).length==0){dojo.query(dojo.create("div",{innerHTML:"Contact number is mandatory"},dojo.query(".mobilecover input",a)[0],"after")).addClass("error");return false;}if(dojo.query(".mobilecover input",a).filter(function(c){if(dojo.string.trim(c.value).length!=0&&!ut.checkInternationalPhone(dojo.string.trim(c.value))){dojo.query(dojo.create("div",{innerHTML:"Incorrect contact number"},c,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".homecover input",a).filter(function(c){if(dojo.string.trim(c.value).length!=0&&!ut.checkInternationalPhone(dojo.string.trim(c.value))){dojo.query(dojo.create("div",{innerHTML:"Incorrect contact number"},c,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".officecover input",a).filter(function(c){if(dojo.string.trim(c.value).length!=0&&!ut.checkInternationalPhone(dojo.string.trim(c.value))){dojo.query(dojo.create("div",{innerHTML:"Incorrect contact number"},c,"after")).addClass("error");return true;}return false;}).length>0){return false;}return true;},_checkBillingAddress:function(a){if(dojo.query(".fnamecover input",a).filter(function(b){if(dojo.string.trim(b.value).length==0){dojo.query(dojo.create("div",{innerHTML:"First name is required"},b,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".lnamecover input",a).filter(function(b){if(dojo.string.trim(b.value).length==0){dojo.query(dojo.create("div",{innerHTML:"Last name is required"},b,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".addressline input",a).filter(function(b){return dojo.string.trim(b.value).length!=0;}).length==0){dojo.query(dojo.create("div",{innerHTML:"Address is mandatory"},dojo.query(".addressline input",a)[0],"after")).addClass("error");return false;}if(dojo.query(".citycover input",a).filter(function(b){if(dojo.string.trim(b.value).length==0){dojo.query(dojo.create("div",{innerHTML:"City name is required"},b,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".statecover select",a).filter(function(b){if(b.selectedIndex==0){dojo.query(dojo.create("div",{innerHTML:"Please select a state"},b,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".pincover input",a).filter(function(b){if(dojo.string.trim(b.value).length==0){dojo.query(dojo.create("div",{innerHTML:"Pincode is required"},b,"after")).addClass("error");return true;}if(isNaN(dojo.string.trim(b.value))||dojo.string.trim(b.value).length!=6){dojo.query(dojo.create("div",{innerHTML:"Incorrect pincode"},b,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".mobilecover input",a).filter(function(b){return dojo.string.trim(b.value).length!=0;}).length==0&&dojo.query(".homecover input",a).filter(function(b){return dojo.string.trim(b.value).length!=0;}).length==0&&dojo.query(".officecover input",a).filter(function(b){return dojo.string.trim(b.value).length!=0;}).length==0){dojo.query(dojo.create("div",{innerHTML:"Contact number is mandatory"},dojo.query(".mobilecover input",a)[0],"after")).addClass("error");return false;}if(dojo.query(".mobilecover input",a).filter(function(b){if(dojo.string.trim(b.value).length!=0&&!ut.checkInternationalPhone(dojo.string.trim(b.value))){dojo.query(dojo.create("div",{innerHTML:"Incorrect contact number"},b,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".homecover input",a).filter(function(b){if(dojo.string.trim(b.value).length!=0&&!ut.checkInternationalPhone(dojo.string.trim(b.value))){dojo.query(dojo.create("div",{innerHTML:"Incorrect contact number"},b,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".officecover input",a).filter(function(b){if(dojo.string.trim(b.value).length!=0&&!ut.checkInternationalPhone(dojo.string.trim(b.value))){dojo.query(dojo.create("div",{innerHTML:"Incorrect contact number"},b,"after")).addClass("error");return true;}return false;}).length>0){return false;}if(dojo.query(".emailcover input",a).filter(function(b){if(dojo.string.trim(b.value).length==0){dojo.query(dojo.create("div",{innerHTML:"Email is required"},b,"after")).addClass("error");return true;}if(!ut.getEmail(dojo.string.trim(b.value))){dojo.query(dojo.create("div",{innerHTML:"Incorrect email"},b,"after")).addClass("error");return true;}return false;}).length>0){return false;}return true;},_removeShippingAddress:function(a){dojo.query(".address_index_"+a).orphan();this._updatePrices();},_addShippingAddress:function(){this.currentShoppingAddressIndex++;var b=this.currentShoppingAddressIndex,a=this;dojo.query(".defaultable",dojo.create("div",{innerHTML:['<table cellpadding="0" cellspacing="0" style="width: 100%;"><tr><td>','<input type="hidden" value="',b,'" name="addressIndex"/>','<table class="address"><tbody>',"<tr>","<td>Country</td>","<td>",'<select class="inputbox smalladdressinput" name="country',b,'">','<option value="1">India</option>',"</select>","</td>","</tr>","<tr>","<td>Name</td>",'<td><div class="fnamecover"><input type="text" class="inputbox defaultable" defaulttext="First Name" name="firstname',b,'" value="',,'" maxlength="50"/></div><div class="lnamecover"><input type="text" name="lastname',b,'" value="" maxlength="50" class="inputbox defaultable" defaulttext="Last Name"/></div></td>',"</tr>","<tr>","<td>Address*</td>","<td>",'<div class="address_block">','<div class="addressline">','<input class="inputbox addressinput" type="text" maxlength="200" value="" name="addressfirstline',b,'" />',"</div>",'<div class="addressline">','<input class="inputbox addressinput" type="text" maxlength="200" value="" name="addresssecondline',b,'" />',"</div>","<div>",'<div class="citycover"><input type="text" name="city',b,'" value="" maxlength="50" class="inputbox smalladdressinput defaultable" defaulttext="City"/></div>','<div class="statecover"><select action="shippingstatechange" class="inputbox smalladdressinput" name="state',b,'">','<option value="-1">-- Select the State---</option>','<option value="1">Andaman and Nicobar</option>','<option value="2">Andhra Pradesh</option>','<option value="3">Arunachal Pradesh</option>','<option value="4">Assam</option>','<option value="5">Bihar</option>','<option value="6">Chandigarh</option>','<option value="7">Chhattisgarh</option>','<option value="8">Dadraand Nagar Haveli</option>','<option value="9">DamanandDiu</option>','<option value="10">Delhi</option>','<option value="11">Goa</option>','<option value="12">Gujarat</option>','<option value="13">Haryana</option>','<option value="14">Himachal Pradesh</option>','<option value="15">Jammu And Kashmir</option>','<option value="16">Jharkhand</option>','<option value="17">Karnataka</option>','<option value="18">Kerala</option>','<option value="19">Lakshadweep</option>','<option value="20">Madhya Pradesh</option>','<option value="21">Maharashtra</option>','<option value="22">Manipur</option>','<option value="23">Meghalaya</option>','<option value="24">Mizoram</option>','<option value="25">Nagaland</option>','<option value="26">Orissa</option>','<option value="27">Pondicherry</option>','<option value="28">Punjab</option>','<option value="29">Rajasthan</option>','<option value="30">Sikkim</option>','<option value="31">Tamilnadu</option>','<option value="32">Tripura</option>','<option value="33">Uttaranchal</option>','<option value="34">UttarPradesh</option>','<option value="35">WestBengal</option>',"</select></div>",'<div class="pincover"><input type="text" name="pincode',b,'" value="" maxlength="6" class="inputbox smalladdressinput defaultable" defaulttext="Pin Code"/></div>',"</div>","</div>","</td>","</tr>","<tr>","<td>Contact Number*</td>","<td>",'<div class="mobilecover">','<input class="inputbox defaultable" defaulttext="Mobile" type="text" maxlength="15" value="" name="mobile',b,'"  />',"</div>",'<div class="homecover">','<input class="inputbox defaultable" defaulttext="Land line" type="text" maxlength="15" value="" name="home',b,'" />',"</div>",'<div class="officecover">','<input class="inputbox defaultable" defaulttext="Office" type="text" maxlength="15" value="" name="office',b,'" />',"</div>","</td>","</tr>","</tbody></table>",'</td><td class="removeAddrressHolder"><div class="removeAddrress"><a class="gray_blue_rounded_button" type="button" action="removeaddress@',b,'">Remove</a></div></td></tr></table>',"</div>"].join(""),"class":"addressholder address_index_"+b},dojo.query(".shippingEditLinks")[0],"before")).onblur(a,"_blurHandlers").onfocus(a,"_clearDefaults");dojo.query("[name='state"+b+"']").connect("onchange",a,"_changeHandlers");this._addBackDefaults();this._updatePrices();},_updatePrices:function(){var b=this,k=30,c=0.04,e=0.104,h=0,g=dojo.query(".addressholder").length,m=[0,0],a,l,f,d,o;dojo.query(".statecover select").forEach(function(p){m[b.zones[p.selectedIndex]-1]++;});dojo.query(".shippingcartsummary").forEach(function(p){f=parseFloat(dojo.attr(p,"zone1"));d=parseFloat(dojo.attr(p,"zone2"));});o=f*m[0]+d*m[1];dojo.query(".shippingcartsummary .itemrow").forEach(function(p){dojo.query(".quantity",p).forEach(function(q){a=parseInt(dojo.attr(q,"quantity"));l=parseFloat(dojo.attr(q,"price"));q.innerHTML=""+a+" x "+g;dojo.query(".total",p).forEach(function(r){r.innerHTML=""+(l*a*g);h+=(l*a*g);});});});dojo.query(".carttotal").forEach(function(p){p.innerHTML=(""+h);});dojo.query(".shippingCharges").forEach(function(p){p.innerHTML=""+o;});dojo.query(".taxes").forEach(function(p){p.innerHTML=""+dojo.number.format(h*c+o*e,{pattern:"##0.00"});});dojo.query(".grandtotal").forEach(function(p){p.innerHTML="Total: Rs."+dojo.number.format(h*(1+c)+o*(1+e),{pattern:"##0.00"});});},_onPhotosFetch:function(b,a){if(a.stat!="ok"){console.log("Error. Code:"+a.code+" Desc:"+a.desc);return;}dojo.query(".store .grid .photos").forEach(function(g){var f=["<div class='clearall'>"],k=a.result,e=k.length,d,c,h;if(!e){f.push("No photos in blob. Please choose another blob.");}for(d=0;d<e;d++){if(d&&d%4==0){f.push("</div><div class='clearall'>");}c=k[d];h=["action='choosephoto@",c.id,":",b,"' largeimg='",ut.getImageURL(c.loc,3000,0,b),"'"].join("");f.push("<a class='imga' href='javascript:void(0)' ",h,"><img src='");f.push(ut.getImageURL(c.loc,75,0,b));f.push("' ",h," class='img'/></a>");}f.push("</div>");g.innerHTML=f.join("");});},_getPos:function(b,a,d,c,f,e){if(f>=b&&e>=a){if(e/a>f/b){return{width:d+"px"};}return{height:c+"px"};}if(e/a>f/b){return{width:((d/b)*f)+"px"};}return{height:((c/a)*e)+"px"};},_getOffset:function(c,d,b,a,f,e,h,g){if(h>=b&&g>=a){if(g/a>h/b){return{top:(d-((((f*g)/h)-e)/2))+"px",left:c+"px"};}return{top:d+"px",left:(c-((h*(e/g)-f)/2))+"px"};}return{top:(d-((g*(e/a)-e)/2))+"px",left:(c-((h*(f/b)-f)/2))+"px"};},_getMotion:function(d,c,b,a,f,e,h,g){if(g/a>h/b){return"V";}return"H";},_getRangeV:function(a,b,d,c,f,e){return[-(e-c-a),a];},_getRangeH:function(a,b,d,c,f,e){return[-(f-d-b),b];}});dojo.declare("FeedbackControl",PageControl,{initialize:function(){var a=this;dojo.query(".feedback").forEach(function(b){a.cont=b;a.logged=LB.getUser().logged;dojo.connect(b,"onclick",a,"_clickHandlers");if(!a.logged){dojo.query(".feedback_email_cont",b).removeClass("hidden");}});},_clickHandlers:function(g){var f=this,a=f.cont,e=g.target,h=dojo.attr(e,"action"),d,b,c;switch(h){case"fmt":dojo.removeClass(a,"feedback_small");dojo.query("#feedback_success",a).addClass("hidden");dojo.query("#feedback_message",a).forEach(function(k){c=dojo.attr(k,"dirty");if(!c&&!dojo.hasClass(k,"editing")){k.value="";}k.focus();if(!k.handlers){k.handlers=[];}k.handlers.push(dojo.connect(k,"onblur",f,"_blurHandlers"));}).addClass("editing");break;case"fs":dojo.query("#feedback_message",a).forEach(function(k){d=k.value.trim();});dojo.query("#feedback_email",a).forEach(function(k){b=k.value.trim();});if(!d||d==""){dojo.query("#feedback_message_error").removeClass("hidden");}else{if(!f.logged&&(!b||!ut.isValidEmail(b))){dojo.query("#feedback_email_error").removeClass("hidden");}else{API_SVC.postFeedback(d,window.location.href,b).addCallback(f,"_feedbackAdded");dojo.addClass(e,"hidden");dojo.query(".spinner",a).removeClass("hidden");}}break;case"fc":dojo.removeClass(a,"feedback_posted");dojo.addClass(a,"feedback_small");break;}},_blurHandlers:function(b){var g=this,f=b.target,e=f.handlers,a=g.cont,k,d;if(f.type=="textarea"){d=f.value!="";dojo.attr(f,"dirty",d);if(!d){f.value="Send us suggestions, bug reports or just say Hi!";dojo.query("#feedback_message",a).removeClass("editing");dojo.addClass(a,"feedback_small");}for(k in e){dojo.disconnect(e[k]);}f.handlers=[];}},_feedbackAdded:function(b){if(b.stat!="ok"){console.log(b);return;}var c=this,a=c.cont;dojo.query("input[action='fs']",a).removeClass("hidden");dojo.query(".spinner",a).addClass("hidden");c._reset();dojo.addClass(a,"feedback_posted");},_reset:function(){var b=this,a=b.cont;dojo.query("#feedback_message",a).forEach(function(e){var d=e.handlers,f;e.value="Send us suggestions, bug reports or just say Hi!";dojo.removeClass(e,"editing");dojo.attr(e,"dirty",false);for(f in d){dojo.disconnect(d[f]);}e.handlers=[];});dojo.query("#feedback_email",a).forEach(function(c){c.value="";});dojo.query(".feedback_error",a).addClass("hidden");}});dojo.declare("HelpControl",Control,{initialize:function(c){var b=this,a=LB.getUser(),d=c.obj;if(!a.logged){return;}b.timeline=c;b.h=a.help;dojo.subscribe("showHelpOverlay",b,"done");},draw:function(k,l,f,g){var e=this,h="H"+k,m=M["H"+k],p=M["HM"+k],c,o,b,d=(dojo.isIE==6)?-1:-6,a=-7;dojo.query(".help_cont").forEach(function(q){q.innerHTML=["<table class='helpout' cellspacing='0' cellpadding='0' border='0'><tbody>","<tr><td class='c11' colspan='2'></td><td class='c13'></td></tr>","<tr><td class='c21'></td><td class='c22'>","<table cellspacing='0' cellpadding='0' border='0' width='100%'>","<tr><td><div class='title'>",m,"</div></td>","<td class='close'><a help='",k,"' href='javascript:void(0)'/></td></tr>","<tr><td><div class='content' style='width:300px'>",p,"</div></td></tr></table></td>","<td class='c23'></td></tr>","<tr><td class='c31'></td><td class='c32'></td><td class='c33'></td></tr>","</table>","<div class='pointer_",g,"'></div>"].join("");dojo.removeClass(q,"hidden");c=dojo.position(q,true);o=c.h;b=c.w;dojo.query("td.close a",q).onclick(function(r){dojo.stopEvent(r);dojo.addClass(q,"hidden");e.done(parseInt(dojo.attr(r.currentTarget,"help")));});if(g=="down"){finalTop=l-o+5;a=20;finalLeft=f-a;if(finalLeft+b>document.width){a=b-30;finalLeft=f-a;}}else{if(g=="left"){finalLeft=f+9;d=-30;finalTop=l-d-o;}}dojo.style(q,"top",finalTop+"px");dojo.style(q,"left",finalLeft+"px");dojo.query(".pointer_"+g,q).forEach(function(r){dojo.style(r,"margin",d+"px 0 0 "+a+"px");});});},done:function(a){if(a!=-1){this.disable(a);}switch(a){case -1:this.draw(0,180,128,"down");break;case 0:this.draw(1,270,232,"left");break;case 1:this.draw(2,160,128,"down");break;}},enabled:function(a){return((this.h&1<<a)==0);},enable:function(a){this.h=(this.h&~(1<<a));API_SVC.help(a,false);},disable:function(a){this.h=(this.h|1<<a);API_SVC.help(a,true);},getName:function(){return"Help Control";}});dojo.declare("StartControl",Control,{constructor:function(){var a=this;a._importing=false;a._processing=false;dojo.subscribe("importResponse",a,"_importResponse");dojo.subscribe("/facebook/ready",a,"_fbReady");},initialize:function(b,c){var a=this;a.params=c;a.timeline=b;dojo.query(".start").connect("onclick",a,"_clickHandlers");dojo.query(".d_info").forEach(function(d){var f=dojo.fadeOut({node:d,delay:9000,duration:1000}),e=dojo.connect(f,"onEnd",function(){dojo.addClass(d,"hidden");dojo.disconnect(e);});f.play();});},_fbReady:function(){var a=this,b=a.params;if(b.fbPerms){a._getFbPerms(b.fbPerms,b.fbType);}},_clickHandlers:function(event){var ref=this,node=event.target,action=dojo.attr(node,"action");if(!action){while(node&&!action&&!dojo.hasClass(node,"start")){node=node.parentNode;action=dojo.attr(node,"action");}}console.log(action);switch(action){case"ab-import":case"data-import":ref._import(dojo.eval(dojo.attr(node,"impType")));break;case"network-selectall":case"network-deselectall":ref._updateSelect(action=="network-selectall");break;case"network-connect":var abType=dojo.eval(dojo.attr(node,"abType"));ref._nwConnectInvite(action,true,abType);break;case"network-invite":var abType=dojo.eval(dojo.attr(node,"abType"));ref._nwConnectInvite(action,false,abType);break;case"network-invite-others":ref._nwInviteOthers();break;case"network-invite-more":ref._nwMore(node);break;case"more-reco":ref._moreReco(node);break;case"discover-learnmore":dojo.query(".learn").toggleClass("hidden");break;}},_moreReco:function(a){var b=dojo.attr(a,"reco");dojo.query(".mm .ct .dt .more-"+b).removeClass("hidden");dojo.query(".more-reco",a.parentNode).orphan();},_getFbPerms:function(a,c){var b=this;dojo.query(".load_overlay").addClass("invisible");FB.Connect.showPermissionDialog(a,function(d){var f=a.split(","),e=FB.Connect.get_loggedInUser();dojo.query(".load_overlay").forEach(function(g){dojo.style(g,"width","305px");b._setProgress("Reading permissions...");dojo.removeClass(g,"invisible");});FB.Facebook.apiClient.fql_query("select "+f+" from permissions where uid == "+e,function(g,k){b._setProgress("Processing permissions...");if(!k){var h=[],o=[],m=false,l;for(var l in g[0]){if(g[0][l]){if(l=="publish_stream"){m=true;}h.push(l);}else{o.push(l);}}API_SVC.fbPerms({granted:h,notgranted:o}).addCallback(function(r){if(!m){var t=LB.getUser().person,v=t.name.split(" ")[0],x=v+" is using lifeblob to connect with friends through photos",w="Share unlimited photos with friends and family, discover photos of friends that are related with yours or simply enjoy exploring photos through relations.",q="http://www.lifeblob.com/user/"+t.displayName+"?utm_source=start_flow&utm_campaign=account_creation&utm_medium=facebook",p=true?"http://external.ak.fbcdn.net/safe_image.php?d=4fa914a39566d8acedc4978e0df03c9c&url=http://blog.lifeblob.com/wp-content/uploads/2009/11/logo-square2.png&w=90&h=90":"img/theme-gray/logo/fb_share.v00aa45.png";actionLinks=[{text:"View all photos",href:q}],attachment={media:[{type:"image",src:p,href:q}],name:x,href:q,description:w};FB.Connect.streamPublish("",attachment,actionLinks,null,"What do you think?",function u(y,z){dojo.publish("logAjaxEvent",["account","fb_publish_start",y?"yes":"no"]);b._importFbData(c);});}else{b._importFbData(c);}});}else{b._importFbData(c);}});});},_importFbData:function(b){var a=this,c=b!=3;a._setProgress("Fetching account details...");API_SVC.facebookImportRequest().addCallback(function(d){console.log(d);if(d.stat!="ok"){console.log("Error. Code:"+d.code+" Desc:"+d.desc);return;}a._setProgress(c?"Getting your photos...":"Building photo connections...");var e=setInterval(function(){if(c){a._setProgress("Building your lifeblob...");}API_SVC.importStatus(d.result).addCallback(function(g){console.log(g);if(g.stat!="ok"){console.log("Error. Code:"+d.code+" Desc:"+d.desc);return;}var f=g.result,h=f.data,k=f.errorCode;switch(f.status){case 0:return;case 1:console.log(h);if(c){a._setProgress("Building photo connections...");}break;default:if(k==2){console.log("duplicate import");}else{console.log("some other error:"+k);}if(c){a._setProgress("Building photo connections...");}break;}clearInterval(e);switch(b){case 1:case 2:a._fetchRecommend();break;case 3:a._setProgress("Searching for facebook friends...");ut.rd("/start/facebookNetwork");break;}a._fetchRecommend();});},3000);});},_fetchRecommend:function(){API_SVC.discover().addCallback(function(d){if(d.stat!="ok"){console.log("Error. Code:"+d.code+" Desc:"+d.desc);}else{var b=d.result,c=b.photoId,a=b.memoirId;if(c){ut.rd(["/start/discover/",c,"?memoirId=",a].join(""));return;}}ut.rd("/start/discover");});},_showProgress:function(c,b,a){dojo.query(c).forEach(function(d){if(a){dojo.addClass(d,"disabled");dojo.attr(d,"disabled","true");}else{dojo.removeClass(d,"disabled");dojo.removeAttr(d,"disabled");}d.innerHTML=b;});},_updateSelect:function(a){dojo.query(".nt input.cb").forEach(function(b){b.checked=a;});},_nwInviteOthers:function(){var a=this;dojo.query(".invite").forEach(function(c){var f=[],g=[],b=false,e,d;dojo.query(".row",c).forEach(function(k){var h=dojo.query(".f .input",k);if(h.length){e=dojo.query(".f .input",k)[0].value||"x";inviteEmailNode=dojo.query(".s .input",k)[0],d=inviteEmailNode.value;if(d!=""){if(ut.getEmail(d)){f.push(e);g.push(d);}else{b=true;dojo.addClass(inviteEmailNode,"error");}}}});if(b){return;}if(g.length){a._showProgress(".invite .norm_button","Connecting...",true);API_SVC.inviteByName(g,f,a._getMessage()).addCallback(function(h){dojo.query(".row .input",c).forEach(function(k){k.value="";});a._reset();a._showProgress(".invite .norm_button","Get Connected",false);dojo.query(".other_emails_success").forEach(function(m){m.innerHTML=["<div class='d_info'>",dojo.string.substitute(M.CONTACT_INVITE_SUCCESS,[g.length]),"</div>"].join("");var l=dojo.fadeOut({node:m,delay:9000,duration:1000}),k=dojo.connect(l,"onEnd",function(){dojo.addClass(m,"hidden");dojo.disconnect(k);});l.play();});});}else{alert(M.IMPORT_CONTACT_INVITE);}});},_getMessage:function(){var a=dojo.query(".invite_msg");if(a.length>0){return a[0].value;}return"";},_nwMore:function(a){dojo.query(".invite .rows").forEach(function(e){var d=dojo.clone(a),c="<div class='row'><div class='f'><input type='text' class='input'/></div><div class='s'><input type='text' class='input'/></div></div>",b;dojo.destroy(a);for(b=0;b<5;b++){rowNode=dojo.place(c,e);}dojo.place(d,dojo.query(".invite .s input")[0],"after");});},_nwConnectInvite:function(e,l,b){b=b||APP_TYPE.MAIL;var k=[],a=this,d=a.params,h,g;dojo.query(".nt input.cb").forEach(function(m){if(m.checked){h=m.value;k.push(l?parseInt(h):h);}});g=k.length;if(!g){alert(M.IMPORT_CONTACT_CONNECT);}else{a._showProgress("button[action='"+e+"']","Connecting...",true);if(l){API_SVC.addMultiFriends(k.join(",")).addCallback(function(m){if(d.fbInvite){ut.rd("/start/connect?connected="+g);}else{ut.rd(["/start/invite/",dojo.byId("requestId").value,"?connected=",g,"&abType=",b].join(""));}});}else{var c=1,f=APP_TYPE;switch(b){case f.AOL:c=6;break;case f.GMAIL:c=2;break;case f.YMAIL:c=3;break;case f.LIVE:c=4;break;case f.FACEBOOK:c=5;break;}API_SVC.invite(k.join(","),a._getMessage(),c).addCallback(function(m){ut.rd("/start/connect?invited="+g);});}}},_import:function(b){var d=this,c=APP_TYPE,a=ut.getAppName(b);lowerAppName=a.toLowerCase().replace(/ /g,"_");if(d._importing){alert(M.IMPORT_IN_PROGRESS_ALERT);return;}dojo.query(".linkups").addClass("hidden");dojo.query(".service_node").removeClass("selected_service_node");switch(b){case c.MAIL:case c.AOL:dojo.query("."+lowerAppName+"_linkup").removeClass("hidden");dojo.query("."+lowerAppName+"_import_row").addClass("selected_service_node");break;case c.FACEBOOK:case c.FACEBOOK_PHOTOS:d._fbConnect(b);break;default:d._importing=d._showPopup(b);break;}},_fbConnect:function(a){var c=this,d=c.params,b=d.fbType;FB.Connect.requireSession(function(){c._setProgress("Connecting with facebook...");API_SVC.linkupFacebook().addCallback(function(g){if(g.stat!="ok"){console.log("Error. Code:"+g.code+" Desc:"+g.desc);return;}var e=g.result,h=e.userId,f=e.status;if(LB.getUser().uid!=h){alert('This facebook user is linked to another lifeblob account. Clicking "Ok" will log you into that account.');c._setProgress("Signing in...");ut.reload();}else{if(f==0||f==3){ut.rd("/start/facebook/"+b);return;}else{if(f==1){alert('This lifeblob account already has a facebook user linked to it. Click "Ok" to create a new account for your facebook user.');c._setProgress("Creating a new account...");ut.rd("/account/simplelogout?next=/account/fconnect");}else{if(f==2||f==4){alert('This facebook user is linked to another lifeblob account. Clicking "Ok" will log you into that account.');c._setProgress("Signing in...");ut.reload();}}}}});});},_showPopup:function(f){var d=this,a=d.popup,c=700,l=500,k=100,b=APP_TYPE,g=false,e;if(f==b.YMAIL||f==b.FACEBOOK){c=780;l=700;k=10;}else{if(f==APP_TYPE.TWITTER){c=776;k=10;}}e=(window.screen.width/2-c/2);if(a){try{a.close();}catch(h){}}switch(f){case APP_TYPE.PICASA:g="https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D11TOPIC_POINTER&scope=http%3A%2F%2Fpicasaweb.google.com%2Fdata%2F&secure=0&session=1";break;case APP_TYPE.SMUGMUG:g="http://www.lifeblob.com/callback/oauth/authorizeUser?appType=13";break;case APP_TYPE.YOUTUBE:g="https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D51TOPIC_POINTER&scope=http%3A%2F%2Fgdata.youtube.com%2F&secure=0&session=1";break;case APP_TYPE.TWITTER:g="http://www.lifeblob.com/callback/oauth/authorizeUser?appType=61TOPIC_POINTER";break;case APP_TYPE.PHOTOBUCKET:g="http://www.lifeblob.com/callback/oauth/authorizeUser?appType=16";break;case APP_TYPE.GMAIL:g="https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D41&scope=http%3A%2F%2Fwww.google.com%2Fm8%2Ffeeds%2F&secure=0&session=1";break;case APP_TYPE.LIVE:g="http://www.lifeblob.com/callback/live/authorizeUser";break;case APP_TYPE.YMAIL:g="http://www.lifeblob.com/callback/yahoo/authorizeUser";break;case APP_TYPE.FLICKR:g="http://www.flickr.com/services/auth/?api_key=0c46e7f6525547b571fdc05b2d7a9957&perms=read&api_sig=54cf32fac9c008dd3d0718f1e0f10f2a";break;}if(!g){console.log("No authurl for "+f);return false;}d._setProgress("Waiting for authentication...");g=g.replace("TOPIC_POINTER","");a=window.open(g,"","status=false, width="+c+"px, height="+l+"px, left="+e+"px, screenX="+e+"px, top="+k+"px, screenY="+k+"px");if(!a){return false;}a.focus();d.popup=a;d._waitForPopup(f);return true;},_reset:function(){dojo.query(".load_overlay").addClass("hidden");dojo.query(".linkups").addClass("hidden");dojo.query(".selected_service_node").removeClass(".selected_service_node");this._importing=false;},_waitForPopup:function(a){var b=this;b.popupWait=setInterval(function(){if(b.popup.closed){clearInterval(b.popupWait);b._reset();}},3000);},_showImportError:function(a){var b=this,c=(a>=40&&a<50);b._processing=false;alert(c?"Error fetching the address book":"Error fetching from external service");b._reset();},_importResponse:function(b,e){var c=this,d=(b>=40&&b<50),a=c.popup;if(a){a.close();clearInterval(c.popupWait);c.popupWait=null;}if(e>0){c._setProgress("Fetching account details...");c.handle=setInterval(function(){if(!c._processing){c._processing=true;if(!d){c._setProgress("Getting your photos...");}API_SVC.importStatus(e).addCallback(dojo.hitch(c,c._onImportStatus,b));}},3000);}else{c._showImportError(b);}},_onImportStatus:function(c,b){var d=this,e=(c>=40&&c<50);d._processing=false;if(b.stat!="ok"){console.log("Error. Code:"+b.code+" Desc:"+b.desc);d._reset();return;}var a=b.result,f=a.errorCode;switch(a.status){case 0:return;case 1:if(e){d._setProgress("Searching for friends...");ut.rd("/start/network/"+a.data[0]+"?abType="+c);}else{d._setProgress("Building photo connections...");ut.rd("/start/discover");}break;default:if(f==2){console.log("duplicate import");d._hideMessage();dojo.query(".startnext").removeClass("hidden");alert("You have already linked up this account.");}else{console.log("some other error:"+f);d._showImportError();}break;}clearInterval(d.handle);d.handle=null;},_setProgress:function(b,a){dojo.query(".load_overlay").removeClass("hidden").forEach(function(d){var c=["<img class='img' src='"];c.push(a?"http://cdn1.lifeblob.com/lifeblob/img/theme-gray/common/errors/error_48.v6e08a3.png":"http://cdn0.lifeblob.com/lifeblob/img/theme-gray/spinners/hourglass.v199e1c.gif");c.push("'/><span class='msg'",(a?" style='color:#EE0000'":""),">",b,"</span>");d.innerHTML=c.join("");});},_hideMessage:function(){dojo.query(".load_overlay").addClass("hidden");},getName:function(){return"StartControl";}});dojo.declare("FriendsAndImportControl",Control,{constructor:function(){var a=this;a._importing=false;a._processing=false;dojo.subscribe("importResponse",a,"_importResponse");dojo.subscribe("/facebook/ready",a,"_fbReady");},initialize:function(b,c){var a=this;a.params=c;a.timeline=b;dojo.query(".friendandimport").connect("onclick",a,"_clickHandlers");dojo.query(".d_info").forEach(function(d){var f=dojo.fadeOut({node:d,delay:9000,duration:1000}),e=dojo.connect(f,"onEnd",function(){dojo.addClass(d,"hidden");dojo.disconnect(e);});f.play();});},_fbReady:function(){var a=this,b=a.params;if(b.fbPerms){a._getFbPerms(b.fbPerms,b.photos);}},_clickHandlers:function(event){var ref=this,node=event.target,action=dojo.attr(node,"action");if(!action){while(node&&!action&&!dojo.hasClass(node,"friendandimport")){node=node.parentNode;action=dojo.attr(node,"action");}}console.log(action);switch(action){case"ab-import":case"data-import":ref._import(dojo.eval(dojo.attr(node,"impType")));break;case"network-selectall":case"network-deselectall":ref._updateSelect(action=="network-selectall");break;case"network-connect":var abType=dojo.eval(dojo.attr(node,"abType"));ref._nwConnectInvite(action,true,abType);break;case"network-invite":var abType=dojo.eval(dojo.attr(node,"abType"));ref._nwConnectInvite(action,false,abType);break;case"network-invite-others":ref._nwInviteOthers();break;case"network-invite-more":ref._nwMore(node);break;case"more-reco":ref._moreReco(node);break;case"discover-learnmore":dojo.query(".learn").toggleClass("hidden");break;default:return;}dojo.stopEvent(event);},_moreReco:function(a){var b=dojo.attr(a,"reco");dojo.query(".mm .ct .dt .more-"+b).removeClass("hidden");dojo.query(".more-reco",a.parentNode).orphan();},_getFbPerms:function(a,c){var b=this;dojo.query(".load_overlay").addClass("invisible");FB.Connect.showPermissionDialog(a,function(d){var f=a.split(","),e=FB.Connect.get_loggedInUser();dojo.query(".load_overlay").forEach(function(g){dojo.style(g,"width","305px");b._setProgress("Reading permissions...");dojo.removeClass(g,"invisible");});FB.Facebook.apiClient.fql_query("select "+f+" from permissions where uid == "+e,function(g,k){b._setProgress("Processing permissions...");if(!k){var h=[],m=[],l;for(var l in g[0]){if(g[0][l]){h.push(l);}else{m.push(l);}}API_SVC.fbPerms({granted:h,notgranted:m}).addCallback(function(o){b._importFbData(c);});}else{b._importFbData(c);}});});},_importFbData:function(b){var a=this;a._setProgress("Fetching account details...");API_SVC.facebookImportRequest().addCallback(function(c){console.log(c);if(c.stat!="ok"){console.log("Error. Code:"+c.code+" Desc:"+c.desc);return;}a._setProgress(b?"Getting your photos...":"Searching for facebook friends...");var d=setInterval(function(){if(b){a._setProgress("Building your lifeblob...");}API_SVC.importStatus(c.result).addCallback(function(f){console.log(f);if(f.stat!="ok"){console.log("Error. Code:"+c.code+" Desc:"+c.desc);return;}var e=f.result,g=e.data,h=e.errorCode;switch(e.status){case 0:return;case 1:console.log(g);if(b){a._setProgress("Building photo connections...");}break;default:if(h==2){console.log("duplicate import");}else{console.log("some other error:"+h);}if(b){a._setProgress("Building photo connections...");}break;}clearInterval(d);if(b){ut.rd("/account/import?fb=true");}else{a._setProgress("Searching for facebook friends...");ut.rd("/account/connectFacebookFriends");}});},3000);});},_showProgress:function(c,b,a){dojo.query(c).forEach(function(d){if(a){dojo.addClass(d,"disabled");dojo.attr(d,"disabled","true");}else{dojo.removeClass(d,"disabled");dojo.removeAttr(d,"disabled");}d.innerHTML=b;});},_updateSelect:function(a){dojo.query(".nt input.cb").forEach(function(b){b.checked=a;});},_nwInviteOthers:function(){var a=this;dojo.query(".invite").forEach(function(c){var f=[],g=[],b=false,e,d;dojo.query(".row",c).forEach(function(k){var h=dojo.query(".f .input",k);if(h.length){e=dojo.query(".f .input",k)[0].value||"x";inviteEmailNode=dojo.query(".s .input",k)[0],d=inviteEmailNode.value;if(d!=""){if(ut.getEmail(d)){f.push(e);g.push(d);}else{b=true;dojo.addClass(inviteEmailNode,"error");}}}});if(b){return;}if(g.length){a._showProgress(".invite .norm_button","Connecting...",true);API_SVC.inviteByName(g,f,a._getMessage()).addCallback(function(h){dojo.query(".row .input",c).forEach(function(k){k.value="";});a._reset();a._showProgress(".invite .norm_button","Get Connected",false);dojo.query(".other_emails_success").forEach(function(m){m.innerHTML=["<div class='d_info'>",dojo.string.substitute(M.CONTACT_INVITE_SUCCESS,[g.length]),"</div>"].join("");var l=dojo.fadeOut({node:m,delay:9000,duration:1000}),k=dojo.connect(l,"onEnd",function(){dojo.addClass(m,"hidden");dojo.disconnect(k);});l.play();});});}else{alert(M.IMPORT_CONTACT_INVITE);}});},_getMessage:function(){var a=dojo.query(".invite_msg");if(a.length>0){return a[0].value;}return"";},_nwMore:function(a){dojo.query(".invite .rows").forEach(function(e){var d=dojo.clone(a),c="<div class='row'><div class='f'><input type='text' class='input'/></div><div class='s'><input type='text' class='input'/></div></div>",b;dojo.destroy(a);for(b=0;b<5;b++){rowNode=dojo.place(c,e);}dojo.place(d,dojo.query(".invite .s input")[0],"after");});},_nwConnectInvite:function(e,l,b){b=b||APP_TYPE.MAIL;var k=[],a=this,d=a.params,h,g;dojo.query(".nt input.cb").forEach(function(m){if(m.checked){h=m.value;k.push(l?parseInt(h):h);}});g=k.length;if(!g){alert(M.IMPORT_CONTACT_CONNECT);}else{a._showProgress("button[action='"+e+"']","Connecting...",true);if(l){API_SVC.addMultiFriends(k.join(",")).addCallback(function(m){if(d.fbInvite){ut.rd("/account/findfriends?connected="+g);}else{ut.rd(["/account/inviteFriends/",dojo.byId("requestId").value,"?connected=",g,"&abType=",b].join(""));}});}else{var c=1,f=APP_TYPE;switch(b){case f.AOL:c=6;break;case f.GMAIL:c=2;break;case f.YMAIL:c=3;break;case f.LIVE:c=4;break;case f.FACEBOOK:c=5;break;}API_SVC.invite(k.join(","),a._getMessage(),c).addCallback(function(m){ut.rd("/account/findfriends?invited="+g);});}}},_import:function(b){var d=this,c=APP_TYPE,a=ut.getAppName(b);lowerAppName=a.toLowerCase().replace(/ /g,"_");if(d._importing){alert(M.IMPORT_IN_PROGRESS_ALERT);return;}dojo.query(".linkups").addClass("hidden");dojo.query(".service_node").removeClass("selected_service_node");switch(b){case c.MAIL:case c.AOL:dojo.query("."+lowerAppName+"_linkup").removeClass("hidden");dojo.query("."+lowerAppName+"_import_row").addClass("selected_service_node");break;case c.FACEBOOK:case c.FACEBOOK_PHOTOS:d._fbConnect(b);break;default:d._importing=d._showPopup(b);break;}},_fbConnect:function(a){var b=this,c=b.params,d=c.photos;FB.Connect.requireSession(function(){b._setProgress("Connecting with facebook...");API_SVC.linkupFacebook().addCallback(function(g){if(g.stat!="ok"){console.log("Error. Code:"+g.code+" Desc:"+g.desc);return;}var e=g.result,h=e.userId,f=e.status;if(LB.getUser().uid!=h){alert('This facebook user is linked to another lifeblob account. Clicking "Ok" will log you into that account.');b._setProgress("Signing in...");window.location.reload(false);}else{if(f==0||f==3){ut.rd("/account/fB?photos="+d);return;}else{if(f==1){alert('This lifeblob account already has a facebook user linked to it. Click "Ok" to create a new account for your facebook user.');b._setProgress("Creating a new account...");ut.rd("/account/simplelogout?next=/account/fconnect");}else{if(f==2||f==4){alert('This facebook user is linked to another lifeblob account. Clicking "Ok" will log you into that account.');b._setProgress("Signing in...");window.location.reload(false);}}}}});});},_showPopup:function(f){var d=this,a=d.popup,c=700,l=500,k=100,b=APP_TYPE,g=false,e;if(f==b.YMAIL||f==b.FACEBOOK){c=780;l=700;k=10;}else{if(f==APP_TYPE.TWITTER){c=776;k=10;}}e=(window.screen.width/2-c/2);if(a){try{a.close();}catch(h){}}switch(f){case APP_TYPE.PICASA:g="https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D11TOPIC_POINTER&scope=http%3A%2F%2Fpicasaweb.google.com%2Fdata%2F&secure=0&session=1";break;case APP_TYPE.SMUGMUG:g="http://www.lifeblob.com/callback/oauth/authorizeUser?appType=13";break;case APP_TYPE.YOUTUBE:g="https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D51TOPIC_POINTER&scope=http%3A%2F%2Fgdata.youtube.com%2F&secure=0&session=1";break;case APP_TYPE.TWITTER:g="http://www.lifeblob.com/callback/oauth/authorizeUser?appType=61TOPIC_POINTER";break;case APP_TYPE.PHOTOBUCKET:g="http://www.lifeblob.com/callback/oauth/authorizeUser?appType=16";break;case APP_TYPE.GMAIL:g="https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fwww.lifeblob.com%2Fcallback%2Fauth%3FappType%3D41&scope=http%3A%2F%2Fwww.google.com%2Fm8%2Ffeeds%2F&secure=0&session=1";break;case APP_TYPE.LIVE:g="http://www.lifeblob.com/callback/live/authorizeUser";break;case APP_TYPE.YMAIL:g="http://www.lifeblob.com/callback/yahoo/authorizeUser";break;case APP_TYPE.FLICKR:g="http://www.flickr.com/services/auth/?api_key=0c46e7f6525547b571fdc05b2d7a9957&perms=read&api_sig=54cf32fac9c008dd3d0718f1e0f10f2a";break;}if(!g){console.log("No authurl for "+f);return false;}d._setProgress("Waiting for authentication...");g=g.replace("TOPIC_POINTER","");a=window.open(g,"","status=false, width="+c+"px, height="+l+"px, left="+e+"px, screenX="+e+"px, top="+k+"px, screenY="+k+"px");if(!a){return false;}a.focus();d.popup=a;d._waitForPopup(f);return true;},_reset:function(){dojo.query(".load_overlay").addClass("hidden");dojo.query(".linkups").addClass("hidden");dojo.query(".selected_service_node").removeClass(".selected_service_node");this._importing=false;},_waitForPopup:function(a){var b=this;b.popupWait=setInterval(function(){if(b.popup.closed){clearInterval(b.popupWait);b._reset();}},3000);},_showImportError:function(a){var b=this,c=(a>=40&&a<50);b._processing=false;alert(c?"Error fetching the address book":"Error fetching from external service");b._reset();},_importResponse:function(b,e){var c=this,d=(b>=40&&b<50),a=c.popup;if(a){a.close();clearInterval(c.popupWait);c.popupWait=null;}if(e>0){c._setProgress("Fetching account details...");c.handle=setInterval(function(){if(!c._processing){c._processing=true;if(!d){c._setProgress("Getting your photos...");}API_SVC.importStatus(e).addCallback(dojo.hitch(c,c._onImportStatus,b));}},3000);}else{c._showImportError(b);}},_onImportStatus:function(c,b){var d=this,e=(c>=40&&c<50);d._processing=false;if(b.stat!="ok"){console.log("Error. Code:"+b.code+" Desc:"+b.desc);d._reset();return;}var a=b.result,f=a.errorCode;switch(a.status){case 0:return;case 1:if(e){d._setProgress("Searching for friends...");ut.rd("/account/connectFriends/"+a.data[0]+"?abType="+c);}else{}break;default:if(f==2){console.log("duplicate import");d._hideMessage();dojo.query(".startnext").removeClass("hidden");alert("You have already linked up this account.");}else{console.log("some other error:"+f);d._showImportError();}break;}clearInterval(d.handle);d.handle=null;},_setProgress:function(b,a){dojo.query(".load_overlay").removeClass("hidden").forEach(function(d){var c=["<img class='img' src='"];c.push(a?"http://cdn1.lifeblob.com/lifeblob/img/theme-gray/common/errors/error_48.v6e08a3.png":"http://cdn0.lifeblob.com/lifeblob/img/theme-gray/spinners/hourglass.v199e1c.gif");c.push("'/><span class='msg'",(a?" style='color:#EE0000'":""),">",b,"</span>");d.innerHTML=c.join("");});},_hideMessage:function(){dojo.query(".load_overlay").addClass("hidden");},getName:function(){return"FriendsAndImportControl";}});dojo.declare("PageHelper",null,{constructor:function(c,e){console.time("PageHelper");var d=e.page,b=LB.getUser().person;if(!window.API_SVC){if(window.fbParams){for(var a in fbParams){smd.parameters.push({name:a,optional:false,"default":fbParams[a]});}}API_SVC=new dojox.rpc.Service(smd);}(new CommonControl()).initialize(c,e);if(b.id!=-1){if(!Suggest.count){Suggest.init();}Suggest.fetchAddressBook();}console.timeEnd("PageHelper");}});