if(!window.AjaxLife){window.AjaxLife={}}AjaxLife.Debug=function(A){if(window.console&&window.console.log){console.log(A)}};AjaxLife.Widgets={};AjaxLife.Network={};AjaxLife.Utils={};AjaxLife.Strings={};AjaxLife.InventoryDialogs={};AjaxLife.ActiveInventoryDialogs={};AjaxLife.Initialised=false;AjaxLife.SignedCallCount=0;AjaxLife.Signature=Math.random().toString().substr(2);AjaxLife.Debug("AjaxLife: Generated signature: "+AjaxLife.Signature);AjaxLife.Startup=function(){AjaxLife.Debug("AjaxLife: Init running...");AjaxLife.Fancy=!Prototype.Browser.IE&&!(window.opera&&window.opera.wiiremote);Ext.QuickTips.init();Ext.BLANK_IMAGE_URL=AjaxLife.STATIC_ROOT+"images/s.gif";Ext.MessageBox.buttonText={yes:_("Widgets.Yes"),no:_("Widgets.No"),ok:_("Widgets.OK"),cancel:_("Widgets.Cancel")};AjaxLife.Network.Connected=true;AjaxLife.Debug("AjaxLife: Widgets.Ext init...");AjaxLife.Widgets.Ext.init();AjaxLife.Debug("AjaxLife: NameCache init...");AjaxLife.NameCache.init();AjaxLife.Debug("AjaxLife: Friends init...");AjaxLife.Friends.init();AjaxLife.Debug("AjaxLife: InstantMessage init...");AjaxLife.InstantMessage.init();AjaxLife.Debug("AjaxLife: SpatialChat init...");AjaxLife.SpatialChat.init();AjaxLife.Debug("AjaxLife: Toolbar init....");AjaxLife.Toolbar.init("toolbar");AjaxLife.Debug("AjaxLife: StatusBar init....");AjaxLife.StatusBar.init();AjaxLife.Debug("AjaxLife: Search init...");AjaxLife.Search.init();AjaxLife.Debug("AjaxLife: AvatarsNear init...");AjaxLife.AvatarsNear.init();AjaxLife.Debug("AjaxLife: FriendList init...");AjaxLife.FriendList.init();AjaxLife.Debug("AjaxLife: Inventory init...");AjaxLife.Inventory.init();AjaxLife.Debug("AjaxLife: Stats init...");AjaxLife.Stats.init();AjaxLife.Debug("AjaxLife: ScriptDialogs init...");AjaxLife.ScriptDialogs.init();AjaxLife.Debug("AjaxLife: Keyboard init...");AjaxLife.Keyboard.init();AjaxLife.Debug("AjaxLife: Registering dummy AssetReceived handler...");AjaxLife.Network.MessageQueue.RegisterCallback("AssetReceived",Prototype.emptyFunction);AjaxLife.PageWait=AjaxLife.Widgets.Modal.wait(_("AjaxLife.Precaching"));AjaxLife.Debug("AjaxLife: Precaching...");setTimeout(function(){AjaxLife.Debug("AjaxLife: Precaching complete.");AjaxLife.Debug("AjaxLife: Map init...");AjaxLife.Map.init();AjaxLife.Debug("AjaxLife: Minimap init...");AjaxLife.MiniMap.init("minimap","minimap-landscape");AjaxLife.PageWait.hide();AjaxLife.PageWait=false;AjaxLife.Debug("AjaxLife: Network init...");AjaxLife.Network.init();AjaxLife.Widgets.Modal.alert(_("AjaxLife.MOTD"),gMOTD);AjaxLife.Debug("AjaxLife: Grabbing offline IMs");AjaxLife.Network.Send("GetOfflineMessages",{});AjaxLife.Debug("AjaxLife: Startup complete.");AjaxLife.Initialised=true},3000);AjaxLife.Debug("AjaxLife: Waiting for precaching to complete.")};window.onbeforeunload=function(){AjaxLife.Debug("AjaxLife: onbeforeunload fired.");if(AjaxLife.Network.Connected){AjaxLife.Debug("AjaxLife: pageleave prevented.");return"Leaving this page now is not recommended.\nIf you're sure you want to leave, you should first use the Logout button below."}};if(window.parent){try{window.parent.onbeforeunload=window.onbeforeunload;window.parent.AjaxLife=AjaxLife}catch(e){AjaxLife.Debug("AjaxLife: Unable to set onbeforeunload handler in parent.")}}AjaxLife.Debug("AjaxLife: Set up onbeforeunload handler.")
AjaxLife.AvatarsNear=function(){var A={};var C=false;var B=false;return{init:function(){C=new Ext.BasicDialog("dlg_nearby",{width:"300px",height:"400px",modal:false,shadow:true,autoCreate:true,title:_("AvatarsNear.WindowTitle"),proxyDrag:!AjaxLife.Fancy});B=new AjaxLife.Widgets.SelectList("lst_avatarsnear",C.body.dom,{width:"99%",callback:function(D){new AjaxLife.Profile(D)}});AjaxLife.Network.MessageQueue.RegisterCallback("AvatarAdded",function(D){AjaxLife.NameCache.Add(D.ID,D.Name);if(D.ID!=gAgentID){B.add(D.ID,D.Name)}B.sort()});AjaxLife.Network.MessageQueue.RegisterCallback("AvatarRemoved",function(D){B.remove(D.ID)});AjaxLife.Network.MessageQueue.RegisterCallback("Teleport",function(D){if(D.Status==AjaxLife.Constants.MainAvatar.TeleportStatus.Finished){B.clear()}});AjaxLife.Network.Send("RequestAvatarList",{callback:function(D){if(D.each){B.clear();D.each(function(E){AjaxLife.NameCache.Add(E.ID,E.Name);if(E.ID!=gAgentID){B.add(E.ID,E.Name)}});B.sort()}}})},open:function(D){if(D){C.show(D)}else{C.show()}},close:function(){C.hide()},toggle:function(D){if(!C.isVisible()){this.open(D)}else{this.close()}}}}()
AjaxLife.Constants={MainAvatar:{AgentFlags:{None:0,HideTitle:1},AgentState:{None:0,Typing:4,Editing:16},ChatAudibleLevel:{Not:-1,Barely:0,Fully:1},ChatSourceType:{System:0,Agent:1,Object:2},ChatType:{Whisper:0,Normal:1,Shout:2,StartTyping:4,StopTyping:5,Debug:6,OwnerSay:8},InstantMessageDialog:{MessageFromAgent:0,MessageBox:1,GroupInvitation:3,InventoryOffered:4,InventoryAccepted:5,InventoryDeclined:6,GroupVote:7,TaskInventoryOffered:9,TaskInventoryAccepted:10,TaskInventoryDeclined:11,NewUserDefault:12,SessionAdd:13,SessionOfflineAdd:14,SessionGroupStart:15,SessionCardlessStart:16,SessionSend:17,SessionDrop:18,MessageFromObject:19,BusyAutoResponse:20,ConsoleAndChatHistory:21,RequestTeleport:22,AcceptTeleport:23,DenyTeleport:24,GodLikeRequestTeleport:25,GotoUrl:28,Session911Start:29,Lure911:30,FromTaskAsAlert:31,GroupNotice:32,GroupNoticeInventoryAccepted:33,GroupNoticeInventoryDeclined:34,GroupInvitationAccept:35,GroupInvitationDecline:36,GroupNoticeRequsted:37,FriendshipOffered:38,FriendshipAccepted:39,FriendshipDeclined:40,StartTyping:41,StopTyping:42},InstantMessageOnline:{Online:0,Offline:1},LookAtType:{None:0,Idle:1,AutoListen:2,FreeLook:3,Respond:4,Hover:5,Conversation:6,Select:7,Focus:8,Mouselook:9,Clear:10},PointAtType:{None:0,Select:1,Grab:2,Clear:3},ScriptPermission:{None:0,Debit:2,TakeControls:4,RemapControls:8,TriggerAnimation:16,Attach:32,ReleaseOwnership:64,ChangeLinks:128,ChangeJoints:256,ChangePermissions:512,TrackCamera:1024,ControlCamera:2048},TeleportFlags:{Default:0,SetHomeToTarget:1,SetLastToTarget:2,ViaLure:4,ViaLandmark:8,ViaLocation:16,ViaHome:32,ViaTelehub:64,ViaLogin:128,ViaGodlikeLure:256,Godlike:512,NineOneOne:1024,DisableCancel:2048,ViaRegionID:4096,IsFlying:8192},TeleportLureFlags:{NormalLure:0,GodlikeLure:1,GodlikePursuit:2},TeleportStatus:{None:0,Start:1,Progress:2,Failed:3,Finished:4,Cancelled:5}},NetworkManager:{DisconnectType:{ClientInitiated:0,ServerInitiated:1,NetworkTimeout:2,SimShutdown:3},LoginStatus:{Failed:-1,None:0,ConnectingToLogin:1,ReadingResponse:2,ConnectingToSim:3,Redirecting:4,Success:5}},Animations:{avatar_type:"c541c47f-e0c0-058b-ad1a-d6ae3a4584d9"},Map:{SimAccess:{Min:0,Trial:7,PG:13,Mature:21,Down:254,Max:21,NonExistent:255},Item:{Telehub:1,PGEvent:2,MatureEvent:3,Popular:4,AgentLocations:6,LandForSale:7,Classified:8}},Inventory:{InventoryType:{Unknown:-1,Texture:0,Sound:1,CallingCard:2,Landmark:3,Script:4,Clothing:5,Object:6,Notecard:7,Category:8,Folder:8,RootCategory:0,LSL:10,LSLBytecode:11,TextureTGA:12,Bodypart:13,Trash:14,Snapshot:15,LostAndFound:16,Attachment:17,Wearable:18,Animation:19,Gesture:20},AssetType:{Unknown:-1,Texture:0,Sound:1,CallingCard:2,Landmark:3,Clothing:5,Object:6,Notecard:7,Folder:8,RootFolder:9,LSLText:10,LSLBytecode:11,TextureTGA:12,Bodypart:13,TrashFolder:14,SnapshotFolder:15,LostAndFoundFolder:16,SoundWAV:17,ImageTGA:18,ImageJPG:19,Animation:20,Gesture:21},TypeNames:{0:"texture",1:"sound",2:"calling card",3:"landmark",4:"LSL1 script",5:"clothing",6:"object",7:"notecard",8:"folder",10:"script",12:"texture",13:"body part",15:"snapshot",17:"attachment",18:"wearable",19:"animation",20:"gesture"}},Permissions:{Transfer:8192,Modify:16384,Copy:32768,Move:524288,All:2147483647},FriendRights:{None:0,CanSeeOnline:1,CanSeeOnMap:2,CanModifyObjects:4}}
AjaxLife.FriendList=function(){var F=false;var E=false;var D=false;var A=false;var C=false;var B=false;return{init:function(){return false;F=new Ext.BasicDialog("dlg_friendlist",{autoCreate:true,resizable:true,proxyDrag:!AjaxLife.Fancy,width:250,height:400,modal:false,shadow:true,title:_("FriendList.WindowTitle")});D=$(document.createElement("div"));A=$(document.createElement("input"));F.getEl().appendChild(D);E=new AjaxLife.Widgets.SelectList("friendlist_list",F.getEl(),Prototype.emptyFunction,Prototype.emptyFunction)}}}()
AjaxLife.Friends=function(){var B={};var F=[];var E=[];function D(G){if(!B[G.ID]||B[G.ID].Online!==G.Online){if(G.Name==""&&B[G.ID]&&B[G.ID].Name!=""){G.Name=B[G.ID].Name}AjaxLife.NameCache.Find(G.ID,function(H){G.Name=H;if(B[G.ID]){AjaxLife.Widgets.Ext.msg("",_("Friends.OnlineNotification",{name:G.Name,status:(G.Online?_("Friends.Online"):_("Friends.Offline"))}),"onoff");F.each(function(I){I(G)})}else{C(G)}B[G.ID]=G})}}function C(G){E.each(function(H){H(G)})}function A(){AjaxLife.Debug("Friends: Requesting friend list.");AjaxLife.Network.Send("GetFriendList",{callback:function(G){if(G.each){AjaxLife.Debug("Friends: Received friend list.");G.each(function(H){if(H&&H.Name!=""){AjaxLife.NameCache.Add(H.ID,H.Name)}else{AjaxLife.Debug("Got friend "+H.ID+" with null name.")}AjaxLife.NameCache.Find(H.ID,function(I){H.Name=I;if(!B[H.ID]){C(H)}B[H.ID]=H})})}else{alert(G)}}})}return{init:function(){AjaxLife.Network.MessageQueue.RegisterCallback("FriendOnOffline",function(G){D(G)});AjaxLife.Network.MessageQueue.RegisterCallback("FriendshipOffered",function(G){AjaxLife.Widgets.Modal.confirm("",_("Friends.FriendshipOffered",{name:G.AgentName}),function(H){if(H=="yes"){AjaxLife.Network.Send("AcceptFriendship",{IMSessionID:G.IMSessionID});AjaxLife.Widgets.Ext.msg("",_("Friends.YouAccept",{name:G.AgentName}));AjaxLife.SpatialChat.systemmessage(_("Friends.YouAccept",{name:G.AgentName}))}else{AjaxLife.Network.Send("DeclineFriendship",{IMSessionID:G.IMSessionID});AjaxLife.Widgets.Ext.msg("",_("Friends.YouDecline",{name:G.AgentName}));AjaxLife.SpatialChat.systemmessage(_("Friends.YouDecline",{name:G.AgentName}))}})});A()},StatusChange:function(I,G){if(B[I]){var H=AjaxLife.Utils.Clone(B[I]);H.Online=G;D(H)}else{AjaxLife.Debug("Failed AjaxLife.Friends.StatusChange operation while setting "+I+" to "+(G?"online":"offline"))}},GetFriends:function(){return B},IsFriend:function(G){return !!B[G]},AddStatusCallback:function(G){AjaxLife.Debug("Friends: Registered status callback.");F[F.length]=G},AddNewFriendCallback:function(G){AjaxLife.Debug("Friends: Registered new friend callback.");E[E.length]=G},ReloadFriendList:function(){A()},OfferFriendship:function(G){AjaxLife.Network.Send("OfferFriendship",{Target:G})},TerminateFriendship:function(G){AjaxLife.Network.Send("TerminateFriendship",{Target:G})},GrantRights:function(G,H){AjaxLife.Network.Send("ChangeRights",{Friend:G,Rights:H})}}}()
AjaxLife.InstantMessage=function(){var Q=false;var D=false;var P=700;var M=400;var H={};var I=new Array();var J=false;var A="red";var G=false;var V=false;var U=false;var C=false;var S={};function N(X){for(var W in X.Groups){var Y=X.Groups[W];S[W]=Y;AjaxLife.NameCache.AddGroup(W,Y.Name);C.add(W,Y.Name)}}function K(W){if(H[W]&&I.indexOf(W)==-1){J=H[W].tab.textEl.getStyle("color");I[I.length]=W}}function B(W){I=I.without(W);if(H[W]){H[W].tab.textEl.setStyle({color:J})}}function T(){G=!G;I.each(function(W){if(H[W]){H[W].tab.textEl.setStyle({color:G?A:J})}else{I=I.without(W)}})}function F(W){if(H[W]){H[W].content.dom.scrollTop=H[W].content.dom.scrollHeight;H[W].content.setStyle({height:(M-88)+"px"});H[W].entrybox.setStyle({width:(P-133)+"px"})}}function O(Z,X,Y){if(X.blank()){return }var W=H[Y];if(!W.groupIM&&!W.conferenceIM){AjaxLife.Network.Send("GenericInstantMessage",{Message:"none",Target:W.target,IMSessionID:Y,Online:AjaxLife.Constants.MainAvatar.InstantMessageOnline.Online,Dialog:AjaxLife.Constants.MainAvatar.InstantMessageDialog.StopTyping});AjaxLife.Network.Send("SimpleInstantMessage",{IMSessionID:Y,Target:H[Y].groupIM?Y:Z,Message:X});if(X.substr(0,3)=="/me"){X=gUserName+X.substr(3)}else{X=gUserName+": "+X}L(Y,X,{name:gUserName,id:gAgentID})}else{if(W.groupIM){AjaxLife.Network.Send("GroupInstantMessage",{Message:X,Group:Y})}else{if(W.conferenceIM){AjaxLife.Network.Send("GenericInstantMessage",{Target:W.target,Message:X,IMSessionID:Y,Dialog:17,Online:AjaxLife.Constants.MainAvatar.InstantMessageOnline.Online})}}}U=false}function R(Z,Y,b,d,c){if(!d){d=false}if(!c){c=false}if(H[b]){H[b].tab.activate();return }AjaxLife.Debug("InstantMessage: Creating session "+b+" with "+Z+" ("+Y+"; groupIM = "+d+"; conferenceIM = "+c+")");if(c){Y+=" Conference"}H[b]={tab:Q.getTabs().addTab("im-"+b,(d?"(hippos)":Y),"",true),name:Y,target:Z,content:false,entrybox:false,sendbtn:false,div_typing:false,session:b,groupIM:d,conferenceIM:c};if(d){AjaxLife.Debug("InstantMessage: Looking up group "+b+"...");AjaxLife.NameCache.FindGroup(b,function(g){AjaxLife.Debug("InstantMessage: Found group name: "+g);H[b].name=g;H[b].tab.setText(g)})}H[b].tab.on("close",function(){AjaxLife.Network.Send("GenericInstantMessage",{Message:"",Target:Z,IMSessionID:b,Online:AjaxLife.Constants.MainAvatar.InstantMessageOnline.Online,Dialog:AjaxLife.Constants.MainAvatar.InstantMessageDialog.SessionDrop});if(Q.getTabs().getActiveTab()&&Q.getTabs().getActiveTab().id==H[b].tab.id){D=false}delete H[b]});H[b].tab.bodyEl.setStyle({"overflow":"hidden"});var e=Ext.get(document.createElement("div"));e.setStyle({overflow:"auto",width:"99%"});H[b].content=e;H[b].tab.bodyEl.dom.appendChild(e.dom);var a=new AjaxLife.Widgets.ChatEntryBox(H[b].tab.bodyEl.dom,"im-input-"+b,function(g){O(Z,g,b)},{height:"20px"});H[b].entrybox=a;H[b].tab.bodyEl.setStyle({overflow:"hidden"});var X={position:"absolute",bottom:"0px",right:"0px"};H[b].sendbtn=new Ext.Button(H[b].tab.bodyEl,{handler:function(){O(Z,a.getValue(),H[b].session);a.resetLine()},text:_("InstantMessage.Send")});H[b].sendbtn.getEl().setStyle(X);X.right="48px";if(!d){(new Ext.Button(H[b].tab.bodyEl,{handler:function(){new AjaxLife.Profile(H[b].target)},text:_("InstantMessage.Profile")})).getEl().setStyle(X)}div_typing=Ext.get(document.createElement("div"));div_typing.addClass(["chatline","agenttyping"]);div_typing.dom.appendChild(document.createTextNode(_("InstantMessage.Typing",{name:Y})));H[b].div_typing=div_typing;if(!d&&!c){var f=new Ext.util.DelayedTask(function(){if(!H[b]){return }AjaxLife.Network.Send("GenericInstantMessage",{Message:"none",Target:H[b].target,IMSessionID:H[b].session,Online:AjaxLife.Constants.MainAvatar.InstantMessageOnline.Online,Dialog:AjaxLife.Constants.MainAvatar.InstantMessageDialog.StopTyping});U=false});a.addListener("keypress",function(g){if(!U){U=true;AjaxLife.Network.Send("GenericInstantMessage",{Message:"none",Target:H[b].target,IMSessionID:H[b].session,Online:AjaxLife.Constants.MainAvatar.InstantMessageOnline.Online,Dialog:AjaxLife.Constants.MainAvatar.InstantMessageDialog.StartTyping})}f.delay(2000)})}if(c){H[b].sendbtn.disable();a.setValue("Sending messages to conference IMs is currently unsupported.");a.disable()}H[b].tab.on("activate",function(){B(b);D=b;F(b);a.focus()});var W=Q.getTabs().getActiveTab().id;if(W=="im-default-tab"||W=="im-group-tab"){H[b].tab.activate()}return true}function L(b,c,Y){if(H[b]&&H[b].content){c=AjaxLife.Utils.LinkifyText(c);if(Y&&Y.name&&Y.id&&Y.id!=AjaxLife.Utils.UUID.Zero){c=c.sub(Y.name,'<span class="name clickable" onclick="new AjaxLife.Profile(\''+Y.id+"');\">"+Y.name+"</span>")}var W=Ext.get(document.createElement("div"));W.addClass(["agentmessage","chatline"]);var Z=Ext.get(document.createElement("span"));Z.addClass("chattimestamp");var a=new Date();Z.dom.appendChild(document.createTextNode("["+a.getHours()+":"+((a.getMinutes()<10)?("0"+a.getMinutes()):a.getMinutes())+"]"));W.dom.appendChild(Z.dom);W.dom.appendChild(document.createTextNode(" "));var X=document.createElement("span");X.innerHTML=c;W.dom.appendChild(X);H[b].content.dom.appendChild(W.dom);H[b].content.dom.scrollTop=H[b].content.dom.scrollHeight}else{AjaxLife.Widgets.Ext.msg("Warning","Instant message with unknown ID {0}:<br />{1}",b,c)}}function E(W){AjaxLife.Network.Send("GenericInstantMessage",{Message:"",Target:W,IMSessionID:W,Online:AjaxLife.Constants.MainAvatar.InstantMessageOnline.Online,Dialog:AjaxLife.Constants.MainAvatar.InstantMessageDialog.SessionGroupStart})}return{init:function(){Q=new Ext.BasicDialog("dlg_im",{height:400,width:700,minHeight:100,minWidth:150,modal:false,shadow:true,autoCreate:true,title:_("InstantMessage.WindowTitle"),proxyDrag:!AjaxLife.Fancy});Q.getTabs().addTab("im-default-tab",_("InstantMessage.OnlineFriends"),"",false).activate();V=new AjaxLife.Widgets.SelectList("im-friend-list",Q.getTabs().getActiveTab().bodyEl.dom,{width:"99%",callback:function(Z){AjaxLife.NameCache.Find(Z,function(a){R(Z,a,AjaxLife.Utils.UUID.Combine(gAgentID,Z))})}});var W=new Ext.util.DelayedTask(function(){V.sort()});var Y=function(Z){if(Z.Online){V.add(Z.ID,Z.Name)}else{V.remove(Z.ID)}W.delay(200)};AjaxLife.Friends.AddStatusCallback(Y);AjaxLife.Friends.AddNewFriendCallback(Y);Q.body.setStyle({overflow:"hidden"});P=700;M=400;Q.on("resize",function(b,Z,a){P=Z;M=a;F(D)});var X=Q.getTabs().addTab("im-group-tab",_("InstantMessage.Groups"),"",false);C=new AjaxLife.Widgets.SelectList("im-group-list",X.bodyEl.dom,{width:"99%",callback:function(Z){E(Z);R(Z,Z,Z,true);H[Z].entrybox.disable();H[Z].sendbtn.getEl().dom.enabled=false}});AjaxLife.Network.MessageQueue.RegisterCallback("ChatGroupJoin",function(Z){var a=Z.GroupChatSessionID;if(H[a]&&!H[a].entrybox.isEnabled()&&H[a].groupIM){if(Z.Success){H[a].entrybox.enable();H[a].sentbtn.dom.enabled=true}else{L(a,_("InstantMessage.SessionCreateFailed"))}}});AjaxLife.Network.MessageQueue.RegisterCallback("InstantMessage",function(b){if(b.IMSessionID==AjaxLife.Utils.UUID.Zero){return }var Z=false;if(b.GroupIM&&!S[b.IMSessionID]){b.GroupIM=false;Z=true}if(b.Dialog==AjaxLife.Constants.MainAvatar.InstantMessageDialog.MessageFromAgent||b.Dialog==AjaxLife.Constants.MainAvatar.InstantMessageDialog.SessionSend){if(!H[b.IMSessionID]){AjaxLife.Widgets.Ext.msg("",_("InstantMessage.NewIMSession",{from:b.FromAgentName}),"newimsession",true);if(b.GroupIM){E(b.IMSessionID)}var c=R(b.FromAgentID,b.FromAgentName,b.IMSessionID,b.GroupIM,Z);if(!c){AjaxLife.Widgets.Ext.msg("Lost Instant Message","From: {0}<br />Message: {1}",b.FromAgentName,b.Message);return }if(!Q.isVisible()){Q.show()}AjaxLife.Sound.Play("im")}var a=b.Message;if(a.substr(0,3)=="/me"){a=b.FromAgentName+a.substr(3)}else{a=b.FromAgentName+": "+a}if(H[b.IMSessionID].div_typing.dom.parentNode){H[b.IMSessionID].div_typing.dom.parentNode.removeChild(H[b.IMSessionID].div_typing.dom)}L(b.IMSessionID,a,{name:b.FromAgentName,id:b.FromAgentID});if(Q.getTabs().getActiveTab().id!="im-"+b.IMSessionID){K(b.IMSessionID)}}if(H[b.IMSessionID]){if(b.Dialog==AjaxLife.Constants.MainAvatar.InstantMessageDialog.StartTyping){if(H[b.IMSessionID].div_typing.dom.parentNode){H[b.IMSessionID].div_typing.dom.parentNode.removeChild(H[b.IMSessionID].div_typing.dom)}H[b.IMSessionID].content.dom.appendChild(H[b.IMSessionID].div_typing.dom);H[b.IMSessionID].content.dom.scrollTop=H[b.IMSessionID].content.dom.scrollHeight}else{if(b.Dialog==AjaxLife.Constants.MainAvatar.InstantMessageDialog.StopTyping){if(H[b.IMSessionID].div_typing&&H[b.IMSessionID].div_typing.dom.parentNode&&typeof H[b.IMSessionID].div_typing.dom.parentNode.removeChild=="function"){H[b.IMSessionID].div_typing.dom.parentNode.removeChild(H[b.IMSessionID].div_typing.dom)}}}}});AjaxLife.Network.MessageQueue.RegisterCallback("CurrentGroups",N);AjaxLife.Network.Send("RequestCurrentGroups",{});setInterval(T,500)},open:function(W){if(W){Q.show(W)}else{Q.show()}},close:function(){Q.hide()},toggle:function(W){if(!Q.isVisible()){this.open(W)}else{this.close()}},start:function(W){AjaxLife.NameCache.Find(W,function(X){R(W,X,AjaxLife.Utils.UUID.Combine(gAgentID,W))})}}}()
AjaxLife.Inventory=function(){var R=Ext.tree;var J={};var X={};var P=false;var E=false;var S=false;var V=false;var D=AjaxLife.Constants.Inventory.InventoryType;function F(T){switch(T){case D.Texture:return"item_texture.png";case D.Sound:return"item_sound.png";case D.Animation:return"item_animation.png";case D.CallingCard:return"item_callingcard.png";case D.Landmark:return"item_landmark.png";case D.LSL:return"item_script.png";case D.Wearable:return"item_clothing.png";case D.Object:return"item_object.png";case D.Notecard:return"item_notecard.png";case D.Category:case D.Folder:case D.RootCategory:return"folder_plain_closed.png";case D.Snapshot:return"item_snapshot.png";case D.Attachment:return"item_attach.png";case D.Animation:return"item_animation.png";case D.Gesture:return"item_gesture.png";default:return"../s.gif"}}function O(Y,T){switch(Y){case 0:if(T=="Textures"){return"folder_texture.png"}else{return O(-1)}case 3:return"folder_landmark.png";case 6:return"folder_object.png";case 13:return"folder_bodypart.png";case 5:return"folder_clothing.png";case 2:return"folder_callingcard.png";case 15:return"folder_snapshot.png";case 7:return"folder_notecard.png";case 10:return"folder_script.png";case 16:return"folder_lostandfound.png";case 21:return"folder_gesture.png";case 14:return"folder_trash.png";case 20:return"folder_animation.png";case 1:return"folder_sound.png";default:return"folder_plain_closed.png"}}function M(T,Y){AjaxLife.Debug("Moving "+T.attributes.UUID+" to folder "+Y.attributes.UUID);if(T.leaf){AjaxLife.Network.Send("MoveItem",{Item:T.attributes.UUID,TargetFolder:Y.attributes.UUID,NewName:T.attributes.Name})}else{AjaxLife.Network.Send("MoveFolder",{Folder:T.attributes.UUID,NewParent:Y.attributes.UUID})}}function Q(){var T=this;AjaxLife.Widgets.Modal.confirm("",_("Inventory.ConfirmEmptyTrash"),function(Y){if(Y=="yes"){AjaxLife.Debug("Inventory: Emptying trash...");AjaxLife.Network.Send("EmptyTrash",{foo:"bar",callback:function(a){alert(a)}});while(V.childNodes.length){try{V.eachChild(function(a){if(!a||!a.attributes){return }N(a);if(a!=V){V.removeChild(a)}})}catch(Z){AjaxLife.Debug("Exception while deleting. Going again.")}}AjaxLife.Debug("Inventory: Trash emptied.")}})}function N(T){if(J[T.attributes.UUID]){delete J[T.attributes.UUID]}if(!T.leaf){T.eachChild(N)}}function A(Y){var T=(Y&&Y.attributes)?Y:this;if(T.isAncestor(V)){AjaxLife.Widgets.Modal.confirm("",_("Inventory.ConfirmItemPurge",{item:T.attributes.Name}),function(Z){if(Z=="yes"){if(T.leaf){AjaxLife.Debug("Inventory: Sending DeleteItem("+T.attributes.UUID+")");AjaxLife.Network.Send("DeleteItem",{Item:T.attributes.UUID})}else{AjaxLife.Debug("Inventory: Sending DeleteFolder("+T.attributes.UUID+")");AjaxLife.Network.Send("DeleteFolder",{Folder:T.attributes.UUID})}N(T);T.parentNode.removeChild(T);AjaxLife.Debug("Inventory: Deleted "+T.attributes.UUID+" from trash.")}})}else{M(T,V);V.appendChild(T);AjaxLife.Debug("Inventory: Moved "+T.attributes.UUID+" to trash.")}}function I(){new AjaxLife.InventoryDialogs.Properties(this.attributes)}var L=0;function W(){var Y=(this.attributes.AssetUUID==AjaxLife.Utils.UUID.Zero)?this.attributes.UUID:this.attributes.AssetUUID;if(window.clipboardData&&window.clipboardData.setData){window.clipboardData.setData("Text",Y)}else{++L;AjaxLife.Widgets.Modal.alert("","UUID: <span id='uuid-copy-"+L+"'>"+Y+"</span>");if(document.createRange&&window.getSelection){var T=document.createRange();T.selectNode($("uuid-copy-"+L));window.getSelection().removeAllRanges();window.getSelection().addRange(T)}}}function U(){var T=this;AjaxLife.Widgets.Modal.show({buttons:Ext.Msg.OKCANCEL,closable:false,msg:_("Inventory.RenameItem"),prompt:true,value:T.attributes.Name,fn:function(Y,Z){if(Y!="ok"||Z==""){return }T.attributes.Name=Z;T.setText(Z);AjaxLife.Network.Send("UpdateItem",{ItemID:T.attributes.UUID,OwnerID:T.attributes.OwnerID,Name:Z})}})}function B(){var T=this;AjaxLife.Widgets.Modal.prompt("",_("Inventory.NewFolderName"),function(Y,Z){if(Y!="ok"||Z.blank()){return }AjaxLife.Network.Send("CreateFolder",{Parent:T.attributes.UUID,Name:Z,callback:function(b){if(b.FolderID!=""&&b.FolderID!=AjaxLife.Utils.UUID.Zero){var a=new R.TreeNode({text:Z,leaf:false,draggable:true,icon:AjaxLife.STATIC_ROOT+"images/inventory/"+O(-1,Z)});a.attributes.PreferredType=-1;a.attributes.OwnerID=gAgentID;a.attributes.UUID=b.FolderID;a.attributes.Name=Z;a.attributes.loaded=true;a.attributes.loading=false;J[b.FolderID]=a;T.appendChild(a);a.ensureVisible();a.select();AjaxLife.Debug("Inventory: Newly created folder "+b.FolderID+" added to inventory.")}else{AjaxLife.Widgets.Ext.msg("",_("Inventory.FolderCreationFailed",{folder:Z}))}}})});AjaxLife.Debug("Inventory: Created folder beneath "+this.attributes.UUID)}function C(){var T=this;AjaxLife.Widgets.Modal.prompt("",_("Inventory.NewNoteName"),function(Y,Z){if(Y!="ok"||Z.blank()){return }AjaxLife.Network.Send("CreateInventory",{Folder:T.attributes.UUID,Name:Z,Description:"(no description)",AssetType:AjaxLife.Constants.Inventory.AssetType.Notecard,InventoryType:AjaxLife.Constants.Inventory.InventoryType.Notecard})})}function G(Y){var T="";var Z=AjaxLife.Constants.Permissions;if(Y&Z.Copy){T+=_("AssetPermissions.Copy")}else{T+=_("AssetPermissions.NoCopy")}T+=", ";if(Y&Z.Modify){T+=_("AssetPermissions.Modify")}else{T+=_("AssetPermissions.NoModify")}T+=", ";if(Y&Z.Transfer){T+=_("AssetPermissions.Transfer")}else{T+=_("AssetPermissions.NoTransfer")}return T}function H(Y){var T=[];var Z=AjaxLife.Constants.Permissions;if(~Y&Z.Copy){T[T.length]=_("AssetPermissions.NoCopy")}if(~Y&Z.Modify){T[T.length]=_("AssetPermissions.NoModify")}if(~Y&Z.Transfer){T[T.length]=_("AssetPermissions.NoTransfer")}T=T.join(", ");return T}function K(T){var Y=new R.TreeNode({text:T.Name,leaf:true,draggable:true,icon:AjaxLife.STATIC_ROOT+"images/inventory/"+F(T.InventoryType),qtip:G(T.Permissions.OwnerMask)});Y.attributes.InventoryUUID=T.UUID;Y.attributes.UUID=T.UUID;Y.attributes.AssetType=T.AssetType;Y.attributes.AssetUUID=T.AssetUUID;Y.attributes.CreatorID=T.CreatorID;Y.attributes.OwnerID=T.OwnerID;Y.attributes.CreationDate=T.CreationDate;Y.attributes.Description=T.Description;Y.attributes.Flags=T.Flags;Y.attributes.InventoryType=T.InventoryType;Y.attributes.Name=T.Name;Y.attributes.Permissions=T.Permissions;return Y}return{init:function(){E=new Ext.BasicDialog("dlg_inventory",{autoCreate:true,resizable:true,proxyDrag:!AjaxLife.Fancy,width:350,height:400,modal:false,shadow:true,title:_("Inventory.WindowTitle")});var T=new R.TreeNode({text:_("Inventory.MyInventory"),draggable:false,icon:AjaxLife.STATIC_ROOT+"images/inventory/folder_plain_closed.png"});T.attributes.UUID=gInventoryRoot;T.attributes.loaded=false;T.attributes.folder=true;T.appendChild(new R.TreeNode({text:_("Inventory.Loading"),draggable:false,leaf:true,icon:AjaxLife.STATIC_ROOT+"images/s.gif"}));T.firstChild.attributes.UUID=AjaxLife.Utils.UUID.Zero;J[gInventoryRoot]=T;P=new R.TreePanel(E.body,{animate:AjaxLife.Fancy,enableDD:true,ddGroup:"InventoryDD",containerScroll:true,fitToFrame:true,"lines":false});P.setRootNode(T);P.on("dblclick",function(Z){if(!Z.attributes.InventoryType&&Z.attributes.InventoryType!==0){return }var Y=Z.attributes.InventoryType;switch(Z.attributes.InventoryType){case D.Texture:case D.Snapshot:new AjaxLife.InventoryDialogs.Texture(Z.attributes.AssetUUID,Z.attributes.Name);break;case D.Notecard:new AjaxLife.InventoryDialogs.Notecard(Z.attributes.AssetUUID,Z.attributes.InventoryUUID,Z.text);break;case D.LSL:if((Z.attributes.Permissions.OwnerMask&AjaxLife.Constants.Permissions.Copy)&&(Z.attributes.Permissions.OwnerMask&AjaxLife.Constants.Permissions.Modify)){new AjaxLife.InventoryDialogs.Script(Z.attributes.InventoryUUID,Z.attributes.Name)}else{AjaxLife.Widgets.Ext.msg("",_("Inventory.ScriptRestricted"))}break;case D.Landmark:new AjaxLife.InventoryDialogs.Landmark(Z.attributes.AssetUUID,Z.attributes.Name);break;case D.CallingCard:new AjaxLife.Profile(Z.attributes.CreatorID);break;default:AjaxLife.Widgets.Ext.msg("Error","Don't know what to do with #"+Z.attributes.InventoryType+"s!");break}});P.on("expand",function(Y){if(!Y.attributes.loaded&&!Y.attributes.loading){Y.attributes.loading=true;AjaxLife.Debug("Inventory: Loading folder "+Y.attributes.UUID);AjaxLife.Network.Send("LoadInventoryFolder",{UUID:Y.attributes.UUID})}});P.on("nodedrop",function(Z){var Y=Z.dropNode;var a=(Z.point=="append")?Z.target:Z.target.parentNode;M(Y,a)});P.on("nodedragover",function(Y){if(Y.point=="append"){if(Y.target==Y.dropNode.parentNode){return false}else{return true}}else{if(Y.dropNode.parentNode==Y.target.parentNode){return false}else{return true}}});P.render();AjaxLife.Network.MessageQueue.RegisterCallback("FolderUpdated",function(d){if(!J[d.FolderID]){return }var c=J[d.FolderID];var Y=c.attributes.loading;c.attributes.loaded=true;c.attributes.loading=false;d=d.Contents;if(d.length>0){var a=[];var Z=[];d.each(function(f){if(J[f.UUID]){return }var g=false;if(f.Type=="InventoryFolder"){var g=new R.TreeNode({text:f.Name,leaf:false,draggable:true,icon:AjaxLife.STATIC_ROOT+"images/inventory/"+O(f.PreferredType,f.Name)});if(f.PreferredType==14){V=g}g.attributes.PreferredType=f.PreferredType;g.attributes.OwnerID=f.OwnerID;g.attributes.UUID=f.UUID;g.attributes.Name=f.Name;var e=new R.TreeNode({text:_("Inventory.Loading"),draggable:false,leaf:true,icon:AjaxLife.STATIC_ROOT+"images/s.gif"});e.attributes.UUID=AjaxLife.Utils.UUID.Zero;g.appendChild(e);J[f.UUID]=g;a.push(g)}else{if(f.Type=="InventoryItem"){var g=K(f);J[f.UUID]=g;Z.push(g)}}});a.sortBy(function(e){return e.text}).each(function(e){c.appendChild(e)});Z.each(function(e){c.appendChild(e)})}if(Y){var b=c.firstChild;while(b&&b.attributes.UUID!=AjaxLife.Utils.UUID.Zero){b=b.nextSibling}if(b){c.removeChild(b)}}});AjaxLife.Network.MessageQueue.RegisterCallback("InventoryCreated",function(Z){if(!Z.Success){AjaxLife.Widgets.Modal.alert(_("Inventory.CreationFailed"));return }AjaxLife.Debug("Inventory: Got new inventory item "+Z.UUID+" to go in folder "+Z.FolderID);if(!J[Z.FolderID]){return }var Y=J[Z.FolderID];if(!Y.firstChild||Y.leaf){return }var a=K(Z);J[Z.UUID]=a;Y.insertBefore(a,Y.firstChild);a.ensureVisible();a.select()});P.on("contextmenu",function(a,f){f.stopEvent();if(a.attributes.UUID==AjaxLife.Utils.UUID.Zero){return }P.getSelectionModel().select(a);var Z=new Ext.menu.Menu({});if(a.getDepth()>0&&(a.leaf||a.attributes.PreferredType<=0)){var i=new Ext.menu.Item({text:_("Inventory.Delete")});i.on("click",A,a);Z.add(i)}if(a.leaf){var c=AjaxLife.Constants.Permissions;var g=a.attributes.Permissions.OwnerMask;var d=new Ext.menu.Item({text:_("Inventory.Properties")});d.on("click",I,a);Z.add(d);var b=new Ext.menu.Item({text:_("Inventory.Rename")});b.on("click",U,a);if(~g&c.Modify){b.disable()}Z.add(b);var Y=new Ext.menu.Item({text:_("Inventory.CopyUUID")});Y.on("click",W,a);if((~g&c.Copy)||(~g&c.Modify)||(~g&c.Transfer)){Y.disable()}Z.add(Y)}else{var j=new Ext.menu.Item({text:_("Inventory.CreateFolder")});j.on("click",B,a);Z.add(j);var h=new Ext.menu.Item({text:_("Inventory.CreateNote")});h.on("click",C,a);Z.add(h);if(a==V){var e=new Ext.menu.Item({text:_("Inventory.EmptyTrash")});e.on("click",Q,a);Z.add(e)}}Z.showAt(f.getXY())});P.getEl().addKeyListener(46,function(Y,a){var Z=P.getSelectionModel().getSelectedNode();if(Z){a.stopEvent();A(Z)}});AjaxLife.Network.MessageQueue.RegisterCallback("ObjectOffered",function(Y){if(J[Y.ObjectID]){return }if(Y.ObjectID!=AjaxLife.Utils.UUID.Zero){X[Y.ObjectID]=Y;AjaxLife.Network.Send("FetchItem",{Item:Y.ObjectID,Owner:gAgentID})}});AjaxLife.Network.MessageQueue.RegisterCallback("TaskItemReceived",function(Y){if(J[Y.ItemID]){return }X[Y.ItemID]={FromAgentName:"An object"};AjaxLife.Network.Send("FetchItem",{Item:Y.ItemID,Owner:gAgentID})});AjaxLife.Network.MessageQueue.RegisterCallback("ItemReceived",function(Z){if(J[Z.UUID]){return }if(X[Z.UUID]){AjaxLife.Widgets.Modal.alert(_("Inventory.InventoryReceivedTitle"),_("Inventory.InventoryReceived",{from:X[Z.UUID].FromAgentName,name:Z.Name,type:AjaxLife.Constants.Inventory.TypeNames[Z.InventoryType]}));delete X[Z.UUID]}if(J[Z.FolderID]){var Y=J[Z.FolderID];if(Y.leaf||!Y.firstChild){return }var a=K(Z);J[Z.UUID]=a;Y.insertBefore(a,Y.firstChild);a.ensureVisible();a.select()}});AjaxLife.Network.MessageQueue.RegisterCallback("NullTransfer",function(Y){AjaxLife.Widgets.Ext.msg("",_("Inventory.NullAssetTransfer"))});AjaxLife.Network.MessageQueue.RegisterCallback("InstantMessage",function(Y){if(Y.Dialog==AjaxLife.Constants.MainAvatar.InstantMessageDialog.InventoryAccepted){AjaxLife.Widgets.Ext.msg("",_("Inventory.OfferAccepted",{name:Y.FromAgentName}))}else{if(Y.Dialog==AjaxLife.Constants.MainAvatar.InstantMessageDialog.InventoryDeclined){AjaxLife.Widgets.Ext.msg("",_("Inventory.OfferDeclined",{name:Y.FromAgentName}))}}})},open:function(T){if(T){E.show(T)}else{E.show()}},close:function(){E.hide()},toggle:function(T){if(!E.isVisible()){this.open(T)}else{this.close()}},removenode:function(T){if(T&&T.parentNode){T.parentNode.removeChild(T)}if(T&&T.attributes&&J[T.attributes.UUID]){delete J[T.attributes.UUID]}},GetNode:function(T){if(J[T]){return J[T]}}}}()
AjaxLife.ActiveInventoryDialogs.Properties={};AjaxLife.InventoryDialogs.Properties=function(d){var I=AjaxLife.Constants.Permissions;function b(){var P=0;if(a.checked){P|=I.Modify}if(X.checked){P|=I.Copy}if(W.checked){P|=I.Transfer}d.Permissions.NextOwnerMask=P;AjaxLife.Network.Send("UpdateItem",{ItemID:d.UUID,OwnerID:d.OwnerID,NextOwnerMask:P});AjaxLife.Debug("InventoryProperties: Transmitting new NextOwnerMask for "+d.UUID+' ("'+d.Name+'"): '+P)}function H(){var P=T.value.strip();if(P==""){return }var f=AjaxLife.Inventory.GetNode(d.UUID);if(!f){return }f.setText(P);d.Name=P;AjaxLife.Network.Send("UpdateItem",{ItemID:d.UUID,OwnerID:d.OwnerID,Name:P});AjaxLife.Debug("InventoryProperties: Renaming "+d.UUID+' to "'+P+'"')}function C(){var P=Z.value;d.Description=P;AjaxLife.Network.Send("UpdateItem",{ItemID:d.UUID,OwnerID:d.OwnerID,Description:P});AjaxLife.Debug("InventoryProperties: Changing description for "+d.UUID+' to "'+P+'"')}if(AjaxLife.ActiveInventoryDialogs.Properties[d.UUID]){AjaxLife.ActiveInventoryDialogs.Properties[d.UUID].focus();return }var G=new Ext.BasicDialog("dlg_inv_properties_"+d.UUID,{width:350,height:320,modal:false,shadow:true,autoCreate:true,title:_("InventoryDialogs.Properties.Title",{name:d.Name}),resizable:false,proxyDrag:!AjaxLife.Fancy});AjaxLife.ActiveInventoryDialogs.Properties[d.UUID]=G;G.on("hide",function(){G.destroy(true);delete AjaxLife.ActiveInventoryDialogs.Properties[d.UUID]});$(G.body.dom).addClassName("properties");var Q=$(document.createElement("div"));Q.appendChild(document.createTextNode(_("InventoryDialogs.Properties.Name")));Q.setStyle({position:"absolute",top:"10px",left:"10px"});var T=$(document.createElement("input"));T.setStyle({position:"absolute",top:"10px",left:"90px",width:"230px"});T.value=d.Name;if(d.Permissions.OwnerMask&I.Modify){Ext.get(T).on("change",H)}else{T.disable()}var K=$(document.createElement("div"));K.appendChild(document.createTextNode(_("InventoryDialogs.Properties.Description")));K.setStyle({position:"absolute",top:"30px",left:"10px"});var Z=$(document.createElement("input"));Z.setStyle({position:"absolute",top:"30px",left:"90px",width:"230px"});Z.value=d.Description;if(d.Permissions.OwnerMask&I.Modify){Ext.get(Z).on("change",C)}else{Z.disable()}var S=$(document.createElement("div"));S.appendChild(document.createTextNode(_("InventoryDialogs.Properties.Owner")));S.setStyle({position:"absolute",top:"50px",left:"10px"});var F=$(document.createElement("div"));AjaxLife.NameCache.Find(d.OwnerID,function(P){F.appendChild(document.createTextNode(P))});F.setStyle({position:"absolute",top:"50px",left:"90px"});var B=new Ext.Button(G.body.dom,{handler:function(){new AjaxLife.Profile(d.OwnerID)},text:_("InventoryDialogs.Properties.Profile")});B.getEl().setStyle({position:"absolute",top:"48px",right:"25px"});var c=$(document.createElement("div"));c.appendChild(document.createTextNode(_("InventoryDialogs.Properties.Creator")));c.setStyle({position:"absolute",top:"75px",left:"10px"});var V=$(document.createElement("div"));if(d.CreatorID==AjaxLife.Utils.UUID.Zero){V.appendChild(document.createTextNode(_("InventoryDialogs.Properties.Unknown")))}else{AjaxLife.NameCache.Find(d.CreatorID,function(P){V.appendChild(document.createTextNode(P))})}V.setStyle({position:"absolute",top:"75px",left:"90px"});var R=new Ext.Button(G.body.dom,{handler:function(){new AjaxLife.Profile(d.CreatorID)},text:_("InventoryDialogs.Properties.Profile"),disabled:(d.CreatorID==AjaxLife.Utils.UUID.Zero)});R.getEl().setStyle({position:"absolute",top:"73px",right:"25px"});var U=$(document.createElement("div"));U.appendChild(document.createTextNode(_("InventoryDialogs.Properties.OwnerCan")));U.setStyle({position:"absolute",top:"95px",left:"10px"});var D=$(document.createElement("input"));D.setAttribute("type","checkbox");D.disable();if(d.Permissions.OwnerMask&I.Modify){D.setAttribute("checked","checked")}D.setStyle({position:"absolute",top:"111px",left:"10px"});var E=$(document.createElement("div"));E.appendChild(document.createTextNode(_("AssetPermissions.Modify")));E.setStyle({position:"absolute",top:"110px",left:"25px"});var M=$(document.createElement("input"));M.setAttribute("type","checkbox");M.disable();if(d.Permissions.OwnerMask&I.Copy){M.setAttribute("checked","checked")}M.setStyle({position:"absolute",top:"111px",left:"100px"});var L=$(document.createElement("div"));L.appendChild(document.createTextNode(_("AssetPermissions.Copy")));L.setStyle({position:"absolute",top:"110px",left:"115px"});var N=$(document.createElement("input"));N.setAttribute("type","checkbox");N.disable();if(d.Permissions.OwnerMask&I.Transfer){N.setAttribute("checked","checked")}N.setStyle({position:"absolute",top:"111px",left:"190px"});var e=$(document.createElement("div"));e.appendChild(document.createTextNode(_("AssetPermissions.Transfer")));e.setStyle({position:"absolute",top:"110px",left:"205px"});var Y=$(document.createElement("div"));Y.appendChild(document.createTextNode(_("InventoryDialogs.Properties.NextOwnerCan")));Y.setStyle({position:"absolute",top:"130px",left:"10px"});var a=$(document.createElement("input"));a.setAttribute("type","checkbox");if(d.Permissions.NextOwnerMask&I.Modify){a.setAttribute("checked","checked")}else{if(~d.Permissions.OwnerMask&I.Modify){AjaxLife.Debug("IntentoryProperties: Modify disabled.");a.disable()}}Ext.get(a).on("change",b);a.setStyle({position:"absolute",top:"146px",left:"10px"});var J=$(document.createElement("div"));J.appendChild(document.createTextNode(_("AssetPermissions.Modify")));J.setStyle({position:"absolute",top:"145px",left:"25px"});var X=$(document.createElement("input"));X.setAttribute("type","checkbox");if(d.Permissions.NextOwnerMask&I.Copy){X.setAttribute("checked","checked")}if((~d.Permissions.OwnerMask&I.Copy)||(~d.Permissions.NextOwnerMask&I.Transfer)){AjaxLife.Debug("IntentoryProperties: Copy disabled.");X.disable()}Ext.get(X).on("change",function(){if(X.checked){if(d.Permissions.OwnerMask&I.Transfer){W.enable()}}else{W.checked=true;W.disable()}b()});X.setStyle({position:"absolute",top:"146px",left:"100px"});var A=$(document.createElement("div"));A.appendChild(document.createTextNode(_("AssetPermissions.Copy")));A.setStyle({position:"absolute",top:"145px",left:"115px"});var W=$(document.createElement("input"));W.setAttribute("type","checkbox");if(d.Permissions.NextOwnerMask&I.Transfer){W.setAttribute("checked","checked")}if((~d.Permissions.OwnerMask&I.Transfer)||(~d.Permissions.NextOwnerMask&I.Copy)){AjaxLife.Debug("IntentoryProperties: Transfer disabled.");W.disable()}Ext.get(W).on("change",function(){if(W.checked){if(d.Permissions.OwnerMask&I.Copy){X.enable()}}else{X.checked=true;X.disable()}b()});W.setStyle({position:"absolute",top:"146px",left:"190px"});var O=$(document.createElement("div"));O.appendChild(document.createTextNode(_("AssetPermissions.Transfer")));O.setStyle({position:"absolute",top:"145px",left:"205px"});G.body.dom.appendChild(Q);G.body.dom.appendChild(T);G.body.dom.appendChild(S);G.body.dom.appendChild(F);G.body.dom.appendChild(c);G.body.dom.appendChild(V);G.body.dom.appendChild(U);G.body.dom.appendChild(D);G.body.dom.appendChild(E);G.body.dom.appendChild(M);G.body.dom.appendChild(L);G.body.dom.appendChild(N);G.body.dom.appendChild(e);G.body.dom.appendChild(K);G.body.dom.appendChild(Z);G.body.dom.appendChild(Y);G.body.dom.appendChild(a);G.body.dom.appendChild(J);G.body.dom.appendChild(X);G.body.dom.appendChild(A);G.body.dom.appendChild(W);G.body.dom.appendChild(O);G.show()}
AjaxLife.Keyboard=function(){var B=false;function A(D,E){if(!AjaxLife.Initialised||!AjaxLife.Network.Connected||!B){return }AjaxLife.Debug("Keyboard: Got keycode "+D);E.preventDefault();switch(D){case 72:if(E.shiftKey){if(E.altKey){AjaxLife.SpatialChat.systemmessage("hippos!")}else{AjaxLife.Map.GoHome()}}else{AjaxLife.SpatialChat.toggle()}break;case 73:AjaxLife.Inventory.toggle();break;case 84:AjaxLife.InstantMessage.toggle();break;case 70:AjaxLife.Search.toggle();break;case 77:AjaxLife.Map.toggle();break;case 81:AjaxLife.Widgets.Confirm(_("Toolbar.LogoutTitle"),_("Toolbar.LogoutPrompt"),function(F){if(F=="yes"){AjaxLife.Network.logout()}});break;case 49:if(!Prototype.Browser.IE){AjaxLife.Stats.toggle()}break;case 83:AjaxLife.Sound.Toggle();break}}function C(D,E){if(B){return }E.preventDefault()}return{init:function(){var D=Ext.get(document.body);D.addKeyListener({key:[72,73,84,70,77,81],ctrl:true,shift:false,alt:false},A);D.addKeyListener({key:[49,83],ctrl:true,shift:true,alt:false},A);D.addKeyListener({key:9},C);B=true},disable:function(){B=false},enable:function(){B=true}}}()
AjaxLife.ActiveInventoryDialogs.Script={};AjaxLife.InventoryDialogs.Script=function(B,A){if(AjaxLife.ActiveInventoryDialogs.Script[B]){AjaxLife.ActiveInventoryDialogs.Script[B].focus();return }var D=false;var F=false;var E=AjaxLife.Utils.UUID.Zero;D=new Ext.BasicDialog("dlg_script_"+B,{width:"500px",height:"520px",modal:false,shadow:true,autoCreate:true,title:_("InventoryDialogs.Script.WindowTitle",{name:A}),resizable:true,proxyDrag:!AjaxLife.Fancy});var C={};if(!Prototype.Browser.IE){C.backgroundColor="grey"}$(D.body.dom).setStyle(C).addClassName("script").update("Loading script, please wait...");AjaxLife.ActiveInventoryDialogs.Script[B]=D;D.on("hide",function(){delete AjaxLife.ActiveInventoryDialogs.Script[B];AjaxLife.Network.MessageQueue.UnregisterCallback("AssetReceived",F);D.destroy(true)});F=AjaxLife.Network.MessageQueue.RegisterCallback("AssetReceived",function(G){if(G.TransferID!=E){return }AjaxLife.Debug("InventoryDialogs: Received script asset "+G.AssetID);AjaxLife.Network.MessageQueue.UnregisterCallback("AssetReceived",F);if(G.Success){D.body.dom.update(AjaxLife.HighlightLSL(G.AssetData)).setStyle({backgroundColor:"white"})}else{D.body.dom.update("Couldn't download script: "+G.Error.escapeHTML())}});AjaxLife.Debug("InventoryDialogs: Requesting script asset with inventoryid "+B);AjaxLife.Network.Send("RequestAsset",{AssetID:AjaxLife.Utils.UUID.Zero,InventoryID:B,OwnerID:gAgentID,AssetType:AjaxLife.Constants.Inventory.InventoryType.LSL,callback:function(G){E=G.TransferID}});D.show()};AjaxLife.InventoryDialogs.Landmark=function(B,A){AjaxLife.Widgets.Modal.confirm(_("InventoryDialogs.Landmark.Title"),_("InventoryDialogs.Landmark.Message",{name:A}),function(C){if(C=="yes"){AjaxLife.Map.TPDialog();AjaxLife.Network.Send("Teleport",{Landmark:B})}})};AjaxLife.HighlightLSL=function(I){var F=["default","if","else","while","do","for","jump","return","state"];var C=["integer","float","vector","rotation","quaternion","key","string","list"];var G=["STATUS_PHYSICS","STATUS_ROTATE_X","STATUS_ROTATE_Y","STATUS_ROTATE_Z","STATUS_PHANTOM","STATUS_SANDBOX","STATUS_BLOCK_GRAB","STATUS_DIE_AT_EDGE","STATUS_RETURN_AT_EDGE","AGENT","ACTIVE","PASSIVE","SCRIPTED","CONTROL_FWD","CONTROL_BACK","CONTROL_LEFT","CONTROL_RIGHT","CONTROL_UP","CONTROL_DOWN","CONTROL_ROT_LEFT","CONTROL_ROT_RIGHT","CONTROL_LBUTTON","CONTROL_ML_LBUTTON","PERMISSION_DEBIT","PERMISSION_TAKE_CONTROLS","PERMISSION_TRIGGER_ANIMATION","PERMISSION_CHANGE_LINKS","PERMISSION_TRACK_CAMERA","AGENT_FLYING","AGENT_ATTACHMENTS","AGENT_SCRIPTED","AGENT_MOUSELOOK","AGENT_SITTING","AGENT_ON_OBJECT","AGENT_AWAY","AGENT_WALKING","AGENT_IN_AIR","AGENT_TYPING","AGENT_CROUCHING","AGENT_BUSY","AGENT_ALWAYS_RUN","PSYS_PART_INTERP_COLOR_MASK","PSYS_PART_INTERP_SCALE_MASK","PSYS_PART_BOUNCE_MASK","PSYS_PART_WIND_MASK","PSYS_PART_FOLLOW_SRC_MASK","PSYS_PART_FOLLOW_VELOCITY_MASK","PSYS_PART_TARGET_POS_MASK","PSYS_PART_TARGET_LINEAR_MASK","PSYS_PART_EMISSIVE_MASK","PSYS_PART_FLAGS","PSYS_PART_START_COLOR","PSYS_PART_START_ALPHA","PSYS_PART_END_COLOR","PSYS_PART_END_ALPHA","PSYS_PART_START_SCALE","PSYS_PART_END_SCALE","PSYS_PART_MAX_AGE","PSYS_SRC_ACCEL","PSYS_SRC_PATTERN","PSYS_SRC_INNERANGLE","PSYS_SRC_OUTERANGLE","PSYS_SRC_TEXTURE","PSYS_SRC_BURST_RATE","PSYS_SRC_BURST_PART_COUNT","PSYS_SRC_BURST_RADIUS","PSYS_SRC_BURST_SPEED_MAX","PSYS_SRC_BURST_SPEED_MIN","PSYS_SRC_MAX_AGE","PSYS_SRC_TARGET_KEY","PSYS_SRC_OMEGA","PSYS_SRC_ANGLE_BEGIN","PSYS_SRC_ANGLE_END","PSYS_SRC_PATTERN_DROP","PSYS_SRC_PATTERN_EXPLODE","PSYS_SRC_PATTERN_ANGLE","PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY","VEHICLE_TYPE_NONE","VEHICLE_TYPE_SLED","VEHICLE_TYPE_CAR","VEHICLE_TYPE_BOAT","VEHICLE_TYPE_AIRPLANE","VEHICLE_TYPE_BALLOON","VEHICLE_LINEAR_FRICTION_TIMESCALE","VEHICLE_ANGULAR_FRICTION_TIMESCALE","VEHICLE_LINEAR_MOTOR_DIRECTION","VEHICLE_LINEAR_MOTOR_OFFSET","VEHICLE_ANGULAR_MOTOR_DIRECTION","VEHICLE_HOVER_HEIGHT","VEHICLE_HOVER_EFFICIENCY","VEHICLE_HOVER_TIMESCALE","VEHICLE_BUOYANCY","VEHICLE_LINEAR_DEFLECTION_EFFICIENCY","VEHICLE_LINEAR_DEFLECTION_TIMESCALE","VEHICLE_LINEAR_MOTOR_TIMESCALE","VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE","VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY","VEHICLE_ANGULAR_DEFLECTION_TIMESCALE","VEHICLE_ANGULAR_MOTOR_TIMESCALE","VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE","VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY","VEHICLE_VERTICAL_ATTRACTION_TIMESCALE","VEHICLE_BANKING_EFFICIENCY","VEHICLE_BANKING_MIX","VEHICLE_BANKING_TIMESCALE","VEHICLE_REFERENCE_FRAME","VEHICLE_FLAG_NO_DEFLECTION_UP","VEHICLE_FLAG_LIMIT_ROLL_ONLY","VEHICLE_FLAG_HOVER_WATER_ONLY","VEHICLE_FLAG_HOVER_TERRAIN_ONLY","VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT","VEHICLE_FLAG_HOVER_UP_ONLY","VEHICLE_FLAG_LIMIT_MOTOR_UP","VEHICLE_FLAG_MOUSELOOK_STEER","VEHICLE_FLAG_MOUSELOOK_BANK","VEHICLE_FLAG_CAMERA_DECOUPLED","INVENTORY_ALL","INVENTORY_NONE","INVENTORY_TEXTURE","INVENTORY_SOUND","INVENTORY_LANDMARK","INVENTORY_OBJECT","INVENTORY_NOTECARD","INVENTORY_SCRIPT","INVENTORY_BODYPART","INVENTORY_ANIMATION","INVENTORY_GESTURE","ATTACH_CHEST","ATTACH_HEAD","ATTACH_LSHOULDER","ATTACH_RSHOULDER","ATTACH_LHAND","ATTACH_RHAND","ATTACH_LFOOT","ATTACH_RFOOT","ATTACH_BACK","ATTACH_PELVIS","ATTACH_MOUTH","ATTACH_CHIN","ATTACH_LEAR","ATTACH_REAR","ATTACH_LEYE","ATTACH_REYE","ATTACH_NOSE","ATTACH_RUARM","ATTACH_RLARM","ATTACH_LUARM","ATTACH_LLARM","ATTACH_RHIP","ATTACH_RULEG","ATTACH_RLLEG","ATTACH_LHIP","ATTACH_LULEG","ATTACH_LLLEG","ATTACH_BELLY","ATTACH_RPEC","ATTACH_LPEC","LAND_LEVEL","LAND_RAISE","LAND_LOWER","LAND_SMOOTH","LAND_NOISE","LAND_REVERT","LAND_SMALL_BRUSH","LAND_MEDIUM_BRUSH","LAND_LARGE_BRUSH","DATA_ONLINE","DATA_NAME","DATA_BORN","DATA_RATING","DATA_SIM_POS","DATA_SIM_STATUS","DATA_SIM_RATING","DATA_PAYINFO","ANIM_ON","LOOP","REVERSE","PING_PONG","SMOOTH","ROTATE","SCALE","ALL_SIDES","LINK_SET","LINK_ROOT","LINK_ALL_OTHERS","LINK_ALL_CHILDREN","LINK_THIS","CHANGED_INVENTORY","CHANGED_COLOR","CHANGED_SHAPE","CHANGED_SCALE","CHANGED_TEXTURE","CHANGED_LINK","CHANGED_ALLOWED_DROP","CHANGED_OWNER","TYPE_INVALID","TYPE_INTEGER","TYPE_FLOAT","TYPE_STRING","TYPE_KEY","TYPE_VECTOR","TYPE_ROTATION","REMOTE_DATA_CHANNEL","REMOTE_DATA_REQUEST","REMOTE_DATA_REPLY","PRIM_TYPE","PRIM_MATERIAL","PRIM_PHYSICS","PRIM_TEMP_ON_REZ","PRIM_PHANTOM","PRIM_POSITION","PRIM_SIZE","PRIM_ROTATION","PRIM_TYPE","PRIM_TEXTURE","PRIM_COLOR","PRIM_BUMP_SHINY","PRIM_FULLBRIGHT","PRIM_FLEXIBLE","PRIM_TEXGEN","PRIM_TEXGEN_DEFAULT","PRIM_TEXGEN_PLANAR","PRIM_TYPE_BOX","PRIM_TYPE_CYLINDER","PRIM_TYPE_PRISM","PRIM_TYPE_SPHERE","PRIM_TYPE_TORUS","PRIM_TYPE_TUBE","PRIM_TYPE_RING","PRIM_HOLE_DEFAULT","PRIM_HOLE_CIRCLE","PRIM_HOLE_SQUARE","PRIM_HOLE_TRIANGLE","PRIM_MATERIAL_STONE","PRIM_MATERIAL_METAL","PRIM_MATERIAL_GLASS","PRIM_MATERIAL_WOOD","PRIM_MATERIAL_FLESH","PRIM_MATERIAL_PLASTIC","PRIM_MATERIAL_RUBBER","PRIM_MATERIAL_LIGHT","PRIM_SHINY_NONE","PRIM_SHINY_LOW","PRIM_SHINY_MEDIUM","PRIM_SHINY_HIGH","PRIM_BUMP_NONE","PRIM_BUMP_BRIGHT","PRIM_BUMP_DARK","PRIM_BUMP_WOOD","PRIM_BUMP_BARK","PRIM_BUMP_BRICKS","PRIM_BUMP_CHECKER","PRIM_BUMP_CONCRETE","PRIM_BUMP_TILE","PRIM_BUMP_STONE","PRIM_BUMP_DISKS","PRIM_BUMP_GRAVEL","PRIM_BUMP_BLOBS","PRIM_BUMP_SIDING","PRIM_BUMP_LARGETILE","PRIM_BUMP_STUCCO","PRIM_BUMP_SUCTION","PRIM_BUMP_WEAVE","MASK_BASE","MASK_OWNER","MASK_GROUP","MASK_EVERYONE","PERM_TRANSFER","PERM_MODIFY","PERM_COPY","PERM_MOVE","PERM_ALL","PARCEL_MEDIA_COMMAND_STOP","PARCEL_MEDIA_COMMAND_PAUSE","PARCEL_MEDIA_COMMAND_PLAY","PARCEL_MEDIA_COMMAND_LOOP","PARCEL_MEDIA_COMMAND_TEXTURE","PARCEL_MEDIA_COMMAND_URL","PARCEL_MEDIA_COMMAND_TIME","PARCEL_MEDIA_COMMAND_AGENT","PARCEL_MEDIA_COMMAND_UNLOAD","PARCEL_MEDIA_COMMAND_AUTO_ALIGN","PAY_HIDE","PAY_DEFAULT","TRUE","FALSE","HTTP_METHOD","HTTP_MIMETYPE","HTTP_VERIFY_CERT","HTTP_BODY_MAXLENGTH","HTTP_BODY_TRUNCATED","TEXTURE_BLANK","TEXTURE_DEFAULT","TEXTURE_PLYWOOD","TEXTURE_TRANSPARENT","TEXTURE_MEDIA"];var J=["NULL_KEY","EOF"];var K=["ZERO_VECTOR","ZERO_ROTATION"];var A=["PI","TWO_PI","PI_BY_TWO","DEG_TO_RAD","RAD_TO_DEG","SQRT2"];var D=["llAbs","llAcos","llAddToLandBanList","llAddToLandPassList","llAdjustSoundVolume","llAllowInventoryDrop","llAngleBetween","llApplyImpulse","llApplyRotationalImpulse","llAsin","llAtan2","llAttachToAvatar","llAvatarOnSitTarget","llAxes2Rot","llAxisAngle2Rot","llBase64ToInteger","llBase64ToString","llBreakAllLinks","llBreakLink","llCeil","llClearCameraParams","llCloseRemoteDataChannel","llCloud","llCollisionFilter","llCollisionSound","llCollisionSprite","llCos","llCreateLink","llCSV2List","llDeleteSubList","llDeleteSubString","llDetachFromAvatar","llDetectedGrab","llDetectedGroup","llDetectedKey","llDetectedLinkNumber","llDetectedName","llDetectedOwner","llDetectedPos","llDetectedRot","llDetectedType","llDetectedVel","llDialog","llDie","llDumpList2String","llEdgeOfWorld","llEjectFromLand","llEmail","llEscapeURL","llEuler2Rot","llFabs","llFloor","llForceMouselook","llFrand","llGetAccel","llGetAgentInfo","llGetAgentSize","llGetAlpha","llGetAndResetTime","llGetAnimation","llGetAnimationList","llGetAttached","llGetBoundingBox","llGetCameraPos","llGetCameraRot","llGetCenterOfMass","llGetCreator","llGetColor","llGetDate","llGetEnergy","llGetForce","llGetFreeMemory","llGetGeometricCenter","llGetGMTclock","llGetInventoryCreator","llGetInventoryKey","llGetInventoryName","llGetInventoryNumber","llGetInventoryPermMask","llGetInventoryType","llGetKey","llGetLandOwnerAt","llGetLinkKey","llGetLinkName","llGetLinkNumber","llGetListEntryType","llGetListLength","llGetLocalPos","llGetLocalRot","llGetMass","llGetNextEmail","llGetNotecardLine","llGetNumberOfNotecardLines","llGetNumberOfPrims","llGetNumberOfSides","llGetObjectDesc","llGetObjectMass","llGetObjectName","llGetObjectPermMask","llGetOmega","llGetOwner","llGetOwnerKey","llGetParcelFlags","llGetPermissions","llGetPermissionsKey","llGetPos","llGetPrimitiveParams","llGetRegionCorner","llGetRegionFlags","llGetRegionFPS","llGetRegionName","llGetRegionTimeDilation","llGetRootPosition","llGetRootRotation","llGetRot","llGetScale","llGetScriptName","llGetScriptState","llGetSimulatorHostname","llGetStartParameter","llGetStatus","llGetSubString","llGetSunDirection","llGetTexture","llGetTextureOffset","llGetTextureRot","llGetTextureScale","llGetTime","llGetTimeOfDay","llGetTimestamp","llGetTorque","llGetUnixTime","llGetVel","llGetWallclock","llGiveInventory","llGiveInventoryList","llGiveMoney","llGodLikeRezObject","llGround","llGroundContour","llGroundNormal","llGroundRepel","llGroundSlope","llHTTPRequest","llInsertString","llInstantMessage","llIntegerToBase64","llKey2Name","llList2CSV","llList2Float","llList2Integer","llList2Key","llList2List","llList2ListStrided","llList2Rot","llList2String","llList2Vector","llListFindList","llListInsertList","llListRandomize","llListReplaceList","llListSort","llListStatistics","llListen","llListenControl","llListenRemove","llLoadURL","llLog","llLog10","llLookAt","llLoopSound","llLoopSoundMaster","llLoopSoundSlave","llMakeExplosion","llMakeFire","llMakeFountain","llMakeSmoke","llMapDestination","llMD5String","llMessageLinked","llMinEventDelay","llModifyLand","llModPow","llMoveToTarget","llOffsetTexture","llOpenRemoteDataChannel","llOverMyLand","llOwnerSay","llParcelMediaCommandList","llParcelMediaQuery","llParseString2List","llParseStringKeepNulls","llParticleSystem","llPassCollisions","llPassTouches","llPlaySound","llPlaySoundSlave","llPointAt","llPow","llPreloadSound","llPushObject","llRefreshPrimURL","llReleaseCamera","llReleaseControls","llRemoteDataReply","llRemoteDataSetRegion","llRemoteLoadScript","llRemoteLoadScriptPin","llRemoveFromLandBanList","llRemoveFromLandPassList","llRemoveInventory","llRemoveVehicleFlags","llRequestAgentData","llRequestInventoryData","llRequestPermissions","llRequestSimulatorData","llResetOtherScript","llResetScript","llResetTime","llRezAtRoot","llRezObject","llRot2Angle","llRot2Axis","llRot2Euler","llRot2Fwd","llRot2Left","llRot2Up","llRotBetween","llRotLookAt","llRotTarget","llRotTargetRemove","llRotateTexture","llRound","llSameGroup","llSay","llScaleTexture","llScriptDanger","llSendRemoteData","llSensor","llSensorRemove","llSensorRepeat","llSetAlpha","llSetBuoyancy","llSetCameraAtOffset","llSetCameraEyeOffset","llSetCameraParams","llSetColor","llSetDamage","llSetForce","llSetForceAndTorque","llSetHoverHeight","llSetLinkAlpha","llSetLinkColor","llSetLocalRot","llSetObjectDesc","llSetObjectName","llSetParcelMusicURL","llSetPayPrice","llSetPos","llSetPrimURL","llSetPrimitiveParams","llSetRemoteScriptAccessPin","llSetRot","llSetScale","llSetScriptState","llSetSitText","llSetSoundQueueing","llSetSoundRadius","llSetStatus","llSetText","llSetTexture","llSetTextureAnim","llSetTimerEvent","llSetTorque","llSetTouchText","llSetVehicleFlags","llSetVehicleFloatParam","llSetVehicleRotationParam","llSetVehicleType","llSetVehicleVectorParam","llShout","llSin","llSitTarget","llSleep","llSound","llSoundPreload","llSqrt","llStartAnimation","llStopAnimation","llStopHover","llStopLookAt","llStopMoveToTarget","llStopPointAt","llStopSound","llStringLength","llStringToBase64","llSubStringIndex","llTakeCamera","llTakeControls","llTan","llTarget","llTargetOmega","llTargetRemove","llTeleportAgentHome","llToLower","llToUpper","llTriggerSound","llTriggerSoundLimited","llUnescapeURL","llUnSit","llVecDist","llVecMag","llVecNorm","llVolumeDetect","llWater","llWhisper","llWind","llXorBase64StringsCorrect","llXorBase64Strings","llSetLinkTexture","llSetLinkPrimitiveParams","llGetObjectDetails"];var B=["at_rot_target","at_target","attach","changed","collision","collision_end","collision_start","control","dataserver","email","http_response","land_collision","land_collision_end","land_collision_start","link_message","listen","money","moving_end","moving_start","no_sensor","not_at_rot_target","not_at_target","object_rez","on_rez","remote_data","run_time_permissions","sensor","state_entry","state_exit","timer","touch","touch_start","touch_end"];var E=function(L){if(L.substr(-1)=='"'){var M="";while(L.charAt(0)!='"'){M+=L.charAt(0);L=L.substr(1)}return M+'<span style="color: #00A000;">'+L+"</span>"}else{if(L.substr(0,2)=="//"){return'<span style="color: #f70;">'+L+"</span>"}else{if(L=="&lt;"||L=="&gt;"){return'<span style="color: #f0f;">'+L+"</span>"}else{if(L=="["||L=="]"){return'<span style="color: #f00;">'+L+"</span>"}else{if(F.indexOf(L)!==-1){return'<a href="http://wiki.secondlife.com/wiki/'+L.capitalize()+'" target="_blank"><span style="color: #00f;">'+L+"</span></a>"}else{if(C.indexOf(L)!==-1){return'<a href="http://wiki.secondlife.com/wiki/'+L.capitalize()+'" target="_blank"><span style="color: #070;">'+L+"</span></a>"}else{if(B.indexOf(L)!==-1){return'<a href="http://wiki.secondlife.com/wiki/'+L.capitalize()+'" target="_blank"><span style="color: #00A0A0;">'+L+"</span></a>"}else{if(G.indexOf(L)!==-1){return'<span style="color: #0000A0;">'+L+"</span>"}else{if(J.indexOf(L)!==-1){return'<span style="color: #87CEFA;">'+L+"</span>"}else{if(K.indexOf(L)!==-1){return'<span style="color: #BC8F8F;">'+L+"</span>"}else{if(A.indexOf(L)!==-1){return'<span style="color: #8A2BE2;">'+L+"</span>"}else{if(D.indexOf(L)!==-1){return'<a href="http://wiki.secondlife.com/wiki/'+L.substr(0,1).toUpperCase()+L.substr(1)+'" target="_blank"><span style="color: #A00000;">'+L+"</span></a>"}else{return L}}}}}}}}}}}}};I=I.escapeHTML();var H=/(?:".*?(?:[^\\]"|\\\\")|[^\\]""|\/\/.*?(?:\n|$)|(?:&lt;|&gt;)|[\[\]]|[a-zA-Z_][a-zA-Z0-9_]*)/g;return"<pre>"+I.replace(H,E)+"</pre>"}
AjaxLife.Map=function(){var V=false;var Y=false;var i=false;var AB=false;var AD=false;var P=false;var j=false;var o=false;var n=false;var r=false;var m=false;var N=false;var S=false;var K=false;var h=false;var W=false;var M=false;var s=false;var U=false;var C=false;var B=false;var q={sim:"Nix",x:0,y:0,z:0};var l;var Z=false;var p=new Date();var X=false;var Q=false;var y=false;var R=false;var k=false;var v=false;var e=false;var d=false;var c=false;var AA=false;var b=false;var I={};var E={};var H=[];var D=[];var g=[];var f=[];var J=[];var u=[];var w=[];function AE(){Y.panOrRecenterToSLCoord(new SLPoint(q.sim,q.x,q.y))}function T(AF){if(AF){if(!b||!b.isVisible()){b=AjaxLife.Widgets.Modal.wait("",_("Map.Teleporting"))}}else{if(b){b.hide();b=false}}}function A(AG,AF,AI,AH){if(!AG){return }AjaxLife.Widgets.Confirm(_("Map.Teleporting"),_("Map.TeleportConfirm",{sim:AG,x:Math.round(AF),y:Math.round(AI)}),function(AJ){if(AJ=="yes"){T(true);AjaxLife.Network.Send("Teleport",{Sim:AG,X:AF,Y:AI,Z:AH})}})}function G(AF){if(AF.keyCode!=13&&AF.which!=13){return }if(B!==q){A(B.sim,B.x,B.y,B.z)}}function L(AF){w.each(function(AG){if(typeof AG=="function"){try{AG(AF)}catch(AH){AjaxLife.Debug("Map: A Map.OnMarkChanged callback failed: "+AH.name+": "+AH.message)}}})}function F(AG,AH,AF){if(AB){Y.removeMarker(AB)}if(AG!==false){if(!AH.z&&AH.z!==0){AH.z=q.z}if(AG){AB=new Marker(n,new SLPoint(AG,AH.x,AH.y))}else{AB=new Marker(m,new XYPoint(AH.x,AH.y))}Y.addMarker(AB);if(!AG){AH.x=(AH.x%1)*256;AH.y=(AH.y%1)*256}B={sim:AG,x:AH.x,y:AH.y,z:AH.z};e.dom.value=Math.round(AH.x);d.dom.value=Math.round(AH.y);c.dom.value=Math.round(AH.z);AA.dom.value=AG?AG:"";if(AF&&AG){Y.panOrRecenterToSLCoord(new SLPoint(AG,AH.x,AH.y))}R.enable();y.enable();L(B)}else{R.disable();y.disable();e.dom.value=Math.round(q.x);d.dom.value=Math.round(q.y);c.dom.value=Math.round(q.z);AA.dom.value=q.sim;L(false)}}function a(AF,AK,AJ){if(X){clearTimeout(X);X=false}var AI=new Date();var AH=getRegionName(AF,AK);if(!AH||AH==""){if(!AJ){AjaxLife.Network.Send("GetMapBlock",{X:Math.floor(AF),Y:Math.floor(AK)});X=setTimeout(function(){a(AF,AK,true)},2000);if(AB){Y.removeMarker(AB)}AB=new Marker(S,new XYPoint(AF,AK));Y.addMarker(AB);return }}var AG={x:AF,y:AK};AF=(AF%1)*256;AK=(AK%1)*256;if(AI.getTime()-p.getTime()<1000&&B.sim==AH&&B.x==AF&&B.y==AK){if(AH){A(B.sim,B.x,B.y,B.z)}}else{F(AH,AH?{x:AF,y:AK}:AG)}p=new Date()}function x(){var AH=AA.dom.value;var AG=lh[AH.toLowerCase()];if(!AG){return }AH=rlh[AG.x+"-"+AG.y];var AF=parseFloat(e.dom.value);if(AF>255){AF=255}else{if(AF<0){AF=0}}var AJ=parseFloat(d.dom.value);if(AJ>255){AJ=255}else{if(AJ<0){AJ=0}}var AI=parseFloat(c.dom.value);if(AI<0){AI=0}F(AH,{x:AF,y:AJ,z:AI},true)}function z(AF){if(AF){AF=AF.toLowerCase();if(I[AF]){for(var AG in I[AF].Items){I[AF].Items[AG].each(function(AH){if(AH.marker){Y.removeMarker(AH.marker)}});I[AF].Items[AG]=[]}}}}function O(){AjaxLife.Network.Send("GetSimStatus",{})}function t(){Y.centerAndZoomAtSLCoord(new SLPoint(B.sim,B.x,B.y),1);Z.setvalue(1)}function AC(){AjaxLife.Widgets.Confirm(_("Map.Teleporting"),_("Map.HomeConfirm"),function(AF){if(AF=="yes"){T(true);AjaxLife.Network.Send("GoHome",{})}})}return{init:function(){var AF={sim:gRegion,x:gPosition.X,y:gPosition.Y,z:gPosition.Z};P=new Icon(new Img(AjaxLife.STATIC_ROOT+"images/map_marker_you.png",16,16,true));j=[P,P,P,P,P,P];o=new Icon(new Img(AjaxLife.STATIC_ROOT+"images/map_marker_selected.png",16,16,true));n=[o,o,o,o,o,o];r=new Icon(new Img(AjaxLife.STATIC_ROOT+"images/map_marker_bad.png",16,16,true));m=[r,r,r,r,r,r];AD=new Icon(new Img(AjaxLife.STATIC_ROOT+"images/map_marker_agent.png",9,9,true));h=[AD,AD,AD,AD,AD,AD];N=new Icon(new Img(AjaxLife.STATIC_ROOT+"images/map_marker_loading.gif",16,16));S=[N,N,N,N,N,N];K=[new Icon(new Img(AjaxLife.STATIC_ROOT+"images/simdown/overlay256.png",256,256,true)),new Icon(new Img(AjaxLife.STATIC_ROOT+"images/simdown/overlay128.png",128,128,true)),new Icon(new Img(AjaxLife.STATIC_ROOT+"images/simdown/overlay64.png",64,64,true)),new Icon(new Img(AjaxLife.STATIC_ROOT+"images/simdown/overlay32.png",32,32,true)),new Icon(new Img(AjaxLife.STATIC_ROOT+"images/simdown/overlay16.png",16,16,true)),new Icon(new Img(AjaxLife.STATIC_ROOT+"images/simdown/overlay8.png",8,8,true))];if(gRegion!=""){q.sim=gRegion}else{AjaxLife.Widgets.Modal.alert("",_("Map.NoRegionGiven"))}q.x=gPosition.X;q.y=gPosition.Y;q.z=gPosition.Z;V=new Ext.BasicDialog("dlg_map",{width:700,height:500,modal:false,shadow:true,autoCreate:true,title:_("Map.WindowTitle"),proxyDrag:!AjaxLife.Fancy,collapsible:false});V.body.setStyle({overflow:"hidden"});V.body.dom.innerHTML='<div id="div_map" style="width:480px; height: 470px;"></div><div id="div_map_control"></div>';V.on("resize",function(AQ,AO,AL){var AP=Y.getCurrentZoomLevel();var AR=Y.getMapCenter();Ext.get("div_map").dom.innerHTML="";Y=false;Ext.get("div_map").setStyle({width:(AO-220)+"px",height:(AL-30)+"px"});Y=new SLMap(Ext.get("div_map").dom,{hasZoomControls:false,hasPanningControls:false,singleClickHandler:a});Y.centerAndZoomAtSLCoord(AR,AP);Y.addMarker(i);if(AB){Y.addMarker(AB)}for(var AN in E){if(E[AN]){Y.addMarker(E[AN])}}if(Y.getCurrentZoomLevel()<=3){for(var AN in I){for(var AM in I[AN].Items){I[AN].Items[AM].each(function(AS){Y.addMarker(AS.marker)})}}}});lh[gRegion.toLowerCase()]=gRegionCoords;rlh[gRegionCoords.x+"-"+gRegionCoords.y]=gRegion;Y=new SLMap(Ext.get("div_map").dom,{hasZoomControls:false,hasPanningControls:false,singleClickHandler:a});Y.centerAndZoomAtSLCoord(new SLPoint(q.sim,q.x,q.y),2);i=new Marker(j,new SLPoint(q.sim,q.x,q.y));Y.addMarker(i);var AI=true;Z=new AjaxLife.Widgets.Slider("div_map_control","map_slider_zoom",{width:180,onChange:function(AN){Y.setCurrentZoomLevel(AN);if(AN>3&&AI){AI=false;for(var AM in I){for(var AL in I[AM].Items){I[AM].Items[AL].each(function(AO){Y.removeMarker(AO.marker)})}}}else{if(AN<=3&&!AI){AI=true;for(var AM in I){for(var AL in I[AM].Items){I[AM].Items[AL].each(function(AO){Y.addMarker(AO.marker)})}}}}},values:$A($R(1,6)),range:$R(1,6),sliderValue:Y.getCurrentZoomLevel()});var AJ=document.createElement("div");AJ.setAttribute("id","div_map_location_boxes");var AK=document.createElement("p");AK.appendChild(document.createTextNode(_("Map.RegionLabel")));AJ.appendChild(AK);AA=Ext.get(document.createElement("input"));AA.setStyle({width:"190px"});AA.dom.setAttribute("value",AF.sim);AA.on("keyup",G);AJ.appendChild(AA.dom);var AH=document.createElement("p");AH.appendChild(document.createTextNode(_("Map.PositionLabel")));AJ.appendChild(AH);e=Ext.get(document.createElement("input"));e.dom.setAttribute("type","input");e.dom.setAttribute("value",Math.round(AF.x));e.on("keyup",G);AJ.appendChild(e.dom);d=Ext.get(document.createElement("input"));d.dom.setAttribute("type","input");d.dom.setAttribute("value",Math.round(AF.y));d.on("keyup",G);AJ.appendChild(d.dom);c=Ext.get(document.createElement("input"));c.dom.setAttribute("type","input");c.dom.setAttribute("value",Math.round(AF.z));c.on("keyup",G);AJ.appendChild(c.dom);Ext.get("div_map_control").dom.appendChild(AJ);var AG=document.createElement("div");AG.setAttribute("id","div_map_control_buttons");Ext.get("div_map_control").dom.appendChild(AG);e.on("change",x);d.on("change",x);c.on("change",x);AA.on("change",x);v=new Ext.Button(AG,{handler:function(){A(AF.sim,AF.x,AF.y,AF.z)},text:_("Map.TeleportVerb")});v.getEl().setStyle({position:"absolute",right:"80px",bottom:"70px"});Q=new Ext.Button(AG,{handler:function(){Y.centerAndZoomAtSLCoord(new SLPoint(q.sim,q.x,q.y),1);Z.setvalue(1)},text:_("Map.FocusYou")});Q.getEl().setStyle({position:"absolute",right:"80px",bottom:"35px"});R=new Ext.Button(AG,{handler:function(){F(false)},text:_("Map.Clear"),disabled:true});R.getEl().setStyle({position:"absolute",right:"5px",bottom:"35px"});y=new Ext.Button(AG,{handler:t,text:_("Map.FocusTarget"),disabled:true});y.getEl().setStyle({position:"absolute",right:"80px",bottom:"0px"});k=new Ext.Button(AG,{handler:AC,text:_("Map.HomeButton")});k.getEl().setStyle({position:"absolute",right:"5px",bottom:"0px"});AjaxLife.Network.MessageQueue.RegisterCallback("InstantMessage",function(AL){if(AL.Dialog==AjaxLife.Constants.MainAvatar.InstantMessageDialog.RequestTeleport){AjaxLife.Sound.Play("im");AjaxLife.Widgets.Modal.show({title:_("Map.TeleportRequestTitle"),msg:_("Map.TeleportRequest",{name:AL.FromAgentName,message:AL.Message}),buttons:{yes:_("Widgets.Accept"),no:_("Widgets.Decline")},modal:false,closable:false,fn:function(AM){if(AM=="yes"){T(true)}AjaxLife.Network.Send("TeleportLureRespond",{RequesterID:AL.FromAgentID,Accept:(AM=="yes")})}})}else{if(AL.Dialog==AjaxLife.Constants.MainAvatar.InstantMessageDialog.GodLikeRequestTeleport){AjaxLife.Widgets.Ext.msg("",_("Map.GodLikeTeleportRequest"),"godliketeleportrequest");AjaxLife.Network.Send("GodLikeTeleportLureRespond",{RequesterID:AL.FromAgentID,SessionID:AL.IMSessionID})}}});AjaxLife.Network.MessageQueue.RegisterCallback("Teleport",function(AL){if(AL.Status==AjaxLife.Constants.MainAvatar.TeleportStatus.Start){l=AjaxLife.Utils.Clone(q);AjaxLife.Sound.Play("teleport");T(true)}else{if(AL.Status==AjaxLife.Constants.MainAvatar.TeleportStatus.Finished){T(false);AjaxLife.SpatialChat.systemmessage(_("Map.TeleportCompleteMessage",{url:"http://slurl.com/secondlife/"+escape(l.sim)+"/"+Math.round(l.x)+"/"+Math.round(l.y)+"/"+Math.round(l.z)}));AjaxLife.Network.Send("GetPosition",{callback:function(AM){AjaxLife.Widgets.Ext.msg(_("Map.Teleportation"),_("Map.TeleportSuccess",{sim:AM.Sim,x:Math.round(AM.Position.X),y:Math.round(AM.Position.Y),z:Math.round(AM.Position.Z)}));AjaxLife.Map.move(AM.Sim,AM.Position.X,AM.Position.Y,AM.Position.Z);setTimeout('AjaxLife.Network.Send("SendAppearance",{});AjaxLife.Network.Send("ReRotate",{});',1000)}})}else{if(AL.Status==AjaxLife.Constants.MainAvatar.TeleportStatus.Failed){T(false);AjaxLife.Widgets.Modal.alert(_("Map.Teleportation"),_("Map.TeleportError"))}else{if(AL.Status==AjaxLife.Constants.MainAvatar.TeleportStatus.Cancelled){T(false);AjaxLife.Widgets.Ext.msg(_("Map.Teleportation"),_("Map.TeleportCancelled"))}}}}});AjaxLife.Network.MessageQueue.RegisterCallback("MapBlocks",function(AM){for(var AL in AM.Blocks){if(!I[AL]){I[AL]=AM.Blocks[AL];I[AL].Items={Agents:[],Events:[],Telehubs:[],Infohubs:[],Popular:[],ForSale:[],Classifieds:[]};rlh[I[AL].X+"-"+I[AL].Y]=I[AL].Name;lh[I[AL].Name.toLowerCase()]={x:I[AL].X,y:I[AL].Y}}if(I[AL].Access==AjaxLife.Constants.Map.SimAccess.Down){if(!E[AL]){E[AL]=new Marker(K,new SLPoint(AL,128,128));Y.addMarker(E[AL])}}else{if(E[AL]){Y.removeMarker(E[AL]);E[AL]=false}}}});AjaxLife.Network.Send("GetMapBlocks",{});AjaxLife.Network.MessageQueue.RegisterCallback("MapItems",function(AL){if(AL.ItemType==AjaxLife.Constants.Map.Item.AgentLocations){if(AL.Items.length>0){var AN=true;var AM="";AL.Items.each(function(AP){AM=getRegionName(AP.X/256,AP.Y/256);if(AM&&AN){z(AM);if(I[AM.toLowerCase()].Access==AjaxLife.Constants.Map.SimAccess.Down){throw $break}AN=false}if(AP.X%256==0&&AP.Y%256==0){return }var AO=new Marker(h,new XYPoint(AP.X/256,AP.Y/256));if(Y.getCurrentZoomLevel()<=3){Y.addMarker(AO)}AP.marker=AO;I[AM.toLowerCase()].Items.Agents[I[AM.toLowerCase()].Items.Agents.length]=AP})}}});AjaxLife.Network.MessageQueue.RegisterCallback("UsefulData",function(AL){if(AL.YourRegion!=q.sim||AL.YourPosition.X!=q.x||AL.YourPosition.Y!=q.y||AL.YourPosition.Z!=q.z){AjaxLife.Map.move(AL.YourRegion,AL.YourPosition.X,AL.YourPosition.Y,AL.YourPosition.Z)}});setInterval(O,600000)},open:function(AF){if(AF){V.show(AF)}else{V.show()}},close:function(){V.hide()},toggle:function(AF){if(!V.isVisible()){this.open(AF)}else{this.close()}},move:function(AG,AF,AI,AH){Y.removeMarker(i);i=new Marker(j,new SLPoint(AG,AF,AI));Y.addMarker(i);q={sim:AG,x:AF,y:AI,z:AH};AjaxLife.MiniMap.SetPos(q)},getpos:function(){return q},TPDialog:function(){T(true)},TeleportTo:function(AG,AF,AI,AH){A(AG,AF,AI,AH)},OnMarkChanged:function(AF){w[w.length]=AF},HandleLink:function(AG,AF,AJ,AI,AH){AjaxLife.Debug("Map: HandleLink: "+AG+", "+AF+", "+AJ+", "+AI+", "+AH);AG=unescape(AG);this.open();if(AI==""){AI=q.z}F(AG,{x:AF*1,y:AJ*1,z:AI*1},true);return false},GoHome:function(){AC()}}}()
AjaxLife.MiniMap=function(){var O=256;var R=256;var C;var A;var T;var D;var V={};var F={sim:"",x:0,y:0,z:0};var a=false;var b=1;var E=new Image();var N=false;var c=20;var G=true;var X={};X[0]={red:0,green:0,blue:128};X[c*0.75]={red:0,green:0,blue:255};X[c]={red:0,green:128,blue:255};X[c+1]={red:240,green:240,blue:64};X[24]={red:32,green:160,blue:0};X[100]={red:128,green:127,blue:128};X[120]={red:255,green:255,blue:255};var P=[0,c*0.75,c,c+1,24,100,120];var H=P.length;var K=[];var L=new Ext.util.DelayedTask(W);function J(l){var e=[];for(var g=0;g<64;++g){e[g*4]=[];for(var f=0;f<64;++f){var d=l[g][f];e[g*4][f*4]=d;var h=l[g][f+1];if(h===null||h===undefined){h=d}var k=(h-d)/4;e[g*4][f*4+1]=d+k;e[g*4][f*4+2]=d+k*2;e[g*4][f*4+3]=d+k*3}}for(var g=0;g<64;++g){e[g*4+1]=[];e[g*4+2]=[];e[g*4+3]=[];for(var f=0;f<256;++f){var d=e[g*4][f];var h=0;if(!e[(g+1)*4]){h=d}else{h=e[(g+1)*4][f]}var k=(h-d)/4;e[g*4+1][f]=d+k;e[g*4+2][f]=d+k*2;e[g*4+3][f]=d+k*3}}return e}function B(){A.drawImage(T,0,0,256,256)}function I(n,p,o,e){n.save();n.translate(p,255-(o+16));n.translate(8,8);n.rotate(Math.PI/2);n.translate(-8,-8);var h=0;var g=0;for(var h=0;h<16;h+=2){for(var g=0;g<16;g+=2){var r=e[15-h][15-g];if(!K[r]){var m=0;for(var f=0;f<H;++f){if(!X[P[f]]){continue}if(P[f]>r){break}m=f}var d={};var l;var q;if(X[r]||m==H-1){d=X[P[m]]}else{q=X[P[m]];l=X[P[m+1]];if(!q||!l){continue}var p=(P[m+1]-P[m]);var o=(r-P[m]);var d={red:q.red+(l.red-q.red)/p*o,green:q.green+(l.green-q.green)/p*o,blue:q.blue+(l.blue-q.blue)/p*o}}K[r]="rgb("+Math.round(d.red)+", "+Math.round(d.green)+", "+Math.round(d.blue)+")"}n.fillStyle=K[r];n.fillRect(h,g,2,2)}}n.restore()}function Q(){}function M(i,f,e,d){if(!d&&d!==0){A.strokeStyle="rgb(0,255,0)";A.fillStyle="rgb(0,255,0)"}else{A.strokeStyle="rgb("+f+","+e+","+d+")";A.fillStyle="rgb("+f+","+e+","+d+")"}var h=i.Z-F.z;if(Math.round(F.x)==i.X&&Math.round(F.y)==i.Y){return }if(!i.Z){return }if(h<-2.5){A.save();A.translate(i.X,255-i.Y);A.beginPath();A.moveTo(+0.5/b,-3.5/b);A.lineTo(+0.5/b,+2.5/b);A.moveTo(-2.5/b,+2.5/b);A.lineTo(+3.5/b,+2.5/b);A.stroke();A.restore()}else{if(h>2.5){A.save();A.translate(i.X,255-i.Y);A.beginPath();A.moveTo(+0.5/b,-3.5/b);A.lineTo(+0.5/b,+2.5/b);A.moveTo(-2.5/b,-3.5/b);A.lineTo(+3.5/b,-3.5/b);A.stroke();A.restore()}else{A.beginPath();A.arc(i.X-1.5,255-(i.Y-1.5),3/b,0,Math.PI*2,true);A.fill();A.stroke()}}}function S(){if(!N){return }A.drawImage(E,F.x,256-F.y,8/b,8/b)}function Z(){if(a&&a.sim==F.sim){M({X:a.x,Y:a.y,Z:a.z},255,0,0)}}function W(){A.clearRect(0,0,R,O);B();Q();for(var d in V){M(V[d])}Z();S()}function U(){D.fillStyle="rgb(0,0,128)";D.fillRect(0,0,256,256);return[]}function Y(f,e,d,g){if(f!=F.sim){F.sim=f;U()}I(D,e,d,g);L.delay(500)}return{Mark:function(g,f,e){if(!G){return }var d=!!V[g];V[g]=f;if(d){if(!e){W()}return false}else{M(f);return true}},Resize:function(d){if(!G){return }C.style.width=d+"px";C.style.height=d+"px";b=d/256;W()},SetPos:function(d){if(!G){return }if(d.sim!=F.sim){U()}F=d;W()},PersonUpdate:function(e){if(!G){return }V={};for(var d in e){this.Mark(d,e[d],true)}W()},init:function(e,d){C=$(e);if(!C.getContext||!C.getContext("2d")){G=false;AjaxLife.Network.MessageQueue.RegisterCallback("LandPatch",Prototype.emptyFunction);return }A=C.getContext("2d");T=$(d);D=T.getContext("2d");E.onload=function(){N=true;S()};E.src=AjaxLife.STATIC_ROOT+"images/map_marker_you.png";F={sim:gRegion,x:gPosition.X,y:gPosition.Y,z:gPosition.Z};AjaxLife.Network.MessageQueue.RegisterCallback("LandPatch",function(j){if(c!=j.WaterLevel){X[c]=false;X[c*0.75]=false;X[c+1]=false;c=j.WaterLevel;X[c*0.75]={red:0,green:0,blue:255};X[c]={red:0,green:128,blue:255};X[c+1]={red:240,green:240,blue:64};P=[0,c*0.75,c,c+1,24,100,120];K=[]}var f=[];var h=j.Patch;for(var g in h){f[f.length]=h[g]}Y(j.Region,j.OffsetX,j.OffsetY,f)});AjaxLife.Network.MessageQueue.RegisterCallback("UsefulData",function(f){AjaxLife.MiniMap.PersonUpdate(f.Positions)});AjaxLife.Map.OnMarkChanged(function(f){a=f;W()});U();this.Resize(150)}}}()
AjaxLife.NameCache=function(){var A={};var E={};var D=[];var C=[];function G(I,H){if(!A[I]){A[I]=H;if(D[I]){D[I].each(function(J){J(H)})}D[I]=false}}function B(I,H){if(!E[I]){E[I]=H;if(C[I]){C[I].each(function(J){J(H)})}}}function F(J,I,K,L,H){if(I[J]){L(I[J])}else{AjaxLife.Debug("NameCache: Performing "+H+" lookup for "+J);if(!K[J]){K[J]=[]}K[J][K[J].length]=L;AjaxLife.Network.Send(H,{ID:J})}}return{Find:function(I,H){F(I,A,D,H,"NameLookup")},FindGroup:function(I,H){F(I,E,C,H,"RequestGroupName")},Add:function(I,H){G(I,H)},AddGroup:function(I,H){B(I,H)},init:function(){AjaxLife.Network.MessageQueue.RegisterCallback("AvatarNames",function(I){for(var H in I.Names){AjaxLife.Debug("NameCache: Received key/name pair "+H+" => "+I.Names[H]);G(H,I.Names[H])}});AjaxLife.Network.MessageQueue.RegisterCallback("GroupNames",function(I){for(var H in I.Names){AjaxLife.Debug("NameCache: Received key/group name pair "+H+" => "+I.Names[H]);B(H,I.Names[H])}})}}}()
AjaxLife.Network.Connected=false;AjaxLife.Network.init=function(){AjaxLife.Network.MessageQueue.init()};AjaxLife.Network.logout=function(A){var B=false;if(!A){B=AjaxLife.Widgets.Modal.wait(_("Network.LoggingOut"))}var C=new Ext.data.Connection();C.request({url:"logout.kat",method:"POST",params:{sid:gSessionID},callback:function(E,F,D){if(F){AjaxLife.Network.MessageQueue.shutdown();B.hide();if(!A){AjaxLife.Widgets.Modal.show({closable:false,title:"",msg:_("Network.LogoutSuccess"),modal:true,buttons:false})}}else{Ext.Msg.alert(_("Network.Error"),_("Network.LogoutError"))}}})};AjaxLife.Network.MessageQueue=function(){var E=false;var G=new Ext.data.Connection({timeout:60000});var D={};var B=false;var C=false;function F(J){if(!J.each){return }J.each(function(M){var O=false;if(D[M.MessageType]){try{D[M.MessageType].each(function(P){if(P&&typeof P=="function"){P(M)}else{if(typeof P!="boolean"){AjaxLife.Widgets.Ext.msg("Error","Typeof callback = "+(typeof P)+". MessageType = "+M.MessageType)}}});O=true}catch(N){AjaxLife.Widgets.Ext.msg("Error in processqueue",N.name+" - "+N.message)}}if(M.MessageType=="Disconnected"){if(M.Reason!=AjaxLife.Constants.NetworkManager.DisconnectType.ClientInitiated){AjaxLife.Network.logout(true);Ext.Msg.alert(_("Network.Disconnected"),_("Network.LogoutForced",{reason:M.Message}))}}else{if(!O){try{var K="";for(var L in M){K+=L+": "+M[L]+"\n"}AjaxLife.Debug("Unhandled message: "+K)}catch(N){}}}})}function I(K,N,J){C=new Date();if(!AjaxLife.Network.Connected){return }try{if(N){try{var L=Ext.util.JSON.decode(J.responseText)}catch(M){return }F(L)}else{AjaxLife.Widgets.Ext.msg(_("Network.Error"),_("Network.EventQueueFailure"))}}catch(M){AjaxLife.Widgets.Ext.msg("Error in queuecallback",M.name+" - "+M.message)}E=false;if(AjaxLife.Network.Connected){H()}}function H(){if(E){return }E=true;G.request({url:"eventqueue.kat",method:"POST",params:{sid:gSessionID},callback:I})}function A(){var J=new Date();if(J.getTime()-C.getTime()>35000){AjaxLife.Widgets.Ext.msg("",_("Network.Reconnecting"));AjaxLife.Network.MessageQueue.shutdown();AjaxLife.Network.MessageQueue.init()}}return{init:function(){C=new Date();B=setInterval(A,5000);AjaxLife.Network.Connected=true;H()},shutdown:function(){E=false;AjaxLife.Network.Connected=false;clearInterval(B);G.abort()},RegisterCallback:function(K,L){if(!D[K]){D[K]=new Array()}var J=D[K].length;D[K][J]=L;return J},UnregisterCallback:function(J,K){if(D[J]&&D[J][K]){D[J][K]=false}}}}();AjaxLife.Network.SignedMessages={AcceptFriendship:true,DeclineFriendship:true,OfferFriendship:true,TerminateFriendship:true,SendAgentMoney:true,EmptyTrash:true,MoveItem:true,MoveFolder:true,MoveItems:true,MoveFolders:true,DeleteItem:true,DeleteFolder:true,DeleteMultiple:true,GiveInventory:true,UpdateItem:true,UpdateFolder:true,JoinGroup:true,LeaveGroup:true,ScriptPermissionResponse:true};AjaxLife.Network.Send=function(E,D){if(!AjaxLife.Network.Connected){return false}var C=new Ext.data.Connection({timeout:60000});if(!D){D={}}D.sid=gSessionID;D.MessageType=E;var G=false;if(D.callback){G=D.callback;delete D.callback}var B=D.signed;delete D.signed;var A=Hash.toQueryString(D);if(B||(AjaxLife.Network.SignedMessages[E]&&B!==false)){A=Hash.toQueryString(D);var H=(++AjaxLife.SignedCallCount).toString()+A+AjaxLife.Signature;var F=md5(H);AjaxLife.Debug("Network: Signing '"+E+"' message with '"+F+"' (from '"+H+"')");A+="&hash="+F}params={url:"sendmessage.kat",method:"POST",params:A};if(G||B){params.callback=function(J,M,I){if(M){if(G){try{var K=Ext.util.JSON.decode(I.responseText);G(K)}catch(L){AjaxLife.Debug("Network: Response: "+I.responseText)}}}else{if(B){--AjaxLife.SignedCallCount}AjaxLife.Widgets.Ext.msg(_("Network.Error"),_("Network.GenericSendError"))}}}C.request(params)};AjaxLife.Network.GenericRequest=function(A,C){var B=new Ext.data.Connection();if(!C){C={}}var D=false;if(C.callback){D=C.callback;C.callback=null}params={url:"differentorigin.kat?url="+escape(A),method:"POST",params:C};if(D){params.callback=function(F,I,E){if(I){try{var G=Ext.util.JSON.decode(E.responseText);D(G)}catch(H){D(E.responseText)}}else{AjaxLife.Widgets.Ext.msg(_("Network.Error"),_("Network.GenericRequestError"))}}}B.request(params)}
AjaxLife.NewSearch=function(){var D=false;var C=false;var B=false;var A=false}()
AjaxLife.Notecard=function(D,N,M,H,L){var F="";var B="";var E=0;var I=0;var J=false;var P=false;var O=false;function C(U){F=U;I=U.match(/count ([0-9]+?)/)[1];var R=-1;var S;for(S=0;S<U.length;++S){var T=U.substr(S,1);if(T=="{"){++R}else{if(T=="}"){--R;if(R<=0){break}}}}U=U.substr(S+1);E=U.match(/Text length ([0-9]+)/)[0].strip();U=U.replace(/Text length ([0-9]+)\w/,"").strip();U=U.substr(0,U.length-1);B=U;return U}function K(){AjaxLife.Debug("Notecard: Requesting notecard asset "+D);AjaxLife.Network.Send("RequestAsset",{AssetID:D,InventoryID:N,OwnerID:M,AssetType:AjaxLife.Constants.Inventory.InventoryType.Notecard})}function A(R){if(R.AssetID!=D){return }AjaxLife.Debug("Notecard: Received notecard asset "+R.AssetID);AjaxLife.Network.MessageQueue.UnregisterCallback("AssetReceived",O);if(R.Success){P=true;C(R.AssetData)}try{if(H&&typeof H=="function"){if(!P&&R.Error=="UnknownSource"){P=true;F=G("");B=""}H(this,P?B:R.Error)}}catch(S){}}function G(S){var R="Linden text version 2\n{\nLLEmbeddedItems version 1\n{\n	count 0\n}\n";R+="Text length "+S.length+"\n";R+=S;R+="}";return R}function Q(){if(I>0){return false}AjaxLife.Debug("Notecard: Starting upload of notecard "+N);var R=AjaxLife.Network.MessageQueue.RegisterCallback("InventoryNoteUploaded",function(T){if(T.ItemID!=N){return }AjaxLife.Debug("Notecard: Upload of "+N+" completed. Success: "+T.Success);AjaxLife.Network.MessageQueue.UnregisterCallback("InventoryNoteUploaded",R);if(T.Success){AjaxLife.Debug("Notecard: Inventory item "+N+" changed AssetID from "+D+" to "+T.AssetID);D=T.AssetID;var S=AjaxLife.Inventory.GetNode(N);if(S&&S.attributes){S.attributes.AssetUUID=D}}if(L&&typeof L=="function"){L(T)}});AjaxLife.Network.Send("SaveNotecard",{ItemID:N,AssetData:F});AjaxLife.Debug("Notecard: Upload of "+N+" in progress.")}O=AjaxLife.Network.MessageQueue.RegisterCallback("AssetReceived",A);if(D&&N&&M){K()}return{SetLoadHandler:function(R){H=R},SetUploadHandler:function(R){L=R},GetText:function(){if(J){return B}else{return false}},SetText:function(R){B=R;F=G(R)},Save:function(){Q()},GetRawText:function(){return F},GetAttachmentCount:function(){return I},GetNotecardID:function(){return D},IsLoaded:function(){return J},UnsetLoadHandler:function(){H=false},Load:function(T,S,R){if(J){return false}D=T;N=S;M=R;K()}}};AjaxLife.ActiveInventoryDialogs.Notecard={};AjaxLife.InventoryDialogs.Notecard=function(F,C,B){if(AjaxLife.ActiveInventoryDialogs.Notecard[F]){AjaxLife.ActiveInventoryDialogs.Notecard[F].focus();return }var D=false;var E=false;E=new Ext.BasicDialog("dlg_notecard_"+F,{width:"500px",height:"520px",modal:false,shadow:true,autoCreate:true,title:_("InventoryDialogs.Notecard.WindowTitle",{name:B}),resizable:true,proxyDrag:!AjaxLife.Fancy});var A=$(document.createElement("textarea"));A.value=_("InventoryDialogs.Notecard.Loading");A.disable();A.setStyle({width:"100%",height:"455px"});E.on("resize",function(I,H,J){A.setStyle({height:(J-65)+"px"})});$(E.body.dom).setStyle({overflow:"hidden"});E.body.dom.appendChild(A);var G=new Ext.Button(E.body,{disabled:true,text:_("InventoryDialogs.Notecard.Save"),handler:function(){G.disable();A.disable();D.SetText(A.value);D.Save()}});$(E.body.dom).addClassName("notecard");AjaxLife.ActiveInventoryDialogs.Notecard[F]=E;E.on("hide",function(){delete AjaxLife.ActiveInventoryDialogs.Notecard[F];E.destroy(true)});D=new AjaxLife.Notecard(F,C,gAgentID,function(I,J){A.value=J;var H=AjaxLife.Inventory.GetNode(C);if(H&&(H.attributes.Permissions.OwnerMask&AjaxLife.Constants.Permissions.Modify)){A.enable();if(D.GetAttachmentCount()==0){AjaxLife.Debug("Notecard: 0 attachments, enabling btn_save.");G.enable()}else{AjaxLife.Debug("Notecard: "+D.GetAttachmentCount()+" attachments. No saving supported.");G.disable()}}},function(H){A.enable();G.enable()});E.show()}
AjaxLife.ActiveProfileWindows={};AjaxLife.Profile=function(Z){if(AjaxLife.ActiveProfileWindows[Z]){AjaxLife.ActiveProfileWindows[Z].focus();return }var G=false;var X="";var M="";var b=[];var K=true;var U=false;var D=false;var N=false;G=new Ext.BasicDialog("dlg_profile_"+Z,{width:"350px",height:"500px",modal:false,shadow:true,autoCreate:true,title:_("Profile.WindowTitle",{name:_("Profile.Loading")}),resizable:false,proxyDrag:!AjaxLife.Fancy});$(G.body.dom).addClassName("profile");AjaxLife.ActiveProfileWindows[Z]=G;G.on("hide",function(){AjaxLife.ActiveProfileWindows[Z]=null;K=false;G.destroy(true)});D=G.getTabs().addTab("profile_tab_"+Z+"_2ndlife",_("Profile.SecondLife"));var V=Ext.get($(document.createElement("div")));V.setStyle({position:"absolute",top:"5px",left:"5px"});V.dom.update(_("Profile.Name",{name:_("Profile.Loading")}));var a=Ext.get($(document.createElement("div")));a.setStyle({width:"181px",height:"136px",position:"absolute",top:"25px",left:"5px",border:"thin solid black"});var R=Ext.get($(document.createElement("div")));R.setStyle({position:"absolute",top:"5px",left:"200px"});var H=Ext.get($(document.createElement("div")));H.setStyle({position:"absolute",top:"30px",left:"200px",border:"thin solid black"});H.dom.update(_("Profile.JoinDate"));var E=Ext.get($(document.createElement("div")));E.setStyle({position:"absolute",top:"60px",left:"200px",border:"thin solid black"});E.dom.update(_("Profile.Account"));var P=Ext.get($(document.createElement("div")));P.setStyle({position:"absolute",top:"130px",left:"200px",border:"thin solid black"});P.dom.update(_("Profile.Partner"));var B=Ext.get($(document.createElement("div")));B.setStyle({position:"absolute",top:"170px",left:"5px"});B.update(_("Profile.About"));var F=Ext.get($(document.createElement("div")));F.setStyle({position:"absolute",top:"185px",left:"5px",height:"70px",width:"320px",border:"thin solid black",overflow:"auto"});var O=Ext.get($(document.createElement("div")));O.setStyle({position:"absolute",top:"260px",left:"5px"});O.update(_("Profile.Groups"));var C=Ext.get($(document.createElement("div")));C.setStyle({position:"absolute",top:"285px",left:"5px"});var T=new AjaxLife.Widgets.SelectList("profile_"+Z+"_groups",C.dom,{width:"320px",height:"68px"});var c=new Ext.Button(D.bodyEl.dom,{handler:function(){AjaxLife.InstantMessage.start(Z);AjaxLife.InstantMessage.open(c.getEl())},text:_("Profile.IMButton")});c.getEl().setStyle({position:"absolute",top:"360px",left:"10px"});var Y=new Ext.Button(D.bodyEl.dom,{handler:function(){AjaxLife.Widgets.Modal.prompt(_("Profile.PayDialogTitle",{first:X,last:M}),_("Profile.PayDialogPrompt",{first:X,last:M}),function(d,e){if(d=="ok"){amount=parseInt(e.gsub(/[^0-9]/,""));if(amount>0){AjaxLife.Network.Send("SendAgentMoney",{Target:Z,Amount:amount})}else{AjaxLife.Widgets.Modal.alert("",_("Profile.InvalidAmount"))}}})},text:_("Profile.PayButton")});Y.getEl().setStyle({position:"absolute",top:"360px",left:"120px"});if(gAgentID!=Z&&!AjaxLife.Friends.IsFriend(Z)){var L=new Ext.Button(D.bodyEl.dom,{handler:function(){AjaxLife.Widgets.Modal.confirm("",_("Profile.ConfirmFriendAdd",{first:X,last:M}),function(d){if(d=="yes"){AjaxLife.Friends.OfferFriendship(Z);AjaxLife.Widgets.Ext.msg("",_("Profile.FriendshipOffered",{first:X,last:M}))}})},text:_("Profile.FriendButton")});L.getEl().setStyle({position:"absolute",top:"385px",left:"120px"})}var Q=new Ext.Button(D.bodyEl.dom,{handler:function(){AjaxLife.Widgets.Modal.show({title:_("Profile.TeleportDialogTitle",{first:X,last:M}),msg:_("Profile.TeleportDialogPrompt",{first:X,last:M}),value:_("Profile.TeleportDefaultMessage",{sim:AjaxLife.Map.getpos().sim}),buttons:Ext.Msg.OKCANCEL,modal:true,prompt:true,closable:true,fn:function(d,e){if(d=="ok"){AjaxLife.Network.Send("SendTeleportLure",{Target:Z,Message:e})}}})},text:_("Profile.TeleportButton")});Q.getEl().setStyle({position:"absolute",top:"385px",left:"10px"});var W=$(document.createElement("div"));W.setAttribute("id","dd_profile_"+Z);W.setStyle({top:"360px",left:"220px",position:"absolute",height:"44px",width:"100px",backgroundColor:"#ddd",textAlign:"center",paddingTop:"auto",paddingBottom:"auto",borderWidth:"1px",borderStyle:"solid",borderColor:"#000",cursor:"default"});W.appendChild(document.createTextNode(_("Profile.DropInventory")));var J=new Ext.dd.DropTarget(W,{ddGroup:"InventoryDD",copy:true,notifyDrop:function(d,j,h){var g=h.node;h=h.node.attributes;if(!g.leaf){AjaxLife.Widgets.Ext.msg("",_("Inventory.NoFolderTransfer",{item:h.Name}));return false}if(h.Permissions.OwnerMask&AjaxLife.Constants.Permissions.Transfer){var f=_("Inventory.ConfirmNoCopyTransfer",{item:h.Name,first:X,last:M});var i=false;if(h.Permissions.OwnerMask&AjaxLife.Constants.Permissions.Copy){f=_("Inventory.ConfirmTransfer",{item:h.Name,first:X,last:M});i=true}AjaxLife.Widgets.Modal.confirm(_("Inventory.ConfirmTransferTitle"),f,function(e){if(e=="yes"){AjaxLife.Network.Send("GiveInventory",{ItemID:h.UUID,ItemName:h.Name,AssetType:h.AssetType,Recipient:Z});if(!i){AjaxLife.Inventory.removenode(g)}}});return true}else{AjaxLife.Widgets.Ext.msg("",_("Inventory.NoNoTransferTransfer",{item:h.Name}));return false}}});D.bodyEl.addClass("profile 2ndlife");D.bodyEl.dom.appendChild(W);D.bodyEl.dom.appendChild(V.dom);D.bodyEl.dom.appendChild(a.dom);D.bodyEl.dom.appendChild(H.dom);D.bodyEl.dom.appendChild(R.dom);D.bodyEl.dom.appendChild(E.dom);D.bodyEl.dom.appendChild(P.dom);D.bodyEl.dom.appendChild(B.dom);D.bodyEl.dom.appendChild(F.dom);D.bodyEl.dom.appendChild(O.dom);D.bodyEl.dom.appendChild(C.dom);D.activate();U=G.getTabs().addTab("profile_tab_"+Z+"_1stlife",_("Profile.FirstLife"));var S=Ext.get($(document.createElement("div")));S.setStyle({width:"200px",height:"200px",position:"absolute",top:"5px",left:"5px",border:"thin solid black"});var A=Ext.get($(document.createElement("div")));A.setStyle({position:"absolute",top:"250px",left:"5px",height:"150px",width:"320px",border:"thin solid black",overflow:"auto"});var I=Ext.get($(document.createElement("div")));I.setStyle({position:"absolute",top:"230px",left:"5px"});I.dom.update(_("Profile.About"));U.bodyEl.addClass("profile 1stlife");U.bodyEl.dom.appendChild(S.dom);U.bodyEl.dom.appendChild(A.dom);U.bodyEl.dom.appendChild(I.dom);G.show();AjaxLife.Network.MessageQueue.RegisterCallback("AvatarProperties",function(e){if(!K||e.AvatarID!=Z){return }new AjaxLife.Texture(a.dom,181,136,e.ProfileImage,true);H.dom.update(_("Profile.JoinDate",{date:e.BornOn}));R.dom.update(_(e.Online?"Profile.Online":"Profile.Offline"));var d="";if(M=="Linden"){if(X=="Philip"){d="El Presidente"}else{d=_("Profile.LindenAccount")}}else{if(e.Identified&&e.Transacted){d=_("Profile.PaymentInfoUsed")}else{if(e.Identified){d=_("Profile.PaymentInfoOnFile")}else{if(!e.Transacted){d=_("Profile.NoPaymentInfo")}}}}E.dom.update(_("Profile.Account",{type:d}));F.dom.update(AjaxLife.Utils.FixText(e.AboutText));if(e.PartnerID==AjaxLife.Utils.UUID.Zero){P.dom.update(_("Profile.Partner",{partner:_("Profile.None")}))}else{AjaxLife.NameCache.Find(e.PartnerID,function(f){P.dom.update(_("Profile.Partner",{partner:f}))})}new AjaxLife.Texture(S.dom,200,200,e.FirstLifeImage);A.dom.update(AjaxLife.Utils.FixText(e.FirstLifeText))});AjaxLife.Network.MessageQueue.RegisterCallback("AvatarInterests",function(d){if(!K||d.AvatarID!=Z){return }});AjaxLife.Network.MessageQueue.RegisterCallback("AvatarGroups",function(d){if(!K||d.AvatarID!=Z){return }d.Groups.each(function(e){T.add(e.GroupID,e.GroupName)})});AjaxLife.Debug("Profile: Looking up the name for "+Z);AjaxLife.NameCache.Find(Z,function(d){G.setTitle(_("Profile.WindowTitle",{name:d}));V.dom.update(_("Profile.Name",{name:d}));d=d.split(" ");X=d[0];M=d[1];AjaxLife.Debug("Profile: Requesting agent data for "+Z);AjaxLife.Network.Send("GetAgentData",{AgentID:Z})});return{}}
AjaxLife.ScriptDialogCount=0;AjaxLife.ScriptDialogs=function(){function C(E){var F=AjaxLife.Constants.MainAvatar.ScriptPermission;var D="";if(E.Permissions&F.Debit){D+=_("Permissions.Debit",{})+"\n"}if(E.Permissions&F.TakeControls){D+=_("Permissions.TakeControls",{})+"\n"}if(E.Permissions&F.TriggerAnimation){D+=_("Permissions.Animate",{})+"\n"}if(E.Permissions&F.Attach){D+=_("Permissions.Attach",{})+"\n"}if(E.Permissions&F.ChangeLinks){D+=_("Permissions.ChangeLinks",{})+"\n"}if(E.Permissions&F.TrackCamera){D+=_("Permissions.TrackCamera",{})+"\n"}if(E.Permissions&F.ControlCamera){D+=_("Permissions.ControlCamera",{})+"\n"}AjaxLife.Widgets.Modal.confirm(_("ScriptDialogs.PermissionRequestTitle",{}),_("ScriptDialogs.PermissionRequestBody",{object:E.ObjectName,owner:E.ObjectOwner,permission:D}),function(G){var H=0;if(G=="yes"){H=E.Permissions}AjaxLife.Network.Send("ScriptPermissionResponse",{ItemID:E.ItemID,TaskID:E.TaskID,Permissions:H})})}function B(H,N,Q){++AjaxLife.ScriptDialogCount;function I(T,S){Q(T,S);M.hide()}var M=new Ext.BasicDialog("dlg_lldialog_"+AjaxLife.ScriptDialogCount,{width:"400px",height:"300px",modal:false,shadow:true,autoCreate:true,title:_("ScriptDialogs.DialogTitle"),proxyDrag:!AjaxLife.Fancy,closeClick:function(){I(-1,"Ignore")}});var R=M.body.createChild({html:"<span></span><br />"});var E=R.dom.firstChild;M.on("hide",function(){M.destroy(true)});M.addKeyListener(27,function(){M.hide()});var P=$(document.createElement("table"));P.addClassName("llDialog");var L=false;var J=function(T,S){return function(){I(T,S)}};for(var G=0;G<N.length;++G){var D=N[G];if(G%3==0){L=document.createElement("tr");P.appendChild(L)}var F=document.createElement("td");L.appendChild(F);var K=J(G,D);new Ext.Button(F,{text:D,handler:K})}M.addButton("Ignore",function(){I(-1,"Ignore")});M.body.setStyle({background:"#CFE0F5",border:"0 none",fontSize:"13px"});var O=_("ScriptDialogs.DialogMessage",{object:H.ObjectName,first:H.FirstName,last:H.LastName,message:H.Message});E.innerHTML=O||"&#160;";E.appendChild(P);M.show();return M}function A(D){var E={};D.Buttons.each(function(F){E[F]=F});B(D,D.Buttons,function(F,G){if(F==-1||G==""){return }AjaxLife.Network.Send("ScriptDialogReply",{ButtonIndex:F,ButtonLabel:G,ChatChannel:D.ChatChannel,ObjectID:D.ObjectID})})}return{init:function(){AjaxLife.Network.MessageQueue.RegisterCallback("ScriptPermissionRequest",C);AjaxLife.Network.MessageQueue.RegisterCallback("ScriptDialog",A)}}}()
AjaxLife.Search=function(){var D=false;var B=false;var C=false;function A(){AjaxLife.Debug("Search: Searching for '"+E+"' in people.");C.clear();var E=B.dom.value;AjaxLife.Network.Send("FindPeople",{Search:E,Start:0})}return{init:function(){D=new Ext.BasicDialog("dlg_search",{width:"300px",height:"400px",modal:false,shadow:true,autoCreate:true,title:_("Search.WindowTitle"),proxyDrag:!AjaxLife.Fancy});people_tab=D.getTabs().addTab("search-people-tab",_("Search.People"));people_tab.activate();var F=Ext.get(document.createElement("div"));F.dom.setAttribute("id","search_div_people_search");B=Ext.get(document.createElement("input"));B.setStyle({width:"98%"});B.dom.setAttribute("id","search_box_seach");B.dom.setAttribute("type","text");F.dom.appendChild(B.dom);people_tab.bodyEl.dom.appendChild(F.dom);var E=new Ext.util.DelayedTask(A);B.on("keydown",function(){E.delay(750)});C=new AjaxLife.Widgets.SelectList("search_list_results",people_tab.bodyEl.dom,{width:"99%",callback:function(G){new AjaxLife.Profile(G)}});AjaxLife.Network.MessageQueue.RegisterCallback("DirPeopleReply",function(G){AjaxLife.Debug("Search: Received search results.");G.Results.each(function(H){AjaxLife.NameCache.Add(H.AgentID,H.FirstName+" "+H.LastName);C.add(H.AgentID,H.FirstName+" "+H.LastName)});C.sort()})},open:function(E){if(E){D.show(E)}else{D.show()}},close:function(){D.hide()},toggle:function(E){if(!D.isVisible()){this.open(E)}else{this.close()}}}}()
AjaxLife.Sound=function(){var B=true;function A(C){if(B){Sound.play(AjaxLife.STATIC_ROOT+"sounds/"+escape(C)+".wav")}}return{Disable:function(){B=false},Enable:function(){if(!B){B=true;A("im")}},Toggle:function(){if(B){this.Disable()}else{this.Enable()}},Play:function(C){A(C)}}}()
AjaxLife.SpatialChat=function(){var A=false;var G=false;var E=false;var H=false;var F=false;var C=false;var D=0;var I=false;function K(N,P){var O=0;var Q=[0,1,2,3,4,5,6,7,8,9];var L=0;if(P.substr(0,1)=="/"){if(P.substr(1,1)=="/"){O=D;P=P.substr(2)}else{for(var M=1;M<P.length;++M){if(Q.indexOf(P.substr(M,1))>-1){L=M}else{break}}if(L>0){O=P.substr(1,L);D=O;P=P.substr(L+1)}}}AjaxLife.Network.Send("SpatialChat",{Message:P,Channel:O,Type:N})}function J(R,P,N){R=AjaxLife.Utils.LinkifyText(R);if(N&&N.name&&N.id&&N.id!=AjaxLife.Utils.UUID.Zero){R=R.sub(N.name,'<span class="name clickable" onclick="new AjaxLife.Profile(\''+N.id+"');\">"+N.name+"</span>")}var L=Ext.get(document.createElement("div"));L.addClass("chatline");if(P==AjaxLife.Constants.MainAvatar.ChatSourceType.System){L.addClass("systemmessage")}else{if(P==AjaxLife.Constants.MainAvatar.ChatSourceType.Agent){L.addClass("agentmessage")}else{if(P==AjaxLife.Constants.MainAvatar.ChatSourceType.Object){L.addClass("objectmessage")}}}var O=Ext.get(document.createElement("span"));O.addClass("chattimestamp");var Q=new Date();O.dom.appendChild(document.createTextNode("["+Q.getHours()+":"+((Q.getMinutes()<10)?("0"+Q.getMinutes()):Q.getMinutes())+"]"));L.dom.appendChild(O.dom);L.dom.appendChild(document.createTextNode(" "));var M=document.createElement("span");M.innerHTML=R;L.dom.appendChild(M);G.dom.appendChild(L.dom);G.dom.scrollTop=G.dom.scrollHeight}function B(L,Q,O,P,N){if(O.blank()){return }if(P!=AjaxLife.Constants.MainAvatar.ChatSourceType.System){if(O.substr(0,3)=="/me"){O=L+O.substr(3)}else{var M=false;if(L==gUserName){L=_("SpatialChat.You");M=true}if(N==AjaxLife.Constants.MainAvatar.ChatType.Shout){O=L+(M?_("SpatialChat.SecondPersonShout"):_("SpatialChat.ThirdPersonShout"))+" "+O}else{if(N==AjaxLife.Constants.MainAvatar.ChatType.Whisper){O=L+(M?_("SpatialChat.SecondPersonWhisper"):_("SpatialChat.ThirdPersonWhisper"))+" "+O}else{O=L+(M?_("SpatialChat.SecondPersonSay"):_("SpatialChat.ThirdPersonSay"))+" "+O}}}}J(O,P,{name:L,id:Q})}return{init:function(){A=new Ext.BasicDialog("dlg_chat",{width:500,height:300,modal:false,shadow:true,autoCreate:true,title:_("SpatialChat.WindowTitle"),proxyDrag:!AjaxLife.Fancy});A.body.setStyle({overflow:"hidden"});G=Ext.get(document.createElement("div"));G.setStyle({height:"241px",width:"99%",overflow:"auto"});A.body.dom.appendChild(G.dom);E=new AjaxLife.Widgets.ChatEntryBox(A.body.dom,"chat-input",function(M){AjaxLife.Network.Send("StopAnimation",{Animation:AjaxLife.Constants.Animations.avatar_type});AjaxLife.Network.Send("SpatialChat",{Message:"a",Channel:0,Type:AjaxLife.Constants.MainAvatar.ChatType.StopTyping});I=false;K(AjaxLife.Constants.MainAvatar.ChatType.Normal,M)},{width:"310px",height:"15px","float":"left"});A.on("resize",function(O,N,M){G.setStyle({height:(M-59)+"px"});E.setStyle({width:(N-190)+"px"});G.dom.scrollTop=G.dom.scrollHeight});F=new Ext.Button(A.body,{handler:function(){K(AjaxLife.Constants.MainAvatar.ChatType.Normal,E.getValue());E.resetLine()},text:_("SpatialChat.Say"),height:"12px"});F.getEl().setStyle({position:"absolute",right:"125px",bottom:"2px"});C=new Ext.Button(A.body,{handler:function(){K(AjaxLife.Constants.MainAvatar.ChatType.Whisper,E.getValue());E.resetLine()},text:_("SpatialChat.Whisper"),height:"12px"});C.getEl().setStyle({position:"absolute",right:"59px",bottom:"2px"});H=new Ext.Button(A.body,{handler:function(){K(AjaxLife.Constants.MainAvatar.ChatType.Shout,E.getValue());E.resetLine()},text:_("SpatialChat.Shout"),height:"12px"});H.getEl().setStyle({position:"absolute",right:"5px",bottom:"2px"});var L=new Ext.util.DelayedTask(function(){AjaxLife.Network.Send("StopAnimation",{Animation:AjaxLife.Constants.Animations.avatar_type});AjaxLife.Network.Send("SpatialChat",{Message:"a",Channel:0,Type:AjaxLife.Constants.MainAvatar.ChatType.StopTyping});I=false});E.addListener("keypress",function(M){if(!I&&E.getValue().substr(0,1)!="/"){I=true;AjaxLife.Network.Send("StartAnimation",{Animation:AjaxLife.Constants.Animations.avatar_type});AjaxLife.Network.Send("SpatialChat",{Message:"",Channel:0,Type:AjaxLife.Constants.MainAvatar.ChatType.StartTyping});L.delay(2000)}});AjaxLife.Friends.AddStatusCallback(function(M){J(_("Friends.OnlineNotification",{name:M.Name,status:(M.Online?_("Friends.Online"):_("Friends.Offline"))}),AjaxLife.Constants.MainAvatar.ChatSourceType.System,{name:M.Name,id:M.ID})});AjaxLife.Network.MessageQueue.RegisterCallback("SpatialChat",function(M){if(M.Audible>-1){if(M.Type==AjaxLife.Constants.MainAvatar.ChatType.Whisper||M.Type==AjaxLife.Constants.MainAvatar.ChatType.Shout||M.Type==AjaxLife.Constants.MainAvatar.ChatType.Normal||M.Type==AjaxLife.Constants.MainAvatar.ChatType.OwnerSay){B(M.FromName,(M.SourceType==AjaxLife.Constants.MainAvatar.ChatSourceType.Agent)?M.ID:false,M.Message,M.SourceType,M.Type)}}});AjaxLife.Network.MessageQueue.RegisterCallback("InstantMessage",function(M){if(M.Dialog==AjaxLife.Constants.MainAvatar.InstantMessageDialog.MessageFromObject){B(M.FromAgentName,false,M.Message,AjaxLife.Constants.MainAvatar.ChatSourceType.Object,AjaxLife.Constants.MainAvatar.ChatType.Normal)}})},addline:function(L,P,N,O,M){B(L,P,N,O,M)},systemmessage:function(L){J(L,AjaxLife.Constants.MainAvatar.ChatSourceType.System)},open:function(L){if(L){A.show(L)}else{A.show()}},close:function(){A.hide()},toggle:function(L){if(!A.isVisible()){if(L){A.show(L)}else{A.show()}}else{A.hide()}}}}()
AjaxLife.Stats=function(){var M=false;var K=false;var J=false;var B=false;var A=false;var C=false;var H=false;var L=false;var O=false;var E=false;var G=false;var F=false;var P=false;var D=false;function N(){AjaxLife.Network.Send("GetStats",{callback:I})}function I(Q){K.update(Math.round(Q.FPS));J.update(Math.round(Q.TimeDilation*100)/100);B.update(Q.LSLIPS);A.update(Q.Objects);C.update(Q.ActiveScripts);H.update(Q.Agents);L.update(Q.ChildAgents);O.update((Math.round(Q.PhysicalMemoryUsage/1024/1024*10)/10)+"MB");E.update((Math.round(Q.PagedMemoryUsage/1024/1024*10)/10)+"MB");G.update(Q.AjaxLifeSessions);F.update(Q.TextureCacheCount);P.update((Math.round(Q.TextureCacheSize/1024/1024*10)/10)+"MB");if(M.isVisible()){D=setTimeout(function(){N()},5000)}}return{init:function(){M=new Ext.BasicDialog("dlg_stats",{width:"250px",height:"280px",modal:false,shadow:true,autoCreate:true,title:_("Stats.WindowTitle"),proxyDrag:!AjaxLife.Fancy});var R=$(document.createElement("table"));var S=$(document.createElement("tr"));S.addClassName("titlerow");R.appendChild(S);var Q=document.createElement("th");Q.setAttribute("colspan",2);Q.appendChild(document.createTextNode(_("Stats.Region")));S.appendChild(Q);S=$(document.createElement("tr"));R.appendChild(S);Q=document.createElement("th");Q.appendChild(document.createTextNode(_("Stats.FPS")));S.appendChild(Q);K=$(document.createElement("td"));K.appendChild(document.createTextNode("Loading..."));S.appendChild(K);S=$(document.createElement("tr"));R.appendChild(S);Q=document.createElement("th");Q.appendChild(document.createTextNode(_("Stats.TD")));S.appendChild(Q);J=$(document.createElement("td"));J.appendChild(document.createTextNode("Loading..."));S.appendChild(J);S=$(document.createElement("tr"));R.appendChild(S);Q=document.createElement("th");Q.appendChild(document.createTextNode(_("Stats.ScriptIPS")));S.appendChild(Q);B=$(document.createElement("td"));B.appendChild(document.createTextNode("Loading..."));S.appendChild(B);S=$(document.createElement("tr"));R.appendChild(S);Q=document.createElement("th");Q.appendChild(document.createTextNode(_("Stats.Objects")));S.appendChild(Q);A=$(document.createElement("td"));A.appendChild(document.createTextNode("Loading..."));S.appendChild(A);S=$(document.createElement("tr"));R.appendChild(S);Q=document.createElement("th");Q.appendChild(document.createTextNode(_("Stats.Scripts")));S.appendChild(Q);C=$(document.createElement("td"));C.appendChild(document.createTextNode("Loading..."));S.appendChild(C);S=$(document.createElement("tr"));R.appendChild(S);Q=document.createElement("th");Q.appendChild(document.createTextNode(_("Stats.Agents")));S.appendChild(Q);H=$(document.createElement("td"));H.appendChild(document.createTextNode("Loading..."));S.appendChild(H);S=$(document.createElement("tr"));R.appendChild(S);Q=document.createElement("th");Q.appendChild(document.createTextNode(_("Stats.ChildAgents")));S.appendChild(Q);L=$(document.createElement("td"));L.appendChild(document.createTextNode("Loading..."));S.appendChild(L);S=$(document.createElement("tr"));S.addClassName("titlerow");R.appendChild(S);Q=document.createElement("th");Q.setAttribute("colspan",2);Q.appendChild(document.createTextNode(_("Stats.ALServer")));S.appendChild(Q);S=$(document.createElement("tr"));Q=document.createElement("th");Q.appendChild(document.createTextNode("Memory Usage"));S.appendChild(Q);O=$(document.createElement("td"));O.appendChild(document.createTextNode("Loading..."));S.appendChild(O);S=$(document.createElement("tr"));Q=document.createElement("th");Q.appendChild(document.createTextNode("Pagefile Usage"));S.appendChild(Q);E=$(document.createElement("td"));E.appendChild(document.createTextNode("Loading..."));S.appendChild(E);S=$(document.createElement("tr"));R.appendChild(S);Q=document.createElement("th");Q.appendChild(document.createTextNode(_("Stats.Sessions")));S.appendChild(Q);G=$(document.createElement("td"));G.appendChild(document.createTextNode("Loading..."));S.appendChild(G);S=$(document.createElement("tr"));Q=document.createElement("th");Q.appendChild(document.createTextNode("Cached Textures"));S.appendChild(Q);F=$(document.createElement("td"));F.appendChild(document.createTextNode("Loading..."));S.appendChild(F);S=$(document.createElement("tr"));Q=document.createElement("th");Q.appendChild(document.createTextNode("Texture Cache Size"));S.appendChild(Q);P=$(document.createElement("td"));P.appendChild(document.createTextNode("Loading..."));S.appendChild(P);M.body.dom.appendChild(R);M.on("show",function(){clearTimeout(D);N()});N()},open:function(Q){if(Q){M.show(Q)}else{M.show()}},close:function(){M.hide()},toggle:function(Q){if(!M.isVisible()){this.open(Q)}else{this.close()}}}}()
AjaxLife.StatusBar=function(){var B=false;var A=false;var C=false;return{init:function(){var D=(_("Language.Direction")=="rtl");B=$(document.createElement("div"));B.setStyle({"float":(D?"left":"right"),color:"#00e752"});B.appendChild(document.createTextNode(_("StatusBar.LindenDollarSymbol")+_("StatusBar.Loading")));$("statusbar").appendChild(B);A=$(document.createElement("div"));A.setStyle({"float":(D?"right":"left"),color:"white"});A.appendChild(document.createTextNode("Unknown (0, 0, 0)"));$("statusbar").appendChild(A);AjaxLife.Network.MessageQueue.RegisterCallback("MoneyBalanceReplyReceived",function(E){AjaxLife.Debug("StatusBar: Received new L$ balance");B.update(_("StatusBar.LindenDollarSymbol")+AjaxLife.Utils.FormatNumber(E.Balance));C=E.Balance;if(E.Description!=""){AjaxLife.Widgets.Ext.msg("",E.Description)}});AjaxLife.Network.MessageQueue.RegisterCallback("UsefulData",function(E){A.update(E.YourRegion+" ("+Math.round(E.YourPosition.X)+", "+Math.round(E.YourPosition.Y)+", "+Math.round(E.YourPosition.Z)+")")});AjaxLife.Network.MessageQueue.RegisterCallback("BalanceUpdated",function(E){B.update(_("StatusBar.LindenDollarSymbol")+AjaxLife.Utils.FormatNumber(E.Balance));C=E.Balance});AjaxLife.Network.MessageQueue.RegisterCallback("InstantMessage",function(E){if(E.IMSessionID!=AjaxLife.Utils.UUID.Zero||E.Dialog!=AjaxLife.Constants.MainAvatar.InstantMessageDialog.MessageFromAgent){return }AjaxLife.Widgets.Ext.msg(E.FromAgentName,E.Message,"estate-message-"+E.FromAgentID,true);AjaxLife.Widgets.Modal.alert(E.FromAgentName,E.Message);AjaxLife.SpatialChat.systemmessage(E.FromAgentName+": "+E.Message)});AjaxLife.Debug("StatusBar: Requesting L$ balance");AjaxLife.Network.Send("RequestBalance",{})}}}()
AjaxLife.Strings={en:{Language:{Direction:"ltr"},Friends:{OnlineNotification:"#{name} is #{status}.",Online:"online",Offline:"offline",FriendshipOffered:"#{name} has offered friendship. Will you accept?",YouAccept:"You accepted #{name} as a friend.",YouDecline:"You declined #{name}'s friendship offer."},InstantMessage:{Typing:"#{name} is typing...",OnlineFriends:"Online Friends",Groups:"Groups",Send:"Send",WindowTitle:"Instant Messages",Profile:"Profile",NewIMSession:"#{from} has sent you a new instant message.",SessionCreateFailed:"Couldn't create new group chat session."},AjaxLife:{Precaching:"Precaching...",MOTD:"Message of the Day"},Map:{TeleportConfirm:"Are you sure you want to teleport to #{sim} (#{x}, #{y})?",RegionLabel:"Region:",PositionLabel:"Position:",TeleportNoun:"Teleport",TeleportVerb:"Teleport",Teleporting:"Teleporting",FocusYou:"Focus on you",Clear:"Clear",FocusTarget:"Focus on target",HomeButton:"Go Home",HomeConfirm:"Are you sure you want to go home?",TeleportRequest:"#{name} has offered you a teleport:<br /><br />#{message}",TeleportRequestTitle:"Teleport offer",Teleportation:"Teleportation",TeleportSuccess:"You have successfully teleported to #{sim} (#{x}, #{y}, #{z})",TeleportCancelled:"Your teleport was cancelled.",TeleportError:"Your teleport was not successful. Please try again later.",WindowTitle:"Map",NoRegionGiven:"The server has failed to send the name of the sim you are in.",GodLikeTeleportRequest:"You are being forced to teleport to a Linden.",TeleportCompleteMessage:"Completed teleport from #{url}"},Network:{LoggingOut:"Logging out...",LogoutError:"Could not log out of Second Life due to a communication error.",LogoutSuccess:"You have logged out of Second Life.",LogoutForced:"You have been logged out of Second Life:<br /><br />#{reason}",UnhandledMessage:"Unhandled message",EventQueueFailure:"The event queue could not be updated.",GenericSendError:"An error occured while sending the data.",InventoryReceive:"#{name} gave you #{item}",Error:"Error",Disconnected:"Disconnected",Reconnecting:"Attempting to reconnect to server..."},StatusBar:{Money:"Money",LindenDollarSymbol:"L$",Loading:" loading...",MoneyReceived:"You were paid L$#{amount}.",MoneyGiven:"You paid L$#{amount}."},SpatialChat:{ThirdPersonShout:" shouts:",SecondPersonShout:" shout:",ThirdPersonSay:":",SecondPersonSay:":",ThirdPersonWhisper:" whispers:",SecondPersonWhisper:" whisper:",You:"You",Say:"Say",Whisper:"Whisper",Shout:"Shout",WindowTitle:"Local chat"},Toolbar:{ChatButton:"Chat",IMButton:"Instant Messages",MapButton:"Map",SearchButton:"Search",LogoutButton:"Log out",LogoutTitle:"Log out",LogoutPrompt:"Are you sure you want to log out?",NearbyButton:"Nearby Avatars",InventoryButton:"Inventory",StatsButton:"Stats"},Widgets:{Yes:"Yes",No:"No",Accept:"Accept",Decline:"Decline",OK:"OK",Cancel:"Cancel"},Search:{WindowTitle:"Search",Searching:"Searching...",People:"People"},Profile:{WindowTitle:"Profile - #{name}",Loading:"Loading...",JoinDate:"Joined: #{date}",Account:"Account:<br />#{type}",PaymentInfoOnFile:"Payment info on file",PaymentInfoUsed:"Payment info used",LindenAccount:"Linden Lab Employee",NoPaymentInfo:"No payment info",Picks:"Picks",Interests:"Interests",SecondLife:"2nd Life",FirstLife:"1st Life",Groups:"Groups",About:"About",Name:"Name: #{name}",Online:"Online",Offline:"Offline",Partner:"Partner:<br />#{partner}",None:"None",IMButton:"Instant Message",PayButton:"Pay",PayDialogTitle:"Paying #{first} #{last}",PayDialogPrompt:"How much do you want to pay #{first} #{last}?",InvalidAmount:"That is an invalid amount to pay!",FriendButton:"Add Friend",ConfirmFriendAdd:"Are you sure you want to add #{first} #{last} as a friend?",FriendshipOffered:"You have offered #{first} #{last} friendship.",TeleportButton:"Offer Teleport",TeleportDialogTitle:"Teleporting #{first} #{last}",TeleportDialogPrompt:"Enter a message to send with your teleport offer:",TeleportDefaultMessage:"Join me in #{sim}!",DropInventory:"Drop inventory here"},Texture:{DownloadFailed:"Could not download texture."},Number:{ThousandSeparatorInterval:3,ThousandSeparator:",",DecimalPoint:"."},AvatarsNear:{WindowTitle:"Nearby Avatars"},Inventory:{WindowTitle:"Inventory",NullAssetTransfer:"An asset request failed.",OfferAccepted:"#{name} accepted your inventory offer.",OfferDeclined:"#{name} declined your inventory offer.",NoFolderTransfer:"Unfortunately, giving folders is not yet supported.",NoNoTransferTransfer:"'#{item}' is no transfer, so cannot be given away.",ConfirmTransfer:"Are you sure you want to give #{item} to #{first} #{last}?",ConfirmNoCopyTransfer:"#{item} is not copyable. If you give it away, you will lose your copy.<br /><br />Do you wish to give #{first} #{last} #{item}?",ConfirmTransferTitle:"Inventory transfer",Delete:"Delete",Properties:"Properties",CreateFolder:"Create new folder",CreateNote:"Create new notecard",EmptyTrash:"Empty trash",NewFolderName:"Please enter a name for the folder:",NewNoteName:"Please enter a name for the notecard:",FolderCreationFailed:"Could not create new folder.",CreationFailed:"Could not create new inventory item.",ConfirmItemPurge:"Are you sure you wish to permanently delete '#{item}'?",ConfirmEmptyTrash:"Are you sure you want to empty the trash?",Rename:"Rename",RenameItem:"Enter a new name:",ScriptRestricted:"You need more permissions to open this script.",CopyUUID:"Copy UUID",Loading:"Loading contents...",MyInventory:"My Inventory",InventoryReceivedTitle:"Invenory received",InventoryReceived:"#{from} has given you the #{type} '#{name}'"},InventoryDialogs:{Texture:{WindowTitle:"Texture: #{name}"},Notecard:{WindowTitle:"Notecard: #{name}",Loading:"Loading notecard...",Save:"Save"},Script:{WindowTitle:"Script: #{name}"},Landmark:{Title:"Teleport to landmark",Message:"Are you sure you want to teleport to #{name}?"},Properties:{Title:"Properties - #{name}",Name:"Name:",Description:"Description:",Creator:"Creator:",Owner:"Owner:",Acquired:"Acquired:",OwnerCan:"Owner can:",NextOwnerCan:"Next owner can:",MarkItem:"Mark item:",ForSale:"For sale",Original:"Original",Copy:"Copy",Price:"Price:",Profile:"Profile",Unknown:"(unknown)"}},Stats:{WindowTitle:"Stats",Region:"Region",FPS:"FPS",TD:"Time Dilation",ScriptIPS:"Script IPS",Objects:"Objects",Scripts:"Active Scripts",Agents:"Agents",ChildAgents:"Child Agents",ALServer:"AjaxLife Server",Sessions:"Sessions"},ScriptDialogs:{PermissionRequestTitle:"Script permission request",PermissionRequestBody:"'#{object}', an object owned by '#{owner}', would like to:<br /><br />#{permission}<br />Is this OK?",DialogMessage:"#{first} #{last}'s '#{object}':<br />#{message}",DialogTitle:"Script dialog"},Permissions:{Debit:"Take Linden Dollars (L$) from you",TakeControls:"Act on your control inputs",Animate:"Animate your avatar",Attach:"Attach to your avatar",ChangeLinks:"Link and delink from other objects",TrackCamera:"Track your camera",ControlCamera:"Control your camera"},AssetPermissions:{Copy:"Copy",NoCopy:"No copy",Transfer:"Transfer",NoTransfer:"No transfer",Modify:"Modify",NoModify:"No modify"},Login:{First:"First name",Last:"Last name",Password:"Password",LogIn:"Log in",Grid:"Grid",Language:"Language",EnableSound:"Enable sound",LoadingSession:"Loading session data...",SessionLoadFailed:"Error loading session data.",Encrypting:"Encrypting login data...",LoggingIn:"Logging in to Second Life...",Error:"Error",SomethingWrong:"Despite our best efforts, something has gone wrong.<br /><br />Please try again later.",Location:"Start Location",Home:"My Home",LastPlace:"My Last Location",ArbitraryPlace:"<Type region name>"}},he:{Language:{Direction:"rtl"},Friends:{OnlineNotification:"#{name} כרגע #{status}.",Online:"מחובר",Offline:"מנותק",FriendshipOffered:"#{name} הציע חברות. לאשר?",YouAccept:"הסכמת לבקשת החברות של #{name}.",YouDecline:"סירבת לבקשת החברות של #{name}."},InstantMessage:{Typing:"#{name} מקליד הודעה כעת...",OnlineFriends:"חברים מחוברים",Send:"שלח",WindowTitle:"הודעות מיידיות",Profile:"פרופיל",NewIMSession:"#{from} שלח לך הודעה מיידית חדשה.",Groups:"קבוצות",SessionCreateFailed:"נכשל הנסיון ליצירת שיחת קבוצה חדשה."},AjaxLife:{Precaching:"טוען מטמון...",MOTD:"הודעת היום"},Map:{TeleportConfirm:"האם אתה בטוח שברצונך לשגר את הדמות שלך אל #{sim} (#{x}, #{y})?",RegionLabel:"אזור:",PositionLabel:"מיקום:",TeleportNoun:"שגר",TeleportVerb:"שגר",Teleporting:"משגר",FocusYou:"התמקד במקומך",Clear:"אפס",FocusTarget:"התמקד במטרה",HomeButton:"השתגר הביתה",HomeConfirm:"האם אתה בטוח שברצונך לשגר את דמותך הביתה?",TeleportRequest:"#{name} הציע לשגר אותך למקומו:<br /><br />#{message}",TeleportRequestTitle:"הצעת שיגור",Teleportation:"שיגור",TeleportSuccess:"השתגרת בהצלחה אל #{sim} (#{x}, #{y}, #{z})",TeleportCancelled:"ביטלת את השיגור.",TeleportError:"השיגור נכשל. נסה שנית בבקשה.",WindowTitle:"מפה",NoRegionGiven:"השרת נכשל לשלוח את שם האזור שאתה בו כרגע.",GodLikeTeleportRequest:"אתה משוגר בכוח לנציג חברת לינדן לאב.",TeleportCompleteMessage:"השיגור הושלם מכתובת המקום #{url}"},Network:{LoggingOut:"מתנתק ויוצא...",LogoutError:"אין אפשרות להתנתק בגלל תקלת שירות.",LogoutSuccess:"נותקת בהצלחה.",LogoutForced:"נותקת מהשרת:<br /><br />#{reason}",UnhandledMessage:"הודעה לא מוכרת",EventQueueFailure:"רשימת האירועים נכשלה בעדכון.",GenericSendError:"אירעה שגיאה בעת שליחת המידע.",InventoryReceive:"#{name} נתן לך את הפריט #{item}",Error:"שגיאה",Disconnected:"נותקת"},StatusBar:{Money:"כסף",LindenDollarSymbol:"L$",Loading:" טוען...",MoneyReceived:"שילמו לך L$#{amount}.",MoneyGiven:"אתה שילמת L$#{amount}."},SpatialChat:{ThirdPersonShout:" צועק:",SecondPersonShout:" צעק:",ThirdPersonSay:" אמר:",SecondPersonSay:" אמר:",ThirdPersonWhisper:" לחש:",SecondPersonWhisper:" לחש:",You:"אתה",Say:"אומר",Whisper:"לוחש",Shout:"צועק",WindowTitle:"הודעות מקומיות"},Toolbar:{ChatButton:"דבר",IMButton:"הודעות מיידיות",MapButton:"מפה",SearchButton:"חפש",LogoutButton:"התנתק",LogoutTitle:"התנתק",LogoutPrompt:"האם אתה בטוח שברצונך להתנתק?",NearbyButton:"דמויות קרובות",InventoryButton:"מאגר פריטים",StatsButton:"סטטיסטיקות"},Widgets:{Yes:"כן",No:"לא",Accept:"אשר",Decline:"סרב",OK:"אישור",Cancel:"ביטול"},Search:{WindowTitle:"חפש",Searching:"מחפש...",People:"אנשים"},Profile:{WindowTitle:"פרופיל - #{name}",Loading:"טוען...",JoinDate:"הצטרף: #{date}",Account:"חשבון:<br />#{type}",PaymentInfoOnFile:"מידע תשלום נמצא",PaymentInfoUsed:"מידע תשלום שומש לפחות פעם אחת",LindenAccount:"מנהל שרתים",NoPaymentInfo:"מידע תשלום לא נמצא",Picks:"מקומות",Interests:"תחביבים",SecondLife:"חיים שניים",FirstLife:"חיים ראשונים",Groups:"קבוצות",About:"אודות",Name:"שם: #{name}",Online:"מחובר",Offline:"מנותק",Partner:"בן/בת-זוג:<br />#{partner}",None:"ריק",IMButton:"שלח הודעה",PayButton:"שלם",PayDialogTitle:"משלם ל#{first} #{last}",PayDialogPrompt:"כמה תרצה לשלם ל#{first} #{last}?",InvalidAmount:"זהו סכום בלתי חוקי לשלם!",FriendButton:"הוסף כחבר",ConfirmFriendAdd:"האם אתה בטוח שברצונך להוסיף את #{first} #{last} כחבר?",FriendshipOffered:"אתה הצעת ל#{first} #{last} חברות.",TeleportButton:"הצע שיגור",TeleportDialogTitle:"משגר #{first} #{last}",TeleportDialogPrompt:"הכנס הודעה לכלול עם הצעת השיגור שלך:",TeleportDefaultMessage:"הצטרף אליי ב#{sim}!",DropInventory:"גרור פריט לפה"},Texture:{DownloadFailed:"לא ניתן להוריד את הטקסטורה."},Number:{ThousandSeparatorInterval:3,ThousandSeparator:",",DecimalPoint:"."},AvatarsNear:{WindowTitle:"דמויות קרובות"},Inventory:{WindowTitle:"מלאי אישי",NullAssetTransfer:"התרחשה שגיאה בעת בקשת הנכס.",OfferAccepted:"#{name} אישר את הצעת המלאי שלך.",OfferDeclined:"#{name} סירב את הצעת המלאי שלך.",NoFolderTransfer:"לצערנו, שליחת תיקיות אינה נתמכת כעת.",NoNoTransferTransfer:"לצערנו, הפריט #{item} לא ניתן להעברה. כתוצאה מכך, הפריט שלך לא הועבר למשתמש.",ConfirmTransfer:"האם אתה בטוח שברצונך לתת את הפריט #{item} למשתמש #{first} #{last}?",ConfirmNoCopyTransfer:"#{item} לא ניתן להעתקה, אך ניתן להעברה. אם תמשיך בתהליך, העותק שלך ינתן למשתמש האחר.<br /><br />האם אתה בטוח שברצונך לתת למשתמש #{first} #{last} את הפריט #{item}?",ConfirmTransferTitle:"העברת פריטים",Delete:"מחק",Properties:"מאפיינים",CreateFolder:"צור תיקיה חדשה",EmptyTrash:"רוקן אשפה",NewFolderName:"הכנס שם לתיקיה החדשה:",FolderCreationFailed:"שגיאה התרחשה בעת יצירת התיקיה החדשה.",ConfirmItemPurge:"האם אתה בטוח כי ברצונך למחוק לצמיתות את הפריט '#{item}'? לא תיתכן אפשרות שיחזור אם תמשיך.",ConfirmEmptyTrash:"האם אתה בטוח כי ברצונך לרוקן את האשפה?",Rename:"שנה שם",RenameItem:"הכנס שם חדש:",ScriptRestricted:"אתה צריך רשות שינוי בכדי לראות את קובץ התכנות הזה.",CopyUUID:"העתק מזהה (UUID)",CreateNote:"צור פתק חדש",NewNoteName:"אנא הכנס שם בשביל הפתק החדש:",CreationFailed:"נכשל הנסיון ליצירת פריט מלאי חדש.",Loading:"טוען תכנים...",MyInventory:"המלאי שלי",InventoryReceivedTitle:"מלאי התקבל",InventoryReceived:"#{from} נתן לך את ה- #{type} '#{name}'"},InventoryDialogs:{Texture:{WindowTitle:"טקסטורה: #{name}"},Notecard:{WindowTitle:"פתק: #{name}",Loading:"טוען פתק...",Save:"שמור"},Script:{WindowTitle:"קובץ תכנות: #{name}",Loading:"טוען קובץ תכנות..."},Landmark:{Title:"שגר את דמותך למיקום",Message:"האם אתה בטוח שברצונך לשגר את דמותך אל #{name}?"},Properties:{Title:"מאפיינים - #{name}",Name:"שם:",Description:"תקציר:",Creator:"יוצר:",Owner:"בעלים:",Acquired:"הושג:",OwnerCan:"הבעלים יכול...:",NextOwnerCan:"הבעלים הבאים יכולים...:",MarkItem:"סמן פריט:",ForSale:"למכירה",Original:"מקורי",Copy:"העתק",Price:"מחיר:",Profile:"פרופיל",Unknown:"(לא ידוע)"}},Stats:{WindowTitle:"סטטיסטיקה",Region:"שרת אזור",FPS:"מהירות פריים לשניה",TD:"מהירות שרת נוכחית מתוך מקסימום",ScriptIPS:"הוראות תכנות לשניה",Objects:"אובייקטים פרימיטיביים",Scripts:"קובצי תכנות פעילים",Agents:"משתמשים",ChildAgents:"משתמשים בשרת שכן",ALServer:"שרת תוכנה",Sessions:"משתמשים בשרת תוכנה"},ScriptDialogs:{PermissionRequestTitle:"הענקת רשות לקובץ תכנות",PermissionRequestBody:"'#{object}', אובייקט אשר בעליו הם '#{owner}', רוצה לקבל את ההרשאה הבאה:<br /><br />#{permission}<br />לאשר?",DialogMessage:"הפריט '#{object}' של #{first} #{last} אומר:<br />#{message}",DialogTitle:"דיאלוג מקובץ תכנות"},Permissions:{Debit:"לקחת כסף (L$) ממך",TakeControls:"לדעת על אילו מקשי תנועה אתה לוחץ",Animate:"להניע את הדמות שלך באמצעות אנימציה",Attach:"להתחבר באופן פיזי לדמותך",ChangeLinks:"לחבר ולהינתק מאובייקטים אחרים",TrackCamera:"לעקוב אחרי זווית המצלמה שלך",ControlCamera:"לשלוט בזווית המצלמה שלך"},Login:{First:"שם פרטי",Last:"שם משפחה",Password:"סיסמה",LogIn:"התחבר",Grid:"רשת",Language:"שפת ממשק",LoadingSession:"טוען את הנתונים שלך...",SessionLoadFailed:"שגיאה בעת טעינת הנתונים שלך.",Encrypting:"מצפין מידע...",LoggingIn:"מתחבר...",Error:"שגיאה",SomethingWrong:"למרות כל נסיונותינו, משהו השתבש בעת החיבור.<br /><br />אנא נסה שנית מאוחר יותר.",Location:"מיקום התחלתי",Home:"מיקום הבית שלי",LastPlace:"המיקום האחרון שלי",ArbitraryPlace:"<כתוב שם אזור/שרת>"},AssetPermissions:{Copy:"מותר להעתיק",NoCopy:"אסור להעתיק",Transfer:"מותר להעביר",NoTransfer:"אסור להעביר",Modify:"מותר לשנות",NoModify:"אסור לשנות"}},ja:{Friends:{OnlineNotification:"#{name}は#{status}です。",Online:"オンライン",Offline:"オフライン",FriendshipOffered:"#{name}がフレンド登録を希望しています。承諾しますか?",YouAccept:"#{name}のフレンド登録を承諾しました。",YouDecline:"#{name}からのフレンド登録を辞退しました。",Groups:"グループ",SessionCreateFailed:"グループチャットのセッションを開始できませんでした。"},InstantMessage:{Typing:"#{name}が入力中です...",OnlineFriends:"オンラインのフレンド",Send:"送る",WindowTitle:"IM (インスタントメッセージ)",Profile:"プロフィール",NewIMSession:"#{from}からIMが来ました。"},AjaxLife:{Precaching:"読み込み中...",MOTD:"今日の一言"},Map:{TeleportConfirm:"#{sim} (#{x}/#{y}) にテレポートしていいですか?",RegionLabel:"地区:",PositionLabel:"位置:",TeleportNoun:"テレポート",TeleportVerb:"テレポートする",Teleporting:"テレポート中",FocusYou:"自分に注目",Clear:"クリア",FocusTarget:"他の場所に注目",HomeButton:"ホームに移動",HomeConfirm:"ホームに移動していいですか?",TeleportRequest:"#{name}がテレポートを誘っています:<br /><br />#{message}",TeleportRequestTitle:"テレポートの誘い",Teleportation:"テレポート",TeleportSuccess:"#{sim} (#{x}/#{y}/#{z}) へのテレポートは成功しました。",TeleportCancelled:"テレポートは中断しました。",TeleportError:"テレポートに失敗しました。また後で試してください。",WindowTitle:"地図",NoRegionGiven:"サーバからSIMの名前を獲得できませんでした。",GodLikeTeleportRequest:"リンデンがあなたを強制テレポートしています。",TeleportCompleteMessage:"#{url} からのテレポートが完了しました。"},Network:{LoggingOut:"ログアウトしています...",LogoutError:"通信エラーによりログアウトに失敗しました。",LogoutSuccess:"Second Lifeからログアウトしました。",LogoutForced:"Second Lifeから強制ログアウトされました。<br /><br />#{reason}",UnhandledMessage:"無効なメッセージ",EventQueueFailure:"イベントキューを更新できません。",GenericSendError:"データ送信中にエラーが発生しました。",InventoryReceive:"#{name}が#{item}を贈ってきました。",Error:"エラー",Disconnected:"切断しました。"},StatusBar:{Money:"残高",LindenDollarSymbol:"L$",Loading:" 読み込み中 ...",MoneyReceived:"L$#{amount}を受け取りました。",MoneyGiven:"L$#{amount}を支払いました。"},SpatialChat:{ThirdPersonShout:"の叫び:",SecondPersonShout:"の叫び:",ThirdPersonSay:":",SecondPersonSay:":",ThirdPersonWhisper:"のささやき:",SecondPersonWhisper:"のささやき:",You:"あなた",Say:"言う",Whisper:"ささやく",Shout:"叫ぶ",WindowTitle:"チャット"},Toolbar:{ChatButton:"チャット",IMButton:"IM",MapButton:"地図",SearchButton:"検索",LogoutButton:"ログアウト",LogoutTitle:"ログアウト",LogoutPrompt:"本当にログアウトしたいのですか?",NearbyButton:"近くの人",InventoryButton:"持ち物",StatsButton:"統計"},Widgets:{Yes:"はい",No:"いいえ",Accept:"了承",Decline:"辞退",OK:"OK",Cancel:"キャンセル"},Search:{WindowTitle:"検索",Searching:"検索中...",People:"人々"},Profile:{WindowTitle:"#{name}のプロフィール",Loading:"読み込み中...",JoinDate:"登録: #{date}",Account:"アカウント:<br />#{type}",PaymentInfoOnFile:"支払情報登録済み",PaymentInfoUsed:"支払い実績あり",LindenAccount:"リンデン社従業員",NoPaymentInfo:"支払情報未登録",Picks:"お勧め",Interests:"興味",SecondLife:"セカンドライフ",FirstLife:"リアルライフ",Groups:"グループ",About:"基本情報",Name:"名前: #{name}",Online:"オンライン",Offline:"オフライン",Partner:"パートナー:<br />#{partner}",None:"(なし)",IMButton:"IM",PayButton:"支払う",PayDialogTitle:"#{first} #{last}への支払い",PayDialogPrompt:"いくら#{first} #{last}に支払いますか?",InvalidAmount:"支払い金額が不適当です!",FriendButton:"フレンド登録",ConfirmFriendAdd:"本当に#{first} #{last}をフレンド登録したいのですか?",FriendshipOffered:"#{first} #{last}にフレンド登録を頼みました。",TeleportButton:"テレポートに誘う",TeleportDialogTitle:"#{first} #{last}をテレポートに誘う",TeleportDialogPrompt:"テレポートを誘う一言:",TeleportDefaultMessage:"Join me in #{sim}! / 私がいる#{sim}に来てください!",DropInventory:"ここに持ち物をドロップ"},Texture:{DownloadFailed:"テクスチャをダウンロードできませんでした。"},Number:{ThousandSeparatorInterval:3,ThousandSeparator:",",DecimalPoint:"."},AvatarsNear:{WindowTitle:"近くの人々"},Inventory:{WindowTitle:"持ち物",NullAssetTransfer:"アセット要求が失敗しました。",OfferAccepted:"#{name}がアイテムを受け取りました。",OfferDeclined:"#{name}がアイテムを辞退しました。",NoFolderTransfer:"今のところ、フォルダごと渡すことはできません。",NoNoTransferTransfer:"#{item}は譲渡不可です。他人に渡すことはできません。",ConfirmTransfer:"#{first} #{last}に#{item}を渡そうとしています。間違いありませんか?",ConfirmNoCopyTransfer:"#{item}はコピー不可です。他人に渡すと、あなたの手元には残りません。<br /><br />#{first} #{last}に#{item}を渡していいですか?",ConfirmTransferTitle:"持ち物を渡す",Delete:"削除",Properties:"プロパティ",CreateFolder:"新しいフォルダを作る",EmptyTrash:"ごみ箱を空にする",NewFolderName:"フォルダの名前:",FolderCreationFailed:"フォルダを作れませんでした。",ConfirmItemPurge:"'#{item}'を完全に削除します。いいですか?",ConfirmEmptyTrash:"ごみ箱の中のものを完全に削除します。いいですか?",Rename:"名前の変更",RenameItem:"新しい名前:",ScriptRestricted:"このスクリプトを開くための許可が不足しています。",CopyUUID:"UUIDをコピー",CreateNote:"ノートカードの新規作成",NewNoteName:"ノートカードの名前を指定:",CreationFailed:"アイテムを作成できませんでした。",Loading:"コンテントの読込み中 ...",MyInventory:"私の持ち物",InventoryReceivedTitle:"アイテムの受取り",InventoryReceived:"#{from}から'#{name}'という名前の#{type}を受け取りました。"},InventoryDialogs:{Texture:{WindowTitle:"テクスチャ: #{name}"},Notecard:{WindowTitle:"ノート: #{name}",Loading:"ノートカードの読込み中...",Save:"保存"},Script:{WindowTitle:"スクリプト: #{name}",Loading:"スクリプトの読込み中..."},Landmark:{Title:"ランドマークにテレポート",Message:"#{name}にテレポートしますか?"},Properties:{Title:"#{name}のプロパティ",Name:"名前:",Description:"説明:",Creator:"クリエーター:",Owner:"オーナー:",Acquired:"入手:",OwnerCan:"できること:",NextOwnerCan:"次のオーナーができること:",MarkItem:"アイテムにマーク:",ForSale:"販売用",Original:"オリジナル",Copy:"コピー",Price:"料金:",Profile:"プロフィール",Unknown:"(不明)"}},Stats:{WindowTitle:"統計",Region:"地区",FPS:"FPS",TD:"時間の乖離",ScriptIPS:"スクリプト速度",Objects:"オブジェクト",Scripts:"実行中スクリプト",Agents:"エージェント",ChildAgents:"子エージェント",ALServer:"AjaxLifeサーバ",Sessions:"セション"},ScriptDialogs:{PermissionRequestTitle:"スクリプトの権限",PermissionRequestBody:"'#{owner}'が所有する'#{obj