var Blocksnap=function(){var c=function(g,f){$("#block-view-wrapper").hide();$("#place-view").children().hide();if($("#place-"+g+"-view").length==0){$("#place-view").html(f)}else{$("#place-"+g+"-view").show()}$(".place-on").removeClass("place-on");$("#place-"+g+"-cell").addClass("place-on");var d=document.location.toString();var e=d.split("#")[0];document.location=e+"#"+g};var a=function(d){$.ajax({url:"/place/view/"+d,success:function(e){c(d,e)}})};var b=function(e,d){$("#place-view").children().hide();if($("#place-"+e+"-edit").length==0){$("#place-view").html('<div id="place-'+e+'-edit">'+d+"</div>")}else{$("#place-"+e+"-edit").show()}};return{verify_textarea:function(e){var f=$(e).attr("maxlength");var h=$(e).val().length;var g=f-h;var d=$(e).siblings(".textarea-status");d.text(g);if(g<0){d.addClass("error")}else{d.removeClass("error")}return true},blockview:function(d){a(d)},blockview_load:function(){var d=document.location.toString();var e=d.split("#")[1];if(e){a(e)}},blockedit:function(e){var d=$(e).attr("id").substring(11);$.ajax({url:"/place_block/edit/"+d,success:function(f){b(d,f)}})},blockview_close:function(){$("#place-view").children().hide();$(".place-on").removeClass("place-on");$("#block-view-wrapper").show()},expand_place:function(d){$("#create-marker-details").children("input").each(function(){if($(this).attr("name")=="place_id"){$(this).val(d)}});$("#create-block-form").dialog("open")}}}();google.load("search","1");Blocksnap.Map=function(){var a;var e;var l;var j=false;var f=Array();var h;var c;var i=14;var b=new google.maps.MarkerImage("/images/marker_blue.png");var d=new google.maps.MarkerImage("/images/marker_red.png");var g;var k=function(n,o){var q=false;a=new google.maps.Map(document.getElementById("map_canvas"));e=new google.maps.Geocoder();var m=new google.maps.LatLng(n.lat,n.lng);a.setMapTypeId(google.maps.MapTypeId.ROADMAP);if(o.centerMarker){a.setZoom(i);q=true;Blocksnap.Map.addMarker({position:m},{clickable:false,cursor:"default"});a.setCenter(m)}if(o.markers){q=true;Blocksnap.Map.addMarkers(o.markers)}if(!q){a.setCenter(m);a.setZoom(4)}c=false;if(o.createBlock){g=google.maps.event.addListener(a,"click",function(r){Blocksnap.Map.addMarker({position:r.latLng},{user:true})});c=o.createBlock}if(o.search){l=new google.search.LocalSearch();l.setSearchCompleteCallback(this,Blocksnap.Map.gSearchDone);if(o.search.auto){var p=google.maps.event.addListener(a,"bounds_changed",function(){google.maps.event.removeListener(p);Blocksnap.Map.doSearch()})}}};return{initialize:function(m){if(m==undefined){m={point:{lat:40.839,lng:-96.1559},markers:false,search:false,centerMarker:false}}if(m.point==undefined){k({lat:40.839,lng:-96.1559},m)}else{k(m.point,m)}},addMarker:function(u,m){var v;var r;var t;var q=true;if(m==undefined){m={user:false,clickable:true}}if(m.user==true){if(j){q=j.infowindow.opened;j.infowindow.close();j.setMap(null)}v=true;r=-1;t=d}else{v=false;r=f.length;t=b}if(m.clickable==null||m.clickable==undefined){m.clickable=true}var n={position:u.position,draggable:v,map:a,icon:t};if(m.cursor){n.cursor=m.cursor}var p=new google.maps.Marker(n);var s="<p>";if(u.id){s+='<a href="/block/view/'+u.id+'">View Block</a> | '}if(c){s+='<a href="javascript:;" onclick="Blocksnap.Map.createNBH('+r+')">Create New Block Here</a></p>'}if(u.title){s="<h2>"+u.title+"</h2>"+s}if(u.streetAddress){s=s+u.streetAddress}p.location=u;if(m.clickable){var o=new google.maps.InfoWindow({content:s});p.infowindow=o;o.opened=false;p.clickListener=google.maps.event.addListener(p,"click",function(){o.open(a,p);o.opened=true});p.clickListener=google.maps.event.addListener(o,"closeclick",function(){o.opened=false});if(m.user&&q){o.open(a,p);o.opened=true}}if(m.user){j=p}else{f.push(p)}if(v){google.maps.event.addListener(p,"dragstart",function(){o.close()});google.maps.event.addListener(p,"dragend",function(){o.open(a,p)})}},createNBH:function(n){var m;if(n>=0){m=f[n]}else{m=j}$("#create-marker-details").children("input").each(function(){if($(this).attr("name")=="lat"){$(this).val(m.getPosition().lat())}else{if($(this).attr("name")=="lng"){$(this).val(m.getPosition().lng())}else{if($(this).attr("name")=="title"&&m.location.title){$(this).val(m.location.title)}else{if($(this).attr("name")=="address"&&m.location.streetAddress){$(this).val(m.location.streetAddress)}}}}});$("#create-block-form").dialog("open")},centerMap:function(){if(f.length>0){var n=new google.maps.LatLngBounds(f[0].getPosition(),f[0].getPosition());for(var m in f){n.extend(f[m].getPosition())}a.fitBounds(n);var o=google.maps.event.addListener(a,"bounds_changed",function(){google.maps.event.removeListener(o);if(a.getZoom()==undefined||a.getZoom()>i){a.setZoom(i)}})}},doSearch:function(){$("#search-error").hide();h=$("#query").val();l.setCenterPoint(a.getCenter());l.execute(h);return false},clearMarkers:function(){if(j){j.setMap(null);j=false}j=false;f=Array()},gSearchDone:function(){var n=new Array();for(var m=0;m<l.results.length;m++){n.push({lat:l.results[m].lat,lng:l.results[m].lng,title:l.results[m].titleNoFormatting,streetAddress:l.results[m].streetAddress})}if(n.length==0){$("#search-error").show()}else{Blocksnap.Map.addMarkers(n)}},addMarkers:function(n){for(var m=0;m<n.length;m++){Blocksnap.Map.addMarker({position:new google.maps.LatLng(n[m].lat,n[m].lng),title:n[m].title,id:n[m].id,streetAddress:n[m].streetAddress})}Blocksnap.Map.centerMap()}}}();Blocksnap.Comment=function(){var b=function(c){return $(c).closest(".comment-block").find(".comment-form")};var a=function(c,d){$(c).find("input[name='parent']").val(d)};return{reply:function(c,f){var d=$(c).closest(".comment");var e=b(c);d.append(e);e.find(".comment-add").hide();e.find(".comment-reply").show();a(e,f)},reset:function(c){var d=$(c).closest(".comment-block");var e=b(c);d.append(e);e.find(".comment-reply").hide();e.find(".comment-add").show();a(e,"")}}}();Blocksnap.Edit=function(){var b=false;var c="";var a=function(h,f){var e=h.find(".prev-block");var d=h.find(".next-block");var k=f.find(".prev-block");var j=f.find(".next-block");var g=h.find(".prev-block").css("display")!="none";var i=h.find(".next-block").css("display")!="none";if(k.css("display")=="none"){e.hide()}else{e.show()}if(j.css("display")=="none"){d.hide()}else{d.show()}if(g){k.show()}else{k.hide()}if(i){j.show()}else{j.hide()}};return{vote:function(e,d){if(!b){b=true;$.post(c+"/place_block/vote_up/"+e,function(f){if(f=="true"){$("#place-"+e+"-cell").find(".vote").toggle()}b=false})}},unvote:function(e,d){if(!b){b=true;$.post(c+"/place_block/unvote/"+e,function(f){if(f=="true"){$("#place-"+e+"-cell").find(".vote").toggle()}b=false})}},hide:function(e,d){if(!b){b=true;$.post(c+"/place_block/hide/"+e,function(f){if(f=="true"){$("#place-"+e+"-cell").find(".hidden").toggle();$("#place-"+e+"-cell").hide()}b=false})}},unhide:function(e,d){if(!b){b=true;$.post(c+"/place_block/unhide/"+e,function(f){if(f=="true"){$("#place-"+e+"-cell").find(".hidden").toggle()}b=false})}}}}();$(document).ready(function(){$("body").delegate("textarea","keypress",function(){return Blocksnap.verify_textarea(this)});$("body").delegate("textarea","blur",function(){return Blocksnap.verify_textarea(this)});$("input.first-focus").each(function(){$(this).focus()})});
