1function dtDirectoryCustomMarker( latlng, map, args, infobox ) { 2 this.latlng = latlng; 3 this.map = map; 4 this.args = args 5 this.infobox = infobox; 6 this.setMap(map); 7} 8 9dtDirectoryCustomMarker.prototype = new google.maps.OverlayView(); 10 11dtDirectoryCustomMarker.prototype.draw = function() { 12 13 var self = this, 14 div = self.div; 15 16 if (!div) { 17 18 div = self.div = document.createElement('div'); 19 if(self.args.listingid == undefined) { 20 div.id = 'dtdr-user'; 21 } else { 22 div.id = 'dtdr-'+self.args.listingid; 23 } 24 25 div.className = 'dtdr-marker-container'; 26 div.style.position = 'absolute'; 27 div.style.cursor = 'pointer'; 28 div.style.zIndex = 10; 29 30 // Marker 31 if(self.args.map_icon != undefined) { 32 33 var maskimg = document.createElement('div'); 34 maskimg.className = 'dtdr-marker-image'; 35 36 maskimg.style.webkitMaskImage = 'url('+self.args.map_icon+')'; 37 div.appendChild(maskimg); 38 39 } 40 41 42 // Additional detail along with marker 43 if(self.args.additional_info_type == 'categoryimage') { 44 45 var addinfo = document.createElement('div'); 46 addinfo.className = 'dtdr-marker-addition-info dtdr-marker-addition-info-'+self.args.additional_info_type; 47 addinfo.style.backgroundColor = self.args.category_background_color; 48 49 if(self.args.additional_info != '') { 50 51 var addinfodiv = document.createElement('div'); 52 addinfodiv.className = 'dtdr-marker-addition-info-categoryimage-inner'; 53 addinfodiv.style.webkitMaskImage = 'url("'+self.args.additional_info+'")'; 54 addinfodiv.style.backgroundColor = self.args.category_color; 55 addinfo.appendChild(addinfodiv); 56 57 } 58 59 div.appendChild(addinfo); 60 61 } else if(self.args.additional_info_type == 'categoryicon') { 62 63 var addinfo = document.createElement('div'); 64 addinfo.className = 'dtdr-marker-addition-info dtdr-marker-addition-info-'+self.args.additional_info_type; 65 66 if(self.args.additional_info != '') { 67 68 var addinfospan = document.createElement('span'); 69 addinfospan.className = self.args.additional_info; 70 addinfospan.style.color = self.args.category_color; 71 addinfospan.style.backgroundColor = self.args.category_background_color; 72 addinfo.appendChild(addinfospan); 73 74 } 75 76 div.appendChild(addinfo); 77 78 } else if(self.args.additional_info_type == 'totalviews' || self.args.additional_info_type == 'averageratings' || self.args.additional_info_type == 'distance') { 79 80 if(self.args.additional_info != '') { 81 82 var addinfo = document.createElement('div'); 83 addinfo.className = 'dtdr-marker-addition-info dtdr-marker-addition-info-'+self.args.additional_info_type; 84 85 var newContent = document.createTextNode(self.args.additional_info); 86 87 addinfo.appendChild(newContent); 88 89 div.appendChild(addinfo); 90 91 } 92 93 } 94 95 96 // Marker Info Box 97 google.maps.event.addDomListener(div, 'click', function(event) { 98 99 event.preventDefault(); 100 google.maps.event.trigger(self, 'click'); 101 102 jQuery('div.dtdr-marker-info-box').removeClass('show'); 103 104 if(self.args.info_content != undefined) { 105 106 self.infobox.setContent(self.args.info_content); 107 self.infobox.setPosition(self.latlng); 108 self.infobox.open(self.map); 109 setTimeout(function(){ 110 self.infobox.setOptions({ 111 boxClass: 'dtdr-marker-info-box show', 112 }); 113 }, 10); 114 115 } 116 117 }); 118 119 var panes = this.getPanes(); 120 panes.overlayImage.appendChild(div); 121 122 var point = this.getProjection().fromLatLngToDivPixel(this.latlng); 123 124 if (point) { 125 div.style.left = point.x + 'px'; 126 div.style.top = point.y + 'px'; 127 } 128 129 this.div = div; 130 } 131 132 var point = this.getProjection().fromLatLngToDivPixel(this.latlng); 133 if (point) { 134 div.style.left = point.x + 'px'; 135 div.style.top = point.y + 'px'; 136 } 137 138}; 139 140dtDirectoryCustomMarker.prototype.remove = function() { 141 if (this.div) { 142 this.div.parentNode.removeChild(this.div); 143 this.div = null; 144 } 145}; 146 147dtDirectoryCustomMarker.prototype.getPosition = function() { 148 return this.latlng; 149};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.