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 af="_gat",at="_gaq",ar=true,aq=false,ap=undefined,ak="4.6.5",ao="length",an="cookie",ae="location",ad="&",ac="=",ab="__utma=",R="__utmb=",I="__utmc=",ag="__utmk=",F="__utmv=",z="__utmz=",u="__utmx=",t="GASO=";var q=function(r){return ap==r||"-"==r||""==r;},a=function(r){return r[ao]>0&&" \n\r\t".indexOf(r)>-1;},o=function(x,r,y){var w="-",v;if(!q(x)&&!q(r)&&!q(y)){v=x.indexOf(r);if(v>-1){y=x.indexOf(y,v);if(y<0){y=x[ao];}w=p(x,v+r.indexOf(ac)+1,y);}}return w;},m=function(x){var r=aq,y=0,w,v;if(!q(x)){r=ar;for(w=0;w<x[ao];w++){v=x.charAt(w);y+="."==v?1:0;r=r&&y<=1&&(0==w&&"-"==v||".0123456789".indexOf(v)>-1);}}return r;},l=function(v,r){var w=encodeURIComponent;return w instanceof Function?r?encodeURI(v):w(v):escape(v);},k=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;},i=function(v,r){return v.indexOf(r)>-1;},h=function(v,r){v[v[ao]]=r;},g=function(r){return r.toLowerCase();},e=function(v,r){return v.split(r);},al=function(v,r){return v.indexOf(r);},p=function(v,r,w){w=ap==w?v[ao]:w;return v.substring(r,w);},ah=function(v,r){return v.join(r);},am=function(w){var r=1,x=0,v;if(!q(w)){r=0;for(v=w[ao]-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;},ai=function(){var v=window,r=ap;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:aq,_gasoDomain:ap,_gasoCPath:ap};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=ap;x.lb=aq;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=ap;x.a=document;x.e=window;};b.Hb=function(x){function r(H,D,E,K){var J="",G=0;J=o(H,"2"+D,";");if(!q(J)){H=J.indexOf("^"+E+".");if(H<0){return["",0];}J=p(J,H+E[ao]+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(q(J)){J="";}return[J,G];}function A(E,D){return"^"+ah([[D,E[1]].join("."),E[0]],":");}function w(E,D){B.a[an]=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=[ab,R,I,z,F,u,t];C.k=function(){var D=B.a[an];return B.o?C.Wb(D,B.o):D;};C.Wb=function(G,D){var E=[],J,H;for(J=0;J<y[ao];J++){H=r(G,y[J],D)[0];q(H)||(E[E[ao]]=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[an],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=o(H,"2"+D,";");if(!q(G)){H=A(r(H,D,E,ar),E);G=ah(G.split(H),"");return G=K+G;}return K;};C.fb=function(){return q(B.b)?"":"domain="+B.b+";";};};b.$=function(A){function w(L){L=L instanceof Array?L.join("."):"";return q(L)?"-":L;}function C(L,N){var O=[];if(!q(L)){O=L.split(".");if(N){for(L=0;L<O[ao];L++){m(O[L])||(O[L]="-");}}}return O;}function J(N,Q,S){var L=G.M,P,O;for(P=0;P<L[ao];P++){O=L[P][0];O+=q(Q)?Q:Q+L[P][4];L[P][2](o(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 ap==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=m(L)?L*1:"-";};G.la=function(){return w(H);};G.Aa=function(L){H=C(L);};G.Vb=function(){G.j.l(F,"",-1);};G.lc=function(){return v?v:"-";};G.fb=function(){return q(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[ao];L++){if(L<4&&!m(B[L])){B[L]="-";}}};G.fc=function(){return y;};G.Dc=function(L){y=L;};G.Sb=function(){x=[];r=[];D=[];B=[];E=ap;H=[];v=ap;};G.P=function(){var L="",N;for(N=0;N<G.M[ao];N++){L+=G.M[N][1]();}return am(L);};G.ua=function(L){var N=G.k(),O=aq;if(N){J(N,L,";");G.za(G.P());O=ar;}return O;};G.zc=function(L){J(L,"",ad);G.za(o(L,ag,ad));};G.Hc=function(){var L=G.M,N=[],O;for(O=0;O<L[ao];O++){h(N,L[O][0]+L[O][1]());}h(N,ag+G.P());return N.join(ad);};G.Nc=function(N,O){var P=G.M,L=K.h;G.ua(N);K.h=O;for(N=0;N<P[ao];N++){q(P[N][1]())||P[N][3]();}K.h=L;};G.Cb=function(){G.j.l(ab,G.ja(),K.v);};G.Ea=function(){G.j.l(R,G.C(),K.sb);};G.Db=function(){G.j.l(I,G.ka(),0);};G.Ga=function(){G.j.l(z,G.na(),K.Ta);};G.Eb=function(){G.j.l(u,G.ma(),K.v);};G.Fa=function(){G.j.l(F,G.la(),K.v);};G.Oc=function(){G.j.l(t,G.fc(),0);};G.M=[[ab,G.ja,G.tb,G.Cb,"."],[R,G.C,G.ya,G.Ea,""],[I,G.ka,G.ub,G.Db,""],[u,G.ma,G.vb,G.Eb,""],[z,G.na,G.wb,G.Ga,"."],[F,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[ae];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="+ak+"&utmn="+d()+(q(J.hostname)?"":"&utmhn="+l(J.hostname))+(y.U==100?"":"&utmsp="+l(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=[ab,z,F,u],B,C=w.k(),H;for(B=0;B<G[ao];B++){H=o(C,G[B]+E,";");if(!q(H)){if(G[B]==F){H=e(H.split(E+".")[1],"|")[0];if(q(H)){continue;}H=E+"."+H;}h(D,G[B]+H+";");}}return l(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(ap==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="+l(A.Bb),"ipc="+l(A.Ba),"ipn="+l(A.D),"iva="+l(A.Va),"ipr="+l(A.pb),"iqt="+l(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(ap==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="+l(C.q),"st="+l(C.Qa),"to="+l(C.Ab),"tx="+l(C.zb),"sp="+l(C.xb),"ci="+l(C.Xa),"rg="+l(C.yb),"co="+l(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:ap;if(C&&C[ao]>0){for(G=0;G<C[ao]&&!H;G++){E=C[G];if(i(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():ap;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=l(y.a.characterSet?y.a.characterSet:y.a.charset?y.a.charset:A);};v.Ic=function(){return ad+"utm"+["cs="+l(v.Wa),"sr="+v.W,"sc="+v.xa,"ul="+v.qa,"je="+v.pa,"fl="+l(v.eb)].join("&utm");};v.$b=function(){var C=y.a,B=w.history[ao];C=v.d.appName+v.d.version+v.qa+v.d.platform+v.d.userAgent+v.pa+v.W+v.xa+(C[an]?C[an]:"")+(C.referrer?C.referrer:"");for(var D=C[ao];B>0;){C+=B--^D++;}return am(C);};};b.m=function(x,r,A,w){function v(E){var D="";E=g(E.split("://")[1]);if(i(E,"/")){E=E.split("/")[1];if(i(E,"?")){D=E.split("?")[0];}}return D;}function C(E){var D="";D=g(E.split("://")[1]);if(i(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(o(E,B.Ka+ac,ad),o(E,B.Na+ac,ad),o(E,B.Pa+ac,ad),y.Q(E,B.Ia,"(not set)"),y.Q(E,B.La,"(not set)"),y.Q(E,B.Oa,D&&!q(D.K)?k(D.K):ap),y.Q(E,B.Ja,ap));};y.jb=function(G){var D=C(G),E=v(G);if(i(D,"google")){G=G.split("?").join(ad);if(i(G,ad+B.oc+ac)){if(E==B.nc){return ar;}}}return aq;};y.gb=function(){var G,D=y.rb,E,J,H=B.T;if(!(q(D)||"0"==D||!i(D,"://")||y.jb(D))){G=C(D);for(E=0;E<H[ao];E++){J=H[E];if(i(G,g(J.bb))){D=D.split("?").join(ad);if(i(D,ad+J.nb+ac)){G=D.split(ad+J.nb+ac)[1];if(i(G,ad)){G=G.split(ad)[0];}return new b.m.w(ap,J.bb,ap,"(organic)","organic",G,ap);}}}}};y.Q=function(G,D,E){G=o(G,D+ac,ad);return E=!q(G)?k(G):!q(E)?E:"-";};y.uc=function(G){var D=B.ta,E=aq,H;if(G&&"organic"==G.S){G=g(k(G.K));for(H=0;H<D[ao];H++){E=E||g(D[H])==G;}}return E;};y.hc=function(){var E="",D="";E=y.rb;if(!(q(E)||"0"==E||!i(E,"://")||y.jb(E))){E=E.split("://")[1];if(i(E,"/")){D=p(E,E.indexOf("/"));D=D.split("?")[0];E=g(E.split("/")[0]);}if(0==E.indexOf("www.")){E=p(E,4);}return new b.m.w(ap,E,ap,"(referral)","referral",ap,D);}};y.Xb=function(E){var D="";if(B.ba){D=E&&E.hash?E.href.substring(E.href.indexOf("#")):"";D=""!=D?D+ad:D;}D+=E.search;return D;};y.dc=function(){return new b.m.w(ap,"(direct)",ap,"(direct)","(none)",ap,ap);};y.vc=function(G){var D=aq,E,H=B.va;if(G&&"referral"==G.S){G=g(l(G.X));for(E=0;E<H[ao];E++){D=D||i(G,g(H[E]));}}return D;};y.L=function(D){return ap!=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[ae]);if(B.z&&J.kb()){K=J.na();if(!q(K)&&!i(K,";")){J.Ga();return"";}}K=o(H,z+D+".",";");E=y.ic(G);if(y.L(E)){G=o(G,B.Ma+ac,ad);if("1"==G&&!q(K)){return"";}}if(!y.L(E)){E=y.gb();if(!q(K)&&y.uc(E)){return"";}}if(!y.L(E)&&N){E=y.hc();if(!q(K)&&y.vc(E)){return"";}}if(!y.L(E)){if(q(K)&&N){E=y.dc();}}if(!y.L(E)){return"";}if(!q(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=o(H,ab+D+".",";");H=N.lastIndexOf(".");N=H>9?p(N,H+1)*1:0;O++;N=0==N?1:N;J.wb([D,y.r,N,O,E.Da()].join("."));J.Ga();return ad+"utmcn=1";}else{return ad+"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[ao];E++){if(!q(D[E][1])){H=D[E][1].split("+").join("%20");H=H.split(" ").join("%20");h(G,"utm"+D[E][0]+ac+H);}}}return G.join("|");};y.mb=function(){return !(q(y.q)&&q(y.X)&&q(y.ea));};y.Zb=function(E){var D=function(G){return k(o(E,"utm"+G+ac,"|"));};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(!q(K)){K=K.split(",");for(var G=0;G<K[ao];G++){J=K[G];if(!q(J)){J=J.split(y);if(J[ao]==4){L[J[0]]=[J[1],J[2],H];}}}}}var r=this,B=v,y=ac,C=x,D=E;r.O=A;r.sa="";r.p={};r.tc=function(){var G;G=e(o(r.O.k(),F+B+".",";"),B+".")[1];if(!q(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+",";}}q(H)||(G+="|"+H);if(q(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=aq;if(L&&K&&H>0&&H<=C.ob){L=l(L);K=l(K);if(L[ao]+K[ao]<=64){r.p[H]=[L,K,J];r.Z();G=ar;}}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(ap==E[P]){E[P]={};}if(ap==E[P][S]){E[P][S]=[];}E[P][S][Q]=T;}function x(P,S){if(ap!=E[P]&&ap!=E[P][S]){E[P][S]=ap;S=ar;var Q;for(Q=0;Q<L[ao];Q++){if(ap!=E[P][L[Q]]){S=aq;break;}}if(S){E[P]=ap;}}}function D(P){var S="",Q=aq,T,U;for(T=0;T<L[ao];T++){U=P[L[T]];if(ap!=U){if(Q){S+=L[T];}S+=N(U);Q=aq;}else{Q=ar;}}return S;}function N(P){var S=[],Q,T;for(T=0;T<P[ao];T++){if(ap!=P[T]){Q="";if(T!=v&&ap==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[ao];Q++){T=P.charAt(Q);U=G[T];S+=ap!=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 ap!=E[P];};r.G=function(){var P="",Q;for(Q in E){if(ap!=E[Q]){P+=Q.toString()+D(E[Q]);}}return P;};r.Ac=function(P){if(P==ap){return r.G();}var S=P.G(),Q;for(Q in E){if(ap!=E[Q]&&!P.qc(Q)){S+=Q.toString()+D(E[Q]);}}return S;};r._setKey=function(P,S,Q){if(typeof Q!="string"){return aq;}B(P,C,S,Q);return ar;};r._setValue=function(P,S,Q){if(typeof Q!="number"&&(ap==Number||!(Q instanceof Number))||Math.round(Q)!=Q||Q==NaN||Q==Infinity){return aq;}B(P,H,S,Q.toString());return ar;};r._getKey=function(P,Q){return ap!=E[P]&&ap!=E[P][C]?E[P][C][Q]:ap;};r._getValue=function(P,Q){return ap!=E[P]&&ap!=E[P][H]?E[P][H][Q]:ap;};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."==p(L,0,4)){L=p(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(q(L)||q(N)||q(O)){return"-";}L=o(L,ab+H.c+".",N);if(!q(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[ae].protocol&&J();}function D(L){if(!L||""==L){return"";}for(;a(L.charAt(0));){L=p(L,1);}for(;a(L.charAt(L[ao]-1));){L=p(L,0,L[ao]-1);}return L;}function B(N,O,P,L){if(!q(N())){O(L?k(N()):N());i(N(),";")||P();}}function E(L){var N,O=""!=L&&G.a[ae].host!=L;if(O){for(N=0;N<G.t[ao];N++){O=O&&al(g(L),g(G.t[N]))==-1;}}return O;}var H=this,y=ap,G=new b.Gb,v=aq,K=ap;H.e=window;H.r=Math.round((new Date).getTime()/1000);H.s=A||"UA-XXXXX-X";H.ab=G.a.referrer;H.ia=ap;H.f=ap;H.B=ap;H.F=aq;H.A=ap;H.Ua="";H.g=ap;H.cb=ap;H.c=ap;H.i=ap;G.o=w?l(w):ap;H.wc=function(){var L=aq;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?am(G.b):1;};H.Yb=function(L,N){if(q(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[ao]-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&&!q(O.title)?"&utmdt="+l(O.title):"";N+="&utmhid="+ai()+"&utmr="+l(H.ia)+"&utmp="+l(H.Bc(L));return N;};H.Bc=function(L){var N=G.a[ae];return L=ap!=L&&""!=L?l(L,ar):l(N.pathname+N.search,ar);};H.Lc=function(L){if(H.J()){var N="";if(H.g!=ap&&H.g.G()[ao]>0){N+="&utme="+l(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():ap;};H._getLinkerUrl=function(N,P){var Q=N.split("#"),L=N,O=H.Tb();if(O){if(P&&1>=Q[ao]){L+="#"+O;}else{if(!P||1>=Q[ao]){if(1>=Q[ao]){L+=(i(N,"?")?ad:"?")+O;}else{L=Q[0]+(i(N,"?")?ad:"?")+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+ad+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:ap,V,U=i(N,ab+P+"."),O=i(N,R+P),Y=i(N,I+P),aa,X=[],Q="",S=aq;N=q(N)?"":N;if(G.z){V=G.a[ae]&&G.a[ae].hash?G.a[ae].href.substring(G.a[ae].href.indexOf("#")):"";if(G.ba&&!q(V)){Q=V+ad;}Q+=G.a[ae].search;if(!q(Q)&&i(Q,ab)){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(q(aa)){if(U){if(!O||!Y){aa=x(N,";",W);H.F=ar;}else{aa=o(N,ab+P+".",";");X=e(o(N,R+P,";"),".");}}else{aa=ah([P,H.jc(),W,W,W,1],".");S=H.F=ar;}}else{if(q(T.C())||q(T.ka())){aa=x(Q,ad,W);H.F=ar;}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]=ap!=X[2]?X[2]:G.Jc;X[3]=X[3]?X[3]:aa[4];T.ya(X.join("."));T.ub(P);q(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=ar;}b.ib||H.sc();};H._visitCode=function(){H._initData();var L=o(H.i.k(),ab+H.c+".",";");L=L.split(".");return L[ao]<4?"":L[1];};H._cookiePathCopy=function(L){H._initData();H.i&&H.i.Nc(H.c,L);};H.sc=function(){var L=G.a[ae].hash;if(L&&1==L.indexOf("gaso=")){L=o(L,"gaso=",ad);}else{L=(L=G.e.name)&&0<=L.indexOf("gaso=")?o(L,"gaso=",ad):o(H.i.k(),t,";");}if(L[ao]>=10){H.B=L;H.Fc();}b.ib=ar;};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."==p(L,0,4)){L=p(L,4);}G.t.push("."+L);}for(L=0;L<O[ao]&&(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?aq:this.gatcOnclick?this.gatcOnclick(P):ar;};}}}};H.yc=function(){};H._trackPageview=function(L){if(r()){H._initData();G.t&&H.Gc();H.Lc(L);H.F=aq;}};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[ao];Q++){L=H.f.Y[Q];h(P,L.Ca());for(O=0;O<L.R[ao];O++){h(P,L.R[O].Ca());}}for(Q=0;Q<P[ao];Q++){y.H(P[Q],H.s,N,ar);}}};H._setTrans=function(){var N=G.a,O,P,L;N=N.getElementById?N.getElementById("utmtrans"):N.utmform&&N.utmform.utmtrans?N.utmform.utmtrans:ap;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[ao];N++){L[N]=D(L[N]);O=L[N].split(G.u);for(P=0;P<O[ao];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(l(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[ae].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="+l(H.g.Ac(L))+H.wa();y.H(N,H.s,H.c,aq,ar);}};H._createEventTracker=function(L){H._initData();return new b.Jb(L,H);};H._trackEvent=function(N,P,Q,L){var O=H.cb;if(ap!=N&&ap!=P&&""!=N&&""!=P){O._clearKey(5);O._clearValue(5);(N=O._setKey(5,1,N)&&O._setKey(5,2,P)&&(ap==Q||O._setKey(5,3,Q))&&(ap==L||O._setValue(5,1,L)))&&H._sendXEvent(O);}else{N=aq;}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);}:ap;y.H("&utmt=event&utme="+l(L.G())+H.wa(),H.s,H.c,aq,ar,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=ar;if(N.gatcOnclick){O=N.gatcOnclick(L);}if(O||typeof O=="undefined"){if(!N.target||N.target=="_self"){G.e[ae]=N.href;}else{if(N.target=="_top"){G.e.top.document[ae]=N.href;}else{if(N.target=="_parent"){G.e.parent.document[ae]=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?l(L):ap;};H._getVersion=function(){return ak;};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=aq,aj={ca:{},_createAsyncTracker:function(v,r){r=r||"";v=new b.aa(v);aj.ca[r]=v;c=ar;return v;},_getAsyncTracker:function(v){v=v||"";var r=aj.ca[v];if(!r){r=new b.aa;aj.ca[v]=r;c=ar;}return r;},push:function(){for(var x=arguments,r=0,A=0;A<x[ao];A++){try{if(typeof x[A]==="function"){x[A]();}else{var w="",v=x[A][0],C=v.lastIndexOf(".");if(C>0){w=p(v,0,C);v=p(v,C+1);}var B=aj._getAsyncTracker(w);B[v].apply(B,x[A].slice(1));}}catch(y){r++;}}return r;}};window[af]=b;function f(){var v=window[at],r=aq;if(v&&typeof v.push=="function"){r=v.constructor==Array;if(!r){return;}}window[at]=aj;r&&aj.push.apply(aj,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 k=[],a=[],b=[],c=[],h=[],l={},d={},f=LB.getUser();if(f.logged){var g=f.person;g.type=1;k.push({key:g.name,value:{k:"id",v:g.id},original:g});k.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});l[g.id]=g;}cm.put("addressbook.imports",a);cm.put("addressbook.friends",k);cm.put("addressbook.friends.idmap",l);cm.put("addressbook.friends.fidmap",d);cm.put("user.name",k);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",k);cm.put("suggest.friends.email",a);cm.put("suggest.newemails",{});}}catch(i){console.log("error in suggest.load");console.log(i);}};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(v,i){return v.original.name.localeCompare(i.original.name);});dojo.publish("suggest.rebuild");});}catch(a){console.log("error in suggest.fetchAddressBook");console.log(a);}};Suggest.getEmails=function(k,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"),i,h=false;dojo.query(k,f).forEach(function(l){i=l.value;if(!ut.getEmail(i)){dojo.addClass(l.parentNode,"sugg_error");e=false;}else{c.push(i);if(dojo.attr(l,"suggested")&&!g[i]){var m={name:i,email:i};a.push({key:i,value:{k:"email",v:i},original:m});b.push({key:i,value:{k:"email",v:i},original:m});d.push({key:i,value:{k:"email",v:i},original:m});h=true;g[i]=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(i){dojo.query("[seq=suggest_"+dojo.attr(i.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(r,i){return r.original.type-i.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,i,d){var b=(a&&!i)?"width":((i&&!a)?"height":((i&&a&&(f.width/f.height<a/i))?"width":"height")),k={width:f.width,height:f.height},c,h;d=d||{noalign:false};h=d.key;switch(b){case"width":if(f.width>a){k.width=a;k.height=f.height*a/f.width;dojo.style(f,"width",a+"px");}break;case"height":if(f.height>i){k.height=i;k.width=f.width*i/f.height;dojo.style(f,"height",i+"px");}if(a&&!d.noalign){c=(a-k.width)/2;k.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]=k;}return k;},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(k,d,q,t,g){var e=this,i=ut.escapeHTML(k),f=Math.max(d,q),m,o;if(i.indexOf("http://")==0){if(e.fp.test(i)){i=i.replace(/^(.*)((_m|_s|_b|_t).jpg)$/,"$1.jpg");if(f<=75){return i.replace(/^(.*)(.jpg)$/,"$1_s.jpg");}else{if(f<=100){return i.replace(/^(.*)(.jpg)$/,"$1_t.jpg");}else{if(f<=240){return i.replace(/^(.*)(.jpg)$/,"$1_m.jpg");}else{if(f<=580){return i;}else{if(f<=1024){return i.replace(/^(.*)(.jpg)$/,"$1_b.jpg");}}}}}}else{if(e.pp.test(i)){if(i.indexOf("s512")!=-1){return i;}else{if(f<=72){return i.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s72$2");}else{if(f<=144){return i.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s144$2");}else{if(f<=288){return i.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s288$2");}else{if(f<=576){return i.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s576$2");}else{if(f<=720){return i.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s720$2");}}}}}}}else{if(e.sp.test(i)){if(f<=100){return i.replace(/^(.*)-(.*)\.(.*)$/i,"$1-Ti.$3");}else{if(f<=150){return i.replace(/^(.*)-(.*)\.(.*)$/i,"$1-Th.$3");}else{if(f<=400){return i.replace(/^(.*)-(.*)\.(.*)$/i,"$1-S.$3");}else{if(f<=600){return i.replace(/^(.*)-(.*)\.(.*)$/i,"$1-M.$3");}else{if(f<=800){return i.replace(/^(.*)-(.*)\.(.*)$/i,"$1-L.$3");}else{if(f<=1024){return i.replace(/^(.*)-(.*)\.(.*)$/i,"$1-XL.$3");}}}}}}}else{if(i.indexOf("http://photos-")==0){m=i.split("/");o=m[m.length-1].charCodeAt(0);if(o>=97&&o<=122){if(d<=75&&q<=225){return i.replace(/^(.*)\/([a-z])?(.*)$/i,"$1/t$3");}else{if(f<=130){return i.replace(/^(.*)\/([a-z])?(.*)$/i,"$1/s$3");}else{if(f<=180){return i.replace(/^(.*)\/([a-z])?(.*)$/i,"$1/a$3");}else{return i.replace(/^(.*)\/([a-z])?(.*)$/i,"$1/n$3");}}}}else{if(d<=75&&q<=225){return i.replace(/^(.*)\/(.*)([a-z])\.jpg$/i,"$1/$2t.jpg");}else{if(f<=130){return i.replace(/^(.*)\/(.*)([a-z])\.jpg$/i,"$1/$2s.jpg");}else{if(f<=180){return i.replace(/^(.*)\/(.*)([a-z])\.jpg$/i,"$1/$2a.jpg");}else{return i.replace(/^(.*)\/(.*)([a-z])\.jpg$/i,"$1/$2n.jpg");}}}}}else{if(e.fbp.test(i)){return i.replace(/^(.*)\/raw\/(.*)$/i,"$1/image_thumb/$2?maxwidth="+f);}}}}}return i;}else{if(i.indexOf("https://")==0){return i;}else{var b=".lifeblob.com/lifeblob/",r="original",c=g||{};if(c.temp){return["http://static",ut.getStaticOffset(i),b,"temp/",c.personId,"/",i,".jpg"].join("");}else{if(f<=100){r="thumb";}else{if(f<=200){r="small";}else{if(f<=512){r="medium";}else{if(f<=1024){r="large";}}}}var a=["http://static",ut.getStaticOffset(i),b,"images/",r,"/",t,"/"];if(c.captionUrl){var h=c.captionUrl,l=h.length;if(l>0){if(l>100){h=h.substring(0,100);}a.push(ut.getSEOText(h),"-");}}a.push(i,".jpg");return a.join("");}}}},getLargeImageURL:function(k,d,m,q,g){var e=this,i=ut.escapeHTML(k),f=Math.max(d,m);if(i.indexOf("http://")==0){if(e.fp.test(i)){i=i.replace(/^(.*)((_m|_s|_b|_t).jpg)$/,"$1.jpg");return i.replace(/^(.*)(.jpg)$/,"$1_b.jpg");}else{if(e.pp.test(i)){if(i.indexOf("s512")!=-1){return i;}else{return i.replace(/^(.*)(\/.*?.jpg)$/i,"$1/s720$2");}}else{if(e.sp.test(i)){return i.replace(/^(.*)-(.*)\.(.*)$/i,"$1-XL.$3");}else{if(e.fbp.test(i)){return i.replace(/^(.*)\/raw\/(.*)$/i,"$1/image_thumb/$2?maxwidth=500");}}}}return i;}else{if(i.indexOf("https://")==0){return i;}else{var b=".lifeblob.com/lifeblob/",o="original",c=g||{};if(c.temp){return["http://static",ut.getStaticOffset(i),b,"temp/",c.personId,"/",i,".jpg"].join("");}else{o="large";var a=["http://static",ut.getStaticOffset(i),b,"images/",o,"/",q,"/"];if(c.captionUrl){var h=c.captionUrl,l=h.length;if(l>0){if(l>100){h=h.substring(0,100);}a.push(ut.getSEOText(h),"-");}}a.push(i,".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,o,m,l,k,i){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:o,actor_id:i,user_message_prompt:m};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(m,e){if(!e){Suggest.init();var d=cm.get("suggest.all"),h=cm.get("suggest.friends"),l=cm.get("addressbook.friends"),f=cm.get("addressbook.friends.fidmap"),g=cm.get("suggest.fb");for(var k=0;k<m.length;k++){var i=m[k];if(i.pic_square==""){i.pic_square="http://cdn0.lifeblob.com/lifeblob/pic/default/medium.v1.jpg";}i.type=4;g.push({key:i.name,value:{k:"fbid",v:i.uid},original:i});if(f){if(f[i.uid]){continue;}f[i.uid]=i;}d.push({key:i.name,value:{k:"fbid",v:i.uid},original:i});h.push({key:i.name,value:{k:"fbid",v:i.uid},original:i});l.push({key:i.name,value:{k:"fbid",v:i.uid},original:i});}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,k){dojo.query(".fielderror").orphan();var h=dojo.byId("firstName"),i=dojo.byId("lastName"),d=dojo.byId("userEmail"),f=dojo.byId("invite"),l=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(l&&!l.value.match(e)){dojo.place(this.createErrorElement("Password should be minimum 6 characters and can contain only letters and numbers"),l,"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(i){var h=ut.getEmail(i.value);if(h){}else{dojo.addClass(i.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(i){if(i.selected){f=parseInt(i.value)-1;}});dojo.query("[name='date']",h).forEach(function(i){c=parseInt(i.value,10);});dojo.query("[name='year']",h).forEach(function(i){d=parseInt(i.value,10);});dojo.query("[name='hour']",h).forEach(function(i){b=parseInt(i.value,10);});dojo.query("[name='minute']",h).forEach(function(i){g=parseInt(i.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,o=b.cont,i=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,k=b.getHappened("text"),c=b.getAddTo("textPost","add_pid"),f=b.getAddTo("textPost","add_fbid"),m=b.getAddTo("textPost","add_tid"),e=Suggest.getEmails("#textPost [name='add_email']"),l;if(!e){dojo.query("#text_email_error").style("display","block");dojo.query("#textPost input.suggest_text_box").onkeydown(function(p){dojo.query("#text_email_error").style("display","none");});return;}else{if(!i){dojo.query("#text_title_error").style("display","block");dojo.query("#text_title").onkeydown(function(p){dojo.query("#text_title_error").style("display","none");});return;}else{if(!k){console.log("3");dojo.query("tr.happened .date_error").style("display","block");dojo.query("tr.happened input").onkeydown(function(p){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(p){b._clearWaitingState();p=dojo.fromJson(p);if(p.status==0){l=b._constructMemoir(p.result);b._clear();b._showMemoir(l);if(g){dojo.publish("editPhotos",[l]);}dojo.publish("memoirAdded",[l]);}else{if(p.status==-2){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");});}}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(w){th.maximized=true;this.params=w;var v=this.data,h=this,x=v.photos,k=v.photo||v.video,c={1:M.MAX_VISIBILITY_ME,2:M.MAX_VISIBILITY_PARTICIPANTS,3:M.MAX_VISIBILITY_EVERYONE},g="",m=h.prev(false),o=h.next(false),q="",e="",i=h.loggedUser.person,t=(i.id==-1),l="",u=v.visibility,p="No more posts",b=p,r;r=dojo.query(".mm")[0];if(m){b="Previous: "+m.data.title;}q=["<img action='blob-left' style ='margin-right:3px' class='ai ",(m?"":"hide"),"' src='http://cdn1.lifeblob.com/lifeblob/img/timeline/maxblob/move-left.v1b81ab.png' title='",b,"'/>"].join("");b=o?("Next: "+o.data.title):p;e=["<img action='blob-right' style='margin-right:3px;' class='ai ",(o?"":"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(v.title),"/show/",v.id].join("");f=escape(f);f=f.replace("+","%2B");f=f.replace("/","%2F");var a=["mailto:?subject=Check%20out%20",v.title,"&body=Hi,%0D%0A%0D%0AI%20would%20like%20to%20share%20this%20post%20about%20%22",v.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("");r.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;'>",q,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'>",v.title,"</h1>","<div class='by_author'>","<span class='c9'>by </span>","<a class='by' href='",ut.getUrl({display:v.created.by_person.displayName,type:PERSON_TYPE}),"'>",v.created.by_person.name,"</a>","<span class='dt'> on ",v.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/',v.title,"/show/",v.id,'&amp;style=compact"></iframe>','<a class="fbshare" ext="facebook" action="share-ext" href="http://www.facebook.com/sharer.php?u=',f,'" title="Submit ',v.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(!k&&(!w||!w.history)&&!h.ignoreUrl){dojo.publish("chgLoc",[["at=",v.happened.dateFormat(DP[2]),"&mid=",v.id,"&max=true"].join("")]);}dojo.publish("logEvent",["/lb/blob/timeline/"+(h.isParticipant()?"own/":"other/")+h.getObj().type+(w&&w.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 R=this,W=R.data,J=W.title,w=R.getObj(),b=(W.photos?W.photos.length:0),f=(W.videos?W.videos.length:0),y=W.hasDesc,t=b+f,E=t+(y?1:0),O=R.loggedUser.person,V=R.isOwner(),K=R.isContributor(),B=R.isParticipant(),e=(V||K||B),P=(V||B),r=R.hasDelete(),i=R.isTimelineOwner(),N=(O.id==-1),Y=W.likes||[],x=W.people,g=W.place,F=W.tags,S=W.topics,T=ut.getSEOText(W.title),m=W.service,z=m.id,l=m.source,h=(z==APP_TYPE.FREEBASE||z==APP_TYPE.DAYLIFE),k=["http://www.lifeblob.com/blob/",T,"/show/",W.id].join(""),G=k,v=0,p=0,Q=(b>0),u=Q,X=escape(k),a=R.params,I=R._getThumbs(a),q=F?F.length:0,A=(W.comments?W.comments.items.length:0),C=0,U,D,o,c,H;W.tagMap={};W.likes=Y;R.current={id:0,seq:0,type:0};if(q){for(H=0;H!=q;H++){var L=F[H];W.tagMap[L.id]=L;}}console.log(w);if(w.contest||(w.type==TOPIC_TYPE&&w.category&&w.category==521)){W.voteMode=true;}W.seoTitle=T;W.isEditable=e;k=escape(k);k=k.replace("+","%2B");k=k.replace("/","%2F");W.url=k;W.liked=R._isLiking(),R._rebuildTagCloud();dojo.query(".memoir_load").orphan();dojo.query(".mm .content .left").forEach(function(Z){if(I&&I.matched){u=true;c=I.matched;if(c.type==1){Q=true;v=c.seq;if(v>0){C=v;}}else{p=c.seq;Q=false;if(p>0){C=p+b;}}}var ag=(!x||!x.length),ah=!g,ai=(!S||!S.length);D=["<table cellspacing='0' cellpadding='0' border='0' class='pt'>","<td class='mmtd td'></td>","<td class='td'>"];if(y){var af="<div>"+dojo.trim(W.descFull)+"</div>",d=dojo.place(af,"dummy","only");D.push("<div class='dect ",(t>0?"hidden":""),"'><div class='desc'><div class='c'>");D.push("<div class='cont'>",d.innerHTML,"</div></div></div>");D.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'/>");D.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(P){dojo.addClass(Z,"showdef");}if(t){var ae="hide",aa=C!=0,ac=(C<E+1&&E!=1),ad="";if(E<=1){ae="hidden";}if(e){var ab=['<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 ',t?"":"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>"];ad=ab.join("");}D.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'>",ad,"<span class='cs c'>","<a class='link ha la' action='comment-show'>",M.COMMENT,"</a> <span class='cnt'>",(A>0?"("+A+")":""),"</span>","</span>","<span class='likes'>&nbsp;</span>","</div>","</div>",Q?["<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>");}D.push("</td><td class='mmtd td'>");if(t){D.push("<img src='http://cdn1.lifeblob.com/lifeblob/img/theme-gray/spinners/spinner-16-blue.vb00628.gif' class='l'/>");}D.push("</td></table>");if(t){D.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">',R._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>");}D.push("<div class='bcw clearall lpanelspacer'>",R._getCommentsHtml(),"</div>");D.push("<div class='vlist clearall lpanelspacer tc-people ",ag?"hidden":"","'>");D.push(R._getRelatedHListHtml(e,"people",x,"Shared with people","Edit"));D.push("</div>");D.push("<div class='vlist clearall lpanelspacer tc-lifeblobs ",ai?"hidden":"","'>");D.push(R._getRelatedVListHtml(e,"lifeblobs",S,"Shared with groups","Edit"));D.push("</div>");if(e&&(ag||ai)){D.push("<div class='sb ab clearall lpanelspacer'>");if(ag){D.push("<button type='button' action='edit-people'>Add People</button>");}if(ai){D.push("<button type='button' action='edit-lifeblobs'>Add to Groups</button>");}D.push("</div>");}if(h){D.push("<div class='attr clearall'></div>");}else{if(l){D.push("<div class='attr clearall'>Source: <a rel='nofollow' href='",l,"' target='_blank'>",J,"</a></div>");}}Z.innerHTML=D.join("");if(y){o=dojo.position(dojo.query(".mm .desc .cont")[0],true);if(o.h<=400){dojo.query(".mm .desc").style("paddingBottom","20px");}}if(h){R._showAttribution();}});dojo.query(".mm .content .right").forEach(function(aa){var ad="Edit",Z,ag,d=[];if(N){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||B){var af="Delete";if(!R._submittedToContest()&&(B||V)){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"',t?"":"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/",W.id);if(w.type==TOPIC_TYPE){d.push("?tid=",w.id);}d.push("'>Edit</a></span>");}if(B||V||i){if(r==0||r==1){d.push("<span class='nav-li nohover'><a class='link la'");if(r==0){d.push("title='",af,"'action='delete'>");}else{d.push("title='",M.DELETE_POST,"'action='unlink'>");}d.push(af,"</a></span>");}}}d.push("</div></div>");}d.push("<div class='bmt ",((E>1)?"":"hidden"),"'>");if(E>1){d.push(R._getThumbsHtml({},I));}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=",W.id,"&authKey=",W.authKey,"&adSize=2' width=300 height=250 scrolling='no' frameborder=0>","</div>");}}var ab=(!x||!x.length),ac=!g,ae=(!S||!S.length);d.push("<div class='tc tc-likes hidden'></div>");aa.innerHTML=d.join("");});if(u){if(Q){R._showSolo(v);}else{R._showVideo(p+b);}}else{if(y){if(o.h>400){dojo.query(".mm .dect .ac").removeClass("hidden");}}}dojo.query(".mm .header .vw").forEach(function(d){d.innerHTML="("+W.views+" views)";dojo.removeClass(d,"hidden");});R._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(D){D=D||{};var m=this,C=m.data,F=C.photos,o=C.videos,v=C.hasDesc,l=(F?F.length:0),x=(o?o.length:0),A=l+x,G=A+(v?1:0),f=[],b=[],H=0,k=0,h=4,c=(D.srcSeq?parseInt(D.srcSeq):-1),z=(D.photo?parseInt(D.photo):-1),t=(D.video?parseInt(D.video):-1),a=(D.fromSeq?parseInt(D.fromSeq):-1),y,r,u,B,E=[],i=0,g=0;for(y=0;y<l;y++){r=F[y];B={seq:y,id:r.id,type:1};f.push(B);if(r.id==z||c==H){u=B;k=H;}H++;}for(y=0;y<x;y++){r=o[y];B={seq:y,id:r.id,type:2};f.push(B);if(r.id==t||c==H){u=B;k=H;}H++;}if(D.photoSeq){y=parseInt(D.photoSeq);r=F[y];if(r){u={seq:y,id:r.id,type:1};k=y;}}else{if(D.videoSeq){y=parseInt(D.videoSeq);r=o[y];if(r){u={seq:y,id:r.id,type:2};k=y+l;}}}H=f.length;if(H>0){if(a>-1){var w=a,e=h+a;if(e>H){w-=(e-H);e=H;}E=f.slice(w,e);k=a;}else{if(k<3){var p=Math.min(h,H);E=f.slice(0,p);}else{if(k>(H-3)){E=f.slice(Math.max(H-h,0),H);}else{var q=0;if(D.lastOffset){q=parseInt(D.lastOffset);}if(!q){E=f.slice(k-2,k+3);}else{if(q==4){k--;}else{if(q==1){k++;}}E=f.slice(k-2,k+3);}}}}}if(!u&&A){if(l){u={seq:0,id:F[0].id,type:1};}else{if(x){u={seq:0,id:o[0].id,type:2};}}}if(a>-1){if(k<1&&v){b.push({seq:0,id:0,type:0});}}else{if(k<2&&v){b.push({seq:0,id:0,type:0});}}if(E.length>0){b=b.concat(E);}H=b.length;if(H>h){b=b.splice(0,h);H=h;}if(H>=1){i=b[0].seq;r=b[b.length-1];g=r.seq;if(r.type==2){g+=l;}}return{thumbnails:b,matched:u,start:i,end:g,currentSeq:k,total:A};},_keyHandlers:function(q){if(!th.maximized){return;}var c=this,g=c.params,e=q.target,r=q.charOrCode,i=dojo.keys,m=c.data,u=(m.photos?m.photos.length:0),f=(m.videos?m.videos.length:0),b=m.hasDesc?1:0,k=u+f+b,l=c.current,t=l.seq,g={lastOffset:0},a=g.cycleMode,o=l.type;var h=dojo.attr(e,"type"),p=e.nodeName;if(p&&p.toLowerCase()=="textarea"){return;}if(h=="textarea"||h=="text"){return;}switch(r){case i.LEFT_ARROW:switch(o){case 0:if(a&&f){c._hideText();c._showVideo(f-1,g);}else{if(a&&u){c._hideText();c._showSolo(u-1,g);}}break;case 1:if(t>0){c._showSolo(t-1,g);}else{if(b){c._showText();}else{if(a&&f){c._showVideo(f-1,g);}else{if(a&&u>0){c._showSolo(u-1,g);}}}}break;case 2:if(t>0){c._showVideo(t-1,g);}else{if(u){c._showSolo(u-1,g);}else{if(b){c._showText();}else{if(a&&f>1){c._showVideo(f-1,g);}}}}break;}break;case i.RIGHT_ARROW:switch(o){case 0:if(u){c._hideText();c._showSolo(0,g);}else{if(f){c._hideText();c._showVideo(0,g);}}break;case 1:if(t<u-1){c._showSolo(t+1,g);}else{if(f){c._showVideo(0,g);}else{if(a&&b){c._showText();}else{if(a&&t!=0){c._showSolo(0,g);}}}}break;case 2:if(t<f-1){c._showVideo(t+1,g);}else{if(a&&b){c._showText();}else{if(a&&u){c._showSolo(0,g);}else{if(a&&t!=0){c._showVideo(0,g);}}}}break;}break;default:return;}dojo.stopEvent(q);},_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(ay){var i=ay.results,d,c,ax;for(d in i){c=i[d].shortUrl;}d=c||T;ax=window.open(["http://twitter.com/home?status=Check+out+",ar.title,"+at+",d,"+%23lifeblob"].join(""),"_blank");ax.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(i){dojo.style(i,"opacity","0");dojo.removeClass(i,"hidden");dojo.fadeIn({node:i,onEnd:function(){dojo.addClass(i,"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,aG=v.loc,aF=d.result,aA=ut.getImageURL(aG,100,100,k,c),ay=ut.getImageURL(aG,75,0,k,c),ax=ut.getImageURL(aG,495,0,k,c),i=ut.getImageURL(aG,176,0,k,c),aE=ut.getImageURL(aF,100,100,k,c),aD=ut.getImageURL(aF,75,0,k,c),aC=ut.getImageURL(aF,495,0,k,c),az=ut.getImageURL(aF,176,0,k,c),aB=cm.get("imageSizeCache");v.loc=aF;if(aB){aB[("mml:"+k+":"+P)]=null;aB[("mms:"+k+":"+P)]=null;}al._showSolo(P);dojo.query("img[src='"+i+"']").attr("src",az);dojo.query("img[src='"+aA+"']").attr("src",aE);dojo.query("img[src='"+ay+"']").attr("src",aD);}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 i=al.current,c=i.type==1;if(c){al._showMediaComments(i.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 i=ar.comments,c=d.result;if(!i){i={items:[],people:[ad]};i.items.sorted=true;ar.comments=i;}c.creator=al.loggedUser.person;c.created_at_parsed=Date.parseDate(c.created_at,DP[1],true);c.parsed=true;i.items.unshift(c);dojo.query(".mm .bcw").forEach(function(ax){ax.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(ax){var d="",c=dojo.attr(X,"seq"),i=dojo.attr(X,"media");dojo.query(".mc",ax).forEach(function(ay){d=ay.innerHTML;});ax.innerHTML=["<textarea class='txt'>",d,"</textarea>","<input class='eia' type='submit' media='",i,"' seq='",c,"' action='caption-s' value='",M.MAX_SAVE,"'/>","<input class='eia' type='button' media='",i,"' 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(ay){var d=dojo.query(".txt",ay)[0].value,c=dojo.attr(X,"seq"),ax=dojo.attr(X,"media"),i=(ax=="photo"),az=i?ar.photos[c]:ar.videos[c];az.caption=d;if(i){API_SVC.setPhotoCaption(k,az.id,d);}else{API_SVC.setVideoCaption(k,az.id,d);}al._showCaption(c,i);});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),m=".mm .dect",e=m+" .img[action='text-down']",d=m+" .img[action='text-up']",o="invisible",k=dojo.position(dojo.query(m+" .cont")[0],true),i=k.h,l=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(o);}else{dojo.query(e).removeClass(o);}}}else{if((l-b)<i){b-=h;g=-1*(i-l);if(b<g){b=g;}dojo.style(f,c,b+"px");if(b==g){dojo.query(e).addClass(o);}else{dojo.query(d).removeClass(o);}}}});},_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(i){if(i.stat!="ok"){return;}var d=i.result,p=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(p&&!b){b=[];o.people=b;}for(g=0;g<p;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(i){dojo.query(".submitToContest").addClass("hidden");if(i.stat!="ok"){return;}var d=i.result,p=i.result.length;dojo.query(".submitToContestContainer").forEach(function(q){q.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(p){o=[];k.topics=o;}for(e=0;e<p;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,q=e.data,f=q.topics,i=[],c=[],p,l,k;dojo.query(".mm .bloblinks .grp").forEach(function(d){dojo.query(".act",d).forEach(function(u){u.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(u){c.push(parseInt(dojo.attr(u,"id").substring(2)));});});if(f){for(p=0,l=f.length;p<l;p++){i.push(f[p].id);}}var o=i.complement(c),h=c.complement(i),t=cm.get("user.topics"),b=t?t.length:0,a={},m=[],g=[],r;for(p=0;p<b;p++){r=t[p].original;a[r.id]=r;}for(p=0;p<o.length;p++){r=a[o[p]];if(r){g.push(r.name);}}for(p=0;p<h.length;p++){r=a[h[p]];if(r){m.push(r.name);}}API_SVC.updateTopics({memoirId:q.id,topicsToAdd:h,topicsToDelete:o}).addCallback(e,"_onUpdateGroups",h,o,{dropDown:true,groupNamesToAdd:m,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(k){var i=dojo.create("div",{"class":"ei"},k,"only"),g=c._getAction("e"+b),i,h;dojo.place(g,i,"after");h=new Suggest(i,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(q){var p=e?h[b].tags:c[b].tags,l=f._getTags(p),i=l.length,o=(e?"photo":"video"),m=[],k,d;dojo.removeClass(q,"hidden");if(i){m.push("<span class='mc'>");for(k=0;k<i;k++){d=l[k];m.push("<a class='la' href='",d.url,"'>",d.name,"</a>");if(k<i-1){m.push(", ");}}m.push("</span>");}if(a){m.push("<a class='la ",(i?"link":""),"' media='",o,"' seq='",b,"' action='mediatag-edit'>",(i?"Edit":"Add Tags"),"</a>");}q.innerHTML=m.join("");});},_saveTags:function(k,l){var g=this,i=g.data,f=dojo.query(".mm .mtg .t")[0],m=[],a;dojo.query("input[name='tag_name']",f).forEach(function(d){m.push(d.value);});dojo.query("input[name='tag_new']",f).forEach(function(d){m.push(d.value);});a=m.join(",");dojo.query(".eia",f).addClass("hidden");dojo.query("img.l",f).removeClass("hidden");if(l){var c=i.photos[parseInt(k)],b=c.id;API_SVC.setPhotoTags(i.id,b,a).addCallback(function(o){if(o.stat!="ok"){return;}var d=o.result,q=[];if(i.tags){i.tags=i.tags.concat(d);}else{i.tags=d;}for(var p=0;p<d.length;p++){q.push(d[p].id);}c.tags=q;g._addTags(d);g._showTags(k,true);});dojo.publish("logAjaxEvent",["edit","edit-tags","photo"]);}else{var e=i.videos[parseInt(k)],h=e.id;API_SVC.setVideoTags(i.id,h,a).addCallback(function(o){if(o.stat!="ok"){return;}var d=o.result,q=[];if(i.tags){i.tags=i.tags.concat(d);}else{i.tags=d;}for(var p=0;p<d.length;p++){q.push(d[p].id);}e.tags=q;g._addTags(d);g._showTags(k,false);});dojo.publish("logAjaxEvent",["edit","edit-tags","video"]);}},_addTags:function(k){var a=this,g=a.data,i=g.tags,c=i?i.length:0,b={},f,e,h;for(f=0;f!=c;f++){e=i[f];b[e.id]=e;}if(k){for(f=0,h=k.length;f!=h;f++){e=k[f];if(!b[e.id]){if(!i){g.tags=[];i=g.tags;b[e.id]=e;}i.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(J,c){J=J||{};if(!c){c=this._getThumbs(J);}var l=this,N=cm.get("imageSizeCache")||{},I=l.data,D=I.id,C=l.getObj(),B=C.type,H=(I.seoTitle||ut.getSEOText(I.title)),r=4,A=I.hasDesc,K=I.photos,t=I.videos,k=(K?K.length:0),F=(t?t.length:0),L=k+F+(A?1:0),q=["<div class='bms'>"],i=c.start,g=c.end,G=i+1,a=g+1,b=c.thumbnails,O=b.length,p,x,h,E,z,v,w,f,m,y;if(L>r){if(A){if(i==0&&g==3){a=g+2;}else{G=i+2;a=g+2;}}var e=g-r-3;if(e<0){e=0;}}for(p=0;p<O;p++){x=b[p];if(x.type==0){q.push("<a seq='0' offset='",(p+1),"' action='show-text' class='bma bmat'>T</a>");}else{z=x.seq;isPhoto=x.type==1;if(isPhoto){h=ut.getImageURL(K[z].loc,100,100,D,B);E="tp";f="photoId";}else{h=ut.escapeHTML(t[z].thumb);E="tv";z+=k;f="videoId";}q.push("<a class='bma' href='javascript:void(0);'>");if(!isPhoto){q.push("<img action='",E,"' browse='true' seq='",z,"' class='play' src='http://cdn0.lifeblob.com/lifeblob/img/theme-gray/common/video_play.vf0eacd.png'/>");}m="mms:"+D+":"+z;y=N[m];if(y&&(y.height||y.width)){q.push("<img offset='",(p+1),"' class='img' browse='true' action='",E,"' seq='",z,"' src='",h,"' style='");if(y.width){q.push("width:",y.width,"px;");}if(y.height){q.push("height:",y.height,"px;");}if(y.marginLeft){q.push("margin-left:",y.marginLeft,"px;");}q.push("'/></a>");}else{q.push("<img offset='",(p+1),"' class='img' browse='true' action='",E,"' seq='",z,"' src='",h,'\' onload=\'ut.scale(this, 67, 67, {"key": "',m,"\"});'/></a>");}}}if(L>r){w=A?(g+2==L):(g+1==L);var u=g+1;q.push("<div class='clearall'>");q.push("<a href='javascript:void(0);' fromSeq='",u,"' action='thumb-right' class='bmcm bmcr boldh clearall",(c.end+1==c.total?"invisible":""),"'>Next »</a>");q.push("<div class='index'>",c.start+1," - ",c.end+1," of ",c.total,"</div>");q.push("<a href='javascript:void(0);' fromSeq='",e,"' action='thumb-left' class='bmcm bmcl boldh ",((c.start==0)?"invisible":""),"'>« Prev</a>");q.push("</div>");}q.push("</div><div class='bmc'>");if(L>r){}q.push("</div>");return q.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(i){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(i=="reco-people"){b=e.people;}else{if(i=="reco-place"){b=e.place;}else{if(i=="reco-clicks"){b=e.photoclicks;}else{b=e.tag;c=8;}}}return f._showSubHiddenReco(a,g.type,b,i,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(i){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));i.innerHTML=h.join("");}else{i.innerHTML="No related photos found.";}});dojo.query(".rcs",d).forEach(function(i){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");i.innerHTML=h.join("");}else{dojo.addClass(d.parentNode,"hidden");i.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(i){dojo.query(" .t",i).forEach("item.innerHTML='("+p+")'");dojo.query(f).forEach(function(w){if(r>0){dojo.removeClass(w,u);}else{dojo.addClass(w,u);}dojo.query(c,w).removeClass(u);dojo.query(c+q,w).addClass(u);dojo.query(" .t",w).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",i).forEach("item.innerHTML='"+e+"'");dojo.query(" .bcc",i).forEach(function(w){w.innerHTML=b;});if(e=="post"){dojo.addClass(i,"hidden");}else{dojo.removeClass(i,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(q,f){var c=this,h=c.data,a=f||{},o=(h.photos?h.photos.length:0),e=(h.videos?h.videos.length:0),b=h.hasDesc?1:0,g=o+e+b,m=h.isEditable,i=q-o,l=h.videos[i];dojo.query(".mm .left").forEach(function(d){dojo.query(".pc .img",d).forEach(function(p){p.innerHTML="<div class='vd'>"+ut.getVideoEmbedCode(l.url,468,269,l.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(i,false);c._showTags(i,false);});c.current={id:l.id,seq:i,type:2};if(!a.skipThumbs){c._showThumb({videoSeq:i.toString(),lastOffset:a.lastOffset});}c._showMediaComments(0,"post");c._showVideoLikesData(l.id,2);dojo.query(".mm .lk .nav-li").addClass("hidden");if(!c.ignoreUrl){var k=["at=",h.happened.dateFormat(DP[2]),"&mid=",h.id,"&max=true","&video=",l.id];dojo.publish("chgLoc",[k.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(l){var d=e?h[b].caption:c[b].caption,m=!f.isEmpty(d),k=(e?"photo":"video"),i=[];dojo.removeClass(l,"hidden");if(m){i.push("<h2 class='mc'>",ut.wb(d,20),"</h2>");}if(a){i.push("<a class='la ",(m?"link":""),"' media='",k,"' seq='",b,"' action='caption-edit'>",(m?"Edit":"Add a Caption"),"</a>");}l.innerHTML=i.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(i,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(m){var l=[],k,d,o;for(k=i;k<h;k++){d=g[k];o="mml:"+a+":"+k;l.push("<img src='",ut.getImageURL(d.loc,495,0,a,c),'\' onload=\'ut.scale(this, 468, 0, {"key": "',o,"\"});'/>");}m.innerHTML=l.join("");});},_getShareHtml:function(){return"";},_showSolo:function(u,g){var e=this,b=g||{},m=e.data,r=m.title,v=m.isEditable,k=m.id,i=cm.get("imageSizeCache")||{},c=e.getObj(),t=m.photos,q=t.length,f=(m.videos?m.videos.length:0),a=t[u],h=e._getImgCaption(a),l=("mml:"+k+":"+u),w;dojo.query(".mmtd .l").removeClass("hidden");dojo.query(".photominheight").removeClass("photominheight");dojo.query(".mm .left .pc > .img").forEach(function(o){w=i[l];var d=ut.getImageURL(a.loc,495,0,k,{captionUrl:h});if(w&&(w.height||w.width)){var p=["<img class='img' alt='",h,"' title='",h,"' src='",d,"' id='",a.id,"' style='"];if(w.width){p.push("width:",w.width,"px;");}if(w.height){p.push("height:",w.height,"px;");}if(w.marginLeft){p.push("margin-left:",w.marginLeft,"px;");}p.push("'/>");p.push(e._getShareHtml());photoDiv=dojo.create("div",{seq:u,"class":"ic icl",innerHTML:p.join("")},o,"first");e._showImage(u,w);}else{var p=["<img class='img' alt='",h,"' title='",h,"' src='",d,"' id='",a.id,"'/>",e._getShareHtml()].join("");photoDiv=dojo.create("div",{seq:u,"class":"ic icl",innerHTML:p},o,"first");dojo.query(".ic:first-child img.img",o).onload(function(x){var y=ut.scale(x.target,468,0,{key:l});e._showImage(u,y);});}});dojo.query(".media_prev").attr("seq",u).forEach(function(d){if(u==0){dojo.addClass(d,"hidden");}else{dojo.removeClass(d,"hidden");}});dojo.query(".media_next").attr("seq",u).forEach(function(d){if((u+1)==(q+f)){dojo.addClass(d,"hidden");}else{dojo.removeClass(d,"hidden");}});e.current={id:a.id,seq:u,type:1};if(!b.skipThumbs){e._showThumb({photoSeq:u.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,k,c.type));});dojo.query(".e",d).forEach(function(o){dojo.removeClass(o,"hidden");dojo.query(".nav-sub-a",o).attr("href","/photo/"+m.id+"/allSizes/"+a.id);});if(v){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/"+m.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(o,m){var e=this,w=e.data,y=(w.photos?w.photos.length:0),g=(w.videos?w.videos.length:0),q=w.hasDesc?1:0,v=y+g+q,p=w.photos[o],a=!e.isEmpty(p.caption),f=p.faceTags,k=f?f.length:0,i=w.isEditable,c=e.loggedUser,x=m?true:false,u,r,t,l,h;dojo.query(".mm .ild").orphan();dojo.query(".mm .left").forEach(function(A){dojo.query(".mmtd .l").addClass("hidden");var z=0;dojo.query(".pc .ic",A).filter(function(B){z++;return z>1;}).orphan();dojo.query(".pc .vd",A).orphan();dojo.query(".pc .ic",A).removeClass("icl");dojo.query(".pc .ic img.img",A).forEach(function(B){if(!x){m=ut.scale(B,468,0);}l=m.height;r=m.width;dojo.style(B.parentNode,{width:r+"px",height:l+"px"});if(!x){dojo.fadeIn({node:B.parentNode}).play();}u=dojo.position(B,true);});e._showCaption(o,true);e._showTags(o,true);var d=dojo.position(dojo.query(".mm .container")[0],true);dojo.query(".pc .ta",A).removeClass("hidden").addClass("tah").style({left:(u.x-d.x)+"px",top:(u.y-d.y)+"px",width:r+"px",height:l+"px"}).forEach(function(D){if(f){var C=[],B,E,G,F;for(B=0;B<k;B++){E=f[B];G=E.leftPercent*r/100;F=E.topPercent*l/100;G=(G<40)?40:((G>r-40)?r-40:G);F=(F<40)?40:((F>l-40)?l-40:F);C.push("<a href='javascript:void(0)' tagId='",E.id,"' class='f' style='left:",G,"px; top:",F,"px;'>","<div class='or'><div class='ir'></div></div>","<div class='n'>",E.tag,"</div>","</a>");}D.innerHTML=C.join("");dojo.fadeOut({node:D,duration:1000,onEnd:function(){dojo.removeClass(D,"tah");dojo.style(D,"opacity","1");}}).play(1000);}else{D.innerHTML="";}});dojo.query(".tg",A).forEach(function(G){if(f){var F=[],C=w.created.by,I=c.person.id,E,B,D,H;for(E=0;E<k;E++){B=f[E];H=B.person;D=(I==C)||(I==B.creator)||(I==H);if(H){F.push("<a href='",ut.getUrlFromId(H),"' action='showFaceMarker' tag='",B.id,"'>",B.tag,"</a>");}else{F.push("<span action='showFaceMarker' tag='",B.id,"'>",B.tag,"</span>");}if(D){F.push("<span class='del' tag='",B.id,"'><a action='tag-del' tag='",B.id,"' seq='",o,"' class='photo_tag_list_delete'></a>",((E<k-1)?", ":""),"</span>");}else{F.push((E<k-1)?", ":"");}}dojo.query(".p",G).forEach(function(J){J.innerHTML=F.join("");});}else{dojo.query(".p",G).forEach("item.innerHTML=''");}dojo.removeClass(G,"hidden");dojo.query("[action='showFaceMarker']",G).onmouseover(function(J){var K=dojo.attr(J.currentTarget,"tag");dojo.query(["a.f[tagId='",K,"']"].join("")).style("display","block").addClass("fv");}).onmouseout(function(J){var K=dojo.attr(J.currentTarget,"tag");dojo.query(["a.f[tagId='",K,"']"].join("")).removeClass("fv");});});});if(o<y-1){e._preloadImage(o+1,o+2);}if(!e.ignoreUrl){var b=["at=",w.happened.dateFormat(DP[2]),"&mid=",w.id,"&max=true","&photo=",p.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(k){var c=this,d=k.target,b=window.innerWidth||document.body.clientWidth,h=dojo.position(d,true),f=dojo.position(dojo.query(".mm .container")[0],true),i=k.pageX,a=(i-f.x),g=k.pageY,e;if((i-h.x)<40){a+=40;}if((i-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",((k.pageX-h.x)*100/h.w)+"").attr("yPercent",((k.pageY-h.y)*100/h.h)+"").forEach(function(l){dojo.query(".tag_name[loaded='no']",l).forEach(function(m){c.suggest=new Suggest(m,"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(i){var p=parseInt(dojo.attr(i,"xPercent")),l=parseInt(dojo.attr(i,"yPercent")),r=cm.get("addressbook.friends.idmap"),h=cm.get("addressbook.friends.fidmap"),f=c.loggedUser.person,k,q,g="";dojo.query("input[name='tag_id']",i).forEach(function(t){k=t.value;});if(k){g=((k==f.id)?f.name:r[k].name);API_SVC.tagPhoto({memoirId:b,photoId:a,personId:k,leftPercent:p,topPercent:l}).addCallback(c,"_onPhotoTag",d,g);dojo.publish("logAjaxEvent",["social","tag-photo-suggest","blob"]);}else{dojo.query("input[name='tag_fbid']",i).forEach(function(t){q=t.value;});if(q){g=h[q]?h[q].name:"";API_SVC.tagPhoto({memoirId:b,photoId:a,fbId:q,leftPercent:p,topPercent:l}).addCallback(c,"_onPhotoTag",d,g);dojo.publish("logAjaxEvent",["social","tag-photo-suggest-fb","blob"]);}else{var o=Suggest.getEmails("input[name='email_email']",i);if(!o){console.log("Invalid email / empty email id");return;}var m=(o.length==0)?"":o[0];dojo.query("input[name='tag_new']",i).forEach(function(t){g=t.value;});API_SVC.tagPhoto({memoirId:b,photoId:a,tag:g,personEmail:m,leftPercent:p,topPercent:l}).addCallback(c,"_onPhotoTag",d,g);dojo.publish("logAjaxEvent",["social","tag-photo-non-suggest","blob"]);}}dojo.style(i,"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 o=cm.get("user.topics"),e=c.topics,d=o?o.length:0,l=e?e.length:0,m,k,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'>"],i={};for(k=0;k<l;k++){i[e[k].id]=true;}for(k=0;k<d;k++){m=o[k];h=m.value.v;g.push("<div class='it'><input action='grpMultiChoose' class='checkbox' type='checkbox' id='ag",h,"' ");if(i[h]){g.push(" checked='checked'");}g.push("/><span action='grpChoose' class='lb' id='agl",h,"'>",m.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,i=g.data,a=i.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(i){dojo.create("div",{innerHTML:b._getFBAttribution(e,i.result.name)},f);},error:function(i){console.log(i);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(A,k,z,i,u,r){this._populateRelations();r=r?r:false;var h=this,q=h.timeline,p=q.getObj(),x=h.getData(),y=x.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",w=th.getUser().postHighlight,o=false,v=x.visibility,b=i[0],l=(v==3),e=q.embedded,g=e?"target='_blank'":"",c=!l?(["<img class='visibility' src='http://cdn3.lifeblob.com/lifeblob/img/theme-gray/common/lock_white.v8b6a21.gif' title='",f[v],"' />"].join("")):"";if(w){o=(Math.abs(new Date().getTime()-x.updated.getTime())<=NEW_POST_DELTA);}var m=["<div class='memoir_cont' slot='",A.slot,"'>","<div class='date'>"];if(p.type==TOPIC_TYPE&&p.category&&p.category==521){m.push("<span class='vote'><img class='img' src='http://cdn0.lifeblob.com/lifeblob/img/timeline/maxblob/like_on.vc88ea3.png'/>Vote</span>");}m.push("<span class='major'>",A.major,"</span><span class='minor'>",A.minor,"</div>","<div class='img_cont'>","<div class='media'>",(x.photo?["<img class='ep' src='",ut.getImageURL(x.photo,176,0,x.id),"' onload='Memoir.fitImage(this, null,",r,")'/>"].join(""):(x.video?["<img class='ep' src='",ut.getImageURL(x.video,176,0,x.id),"' style='width:176px' onload='Memoir.fitImage(this, true,",r,")'/><img class='play' src='",a,"' /> "].join(""):(!h.isEmpty(x.desc)?["<div class='text'>",x.desc,"</div>"].join(""):""))),"</div>");m.push("<div class='title_cont ",(o?"new_post":""),"'>","<div class='title_bg'></div>",(o?"<div class='title_bd'></div>":""),"<div class='title'>",h.truncate(x.title,28),"</div>","<div class='about ",l?"":"fl","'>",x.created.by_person.name,"</div>",c);m.push("</div></div>");m.push("</div>");b.innerHTML=m.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 k=h.pageX-95;var i=a.pixelMap[d.getZoom()][k];if(i){g.xMax=i.rightDate;}else{g.xMax=new Date(c.xMin.getTime()+(k*(c.xMax.getTime()-c.xMin.getTime())/e));}d.redraw({redraw:true});}});dojo.query(".sc_peg",f).forEach(function(i){var h=new dojo.dnd.move.parentConstrainedMoveable(i,{area:"padding",within:true});dojo.query(".sc_range",i).forEach(function(k){dojo.connect(h,"onMoveStart",function(l){d.interactive=false;dojo.fadeIn({node:k,onBegin:function(){dojo.style(k,"display","block");}}).play();});h.onMove=function(m,t){var q=m.marginBox;var p=t.l-q.l-95;var r=a.pixelMap[d.getZoom()][Math.floor(p)];var l=parseInt(dojo.style(i,"width"));if(r){h.constraintBox.r=e-r.right+r.left;g.xMax=r.rightDate;dojo.animateProperty({onBegin:function(){k.innerHTML=[r.leftDate.dateFormat("d My")," - ",r.rightDate.dateFormat("d My")].join("");},node:i,duration:50,properties:{width:{start:l,end:(r.right-r.left),unit:"px"},left:{end:r.left,unit:"px"}},onAnimate:function(v){var u=parseInt(v.width);dojo.style(k,"marginLeft",(u-100)/2+"px");}}).play();}else{if(!this.fetching){this.fetching=true;var o=p+l/2;g.xMax=new Date(c.xMin.getTime()+(o*(c.xMax.getTime()-c.xMin.getTime())/e));d.redraw({scroll:true});}}};dojo.connect(h,"onMoveStop",function(m){var q=parseInt(dojo.style(i,"left"));var l=parseInt(dojo.style(i,"width"));var p=a.pixelMap[d.getZoom()][Math.floor(q+a.pad+l/2)];try{g.xMax=p.rightDate;}catch(o){}dojo.fadeOut({node:k,onEnd:function(){dojo.style(k,"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 i=this.timeline,g=i.getBounds(),f=i.getObj().bounds,b=i.size.width-(i.embedded?125:60),h=i.getZoom(),k=cm.get("memoir.groups_ordered")[h],d=k.length,a=i.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(i,h,g){e=Math.floor(h%15);if(!e){a++;}if(!c[e]){c[e]=[];}c[e][a]=i;}).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 i=dojo.attr(f,"slot"),g=d.groups[d.zoom][i],h=g.getMemoir();if(!h.data.relations){h._populateRelations();}var e=h.data.relations;dojo.query("#tagcloud .relation").removeClass("connected").filter(function(m){var k;for(var l=0;l<e.length;l++){k=e[l].type+e[l].id;if(dojo.hasClass(m,k)){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(i){var k=this.timeline,c=i.target,b=c.id,g=this.maxBlob;if(!k.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(k.spawnLinks){var a=k.getBounds(),d=k.getObj();window.open(ut.getUrl({type:d.type,display:d.displayName,at:f.data.happened,id:f.data.id,src:"spawn"}),"_blank");}else{if(k.embedded){var a=k.getBounds(),d=k.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:i});}}}else{var e=dojo.attr(c,"slot");if(e){var h=this.groups[this.zoom][e],f=h.getMemoir();g.maximize(f,{evt:i});}}},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 m=this.timeline,h=this.zoom,e=this.groups,i=m.getBounds(),a=m.getObj().buckets,k=this.groupsOrdered[h],d=m.getBucket(i.xMax),c=dojo.indexOf(k,e[h][d.slot]),l=m.getBucket(i.xMin),f=dojo.indexOf(k,e[h][l.slot]);if((b>0)&&((f>0)||(!a[0].fetched))){return true;}else{if((b<0)&&((c<k.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(i){i.innerHTML=q.join("");});},gpRedraw:function(c,a,d,b){c.redraw(a,d);if(b){dojo.publish("timelineRedrawMiddle");}}});