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 else if(self.args.additional_info_type == 'property_title' ) { 95 96 if(self.args.additional_info != '') { 97 98 var addinfo = document.createElement('div'); 99 addinfo.className = 'dtdr-marker-addition-info dtdr-marker-addition-info-'+self.args.additional_info_type; 100 101 var newContent = document.createTextNode(self.args.additional_info); 102 103 addinfo.appendChild(newContent); 104 105 div.appendChild(addinfo); 106 107 } 108 109 } 110 111 112 // Marker Info Box 113 google.maps.event.addDomListener(div, 'click', function(event) { 114 115 event.preventDefault(); 116 google.maps.event.trigger(self, 'click'); 117 118 jQuery('div.dtdr-marker-info-box').removeClass('show'); 119 120 if(self.args.info_content != undefined) { 121 122 self.infobox.setContent(self.args.info_content); 123 self.infobox.setPosition(self.latlng); 124 self.infobox.open(self.map); 125 setTimeout(function(){ 126 self.infobox.setOptions({ 127 boxClass: 'dtdr-marker-info-box show', 128 }); 129 }, 10); 130 131 } 132 133 }); 134 135 var panes = this.getPanes(); 136 panes.overlayImage.appendChild(div); 137 138 var point = this.getProjection().fromLatLngToDivPixel(this.latlng); 139 140 if (point) { 141 div.style.left = point.x + 'px'; 142 div.style.top = point.y + 'px'; 143 } 144 145 this.div = div; 146 } 147 148 var point = this.getProjection().fromLatLngToDivPixel(this.latlng); 149 if (point) { 150 div.style.left = point.x + 'px'; 151 div.style.top = point.y + 'px'; 152 } 153 154}; 155 156dtDirectoryCustomMarker.prototype.remove = function() { 157 if (this.div) { 158 this.div.parentNode.removeChild(this.div); 159 this.div = null; 160 } 161}; 162 163dtDirectoryCustomMarker.prototype.getPosition = function() { 164 return this.latlng; 165};
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.