function hmu(){hd('mpmenu');hideGroupsNav();}function doconclick(){hmu();}
var gpostlist=true;var gpostmode="postlist";var postmodes=["postlist","newpost","viewpost"];function isFF(){if(/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)){var ffversion=new Number(RegExp.$1);
if(ffversion>=1)return true;}
return false;}function spm(pmode,nocall){var changed=(gpostmode!=pmode);gpostmode=pmode;if(pmode=="postlist"){ssn(5,3);sw('cblocoption');}
if(changed&&!nocall){if(pmode=="postlist")
fps(true);}
if(pmode=="newpost"){ssn(6,3);hd('cblocoption');if(!nocall)fnah();}else if(pmode=="viewpost"){ssn(13,3);hd('cblocoption');}
return changed;}function setNCls(el,n){var o=dd(el);if(o)o.className=n;}function setCls(o,n){if(o)o.className=n;}function ptChoose(i,nocall){shobj('cblocoption',(i==0));return spm(postmodes[i],nocall);}
var allgroupsids=["allmysubgroups","allpubgroups"];var allgroupsnames=["My Groups","Public Groups"];var ggroupfilter="";var map=null;var geocoder=null;var is_demo=false;var demo_group="public";function rel(){dd("contenttable").style.height=getClientHeight()+"px";if(dd("contentarea")){var pos=findPos(dd("contentarea"));dd("contentarea").style.height=(getClientHeight()-pos.top-1-dd("contentarea").scrollTop)+"px";}}function onWindowResize(){rel();fps();}function mpc(latlng,zoom){if(typeof zoom=="undefined")zoom=map.getZoom();if(zoom==map.getZoom()&&map.getBounds().containsLatLng(latlng)){sdr=true;map.panTo(latlng);sdr=false;fps(suspended_need_total);suspended_need_total=false;}else map.setCenter(latlng,zoom);}
var onMapDrag=null;var start_at_home=true;var home_load_checked=false;function setNumFavs(fv){var c=(fv=="")?0:fv.split(",").length;var o=dd("numfavs");if(o){o.innerHTML="("+c+")";}}function loaddata(){if(pics_only)setPicsOnly(true,true);if(pois_only)setPOIsOnly(true,true);if(locations_only)setLocationsOnly(true,true);if(author!="")setAuthor(author,false);if(fav_only)setFavOnly(true,true);if(is_preview)setPreviewOnly(true,true);fav_list=get_cookie("fv");setNumFavs(fav_list);addToNV(selgroups,"My Groups",{group_title:"",is_subscribed:"1",is_owned:"0"});addToNV(selgroups,"Public Groups",{group_title:"",is_subscribed:"0",is_owned:"0"});if(typeof username=="undefined"||username==""||username=="webuser"||username=="geodemo"){username=demouser;token=demotoken;is_demo=true;}
if(defgroup!=""&&defgroup.toLowerCase()!="my groups"&&defgroup.toLowerCase()!="mygroups"&&defgroup.toLowerCase()!="public groups"&&defgroup.toLowerCase()!="publicgroups")
addGroupByName(defgroup);else if(openv!="post"&&author==""){if(is_demo){addGroupE(allgroupsids[1],allgroupsnames[1]);}else addGroupE(allgroupsids[0],allgroupsnames[0]);}
if(jumpto&&jumpto!=""){eval(jumpto);}else if(is_demo)
fallg(0);else fsubg(0,false);if(!is_demo)
fhal();}function unload(){GUnload();display_logs=null;display_groups=null;post_response_map=null;post_response_list=null;}function load(){var llat=get_cookie("lat");var llng=get_cookie("lng");var zzoom=get_cookie("zoom");loadWidgetConfig();if(llat&&llat!=""){start_at_home=false;lat=parseFloat(llat);if(llng&&llng!="")
lon=parseFloat(llng);}
if(zzoom&&zzoom!="")zoom=pnt(zzoom);if(GBrowserIsCompatible()){geocoder=new GClientGeocoder();map=new GMap2(dd("map"));var latlng=new GLatLng(lat,lon);mapHistoryAdd(latlng,zoom);map.setCenter(latlng,zoom);map.setUIToDefault();GEvent.addListener(map,"click",function(overlay,point){if(overlay&&typeof overlay.ismarker!="undefined")
onMClk(overlay);else if(overlay&&typeof overlay.newmarkerhtml!="undefined")
showmarkerpop(overlay,overlay.newmarkerhtml);else if(overlay&&typeof overlay.ishomemarker!="undefined")
onHomeMarkerClick(overlay);else if(overlay&&typeof overlay.pmhtml!="undefined")
showmarkerpop(overlay,overlay.pmhtml);else if(overlay&&typeof overlay.mstop!="undefined")
showStopPop(overlay,overlay.mstop);});GEvent.addListener(map,"removeoverlay",function(overlay){if(typeof overlay.mpop!="undefined"&&overlay.mpop==markerpop&&overlay.mpop!=null){markerpopvisible=false;map.removeOverlay(overlay.mpop);overlay.mpop=null;markerpop=null;}});GEvent.addListener(map,"moveend",onMapDrag);GEvent.addListener(map,"zoomend",onZoomEnd);GEvent.addListener(map,"movestart",onMapMoveStart);map.enableScrollWheelZoom();window.setTimeout("loaddata()",50);rel();if(isFF())map.checkResize();}}function onZoomEnd(){updateHistLine();}function onMapMoveStart(){if(dd("centerico").style.zIndex!="101")dd("centerico").style.zIndex="101";}
var sgs=new Array();var selgroups=new Array();function execAjax(url,callback_fn,waitcursorpos){if(!waitcursorpos)waitcursorpos=0;var xmlhttp=null;if(xmlhttp==null){if(window.XMLHttpRequest){xmlhttp=new XMLHttpRequest();}else if(window.ActiveXObject){xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}}else {xmlhttp.abort();}
if(xmlhttp!=null&&(xmlhttp.readyState==4||xmlhttp.readyState==0)){xmlhttp.onreadystatechange=function(){if(this.readyState==4){showWaitCursor(false,waitcursorpos);if(this.status==200)
callback_fn(this.responseText);this.obj=null;}};showWaitCursor(true,waitcursorpos);xmlhttp.open("GET",url,true);xmlhttp.send(null);}else {}}function funcName(fn){if(!fn)return"";var pos=fn.indexOf("(");if(pos>0)return fn.substring(0,pos);return null;}
var func_history=new Array();function pushBackFunc(fn,rep){if(!rep)rep=false;if(rep){var cfname=funcName(fn);var lfname=funcName(getBackFunc());if(cfname&&lfname&&cfname==lfname)
popBackFunc();}func_history.push(fn);}function getBackFunc(i){if(!i)i=0;if(func_history.length>i)return func_history[func_history.length-1-i];return null;}function popBackFunc(){if(func_history.length>0)return func_history.pop();return null;}function backCount(){return func_history.length;}
var need_total=true;function signOut(){window.location.href="https://"+server_name+"/sec/signout.php?op=set&redir="+
encodeURIComponent("http://"+server_name+"/geogroups/")+"&u="+username+"&op=set&t="+token;}function subPerms(g){var perms={"rp":g.rp,"rl":g.rl,"cp":g.cp,"cl":g.cl};if(g.rp=="1"&&g.mrp=="1")
perms.rp="0";if(g.rl=="1"&&g.mrl=="1")
perms.rl="0";if(g.cp=="1"&&g.mcp=="1")
perms.cp="0";if(g.cl=="1"&&g.mcl=="1")
perms.cl="0";return perms;}function getMyPermStr(g){var permarr=new Array();if(g.mrp=="1"&&g.mrl=="1"&&g.mcp=="1"&&g.mcl=="1")return"View And Create Posts";if(g.mrp=="1"){if(g.mrl=="1")
permarr.push("View All Posts");else permarr.push("View POI Posts");}else if(g.mrl=="1")
permarr.push("View User Locations");if(g.mcp=="1"){if(g.mcl=="1")
permarr.push("Create Posts");else permarr.push("Create POI Posts");}else if(g.mcl=="1")
permarr.push("Post Your Location");var permstr=makelist(permarr);return permstr;}function getPermStr(r){var permarr=new Array();if(r.rp=="1"&&r.rl=="1"&&r.cp=="1"&&r.cl=="1")return"View And Create Posts";if(r.rp=="1"){if(r.rl=="1")
permarr.push("View All Posts");else permarr.push("View POI Posts");}else if(r.rl=="1")
permarr.push("View User Locations");if(r.cp=="1"){if(r.cl=="1")
permarr.push("Create Posts");else permarr.push("Create POI Posts");}else if(r.cl=="1")
permarr.push("Post User Location");if(permarr.length==0)permarr.push("None");var permstr=makelist(permarr);return permstr;}function goBack(i){if(!i)i=0;while(i>0){popBackFunc();i--;}
var back_fn=popBackFunc();if(!back_fn)back_fn="fsubg(0)";eval(back_fn);}function msgSend(iuser){ssn(14,2);scm("My Network &gt; Send Message:");se("");if(!iuser)iuser="";var txt="<table width='100%'>"+"<tr><td>To UserName / Email:</td><td width='100%'><input type='text' value='"+iuser+"' id='iuser' style='width:90%;color:brown' /></td></tr>"+"<tr><td colspan='2'>Message (max 500 chars):</td>"+"<tr><td colspan='2'><textarea style='width:90%' rows='5' id='msg' ></textarea></td></tr>"+"<tr><td><input type='button' value='Cancel' onclick='goBack()' /></td>"+"<td><input type='button' value='Send' onclick='sendMessage()' /></td></tr></table>";setContent(txt);}function askPermG(i){var group=display_groups[i];var perms=[group.mrp,group.mrl,group.mcp,group.mcl];askPerm(display_groups[i].group_name,username,perms);}function askPerm(igroupname,iuser,perms){if(!perms)
perms=[1,1,1,1];if(!iuser)iuser="";if(!igroupname)igroupname="";var txt="<table width='100%'>"+"<tr><td>In Group:</td><td><input type='text' disabled value='"+igroupname+"' id='ign' /></td></tr>"+"<tr><td></td><td><input type='hidden' value='"+iuser+"' id='iuser' /></td></tr>"+"<tr><td colspan='2'>Request Permission To:</td></tr>"+"<tr><td>View POI Posts:</td><td><input type='checkbox' "+(perms[0]=="1"?"checked":"")+"  id='irp' /></td></tr>"+"<tr><td>View User Locations:</td><td><input type='checkbox' "+(perms[1]=="1"?"checked":"")+" id='irl' /></td></tr>"+"<tr><td>Create POI Posts:</td><td><input type='checkbox' "+(perms[2]=="1"?"checked":"")+"  id='icp' /></td></tr>"+"<tr><td>Create Location Posts:</td><td><input type='checkbox' "+(perms[3]=="1"?"checked":"")+" id='icl' /></td></tr>"+"<tr><td><input type='button' value='Cancel' onclick='goBack()' /></td>"+"<td><input type='button' value='Send' onclick='sendPermRequest()' /></td></tr></table>";se("");setContent(txt);scm("Request Permissions Change");}function grantPermsG(i){var r=join_requests[i];var perms=[r.rp,r.rl,r.cp,r.cl];grantPerms(i,r.group_name,r.sender,perms);}function grantPerms(i,igroupname,iuser,perms,setmode){if(!perms)
perms=[1,1,1,1];if(!iuser)iuser="";if(!igroupname)igroupname="";if(!setmode)setmode=false;var txt="<table width='100%'>"+"<tr><td>Group:</td><td><input type='text' disabled value='"+igroupname+"' id='ign' />";if(igroupname=="")
txt+="&nbsp;<input type='button' value='...' id='choosegroupbtn' "+" onclick='chooseMyGroup(\"choosegroupbtn\", \"\", 0, \"setChooseGrantGroup\" )' />";txt+="</td></tr>"+"<tr><td>Username:</td><td><input type='text' disabled value='"+iuser+"' id='iuser' /></td></tr>"+"<tr><td colspan='2'>"+(setmode?"Set":"Grant")+" Permission To (in this group):</td></tr>"+"<tr><td>View POI Posts:</td><td><input type='checkbox' "+(perms[0]=="1"?"checked":"")+"  id='irp' /></td></tr>"+"<tr><td>View User Locations:</td><td><input type='checkbox' "+(perms[1]=="1"?"checked":"")+" id='irl' /></td></tr>"+"<tr><td>Create POI Posts:</td><td><input type='checkbox' "+(perms[2]=="1"?"checked":"")+"  id='icp' /></td></tr>"+"<tr><td>Create Location Posts:</td><td><input type='checkbox' "+(perms[3]=="1"?"checked":"")+" id='icl' /></td></tr>"+"<tr><td><input type='button' value='Cancel' onclick='lgoBack()' /></td>"+"<td><input type='button' value='"+(setmode?"Set":"Send")+"' onclick='"+
(setmode?"sendInviteRequest(true)":("sendGrantRequest("+i+")"))+"' /></td></tr></table>";se("");setContent(txt);scm((setmode?"Set":"Grant")+" User Permissions in Group");}function setUserPerm(i){var r=display_userlist[i];var perms=[r.rp,r.rl,r.cp,r.cl];grantPerms(i,curuserlistgroupname,r.username,perms,true);}function requestUser(iuser,igroupname,perms){if(!perms)
perms=[1,1,1,1];if(!iuser)iuser="";if(!igroupname)igroupname="<Let Recipient Decide>";var txt="<table width='100%'>"+"<tr><td>Username/Email:</td><td><input type='text' maxlength='64' value='"+iuser+"' id='iuser' /></td></tr>"+"<tr><td>Group:</td><td><input type='text' maxlength='32' value='"+igroupname+"' id='ign' /></td></tr>"+"<tr><td colspan='2'>Request Permission To:</td></tr>"+"<tr><td>View POI Posts:</td><td><input type='checkbox' "+(perms[0]=="1"?"checked":"")+"  id='irp' /></td></tr>"+"<tr><td>View User Locations:</td><td><input type='checkbox' "+(perms[1]=="1"?"checked":"")+" id='irl' /></td></tr>"+"<tr><td>Create POI Posts:</td><td><input type='checkbox' "+(perms[2]=="1"?"checked":"")+"  id='icp' /></td></tr>"+"<tr><td>Create Location Posts:</td><td><input type='checkbox' "+(perms[3]=="1"?"checked":"")+" id='icl' /></td></tr>"+"<tr><td>Message:</td><td><textarea style='width:90%' rows='2' id='imsg' >Requesting access to view your location</textarea></td></tr>"+"<tr><td><input type='button' value='Cancel' onclick='goBack()' /></td>"+"<td><input type='button' value='Send' onclick='sendUserRequest()' /></td></tr></table>";se("");setContent(txt);scm("<span style='text-align:center;display:block'>Request To Join A Group</span>"+"<span style='cursor:pointer' onclick='goBack()'>&#171; Back</span>");}function sendUserRequest(){var igroupname=dd("ign").value;var iuser=dd("iuser").value;var imsg=dd("imsg").value.stripHTML();if(imsg.length>500){serror("Message can be max 500 characters");return};if(igroupname=="<Let Recipient Decide>"||igroupname=="")
igroupname="any";if(igroupname==""||igroupname.length>32){se("Groupname is invalid");return;}else if(iuser==""||iuser>32){se("Username is invalid");return;}
eaq("/geogroups/requestuser.php","&gn="+eu(igroupname)+"&go="+eu(iuser)+
ceu("&rp","irp")+
ceu("&rl","irl")+
ceu("&cp","icp")+
ceu("&cl","icl")+"&msg="+eu(imsg),popSentInviteRequest,false);}function inviteg(i){var group=display_groups[i];var perms=[group.rp,group.rl,group.cp,group.cl];invite(display_groups[i].group_name,"",perms);}
var remember_backfunc=null;function invite(igroupname,iuser,perms){if(!perms)
perms=[1,1,1,1];if(!iuser)iuser="";if(!igroupname)igroupname="";if(igroupname==""&&sgs.length==1&&sgs[0]!="My Groups")
igroupname=sgs[0];var txt="<table width='100%'>"+"<tr><td>Username/Email:</td><td><input type='text' maxlength='64' value='"+iuser+"' id='iuser' /></td></tr>"+"<tr><td>Invite To Join Group:</td><td><input type='text' maxlength='32' value='"+igroupname+"' id='ign' />"+"&nbsp;<input type='button' value='...' id='choosegroupbtn' "+" onclick='chooseMyGroup(\"choosegroupbtn\", \"\", 0, \"setChooseGrantGroup\" )' />"+"</td></tr>"+"<tr><td colspan='2'>Offer Permission To (in this group):</td></tr>"+"<tr><td>View POI Posts:</td><td><input type='checkbox' "+(perms[0]=="1"?"checked":"")+"  id='irp' /></td></tr>"+"<tr><td>View User Locations:</td><td><input type='checkbox' "+(perms[1]=="1"?"checked":"")+" id='irl' /></td></tr>"+"<tr><td>Create POI Posts:</td><td><input type='checkbox' "+(perms[2]=="1"?"checked":"")+"  id='icp' /></td></tr>"+"<tr><td>Create Location Posts:</td><td><input type='checkbox' "+(perms[3]=="1"?"checked":"")+" id='icl' /></td></tr>"+"<tr><td>Message:</td><td><textarea style='width:90%' rows='2' id='imsg' >I'd like you to join this group</textarea></td></tr>"+"<tr><td><input type='button' value='Cancel' onclick='goBack()' /></td>"+"<td><input type='button' value='Send' onclick='sendInviteRequest()' /></td></tr></table>";se("");setContent(txt);scm("<span style='text-align:center;display:block'>Invite User To Join Group</span>"+"<span style='cursor:pointer' onclick='goBack()'>&#171; Back</span>");}function popBlockUser(iuser){if(!getBackFunc())pushBackFunc("ful()");if(!iuser)iuser="";var txt="<table width='100%'>"+"<tr><td>Username:</td><td><input type='text' value='"+iuser+"' id='iuser' /></td></tr>"+"<tr><td><input type='button' value='Cancel' onclick='goBack()' /></td>"+"<td><input type='button' value='Send' onclick='onBlockUser()' /></td></tr></table>";se("");setContent(txt);scm("Block a user from joining any of your groups");}function onBlockUser(){kickUser2("",dd("iuser").value,true,false);}function blockUser(i){kickUser2("",display_userlist[i].username,true,false);}function fulid(i){ful(0,display_groups[i].group_name);}function ful(skip,groupname){if(curuserlistgroupname==""&&!is_demo){if(sgs.length==1&&sgs[0]!="My Groups"){var t=getNVVal(selgroups,sgs[0]);if(t&&t.is_owned==1)
curuserlistgroupname=sgs[0];}
if(curuserlistgroupname=="")
curuserlistgroupname=username;}
if(!skip)skip=0;if(!groupname)groupname=curuserlistgroupname;fetchUserList(popUserList,groupname,skip,(curmuchoice==1));}
var curuserlistgroupname="";function fetchUserList(render_fn,groupname,skip,blocked){if(is_demo)return;if(!groupname||groupname=="")groupname=curuserlistgroupname;if(!skip)skip=0;eaq("/geogroups/getuserlist.php","skip="+skip+"&nr=15"+"&gn="+eu(groupname)+
(blocked?"&blocked=1":""),render_fn,false);}
var display_userlist=null;function kickUser(i,permanent,unblock){if(!permanent)permanent=false;if(!unblock)unblock=false;var groupname=curuserlistgroupname;if(typeof display_userlist[i].group_id!="undefined"&&display_userlist[i].group_id==-1)
groupname="";kickUser2(groupname,display_userlist[i].username,permanent,unblock);}function kickUserAll(i,permanent,unblock){if(!permanent)permanent=false;if(!unblock)unblock=false;kickUser2("",display_userlist[i].username,permanent,unblock);}function kickUser2(groupname,kuname,permanent,unblock){if(!permanent)permanent=false;if(!unblock)unblock=false;eaq(((unblock&&unblock==true)?"/geogroups/unblockuser.php":"/geogroups/kickuser.php"),"gn="+eu(groupname)+"&ku="+eu(kuname)+
((permanent&&permanent==true)?"&block=1":""),popKickUser,false);}function popKickUser(response){if(!getBackFunc())pushBackFunc("ful()");window.setTimeout("goBack()",1000);}function showUserActions(obj,i,muchoice){var txt="";if(muchoice==0)
txt+="<span class='link1' style='margin-bottom: 5px;' "+ml+" onclick='setUserPerm("+i+")' "+" >Change Permissions</span><br>"+"<span class='link1' style='margin-bottom: 5px;' "+ml+" onclick='kickUser("+i+")' "+" >Unsubscribe User</span><br>"+"<span class='link1' style='margin-bottom: 5px;' "+ml+" onclick='kickUser("+i+",true)' "+" >Unsubscribe and Block</span><br>"+"<span class='link1' style='margin-bottom: 5px;' "+ml+" onclick='blockUser("+i+")' "+" >Unsubscribe/Block From All My Groups</span><br>";else if(muchoice==1)
txt+="<span class='link1'  style='margin-bottom: 5px;' "+ml+" onclick='kickUser("+i+",false,true)' "+" >UnBlock User</span>";showInfopop(obj,txt);}function showPostActions(obj,i){var p=post_response_list.posts[i];var owned=(p.username.toLowerCase()==username.toLowerCase());var is1gowned=false;var gn1g="";var dpid=0;if(isonegroup()){var gn=sgs[0];gn1g=escape(gn);gi=fgroup(gn);if(gi>=0){dg=display_groups[gi];is1gowned=(dg.is_owned=="1");dpid=dg.default_post_id;}}
var rem=(dpid==p.post_id?1:0);var txt="";if(owned)
txt+="<span class='link1' "+ml+" onclick='hip(1);fetchEditPostHtml("+p.post_id+")' "+" >Edit Post</span><br>"+"<span class='link1' "+ml+" onclick='hip(1);deletePostHtml("+
p.post_id+","+(p.is_home?"true":"false")+", \""+escape(p.post_title)+"\");' "+" >Delete Post</span>";if(is1gowned&&gn1g!="")
txt+="<br/><span class='link1' "+ml+" onclick='hip(1);setAsDefaultHtml("+
p.post_id+",\""+escape(p.post_title)+"\",\""+gn1g+"\","+(rem?1:0)+");' "+" >"+(rem?"Remove":"Set")+" As Group Default</span>";showInfopop(obj,txt);}function spa(o,i){showPostActions(o,i);}function toggleDisplay(objname){var obj=dd(objname);if(!obj)return;obj.style.display=(obj.style.display==""?"none":"");}
var muChoices=["Show Subscribed Users","Show Blocked Users","Block A User"];var curmuchoice=0;function muChoose(i){if(typeof i=="undefined")i=curmuchoice;hd("mumenu");curmuchoice=i;if(i==0){ful();}else if(i==1){ful();}else if(i==2){popBlockUser();}}function getMuHeader(){var seltxt="<table width='100%' id='muheader' "+" onmouseout='onMouseOutCont(event, \"muheader\", \"mumenu\")'  "+" >"+"<tr>"+"<td class='groupmenunav' width='100%' style='border: 1px solid #bbccff;width:100%;' "+" onclick='toggleDisplay(\"mumenu\")' "+" >"+"<span id='mumode'>"+muChoices[curmuchoice]+"</span>"+"</td><td class='groupmenunav' style='border: 1px solid #bbccff' align='left' "+" onmouseover='hl(this, \"white\", \"#eef0ff\" );' onmouseout='uhl(this);' "+" onclick='toggleDisplay(\"mumenu\")' "+" >"+"&#9660;"+"</td>"+"<td></td>"+"</tr>"+"<tr>"+"<td width='100%' >"+"<div style='position:relative;width:100%;'> "+"<div id='mumenu' class='cgroupmenu' style='display:none;' "+" > "+"<table width='100%' height='100%'> ";for(var j=0;j<muChoices.length;j++)
seltxt+="<tr><td class='groupnav' "+"   onclick='muChoose("+j+")' "+"   onmouseover='setCls(this,\"groupnavlite\")'  "+"   onmouseout='setCls(this,\"groupnav\")' >"+
muChoices[j]+"</td></tr> ";seltxt+="</table> "+"</div> "+"</div> "+"</td><td></td><td></td>"+"</tr>"+"<tr class='cgrouprow0' >"+"<td class='cgroupnamecell' colspan='2' >"+"Group:&nbsp;<span id='chosenusergroup' class='cgroupname' >"+curuserlistgroupname+"</span>"+"</td>"+"<td>"+"<input type='button' style='float:right;' value='Choose..' id='chooseusergroup' "+" onclick='chooseMyGroup(\"chooseusergroup\", \"chosenusergroup\" );' />"+"</td>"+"</tr></table>";return seltxt;}function popUserList(response){curuserlistgroupname=response.group_name;curmuchoice=(response.blocked=="1")?1:0;ssn(10,2);var userlist=response.userlist;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var pages=resultHeader(start,count,total,((curmuchoice==0)?"Subscribers":"Blocked Users"));var page_nav=getPageNav(start,count,total,"ful(0)","ful("+((start-15)>=0?(start-15):0)+" )","ful("+(start+count)+" )");var txt=rth(pages,page_nav,3);var timeoutfunc=htmlesc("ful("+start+" )");pushBackFunc(timeoutfunc,true);var allrows=new Array();for(var i=0;i<userlist.length;i++){var allb="";if(typeof userlist[i].group_id!="undefined"&&userlist[i].group_id==-1)
allb="&nbsp;&nbsp;<span class='cgrouptitle'>(blocked in all groups)</span>";var crow="";crow+="<tr>"+"<td style='font-size:90%;color:brown;width:100%;border-bottom: 1px solid #f2EA7D;border-top: 1px solid #f2EA7D;padding: 2px;' "+" onmouseover='hl(this.parentNode, \"brown\", \"#f2EA7D\");showUserActions(this.parentNode, "+i+","+curmuchoice+")' "+" onmouseout='uhl(this.parentNode); onMouseoutInfo(event,this);' "+" >"+userlist[i].username+
allb;if(!curmuchoice)
crow+="<br><span style='font-size:70%;color:black'>&nbsp;Permissions: "+getPermStr(userlist[i])+"</span>";crow+="</td>"+"<td>"+"<span style='cursor:pointer' onclick='msgSend(\""+userlist[i].username+"\")' >"+"<img src='/images/msgsend24.png' title='Send Private Message' "+"/></span>"+"</td>"+"<td class='link1' "+" style='width:30px; font-size:70%;border-bottom: 1px solid #f2EA7D;border-top: 1px solid #f2EA7D;' "+" onmouseover='hl(this.parentNode, \"brown\", \"#f2EA7D\");showUserActions(this.parentNode, "+i+","+curmuchoice+")' "+" onmouseout='uhl(this.parentNode); onMouseoutInfo(event,this);' "+" ><img src='/images/menuright.png' style='margin-left:20px;' /></td>";crow+="</tr>";allrows.push(crow);}
txt+=allrows.join("\n");txt+=rtf(count,page_nav,3);display_userlist=userlist;dd("contentarea").innerHTML=getMuHeader()+txt;scm("<span style='text-align:center;display:block'>Manage Users</span>"+"<span style='cursor:pointer' onclick='goBack(1)'>&#171; Back</span>");rel();}function sendPermRequest(){var igroupname=dd("ign").value;var iuser=dd("iuser").value;if(igroupname==""||igroupname.length>32){se("Groupname is invalid");return;}else if(iuser==""||iuser>32){se("Username is invalid");return;}
eaq("/geogroups/subgroup.php","gn="+eu(igroupname)+"&gu="+eu(iuser)+
ceu("&rp","irp")+
ceu("&rl","irl")+
ceu("&cp","icp")+
ceu("&cl","icl"),popSentPermRequest,false);}function popSentPermRequest(response){se(response.errmsg);if(!getBackFunc())pushBackFunc("fsubg()");window.setTimeout("goBack()",1000);}function sendMessage(){var iuser=dd("iuser").value;if(iuser==""||iuser.length>128){se("Username is invalid");return;}
var msg=dd("msg").value.stripHTML();if(msg==""){se("Cannot send a blank message");return;}else if(msg.length>500){se("Message is too long: "+msg.length+" chars, (max 500 allowed)");return;}
eaq("/geogroups/sendmsg.php","to="+eu(iuser)+"&msg="+eu(msg),popSentMessage,false);}function popSentMessage(response){se(response.errmsg=="Success"?"Message Sent":response.errmsg);if(!getBackFunc())pushBackFunc("goMenu(7)");window.setTimeout("goBack()",1000);}function sendInviteRequest(setpermmode){if(!setpermmode)setpermmode=false;var igroupname=dd("ign").value;var iuser=dd("iuser").value;var imsg=(setpermmode?"":dd("imsg").value.stripHTML());if(igroupname==""||igroupname.length>32){se("Groupname is invalid");return;}else if(iuser==""||iuser>32){se("Username is invalid");return;}
if(imsg.length>500){serror("Message can be max 500 characters");return};eaq((setpermmode?"/geogroups/setuserperm.php":"/geogroups/inviteuser.php"),"gn="+eu(igroupname)+"&gu="+eu(iuser)+
ceu("&rp","irp")+
ceu("&rl","irl")+
ceu("&cp","icp")+
ceu("&cl","icl")+"&msg="+eu(imsg),popSentInviteRequest,false);}function popSentInviteRequest(response){se(response.errmsg);if(!getBackFunc())pushBackFunc("fsubg()");window.setTimeout("goBack()",1000);}function submitComment(postid){var cmttxt=dd("ccmt").value.stripHTML();if(cmttxt==""||cmttxt.length>500){se("Comment cannot be longer than 500 characters, and must not be blank");return;}
eaq("/geogroups/commentpost.php","pid="+postid+"&cmt="+eu(cmttxt),function(response){popSentComment(postid,response)},false);}function popSentComment(postid,response){dd("ccmt").value="";se(response.errmsg);var tfunc="scom("+postid+")";window.setTimeout(tfunc,1000);}function scom(postid,skip,cmttext){if(!cmttext)cmttext="";if(!skip)skip=0;eaq("/geogroups/getpostcomments.php","skip="+skip+"&nr=100"+"&pid="+postid,function(response){popComments(response,cmttext);},false);}function popComments(response,prevcmttext){if(!prevcmttext)prevcmttext="";var comments=response.comments;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var pcls="spic"+listsize;var pages=resultHeader(start,count,total,"Comments");var page_nav=getPageNav(start,count,total,"scom("+response.post_id+",0)","scom("+response.post_id+","+((start-100)>=0?(start-100):0)+" )","scom("+response.post_id+","+(start+count)+" )");var txt="<br/ style='clear:both;'>Add your comment: (max 500 chars)<br>"+"<textarea style='width:90%' rows='5' id='ccmt' >"+prevcmttext+"</textarea><br>"+"<input type='button' value='Submit' "+"onclick='submitComment("+response.post_id+")' /><br><br>";txt+=rth(pages,page_nav,2);var timeoutfunc=htmlesc("scom("+response.post_id+","+start+" )");var allrows=new Array();for(var i=0;i<comments.length;i++){var comment=comments[i];var rd=new Date(comment.last_modified*1000);var ctime=getShortDate(rd);var tokcmt=flattendash(comment.comment).substr(0,30);var crow="";crow+="<tr><td style='border-top: 1px solid #5890e5;' >"+
showUser(comment.author)+"</td>"+"<td style='border-top: 1px solid #5890e5;font-size:70%; "+"text-align:right; color: gray;' >"+ctime+"</td>"+"</tr>";crow+="<tr class='ccommentsblock'>"+"<td style='padding-left:3px;border-bottom: 1px solid #dddddd;' colspan='2' >";if(comment.picurl&&comment.picurl!="")
crow+="<img class='"+pcls+"' style='border:2px solid white;' "+" src='/pics/"+comment.picurl+"/"+tokcmt+"' "+"onload='if (this.width > 320 ) this.width=\"320\";' /><br style='clear:both;'/>";if(comment.comment)
crow+=comment.comment;"<br/><br/>";crow+="</td>";crow+="</tr>";allrows.push(crow);}
txt+=allrows.join("\n");txt+=rtf(count,page_nav,2);dd("commentarea").innerHTML=txt;rel();}function jreqin(skip){if(!skip)skip=0;joinRequestsIn(popJoinRequestsIn,skip);}function joinRequestsIn(render_fn,skip){eaq("/geogroups/joinrequestsin.php","skip="+skip+"&nr=15",render_fn,false);}function cbval(n){return(dd(n).checked?"1":"0");}function sendGrantRequest(i){var perms=[cbval("irp"),cbval("irl"),cbval("icp"),cbval("icl")];if(join_requests[i].group_id==-2)
actReqIn(i,"grant",perms,dd("ign").value);else actReqIn(i,"grant",perms);}
var join_requests=null;var join_func=null;function actReqIn(i,action,perms,groupname){var params="rid="+join_requests[i].request_id+"&action="+action;if(perms&&perms.length==4){params+="&rp="+perms[0]+"&rl="+perms[1]+"&cp="+perms[2]+"&cl="+perms[3];}
if(groupname&&groupname!="")
params+="&gn="+eu(groupname);eaq("/geogroups/actrequestin.php",params,popActReq,false);}function popActReq(response){if(response.errmsg&&response.errmsg.toLowerCase()!="success")
se(response.errmsg);var tfunc=join_func?join_func:"jreqin(0)";window.setTimeout(tfunc,2000);}function showRequestInPop(obj,i){var txt="";if(join_requests[i].request_type=="0"){if(join_requests[i].grant_status=="0")
txt+="<span class='link1' "+ml+" onclick='hip();grantPermsG("+i+")' "+" >Select Permissions To Grant</span><br>"+"<span class='link1' "+ml+" onclick='hip();actReqIn("+i+",\"deny\")' "+" >Deny</span><br>";}else if(join_requests[i].request_type=="1"){if(join_requests[i].invite_status=="0")
txt+="<span class='link1' "+ml+" onclick='hip();actReqIn("+i+",\"join\")' "+" >Join</span><br>"+"<span class='link1' "+ml+" onclick='hip();actReqIn("+i+",\"reject\")' "+" >Reject</span><br>";}else if(join_requests[i].request_type=="3"){txt+="<span class='link1' "+ml+" onclick='hip();msgSend(\""+join_requests[i].sender+"\")' "+" >Reply</span><br>";}
if(join_requests[i].active_status=="0")
txt+="<span class='link1' "+ml+" onclick='hip();actReqIn("+i+",\"archive\")' "+" >Archive</span><br>";if(join_requests[i].active_status!="2")
txt+="<span class='link1' "+ml+" onclick='hip();actReqIn("+i+",\"delete\")' "+" >Delete</span>";showInfopop(obj,txt);}function msgMap(i){var r=join_requests[i];var ll=new GLatLng(r.lat,r.lng);mpc(ll);last_poppost=-1;last_poplocation=false;follow_post=-1;var p=mget(myPMs,"id",r.request_id);if(p){showmarkerpop(p.gmarker,p.gmarker.pmhtml);return;}
var lat=r.lat;var lng=r.lng;var addr=r.addr;var dt=new Date(r.request_time*1000);var mhtml="<span style='float:right;text-align:right;margin-right:10px;'>"+"<span style='font-size:90%;color:#999999' >"+getShortDate(dt)+"</span>";mhtml+="<br/><img src='/geogroups/icons/postoffice-us.png' />";mhtml+="</span>";mhtml+="<span class='cpostnamedisp'>Private Message</span><br/>";mhtml+="<span class='cpostl'>Sent By: </span>"+showUser(r.sender)+"<br/>";if(addr!="")
mhtml+="<span class='cpostl'>Address: </span>"+addr+"<br/>";if(r.msg&&r.msg!="")
mhtml+="<span class='cpostl'>Message: </span><br/>"+r.msg;var zin=" onclick='mpc(new GLatLng( "+lat+","+lng+"), 16)' "+ml;mhtml+="<br/><hr><span style='float:right;'><img title='Zoom-In' alt='Zoom-In' "+zin+" src='/images/zi32.png' width='24' />&nbsp;"+"<img "+ml+" onclick='mdelete(myPMs,\"id\","+r.request_id+");' title='Remove From Map' "+" src='/images/close24.png' /></span>"+"<span class='link3' "+ml+" onclick='msgSend(\""+r.sender+"\")'>[Reply]</span>";var newmarker=getNewPM(r.request_id,"Private Message From "+r.sender,ll,mhtml);last_marker_pop=newmarker.gmarker;map.addOverlay(newmarker.gmarker);showmarkerpop(newmarker.gmarker,mhtml);}function popJoinRequestsIn(response){ssn(7,2);var requests=response.requests;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var pages=resultHeader(start,count,total,"Messages");var page_nav=getPageNav(start,count,total,"jreqin(0)","jreqin("+((start-15)>=0?(start-15):0)+" )","jreqin("+(start+count)+" )");var txt="<span class='button' title='Send Message' style='float:right;' onclick='msgSend()' >Compose New</span><br/ style='clear:both'>";txt+=rth(pages,page_nav,5);var timeoutfunc=htmlesc("jreqin("+start+" )");join_func=timeoutfunc;pushBackFunc(timeoutfunc,true);var pcls="spic"+listsize;var allrows=new Array();var prev_groupid="";var prev_status="";var statuschange=false;var rstatus;var rtype;for(var i=0;i<requests.length;i++){statuschange=false;var request=requests[i];var rd=new Date(request.request_time*1000);var cdate=getShortDate(rd);var ctime=rd.toLocaleString();rtype="Error";rstatus="Error";var permstr="";if(request.request_type=="0"){rstatus=(request.grant_status=="0")?"Pending":((request.grant_status=="1")?"Denied":"Granted");if(request.group_id==-2)
rtype="Wants to Join Your Group"
else rtype="Wants to join the group&nbsp;&nbsp;";permstr=getPermStr(request);}else if(requests[i].request_type=="1"){rstatus=(request.invite_status=="0")?"Pending":((request.invite_status=="1")?"Rejected":"Accepted");rtype="Invites you to join the group&nbsp;&nbsp;";permstr=getPermStr(request);}else if(request.request_type=="3"){rstatus="";rtype="";}
var crow="";if(prev_status!=request.active_status){crow+="<tr><td style='border-top: 1px solid #5890e5;' colspan='5' >"+"<span style='font-size:110%;font-weight:bold;'><br>"+
(request.active_status=="0"?"Received Messages":"Archived Messages")+":</span></td>"+"</tr>";statuschange=true;}
var topborder=(statuschange?"":" style='border-top: 1px solid #5890e5;' ");crow+="<tr><td "+topborder+" colspan='2' >"+"<span style='font-size:120%;color:brown;' >"+request.sender+"</span></td>"+"<td style='font-size:70%; color: gray;' title='"+ctime+"'>"+cdate+"</td>"+"<td style='font-size:70%;' >"+rstatus+"</td>"+"<td class='link1' style='text-align:right;padding-right:10px;font-size:70%;background:url(/images/menuright.png) right no-repeat;' onmouseover='hl(this);showRequestInPop(this, "+i+")' "+" onmouseout='uhl(this); onMouseoutInfo( event, this);' >"+"Action"+"</td>"+"</tr>";crow+="<tr class='crequestrow'>"+"<td style='padding-left:3px;' colspan='5' >"+rtype;if(request.group_id>=0&&request.group_name!="")
crow+="<span style='color:darkblue;'>"+request.group_name+"</span>";if(permstr!="")
crow+="<br>&nbsp;<span style='font-size:80%;color:grey'>With permission to "+permstr+"</span><br>";if(request.msg!=""){if(request.request_type!=3)
crow+="<br>";crow+="<span style='color:grey'>"+request.msg+"</span><br>";}
if(latlngValid(request.lat,request.lng)){crow+="<span class='cbaction' onclick='msgMap("+i+")'>See On Map &#187;</span><br/>"}
if(request.addr!=""){crow+="<span class='cpostl'>Address: </span><span style='color:grey'>"+request.addr+"</span><br/>";}
if(request.picurl!="")
crow+="<img class='"+pcls+"' style='border:2px solid white;' "+" src='/pics/"+request.picurl+"/'"+"onload='if (this.width > 320 ) this.width=\"320\";' /><br/>";crow+="<br></td>";crow+="</tr>";prev_groupid=requests[i].group_id;prev_status=requests[i].active_status;allrows.push(crow);}
txt+=allrows.join("\n");txt+=rtf(count,page_nav,5);join_requests=requests;dd("contentarea").innerHTML=txt;scm("<span style='text-align:center;display:block'>Inbox</span>"+"<span style='cursor:pointer' onclick='goBack(1)'>&#171; Back</span>");rel();}function eaq(script,params,callbackfn,noauth,waitcursorpos,autherrmsg,errcallbackfn){if(noauth)
noauth=true;var url=script;if(noauth){if(params&&params!="")
url+="?"+params;}else {url+="?"+"u="+username+"&t="+token;if(params&&params!="")
url+="&"+params;}
if(!waitcursorpos)waitcursorpos=0;execAjax(url,onFetchedResponse,waitcursorpos);se("");function onFetchedResponse(responseText){var response=eval('('+responseText+')');if(response.errcode==0){callbackfn(response);}else if(response.errcode==120){if(is_demo){if(!autherrmsg)autherrmsg="Please Sign-In";serror(autherrmsg);}else signOut();}else {if(typeof errcallbackfn=="undefined"||!errcallbackfn)
serror(response.errmsg);else errcallbackfn(response);}}}function fmycsv(skip){if(is_demo)return;if(!skip)skip=0;eaq("/geogroups/mycsvs.php","skip="+skip+"&nr=15",popMyCSVs,false);}
var display_csvs=null;function getUploadForm(name,display,action){return"<iframe id='upload_target_"+name+"' name='upload_target_"+name+"' src='#' style='width:0;height:0;border:0px solid #fff;'></iframe>"+"<span id='"+name+"uploadform'> \
 <form action='/geogroups/"+action+".php' method='POST' style='margin-top:0px;' enctype='multipart/form-data' target='upload_target_"+name+"' "+" accept='text/*' "+" onsubmit='startUploadMsg(\"Uploading file..\");' > "+" <input type='hidden' name='u' value='"+username+"' /> "+" <input type='hidden' name='t' value='"+token+"' /> "+" <input name='file' id='"+name+"browsefile' type='file' /> "+" <br/> "+" <input type='submit' value='Upload "+display+"' onsubmit='this.disabled=true' /> "+" </form> "+" </span> ";}function getLogUploadForm(){return"Only GPSToday GeoLogs with a .txt extension will currently work."+getUploadForm("log","Log","uploadlogfile");}function getCSVUploadForm(){return"Only properly formatted comma-separated-value files with a .csv extension will work. If your data is in some other format, check your software for an Export-As-CSV option. This option is for creating multiple GeoPosts in one step. For uploading geologs, use the My Stuff-&gt;My GeoLogs option,"+getUploadForm("csv","CSV","uploadcsv");}function deleteCSVPosts(id){function onDeletePosts(response){se(response.numdeleted+" Posts Deleted");window.setTimeout("fmycsv()",2000);}
eaq("/geogroups/deleteuploadposts.php","uploadid="+id,onDeletePosts,false);}function addChooseGroups(div1,div2){var added=0;var gns=dd(div1).value.split(",");for(i=0;i<gns.length;i++)
if(trim(gns[i])!=""){addChooseGroupE(div2,trim(gns[i]));added++;}
return added;}function configCSV(id){function onPopConfig(responsetext){dd("contentarea").innerHTML=responsetext;addChooseGroups("csvgns","csvgn");setIcon(dd("csvicon").value,"csv");}
var url="/geogroups/publishcsvhtml.php?u="+eu(username)+"&t="+token+"&uploadid="+id;execAjax(url,onPopConfig);}function popMyCSVs(response){ssn(12,1);var mycsvs=response.mycsvs;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var txt=getCSVUploadForm();var pages=resultHeader(start,count,total,"Bulk Data Uploads");var page_nav=getPageNav(start,count,total,"fmycsv()","fmycsv("+((start-15)>=0?(start-15):0)+" )","fmycsv("+(start+count)+" )");txt+=rth(pages,page_nav,2);var timeoutfunc=htmlesc("fmycsv("+start+" )");pushBackFunc(timeoutfunc,true);var allrows=new Array();for(var i=0;i<mycsvs.length;i++){var crow="";crow+="<tr>"+"<td class='ctrack' style='font-size:90%;font-weight: heavy;width:100%;border-bottom: 1px solid #44cc44;border-top: 1px solid #44cc44;padding: 2px;' "+" onmouseover='hl(this.parentNode, \"brown\", \"#f2EA7D\");' "+" onmouseout='uhl(this.parentNode); onMouseoutInfo(event,this);' "+" >"+"<img style='float:right;cursor:pointer' src='/images/remove-16.png' title='Delete This File' "+" onclick='askCSVDel("+i+");return false;' />"+
mycsvs[i].orig_filename+"<br/>&nbsp;<span style='color: black'>"+mycsvs[i].row_count+" Rows</span>";if(mycsvs[i].post_count>0){crow+="<br/>&nbsp;<span style='color: black'>"+mycsvs[i].post_count+" Posts Published"+" <span class='l3title' style='cursor:pointer' onclick='askCSVPublishDel("+i+")' >[Delete All]</span></span>";}
crow+="<br/><span class='button'><a target='_csv' href='/geogroups/downloadcsv.php?id="+mycsvs[i].upload_id+"&u="+username+"&t="+token+"' title='Click To Download Original File'>Download</a></span>"+"&nbsp;<span class='button'  title='Publish to a Group as Posts' onclick='configCSV("+mycsvs[i].upload_id+")'>Publish..</span>";crow+="</td>"+"<td></td>";crow+="</tr>";allrows.push(crow);}
txt+=allrows.join("\n");txt+=rtf(count,page_nav,2);display_csvs=mycsvs;dd("contentarea").innerHTML=txt;scm("<span style='text-align:center;display:block'>Bulk Data Uploads</span>"+"<span style='cursor:pointer' onclick='goBack(1)'>&#171; Back</span>");rel();}function fmyl(skip){if(is_demo)return;if(!skip)skip=0;eaq("/geogroups/mylogs.php","skip="+skip+"&nr=15",popMyLogs,false);}
var hists=[];function sWp(uname,i){var p=existsNVVal(hists,uname);if(p<0)return;var hp=hists[p].value;var l=new GLatLng(hp.resp.stops[i][0],hp.resp.stops[i][1]);if(!map.getBounds().containsLatLng(l))
mpc(l);showStopPop(hp.resp.stops[i][6],uname+"-"+i);}function addTNV(n,v){return"<tr><td style='padding:0px;'>"+n+"</td><td style='padding:0'>"+v+"</td></tr>";}function showStopPop(gmarker,uname){var o=uname.split("-");uname=o[0];var i=pnt(o[1]);var p=existsNVVal(hists,uname);if(p<0)return;var hp=hists[p].value;var stop=hp.resp.stops[i];var h="<b> Location History</b> for <span class='cusername'>"+uname+"</span><br/>"+"<table class='cch'>";if(i==0){h+=addTNV("<img style='float:left;margin:0;height:20px' src='/images/dd-start.png' />&nbsp;Start Time",getUDate(hp.resp.starttime))+
addTNV("<img style='float:left;height:20px' src='/images/dd-end.png' />&nbsp;End Time",getUDate(hp.resp.endtime))+
addTNV("<img style='float:left;height:20px;' src='/images/histline.png' />&nbsp;Points Plotted",(hp.resp.returned))+
addTNV("<img style='float:left;margin:5 0 5 2;' src='/images/rdot-10.png' />&nbsp;WayPoint Markers Shown",hp.resp.stops.length);}else {h+=addTNV("<img style='float:left' src='/images/rdot-10.png' />&nbsp;Waypoint",(i+1)+" of "+hp.resp.stops.length);}
h+=addTNV("Time",getUDate(stop[5]))+
addTNV("Location",stop[0]+","+stop[1]);if(stop[2]!="")
h+=addTNV("Altitude",stop[2]);if(stop[3]!="")
h+=addTNV("Speed",stop[3]);if(stop[4]!="")
h+=addTNV("Heading",getHeading(stop[4]));h+="</table>";var b=i-1;if(b<0)b=hp.resp.stops.length-1;var n=i+1;if(n>=hp.resp.stops.length)n=0;h+="<span style='float:left'><img class='cpointer' src='/images/back-24.png' onclick='sWp(\""+uname+"\","+b+")'/>&nbsp;&nbsp;"+"<img class='cpointer' src='/images/forward-24.png' onclick='sWp(\""+uname+"\","+n+")' /></span>";if(i==0||(i+1)==hp.resp.stops.length){if(i==0)
h+="<span class='caction' style='float:right' onclick='getHistory(\""+uname+"\","+hp.resp.starttime+","+hp.resp.endtime+",1)'>Download</span>";showmarkerpop(gmarker,h);}else {h+="&nbsp;&nbsp;&nbsp;<span class='caction' onclick='getHistory(\""+uname+"\","+stop[5]+","+hp.resp.endtime+",0)'>Set As Start Time</span>&nbsp;&nbsp;<span class='caction' onclick='getHistory(\""+uname+"\","+hp.resp.starttime+","+stop[5]+",0)'>Set As End Time</span>";showmarkerpop(gmarker,h,5);}}function removeHist(uname){var p=existsNVVal(hists,uname);if(p>=0){var hp=hists[p].value;for(i=0;i<hp.plot.length;i++){map.removeOverlay(hp.plot[i]);hp.plot[i]=null;}for(i=0;i<hp.resp.stops.length;i++){map.removeOverlay(hp.resp.stops[i][6]);}
hists[p].value=null;hp=null;removeScrap('maphist',"mhist"+uname);}
removeNV(hists,uname);}function fhist(method){var tzo=(new Date()).getTimezoneOffset();tzo=-tzo;if(typeof method=="undefined"||!method)
method=0;var uname=dd('huser').value;var hstart=dd('hstart').value;var hend=dd('hend').value;if(hstart!="")hstart=pnt(Date.parse(hstart.replace(/\-/g," "))/1000);if(hend!=""&&hend.toLowerCase()!="now")hend=pnt(Date.parse(hend.replace(/\-/g," "))/1000);var params="tuser="+uname+"&encode=1&starttime="+hstart+"&endtime="+hend+"&tzo="+tzo;function fhistcallback(response){popHist(uname,response);}function fhistcallback2(response){serror(response.errcode==0?"Please allow a few minutes for file to appear in MyStuff &gt; GeoLogs":response.errmsg);}
if(method==1)
window.open("/geogroups/gethistory2.php?u="+username+"&t="+token+"&"+params+"&download=1");else if(method==2)
eaq("/geogroups/gethistory2.php",params+"&makelog=1",fhistcallback2,false);else eaq("/geogroups/gethistory2.php",params,fhistcallback,false);}function popHist(uname,response){var lp=response.logpoints;var total=pnt(response.total);var count=pnt(response.returned);removeHist(uname);var initpos=null;var curhistplot=[];var mstops=[];if(response.encoded=="1"){for(i=0;i<lp.length;i++){curhistplot[i]=GPolyline.fromEncoded({color:"#ff1111",weight:5,opacity:0.5,opts:{clickable:false},points:lp[i]["Points"],levels:lp[i]["Levels"],numLevels:lp[i]["NumLevels"],zoomFactor:lp[i]["ZoomFactor"]});map.addOverlay(curhistplot[i]);if(i==0&&curhistplot[0].getVertexCount()>0)
initpos=curhistplot[0].getVertex(0);}
var stops=response.stops;var ibeg=new GIcon();ibeg.image="/images/dd-start.png";ibeg.iconSize=new GSize(20,34);ibeg.iconAnchor=new GPoint(10,34);var iend=new GIcon(ibeg,"/images/dd-end.png");var imed=new GIcon();imed.image="/images/rdot-10.png";imed.iconSize=new GSize(10,10);imed.iconAnchor=new GPoint(5,5);imed.infoWindowAnchor=new GPoint(5,0);for(i=0;i<stops.length;i++){var s=stops[i];var t=(new Date(s[5]*1000)).toLocaleString();var m=new GMarker(new GLatLng(s[0],s[1]),{icon:(i==0?ibeg:((i==stops.length-1)?iend:imed)),title:t,draggable:false});m.mstop=uname+"-"+i;response.stops[i].push(m);map.addOverlay(m);}
var txt=getScrap("history: "+uname,"removeHist(\""+uname+"\")","#991111","mhist"+uname,"sWp(\""+uname+"\",0)");removeScrap('maphist',"mhist"+uname);dd("maphist").innerHTML+=txt;response.logpoints=null;addToNV(hists,uname,{plot:curhistplot,resp:response});if(initpos!=null){mpc(initpos);sWp(uname,0);}}}function pdaterange(){var tzo=(new Date()).getTimezoneOffset();tzo=-tzo;var pstart=dd('poststart').value;var pend=dd('postend').value;if(pstart!="")pstart=pnt(Date.parse(pstart.replace(/\-/g," "))/1000);if(pend!=""&&pend.toLowerCase()!="now")pend=pnt(Date.parse(pend.replace(/\-/g," "))/1000);return{pstart:pstart,pend:pend};}function fdownload(){var tzo=(new Date()).getTimezoneOffset();tzo=-tzo;if(!isonegroup()){serror("Please select only one group");return false;}
var dgroup=sgs[0];var dstart=dd('dstart').value;var dend=dd('dend').value;if(dstart!="")dstart=pnt(Date.parse(dstart.replace(/\-/g," "))/1000);if(dend!=""&&dend.toLowerCase()!="now")dend=pnt(Date.parse(dend.replace(/\-/g," "))/1000);var params="tgroup="+eu(dgroup)+"&starttime="+dstart+"&endtime="+dend+"&tzo="+tzo;window.open("/geogroups/downloadgroup.php?u="+username+"&t="+token+"&"+params+"&download=1");}
var display_logs=null;function popMyLogs(response){ssn(11,1);var mylogs=response.mylogs;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var txt=getLogUploadForm();var pages=resultHeader(start,count,total,"GeoLogs");var page_nav=getPageNav(start,count,total,"fmyl(0)","fmyl("+((start-15)>=0?(start-15):0)+" )","fmyl("+(start+count)+" )");txt+=rth(pages,page_nav,2);var timeoutfunc=htmlesc("fmyl("+start+" )");pushBackFunc(timeoutfunc,true);var allrows=new Array();for(var i=0;i<mylogs.length;i++){var pfn="";var cap="";if(mylogs[i].parent_post_id<=0){pfn="fnp(\"title="+eu(mylogs[i].name)+"&lid="+mylogs[i].path_id+"\")";cap="Publish To Group";}else{pfn="fetchEditPostHtml("+mylogs[i].parent_post_id+")";cap="Edit Publish Details";}
var crow="";crow+="<tr>"+"<td class='ctrack' style='font-size:90%;font-weight: heavy;width:100%;border-bottom: 1px solid #44cc44;border-top: 1px solid #44cc44;padding: 2px;' "+" onmouseover='hl(this.parentNode, \"brown\", \"#f2EA7D\");' "+" onmouseout='uhl(this.parentNode); onMouseoutInfo(event,this);' "+" >"+"<span style='float:right' class='button' "+" onclick='showLog("+i+")' title='Click To See GeoLog On Map' "+" >Map</span>"+
mylogs[i].name+"&nbsp;&nbsp;"+"<img style='cursor:pointer' src='/images/remove-16.png' title='Delete This GeoLog' "+" onclick='askLogDel("+i+");return false;' />"+"<br/>&nbsp;<span style='color: black'>"+mylogs[i].num_points+" Points, "+mylogs[i].distance+" miles</span>"+"<br/>"+"<span class='caction'><a target='_log' class='caction' href='/geogroups/downloadcsv.php?id="+mylogs[i].upload_id+"&u="+username+"&t="+token+"' title='Click To Download'>Download &#187;</a></span>&nbsp;&nbsp;"+"<span class='caction'><a target='_log' class='caction' href='/geogroups/downloadlog.php?lid="+mylogs[i].path_id+"&format=gpx&u="+username+"&t="+token+"' title='Click To Download'>GPX &#187;</a></span>"+"&nbsp;&nbsp;<span class='caction' onclick='"+pfn+"' title='Publish'>"+cap+" &#187;</a></span>";crow+="</td>"+"<td></td>";crow+="</tr>";allrows.push(crow);}
txt+=allrows.join("\n");txt+=rtf(count,page_nav,2);display_logs=mylogs;dd("contentarea").innerHTML=txt;scm("<span style='text-align:center;display:block'>My GeoLogs</span>"+"<span style='cursor:pointer' onclick='goBack(1)'>&#171; Back</span>");rel();}function fetchLog(name,path_id,nocenter){if(!nocenter)nocenter=false;function popLogCallback(response){popLog(name,response,nocenter);}
if(path_id==curlogid&&curlogplot){if(curlogplot.length>0&&curlogplot[0].getVertexCount()>0)
mpc(curlogplot[0].getVertex(0));}else eaq("/geogroups/getlog.php","lid="+path_id+"&encode=1",popLogCallback,false);}function showLog(i){fetchLog(display_logs[i].name,display_logs[i].path_id)}function getArrowHead(ll){var p1=map.fromLatLngToDivPixel(ll[1]);var p2=map.fromLatLngToDivPixel(ll[0]);var d={x:p2.x-p1.x,y:p2.y-p1.y};var l=Math.sqrt((d.x*d.x)+(d.y*d.y));if(l<10)return null;var un=(l<0.001)?{x:1,y:1}:{x:d.x/l,y:d.y/l};var ap=[];ap[0]={x:(p1.x+p2.x)/2,y:(p1.y+p2.y)/2};var a={x:ap[0].x-(10*un.x),y:ap[0].y-(10*un.y)};ap[1]={x:a.x+(7*un.y),y:a.y-(7*un.x)};ap[2]={x:a.x-(7*un.y),y:a.y+(7*un.x)};var pp=new Array();for(i=0;i<3;i++)
pp.push(map.fromDivPixelToLatLng(ap[i]));pp.push(pp[0]);var gon=new GPolygon(pp,"#ff0000",1,0.5,"#ff0000",0.5);gon.isgon=true;return gon;}
var curhistline=null;var curhistid=-1;function removeCurHistLine(){if(curhistline!=null){for(var i=0;i<curhistline.length;i++)if(curhistline[i])map.removeOverlay(curhistline[i]);curhistline=null;}
curhistid=-1;}function showPostHist(post){if(post.is_user_location=="1"){removeCurHistLine();if(typeof post.history!="undefined"&&post.history.length>0){var ll=new Array();curhistline=new Array();ll.push(new GLatLng(post.latitude,post.longitude));var w=2+post.history.length;var k=0;var use=false;var ahead=null;for(var i=0;i<post.history.length;i++){use=true;ahead=null;ll.push(new GLatLng(post.history[i][0],post.history[i][1]));if(k==0){ahead=getArrowHead(ll);if(!ahead)use=false;}
if(use){curhistline.push(new GPolyline(ll,"#ff0000",w,0.5,{clickable:false}));map.addOverlay(curhistline[k]);k++;if(k==1&&ahead){curhistline.push(ahead);map.addOverlay(curhistline[k]);k++;}
ll.shift();}else ll.pop();w--;}
curhistid=post.post_id;}}}function getObjectClass(obj){if(obj&&obj.constructor&&obj.constructor.toString){var arr=obj.constructor.toString().match(/function\s*(\w+)/);if(arr&&arr.length==2){return arr[1];}}
return undefined;}function updateHistLine(){if(curhistline!=null&&curhistline.length>=2&&curhistline[1]&&typeof curhistline[1].isgon!="undefined"){map.removeOverlay(curhistline[1]);curhistline[1]=getArrowHead([curhistline[0].getVertex(0),curhistline[0].getVertex(1)]);if(curhistline[1])map.addOverlay(curhistline[1]);}}
var curlogplot=null;var curlogid=-1;function removeCurLogPlot(){if(curlogplot!=null){for(i=0;i<curlogplot.length;i++){map.removeOverlay(curlogplot[i]);curlogplot[i]=null;}
curlogplot=null;curlogid=-1;dd("maptrack").innerHTML="";}}function popLog(name,response,nocenter){if(!nocenter)nocenter=false;var logpoints=response.logpoints;var total=pnt(response.total);var count=pnt(response.returned);removeCurLogPlot();var initpos=null;curlogplot=new Array();if(response.encoded=="1"){for(i=0;i<logpoints.length;i++){curlogplot[i]=GPolyline.fromEncoded({color:"#11bb11",weight:5,opacity:0.7,opts:{clickable:false},points:logpoints[i]["Points"],levels:logpoints[i]["Levels"],numLevels:logpoints[i]["NumLevels"],zoomFactor:logpoints[i]["ZoomFactor"]});map.addOverlay(curlogplot[i]);if(i==0&&curlogplot[0].getVertexCount()>0)
initpos=curlogplot[0].getVertex(0);}}else{var logplot=new Array();var numsegs=0;var points=new Array();for(i=0;i<logpoints.length;i+=0){if(i>0&&logpoints[i]==-1){logplot[numsegs++]=points;points=new Array();i++;continue;}
points.push(new GLatLng(logpoints[i+1],logpoints[i+2]));i+=3;}
logplot[numsegs++]=points;for(i=0;i<numsegs;i++){if(i==0&&logplot[0].length>0)
initpos=logplot[0][0];curlogplot[i]=new GPolyline(logplot[i],"#11bb11",5,0.7);map.addOverlay(curlogplot[i]);logplot[i]=null;}
logplot=null;logpoints=null;}
curlogid=response.path_id;var txt=getScrap("geotrack: "+name,"removeCurLogPlot()","#55aa55");dd("maptrack").innerHTML=txt;if(!nocenter&&initpos!=null)
mpc(initpos);}function hideLog(){for(i=0;i<curlogplot.length;i++)
curlogplot[i].hide();}function delLog(i){var path_id=display_logs[i].path_id;if(!path_id)return;if(path_id==curlogid)
removeCurLogPlot();function popDelLog(response){fmyl(0);}
eaq("/geogroups/deletelog.php","lid="+path_id,popDelLog,false);}function askLogDel(i){var log=display_logs[i];if(!log)return;var backfunc="fmyl()";se("");var delfn="delLog("+i+")";var txt="Are you sure you want to delete the GeoLog:<br>"+"<span class='ctrack'>"+log.name+"</span>&nbsp;?"+"<br><br><input type='button' value='Cancel' onclick='"+backfunc+"'>"+"&nbsp;&nbsp;&nbsp;<input type='button' value='Delete' "+" onclick='"+delfn+"'>";dd("contentarea").innerHTML=txt;var backlink="";if(backfunc)
backlink="<span class='link1' id='backlink' onclick='"+backfunc+"' >[Back]</span>&nbsp;";scm(backlink+"Delete GeoLog");rel();}function delCSV(i){var id=display_csvs[i].upload_id;if(!id)return;function popDelCSV(response){fmycsv();}
eaq("/geogroups/deletecsv.php","id="+id,popDelCSV,false);}function askCSVDel(i){var csv=display_csvs[i];if(!csv)return;var backfunc="fmycsv()";se("");var delfn="delCSV("+i+")";var txt="Are you sure you want to delete the CSV:<br>"+"<span class='ctrack'>"+csv.orig_filename+"</span>&nbsp;?"+"<br><br><input type='button' value='Cancel' onclick='"+backfunc+"'>"+"&nbsp;&nbsp;&nbsp;<input type='button' value='Delete' "+" onclick='"+delfn+"'>";dd("contentarea").innerHTML=txt;var backlink="";if(backfunc)
backlink="<span class='link1' id='backlink' onclick='"+backfunc+"' >[Back]</span>&nbsp;";scm(backlink+"Delete CSV");rel();}function askCSVPublishDel(i){var csv=display_csvs[i];if(!csv)return;var backfunc="fmycsv()";se("");var delfn="deleteCSVPosts("+csv.upload_id+")";var txt="Are you sure you want to delete all "+csv.post_count+" posts published from CSV:<br>"+"<span class='ctrack'>"+csv.orig_filename+"</span>&nbsp;?"+"<br><br><input type='button' value='Cancel' onclick='"+backfunc+"'>"+"&nbsp;&nbsp;&nbsp;<input type='button' value='Delete' "+" onclick='"+delfn+"'>";dd("contentarea").innerHTML=txt;var backlink="";if(backfunc)
backlink="<span class='link1' id='backlink' onclick='"+backfunc+"' >[Back]</span>&nbsp;";scm(backlink+"Delete CSV Published Posts");rel();}function fetchMySubGroups(render_fn,param,skip,nr,fetchPosts){url="/geogroups/mysubgroups.php?u="+username+"&t="+token+"&skip="+skip+"&nr="+nr;function onFetchMySubGroups(resp){render_fn(resp,param);if(fetchPosts)
fps(true);}
eaq("/geogroups/mysubgroups.php","skip="+skip+"&nr="+nr,onFetchMySubGroups,false);}function popFindNearest(response){if(response.post_count>0)
popFindNearestInGroup(response.posts[0]);}function findNearest(i){if(i==-1){fps(false,true);return;}
var gn=display_groups[i].group_name;if(sgs.length>0&&!nochangegroup)
addGroup(i);var latlng=map.getCenter();eaq("/geogroups/findnearest.php","gn="+eu(gn)+"&lat="+latlng.lat()+"&lon="+latlng.lng(),popFindNearestInGroup,false);}function popFindNearestInGroup(response){var lat=response.latitude;var lng=response.longitude;mpc(new GLatLng(lat,lng));window.setTimeout("clickMarker( "+response.post_id+")",700);}function myLocation(){if(is_demo){serror("Sign-In to set your location");}else execAjax("/geogroups/getmylocation.php?u="+username+"&t="+token,popMyLocation);}function popMyLocation(responseText){var response=eval('('+responseText+')');if(response.errcode==0){var post=response.post;var latlng=new GLatLng(post.latitude,post.longitude);mpc(latlng);window.setTimeout("clickMarker( "+post.post_id+")",700);}else if(response.errcode==120){if(is_demo)serror("Sign In to set your location");else signOut();}else {createNewMarker("mylocation");}}
var last_selected_gid="sg"+"allmysubgroups";function getGroupRow(gid){var node=dd(gid);if(node){node=node.parentNode;if(node){return node;}}
return null;}function unselGroup(){var pnode=(last_selected_gid=="")?null:getGroupRow(last_selected_gid);if(pnode)
setCls(pnode,"cgrouprow0");last_selected_gid="";}function selGroup(gid,gname,groupid){if(nochangegroup&&!gname.stricmp(defgroup))return;unselGroup();sgs.splice(0,sgs.length);uncheckAll();dd("mapgroups").innerHTML="";if(groupid!="")
addGroupE(groupid,gname);if(gid!=""){var node=getGroupRow(gid);if(node)
setCls(node,"cgrouprowhi");}
last_selected_gid=gid;vDiscuss();}function vDiscuss(){if(!isonegroup()&&show_discuss)hideDiscussion();}function selectGroup(i){var group=(i<0)?allgroupsobj:display_groups[i];selGroup("sg"+group.group_id,group.group_name,group.group_id);}function checkBoxGroup(obj,i){var group=(i<0)?allgroupsobj:display_groups[i];if(obj.checked)
addGroup(i);else removeGroup(group.group_id);}function origSel(obj){if(obj.parentNode.className=="cgrouprowhi")
obj.parentNode.className=((obj.id==last_selected_gid)?"cgrouprowhi":"cgrouprow0");}function hl(o,f,b){if(!f)f="white";if(!b)b="#5890e5";o.style.backgroundColor=b;o.pc=o.style.color;o.style.color=f;}function uhl(o){o.style.backgroundColor="";o.style.color=o.pc;}function hi1(obj){obj.style.backgroundImage="url(/images/1ptp.png)";}function unhi1(obj){obj.style.backgroundImage="";}function checkb(id,state){var obj=dd("cb"+id);if(!obj)return;if(obj.checked!=state)obj.checked=state;}function uncheckAll(){for(i=0;i<allgroupsids.length;i++)checkb(allgroupsids[i],false);if(!display_groups)return;for(i=0;i<display_groups.length;i++)
checkb(display_groups[i].group_id,false);}function addGroup(i){var group=((i<0)?allgroupsobj:display_groups[i]);addToNV(selgroups,group.group_name,{group_title:group.group_title,is_subscribed:group.is_subscribed,is_owned:((group.username==username)?1:0)});addGroupE(group.group_id,group.group_name);}function addGroupE(groupid,groupname){if(nochangegroup&&!groupname.stricmp(defgroup))return;if(groupname==demouser)return;unselGroup();var elem=dd("mapgroups");if(!elem||elem==null)return;for(child=elem.firstChild;child!=null;child=child.nextSibling){if(child.id==("mg"+groupid)){checkb(groupid,true);return;}}
if(-1!=arrExists(allgroupsids,groupid)){elem.innerHTML="";sgs.splice(0,sgs.length);uncheckAll();}
var txt=getScrap(groupname,"removeGroup( \""+groupid+"\")","","mg"+groupid);elem.innerHTML+=" "+txt;checkb(groupid,true);for(i=0;i<allgroupsids.length;i++)
if(allgroupsids[i]!=groupid)
removeGroup(allgroupsids[i],true);if(arrAdd(sgs,groupname))
fps(true);rel();vDiscuss();}
var never_fetched=true;function fetchAllPosts(render_fn,lsgs,bounds,latlng,get_total,max,cluster,author,locations,poisonly,picsonly,favonly,sortby,skip){if(!skip)skip=0;var gns=lsgs?makelist(lsgs):"";if(never_fetched){never_fetched=false;}
if(gns==""){if(openv=='post'&&author=="")gns="none";else gns="all";}
var param="";var prange=pdaterange();if(prange.pstart!="")
param+="&start="+prange.pstart;if(prange.pend!="")
param+="&end="+prange.pend;if(qsearch!=""){param+="&searchq="+eu(qsearch);var o=did("qsearch");if(o&&o.value!=qsearch){o.value=qsearch;}}
if(bounds){var sw=bounds.getSouthWest();var ne=bounds.getNorthEast();param+="&swlat="+sw.lat()+"&swlon="+sw.lng()+"&nelat="+ne.lat()+"&nelon="+ne.lng();}
if(latlng)
param+="&lat="+latlng.lat()+"&lon="+latlng.lng();if(get_total&&get_total==true)
param+="&nt=1";if(cluster&&cluster==true)
param+="&clust=1";if(max&&max!="")
param+="&max="+max;if(author&&author!="")
param+="&author="+eu(author);if(locations&&locations==true)
param+="&locations=1";else if(poisonly&&poisonly==true)
param+="&locations=0";if(picsonly&&picsonly==true)
param+="&picsonly=1";if(favonly&&favonly==true){param+="&idlist="+(fav_list==""?"-1":fav_list);}
if(sortby&&sortby!="")
param+="&sb="+eu(sortby);if(skip&&skip>0)
param+="&skip="+eu(skip);if(is_preview)
param+="&preview=1";param+="&fields=def,speed,heading,ago";eaq("/geogroups/allposts.php","gns="+eu(gns)+param,render_fn,false,1);}function postScrap(post){var txt="";if(typeof post!="undefined"&&post!=null)
txt=getScrap("post: "+(post.is_user_location=="1"?((post.username.stricmp(username)?"My":post.username+"&#39;s")+" Location"):post.post_title),"hidePostPop()");dd("mappost").innerHTML=txt;}
var sdr=false;var suspended_need_total=false;var refreshtimeout=null;function rfresh(){if(refreshtimeout!=null)
window.clearTimeout(refreshtimeout);refreshtimeout=window.setTimeout("fps(false,false,true)",30000);}function fps(get_total,nearest,arefresh){if(!arefresh)arefresh=false;if(refreshtimeout!=null)
window.clearTimeout(refreshtimeout);refreshtimeout=null;if(!get_total)get_total=false;need_total=get_total;if(sdr){if(need_total)suspended_need_total=true;return;}
if(sgs.length==0&&author==""&&(defpost==""||(defpost!=""&&last_poppost==-1&&needpostinit==false))){if(is_demo)
addGroupE(allgroupsids[1],allgroupsnames[1]);else {addGroupE(allgroupsids[0],allgroupsnames[0]);}
return;}
var max=max_results;var sortby="";var cluster=true;var render_fn=popPosts;var bounds=map.getBounds();var latlng=null;if(nearest&&nearest==true){max=1;sortby="distance";render_fn=popFindNearest;cluster=false;bounds=null;latlng=map.getCenter();}fetchAllPosts(render_fn,sgs,bounds,latlng,need_total,max,cluster,author,locations_only,pois_only,pics_only,fav_only,sortby,0);if(worldwide_posts&&(need_total||arefresh))
fpw(0,arefresh);need_total=false;rfresh();}
var last_wskip=0;function fpw(skip,arefresh){if(!arefresh)arefresh=false;if(!skip)skip=0;if(init_skip>0){skip=init_skip;init_skip=0;}
if(arefresh)skip=last_wskip;else last_wskip=skip;var max=15;var sortby="";var cluster=false;var render_fn=popWorldList;var bounds=null;var latlng=null;fetchAllPosts(render_fn,sgs,bounds,latlng,false,max,cluster,author,locations_only,pois_only,pics_only,fav_only,sortby,skip);}function findGroupName(gid){for(var i=0;i<selgroups.length;i++)
if(selgroups[i].value.group_id==gid)return selgroups[i].name;return"";}function removeGroup(groupid,nocall){if(nochangegroup&&findGroupName(groupid).stricmp(defgroup))return;if(!nocall)nocall=false;if(is_demo&&sgs.length==1)return;unselGroup();var elem=dd("mapgroups");if(!elem||elem==null)return false;checkb(groupid,false);for(child=elem.firstChild;child!=null;child=child.nextSibling){if(child.id==("mg"+groupid)){elem.removeChild(child);if(arrRemove(sgs,child.firstChild.innerHTML)){if(!nocall)fps(true);rel();vDiscuss();return true;}
return false;;}}
return false;}function htmlescOrig(txt){var encodedHtml=escape(txt);encodedHtml=encodedHtml.replace(/\//g,"%2F");encodedHtml=encodedHtml.replace(/\?/g,"%3F");encodedHtml=encodedHtml.replace(/=/g,"%3D");encodedHtml=encodedHtml.replace(/&/g,"%26");encodedHtml=encodedHtml.replace(/@/g,"%40");return encodedHtml;}function getGroupPopHtml(group,i,subscribed,timeoutfunc){last_backfunc=timeoutfunc;if(!timeoutfunc)timeoutfunc="";timeoutfunc=htmlesc(timeoutfunc);var iconimg=(group.iconimg==""?default_icon_name:group.iconimg);var perm_str="";perm_str="You can "+getMyPermStr(group);var txt="";txt+="<span ";txt+=" title='Click to Jump to the Nearest GeoPost in this Group' "+" onmouseover='this.style.borderBottom=\"1px solid blue\"; ' "+" onmouseout='this.style.borderBottom=\"\"; ' "+" onclick='findNearest("+i+")' "+" style='cursor:pointer;";txt+="position:absolute; right: 10px;width:45px;background-image:url("+shadowIcon(iconimg)+")'><img src='/geogroups/icons/"+
iconimg+".png' border='0' /></span>";txt+="<span class='cgroupnamedisp' >"+group.group_name+"</span>";if(group.group_title!="")txt+="</br><span style='font-style:italic;'>"+group.group_title+"</span>";txt+="<table border='0' style='margin:0px;padding:0px' cellspacing='0' cellpadding='0'><tr><td style='padding-right:10px;'>";txt+="<span class='cgroupattr'>"+group.member_count+"&nbsp;Member(s)</span>"+"<br><span class='cgroupattr'>"+group.post_count+"&nbsp;GeoPost(s)</span>";if(subscribed){txt+="&nbsp;<a class='clink' href='"+groupUrl(group.tok_group_name)+"'>View</a>&nbsp;|&nbsp;"+"<span class='clink' "+" onclick='findNearest("+i+");'>Find Nearest</span>";}
if(group.credits_needed>0){txt+="<br><span class='cgroupattr' style='color:brown;'>"+group.credits_needed+"&nbsp;Credits Needed To Join</span>";if(!is_demo)
txt+="&nbsp;&nbsp;<a class='link3' href='https://"+server_name+"/geoaccount/credits.php'>[Manage Your Credits]</a>";}
if(group.preview_count>0){txt+="<br/><span class='cgroupattr'>"+group.preview_count+" Preview GeoPost(s)</span> &nbsp;"+"<a class='clink' href='"+groupUrl(group.tok_group_name)+"?preview=1'>View</a>";}
txt+="</td>";if(!subscribed&&is_demo){txt+="<td align='center' style='padding:5px;margin-left:5px;border-left:1px solid #eeeeee;'><span class='l3title' style='cursor:pointer;font-weight:bold;text-decoration:underline;' onclick='showSignIn()' >Sign-In</span><br/><font color='#9999'>To View Posts In This Group</font></td>";}
txt+="</tr></table>";txt+="<table width='370' >";if(group.group_description!=""){txt+="<tr>"+"<td colspan='2' style='border-top: 1px solid #eeeeee;'>"+
group.group_description+"</td>"+"</tr>";}
txt+="<tr><td class='ctagnameg' style='border-top: 1px solid #eeeeee;' >"+"Created By:"+"</td>"+"<td class='ctagval' style='border-top: 1px solid #eeeeee;'>"+"<span class='cusername'>"+group.username+"</span>"+
((group.is_anonymous=="1"&&group.username!="anonymous")?"&nbsp;(anonymous to others)":"")+"</td>"+"</tr>"+"<tr>"+"<td class='ctagnameg' >"+"Visibility: "+"</td>"+"<td class='ctagval' >"+"<span class='cgroupattr'>"+(group.is_private=="0"?"Appears in public group listings":"Private. Does not appear in public group listings")+"</span>"+"</td>"+"</tr>"+"<tr>"+"<td class='ctagnameg' >"+"Join Permission: "+"</td>"+"<td class='ctagval'>"+"<span class='cgroupattr'>"+(group.needs_permission=="0"?"Not Required":"Needs Permission To Join")+"</span>";if(subscribed&&group.username!=username){txt+="<tr>"+"<td class='ctagnameg' >"+"Your Permissions: "+"</td>"+"<td class='ctagval'>"+"<span class='cgroupattr'>"+perm_str+"</span>";if(!is_demo)
txt+="&nbsp;&nbsp;<span class='link3' "+ml+" title='Request a Permissions Change in this Group' "+" onclick='hip();askPermG("+i+")' >[Change]</span>";txt+="</td>"+"</tr>";}
txt+="<tr>"+"<td  class='ctagnameg'>"+"Subscription:"+"</td>"+"<td class='ctagval' >"+"<span class='link1' "+ml+" ";if(subscribed)
txt+="onclick='unsubgroup( "+i+", \""+timeoutfunc+"\");hip();'>Unsubscribe from this group";else txt+="onclick='subgroup( "+i+", \""+timeoutfunc+"\");hip();'>Subscribe to this group";txt+="</span>"+"</td>"+"</tr>";txt+="<tr><td colspan='2' style='border-top: 1px solid #eeeeee;'>";txt+="<span class='link3' "+ml+" title='Invite User To Join this Group' "+" onclick='hip();inviteg("+i+")' >[Invite User]</span>";if(username==group.username)
txt+="&nbsp;<span class='link3' "+ml+" onclick='hip();fetchEditGroupHtml("+i+",\""+timeoutfunc+"\")' >[Edit Group]</span>"+"&nbsp;<span class='link3' "+ml+" onclick='hip();deleteGroupHtml("+i+",\""+timeoutfunc+"\")'>[Delete Group...]</span>"+"&nbsp;<span class='link3' "+ml+" onclick='hip();fulid("+i+")'>[Manage Users...]</span><br>";if(subscribed)
txt+="&nbsp;<span class='link3' "+ml+" title='Upload Bulk Data Files Into This Group' "+" onclick='hip();goMenu(12)' >[Bulk Upload]</span>";txt+="</td></tr>\n";txt+="</table>";return txt;}function fsubg(skip,fetch_posts){if(!skip)skip=0;if(!fetch_posts)fetch_posts=false;var fa=fetch_posts&&(fetch_posts==true);fetchMySubGroups(popMySubGroups,"contentarea",skip,15,fa);}function rth(pages,page_nav,numcols){if(!numcols)numcols=3;return"<table "+" "+" width='100%' style='border-collapse: collapse;'>\n"+"<tr>"+"<td colspan='"+numcols+"' class='cheadbar' >"+"<span style='float:right;white-space:nowrap'>"+page_nav+"</span>"+
pages+"</td>"+"</tr>";}function resultTableStart(numcols){if(!numcols)numcols=3;return"<table "+" "+" width='100%' style='border-collapse: collapse;'>\n";}function resultTableNav(pages,page_nav,numcols){if(!numcols)numcols=3;return"<tr>"+"<td colspan='"+numcols+"' class='cheadbar' >"+"<span style='float:right;white-space:nowrap;'>"+page_nav+"</span>"+
pages+"</td>"+"</tr>";}function rtf(count,page_nav,numcols){if(!numcols)numcols=3;return(count>5?("<tr>"+"<td colspan='"+numcols+"' >"+"<span style='float:right;' >"+page_nav+"</span>"+"</td></tr>"):"")+"</table>\n";}function addOrSelectGroup(e,i){if(e.ctrlKey)
addGroup(i);else selectGroup(i);return false;}
var gtimeouts={};function sTimeout(name,fn,t){clTimeout(name);gtimeouts[name].mtimeout=window.setTimeout(fn,t);}function clTimeoutN(name){clTimeout(name);}function clTimeout(name){if(name=="")return;if(typeof gtimeouts[name]=="undefined")
gtimeouts[name]={mtimeout:null,stimeout:null};if(gtimeouts[name].mtimeout){window.clearTimeout(gtimeouts[name].mtimeout);gtimeouts[name].mtimeout=null;}}function ssTimeout(name,fn,t){if(typeof gtimeouts[name]=="undefined")
gtimeouts[name]={mtimeout:null,stimeout:null};if(gtimeouts[name].stimeout)
window.clearTimeout(gtimeouts[name].stimeout);gtimeouts[name].stimeout=window.setTimeout(fn,t);}
var allmysubgroupsobj={"group_id":"allmysubgroups","group_name":"My Groups","group_title":"","iconimg":default_icon_name};var allgroupsobj=allmysubgroupsobj;function cancelProp(e){if(!e)e=window.event;e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();}function cp(e){cancelProp(e);}function userUrl(name){return"/users/"+eu(name)+"/";}function groupUrl(name){return"/groups/"+eu(flattendash(name))+"/";}function groupLink(name){return"<a class='l3title' "+(style=="widget"?"target='__exlink'":"")+" style='color:#5890e5;text-decoration:underline;' href='"+groupUrl(name)+"'>"+name+"</a>";}function groupName(name){return"<span class='l3title'>"+name+"</span>";}function postUrl(p){var url=window.location.protocol+"//"+window.location.host;return url+"/posts/"+((p.is_user_location=="1"&&p.username!="anonymous")?("mylocation-"+p.username):p.post_id)+"/"+flattendash(p.post_title)+"/";}
var widgeturl="http%3A%2F%2F"+server_name+"%2Fwidgets%2Fmylocation.xml";function ggPostUrl(p){return("http://www.google.com/ig/add?moduleurl="+widgeturl+"&up_user="+eu(p.username));}function wLocUrl(p){return"http://"+server_name+"/widgets/testmylocation.php?user="+eu(p.username);}
var rparams=null;function procRegex(match,index){name=match.substr(2,match.length-3);return rparams[name];}function popGroups(allid,response,param){scm("<div class='cgroupheading'>My Groups</div>");var groups=response.groups;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var pages=resultHeader(start,count,total);if(allid=="allmysubgroups"){fn="fsubg";allgroupsobj=allmysubgroupsobj;}
var page_nav=getPageNav(start,count,total,fn+"(0)",fn+"("+((start-15)>=0?(start-15):0)+")",fn+"("+(start+count)+")");var txt=resultTableStart(5);var timeoutfunc=fn+"("+start+")";pushBackFunc(timeoutfunc,true);var classname="";var gid="";var allrows=new Array();var group=allgroupsobj;var crow="";allrows.push(resultTableNav(pages,page_nav,5));var i=-1;var group=allgroupsobj;gid="sg"+group.group_id;classname=(last_selected_gid==gid)?"cgrouprowhi":"cgrouprow0";var crow="<tr class='"+classname+"'>"+"<td>"+"<input type='checkbox' id='cb"+group.group_id+"' "+
(-1!=arrExists(sgs,group.group_name)?"checked":"")+" onclick='checkBoxGroup(this,"+i+");' "+"> "+"<td class='cgroupnamecell' id='"+gid+"' "+" title='Click to see posts from all "+htmlesc(group.group_name)+" on the map' "+" onclick='window.location.href=mygroupsUrl()' "+" onmouseover='this.parentNode.className = \"cgrouprowhi\";' "+" onmouseout='origSel(this);' "+" >";crow+="<span class='cgroupname' >All "+group.group_name+"</span>";crow+="</td>";crow+="<td></td>";crow+="<td></td>";crow+="<td></td>";crow+="</tr>\n";allrows[allrows.length]=crow;var rowtemplate="<tr class='${classname}'> \
    <td> \
     <input type='checkbox' id='cb${group_id}' \
     onclick='checkBoxGroup(this,${i});' ${checked} /> \
    </td> \
    <td class='cgroupnamecell' id='sg${group_id}' \
     title='Click to see posts from this group' \
     onclick='window.location.href=groupUrl(\"${tok_group_name}\")'  \
     onmouseover='this.parentNode.className=\"cgrouprowhi\";'  \
     onmouseout='origSel(this);' > \
     <img style='float:left;' src='/geogroups/icons/${icon_name}.png' > \
     <span class='cgroupname' >${group_name}\
     &nbsp;&nbsp;(${post_count})</span> \
     <br/><span class='cgrouptitle'>${group_title}</span>\
    </td>\
    <td class='cgrouprowattr' style='cursor:default;' ${private_title} >${private_img}</td> \
    <td class='cgrouprowattr' title='Jump to Nearest Geopost in this group' \
     onmouseover='hl(this);' \
     onmouseout='uhl(this);' \
     onclick='findNearest(${i})' \
    ><img src='/images/geofind16.png' /></td> \
  <td class='cgrouprowattr' \
     onmouseover='hl(this);showGroupPop(this,${is_subscribed},${i}, \"${timeoutfunc}\");' \
     onmouseout='uhl(this);onMouseoutInfo(event,this)' \
    ><img src='/images/menuright.png' /></td> \
    </tr>";var regexp=new RegExp("\\${checked}|\\${classname}|\\${group_id}"+"|\\${group_name}|\\${tok_group_name}|\\${icon_name}|\\${post_count}"+"|\\${group_title}|\\${private_title}|\\${private_img}|\\${is_subscribed}"+"|\\${timeoutfunc}|\\${i}","g");for(i=0;i<groups.length;i++){g=groups[i];var issub=true;if(typeof g.is_subscribed!="undefined")
issub=g.is_subscribed;if(g.group_name==username)
mygroup_id=g.group_id;gid="sg"+g.group_id;cn=(last_selected_gid==gid)?"cgrouprowhi":"cgrouprow0";rparams={classname:cn,checked:(-1!=arrExists(sgs,g.group_name)?"checked":""),group_id:g.group_id,group_name:g.group_name,tok_group_name:g.tok_group_name.replace(/\s/g,"-"),post_count:g.post_count,group_title:g.group_title,icon_name:iconName(g.iconimg),is_subscribed:issub,private_img:(g.is_private=="1"?" <img src='/images/private16.png' ":""),private_title:(g.is_private=="1"?" title='This is a private group' ":""),timeoutfunc:timeoutfunc,i:i}
crow=rowtemplate.replace(regexp,procRegex);rparam=null;delete rparam;allrows[allrows.length]=crow;}
txt+=allrows.join("\n");allrows=null;delete allrows;txt+=rtf(count,page_nav,5);txt+="<span class='button' style='margin-right:0px;' onclick='goMyPosts();' >View Posts</span>";display_groups=groups;if(start==0&&count<5){txt+="<br><br>Tip: "+"<span class='link1' "+" title='Browse or Search Public Groups' "+" onclick='goMenu(3);'>Find</span>"+" public groups matching your interest"+" <br>or create a <span class='link1' title='Create a new group' onclick='goMenu(4)'>New Group</span>";}
dd(param).innerHTML=txt;rel();}function popMySubGroups(response,param){ssn(0,0);popGroups("allmysubgroups",response,param);}
var choose_icons=null;function setIcon(name,prefix){var nameobj=prefix+"icon";var imageobj=nameobj+"img";if(!name)name="";dd(nameobj).value=name==""?"default":name;if(name==""||name=="default"){dd(imageobj).innerHTML="";dd(imageobj).style.backgroundImage="";}else {dd(imageobj).style.backgroundImage="url( "+shadowIcon(name)+")";dd(imageobj).innerHTML="<img src='/geogroups/icons/"+name+".png' >"+"<span class='cclosebutton' title='Remove' style='border:1px solid grey;' "+" onclick='setIcon(\"default\",\""+prefix+"\")'  >X</span><br>";}}function sicon(i,prefix){setIcon(choose_icons[i].substr(0,choose_icons[i].length-4),prefix);}function setIcon1(i){sicon(i,"na");}function setIcon2(i){sicon(i,"ng");}function setIcon3(i){sicon(i,"csv");}function chooseIcon(placementobjname,callback,skip){if(!skip)skip=0;var param={placement:placementobjname,callback:callback};fetchIcons(popChooseIcons,param,skip,100);}function fetchIcons(render_fn,param,skip,nr){eaq("/geogroups/geticons.php","skip="+skip+"&nr="+nr,function(response){render_fn(response,param);},false);}function shadowIcon2(filename){return shadowIcon(filename.substr(0,filename.length-4));}function popChooseIcons(response,param){var icons=response.icons;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var pages=resultHeader(start,count,total,"Icons");var page_nav=getPageNav(start,count,total,"chooseIcon(\""+param.placement+"\", \""+param.callback+"\", 0 )","chooseIcon(\""+param.placement+"\", \""+param.callback+"\", "+((start-100)>=0?(start-100):0)+" )","chooseIcon(\""+param.placement+"\", \""+param.callback+"\", "+(start+count)+" )");var txt=rth(pages,page_nav,10);var timeoutfunc=htmlesc("chooseIcons(\""+param.placement+"\", \""+param.callback+"\", "+start+" )");var allrows=new Array();var i=0;for(r=0;r<10;r++){var crow="<tr>";for(c=0;c<10;c++){crow+="<td class='cicon' ";if(i<count){crow+="style='width: 60px;min-width:60px; background-image: url("+shadowIcon2(icons[i])+");' ";}
crow+=" >";if(i<count)
crow+="<img src='/geogroups/icons/"+icons[i]+"' "+"onmouseover='hi1(this);' onmouseout='unhi1(this);' "+"onclick='"+param.callback+"("+i+")' "+"title='"+icons[i].substr(0,icons[i].length-4)+"' ";" >";crow+="</td>";i++;}
crow+="</tr>\n";allrows.push(crow);}
txt+=allrows.join("\n");allrows=null;txt+=rtf(count,page_nav,10);choose_icons=icons;showListPop(dd(param.placement),txt);}
var choose_groups=null;function addChooseGroup(i,divname){addChooseGroupE(divname,choose_groups[i].group_name);}function addChooseGroupE(divname,groupname){var elem=dd(divname);if(!elem||elem==null)return;for(child=elem.firstChild;child!=null;child=child.nextSibling){if(child.firstChild&&child.firstChild.innerHTML==groupname)return;}
var txt=getScrap(groupname,"removeChooseGroup(\""+groupname+"\",\""+divname+"\")");elem.innerHTML+=(elem.innerHTML!=""?"<br>":"")+txt;}function removeChooseGroup(groupname,divname){var elem=dd(divname);if(!elem||elem==null)return false;var prevchild=null;for(child=elem.firstChild;child!=null;child=child.nextSibling){if(child.firstChild&&child.firstChild.innerHTML==groupname){elem.removeChild(child);if(prevchild)elem.removeChild(prevchild);return true;}
prevchild=child;}
return false;}function makeScrapList(divname){var txt="";var elem=dd(divname);for(child=elem.firstChild;child!=null;child=child.nextSibling){if(child.firstChild&&child.firstChild.innerHTML!="")
txt+=(txt!=""?",":"")+child.firstChild.innerHTML;}
return txt;}function chooseGroups(displayobjname,listobjname,skip){if(!skip)skip=0;var param={placement:displayobjname,groupnamelist:listobjname};fetchMySubGroups(popChooseGroups,param,skip,10,false);}function popChooseGroups(response,param){var groups=response.groups;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var pages=resultHeader(start,count,total);var page_nav=getPageNav(start,count,total,"chooseGroups(\""+param.placement+"\", \""+param.groupnamelist+"\", 0 )","chooseGroups(\""+param.placement+"\", \""+param.groupnamelist+"\", "+((start-10)>=0?(start-10):0)+" )","chooseGroups(\""+param.placement+"\", \""+param.groupnamelist+"\", "+(start+count)+" )");var txt=rth(pages,page_nav);var timeoutfunc=htmlesc("chooseGroups(\""+param.placement+"\", \""+param.groupnamelist+"\", "+start+" )");var classname="";var gid="";var allrows=new Array();for(i=0;i<groups.length;i++){gid="cg"+groups[i].group_id;classname="cgrouprow0";var crow="<tr class='"+classname+"'>"+"<td class='cgroupnamecell' id='"+gid+"' "+" onmouseover='this.parentNode.className = \"cgrouprowhi\";' "+" onmouseout='origSel(this);' "+" onclick='addChooseGroup("+i+", \""+param.groupnamelist+"\")' "+" >"+"<img src='/geogroups/icons16/"+iconName(groups[i].iconimg)+"-16.png' >"+"<span class='cgroupname' >"+groups[i].group_name+"&nbsp;&nbsp;("+groups[i].post_count+")</span>";if(groups[i].group_title!=""&&groups[i].group_title!=groups[i].group_name)
crow+="&nbsp;<span class='cgrouptitle'>"+groups[i].group_title+"</span>";crow+="</td>";crow+="<td class='cgrouprowattr' title='Add this group' "+" onmouseover='hl(this);' "+" onmouseout='uhl(this);' "+" onclick='addChooseGroup("+i+", \""+param.groupnamelist+"\")' "+" >+</td>";crow+="<td class='cgrouprowattr' "+" onmouseover='hl(this);showGroupPop(this, true, "+i+", \""+timeoutfunc+"\");' "+" onmouseout='uhl(this);onMouseoutInfo(event,this)' "+" ><img src='/images/menuright.png' /></td>";crow+="</tr>\n";allrows.push(crow);}
txt+=allrows.join("\n");allrows=null;txt+=rtf(count,page_nav);choose_groups=groups;showListPop(dd(param.placement),txt);}function setChooseGrantGroup(i,divname){dd("ign").value=choose_groups[i].group_name;}function chooseMyGroup(displayobjname,listobjname,skip,callbackfn){if(!skip)skip=0;if(!callbackfn)
callbackfn="setChooseMyGroup";var param={placement:displayobjname,groupnamelist:listobjname,callbackfn:callbackfn};fetchMyGroups(popChooseMyGroup,param,skip,10);}function setChooseMyGroup(i,divname){ful(0,choose_groups[i].group_name);}function popChooseMyGroup(response,param){var groups=response.groups;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var pages=resultHeader(start,count,total);var page_nav=getPageNav(start,count,total,"chooseMyGroup(\""+param.placement+"\", \""+param.groupnamelist+"\", 0, \""+param.callbackfn+"\" )","chooseMyGroup(\""+param.placement+"\", \""+param.groupnamelist+"\", "+((start-10)>=0?(start-10):0)+" , \""+param.callbackfn+"\")","chooseMyGroup(\""+param.placement+"\", \""+param.groupnamelist+"\", "+(start+count)+" , \""+param.callbackfn+"\" )");var txt=rth(pages,page_nav,2);var timeoutfunc=htmlesc("chooseMyGroup(\""+param.placement+"\", \""+param.groupnamelist+"\", "+start+" , \""+param.callbackfn+"\")");var classname="";var gid="";var allrows=new Array();for(i=0;i<groups.length;i++){gid="cg"+groups[i].group_id;classname="cgrouprow0";var crow="<tr class='"+classname+"'>"+"<td class='cgroupnamecell' id='"+gid+"' "+" onmouseover='this.parentNode.className = \"cgrouprowhi\";' "+" onmouseout='origSel(this);' "+" onclick='"+param.callbackfn+"("+i+", \""+param.groupnamelist+"\")' "+" >"+"<img src='/geogroups/icons16/"+iconName(groups[i].iconimg)+"-16.png' >"+"<span class='cgroupname' >"+groups[i].group_name+"&nbsp;&nbsp;("+groups[i].post_count+")</span>";if(groups[i].group_title!=""&&groups[i].group_title!=groups[i].group_name)
crow+="&nbsp;<span class='cgrouptitle'>"+groups[i].group_title+"</span>";crow+="</td>";crow+="<td class='cgrouprowattr' "+" onmouseover='hl(this);showGroupPop(this, true, "+i+", \""+timeoutfunc+"\");' "+" onmouseout='uhl(this);onMouseoutInfo(event,this)' "+" ><img src='/images/menuright.png' /> "+"</td>";crow+="</tr>\n";allrows.push(crow);}
txt+=allrows.join("\n");allrows=null;txt+=rtf(count,page_nav,2);choose_groups=groups;display_groups=groups;showListPop(dd(param.placement),txt);}function fgroup(gn){g=gn.toLowerCase();for(i=0;i<display_groups.length;i++){if(gn==display_groups[i].group_name.toLowerCase())return i;}
return-1;}
var nasubgroups=null;function addPostGroup(groupname){groupname=trim(groupname);if(groupname==""||groupname==",")return;var prev=dd("nagn").value;prev=addIfNotExist(prev,groupname);dd("nagn").value=prev;}function popNewPostSubGroupsFiltered(param,filter_str){if(nasubgroups==null)return;var txt="<table>\n";for(i=0;i<nasubgroups.length;i++){if(filter_str==""||-1!=nasubgroups[i].indexOf(filter_str.toLowerCase()))
txt+="<tr><td onclick='addPostGroup( this.innerHTML )'>"+
nasubgroups[i]+"</td></tr>\n";}
txt+="</table>\n";dd(param).innerHTML=txt;}function filterNASubGroups(){if(nasubgroups==null)return;var fstr=dd('nafsg').value;popNewPostSubGroupsFiltered("nagrouplist",fstr);}function popNewPostSubGroups(groups,param){nasubgroups=new Array();for(i=0;i<groups.length;i++){nasubgroups.push(groups[i].group_name);}
popNewPostSubGroupsFiltered(param,"");}function fetchMyGroups(render_fn,param,skip){if(!skip)skip=0;eaq("/geogroups/mygroups.php","skip="+skip,function(response){render_fn(response,param);},false);}function fmyg(skip){if(!skip)skip=0;fetchMyGroups(popMyGroups,"contentarea",skip);}
var mygroup_id=-1;function popMyGroups(response,param){ssn(1,0);popGroups("allmygroups",response,param);}function fetchAllGroups(render_fn,param,skip,searchq,excludealready){if(!skip)skip=0;if(!searchq)searchq="";if(!excludealready)excludealready=0;if(excludealready&&excludealready=="0")excludealready=0;var my=excludealready?"0":"1";function onFetchAllGroups(response){render_fn(response,param);}
eaq("/geogroups/findgroups.php","skip="+skip+"&nr=15"+"&q="+eu(searchq)+"&my="+my,onFetchAllGroups,false);}function searchGroups(nosearch){if(!nosearch)nosearch=false;var searchq=(nosearch?"":dd("searchq").value);fetchAllGroups(popAllGroups,"contentarea",0,searchq);}function resultHeader(start,count,total,name){if(!name)name="Groups";if(start==0&&count==0)return"&nbsp;<b>0</b> "+name+" Found";else return"&nbsp;"+name+" <b>"+(start+(count>0?1:0))+"&nbsp;-&nbsp;"+(start+count)+"</b> of "+total;}function fallg(skip,searchq){if(!skip)skip=0;if(!searchq)searchq="";fetchAllGroups(popAllGroups,"contentarea",skip,searchq);}function popAllGroups(response,param){ssn(3,0);var filtxt="";if(response.searchq!="")filtxt+="<img class='cpointer' title='Clear' src='/images/remove-16.png' onclick='searchGroups(true)' />";filtxt+="<input type='text' "+" id='searchq' "+" onkeypress='if (isEnter(event)) searchGroups();' "+"value='"+response.searchq+"'>&nbsp;<input type='button' value='Search' "+" onclick='searchGroups()'><br/>";var groups=response.groups;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var pages=resultHeader(start,count,total);var page_nav=getPageNav(start,count,total,"fallg(0, \""+response.searchq+"\" )","fallg("+
((start-15)>=0?(start-15):0)+" , \""+response.searchq+"\"  )","fallg("+(start+count)+", \""+response.searchq+"\")");var txt=filtxt+rth(pages,page_nav,2);var timeoutfunc="fallg("+start+", \""+htmlesc(response.searchq)+"\")";pushBackFunc(timeoutfunc,true);timeoutfunc=htmlesc(timeoutfunc);var classname="cgrouprow0";var gid="";var allrows=new Array();for(i=0;i<groups.length;i++){var group=groups[i];var issub=(group.is_subscribed=="1");var popfunc="showGroupPop(this,"+(issub?"true":"false")+", "+i+", \""+timeoutfunc+"\");";gid="sg"+group.group_id;var crow="<tr class='"+classname+"'> \
        <td class='cgroupnamecell' id='"+gid+"' \
        onmouseover='this.parentNode.className = \"cgrouprowhi\";' \
        onmouseout='origSel(this);'  \
        onclick='"+(issub?("window.location.href=groupUrl(\""+group.tok_group_name.replace(/\s/g,"-")+"\")"):popfunc)+"' \
        > \
        <img style='float:left;' src='/geogroups/icons/"+iconName(group.iconimg)+".png' >"+"<span class='cgroupname' >"+group.group_name+"&nbsp;&nbsp;("+group.post_count+")</span>";if(group.group_title!=""&&group.group_title!=group.group_name)
crow+="<br/><span class='cgrouptitle'>"+group.group_title+"</span>";crow+="</td>\n";crow+="<td class='cgrouprowattr' "+" onmouseover='hl(this);"+popfunc+"' "+" onmouseout='uhl(this);onMouseoutInfo(event,this)' "+" ><img src='/images/menuright.png' /></td>";crow+="</tr>\n";allrows.push(crow);}
txt+=allrows.join("\n");allrows=null;txt+=rtf(count,page_nav,2);display_groups=groups;dd(param).innerHTML=txt;scm("<div class='cgroupheading'>Public Groups</div>");rel();}function fngh(){fetchNewGroupHtml(popNewGroupHtml,"contentarea");}function fetchNewGroupHtml(render_fn,param){execAjax("/geogroups/newgroup3.php",onFetchNewGroupHtml);function onFetchNewGroupHtml(responseText){se("");render_fn(responseText,param);this.obj=null;}}function popNewGroupHtml(responseText,param){ssn(4,0);pushBackFunc("fngh()",true);dd(param).innerHTML=responseText;scm("<div class='cgroupheading'>Create New Group</div>");rel();}function deleteGroup(groupname,backfunc){function onDeleteGroup(response){popDeleteGroup(response.errmsg,backfunc);}
eaq("/geogroups/deletegroup.php","gn="+eu(jsunesc(groupname)),onDeleteGroup,false);}function popDeleteGroup(errmsg,timeoutfunc){se((errmsg=="Success")?"Group Deleted Successfully":errmsg);var dely=(errmsg=="Success")?1000:3000;timeoutfunc=jsunesc(timeoutfunc);if(timeoutfunc&&timeoutfunc!="")
window.setTimeout(timeoutfunc,dely);}function deleteGroupHtml(i,backfunc){se("");var delfn="deleteGroup(\""+htmlesc(display_groups[i].group_name)+"\", \""+backfunc+"\" )";var txt="Are you <b>absolutely</b> sure you want to delete the group:<br>"+"<span class='cgroupname'>"+display_groups[i].group_name+"</span>&nbsp;?"+"<br><span class='ctiphelp'>Note that GeoPosts tagged with only this group will become \"orphaned\"</span>"+"<br><br><input type='button' value='Cancel' onclick='"+backfunc+"'>"+"&nbsp;&nbsp;&nbsp;<input type='button' value='Delete' "+" onclick='"+delfn+"'>";dd("contentarea").innerHTML=txt;var backlink="";if(backfunc)
backlink="<span class='link1' id='backlink' onclick='"+backfunc+"' >[Back]</span>&nbsp;";scm(backlink+"Delete Group");rel();}function fetchEditGroupHtml(i,backfunc){execAjax("/geogroups/newgroup3.php",onFetchEditGroupHtml);function onFetchEditGroupHtml(responseText){se("");popEditGroupHtml(responseText,i,backfunc);this.obj=null;}}function popEditGroupHtml(responseText,i,backfunc){var group=new cloneObject(display_groups[i]);dd("contentarea").innerHTML=responseText;var backlink="";if(backfunc)
backlink="<span class='link1' id='backlink' onclick='"+backfunc+"' >[Back]</span>&nbsp;";scm(backlink+"Edit Group");dd("nggn").value=group.group_name;dd("nggn").disabled=true;dd("ngcreate").value="edit";dd("groupformbutton").value="Update Group";dd("nggt").value=group.group_title;dd("nggd").value=group.group_description;dd("nggp").checked=group.is_private=="1";dd("nggnp").checked=group.needs_permission=="1";dd("ngga").checked=group.is_anonymous=="1";dd("ngrp").checked=group.rp=="1";dd("ngrl").checked=group.rl=="1";dd("ngcp").checked=group.cp=="1";dd("ngcl").checked=group.cl=="1";dd("ngcr").value=group.credits_needed;setIcon(group.iconimg,"ng");group=null;rel();}function fetchDragPostHtml(post_id,lat,lng,addr){addr=jsunesc(addr);fep("edit=1&aid="+post_id+"&drag=1&lat="+lat+"&lon="+lng+"&address="+eu(addr));}function fetchEditPostHtml(post_id){fep("edit=1&aid="+post_id);}function fnah(param,editmode){fnp(param,editmode);}function fep(param){fnp(param,true);}function fnp(param,editmode){if(!getBackFunc())
pushBackFunc("fnah()",true);if(!editmode)editmode=false;if(!param)param="";fetchNewPostHtml(popNewPostHtml,"contentarea",param,editmode);}function fetchNewPostHtml(render_fn,param1,param2,editmode){scm(editmode?"Edit GeoPost":"Create New GeoPost");if(!param2)param2="";url="/geogroups/newposthtml6.php?u="+eu(username)+"&t="+token+"&"+param2;execAjax(url,onFetchNewPostHtml);function onFetchNewPostHtml(responseText){render_fn(responseText,param1,editmode);this.obj=null;}}function popNewPostHtml(responseText,param,editmode){se("");dd(param).innerHTML=responseText;dd("naat").focus();var islocation=dd("naiul").checked;var added=0;if(!editmode&&!islocation){for(var i=0;i<sgs.length;i++)
if(-1==(arrExists(allgroupsnames,sgs[i]))){addChooseGroupE("nagn",sgs[i]);added++;}
setIcon(dd("naicon").value,"na");}else {setIcon(dd("naicon").value,"na");added+=addChooseGroups("nagns","nagn");}
if(added==0)
addChooseGroupE("nagn",username);ptChoose(1,true);scm();scm("<span style='text-align:center;display:block'>"+(editmode?"Edit Post":"Create Post")+"</span>"+"<span style='cursor:pointer' onclick='goBack()'>&#171; Back</span>");rel();}function createNewGroupRequest(render_fn,param){var gn=dd("nggn").value;if(gn.length==0){se("What's a group without a name?");return;}
if(gn.length>30){se("Group name is longer than 30 chars");return;}
var gt=dd("nggt").value;var gd=dd("nggd").value;if(gd.length>512){se("Description exceeds 512 chars");return;}
var gp=dd("nggp").checked?"1":"0";var gnp=dd("nggnp").checked?"1":"0";var ga=dd("ngga").checked?"1":"0";var rp=dd("ngrp").checked?"1":"0";var rl=dd("ngrl").checked?"1":"0";var cp=dd("ngcp").checked?"1":"0";var cl=dd("ngcl").checked?"1":"0";var credits=dd("ngcr").value;var gic=dd("ngicon").value;if(gic=="default")gic="";var createmode=dd("ngcreate").value=="create";var urlparams="gn="+eu(gn)+"&gt="+eu(gt)+"&gp="+eu(gp)+"&gnp="+eu(gnp)+"&ga="+eu(ga)+"&gd="+eu(gd)+"&rp="+eu(rp)+"&rl="+eu(rl)+"&cp="+eu(cp)+"&cl="+eu(cl)+"&gic="+eu(gic)+"&credits="+eu(credits);eaq((createmode?"/geogroups/addgroup.php":"/geogroups/updategroup.php"),urlparams,function(response){render_fn(createmode);},false);}function popCreateNewGroup(createmode){se("Group "+(createmode?"Created":"Updated")+" Successfully");if(!createmode)fps(true);var timeoutfunc='fetchNewGroupHtml( popNewGroupHtml, "contentarea" )';if(dd("backlink"))
timeoutfunc=dd("backlink").onclick;window.setTimeout(timeoutfunc,1000);}function delCookies(){var c=["err","errmsg","erru","erre"];for(i=0;i<c.length;i++)delete_cookie(c[i]);}
var fsupf=false;function fetchSignupHtml(param,errmsg,erru,erre){if(fsupf)return;url="/geogroups/signup.php?redir="+eu(curpageurl);execAjax(url,onFetchSignupHtml);function onFetchSignupHtml(responseText){fsupf=true;dd(param).innerHTML=responseText;dd("suerror").innerHTML=(typeof errmsg=='undefined')?"":errmsg;dd("suu").value=(typeof erru=='undefined')?"":erru;dd("sue").value=(typeof erre=='undefined')?"":erre;msdiv("signindiv",30);dd("signindiv").scrollTop=200;this.obj=null;}}function subgroup(i,timeoutfunc,confirm_credits){if(typeof confirm_credits=="undefined"||!confirm_credits)
confirm_credits=false;subscribeGroup(popSubscribeGroup,"contentarea",display_groups[i].group_name,display_groups[i].group_id,timeoutfunc,confirm_credits);}function subscribeGroup(render_fn,param,groupname,groupid,timeoutfunc,confirm_credits){if(typeof confirm_credits=="undefined"||!confirm_credits)
confirm_credits=false;var gn=groupname;function onSubscribeGroup(response){render_fn(param,response.errmsg,timeoutfunc);}
var params="gn="+eu(gn);if(confirm_credits)
params+="&confirm=1";eaq("/geogroups/subgroup.php",params,onSubscribeGroup,false,0,false,onSubscribeError);function onConfirmSub(confirm){if(confirm&&!confirm_credits){subscribeGroup(render_fn,param,groupname,groupid,timeoutfunc,true);}}function onConfirmPay(confirm){if(confirm){window.location.href="https://"+server_name+"/geoaccount/credits.php";}}function onSubscribeError(response){if(response.errcode==100){showYesNoBox(response.errmsg+". Do you want to continue?",onConfirmSub);}else if(response.errcode==110){showYesNoBox(response.errmsg+". Would you like to view your credits management page?",onConfirmPay);}else serror(response.errmsg);}}function popSubscribeGroup(param,errmsg,timeoutfunc){fps(true);serror(errmsg=="Success"?"Group subscribed":errmsg);timeoutfunc=jsunesc(timeoutfunc);if(timeoutfunc&&timeoutfunc!="")
window.setTimeout(timeoutfunc,1000);}function unsubgroup(i,timeoutfunc){unsubscribeGroup(popUnsubscribeGroup,"contentarea",display_groups[i].group_name,display_groups[i].group_id,timeoutfunc);}function unsubscribeGroup(render_fn,param,groupname,groupid,timeoutfunc){var gn=jsunesc(groupname);eaq("/geogroups/unsubgroup.php","gn="+eu(gn),onUnsubscribeGroup,false);function onUnsubscribeGroup(response){render_fn(param,response.errmsg,groupid,timeoutfunc);}}function popUnsubscribeGroup(param,errmsg,groupid,timeoutfunc){if(sgs.length>0)
removeGroup(groupid,true);fps(true);serror((errmsg=="Success")?"Group unsubscribed":errmsg);timeoutfunc=jsunesc(timeoutfunc);if(timeoutfunc&&timeoutfunc!="")
window.setTimeout(timeoutfunc,1000);}function eu(str){return encodeURIComponent(str);}function geu(name,nid){if(nid=="")return"";return name+"="+encodeURIComponent(dd(nid).value);}function ceu(name,nid){return name+"="+
(dd(nid).checked?"1":"0");}function fetchMyPostGroups(render_fn,param,skip,nr,fetchPosts){eaq("/geogroups/mypostgroups.php","skip="+skip+"&nr="+nr,onFetchMyPostGroups,false);function onFetchMyPostGroups(response){render_fn(response,param);if(fetchPosts&&fetchPosts==true)
fps(true);}}
var marker_icons={};var gIconSize3232=new GSize(32,32);var gShadowSize=new GSize(59,32);var gIconAnchor=new GPoint(16,32);var gInfoWindowAnchor=new GPoint(16,2);var default_icon_name="flag";marker_icons["default"]=getIcon(default_icon_name);marker_icons["def"]=getIcon(default_icon_name);var default_icon=marker_icons["def"];function iconName(iconimg){return(iconimg=="default"||iconimg=="def"||iconimg=="")?default_icon_name:iconimg;}function iconRule(post){if(post.ulocation_time&&post.ulocation_time!=null&&post.ulocation_time!=""){if(post.is_user_location=="1"&&(post.iconimg==""||post.iconimg=="default"))return"mylocation";}
if(post.is_home=="1"&&(post.iconimg==""||post.iconimg=="default"))return"home";return iconName(post.iconimg);}function shadowIcon(name){return"/geogroups/icons/"+name+".shadow.png";}function getIcon(name){var ic=marker_icons[name];if(ic==null){ic=new GIcon();ic.image="/geogroups/icons/"+name+".png";ic.iconSize=gIconSize3232;ic.shadow=shadowIcon(name);ic.iconAnchor=gIconAnchor;ic.infoWindowAnchor=gInfoWindowAnchor;marker_icons[name]=ic;}
return ic;}function addNVTag(){var tcount=pnt(dd("nvtagcount").value);var val1=(tcount==0)?" value='&lt;Name&gt;' ":"";var val2=(tcount==0)?" value='&lt;Value&gt;' ":"";var nv=new Array();for(i=0;i<tcount;i++){var name=dd("nvtagname"+i).value;var value=dd("nvtagvalue"+i).value;nv.push(new Array(name,value));}
var txt="<span id='nvtag"+tcount+"'>"+"<input id='nvtagname"+tcount+"' size='14' maxlength='128' "+val1+"/>:&nbsp;"+"<input id='nvtagvalue"+tcount+"' size='14' maxlength='128' "+val2+"/>"+"</span><br>";dd("nvtags").innerHTML+=txt;for(i=0;i<tcount;i++){dd("nvtagname"+i).value=nv[i][0];dd("nvtagvalue"+i).value=nv[i][1];}
dd("nvtagcount").value=(tcount+1);}function getPost(postid){fetchPost(popGetPost,postid,recenter);}function goPost(postid,recenter,onlybubble,path,nobubble){if(typeof path=="undefined"||!path)
path=false;if(typeof recenter=="undefined"||!recenter)
recenter=false;if(typeof onlybubble=="undefined"||!onlybubble)
onlybubble=false;if(typeof nobubble=="undefined"||!nobubble)
nobubble=false;fetchPost(onlybubble?addAndPopPost:popGoPost,postid,{recenter:recenter,path:path,nobubble:nobubble});}function clearRepopTimeout(){if(repoptimeout!=null){window.clearTimeout(repoptimeout);repoptimeout=null;}}function gotoMarker(i,fromlist){clearRepopTimeout();var post_list=(fromlist?post_response_list:post_response_map);var post=post_list.posts[i];var postid=post.post_id;var pos=shm(mpm,postid,false);if(pos!=-1){onMClk(mpm[pos].gmarker);var latlng=new GLatLng(post.latitude,post.longitude);if(!map.getBounds().containsLatLng(latlng))
mpc(latlng);}else {hipost=post;var latlng=new GLatLng(post.latitude,post.longitude);if(map.getBounds().containsLatLng(latlng))
fps();else mpc(latlng);}}function clickMarker(postid){var pos=shm(mpm,postid,false);if(pos!=-1)
onMClk(mpm[pos].gmarker);}function createNewPostRequest(render_fn,param,marker_id){var post_id=-1;var createmode=true;var val=dd("nacreate").value;if(val!="create"){post_id=val;createmode=false;}
var ismylocation=dd("naiul").checked?true:false;var gns=makeScrapList("nagn");var iconimg=dd("naicon").value;if(iconimg=="default")iconimg="";if(ismylocation&&iconimg=="")
iconimg="mylocation";var picurl=dd("napic").value;if(picurl==null)picurl="";var tags="";var ac=0;var arr=dd("nastags").value.split(",");for(i=0;i<arr.length;i++){var name=trim(arr[i]);if(name!=""&&name!="<Name>"){ac++;tags+="&n"+ac+"="+eu(name);}}
var tagcount=pnt(dd("nvtagcount").value);for(i=0;i<tagcount;i++){var name=trim(dd("nvtagname"+i).value);var value=trim(dd("nvtagvalue"+i).value);if(name!=""&&name!="<Name>"){ac++;tags+="&n"+ac+"="+eu(name);if(value!=""&&value!="<Value>")
tags+="&v"+ac+"="+eu(value);}}
var servl=(ismylocation?"/geogroups/updatemylocation.php?type=add&":(createmode?"/geogroups/addpost.php?":"/geogroups/updatepost.php?"));var url=servl+"u="+eu(username)+"&t="+eu(token)+
(createmode?"":("&ai="+post_id))+
geu("&at","naat")+
geu("&ad","naad")+
ceu("&iul","naiul")+
ceu("&ih","naih")+
geu("&lat","nalat")+
geu("&lon","nalon")+
geu("&alt","naalt")+
geu("&sp","nasp")+
geu("&hd","nahd")+
ceu("&aan","naan")+
geu("&url","naurl")+"&gns="+eu(gns)+
geu("&addr","naaddress")+
geu("&phone","naphone")+"&icon="+eu(iconimg)+"&pic="+eu(picurl)+
geu("&lid","nalid")+"&ntags="+ac+
tags;execAjax(url,onCreateNewPost);function onCreateNewPost(responseText){var response=eval('('+responseText+')');if(response.errcode==0){map.closeInfoWindow();deleteNewMarker(marker_id);render_fn(param,createmode,post_id);}else if(response.errcode==120){if(is_demo)serror("Sign-In To create or edit posts");else signout();}else {se(response.errmsg);}
this.obj=null;}}function popCreateNewPost(param,createmode,post_id){if(!createmode&&post_id!=-1){var pos=shm(mpm,post_id,false);if(pos!=-1){mpm[pos].gmarker.disableDragging();mpm[pos].gmarker.indrag=false;mpm[pos].gmarker.prevLatLng=null;onMClk(mpm[pos].gmarker);}}
se("GeoPost "+(createmode?"Created":"Edited")+" Successfully");nasubgroups=null;fhal();window.setTimeout('goBack()',1000);}
var mpm=new Array();function shm(arr,newidstr,insert){var newid=pnt(newidstr);var h=arr.length,l=-1,m;while(h-l>1)
if(arr[m=h+l>>1].post_id<newid)l=m;else h=m;return h>=arr.length?(insert?h:-1):(arr[h].post_id!=newid?(insert?h:-1):h);}function decrRefCurrentMarkers(){for(var i=0;i<mpm.length;i++){if(defpost==mpm[i].post_id)
continue;if(!mpm[i].gmarker.indrag)
mpm[i].refcount--;}}function deleteMarker(i){GEvent.clearInstanceListeners(mpm[i].gmarker);if(mpm[i].gmarker.mpop&&markerpopvisible)
hidePostPop();if(mpm[i].post_id==curhistid)
removeCurHistLine();map.removeOverlay(mpm[i].gmarker);mpm[i].gmarker=null;mpm[i]=null;mpm.splice(i,1);}function deleteUnusedMarkers(){for(var i=0;i<mpm.length;i++){if(mpm[i].refcount<=0){deleteMarker(i);i--;}}}function resetIndices(){for(var i=0;i<mpm.length;i++){mpm[i].gmarker.myindex=i;}}function addPostMarker(id,iconimg,is_cluster){var pos=shm(mpm,id,true);if(mpm.length==0||pos>=mpm.length||mpm[pos].post_id!=id){var PostMarker={post_id:pnt(id),gmarker:null,refcount:1,iconimg:iconimg,is_cluster:is_cluster};mpm.splice(pos,0,PostMarker);return{created:true,position:pos};}
mpm[pos].refcount=1;return{created:false,position:pos};}function procCluster(post,post_marker){var gmarker=post_marker.gmarker;post_marker.post_count=post.post_count;post_marker.bounds=new GLatLngBounds(new GLatLng(post.minlat,post.minlng),new GLatLng(post.maxlat,post.maxlng));}
var curlabelvisibility=false;function locElevate(gmarker){return GOverlay.getZIndex(gmarker.getLatLng().lat())+100;}
var repoptimeout=null;function addUpdateMarker(post){post.iconimg=iconRule(post);var addobj=addPostMarker(post.post_id,post.iconimg,post.is_cluster);var pos=addobj.position;var ret=true;if(addobj.created){var draggable=(username==post.username);var opts={icon:getIcon(post.iconimg),title:post.post_title,draggable:draggable};var gmarker=null;if(post.is_user_location=="1"){opts.zIndexProcess=locElevate;if(post.picurl=="")
opts.labelText=post.username;else opts.labelText="<img src='/images/camera16.png' >"+post.username;if(post.username.length<=5)opts.labelClass="LabeledMarker_SmallName";gmarker=new LabeledMarker(new GLatLng(post.latitude,post.longitude),opts);}else if(poinames>0){opts.labelClass="LabeledMarker_POI";if(post.picurl=="")
opts.labelText=post.post_title;else opts.labelText="<img src='/images/camera16.png' >"+post.post_title;gmarker=new LabeledMarker(new GLatLng(post.latitude,post.longitude),opts);if(poinames<=0||map.getZoom()<poinames)
gmarker.setLabelVisibility(false);}else {if(post.picurl!=""){opts.labelClass="LabeledMarker_picture";gmarker=new LabeledMarker(new GLatLng(post.latitude,post.longitude),opts);}else gmarker=new GMarker(new GLatLng(post.latitude,post.longitude),opts);}
post.gmarker=gmarker;if(draggable)gmarker.disableDragging();gmarker.indrag=false;gmarker.ismarker="Marker";GEvent.addListener(gmarker,"mouseover",function(latlng){onMMOver(gmarker);});GEvent.addListener(gmarker,"mouseout",function(latlng){onMMOut(gmarker);});GEvent.addListener(gmarker,"dblclick",function(latlng){onMDblClk(gmarker);});mpm[pos].gmarker=gmarker;if(post.is_cluster=="1"){procCluster(post,mpm[pos]);}
map.addOverlay(mpm[pos].gmarker);}else {if(poinames>0){var nvis=(poinames>0&&map.getZoom()>=poinames);if(nvis!=curlabelvisibility&&post.is_user_location=="0"){mpm[pos].gmarker.setLabelVisibility(nvis);}}
if(post.iconimg!=mpm[pos].iconimg){if(hipost==null&&markerpopvisible&&last_poppost==post.post_id){clearRepopTimeout();repoptimeout=window.setTimeout("clickMarker("+post.post_id+")",500);}
deleteMarker(pos);ret=false;}else if(!mpm[pos].gmarker.indrag){var moved=false;var latlng=new GLatLng(post.latitude,post.longitude);if(!mpm[pos].gmarker.getLatLng().equals(latlng)){if(post.post_id==curhistid)
removeCurHistLine();mpm[pos].gmarker.setLatLng(latlng);moved=true;}
if(hipost==null){if(markerpopvisible&&last_poppost==post.post_id){clearRepopTimeout();if(moved||last_poplocation){if(moved)hidePostPop();repoptimeout=window.setTimeout("clickMarker("+post.post_id+")",500);}}else if(moved&&follow_post==post.post_id){window.setTimeout("goPost(follow_post,true,true,false,true)",100);}}}
if(ret&&mpm[pos].is_cluster=="1"&&mpm[pos].post_count!=post.post_count){deleteMarker(pos);ret=false;}}
return ret;}function fhal(){fetchMyHomePost(popMyHomePost);}function fetchMyHomePost(render_fn){eaq("/geogroups/myhomepost.php","",render_fn,false);}
var home_marker=null;function popMyHomePost(response){var post=response.post;if(home_marker){GEvent.clearInstanceListeners(home_marker);map.removeOverlay(home_marker);home_marker=null;}
if(post.post_id>0){var latlng=new GLatLng(post.latitude,post.longitude);home_marker=new GMarker(latlng,{icon:getIcon("home"),title:post.post_title,draggable:true});home_marker.disableDragging();home_marker.indrag=false;home_marker.ishomemarker=true;home_marker.post_id=post.post_id;map.addOverlay(home_marker);if(!home_load_checked&&start_at_home){mpc(latlng);}}
if(!home_load_checked){home_load_checked=true;}}
var reqs=0;function popFetchedPosts(posts){var hifound=false;var prevmpop=markerpopvisible;var prevlastpopid=last_poppost;var prevpoplocation=last_poplocation;var prevfollowpost=follow_post;var changed_markers=new Array();decrRefCurrentMarkers();for(i=0;i<posts.length;i++){if(hipost!=null&&hipost.post_id==posts[i].post_id)hifound=true;if(!addUpdateMarker(posts[i]))
changed_markers.push(i);}
deleteUnusedMarkers();curlabelvisibility=(poinames>0&&map.getZoom()>=poinames);for(i=0;i<changed_markers.length;i++)
addUpdateMarker(posts[changed_markers[i]]);if(hipost!=null&&!hifound&&map.getBounds().containsLatLng(new GLatLng(hipost.latitude,hipost.longitude))){addUpdateMarker(hipost);hifound=true;}
resetIndices();if(hifound){clickMarker(hipost.post_id);hipost=null;}else if(prevmpop&&prevlastpopid!=-1&&prevpoplocation&&(-1==shm(mpm,prevlastpopid,false)||defpost==prevlastpopid)){goPost(prevlastpopid,true,!(selectedTab==13&&selectedNav==3&&lastgopost==prevlastpopid),false);}else if(follow_post!=-1&&(-1==shm(mpm,follow_post,false))){goPost(follow_post,true,true,false,true);}}function addGroupByName(groupname){url="/geogroups/getgroupid.php?u="+username+"&t="+token+"&gn="+eu(groupname);execAjax(url,onGetGroupId,1);function onGetGroupId(rtxt){var r=eval('('+rtxt+')');if(r.errcode==0){addToNV(selgroups,r.group_name,r.group);addGroupE(r.group.group_id,r.group.group_name);if(r.group.default_post_id!=0)
goPost(r.group.default_post_id,true,true,true);}else if(r.errcode==120){if(is_demo)serror("Sign-In to access this group");else signOut();}else {addGroupE(allgroupsids[is_demo?1:0],allgroupsnames[is_demo?1:0]);se(r.errmsg+", searching in public groups..");window.setTimeout("fallg( 0, '"+groupname+"')",3000);}
this.obj=null;}}
var last_world_total=-1;var demouser="webuser";var demotoken="c63d2dec2882a407e0e6bf192b700f036cce25f5e6c57612f6b4cec3f01ce2c1";var post_response_map=null;var last_selected_pid="";var browse_post=-1;function nextPost(fromlist){var response=(fromlist?post_response_list:post_response_map);if(!response)return;var posts=response.posts;if(posts.length==0)return;if(browse_post!=-1){posthi(dd("pl"+posts[browse_post].post_id),false);;}
browse_post++;if(browse_post>=posts.length)browse_post=0;selPost(posts[browse_post].post_id);gotoMarker(browse_post,fromlist);}function prevPost(fromlist){var response=(fromlist?post_response_list:post_response_map);if(!response)return;var posts=response.posts;if(posts.length==0)return;if(browse_post!=-1){var lastid="pl"+posts[browse_post].post_id;posthi(dd(lastid),false);}
browse_post--;if(browse_post<0)browse_post=posts.length-1;if(browse_post>=posts.length)browse_post=0;selPost(posts[browse_post].post_id);gotoMarker(browse_post,fromlist);}function selPost(post_id){var pid="pl"+post_id;if(pid!=last_selected_pid)
posthi(dd(last_selected_pid),false);last_selected_pid=pid;var obj=dd(last_selected_pid);if(obj){posthi(obj,true);var maxy=getClientHeight();var pos=findPos(obj);var container=dd("contentarea");var contpos=findPos(container);if((pos.top+obj.offsetHeight+10)>maxy){var moveup=(pos.top+obj.offsetHeight+10)-maxy;container.scrollTop+=moveup;}else if(pos.top<(contpos.top+container.scrollTop)){var movedown=(contpos.top+container.scrollTop-pos.top);container.scrollTop-=movedown;}}}
var fav_list="";function addFavorite(pid,obj){var fv=get_cookie("fv");fv=addIfNotExist(fv,pid);set_cookie("fv",fv,2050,12,31,"/");fav_list=fv;serror("Added To Favorites");setNumFavs(fav_list);if(obj){obj.innerHTML="Remove From Favorites";obj.onclick=function(){remFavorite(pid,obj);};}}function remFavorite(pid,obj){var fv=get_cookie("fv");fv=removeFromList(fv,pid);set_cookie("fv",fv,2050,12,31,"/");fav_list=fv;fps(true);setNumFavs(fav_list);serror("Removed From Favorites");if(obj){obj.innerHTML="Add To Favorites";obj.onclick=function(){addFavorite(pid,obj);};}}
var worldwide_posts=true;var hipost=null;function popWorldList(response){if(response.world_total>=0)
last_world_total=response.world_total;setAuthor(response.author,false);post_response_list=response;if(selectedNav==3&&worldwide_posts&&gpostmode=="postlist")
popPostsList(response,true);browse_post=-1;rel();}function locCrumb(post,shist){var s="";if(post.speed!="")
s+="<span class='cpostl'>Speed </span>"+post.speed;if(post.heading!="")
s+=(s!=""?",&nbsp;":"")+"<span class='cpostl'>Heading </span>"+getHeading(post.heading);if(post.altitude&&post.altitude!="null"&&post.altitude!=""&&post.altitude!="0ft"&&post.altitude!="0m"&&post.altitude!="0")
s+=(s!=""?",&nbsp;":"")+"<span class='cpostl'>Altitude </span>"+post.altitude;return s;}function popPostsList(response,world){if(!world)world=false;ssn(5,3);if(!response)return;post_response_list=response;var gi=-1;var dg=null;var m1head="";var mback="";var mwid="";var mpop="";var shist=false;var is1gowned=false;var gn1g="";var dpid=0;if(isonegroup()){var gn=sgs[0];gn1g=escape(gn);gi=fgroup(gn);if(gi>=0){dg=display_groups[gi];shist=(dg.nspace!="");mpop="<span style='float:right;vertical-align:bottom;'  ><img onmouseover='showGroupPop(this,"+(dg.is_subscribed=="1"?"true":"false")+","+gi+",\"fps(true)\");' src='/images/menuright.png' /></span>";shobj("ldownload",shist);is1gowned=(dg.is_owned=="1");dpid=dg.default_post_id;}}
if(sgs.length>0){for(i=0;i<sgs.length;i++){if(m1head!="")m1head+=", ";m1head+="<a "+(style=="widget"?"target='__exlink'":"")+" href='"+groupUrl(sgs[i])+"' style='text-decoration:none;' class='cgroupheading'  >"+sgs[i]+"</a>";}}else if(author!="")
m1head+="<a href='"+userUrl(author)+"' style='text-decoration:none;color:brown' class='cgroupheading'  >"+author+"</a>";m1head=mpop+m1head;if(style!="widget"&&defgroup!="syncpro"){var surl=getStateUrl();mwid="<span style='float:right' onmouseover='this.childNodes[0].href=getWidUrl();this.childNodes[2].href=getStateUrl()' >"+"<a class='caction' title='Embed this map in other websites' href='"+getWidUrl()+"' target='__testwid' >Embed &#187;</a>&nbsp;&nbsp;"+"<a class='caction' title='Get A Link to this page configuration' href='"+surl+"' target='__exlink' >Link &#187;</a>&nbsp;";mwid+="<a href='http://www.addthis.com/bookmark.php' onmouseover='return addthis_open(this, \"\", \""+surl+"\", \"\")' onmouseout='addthis_close()' onclick='return addthis_sendto()'><img src='http://s7.addthis.com/static/btn/sm-share-en.gif' height='16' border='0' alt='Bookmark or Share' style='vertical-align:bottom;' /></a>&nbsp;"+"<a title='Subscribe To RSS Feed' href='"+getFeedUrl()+"'/><img border='0' src='/images/rssicon.gif'  style='vertical-align:bottom;' /></a>";mwid+="</span>";}
shobj("ldiscuss",isonegroup());var h="<div class='cgroupheading'>"+m1head+"</div>";t=null;if(sgs.length==1)
t=getNVVal(selgroups,sgs[0]);var ismy=false;if(!is_demo&&t){ismy=(t&&(t.is_subscribed==1));}else ismy=(username!=demouser);if(!nochangegroup){if(ismy)
mback="<span style='text-decoration:none;color:#5890e5;cursor:pointer' onclick='goMyGroups()'>&#171; My Groups</span>";else mback="<span style='text-decoration:none;color:#5890e5;cursor:pointer' onclick='fallg()'>&#171; Public Groups</span>";}
if(t)
h+="<div style='font-weight:normal;font-size:15px;color:#666666;text-align:center''>"+t.group_title+"</div>";scm(h+mwid+mback);var pcls="spic"+listsize;var postcls="cpostname";if(listsize!="large")postcls="cpostnamesmall";var posts=response.posts;var total=pnt((world?response.world_total:response.posts.length));var start=pnt(response.skip);var count=pnt(response.posts.length);var pages=resultHeader(start,count,total,"Posts");var fn="fpw";var page_nav="";if(world)
page_nav+="&nbsp;"+
getPageNav(start,count,total,"fpw(0)","fpw("+((start-15)>=0?(start-15):0)+")","fpw("+(start+count)+")");else fn="mpMenu(0)";var navheader=resultTableStart(1);var timeoutfunc=world?("mpMenu(1,false,"+start+")"):fn;pushBackFunc(timeoutfunc,true);if(!nosignin&&!noedit)
dd("delallposts").style.visibility=((response.author==username)?'visible':'hidden');var classname="";var pid="";navheader+=(resultTableNav(pages,page_nav,1));navheader+="</table>";var txt=navheader;var allrows=new Array();allrows.push(resultTableStart(1));var selpid="";var fava=fav_list.split(",").sort();for(i=0;i<posts.length;i++){var post=posts[i];var owned=(post.username.toLowerCase()==username.toLowerCase());var dt=new Date((post.is_user_location=="1"?post.ulocation_time:post.ulast_modified)*1000);var sdt=months[dt.getMonth()]+" "+dt.getDate()+","+dt.getFullYear();var mt=86400000;if(defgroup=="syncpro"||(post.is_user_location=="1"&&((new Date())-dt)<mt))
sdt=getShortDate(dt);var toktitle=flattendash(post.post_title);pid="pl"+post.post_id;if(pid==last_selected_pid)
selpid=pid;var crow="<tr>"+"<td class='cpost' style='width:100%;' "+" id='"+pid+"' "+" onmouseover='onPMOver("+post.post_id+")' "+" onmouseout='onPMOut("+post.post_id+")' "+" onclick='browse_post="+i+";selPost("+post.post_id+");gotoMarker("+i+",true);' "+" ondblclick='onPDblClk("+post.post_id+");' "+" title='Click to open, dbl-click to zoom-in' "+" >";crow+="<span style='float:right;text-align:right;'>"+"<span style='font-size:90%;color:#999999' >"+sdt+"</span>"+"<br/><img src='/geogroups/icons/"+iconRule(post)+".png' />"+"</span>";var pinfo=getPostTitle(post);crow+="<span class='"+postcls+"'  >"+pinfo.title+"</span>";if(pinfo.sub_title!="")
crow+="<br/><span class='"+postcls+"'  >"+pinfo.sub_title+"</span>";if(post.address!="")
crow+="<br/>"+post.address;if(post.path_id!=0)
crow+="<br/><span class='caction' style='font-size:12px;' title='Show attached track on map' "+" onclick='fetchLog(\""+post.post_title+"\","+post.path_id+");cp(event)' "+" >Plot Track On Map&#187;</span>";var s=locCrumb(post,owned||shist);if(s!="")
crow+="<br/>"+s;mt=(pinfo.is_location?86400000:3600000);if(((new Date())-dt)<mt)
crow+="<br/>"+post.ago+" ago";if(pinfo.is_location&&(shist||owned))
crow+="&nbsp;&nbsp;&nbsp;<span class='caction' title='History &#187;' "+" onclick='showHistory(\""+post.username+"\");cp(event);' "+" >History &#187;</span>";if(post.picurl!="")
crow+="<br style='clear:both'/>"+"<img class='"+pcls+"' style='border:2px solid white;' "+" src='/pics/"+post.picurl+"/"+toktitle+"' "+"onload='if (this.width > 320 ) this.width=\"320\";' /><br style='clear:both;'/>";if(!nofilters){crow+="<br/><span class='caction cfav' style='float:right;'  title='' "+" onclick='";if(!fav_only&&-1==bsearch(fava,post.post_id))crow+="addFavorite("+post.post_id+",this)'>Add To Favorites";else crow+="remFavorite("+post.post_id+",this)'>Remove From Favorites";crow+="</span>";}
if(!noauthor)crow+="<span class='cpostl'>Posted By: </span>"+showUser(post.username);crow+="<br style='clear:both;'/><span style='float:right;'>";var sedit=((owned&&!noedit&&!nosignin)?1:0);if(sedit||(is1gowned&&!noedit&&!nosignin))
crow+="<span class='caction' title='Post Actions' "+"onclick='spa(this,"+i+");cp(event);' >More &#187;</span>&nbsp;&nbsp;";crow+=postlinks(post);crow+="</span>";crow+="<span class='ccomments' title='Comments' onclick='goPost("+post.post_id+")' >"+
(post.comment_count>0?(post.comment_count+" "):"")+"Comments &#187;</span>";if(!noauthor&&!owned&&post.username!="anonymous"&&post.username!="many"&&!nosignin)
crow+="&nbsp;&nbsp;&nbsp;<span class='caction' title='Send Private Message' onclick='msgSend(\""+post.username+"\")' >"+"Private Message &#187;</span>";crow+="</td>";crow+="</tr>\n";allrows.push(crow);}
txt+=allrows.join("\n");txt+=rtf(count,page_nav,1);allrows=null;if(total==0&&dg&&dg!=null&dg.is_subscribed!="1"){txt+=getGroupPopHtml(dg,gi,false,"fps(true)");}
dd("contentarea").innerHTML=txt;posthi(dd(selpid),true);se("");ptChoose(0,true);if(dd('cblocationsonly'))dd('cblocationsonly').checked=locations_only;rel();}function onAuthor(){var empty=false;var o=dd('author');if(o.value==""||o.value=="<username>"){o.value="<username>";o.style.color="lightgrey";empty=true;}else o.style.color="brown";return empty;}function setAuthor(lauthor,call){if(nochangegroup&&defauthor!=""&&lauthor!=defauthor)return;var txt="";if(lauthor!=""){txt=getScrap("user: "+lauthor,"setAuthor(\"\",true)","#a06020","mu"+lauthor);}
dd("mapusers").innerHTML=txt;author=lauthor;if(dd('author')){if(author!=""){dd('author').value=author;dd('cbauthor').checked=true;}else {dd('author').value="<username>";dd('cbauthor').checked=false;}
onAuthor();}
if(call&&call==true)
fps(true);}function updatePostCount(){var c=0;for(i=0;i<mpm.length;i++)
c+=mpm[i].is_cluster=="1"?pnt(mpm[i].post_count):1;dd("mapposts").innerHTML="Showing <b>"+
c+"</b>"+
(last_world_total>0?(" of "+last_world_total):"")+" GeoPosts From";}function popPosts(response){if(response.world_total>=0)
last_world_total=response.world_total;setAuthor(response.author,false);popFetchedPosts(response.posts);post_response_map=response;if(!worldwide_posts){post_response_list=response;if(selectedNav==3&&gpostmode=="postlist"){popPostsList(response,false);}}
updatePostCount();rel();if(response.max_discuss_id>0&&response.max_discuss_id>max_discuss_id&&show_discuss)
discuss_timer=window.setTimeout("checkDiscussion("+response.max_discuss_id+")",3000);}
var orig_defpost=-1;function fetchPost(render_fn,postid,param){clearRepopTimeout();function onFetchPost(responseText){var response=eval('('+responseText+')');if(response.errcode==0){if(passes(response.post)){if(defpost==postid){orig_defpost=defpost;defpost=response.post.post_id;}
render_fn(response.post,param);}}else if(response.errcode==120){if(is_demo)serror("Sign-In to view this post");else signOut();}else if(response.errcode==4||response.errmsg.indexOf('Post Not Found')>=0){if(is_demo){serror("Please sign-in to view this post");showSignIn();}else {if(postid.indexOf("mylocation-")>=0){var r=postid.substr(11);requestUser(r);}
serror("You do not have permission to view this post");}}
if(defpost==postid||(typeof response.post!="undefined"&&defpost==response.post.post_id))
needpostinit=false;}
execAjax("/geogroups/getpost.php?"+"u="+username+"&t="+token+"&ai="+eu(postid)+"&hist=1",onFetchPost,1);}function addLine(line){return(line==""||line==null)?"":("<br>"+line);}function streetAddress(post){if(post.address!=null&&post.address!="")return post.address;return"";}
var ml=" onmouseover='hl(this);' onmouseout='uhl(this);' ";var last_marker_pop=null;function fetchDragPostAddress(gmarker,latlng){showWaitCursor(true,1);geocoder.getLocations(latlng,updateAddress);function updateAddress(response){showWaitCursor(false,1);if(response&&response.Status.code==200){gmarker.dragaddress=response.Placemark[0].address;onMClk(gmarker);}}}function dragPost(gmarker){gmarker.enableDragging()
gmarker.closeInfoWindow();gmarker.indrag=true;gmarker.prevLatLng=gmarker.getLatLng();GEvent.addListener(gmarker,"dragend",function(latlng){fetchDragPostAddress(gmarker,latlng);});}function cancelDragPost(gmarker){gmarker.disableDragging();gmarker.closeInfoWindow();gmarker.indrag=false;gmarker.setLatLng(gmarker.prevLatLng);gmarker.prevLatLng=null;onMClk(gmarker);}function getPostNav(){return"<span style='white-space:nowrap'>"+"<img src='/images/refresh-24.png' \
           id='refreshbutton' onclick='fps(true)' title='Refresh' \
           class='tbtn' \
           onmouseover='this.className=\"tbtnhi\"' \
           onmouseout='this.className=\"tbtn\"' \
          />"+"<img src='/images/post-back-24.png'  \
          onclick='window.setTimeout(\"prevPost(true)\", 20);' \
          title='Previous Post' \
          class='tbtn' \
          onmouseover='this.className=\"tbtnhi\"' \
          onmouseout='this.className=\"tbtn\"' \
       /> "+"<img src='/images/post-next-24.png' \
           onclick='window.setTimeout(\"nextPost(true)\", 20);' title='Next Post' \
           class='tbtn' \
           onmouseover='this.className=\"tbtnhi\"' \
           onmouseout='this.className=\"tbtn\"' \
       />"+"</span>";}function upCase(str){if(!str||str=="")return str;return str.charAt(0).toUpperCase()+str.substr(1);}function ruleValue(name,val){if((name.substr(0,4)=="date"||(name.length>=4&&name.substr(name.length-4,4)=="time"))&&val!=""){var m=Date.parse(val);if(isNaN(m)){}else val=getShortDate(new Date(m));}else if(name=="Groups")
val=joinWith(val.split(","),", ",(nochangegroup?groupName:groupLink));else if((val+"").substr(0,7)=="http://"||(val+"").substr(0,8)=="https://")
val="<a target='_new' href='"+val+"' ><span class='link1'>"+val+"</span></a>";return val;}function addNV(name,value){if(name&&value&&value!=""&&!(name.toLowerCase()=="altitude"&&(value=="0ft"||value=="0m")))return"<tr><td class='ctagname' style='padding:0px;' >"+
upCase(name)+":</td><td class='ctagval' style='padding:0px;word-wrap:break-word;word-break:break-all;white-space: -moz-pre-wrap;text-wrap:unrestricted;' >"+
ruleValue(name,value)+"</td></tr>";else return"";}function resizeToMax(id){var img=document.getElementById(id);myImage=new Image();myImage.src=img.src;var w=myImage.width;var h=myImage.height;var asp=w/h;if(w>250){w=250;h=w/asp;}
if(h>250){h=250;w=h*asp;}
img.style.height=h;img.style.width=w;}function passes(post){var fails=((locations_only&&post.is_user_location=="0")||(pois_only&&post.is_user_location=="1")||(pics_only&&post.picurl=="")||(author!=""&&author.toLowerCase()!=post.username.toLowerCase()));return(!fails);}function popGetPost(post){post.is_cluster=0;addUpdateMarker(post);resetIndices();updatePostCount();}function addAndPopPost(post,params){popGetPost(post);var lg=new GLatLng(post.latitude,post.longitude);if(params.recenter&&!map.getBounds().containsLatLng(lg))
mpc(lg);if(!params.nobubble){var pos=shm(mpm,post.post_id,false);if(pos!=-1)
popPost(post,mpm[pos].gmarker);}else if(post.is_user_location=="1"){showPostHist(post);if(!markerpopvisible)postScrap(post);}
if(post.path_id!=0)
window.setTimeout("fetchLog(\""+post.post_title+"\","+post.path_id+",true)",3000);}function postlinks(post){var txt="";if(post.is_user_location=="1"&&post.username!="anonymous"){txt+="<a target='__addig' class='cbaction' title='Add as Gadget To Your iGoogle Page' href='"+ggPostUrl(post)+"' ><span class='caction'>iGoogle &#187;</span></a>&nbsp;&nbsp;";txt+="<a target='__testwid' class='cbaction' title='Get copy/paste code to embed in other websites' href='"+wLocUrl(post)+"' ><span class='caction'>Embed &#187;</span></a>&nbsp;&nbsp;";}
txt+="<a class='cbaction' target='__exlink' title='Get A Link To This Post' href='"+postUrl(post)+"' ><span class='caction'>Link &#187;</span></a>";return txt;}
var lastgopost=-1;function popGoPost(post,params){pushBackFunc("goPost("+post.post_id+")",true);gpostmode="viewpost";ptChoose(2);post.is_cluster=0;var pcls="spic"+listsize;var postcls="cpostname";if(listsize!="large")postcls="cpostnamesmall";var isz=(listsize=="large"?320:(listsize=="med"?200:120));var cmttext="";if(lastgopost==post.post_id&&dd("ccmt")&&dd("ccmt").value!=""){cmttext=dd("ccmt").value;}
lastgopost=post.post_id;hideSubNavs();var toktitle=flattendash(post.post_title);var pinfo=getPostTitle(post);var h="<div class='"+postcls+"' style='text-align:center'><img style='float:right' src='/geogroups/icons/"+iconRule(post)+".png' />"+
pinfo.title;if(pinfo.sub_title!="")h+="<br/>"+pinfo.sub_title;h+="</div>";if(backCount()>1)
h+="<span style='color:#5890e5;cursor:pointer;text-align:left' onclick='goBack(1)' >&#171; Back</span>";scm(h);var ptags=getPostTags(post);var owned=(post.username.toLowerCase()==username.toLowerCase());var dt=new Date((post.is_user_location=="1"?post.ulocation_time:post.ulast_modified)*1000);pid="pl"+post.post_id;if(pid==last_selected_pid)
selpid=pid;var crow="<div class='cpost'  "+" ondblclick='onPDblClk("+post.post_id+");' "+" >";crow+="<span style='float:right;text-align:right;'>"+"<span style='font-size:90%;color:#999999' >"+months[dt.getMonth()]+" "+dt.getDate()+","+dt.getFullYear()+"</span>"+"<br/>"+"</span>";if(post.address!="")
crow+=post.address+"<br/>";var s=locCrumb(post,owned);if(s!="")crow+=s+"<br/>";if(!noauthor)crow+="<span class='cpostl'>Posted By: </span>"+showUser(post.username);if(!noauthor&!owned&&post.username!="anonymous"&&post.username!="many"&&!nosignin)
crow+="&nbsp;&nbsp;&nbsp;<span class='caction' title='Send Private Message' onclick='msgSend(\""+post.username+"\")' >"+"Private Message &#187;</span>";if(post.path_id!=0)
crow+="<br/><span class='caction' style='font-size:12px;' title='Show attached track on map' "+" onclick='fetchLog(\""+post.post_title+"\","+post.path_id+");cp(event)' "+" >Plot Track On Map&#187;</span>";if(post.picurl!=""){crow+="<br style='clear:both'/>"+"<img class='"+pcls+"' style='border:2px solid white;display:none;' "+" src='/pics/"+post.picurl+"/"+toktitle+"' "+"onload='if (this.width > "+isz+" ) this.width="+isz+";this.style.display=\"\"' /><br style='clear:both;'/>";}
if(post.url&&post.url!="")
crow+="<br/><span class='cpostl'>Website: </span><a style='font-size:90%;color:#5890e5;text-decoration:underline;word-break:break-all;word-wrap:break-word;text-wrap:unrestricted;' target='_new' "+ml+" href='"+post.url+"'>"+addBreaks(post.url)+"</a>";if(post.post_description!="")
crow+="<br/><span class='cpostl'>Notes: </span>"+post.post_description;crow+="<table>";crow+=addNV("Groups",post.group_names);if(ptags.tags!="")
crow+=addNV("Tags",ptags.tags);if(ptags.nvtags!="")
crow+=ptags.nvtags;crow+="</table>";crow+="<br /><span style='float:right;'>";if(owned&&pinfo.is_location)
crow+="<span class='caction' title='History &#187;' "+" onclick='showHistory(\""+post.username+"\");cp(event);' "+" >History &#187;</span>&nbsp;";if(owned&&!nosignin&&!noedit)
crow+="<span class='caction' "+"onclick='fetchEditPostHtml("+post.post_id+")'>Edit &#187;</span>&nbsp;&nbsp;"+"<span class='caction' "+" onclick='deletePostHtml("+
post.post_id+","+(post.is_home?"true":"false")+", \""+escape(post.post_title)+"\")' >Delete &#187;</span>&nbsp;&nbsp;";crow+=postlinks(post);crow+="</span>";crow+="<div id='commentarea'></div>";crow+="</div>";dd("contentarea").innerHTML=crow;scom(post.post_id,0,cmttext);if(params.recenter)
addAndPopPost(post,params);}function getPostTitle(post){var is_location=(post.ulocation_time&&post.ulocation_time!=null&&post.ulocation_time!="");var is_my_location=(is_location&&(post.username.stricmp(username)));var obj={title:post.post_title,sub_title:"",is_location:is_location,is_my_location:is_my_location};if(is_location){if(is_my_location){if(post.post_title!="My Location"){obj.title="My Location";obj.sub_title="("+post.post_title+")";}}else {obj.title=post.username+"'s Location";if(post.post_title!="My Location"){obj.sub_title+="("+post.post_title+")";}}}
return obj;}function getPostTags(post){var tags="";var nvtags="";for(var i=0;i<post.nvtags.length;i++){if(post.nvtags[i].value=="")
tags+=(tags==""?"":", ")+post.nvtags[i].name;else {nvtags+=addNV(post.nvtags[i].name,post.nvtags[i].value);}}
return{tags:tags,nvtags:nvtags};}
var last_poppost=-1;var last_poplocation=false;var last_popuser="";var follow_post=-1;function addBreaks(val){if(val=="")return"";var len=val.length;var v="";var sep="&#8203;";var seplen=sep.length;for(var i=25;i<len;i+=(25+seplen)){v=val.substr(0,i)+sep+val.substr(i);seplen+=sep.length;val=v;}
return val;}function setUser(name){setAuthor(name,true);if(selectedTab!=5||selectedNav!=3)
goMenu(5);}function showUser(uname){return"<span class='cusername' title='View Posts By This User' style='cursor:pointer;text-decoration:underline' onclick='setUser(\""+uname+"\");cp(event)' >"+uname+"</span>";}function agoDate(dt){}function toggleFollow(pid,obj){var f=!(follow_post==pid);obj.className=f?"cfollowon":"cfollow";obj.onclick=function(){toggleFollow(pid,obj);};follow_post=f?pid:-1;}function popPost(post,gmarker){last_marker_pop=gmarker;last_poppost=post.post_id;last_poplocation=(post.is_user_location=="1");last_popuser=post.username;if(last_poplocation&&follow_post!=last_poppost)
follow_post=-1;postScrap(post);showPostHist(post);var lat=post.latitude;var lng=post.longitude;var addr=streetAddress(post);if(gmarker.indrag){lat=gmarker.getLatLng().lat();lng=gmarker.getLatLng().lng();addr=gmarker.dragaddress;}else gmarker.dragaddress=addr;var ptags=getPostTags(post);var pinfo=getPostTitle(post);var dt=new Date((post.is_user_location=="1"?post.ulocation_time:post.ulast_modified)*1000);var sdt=months[dt.getMonth()]+" "+dt.getDate()+","+dt.getFullYear();var mt=86400000;if(defgroup=="syncpro"||post.is_user_location=="1"&&((new Date())-dt)<mt)
sdt=getShortDate(dt);var mhtml="<span style='float:right;text-align:right;margin-right:10px;'>"+"<span style='font-size:90%;color:#999999' >"+sdt+"</span>";if(post.picurl=="")
mhtml+="<br/><img src='/geogroups/icons/"+iconRule(post)+".png' />";mhtml+="</span>";mhtml+="<span class='cpostnamedisp'>"+pinfo.title+"</span><br/>";if(post.picurl!=""){mhtml+="<input id='rpic' type='hidden' value='"+post.picurl+"' />"+"<span style='float:right'><span id='cpic'>"+
postPic(post.picurl)+"</span><br/><img style='margin:3px;' title='Rotate' src='/images/rotate16.png' "+" onclick='rotateDispPic(\"rpic\");' />"+"<img style='margin:3px;' title='View Full Size' src='/images/enlarge16.png' "+" onclick='viewFullSize(\"rpic\");' />"+"</span>";}
if(pinfo.sub_title!="")
mhtml+="<span class='cpostnamedisp'>"+pinfo.sub_title+"</span><br/>";if(post.path_id!=0)
mhtml+="<span class='caction' style='font-size:12px;' title='Show attached track on map' "+" onclick='fetchLog(\""+post.post_title+"\","+post.path_id+");cp(event)' "+" >Plot Track On Map&#187;</span><br/>";if(addr!="")
mhtml+="<span style='word-break:break-all'>"+addr+"</span><br/>";mhtml+="<span class='link1' onclick='mpc(new GLatLng( "+lat+","+lng+"), 16)' "+ml+" >Zoom-In</span>&nbsp;("+
parseFloat(lat).toFixed(4)+", "+parseFloat(lng).toFixed(4)+")<br/>";if(!noauthor)mhtml+="<span class='cpostl'>Posted By: </span>"+showUser(post.username);mt=(pinfo.is_location?86400000:3600000);if(((new Date())-dt)<mt){mhtml+="<br/>"+post.ago+" ago";if(pinfo.is_location){mhtml+="&nbsp;<span class='"+(post.post_id==follow_post?"cfollowon":"cfollow")+"' "+" title='Automatically Pan Map To Keep in View' "+" onclick='toggleFollow("+post.post_id+",this)' >Follow On Map</span>";}}
var purl=post.url;if(purl&&purl!=""&purl.length>30&&post.picurl!="")
purl=purl.substr(0,30)+"...";if(purl!="")
mhtml+="<br/><a style='font-size:90%;color:blue;text-decoration:underline;word-break:break-all;word-wrap:break-word;' target='_new' "+ml+" href='"+post.url+"'>"+purl+"</a>";if(post.post_description&&post.post_description!="")
mhtml+="<br/><span class='cpostl'>Notes: </span><span style='font-size:11px;'>"+post.post_description+"</span>";mhtml+="<table cellspacing='0' cellpadding='0' >";mhtml+=addNV("Speed",post.speed)+
addNV("Altitude",post.altitude)+
addNV("Heading",getHeading(post.heading))+
addNV("Phone",post.phone);if(post.group_names!="")
mhtml+=addNV("Groups",post.group_names);if(ptags.tags!="")
mhtml+=addNV("Tags",ptags.tags);if(ptags.nvtags!="")
mhtml+=ptags.nvtags;var clink="goPost("+post.post_id+")";var comments="<span class='ccomments' onclick='"+clink+"'>Comment On This Post</span>";if(post.comment_count>0)
comments=comments+"&nbsp;&nbsp;&nbsp;<span class='ccomments' onclick='"+clink+"' >"+"View All Comments("+post.comment_count+")</span>&nbsp;"
mhtml+="</table>";mhtml+=comments;mhtml+="<br/>";if(post.username==username&&!nosignin&&!noedit){if(gmarker.indrag==true)
mhtml+="<span class='link3' "+ml+" onclick='fetchDragPostHtml("+post.post_id+", "+lat+", "+lng+", \""+htmlesc(addr)+"\")' >[Set As New Position]</span>&nbsp;<span class='link3' "+ml+" onclick='cancelDragPost(last_marker_pop);' >[Cancel Drag]</span>";else mhtml+="<span class='caction' title='Edit this post' "+" onclick='fetchEditPostHtml("+post.post_id+")'>Edit</span>"+"&nbsp;<span class='caction' title='Make this marker draggable to change location' "+" onclick='dragPost(last_marker_pop);' >Drag</span>";mhtml+="&nbsp;<span class='caction' title='Delete this post..' "+" onclick='deletePostHtml("+
post.post_id+","+(post.is_home?"true":"false")+", \""+escape(post.post_title)+"\")'>Delete..</span>&nbsp;&nbsp;";if(pinfo.is_location){mhtml+="<span class='caction' title='History &#187;' "+" onclick='showHistory(\""+post.username+"\");' "+" >History &#187;</span>&nbsp;&nbsp;";}}
mhtml+=postlinks(post);mhtml+=(post.picurl==""?"&nbsp;":"<br/>");if(!nofilters){mhtml+="<span class='caction cfav' style='title='' "+" onclick='";if(-1==arrExists(fav_list.split(","),post.post_id))mhtml+="addFavorite("+post.post_id+",this)'>Add To Favorites";else mhtml+="remFavorite("+post.post_id+",this)'>Remove From Favorites";mhtml+="</span>";}
selPost(post.post_id);showmarkerpop(gmarker,mhtml);if(post.picurl!=""&&dd('bigpicdiv').style.visibility=='visible')
viewFullSize('rpic');else dd('bigpicdiv').style.visibility='hidden';}function deletePost(post_id,is_home,backfunc){eaq("/geogroups/deletepost.php","ai="+post_id,onDeletePost,false);function onDeletePost(response){popDeletePost(response.errmsg,is_home,post_id,backfunc);}}function popDeletePost(errmsg,is_home,post_id,timeoutfunc){se((errmsg=="Success")?"Post Deleted Successfully":errmsg);if(last_poppost==post_id){last_poppost=-1;if(markerpopvisible)
hidePostPop();}
if(follow_post==post_id)follow_post=-1;if(defpost==post_id){defpost="";}fps(true);if(is_home)fhal();var dely=(errmsg=="Success")?1000:3000;timeoutfunc=jsunesc(timeoutfunc);if(timeoutfunc&&timeoutfunc!="")
window.setTimeout(timeoutfunc,dely);}function deletePostHtml(post_id,is_home,post_title){if(!is_home)is_home=false;post_title=unescape(post_title);var backfunc="goBack()";se("");var delfn="deletePost("+post_id+", "+(is_home?"true":"false")+", \""+backfunc+"\" )";var txt="Are you sure you want to delete the GeoPost:<br>"+"<span class='cgroupname'>"+post_title+"</span>&nbsp;?"+"<br><br><input type='button' value='Cancel' onclick='"+backfunc+"'>"+"&nbsp;&nbsp;&nbsp;<input type='button' value='Delete' "+" onclick='"+delfn+"'>";dd("contentarea").innerHTML=txt;var backlink="";if(backfunc)
backlink="<span class='link1' id='backlink' onclick='"+backfunc+"' >[Back]</span>&nbsp;";scm(backlink+"Delete GeoPost");rel();}function setAsDefault(pid,group_name,backfunc){eaq("/geogroups/setgroupdefault.php","pid="+pid+"&gn="+group_name,onSetDefault,false);function onSetDefault(response){var errmsg=response.errmsg;serror(((errmsg=="Success")?"Default Set Successfully":errmsg),backfunc);if(response.errcode==0){var gn=unescape(group_name);var i=fgroup(gn);if(i>=0&&i<display_groups.length){display_groups[i].default_post_id=pid;}}}}function setAsDefaultHtml(post_id,post_title,group_name,rem){post_title=unescape(post_title);var backfunc="goBack()";var pid=post_id;if(rem)pid=0;se("");var setfn="setAsDefault("+pid+",\""+group_name+"\",\""+backfunc+"\" );";var txt="";if(rem)
txt="Do you want to remove "+"<span class='cgroupname'>"+post_title+"</span> as the default post "+"for group <b>"+unescape(group_name)+"</b>?<br/>";else txt="Do you want the map to automatically position to and open the post "+"<span class='cgroupname'>"+post_title+"</span>"+"</b> whenever group <b>"+unescape(group_name)+"</b> is viewed? "+"Any GeoLog attached to this post will also be automatically plotted.<br>";txt+="<br><br><input type='button' value='Cancel' onclick='"+backfunc+"'>"+"&nbsp;&nbsp;&nbsp;<input type='button' value='Submit' "+" onclick='"+setfn+"'>";dd("contentarea").innerHTML=txt;var backlink="";if(backfunc)
backlink="<span class='link1' id='backlink' onclick='"+backfunc+"' >[Back]</span>&nbsp;";scm(backlink+"Set Default Post In Group");rel();}function deleteAllPosts(backfunc){var params="";if(sgs.length>0)
params+="gns="+eu(makelist(sgs));if(locations_only)
params+="&locations=1";if(!worldwide_posts){var bounds=map.getBounds();var sw=bounds.getSouthWest();var ne=bounds.getNorthEast();params+="&swlat="+sw.lat()+"&swlon="+sw.lng()+"&nelat="+ne.lat()+"&nelon="+ne.lng();}
eaq("/geogroups/deleteposts.php",params,onDeleteAllPosts,false);function onDeleteAllPosts(response){popDeleteAllPosts(response,backfunc);}}function popDeleteAllPosts(response,timeoutfunc){se((response.errcode==0)?(response.post_count+" Posts Deleted Successfully"):response.errmsg);fps(true);var dely=((response.errcode==0)?2000:3000);timeoutfunc=jsunesc(timeoutfunc);if(timeoutfunc&&timeoutfunc!="")
window.setTimeout(timeoutfunc,dely);}function deleteAllHtml(){if(is_demo||username==demouser)return;var gnames=makelist(sgs);var backfunc="goMenu(selectedTab)";se("");var delfn="deleteAllPosts( \""+backfunc+"\" )";var txt="Are you sure you want to delete all"+
(locations_only?" user location ":" ")+"posts created by you"+
(worldwide_posts?" ":" within the current map bounds ")+"in group(s)<br>"+"<span class='cgroupname'>"+gnames+"</span>&nbsp;"+"<br><br><input type='button' value='Cancel' onclick='"+backfunc+"'>"+"&nbsp;&nbsp;&nbsp;<input type='button' value='Delete' "+" onclick='"+delfn+"'>";dd("contentarea").innerHTML=txt;var backlink="";if(backfunc)
backlink="<span class='link1' id='backlink' onclick='"+backfunc+"' >[Back]</span>&nbsp;";scm(backlink+"Delete GeoPosts");rel();}
var maphistory=new Array();var historypos=-1;function mapHistoryGetLast(){if(historypos>-1)return{latlng:new GLatLng(maphistory[historypos][0],maphistory[historypos][1]),zoom:maphistory[historypos][2]};return false;}function mapHistoryAdd(latlng,zoom){if(cause_history){cause_history=false;return;}
if((historypos+1)<maphistory.length)
maphistory.splice(historypos+1,(maphistory.length-historypos-1));if(historypos>-1)
if(zoom==maphistory[historypos][2]&&latlng.equals(new GLatLng(maphistory[historypos][0],maphistory[historypos][1])))return;maphistory.push([latlng.lat(),latlng.lng(),zoom]);historypos++;if(maphistory.length>100&&historypos>10){maphistory.splice(0,10);historypos-=10;}}
var cause_history=false;function mapHistoryBack(){if(maphistory.length>0&&historypos>0){cause_history=true;historypos--;var mappos=maphistory[historypos];mpc(new GLatLng(mappos[0],mappos[1]),mappos[2]);}}function mapHistoryForward(){if((historypos+1)>=maphistory.length)return;if(maphistory.length>0){cause_history=true;historypos++;var mappos=maphistory[historypos];mpc(new GLatLng(mappos[0],mappos[1]),mappos[2]);}}
onMapDrag=function(){if(dd("centerico").style.zIndex!="101")
dd("centerico").style.zIndex="101";var center=map.getCenter();var zoom=map.getZoom();var lastpos=mapHistoryGetLast();fps();mapHistoryAdd(center,zoom);set_cookie("lat",center.lat().toFixed(4),2050,12,31,"/");set_cookie("lng",center.lng().toFixed(4),2050,12,31,"/");set_cookie("zoom",zoom,2050,12,31,"/");}
var clustergon=null;var last_cbounds=null;function showClustergon(bounds){if(bounds)last_cbounds=bounds;else bounds=last_cbounds;if(!bounds)return;removeClusterGon();clustergon=new GPolygon([bounds.getSouthWest(),new GLatLng(bounds.getNorthEast().lat(),bounds.getSouthWest().lng()),bounds.getNorthEast(),new GLatLng(bounds.getSouthWest().lat(),bounds.getNorthEast().lng()),bounds.getSouthWest()],"#f33f00",1,0.9,"#ff0000",0.2,{clickable:false});GEvent.addListener(clustergon,"mouseover",function(latlng){removeClusterGon();});map.addOverlay(clustergon);}function onPMOver(postid){var pos=shm(mpm,postid,false);if(pos!=-1)
onMMOver(mpm[pos].gmarker);}function onPMOut(postid){if(selectedTab==5){var pid="pl"+postid;posthi(dd(pid),(pid==last_selected_pid));}
removeClusterGon();}function onMMOver(gmarker){if(gmarker.myindex){var post_marker=mpm[gmarker.myindex];if(post_marker){if(selectedTab==5){posthi(dd("pl"+post_marker.post_id),true);}
if(post_marker.is_cluster=="1")
showClustergon(post_marker.bounds);}}}function removeClusterGon(){if(clustergon){GEvent.clearInstanceListeners(clustergon);map.removeOverlay(clustergon);clustergon=null;}}function posthi(obj,hi){if(typeof obj!="undefined"&&obj!=null)obj.style.backgroundColor=(hi?"#f5f5ff":"");}function onMMOut(gmarker){var post_marker=mpm[gmarker.myindex];if(post_marker&&post_marker.post_id){if(selectedTab==5){var pid="pl"+post_marker.post_id;posthi(dd(pid),(pid==last_selected_pid));}
if(post_marker.is_cluster=="1")
removeClusterGon();}}function onPDblClk(postid){var pos=shm(mpm,postid,false);if(pos!=-1)
onMDblClk(mpm[pos].gmarker);}function onMDblClk(gmarker){if(typeof gmarker.myindex!="undefined"&&mpm[gmarker.myindex].is_cluster=="1")
zoomInCluster(gmarker);else mpc(gmarker.getLatLng(),16);}function onMClk(gmarker){clearRepopTimeout();if(typeof gmarker.ishomemarker!="undefined")
onHomeMarkerClick(gmarker);else if(typeof gmarker.myindex!="undefined"){if(mpm[gmarker.myindex].is_cluster==0)
fetchPost(popPost,mpm[gmarker.myindex].post_id,gmarker);else popCluster(gmarker);}}function onHomeMarkerClick(gmarker){fetchPost(popPost,home_marker.post_id,gmarker);}function zoomInCluster(gmarker){var post_marker=mpm[gmarker.myindex];if(!post_marker)return;var lat=gmarker.getLatLng().lat();var lng=gmarker.getLatLng().lng();var swlat=post_marker.bounds.getSouthWest().lat();var swlng=post_marker.bounds.getSouthWest().lng();var nelat=post_marker.bounds.getNorthEast().lat();var nelng=post_marker.bounds.getNorthEast().lng();zoomCluster(lat,lng,swlat,swlng,nelat,nelng,gmarker);window.setTimeout("removeClusterGon()",1000);}function zoomCluster(lat,lng,swlat,swlng,nelat,nelng,gmarker){var bounds=new GLatLngBounds(new GLatLng(swlat,swlng),new GLatLng(nelat,nelng));mpc(new GLatLng((swlat+nelat)/2.0,(swlng+nelng)/2.0),map.getBoundsZoomLevel(bounds));}function popCluster(gmarker){var post_marker=mpm[gmarker.myindex];if(!post_marker)return;last_marker_pop=gmarker;var lat=gmarker.getLatLng().lat();var lng=gmarker.getLatLng().lng();var swlat=post_marker.bounds.getSouthWest().lat();var swlng=post_marker.bounds.getSouthWest().lng();var nelat=post_marker.bounds.getNorthEast().lat();var nelng=post_marker.bounds.getNorthEast().lng();var mhtml="<span class='cgroupnamedisp' >"+post_marker.post_count+" GeoPosts around this point"+"</span>"+"<br><span class='link1' onclick='zoomCluster("+
lat+","+lng+","+swlat+","+swlng+","+nelat+","+nelng+")' "+ml+" >Zoom-In</span>&nbsp;("+
parseFloat(lat).toFixed(4)+", "+parseFloat(lng).toFixed(4)+")";selPost(post_marker.post_id);showmarkerpop(gmarker,mhtml);}
var myNewMarkers=new Array();var nextNewMarkerId=1;function findNewMarker(id){var h=myNewMarkers.length,l=-1,m;while(h-l>1)
if(myNewMarkers[m=h+l>>1].post_id<id)l=m;else h=m;return h>=myNewMarkers.length?-1:(myNewMarkers[h].post_id==id?h:-1);}function deleteNewMarker(id){var pos=findNewMarker(id);if(pos!=-1){newmarker=myNewMarkers[pos];myNewMarkers.splice(pos,1);GEvent.clearInstanceListeners(newmarker.gmarker);map.removeOverlay(newmarker.gmarker);newmarker=null;}}
var myPMs=new Array();var nextPMId=1;function msearch(arr,idname,id){var h=arr.length,l=-1,m;while(h-l>1)
if(arr[m=h+l>>1][idname]<id)l=m;else h=m;return h>=arr.length?-1:(arr[h][idname]==id?h:-1);}function mget(arr,idname,id){var p=msearch(arr,idname,id);return(p<0)?null:arr[p];}function mdelete(arr,idname,id){var pos=msearch(arr,idname,id);if(pos!=-1){var m=arr[pos];arr.splice(pos,1);GEvent.clearInstanceListeners(m.gmarker);map.removeOverlay(m.gmarker);m.gmarker=null;m=null;}}function madd(arr,idname,val){arr.push(val);function msort(a,b){var c=a[idname],d=b[idname];return c<d?-1:(c>d?1:0);}
arr.sort(msort);}function getNewPM(id,title,latlng,txt){var newmarker={id:id,gmarker:new GMarker(latlng,{icon:getIcon("postoffice-us"),title:title})};newmarker.gmarker.pmhtml=txt;madd(myPMs,"id",newmarker);return newmarker;}function getNewPostHtml(point,strlocation,marker_id,purpose){var zin=" onclick='mpc(new GLatLng( "+point.lat()+","+point.lng()+"), 16)' "+
ml;var txt="<b>"+strlocation+"</b><br>";if(!noedit&&!nosignin){if(purpose=="mylocation")
txt+=getMyLocationHtml(point,strlocation,marker_id);else if(purpose=="home")
txt+=getMyHomeHtml(point,strlocation,marker_id);else txt+="<span style='font-size:120%;margin-left:0px;' class='button' "+"onclick='fnp(\"lat="+point.lat().toFixed(6)+"&lon="+point.lng().toFixed(6)+"&mid="+marker_id+"&address="+htmlesc(strlocation)+"\" );' "+" >Create GeoPost Here..</span>"+"<br>"+
getMyLocationHtml(point,strlocation,marker_id);}
txt+="<br/><hr><span style='float:right;'><img title='Zoom-In' alt='Zoom-In' "+zin+" src='/images/zi32.png' width='24' />&nbsp;"+"<img "+ml+" onclick='deleteNewMarker("+marker_id+");' title='Remove From Map' "+" src='/images/close24.png' /></span>";txt+="<span class='ctiphelp'>Tip: You can drag this marker to a new location</span>";return txt;}function getMyLocationHtml(point,strlocation,marker_id){return"<span style='font-size:120%;margin-left:0px;' class='button' onclick='fnp(\"sml=1&lat="+point.lat().toFixed(6)+"&lon="+point.lng().toFixed(6)+"&mid="+marker_id+"&iul=1&icon=mylocation&title=My%20Location&address="+htmlesc(strlocation)+"\" )' "+ml+" >Set As My Location..</span>";}function getMyHomeHtml(point,strlocation,marker_id){return"<span style='font-size:120%;margin-left:0px;' class='button' "+"onclick='fnp(\"sh=1&lat="+point.lat().toFixed(6)+"&lon="+point.lng().toFixed(6)+"&mid="+marker_id+"&ih=1&title=Home&address="+htmlesc(eu(strlocation))+"\" )' "+" >Set As My Home Location</span>";}function getNewMarker(latlng,strlocation,icon_name,type){var icon=icon_name?getIcon(icon_name):default_icon;var newmarker={post_id:nextNewMarkerId,gmarker:new GMarker(latlng,{draggable:true,icon:icon})};myNewMarkers.push(newmarker);newmarker.gmarker.type=type;newmarker.gmarker.newmarkerhtml=getNewPostHtml(latlng,strlocation,nextNewMarkerId,type);newmarker.gmarker.newaddress=strlocation;nextNewMarkerId++;return newmarker;}function postGeoCode(){var strlocation=dd("naaddress").value;if(strlocation=="")return;geocoder.getLatLng(strlocation,function(point){if(!point){alert(strlocation+" not found");}else {dd("nalat").value=point.lat();dd("nalon").value=point.lng();mpc(point,14);}});}function postRGeoCode(){var lat=dd("nalat").value;var lng=dd("nalon").value;if(lat.length==""||lng.length=="")return;showWaitCursor(true,0);var latlng=new GLatLng(lat,lng);geocoder.getLocations(latlng,updateAddress);function updateAddress(response){showWaitCursor(false,0);if(response&&response.Status.code==200){dd("naaddress").value=response.Placemark[0].address;mpc(latlng,14);}}}function fetchAddressFromPosition(newmarker,latlng){showWaitCursor(true,1);geocoder.getLocations(latlng,updateAddress);function updateAddress(response){showWaitCursor(false,1);if(response&&response.Status.code==200){var gmarker=newmarker.gmarker;gmarker.newaddress=response.Placemark[0].address;gmarker.newmarkerhtml=getNewPostHtml(latlng,gmarker.newaddress,newmarker.post_id,gmarker.type);showmarkerpop(gmarker,gmarker.newmarkerhtml);}}}
var finmarkerid=0;function findLocation(strlocation){if(strlocation=="<Type an Address>")return;hidePostPop();geocoder.getLatLng(strlocation,function(point){if(!point){post(strlocation+" not found");}else {mpc(point,14);var newmarker=getNewMarker(point,strlocation,null,"post");var gmarker=newmarker.gmarker;GEvent.addListener(gmarker,"dragend",function(latlng){gmarker.newmarkerhtml=getNewPostHtml(latlng,gmarker.newaddress,newmarker.post_id,gmarker.type);fetchAddressFromPosition(newmarker,latlng);showmarkerpop(gmarker,gmarker.newmarkerhtml);});map.addOverlay(gmarker);showmarkerpop(gmarker,gmarker.newmarkerhtml);}});}function getParentPos(name){var obj=dd(name);if(!obj)return null;return{left:obj.offsetLeft,top:obj.offsetTop,width:obj.offsetWidth,height:obj.offsetHeight}}
var slmarker={};function slideMarker(gmarker,latlng1,latlng2){var steps=10;var latincr=(latlng2.lat()-latlng1.lat())/steps;var lngincr=(latlng2.lng()-latlng1.lng())/steps;var lat=latlng1.lat();var lng=latlng1.lng();slmarker={gmarker:gmarker,lat:lat,lng:lng,latincr:latincr,lngincr:lngincr,cnt:0};slide();}function slide(){if(slmarker.cnt<10){slmarker.lat+=slmarker.latincr;slmarker.lng+=slmarker.lngincr;slmarker.gmarker.setLatLng(new GLatLng(slmarker.lat,slmarker.lng));slmarker.cnt++;window.setTimeout(slide,30);}else {GEvent.trigger(slmarker.gmarker,"dragend",new GLatLng(slmarker.lat,slmarker.lng));}}function serror(errmsg,fn){if(!fn)fn="se('');";se(errmsg);window.setTimeout(fn,3000);}function goHome(){if(is_demo){serror("Sign-In To set your Home Location");}else if(home_marker==null){createNewMarker("home");}else {mpc(home_marker.getLatLng());}}function createNewMarker(type){if(type=="mylocation")
icon_name="mylocation";else if(type=="home")
icon_name="hometp32";else icon_name="flag";var parentOffset=getParentPos("tbar2");var buttonOffset=getParentPos("newmarkerbutton");var x=10;var y=0;var point=map.fromContainerPixelToLatLng(new GPoint(x,y));var point2=map.getCenter();var newmarker=getNewMarker(point,"",icon_name,type);var gmarker=newmarker.gmarker;gmarker.type=type;GEvent.addListener(gmarker,"dragend",function(latlng){gmarker.newmarkerhtml=getNewPostHtml(latlng,gmarker.newaddress,newmarker.post_id,gmarker.type);fetchAddressFromPosition(newmarker,latlng);showmarkerpop(gmarker,gmarker.newmarkerhtml);});map.addOverlay(gmarker);slideMarker(gmarker,point,point2);}
var selectedNav=0;var mynavs=['showmygroups','showmymarks','showmore'];var navtimeout=null;function clearNavTimeout(){if(navtimeout){window.clearTimeout(navtimeout);navtimeout=null;}}function hideGroupsNav(){if(!dd("groupnavs"))return;clearNavTimeout();hd("groupnavs");hd("marknavs");hd("morenavs");for(var i=0;i<mynavs.length;i++){if(i==selectedNav||(i==0&&selectedNav==3))
dd(mynavs[i]).className="gheadernavlite";else dd(mynavs[i]).className="gheadernav";}}function slowHideGroupsNav(){navtimeout=window.setTimeout("hideGroupsNav();",300);}function showGroupsNav(which){clearNavTimeout();shobj("groupnavs",(which==0));shobj("marknavs",(which==1));shobj("morenavs",(which==2));for(var i=0;i<mynavs.length;i++){if(i==which)
dd(mynavs[i]).className="gheadernavlite";else dd(mynavs[i]).className="gheadernav";}}
var selectedTab=0;function onMouseoutNav(obj){if(obj.id.substr(0,6)=="subnav")
obj.className=(selectedTab==pnt(obj.id.substr(6)))?"groupnav":"groupnav";}
var last_mygroups_nav=0;var last_posts_nav=5;function getStateParams(){var url="";if(sgs.length>0&&sgs[0]!="My Groups")
url+="group="+eu(makelist(sgs));if(author!="")
url+="&user="+eu(author);if(locations_only)
url+="&loconly=1";if(pois_only)
url+="&poionly=1";if(pics_only)
url+="&picsonly=1";if(nochangegroup)url+="&nochangegroup=1";if(listsize!="large")url+="&listsize="+listsize;if(noedit)url+="&noedit=1";if(nosignin)url+="&nosignin=1";if(nofilters)url+="&nofilters=1";if(style!="")url+="&style="+style;if(is_preview)url+="&preview=1";if(last_poppost!=-1){if(last_poplocation&&last_popuser!="anonymous")
url+="&post=mylocation-"+last_popuser;else url+="&post="+last_poppost;}
return url;}function getStateParams3(){var url="";if(sgs.length>0&&author!="")
url+="user="+eu(author);if(locations_only)
url+="&loconly=1";if(pois_only)
url+="&poionly=1";if(pics_only)
url+="&picsonly=1";if(nochangegroup)url+="&nochangegroup=1";if(listsize!="large")url+="&listsize="+listsize;if(noedit)url+="&noedit=1";if(nosignin)url+="&nosignin=1";if(nofilters)url+="&nofilters=1";if(style!="")url+="&style="+style;if(is_preview)url+="&preview=1";if(last_poppost!=-1){if(last_poplocation&&last_popuser!="anonymous")
url+="&post=mylocation-"+last_popuser;else url+="&post="+last_poppost;}
if(url!=""&url.charAt(0)=="&")url=url.substr(1);return url;}function getStateUrl2(){var url=getBase();var p=getStateParams3();if(p!="")url+="?"+p;return url;}function getFeedUrl(){var url=getBase()+"feed/";var p=getStateParams3();if(p!="")url+="?"+p;return url;}function flatten(str){re=/\$|@|#|~|`|\%|\*|\^|\&|\(|\)|\+|\=|\[|\-|\_|\]|\[|\}|\{|\;|\:|\'|\"|\<|\>|\?|\||\\|\!|\$|\./g;return trim(str.toLowerCase().replace(re," ").replace(/\s+/g,' '));}function flattendash(str){return flatten(str).replace(/\s/g,"-");}function getBase(){var url=window.location.protocol+"//"+window.location.host;if(sgs.length==0&&author!=""){url+="/users/"+eu(author)+"/";}else {url+="/groups/";if(!(sgs.length==1&&sgs[0].toLowerCase()=="my groups")){var gns=eu(joinWith(sgs,",",flattendash));if(gns!="")
url+=gns+"/";}}
return url;}function makeUrl(suffix){var b=getBase();if(suffix!=""){if(b.charAt(b.length-1)!="/")b+="/";return b+"?"+suffix;}
return b;}function getStateUrl(){return makeUrl(getStateParams3());}function getWidUrl(){return"http://"+server_name+"/widgets/testgroups.php?"+getStateParams();}function mygroupsUrl(){return makeUrl("open=mygroups");}function goMyGroups(){if(is_demo){serror("Please Sign-In");return;}fsubg(0);}function pubgroupsUrl(){return makeUrl("open=publicgroups");}function goPublicGroups(){fallg();}function goMyStuff(){}function goMyPosts(){if(is_demo)return;goMenu(last_posts_nav);hideGroupsNav();}function selClass(obj,cname){if(cname){obj.oldcname=obj.className;obj.className=cname;}else if(obj.oldcname){obj.className=obj.oldcname;obj.oldcname=null;}}function selGroupNav(){var which=selectedTab;if(which<3){last_mygroups_nav=which;setNCls("mtnav00","multinavhi");setNCls("mtnav01","multinav");setNCls("mtnav02","multinav");}else if(which==3){setNCls("mtnav00","multinav");setNCls("mtnav01","multinavhi");setNCls("mtnav02","multinav");}else if(which==4){setNCls("mtnav00","multinav");setNCls("mtnav01","multinav");setNCls("mtnav02","multinavhi");}}function hideSubNavs(){for(i=0;i<4;i++)
hd("altnav"+i);}function ssn(which,groupnav){for(i=0;i<4;i++)
shobj("altnav"+i,(groupnav==i));if(groupnav>=0)
selectedNav=groupnav;selectedTab=which;selGroupNav();}function goMenu(which){if(which==0){ssn(0,0);goMyGroups();}else if(which==3){ssn(3,0);goPublicGroups();}else if(which==4){ssn(4,0);fngh();}else if(which==5){ssn(5,3);mpMenu(worldwide_posts?1:0);}else if(which==6){ssn(6,3);ptChoose(1);}else if(which==7){ssn(7,2);jreqin();}else if(which==8){ssn(8,2);invite();}else if(which==9){ssn(9,2);requestUser();}else if(which==10){ssn(10,2);ful();}else if(which==11){ssn(11,1);fmyl();}else if(which==12){ssn(12,1);fmycsv();}else if(which==13){ssn(13,3);ptChoose(2);}else if(which==14){ssn(14,2);msgSend();}}function chooseMenu(obj){if(obj){goMenu(pnt(obj.id.substr(6)));hideGroupsNav();}}function containsDOM(container,containee){var isParent=false;do{if((isParent=container==containee))
break;containee=containee.parentNode;}
while(containee!=null);return isParent;}function onPostPopMouseOut(e,obj){var cont=dd("postpopcontent");var evt=window.event||e;if(evt.relatedTarget){if(containsDOM(cont,evt.relatedTarget))return false;}
if(typeof evt.toElement!="undefined"&&evt.toElement){if(cont.contains(evt.toElement))return false;}
return true;}function onMenuMouseOut(e){if(e.relatedTarget){if(containsDOM(dd('geogroupsmenu'),e.relatedTarget))return;slowHideGroupsNav();return;}
var elem=dd('geogroupsmenu');if(!event)event=window.event;if(event.toElement){if(elem.contains(event.toElement))return;}
slowHideGroupsNav();}function onMouseOutCont(e,contname,hidename){if(!hidename)hidename=contname;var elem=dd(contname);if(e.relatedTarget){if(containsDOM(elem,e.relatedTarget))return;sTimeout(hidename,"hd('"+hidename+"')",300);return;}
if(!event)event=window.event;if(event.toElement){if(elem.contains(event.toElement))return;}
sTimeout(hidename,"hd('"+hidename+"')",300);}
var mouseonlistpop=false;var mouseonpop=false;function showGroupPop(obj,subscribed,which,timeoutfunc){var txt=getGroupPopHtml(display_groups[which],which,subscribed,timeoutfunc);showInfopop(obj,txt);}
var selarr=null;function showSelPop(obj,arr,setid){if(!arr)return;var txt="";for(i=0;i<arr.length;i++){txt+="<div class='cselpop' onclick='dd(\""+setid+"\").value=this.innerHTML;hideInfoPop(true);'>"+arr[i]+"</div>";}
showInfopop(obj,txt);}function showInfopop(obj,txt){if(obj==null)return;var tip=dd('infopop');clTimeout('infopop');var pos=findPos(obj);dd("infopopcontent").innerHTML=txt;tip.style.left=(pos.left+obj.offsetWidth)+"px";var newtop=(pos.top-(pnt(tip.offsetHeight)/2)+(obj.offsetHeight/2));if((newtop+tip.offsetHeight)>getClientHeight()){var moveup=(newtop+tip.offsetHeight)-getClientHeight();if((newtop-moveup)<0)moveup=newtop;dd("infopoparrow").style.top=(moveup-11)+"px";newtop=newtop-moveup;}else if(newtop<0){dd("infopoparrow").style.top=(newtop-11)+"px";newtop=0;}else {dd("infopoparrow").style.top="-11px";}
tip.style.top=newtop+"px";ssTimeout('infopop',"clTimeout('infopop');dd('infopop').style.visibility = 'visible'",100);}function hideInfoPop(force){var tip=dd('infopop');if(!force)force=false;if(!force&&((typeof gtimeouts['infopop']!="undefined"&&typeof gtimeouts['infopop'].stimeout!="undefined"&&gtimeouts['infopop'].stimeout!=null)||mouseonpop)){return;}
tip.style.visibility='hidden';mouseonpop=false;clTimeout('infopop');}function hip(f){hideInfoPop(f);}function onMouseoutInfo(e,obj){var tip=dd('infopop');if(typeof gtimeouts['infopop']!="undefined"&&typeof gtimeouts['infopop'].stimeout!="undefined"&&gtimeouts['infopop'].stimeout){window.clearTimeout(gtimeouts['infopop'].stimeout);gtimeouts['infopop'].stimeout=null;};if(mouseonpop)return;if(e.relatedTarget){if(e.relatedTarget.id=="infopop"||containsDOM(obj,e.relatedTarget)||containsDOM(tip,e.relatedTarget))return;}else if(!e.toElement||e.toElement.id=="infopop"||tip.contains(event.toElement))return;sTimeout('infopop',"hip()",300);}function onMouseoutPop(e,obj){var tip=dd('infopop');clTimeout('infopop');if(e.relatedTarget){if(containsDOM(tip,e.relatedTarget))return;}
if(tip.contains&&event.toElement){if(tip.contains(event.toElement))return;}
mouseonpop=false;sTimeout("infopop","hip()",300);}function showListPop(obj,txt){if(obj==null)return;var tip=dd('listpop');var pos=findPos(obj);dd("listpopcontent").innerHTML="<br>"+txt;tip.style.left=(pos.left+obj.offsetWidth)+"px";var newtop=(pos.top-(pnt(tip.offsetHeight)/2)+(obj.offsetHeight/2));if((newtop+tip.offsetHeight)>getClientHeight()){var moveup=(newtop+tip.offsetHeight)-getClientHeight();if((newtop-moveup)<0)moveup=newtop;dd("listpoparrow").style.top=(moveup-11)+"px";newtop=newtop-moveup;}else if(newtop<0){dd("listpoparrow").style.top=(newtop-11)+"px";newtop=0;}else {dd("listpoparrow").style.top="-11px";}
tip.style.top=newtop+"px";tip.style.visibility='visible';}
var listpop_timer=null;function hideListPop(tip){if(!tip||tip==null)tip=dd('listpop');clTimeout('listpop');tip.style.visibility='hidden';mouseonlistpop=false;}function delayHideListPop(){sTimeout('listpop','if(!mouseonlistpop) hideListPop();',700);}function onMouseoverListPop(e,obj){mouseonlistpop=true;clTimeout('listpop');}function onMouseoutListPop(e,obj){var tip=dd('listpop');var infotip=dd('infopop');if(e.relatedTarget){if(containsDOM(tip,e.relatedTarget))return;if(containsDOM(infotip,e.relatedTarget))return;mouseonlistpop=false;delayHideListPop();}
if(tip.contains&&event.toElement){if(tip.contains(event.toElement))return;if(infotip.contains(event.toElement))return;}
mouseonlistpop=false;delayHideListPop();}
var MarkerPop=function(marker,html,oy){this.marker=marker;this.html=html;this.hidden=false;this.oy=(typeof oy=="undefined"?32:oy);}
MarkerPop.prototype=new GOverlay();var divadded=false;MarkerPop.prototype.initialize=function(map){var div=dd('postpop');dd('postpopcontent').innerHTML=this.html;this._map=map;this._div=div;if(!divadded){map.getPane(G_MAP_FLOAT_PANE).appendChild(div);divadded=true;}}
MarkerPop.prototype.remove=function(){this._div.style.visibility='hidden';markerpop=null;this.marker.mpop=null;this.hidden=true;markerpopvisible=false;}
MarkerPop.prototype.redraw=function(force){if(!force)return;if(this.hidden||!markerpopvisible){this._div.style.visibility='hidden';return;}
var pt=map.fromLatLngToDivPixel(this.marker.getLatLng());var bounds=map.getBounds();var ne=map.fromLatLngToDivPixel(bounds.getNorthEast());var sw=map.fromLatLngToDivPixel(bounds.getSouthWest());var cw=Math.abs(ne.x-sw.x);var cy=Math.abs(sw.y-ne.y);var dwidth=(listsize=="large"?400:300);if(cw<=430||cy<=300)dwidth=300;this._div.style.width=dwidth+"px";var newleft=(pt.x-(this._div.offsetWidth/2.0));var aleft=-11;if(cw<dwidth){this._div.style.width=(cw-16)+"px";aleft=pt.x-(sw.x+(cw/2.0))-11;newleft=sw.x;}
var newtop=pt.y-this.oy-11-11-this._div.offsetHeight;var arrow=dd('postpoparrow');if(newleft<sw.x){var moveright=(sw.x-newleft);if(moveright>(this._div.offsetWidth/2.0)-11)
moveright=(this._div.offsetWidth/2.0)-11;aleft=(-11-moveright);newleft+=moveright;}
if((newleft+this._div.offsetWidth)>ne.x){var moveleft=(newleft+this._div.offsetWidth)-ne.x;if(moveleft>(this._div.offsetWidth/2.0)-11)
moveleft=(this._div.offsetWidth/2.0)-11;aleft=(-11+moveleft);newleft-=moveleft;}
if((newtop+10)<ne.y){newtop=pt.y;arrow.style.top='0px';arrow.firstChild.src='/images/bubble-up.png';}else {arrow.style.top=(this._div.offsetHeight+9)+'px';arrow.firstChild.src='/images/bubble-down.png';}
arrow.style.left=aleft+'px';var o=dd("postpopcontent");if((newtop+this._div.offsetHeight)>sw.y){newtop=ne.y+20;arrow.style.display="none";o.tp="1";o.className="cpostpopcontent2";o.backgroundColor="";}else {arrow.style.display="";o.tp="0";o.className="cpostpopcontent";}
this._div.style.top=newtop+'px';this._div.style.left=newleft+'px';this._div.style.visibility='visible';}
var markerpop=null;var markerpopvisible=false;function showmarkerpop(gmarker,txt,oy){if(gmarker.mpop)
map.removeOverlay(gmarker.mpop);markerpopvisible=true;gmarker.mpop=new MarkerPop(gmarker,txt+"<br />",oy);markerpop=gmarker.mpop;map.addOverlay(gmarker.mpop);}function hidePostPop(){markerpopvisible=false;if(markerpop){markerpop.marker.mpop=null;markerpop.hidden=true;map.removeOverlay(markerpop);markerpop=null;}
dd('postpop').style.visibility='hidden';if(follow_post!=last_poppost)postScrap();last_poppost=-1;clearRepopTimeout();}function showDebug(line){}function se(line){var o=dd("errorinfo");if(o){dd("errortxt").innerHTML=line;o.style.display=(line=="")?"none":"";}}
var yesno={fn:null};function clickYes(yes){hd("yesnobox");if(yesno.fn)yesno.fn(yes);}function showYesNoBox(txt,callbackfn){var o=dd("yesnobox");if(o){dd("yesnotxt").innerHTML=txt;o.style.display=(txt=="")?"none":"";if(typeof callbackfn=="undefined"||!callbackfn)callbackfn=null;yesno.fn=callbackfn;}}function setContent(txt){dd("contentarea").innerHTML=txt;}function scm(mode){if(mode=="")mode="&nbsp;";dd("curmode").innerHTML=mode;}function isEnter(evt){var keyCode=null;if(evt.which){keyCode=evt.which;}else if(evt.keyCode){keyCode=evt.keyCode;}
return(13==keyCode);}function showWaitCursor(show,pos){var o=dd((!pos||pos==0)?"waitcursor":"waitcursor1");if(o)o.innerHTML=(show?"<img src='/images/wait20.gif'>":"");}function checkSignup(e){var errmsg="";if(dd("suu").value=="")
errmsg="What's a user without a name?";else if(dd("suu").value.length<3)
errmsg="Username must be at least 3 characters";else if(dd("suu").value.length>30)
errmsg="Username must not exceed 30 characters";else if(dd("sup").value=="")
errmsg="Please specify a password";else if(dd("sup").value.length<6)
errmsg="Password must be at least 6 characters";else if(dd("sup").value.length>60)
errmsg="Password must not exceed 60 characters";else if(dd("sue").value=="")
errmsg="Please specify an email address";else if(dd("sue").value.length>60)
errmsg="Email address must not exceed 60 characters";else if(dd("sue").value!=dd("suce").value)
errmsg="Please confirm your email address";if(errmsg!="")
dd("suerror").innerHTML=errmsg;e.returnValue=(errmsg=="");return(errmsg=="");}function mrChoose(max){max_results=max;dd("maxresults").innerHTML=max;fps();hd('mrmenu');clTimeoutN('mrmenu');}function mrMenu(){var obj=dd("maxresults").parentNode;var tip=dd('mrmenu');if(!tip)return;clTimeout('mrmenu');if(tip.style.display==''){hd('mrmenu');return;}
var pos=findPos(obj);tip.style.left=pos.left+"px";tip.style.width=obj.offsetWidth+"px";var newtop=pos.top+obj.offsetHeight;tip.style.top=newtop+"px";tip.style.display='';}function getScrap(caption,action,bgcolor,id,onclk){if(!bgcolor)bgcolor="#68a0f5";if(!id)id="";if(!onclk)onclk="";if(onclk!="")onclk=" onclick='"+onclk+"' ";return"<span class='cgroupscrap'  "+(id!=""?("id='"+id+"'"):"")+"  "+
(bgcolor!=""?("style='background-color:"+bgcolor+"'"):"")+" "+onclk+" >"+"<span>"+caption+"</span> "+"<span class='cclosebutton' style='background-color:white;color:"+bgcolor+"' "+"onmouseover='hl(this,\"white\",\"#e05555\"); ' onmouseout='uhl(this);' "+" onclick='"+action+"' "+">x</span>"+"</span>";}function removeScrap(name,id){var elem=dd(name);var child=dd(id);if(elem&&child)
elem.removeChild(child);}function cbAuthor(forceon){if(!forceon)forceon=false;var cb=dd('cbauthor');if(cb.checked||forceon){var au=dd('author').value;if(au==""||au=="<username>")
cb.checked=false;else setAuthor(au,true);}else {if(nochangegroup&&defauthor!=""&&dd('author').value==defauthor)return;dd('author').value='';setAuthor("",true);}}function setPicsOnly(newval,nocall){if(!nocall)
nocall=false;var txt="";if(newval){txt=getScrap("pics-only",(nofilters?"noop()":"setPicsOnly(false)"),"#999999");}
dd("mappicsonly").innerHTML=txt;pics_only=newval;if(dd('cbpicsonly'))dd('cbpicsonly').checked=newval;if(!nocall)fps(true);}function cbPicsOnly(){setPicsOnly(dd('cbpicsonly').checked);}function togglePicsOnly(){var obj=dd('cbpicsonly');var v=!obj.checked;obj.checked=v;setPicsOnly(v);}function setPOIsOnly(newval,nocall){if(!nocall)
nocall=false;var txt="";if(newval){txt=getScrap("pois-only",(nofilters?"noop()":"setPOIsOnly(false)"),"#999999");setLocationsOnly(false,true);}
dd("mappoisonly").innerHTML=txt;pois_only=newval;if(dd('cbpoisonly'))dd('cbpoisonly').checked=newval;if(!nocall)fps(true);}function cbPOIsOnly(){setPOIsOnly(dd('cbpoisonly').checked);}function togglePOIsOnly(){var obj=dd('cbpoisonly');var v=!obj.checked;obj.checked=v;setPOIsOnly(v);}function setFavOnly(newval,nocall){if(!nocall)
nocall=false;var txt="";if(newval){txt=getScrap("fav-only",(nofilters?"noop()":"setFavOnly(false)"),"#999999");if(!nocall&&!fav_only&&newval){if(pois_only)setPOIsOnly(false,true);if(pics_only)setPicsOnly(false,true);if(locations_only)setLocationsOnly(false,true);if(author!="")setAuthor("",true);}}
dd("mapfavonly").innerHTML=txt;fav_only=newval;if(dd('cbfavonly'))dd('cbfavonly').checked=newval;if(!nocall)fps(true);}function cbFavOnly(){setFavOnly(dd('cbfavonly').checked);}function toggleFavOnly(){var obj=dd('cbfavonly');var v=!obj.checked;obj.checked=v;setFavOnly(v);}function setPreviewOnly(newval,nocall){if(!nocall)
nocall=false;var txt="";if(newval){txt=getScrap("preview-only",(nofilters?"noop()":"setPreviewOnly(false)"),"#999999");}
dd("mappreviewonly").innerHTML=txt;is_preview=newval;if(!nocall)fps(true);}function noop(){}function setLocationsOnly(newval,nocall){if(!nocall)
nocall=false;var txt="";if(newval){txt=getScrap("user-locations-only",(nofilters?"noop()":"setLocationsOnly(false)"),"#999999");setPOIsOnly(false,true);}
dd("maplocationsonly").innerHTML=txt;locations_only=newval;if(dd('cblocationsonly'))dd('cblocationsonly').checked=newval;if(!nocall)fps(true);}function cbLocationsOnly(){setLocationsOnly(dd('cblocationsonly').checked);}function toggleLocationsOnly(){var obj=dd('cblocationsonly');var v=!obj.checked;obj.checked=v;setLocationsOnly(v);}function mpMenu(i,nocall,skip){ptChoose(0,true);if(!skip)skip=0;if(typeof nocall=="undefined"||!nocall)
nocall=false;hd('mpmenu');if(i==0){worldwide_posts=false;dd('mpdisp').innerHTML="Posts Visible On Map";popPostsList(post_response_map,false);}else if(i==1){worldwide_posts=true;dd('mpdisp').innerHTML="WorldWide Posts";if(!nocall)fpw(skip);}}function doneUploadLog(errcode,errmsg){if(errcode=="0"){se("Logfile uploaded, please allow a few minutes for processing");dd("loguploadform").innerHTML=getLogUploadForm();}else se(errmsg);}function doneUploadCSV(errcode,errmsg){if(errcode=="0"){se("File uploaded");dd("csvuploadform").innerHTML=getCSVUploadForm();window.setTimeout("fmycsv()",2000);}else se(errmsg);}function startUploadPic(){se("Uploading Picture..");return true;}function startUploadMsg(msg){se(msg);return true;}function getUploadPicForm(){return"<form action='/geogroups/uploadpic2.php' method='POST' enctype='multipart/form-data' target='upload_target' "+" accept='image/jpeg' "+" onsubmit='startUploadPic();' > "+" <input type='hidden' name='u' value='"+username+"' /> "+" <input type='hidden' name='t' value='"+token+"' /> "+"  <input name='file' id='picbrowsefile' type='file' /> "+" <input type='submit' value='Attach(Replace)' /> "+"  </form>";}function doneUploadPic(errcode,errmsg,name){if(errcode=="0"&&name!=""){se("");dd("napic").value=name;dd("picuploadform").innerHTML="";dd("picuploadform").innerHTML=getUploadPicForm();dd("nadpic").innerHTML="<span title='Remove Picture' style='float:right;cursor:pointer' onclick='removePic()' >"+"<img src='/images/close24.png' /></span>"+"<span title='Rotate' style='margin-right: 10px;float:right;cursor:pointer' onclick='rotateAddPic()' >"+"<img src='/images/rotate16.png' /></span>"+"<img width='220' src='/pics/"+name+"/' />";}else se(errmsg);}function removePic(){dd("napic").value="";dd("nadpic").innerHTML="";}function rotateDispPic(ename){rotatePic(dd(ename).value,onDispRotate,ename);}function rotateAddPic(){rotatePic(dd('napic').value,onAddRotate,'napic');}function rotatePic(name,rback,param){execAjax("/geogroups/rotatepic.php?"+"angle=90&pic="+name,onRotatePic);function onRotatePic(responseText){var response=eval('('+responseText+')');if(response.errcode==0)
rback(response,param);this.obj=null;}}function postPic(name){var bounds=map.getBounds();var ne=map.fromLatLngToDivPixel(bounds.getNorthEast());var sw=map.fromLatLngToDivPixel(bounds.getSouthWest());var cw=Math.abs(ne.x-sw.x);var cy=Math.abs(sw.y-ne.y);var s=(listsize!="large"||cw<=430||cy<=300)?120:200;return"<img id='postpic' src='http://"+server_name+"/tpics/"+name+"/' "+" max-width='"+s+"' onload='maxdim(this,"+s+","+s+");if(markerpop) markerpop.redraw(true);' />";}function onDispRotate(response,param){if(dd('postpic')){dd(param).value=response.pic;dd('cpic').innerHTML=postPic(response.pic);if(markerpop)markerpop.redraw(true);if(dd('bigpicdiv').style.visibility=="visible")
viewFullSize(param);}}function onAddRotate(response,param){doneUploadPic(0,"",response.pic);}function centerBigPic(imgobj){var b=dd('bigpicdiv');maxdim(imgobj,getClientWidth()-10,getClientHeight()-30);b.style.left=((getClientWidth()-b.offsetWidth)/2)+"px";b.style.top=((getClientHeight()-b.offsetHeight)/2)+"px";}function viewFullSize(ename){if(dd(ename)){ename=dd(ename).value;dd('bigpic').innerHTML="<img onload='centerBigPic(this)' src='/pics/"+ename+"/' />";dd('bigpicdiv').style.visibility="visible";}}function getCSVSettings(id){var p={};p.ncols=dd("csvncols").value;p.skip=dd("csvskip").value;p.max=dd("csvmax").value;p.gns=makeScrapList("csvgn");p.iconimg=dd("csvicon").value;p.npreview=dd("csvpreview").value;if(p.iconimg=="default")p.iconimg="";for(i=0;i<p.ncols;i++)
if(dd("csvc"+(i+1)).value!="")
p["c"+(i+1)]=dd("csvc"+(i+1)).value;for(i=0;i<5;i++){if(dd("csvf"+(i+1)).value=="")continue;p["fn"+(i+1)]=dd("csvf"+(i+1)).value;p["fv"+(i+1)]=dd("csvv"+(i+1)).value;}
var prof="";for(k in p){prof+="&"+eu(k)+"="+eu(p[k]);}
return prof;}function saveCSVSettings(id){var prof=getCSVSettings(id);eaq("/geogroups/savecsvprof.php","uploadid="+id+prof,function(resp){se("Settings Saved");},false);}function publishCSV(id){var prof=getCSVSettings(id);dd("contentarea").innerHTML="<span class='button' onclick='configCSV("+id+")'>Back</span>"+"<br/><span class='l3title'>Output</span>"+"<br/><textarea rows='30' style='width:95%;' id='csvpublishresp'>Publishing...</textarea>";function onPopPublish(responsetext){dd("csvpublishresp").value=responsetext;}
var url="/geogroups/addcsv.php?u="+eu(username)+"&t="+token+"&resp=html"+"&uploadid="+id+prof;execAjax(url,onPopPublish);}function msdiv(n,m){var o=dd(n);if(!m)m=0;if(o.offsetHeight>(getClientHeight()-m)){o.style.overflow="auto";o.style.height=(getClientHeight()-m)+"px";}}function showSignIn(){sw("signindiv");msdiv("signindiv",30);}function ismulgroup(){if(sgs.length!=1)return false;var gns=sgs[0].toLowerCase();return(gns=="mygroups"||gns=="my groups"||gns=="publicgroups"||gns=="public groups");}function isonegroup(){return(!ismulgroup()&&sgs.length==1);}
var discuss_timer=null;function checkDiscussion(nid){if(discuss_timer){window.clearTimeout(discuss_timer);discuss_timer=null;}
var c=(new Date()).getTime();if(show_discuss&&nid>0&&nid>max_discuss_id&&(c-discuss_fetch)>30000)
showDiscussion();}function showDiscussion(){if(!isonegroup())return;sw("discussdiv");msdiv("discussdiv",30);show_discuss=true;refreshDiscussion();}function hideDiscussion(){hd("discussdiv");show_discuss=false;max_discuss_id=0;discuss_group="";}
var discuss_group="";var max_discuss_id=0;var discuss_fetch=0;function refreshDiscussion(skip){if(!skip)skip=0;var gns=sgs[0].toLowerCase();if(!isonegroup())return;discuss_fetch=(new Date()).getTime();eaq("/geogroups/groupmsgs.php","&gn="+eu(gns)+"&skip="+skip+"&only=pending",popDiscussion,false,0,"Please Sign-In To Post Messages");}function popDiscussion(response){var requests=response.data;var total=pnt(response.total);var start=pnt(response.skip);var count=pnt(response.returned);var pages=resultHeader(start,count,total,"Messages");var page_nav=getPageNav(start,count,total,"refreshDiscussion(0)","refreshDiscussion("+((start-15)>=0?(start-15):0)+" )","refreshDiscussion("+(start+count)+" )");discuss_group=response.group;var txt="<div class='cgroupname'>"+response.group+"</div>";txt+="<span class='l3title' style='font-size:11px;cursor:pointer;text-decoration:underline' onclick='tog(\"gmsgdiv\");'>Add Your Message &#187;</span>"+"<div id='gmsgdiv' style='display:none;font-size:11px'> \
  <textarea style='width:80%;height:50px;' id='gmsg' ></textarea><br> \
  <input type='button' value='Submit' onclick='sendGMsg(\""+htmlesc(response.group)+"\")' />(max 500 chars) \
  </div> ";txt+=rth(pages,page_nav,1);var timeoutfunc=htmlesc("refreshDiscussion("+start+" )");var allrows=new Array();for(var i=0;i<requests.length;i++){var request=requests[i];if(request.request_id>max_discuss_id)max_discuss_id=request.request_id;var rd=new Date(request.last_modified*1000);var ctime=getShortDate(rd);var crow="";crow+="<tr><td style='border-top: 1px solid #5890e5;' >"+"<span style='float:right;color:gray;font-size:90%' >"+ctime+"</span>"+
showUser(request.sender)+"</td>"+"</tr>";crow+="<tr class='ccommentsblock'>"+"<td style='padding-left:3px;padding-bottom:5px;border-bottom: 1px solid #dddddd;' colspan='2' >"+request.msg+"<br>";if(latlngValid(request.lat,request.lng)){crow+="<span class='cbaction' onclick='msgMap("+i+")'>See On Map &#187;</span><br/>"}
if(request.addr!=""){crow+="<span class='cpostl'>Address: </span><span style='color:grey'>"+request.addr+"</span><br/>";}
crow+="</td>";crow+="</tr>";allrows.push(crow);}
txt+=allrows.join("\n");txt+=rtf(count,page_nav,1);dd("discusscontentdiv").innerHTML=txt;resizeWidgets();}function saveWidgetConfig(){var wids=["discussdiv","historydiv","downloaddiv"];var c="";for(i=0;i<wids.length;i++){var o=dd(wids[i]);if(!o)continue;var pos=findPos(o);if(c!="")c+="#";c+=wids[i]+"|"+pos.left+"|"+pos.top+"|"+o.offsetWidth+"|"+o.offsetHeight;}
set_cookie("wids",c,2050,12,31,"/");}function loadWidgetConfig(){var c=get_cookie("wids");var w=c.split("#");for(i=0;i<w.length;i++){var k=w[i].split("|");var o=dd(k[0]);if(o&&!(k[1]==0&&k[2]==0&&k[3]==0&&k[4]==0)){with(o.style){left=k[1]+"px";top=k[2]+"px";width=k[3]+"px";height=k[4]+"px";}}}
resizeWidgets();}function sendGMsg(gname){var msg=dd("gmsg").value.stripHTML();if(msg==""){serror("Cannot send a blank message");return;}else if(msg.length>500){serror("Message is too long: "+msg.length+" chars, (max 500 allowed)");return;}
eaq("/geogroups/sendmsg.php","gn="+eu(gname)+"&msg="+eu(msg),popSentGMsg,false);}function popSentGMsg(response){refreshDiscussion();}function resizeWidgets(){var childs=["discusscontentdiv","historycontentdiv"];for(i=0;i<childs.length;i++){var o=dd(childs[i]);if(o){var nh=(pnt(o.parentNode.style.height)-o.offsetTop);o.style.height=nh+"px";}}}function getHDate(d){return months[d.getMonth()]+"-"+pad(d.getDate())+"-"+d.getFullYear()+" "+pad(d.getHours())+":"+pad(d.getMinutes());}function getUHDate(ut){return getHDate(new Date(ut*1000));}function hideHistory(){hd("historydiv");}function showHistory(uname){if(typeof uname!="undefined")dd("huser").value=uname;var d=new Date();if(dd('hstart').value=="")
dd('hstart').value=getHDate(new Date(d.getTime()-86400000));sw("historydiv");}function getHistory(uname,hstart,hend,method){if(typeof method=="undefined"||!method)method=0;dd('huser').value=uname;dd('hstart').value=getUHDate(hstart);dd('hend').value=getUHDate(hend);fhist(method);}function hideDownload(){hd("downloaddiv");}function showDownload(){var d=new Date();var pstart=dd('poststart').value;if(pstart!="")
dd('dstart').value=pstart;else dd('dstart').value=getHDate(new Date(d.getTime()-86400000));var dend=dd('dend').value;var pend=dd('postend').value;if(pend!="")
dd('dend').value=pend;else pend="now";sw("downloaddiv");}function getDownload(dstart,dend){dd('dstart').value=getUHDate(hstart);dd('dend').value=getUHDate(hend);fdownload();}function onSearch(){qsearch=dd("qsearch").value;fps(true,false,true);}
