From: "Saved by Windows Internet Explorer 7" Subject: Buyer Full Report Date: Sun, 20 Apr 2008 16:37:54 -0400 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_0009_01C8A304.E1E188B0" X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6000.16545 This is a multi-part message in MIME format. ------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://trianglelistings.marketlinx.com/SearchDetail/Scripts/PrtBuyFul/PrtBuyFul.asp?prp=mls&AgentId=R76338&EmailKey=25708838 Buyer = Full Report
Agent=20 Information
  Name: Mike Humphreys
Phone: 919-619-0595 
Fax:  
Cell:  
Email: mikehumphreys@nc.rr.com =
Web: http://www.mikes-realty.com/ 
 
Office=20 Information
  Name: Lyell Cash Properties
Address: 147 W. King St.
Hillsborough, NC 27278
Phone: 919-623-0383 
Fax:  
Web:  
 
 
989781 Active Residential   LP: $
136 N=20 Fields Circle City: Chapel Hill
Media:    12  V  1 Area/Sub: 207/N/A Zip : 27516 Yr Blt: 2004
Subdivision: Lake Hogan Farms Nbrhd:
School=20 Information
Elementary 1: CH/Carrboro - Morris Grove = Elementary 2:
Middle 1: CH/Carrboro - McDougle Middle 2:
High 1: CH/Carrboro - Chapel Hill High 2:
Dir: I40 to Exit266 then SOUTH to MLK Blvd = for 1 mile=20 then RIGHT onto Homestead Road then 2.5 miles to RIGHT into Lake = Hogan=20 Farms. Follow road until LEFT onto Long Meadow Road then second = Right into=20 North Fields Cir - house on LEFT.

Remarks : Beautiful home, wood flooring to = living,=20 dining area and kitchen, with spacious flexible open plan design.=20 Cathedral ceiling to entrance foyer - WOW! Fabulous master bedroom = with=20 spacious and luxurious bathroom leading on to 'so much space' = closet. One=20 of the few 3000+sf properties in North Fields=20 Circle.Pool,Clubhouse,Basketball, Tennis,Lake & new Elementary = School=20 in Aug '08.

Rooms / SqFt Information=20

Living Area Above Grade: 3011 Below Grade: 0 Total: 3011
Other Area  Above Grade: 0 Below Grade: 0 Total: 0
# Rooms: 11 Beds: 4 Full Baths: 3 Half Baths: 1
Living Area-Room = Dim/Levels Other Area-Room = Dim/Levels
Entry Hall: 7.6x25.7 / Main = Master BR: 22x12 / Second Garage: 18.2x19 / Lower =
Living: 13.2x12.5 / Main Bedroom 2: 11.7x9.8 / Second = Carport: /
Dining: 11.1x13 / Main Bedroom 3: 11.8x10.7 / Second = Storage: /
Family: 18.5X13 / Main Bedroom 4: 10.3x10.8 / Second = Porch: 20x6.2 / Main
Office/Study: 16X10 / Main Bedroom 5: / Patio: 12x10 / Lower
Kitchen: 12.5X13 / Main Utility: 8x8 / Main Deck: /
Breakfast: 10.7x8 / Main Bonus: 13.5x12.2 / Second Scrnd Porch: 12x10 / Main =

General Information

Lot Dim: N/K Lot #: Appx Acres: 0.14
Foundation: Zoning: R20 In City: Yes
New Construction (Y/N): No Est Fin Date: / HUD Compliant Senior Housing: No
Builders Name: David Weekley = Homes Restrictive Covenants: = Yes
HOA Mgmt: CAS Inc HOA Phone: 919-403-1400 HOA Fax : 919-403-1499 Total HOA Dues: $ /Monthly

Financing and Taxes

Tax Value: $ Tax Rate: 0.018072 TM/BK/PAR/LT or Deed Page: P92/162
Financial Comments: Please = present=20 pre-qualification letter with offer.
Legal Desc: 238 Ph 6b Lake Hogan = Farms Pin #:=20 9870022103

Features

Design = - 2=20 Story
Type - Detached
Acres - 0-.25=20 Acres
Style - Transitional
Ext Finish - Fiber=20 Cement
Roof - Shingle
Floors - = Carpet
Floors=20 - CerBath Flr
Floors - Hardwood
Floors -=20 Vinyl
A/C - Central Air
A/C - Dual = Zone
Heat=20 - Dual Zone
Heat - Forced Air
Fuel - Natural = Gas
Water=20 Htr - Gas
FP - Gas Logs
Wtr/Swr - City=20 Sewer
Wtr/Swr - City Water
Parking - 2=20 Garage
Fee Includes - Clubhouse
Fee Includes - = HO=20 Association
Fee Includes - Maint Com. Area
Fee = Includes - Pool
Fee Includes - = Tennis
Financing - New=20 Needed
No Assumption
Dining - Separate Dining=20 Room
W/D = Loc - Utility=20 Room
Equip - Dishwasher
Equip -=20 Disposal
Equip - Dryer
Equip - Electric=20 Range
Equip - Garage Opener
Equip - Range=20 Hood
Equip - Refrigerator
Equip -=20 Washer
Interior - 9 Ft Ceiling
Interior - = Attic Pull=20 Down
Interior - Cath. Ceil.
Interior - Ceiling = Fan
Interior - Garden Tub
Interior - Security = System=20 Prewired
Exterior - Patio
Exterior -=20 Porch
Exterior - Screen Porch
Exterior - Swim=20 Pool/Priv. Com
Exterior - Tennis Court/Priv.=20 Com
Exterior - Walking = Trails

**Information=20 deemed RELIABLE but not GUARANTEED**

**Copyright: 2001-2008 by Triangle = MLS,=20 Inc.**

------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://trianglepictures.marketlinx.com/MediaDisplay/AgentPhotos/R76338.jpg /9j/4AAQSkZJRgABAAEAlgCWAAD//gAfTEVBRCBUZWNobm9sb2dpZXMgSW5jLiBWMS4wMQD/2wCE AAYEBAUEBAYFBQUHBgYHCRAKCQgICRMODgsQFxQYGBYUFhYZHCQfGRsiGxYWICsgIiYnKSkpGB4t MCwoMCQoKScBBgcHCQgJEgoKEicaFhonJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycn JycnJycnJycnJycnJycnJ//EAaIAAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKCwEAAwEBAQEB AQEBAQAAAAAAAAECAwQFBgcICQoLEAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEU MoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2Rl ZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK 0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+foRAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYS QVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNU VVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5 usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/AABEIAPoA1QMBEQACEQEDEQH/ 2gAMAwEAAhEDEQA/AOXKSj/lkOv96uK5skKqSZA2ADHrQ2UIUlxwoz160hNCeVJgHA/OmFhRHIDj av50gQvlSYHyj6ZoBh5cnQqvXpmiwgEch4wAD6mmtB2Awy9tvHTNDYh3lSbedo5qQQnkN0JX3pjF 8gjIytUFxBAf7wHtimxgbf8A2h19KQrh9nPXd+lTYHYabfHAb9KqwaDvsw5IfIA7iizQrWGmBevm H06YqbajuHkAYAfH4VbHcQwjGN+D9KmwXshPJA4L+54osRdCNEmeHbn2FOw0J5KdNx4oegCeSmRh z+nFA7h5SL/GaBJieXH2JosIDCmB8xoKuXD15PU0iQyw7iiwhCT24FMp6gCR0wadx7Cg+opXEGOl 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 QwP/2Q== ------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://trianglepictures.marketlinx.com/LowRes/81/989781_0.jpg /9j/4AAQSkZJRgABAAEASABIAAD//gAfTEVBRCBUZWNobm9sb2dpZXMgSW5jLiBWMS4wMQD/2wCE ABEMDQ8NCxEPDg8TEhEUGiwcGhgYGjUmKB8sPzhDQj44PTxGT2VVRkpfSzw9WHdZX2hrcXJxRFR8 hXtuhGVvcWwBEhMTGhcaMxwcM2xIPUhsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxs bGxsbGxsbGxsbGxsbGxsbP/EAaIAAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKCwEAAwEBAQEB AQEBAQAAAAAAAAECAwQFBgcICQoLEAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEU MoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2Rl ZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK 0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+foRAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYS QVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNU VVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5 usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/AABEIAMABAAMBEQACEQEDEQH/ 2gAMAwEAAhEDEQA/AMWu45haAFFABQAUAFABQAZoAM0AGaADNAFr7Dcm0N15R8sH8ceuPSs+dXsX yu1yrmtCAoAMUAGKADFAwxQIMUDDFAgxxQAUDFpCCgBKBhQIKBhQAY4oATvQAUAJtoAXFMQuKADF AC4oASgAxTEJQAGkAUwHxxSSyKkaMzN0AHWpckVys1o7W201Q91tnuu0WflU+/rXNOq3ojVQsR3F zqcFwt5JuCHjHYD0I9KwvqabBLaw38RuLEBJRy8A/mtbwq20ZnKF9jLIIJBBBHUGulamOwUwFoAK AFoAKAExQAEUAFIApgJSAKADNACGmAUhig0CFoATGKBhRYAxVCFxQIKAEoAKACgAoAVEaRwiKWY8 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 ------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://trianglelistings.marketlinx.com/Search/images/Headers/media.gif R0lGODlhDAAKAPfJAA0NDUdHR0tLSz4+PqurqwsLCw8PD6qqqkVFRWJiYg4ODhkZGTIyMl5eXn9/ f1paWnV1dUBAQOnp6d3d3bGxsZKSkmhoaLW1tT8/P1RUVEZGRoiIiIeHh0hISJ6engoKCpeXl0JC QkNDQ7u7u4qKinh4eLe3t+3t7RYWFhEREeDg4Li4uO/v787Om1BQUYCAgBgYFb6+wrOzsHZ2do6P W1ZWVurrac3Nzfn5sPr6utTUwNjYodHR0fn7fPHx8fLya/v7yfb4ZA4OD7S0c1BQUDMzM/f36NnZ 4TU1Na2troyMjLCwseXlseHh4VVVVaysrMnJyWxsbOzs7NTUqh0dH/n7UJGRkYODg97e3oKCgrW1 tJCQkP//dufoqnp6fvPz89zdmf7/qDIyMcfHyCEhIZaWlKCgoODgjvT1kgYGBWdnZxUVFfPzQvb4 lfDxXPLzgn19fefn2sPDwz4+OXx8fHt7e7i5dba2tl1dXfT1dnNzc9/f36ioqJOTk+3uZuXl5cXF xrq7P1BRFH5+afP1jSwsLPHxaZiYmNTU1NLS1Y+Pj+Dg3z09Pe3vWaKioq6uiLq6uqqqjbKysl9g FaOjojY3Levr63BwcGZmLRAQENra2oSEhLOzs+7wSq6urmBgYH5+fszModHSY4eHivHydnd3d8bG xlFRUcjIyFhYWHBwdgIBAPLy8u7vVeTk5B0dHfT1d6WlpWRlEW9vb4WFheLi4fT0oPr6+uPj4ykp KdfX2Xp6erKys/n52FlZWfPzTmZmZvb3k+Li2GFhYfT09O3tlfb29mJiTAAAAP///wAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEA AAAh+QQJyADJACwAAAAADAAKAAAIgACTJTMmkAMIM8lYERMoicinChJuEbk0q4MnEJawSMESi4CE P7hUkCDhI5kUAnIOIRLoA88aBa8ElIJ0h4wBAwoKGUCmpgGfPg1OIRsqAECBAST2KALVYSiyDgUK RIDj4QodRk4xAEA2DNiMEg0YOM11QYAvAg8eHMgQIICAEQEBACH5BAUUAMkALAAAAAAMAAoAAAiA AJMJFJjEy5QwOHIASabCygooS44MCfLDhhEKN56caEIhRosqPbjo4MDiiwQeY2TsANOFCY0FKRQg 2TJCC4wFVISIMYAsQgUICTy4QEY0AIAPCDZMUPJCAFFkRgsMcHAgi4MBT0WgQJbAAoQSDYo8ZXAB wwMCGZwcqIFAQwgTAQEAIfkEBRQAyQAsAAAAAAwACgAACGYAkwkUCCgSqV952MBKZirKFUqLhIny Y6jVG06oHE2olSgOGkK2ghXb5OqEJl66Qrnp1KZRoIEMyvQ6I2uSHUGYBiabMejRnFWV0hzTmWyU qjpEddLSEyXpwF0WMjkVmAqEAA0DAwIAIfkEBRQAyQAsAAAAAAwACgAACGUAkwkUmMTLlDA4cgBJ psLKCihLjgwJ8sOGEQo3npxoQiFGiyo9uOjgwOKLBB5jZOwA04UJjYFItozQAmMBFSFiBiaDkMCD C2RAA+hMpuSFgKE6szgYgHRgiQZFmgp0cqAGgoEBAQA7 ------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://trianglelistings.marketlinx.com/Share/MlnxStyle.css SPAN.title { FONT-WEIGHT: bold; FONT-SIZE: 1.1em; COLOR: navy; FONT-FAMILY: Arial, = Helvetica, "Times New Roman", serif } TD { FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, "Times New Roman", = serif } SPAN.divid { FONT-WEIGHT: bold; FONT-SIZE: 1.1em; COLOR: red; FONT-FAMILY: Arial, = Helvetica, "Times New Roman", serif } SPAN.unboldTitle { FONT-SIZE: 0.9em; FONT-FAMILY: Arial, Helvetica, "Times New Roman", = serif } TD.highlight { FONT-WEIGHT: bold; FONT-SIZE: 0.7em; COLOR: red; FONT-FAMILY: Arial, = Helvetica, "Times New Roman", serif; BACKGROUND-COLOR: silver } BODY { FONT-SIZE: 0.7em; COLOR: black; FONT-FAMILY: Arial, Helvetica, "Times = New Roman", serif } SPAN.Heading { FONT-WEIGHT: bold; FONT-SIZE: 1.2em; COLOR: navy; FONT-FAMILY: Arial, = Helvetica, "Times New Roman", serif } TD.silver { FONT-WEIGHT: bold; FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, = "Times New Roman", serif; BACKGROUND-COLOR: silver; TEXT-ALIGN: center } TD.silverHead { FONT-WEIGHT: bold; FONT-SIZE: 0.8em; FONT-FAMILY: Arial, Helvetica, = "Times New Roman", serif; BACKGROUND-COLOR: silver; TEXT-ALIGN: center } TD.RedDisclaimer { FONT-SIZE: 0.7em; COLOR: red; FONT-FAMILY: Arial, Helvetica, "Times New = Roman", serif } TD.Disclaimer { FONT-SIZE: 0.7em } TD.std { FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, "Times New Roman", = serif } TD.boldCenter { FONT-WEIGHT: bold; FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, = "Times New Roman", serif; TEXT-ALIGN: center } TD.boldLeft { FONT-WEIGHT: bold; FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, = "Times New Roman", serif; TEXT-ALIGN: left } TD.boldRight { FONT-WEIGHT: bold; FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, = "Times New Roman", serif; TEXT-ALIGN: right } TD.Navy { FONT-WEIGHT: bold; FONT-SIZE: 0.7em; COLOR: white; FONT-FAMILY: Arial, = Helvetica, "Times New Roman", serif; BACKGROUND-COLOR: navy } SPAN.std { FONT-WEIGHT: normal; FONT-SIZE: 0.9em; COLOR: black; FONT-FAMILY: = Arial, Helvetica, "Times New Roman", serif } TD.PurpleHead { FONT-SIZE: 0.9em; COLOR: white; FONT-FAMILY: Arial, Helvetica, "Times = New Roman", serif; BACKGROUND-COLOR: #a7a7d3 } TD.PurpleStd { FONT-WEIGHT: normal; FONT-SIZE: 0.7em; COLOR: black; FONT-FAMILY: = Arial, Helvetica, "Times New Roman", serif; BACKGROUND-COLOR: #a7a7d3 } H1 { FONT-WEIGHT: bold; FONT-SIZE: 1em } TD.SilverSmall { FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, "Times New Roman", = serif; BACKGROUND-COLOR: silver } SELECT.Small { FONT-SIZE: 0.9em; FONT-FAMILY: Arial, helvetica, "Times New Roman", = serif } TD.LightGray { FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, 'Times New Roman', = serif; BACKGROUND-COLOR: #e8e8e8 } TD.LightGrayRight { FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, 'Times New Roman', = serif; BACKGROUND-COLOR: #e8e8e8; TEXT-ALIGN: right } TD.GoldCenter { FONT-WEIGHT: 600; FONT-SIZE: 0.9em; COLOR: black; FONT-FAMILY: Arial, = Helvetica, 'Times New Roman', serif; BACKGROUND-COLOR: #edcb43; = TEXT-ALIGN: center } TD.NavyHead { FONT-WEIGHT: 600; FONT-SIZE: 0.9em; COLOR: white; FONT-FAMILY: Arial, = Helvetica, 'Times New Roman', serif; BACKGROUND-COLOR: navy; TEXT-ALIGN: = center } TD.StdBlue { FONT-WEIGHT: bolder; FONT-SIZE: 0.7em; COLOR: navy; FONT-FAMILY: Arial, = Helvetica, 'Times New Roman', serif } TD.SubHead { FONT-WEIGHT: bolder; FONT-SIZE: 1.4em; COLOR: navy; FONT-FAMILY: 'Times = New Roman', serif, Arial, Helvetica } TD.LoadBox { VERTICAL-ALIGN: top; FONT-FAMILY: 'Times New Roman', serif, Arial, = Helvetica; BACKGROUND-COLOR: silver; TEXT-ALIGN: center } SPAN.NoPvalue { FONT-WEIGHT: bold; FONT-SIZE: 1.5em; COLOR: black; FONT-FAMILY: Arial, = Helvetica, "Times New Roman", serif } TD.LightGrayCenter { FONT-SIZE: 0.7em; FONT-FAMILY: Arial, Helvetica, 'Times New Roman', = serif; BACKGROUND-COLOR: #e8e8e8; TEXT-ALIGN: center } TD.divid { FONT-WEIGHT: bold; FONT-SIZE: 0.7em; COLOR: red; FONT-FAMILY: Arial, = Helvetica, "Times New Roman", serif; BACKGROUND-COLOR: silver } BODY.MarkPenBG { BACKGROUND-COLOR: #eeeedd } ------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://trianglelistings.marketlinx.com/SearchDetail/Include/DetailPages.css BODY { =09 } .pageHeader { LEFT: -100px; VISIBILITY: hidden; POSITION: absolute; TOP: -10px } .tableHeader { FONT-WEIGHT: bold; FONT-SIZE: 8pt; BACKGROUND: #ececec; COLOR: #000080; = FONT-FAMILY: "Arial"; TEXT-ALIGN: left } .comment { =09 } .highlight { =09 } ------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://trianglelistings.marketlinx.com/Share/CurrentWeb.js function currentWeb(){ var temp1 =3D new String(location.pathname); return temp1.substring(1,temp1.indexOf('/',1)); } function currentWebAbs(){ var temp1 =3D new String(location.pathname); return temp1.substring(0,temp1.indexOf('/',1)); } function ReturnWebServer() { temp =3D new String(document.referrer); // get page we = came from temp =3D temp.substring(7,temp.length); // strip off = http:// temp =3D temp.substring(0,temp.indexOf('/',1)+1); // strip off = suffix, leave server=20 return "http://"+temp; } // Extract and return the web page in the given url removing any // parameters and paths. // function GetWebPage(szHref) { var szTmp, idx; szTmp =3D new String(szHref); =20 szTmp =3D szTmp.substring( szTmp.lastIndexOf('/')+1, szTmp.length); idx =3D szTmp.indexOf('?'); if (idx > -1) { szTmp =3D szTmp.substring(0, szTmp.indexOf('?') ); } return szTmp; } ------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://trianglelistings.marketlinx.com/Share/Write.js function writeCount() { count++; document.write(" " + count); } function WriteMlsPrp(num, prp)=20 {=20 Response.Write(''); Response.Write(''); Response.Write(num); Response.Write(''); =20 if(gOpenWinDef =3D=3D true) { Response.Write(''); } } function writePhoneNumber(phone) { var reNum =3D /\d/g; var numArray =3D Array(); var rtnVal =3D String(); =09 var strPhone =3D String(phone); strPhone =3D strPhone.replace(/ /g,""); =09 if(strPhone.length=3D=3D0) { document.write(" "); return; } =09 numArray =3D strPhone.match(reNum); if(numArray =3D=3D null) { document.write(" "); return; =09 } =09 var len =3D numArray.length; =09 if (len =3D=3D 10) // Format (xxx)xxx-xxxx { for(i =3D 0; i < 10; i++) { if(i =3D=3D 0) rtnVal +=3D '('; if(i =3D=3D 3) rtnVal +=3D ')'; if(i =3D=3D 6) rtnVal +=3D '-'; rtnVal +=3D numArray[i]; } =09 } else if (len =3D=3D 7) // Format xxx-xxxx { for(i =3D 0; i < 7; i++) { if(i =3D=3D 3) rtnVal +=3D '-'; rtnVal +=3D numArray[i]; }=09 } else if (len > 10) // Format (xxx)xxx-xxxx - xxxx for extension { for(i =3D 0; i < len; i++) { if(i =3D=3D 0) rtnVal +=3D '('; if(i =3D=3D 3) rtnVal +=3D ')'; if(i =3D=3D 6) rtnVal +=3D '-'; if(i =3D=3D 10) rtnVal +=3D ' - '; rtnVal +=3D numArray[i]; } =09 } else // No format just print the number { for(i=3D0; i < len; i++) { rtnVal +=3D numArray[i]; } } =09 document.write(rtnVal); } function writeDate(date) { listDate =3D new String(date); if(listDate.length =3D=3D 0) { return; } =20 document.write(FormatEditDate(date)); } function writeDate4Yr(date) { listDate =3D new String(date); if(listDate.length =3D=3D 0) { return; } =20 document.write(FormatEditDate4Yr(date)); } function FormatEditDate(date) { listDate =3D new String(date); if(listDate.length =3D=3D 0) return ""; year =3D listDate.substring(2, 4);=20 month =3D listDate.substring(5, 7);=20 day =3D listDate.substring(8,10); return ( month + "/" + day + "/" + year ); } function FormatEditDate4Yr(date) { listDate =3D new String(date); if(listDate.length =3D=3D 0) return ""; year =3D listDate.substring(0, 4);=20 month =3D listDate.substring(5, 7);=20 day =3D listDate.substring(8,10); return ( month + "/" + day + "/" + year ); } //-----------------------------------------------------------------------= ------ function DecommifyNumber(num) { var regexp =3D /\W/g; var internal =3D new String(num); // Make sure its a string internal =3D internal.replace(regexp, ""); =09 return internal; } function CommifyNumber(num) { return SetCommas(DecommifyNumber(num)); } //-----------------------------------------------------------------------= ------ function SetCommas(num) { if(typeof(num)=3D=3D"undefined") num =3D new String("0"); else num =3D new String(num); // 1. drops everything after "." // 2. adds comma from 3333333 to 3333,333 // 3. adds rest of commas 3,333,333 return num.replace(/^([^\.]*)\.?.*$/, '$1').replace(/(\d)(\d{3})$/, = '$1,$2').replace(/(\d)(\d{3}),/g, '$1,$2,'); } =20 function writeCommas(num) { document.write(SetCommas(num)); } function IsSome(str) { str =3D new String(str); if(str.length<=3D0) { str=3D""; return "false" }; =20 str =3D str.substring(0, 255); if(str=3D=3D"NaN") { str=3D""; return "false" }; if(str=3D=3D"undefined") { str=3D""; return "false" }; =20 if(str=3D=3D"") return "false"; =20 return "true"; } //-----------------------------------------------------------------------= ------ function RoundFloat(num, pos) { if (typeof "num"=3D=3D"string" && num.length=3D=3D0) return; =20 var offset =3D Math.pow(10, parseInt(pos)); var result =3D = Math.round(parseFloat(num)*parseInt(offset))/parseInt(offset); =09 return String(result); } function RoundFixed(num, pos) { var internal =3D String(RoundFloat(num,pos)); =09 if (typeof "internal"=3D=3D"string" && internal.length=3D=3D0) return; if ((internal.indexOf(".") =3D=3D -1) && (pos > 0)) internal +=3D "."; for(var i =3D (internal.length - 1 - internal.indexOf(".")); i < pos; = i++) { internal +=3D '0';=09 } =09 return String(internal); } //-----------------------------------------------------------------------= ------ function writeDecimal0(num) { if(IsSome(num)=3D=3D"false") return; =20 document.write(Math.round(num)); } function writeDecimal1(num) { if(IsSome(num)=3D=3D"false") return; var i =3D new String(Math.round(num*10)/10); if (i.length>1 && i.charAt(i.length-2) =3D=3D ".") {} // do = nothing else if (i.length>0 && i.charAt(i.length-1) =3D=3D ".") {i +=3D = "0";} else {i +=3D ".0";} document.write(i); } function writeDecimal2(num) { document.write(returnDecimal2(num)); } function returnDecimal2(num) { if(IsSome(num)=3D=3D"false") return " ";=20 var i =3D new String(Math.round(num*100)/100); if (i.length>2 && i.charAt(i.length-3) =3D=3D ".") {} // do = nothing else if (i.length>1 && i.charAt(i.length-2) =3D=3D ".") {i +=3D = "0";} else if (i.length>0 && i.charAt(i.length-1) =3D=3D ".") {i +=3D = "00";} else {i +=3D ".00";} return i; } function writeDecimal4(num) { document.write(returnDecimal4(num)); } function returnDecimal4(num) { if(IsSome(num)=3D=3D"false") return " ";=20 var i =3D new String(Math.round(num*10000)/10000); if (i.length>4 && i.charAt(i.length-5) =3D=3D ".") {} // do = nothing else if (i.length>3 && i.charAt(i.length-4) =3D=3D ".") {i +=3D = "0";} else if (i.length>2 && i.charAt(i.length-3) =3D=3D ".") {i +=3D = "00";} else if (i.length>1 && i.charAt(i.length-2) =3D=3D ".") {i +=3D = "000";} else if (i.length>0 && i.charAt(i.length-1) =3D=3D ".") {i +=3D = "0000";} else {i +=3D ".0000";} return i; } function writeDecimal2_noz(num) { if(IsSome(num)=3D=3D"false") return; var i =3D new String(Math.round(num*100)/100); document.write(i); } function writeSlash(str) { var result =3D new String(""); var numChars =3D 5; var ct =3D 1; var idx =3D 0; var i; for(i =3D 0; i < str.length/numChars; i++) { temp =3D str.substring(idx, ct*5); blank =3D temp.indexOf(" "); if(blank > 0) // remove trailing blanks temp =3D temp.substring(0, blank); =20 if(temp.length > 0 && ct =3D=3D 1) result +=3D temp; // no slash on first entry else result +=3D (" / " + temp); ct++; idx +=3D 5; } document.write(result); } function convertDecimalToInt(num) { if (typeof num =3D=3D "number") { num =3D num.toString(); } var offset =3D num.indexOf("."); num =3D num.substring(0, offset); document.write(num); } // ---------------------------------------------------- // writePropertyType() //STOP USING THIS CRITTER--- SHOULD NOT BE LOCKING THIS STUFF INTO A STD = WEB (THEY VARY BY CONTRACT) // // This function accepts one of the four table names // res, cnd, mul, or llf and writes out a string for // human readability. // function writePropertyType(type) { // Use a temporary so we don't change what was given to us. var tmp =3D new String(type); tmp =3D tmp.toLowerCase(); if (tmp =3D=3D "res") { document.write("Residential"); } else if (tmp =3D=3D "lnd") { document.write("Vacant Land"); } else if (tmp =3D=3D "com") { document.write("Commercial"); } else { // Default to spitting out what came in. document.write(type); } } // ---------------------------------------------------- //STOP USING THIS CRITTER--- SHOULD NOT BE LOCKING THIS STUFF INTO A STD = WEB (THEY VARY BY CONTRACT) // writeStatus() // // This function accepts one of the six status names // act, pend, closd, incom, exp, with and writes out a string for // human readability. // function writeStatus(Stat) { // Use a temporary so we don't change what was given to us. var tmp =3D new String(Stat); tmp =3D tmp.toLowerCase(); if(tmp =3D=3D "incom")=20 document.write("Incomplete"); else if(tmp =3D=3D "act") document.write("Active"); else if(tmp =3D=3D "ko") document.write("Active with a = Kick-out"); else if(tmp =3D=3D "opt") document.write("Active with an = Option"); else if(tmp =3D=3D "con") document.write("Active with a = Contingency"); =09 else if(tmp =3D=3D "pend" || tmp =3D=3D "pnd") document.write("Pending"); else if(tmp =3D=3D "closd") document.write("Closed"); else if(tmp =3D=3D "sld") document.write("Sold"); else if(tmp =3D=3D "with" || tmp =3D=3D "wth") document.write("Withdrawn"); else if(tmp =3D=3D "can") document.write("Cancelled"); else if(tmp =3D=3D "tom") document.write("Temporarily off the = Market"); else if(tmp =3D=3D "exp") document.write("Expired"); else document.write(Stat); } function UpperLower(line) { var l1; line =3D new String(line); line =3D line.toUpperCase(); l1 =3D new String(line.substring(0, 1)); line =3D line.toLowerCase(); line =3D l1 + line.substring(1, 255); return(line); =20 } ------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://trianglelistings.marketlinx.com/Pointers/Locator.js // ----- Server Definitions ----------------------------------------- var=20 sLocal =3D "/" ,sSwitch =3D "/" ,sStaff =3D "/" ,sTips =3D "/" //,debugMap =3D true // code just checks to see if this variable is = defined, so just comment out do get production version ; // ----- Navigation Base Functions ---------------------------------- function GoTo (ser,add) {parent.location.href =3D ser + = add;} // blow away any frames function GoToDocument(ser,add) {document.location.href =3D ser + add;} = // load in frame function GoToNewUI (ser,add) {top.main.location.href =3D ser + add;} = // blow away any frames function Replace(ser, add) {document.location.replace(ser+add);} // = replace in history function Redirect(ser, add) {Replace(ser, add); = document.location.reload();} //redirect a page.=20 function PopupNewWindow(ser,add) { var url =3D ser + add; window.open(url, "Triangle"); return; } function PopupNewWindowSmall(ser,add) { var url =3D ser + add; window.open(url, = "TriangleSmall","width=3D500,height=3D600,scrollbars=3D1,resizable=3D1");= return; } // Determine whether we are old or new ui var bNewUI =3D false; try { if (top.name =3D=3D 'new') { bNewUI =3D true; } } catch(e) { bNewUI =3D true; } // ----- Specific Web Navigation Functions --------------------------- function GetAddEditWeb() { if (bNewUI =3D=3D false) { GoTo(sLocal,"Edit/"); return; } GoToNewUI(sLocal, "Edit/NewUI.html"); top.menu.changeVariable("edit"); top.menu.activateCell(1); return; } =20 function GetAgent(pubID) { PopupNewWindowSmall(sLocal, = GetRosterPath()+"Scripts/Member.asp?PubID=3D"+pubID); } function GetBroker(BkrCode) { BkrCode =3D escape(BkrCode), = PopupNewWindowSmall(sLocal, = GetRosterPath()+"Scripts/OfficeSrhPopUp.asp?OfficeID=3D"+BkrCode); } /* function GetBrokerHeadWeb() { if (bNewUI =3D=3D false) { GoTo(sLocal,"/BrokerHead/"); return; } =20 GoToNewUI(sLocal, "/BrokerHead/DefaultNew.htm"); top.menu.changeVariable("headbroker"); top.menu.activateCell(1); return; } function GetBrokerOfficePath() { return "BrokerOffice/"; } function GetBrokerOfficeWeb() { //{ GoTo(sLocal,GetBrokerOfficePath() + = "Default.htm"); } if (bNewUI =3D=3D false) { GoTo(sLocal,"BrokerOffice/Default.htm"); return; } =20 GoToNewUI(sLocal, "BrokerOffice/DefaultNew.htm"); top.menu.changeVariable("officebroker"); top.menu.activateCell(1); return; } */ function GetBrokerHeadWeb() { GoToDocument(sLocal, "BrokerHead/DefaultNew.htm"); top.menu.changeVariable("headbroker"); top.menu.activateCell(1); return; } function GetBrokerOfficePath() { return "BrokerOffice/"; } function GetBrokerOfficeWeb() { // { = GoTo(sLocal,GetBrokerOfficePath() + "Default.htm"); } GoToNewUI(sLocal, "BrokerOffice/DefaultNew.htm"); top.menu.changeVariable("officebroker"); top.menu.activateCell(1); return; } function GetCustomSearch(sid) { GoToDocument(sLocal, = GetSearchPath()+"Scripts/CSS/CusSrh.asp?Id=3D" + sid); } // This next function is only used in = Prospects/Scripts/ProspectShow.asp. We do not use prp anymore. function GetAdBuilderPath() { return "AdBuilder/"; } function GetAdBuilder() { GoTo(sLocal,GetAdBuilderPath() + = "Default.htm"); } function GetCustomPrpSearch(prp, sid) { return GetCustomSearch(sid); } function GetDiscussionWeb() { = GoTo(sLocal,"Discussion/Default.htm"); } function GetDownloadAction() { return sLocal + = GetSearchPath()+"Scripts/Download/Information.asp"; } //function GetDownloadAction() { return sLocal + = GetSearchPath()+"Scripts/Download/xxDebug_Information.asp"; } function GetEmailWeb() { return sLocal + = "Email/Scripts/EmailForm.asp"; } function GetFinancialWeb() { = GoTo(sLocal,"Financial/Default.htm"); } function GetInfoWeb() { GoTo(sLocal,"Info/default.htm"); } function GetMlsNo() { = GoToDocument(sLocal,GetSearchPath()+"Mls.htm"); } function GetNewsLetterWeb() { = GoTo(sTips,"NewsLetter/newsletter/pageone.htm"); } function GetMyPageWeb() { = GoTo(sLocal,"Subscriber/MyPage.asp"); } function GetPartnersWeb() { GoTo(sLocal,"Partners/Default.htm"); = } function GetPrintListing(prp, mls) { return = GetSearchDetailPath()+"Scripts/PrtAgtFul/PrtAgtFul.asp?MlsNumList=3D" = +mls+ "&prp=3D" +prp; } function GetProspectsWeb() { = GoTo(sLocal,"Prospects/Default.htm"); } function GetReportsPath() { return "Reports/"; } function GetReportsMenu() { GoToDocument(sLocal,GetReportsPath() = + "Scripts/Default.asp"); } function GetReportsWeb() { GoTo(sLocal,GetReportsPath() + = "Default.htm"); } function GetReportsWebAct() { GoTo(sLocal,GetReportsPath() + = "Act.htm"); } function GetRosterPath() { return "Roster/"; } =20 function GetRosterWeb() { GoTo(sLocal, GetRosterPath() + = "Default.htm"); } //function GetRTHome() { = GoTo(sSwitch,"Switch/GetRTHome.asp"); } function GetRTHome() { GoTo(sLocal,"Subscriber/thome.htm"); = } function GetSearchDetailPath() { return "SearchDetail/"; } function GetSearchDetailWeb() { GoTo(sLocal,GetSearchDetailPath() + = "Default.htm"); } function GetSearchMenu() { = GoToDocument(sLocal,GetSearchDetailPath() + "DefaultMenu.htm"); } function GetSearchPath() { return "Search/"; } function GetSearchWeb() { GoTo(sLocal,GetSearchDetailPath() + = "Default.htm"); } function GetStf() { // { GoTo(sStaff,"Stf/default.asp"); = } GoToNewUI(sLocal, "StfMaint/Default.asp"); top.menu.changeVariable("staff"); top.menu.activateCell(1); return; } function GetStfMaint() { = GoToNewUI(sStaff,"StfMaint/default.asp"); } function GetStfPicturesPath() { return "StfPictures"; } function GetStfPictures() { = GoToNewUI(sStaff,GetStfPicturesPath()+"/default.asp"); } function GetTaxWeb() { GoTo(sLocal,"Tax/default.htm"); } function GetThirdParty() { return "/ThirdParty/"; } function GetFullThirdParty() { return = "/ThirdParty/Scripts/GetData.asp"; } function ReturnTaxWeb() { return(sLocal + "Tax/"); } function GetTipsPath() { return (sTips + "Tips/"); } function GetTipsWeb() { GoTo(sTips,"Tips/Default.htm"); } function GetTipsWelcome() { return GetTipsPath() + = "Welcome.htm"; } function RedirectSearch() { Redirect(sLocal,GetSearchDetailPath() = + "Default.htm");} function RedirectBrokerHead() { = Redirect(sLocal,"BrokerHead/Default.htm");} function RedirectReports() { Redirect(sLocal,GetReportsPath() + = "Default.htm");} =20 // ----- Functions Which Do Specific Tasks -------------------------- // This functions builds the url string necessary to display // an agent quarter page w/o photo. function GetPrtNoP4(mls, prp) { var RetVal =3D "/" + GetSearchDetailPath() + = "Scripts/PrtNoP4/PrtNoP4.asp"; RetVal +=3D "?prp=3D"+prp; RetVal +=3D "&MlsNumList=3D"+mls; return (RetVal); } function PrintListing(proptype, mlsNumber) { GoToDocument(sLocal, = GetSearchDetailPath()+"Scripts/PrtAgtFul/PrtAgtFul.asp?MlsNumList=3D" = +mlsNumber+ "&prp=3D" +proptype ); } function PrintEditListing(proptype, uid) { PopupNewWindow(sLocal, = GetSearchDetailPath()+"Scripts/PrtNoPFul/PrtNoPFul.asp" +"?UidList=3D" + uid +"&EditMode=3Dtrue" +"&prp=3D" +proptype); } // ----- Client Side functions to print HTML ------------------------ =20 var thisDD =3D new Date(); function GetCopyright() { return('Software Copyright © Marketlinx, Inc. = 1997-'+thisDD.getFullYear()+' All Rights Reserved V3.0
') } function GetDataCopyright() { return('All Information contained herein is for the = exclusive use of authorized MLS Subscribers
Copyright © TMLS = 2001-'+thisDD.getFullYear()+' North Carolina Triangle MLS, Inc. All = Rights Reserved
Support:Email Help Desk or Call = 919-654-5419
') } //Copyright Info above from Kathy Matheson, 5/31/01 jkw function PrintCopyright() { document.write('

'+GetCopyright()+GetDataCopyright()+'

'); } function PrintDataCopyright() { // document.write('

'+GetDataCopyright()+'

'); } /* function PrintCopyright() { document.write(GetCopyright()); } function PrintDataCopyright() { document.write(GetDataCopyright()); } */ function GetLogo() { return("") } function PrintGetLogo() { document.write(GetLogo()); } function GetProSub() { return ("") } function PrintGetProSub() { document.write(GetProSub()); } function GetProHeader() { return ("") } function PrintGetProHeader() { document.write(GetProHeader()); } // ----- Help Page Functions ---------------------------------------- // check to make sure that we should include help=20 // vHelpPage is include in the 'outside' page to indicate // if help should be included or not. =20 // If it is defined and blank, then use our standard naming convention = of=20 // help.htm // If it is defined and not blank, then use its value as our help file = to open // This function will open the specific page given to it based // on the current web location. Meaning it takes the page url // such as "/Edit/Scripts/Hidden.asp", removes the "Hidden.asp" // part and appends the url passed in. It then opens it in a new // window. function OpenHelpWindow(szPageUrl) { var wAttrib =3D = "width=3D500,height=3D400,toolbar=3D0,status=3D0,location=3D0,directories= =3D0,menubar=3D0,scrollbars=3D1,resizable=3D1"; var szTmp =3D new String(location.pathname); =20 szTmp =3D szTmp.substring( 0, szTmp.lastIndexOf('/')+1); =20 window.open(szTmp + szPageUrl, "Help", wAttrib); } var helpURL; function Click4Help()=20 { var wAttrib =3D = "'width=3D500,height=3D400,scrollbars=3D1,resizable=3D1'" helpURL =3D helpURL + ",'Help'," + wAttrib; eval("window.open("+helpURL+");"); /* if(isExplorer5()) { eval("window.showHelp("+helpURL+");"); } else { var wAttrib =3D = "'width=3D500,height=3D400,scrollbars=3D1,resizable=3D1'" helpURL =3D helpURL + ",'Help'," + wAttrib; eval("window.open("+helpURL+");"); } */ } =20 function OpenHelp(overrideURL) { // this does not work if parameters are passed if((overrideURL=3D=3D"undefined")||(overrideURL=3D=3D'')) { // = default action helpURL =3D new String(self.location.href); =20 if(helpURL.indexOf("?")>0) { helpURL =3D helpURL.substring(0, helpURL.indexOf("?")); } if(helpURL.lastIndexOf(".")>0) { helpURL =3D helpURL.substring(0, helpURL.lastIndexOf(".")); } helpURL +=3D "help.htm"; =20 } else { helpURL =3D overrideURL; } =20 // add ' to front and back of URL helpURL =3D "'"+helpURL+"'"; var wAttrib =3D = "'width=3D500,height=3D400,scrollbars=3D1,resizable=3D1'" //helpURL =3D helpURL + ",'Help'," + wAttrib; document.write (''); document.write ('3D"Help') } =20 function HelpFooter() { document.write( '
\

'); // flag for browser type. var bNetscape =3D (navigator.appName =3D=3D "Netscape") ? true : = false; if (bNetscape =3D=3D true) { document.write('

'); } else { document.write('

To PRINT, right click and select = "Print"

'); } document.write('
'); } // More hacked code in the locator file! function isExplorer5() { // convert all characters to lowercase to simplify testing=20 var agt=3Dnavigator.userAgent.toLowerCase();=20 // *** BROWSER VERSION ***=20 // Note: On IE5, these return 4, so use is_ie5up to detect IE5. var is_major =3D parseInt(navigator.appVersion);=20 var is_ie =3D (agt.indexOf("msie") !=3D -1);=20 var is_ie3 =3D (is_ie && (is_major < 4));=20 var is_ie4 =3D (is_ie && (is_major =3D=3D 4) && (agt.indexOf("msie = 5.0")=3D=3D-1) );=20 var is_ie5up =3D (is_ie && !is_ie3 && !is_ie4);=20 =20 return is_ie5up } function PopUp(url) { window.open(url,"PopUp","height=3D350,width=3D200,scrollbars=3Dyes"); return; } function GetListPopUp(ListBox,FormVar){=20 window.open('/Search/ListPopUp.asp?ListBox=3D' + ListBox + = '&FormVar=3D' + = FormVar,'ListBox','height=3D350,width=3D600,scrollbars=3Dyes');=20 } ------=_NextPart_000_0009_01C8A304.E1E188B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://trianglelistings.marketlinx.com/Share/map.js // map a list of mlsNumbers var mapWin =3D = "toolbar=3D0,status=3D0,location=3D0,directories=3D0,menubar=3D0,scrollba= rs=3D1,resizable=3D1" =20 var customMapType =3D "r"; //Sets a default type, only applies if the = custom code variable useCustomMapType is present and set to true - JDB = 8/29/2007 VI#95731 if(typeof(debugMap)!=3D"undefined" ) { mapWin =3D = "toolbar=3D1,status=3D1,location=3D1,directories=3D0,menubar=3D1,scrollba= rs=3D1,resizable=3D1"; // debug version } function MapMlsNum(uid, prp, sInitService){ ///alert('mapmlsnum') // I've replaced the original code for the mapping window with the = following, which populates hidden // fields in a new form on the srh.asp page and then submits it to a = new window. I did this because // the querystring created by the original code was too long if all = properties were selected from // a quick search with more than 200 results. Please see srh.asp for = more info. ~ MBS ~ 06/19/02 top.mappingWindow =3D window.open("", "Mapping", mapWin ); =20 if ((typeof (sInitService) =3D=3D "undefined") = ||(sInitService=3D=3D"undefined")){ top.mappingWindow.location.href =3D = "/search/mapping/mapSql.asp?prp=3D" +prp+"&where=3D"+ escape("uid = in("+uid+")"); }else{ top.mappingWindow.location.href =3D "/search/mapping/mapSql.asp?prp=3D" = +prp+"&where=3D"+ escape("uid = in("+uid+")")+"&InitService=3D"+sInitService; } /* if(typeof(document.frmMap) !=3D "undefined") { document.frmMap.prp.value =3D prp; =09 document.frmMap.where.value =3D "uid in (" + uid + ")"; document.frmMap.target=3D "Mapping"; document.frmMap.submit(); } else { top.mappingWindow.location.href =3D = "/search/mapping/mapSql.asp?prp=3D" +prp+"&where=3D"+ escape("uid = in("+uid+")"); } */ top.mappingWindow.focus(); } function MapPublic(PropertyID){ = window.open("/Search/mapping/defaultPublic.asp?action=3Dpublic&prp=3DMLS"= +"&mlslist=3D"+PropertyID,"PublicMap","width=3D800,height=3D600,location=3D= no,menubar=3Dyes,status=3Dno,toolbar=3Dno,scrollbars=3Dyes,resizable=3Dye= s"); } function ButtonInit() { ////nomapServer defined in /SearchDetail/Scripts/DefaultUtl.asp if( ( parent.frames[0].nomapServer !=3D 'undefined' ) && ( = parent.frames[0].nomapServer =3D=3D 'true') ) { return; } =20 var clearMap =3D '' if (document.all("LongitudeMax").value !=3D "") { clearMap =3D '' if ( document.all("latLong")!=3Dnull ) { // if we are on the custom search, then show latlong values document.all("latLong").innerHTML =3D=20 document.all("LongitudeMin").value +"< longitude < " + = document.all("LongitudeMax").value + "
" +document.all("LatitudeMin").value +"< latitude < " + = document.all("LatitudeMax").value; =20 if = (typeof(top.main.SearchFrame.document.all("MapShapeSearch"))!=3D"undefine= d"&&top.main.SearchFrame.document.all("MapShapeSearch")!=3Dnull){ if = (top.main.SearchFrame.document.all("MapShapeSearch").value.indexOf("POLY"= ) > 0) { document.all("latLong").innerHTML =3D "Polygon Search Area Defined"; }else if = (top.main.SearchFrame.document.all("MapShapeSearch").value.indexOf("POLY"= ) > 0) { document.all("latLong").innerHTML =3D "Circle Search Area Defined"; } } } } else if ( document.all("latLong")!=3Dnull ) { // no lat/long so clear document.all("latLong").innerHTML =3D ""; } if(document.all("mapClear")!=3Dnull) = document.all("mapClear").innerHTML =3D clearMap; if(document.all("mapClear2")!=3Dnull) = document.all("mapClear2").innerHTML =3D clearMap; } function clearMapBB() { top.main.SearchFrame.document.all("LongitudeMin").value =3D ""; top.main.SearchFrame.document.all("LongitudeMax").value =3D ""; top.main.SearchFrame.document.all("LatitudeMin").value =3D ""; top.main.SearchFrame.document.all("LatitudeMax").value =3D ""; =20 =20 if = (typeof(top.main.SearchFrame.document.all("MapShapeSearch"))!=3D"undefine= d"&&top.main.SearchFrame.document.all("MapShapeSearch")!=3Dnull){ top.main.SearchFrame.document.all("MapShapeSearch").value =3D ""; } ButtonInit(); } function DoMap() { if ( typeof(document.SmallSub.MapAction) !=3D "undefined") { document.SmallSub.MapAction.value =3D ""; } top.mappingWindow =3D window.open("", "Mapping", mapWin); document.SmallSub.target =3D "Mapping"; document.SmallSub.action =3D "/Search/mapping/MapSql.asp"; x=3DGenSql(true); // Only needs bare minimum, x=3D need for mac to = fource gensql to finish before continuing if ( typeof(document.FormOne.Search1) !=3D "undefined")=20 { document.FormOne.Search1.value =3D"Search"; // allow Searching THIS = LINE CAUSES AN ERROR WHERE Search1 not defined } if ( typeof(document.FormOne.Search2) !=3D "undefined")=20 { document.FormOne.Search2.value =3D"Search"; //Allow bottom button to = change back as well if it exists. } document.SmallSub.target =3D "_self";=20 window.setTimeout("ResetTargetToSelf()", 500); // try to set target = value in 1/2 second. } function DoMap2() { top.mappingWindow =3D window.open("", "Mapping", mapWin); document.SmallSub.target =3D "Mapping"; document.SmallSub.action =3D "/Search/mapping/MapSql.asp"; document.SmallSub.where.value =3D ""; document.SmallSub.submit(); ////This is the line that GenSql(true) = causes=20 document.FormOne.Search1.value =3D"Search"; // allow Searching //document.SmallSub.target =3D "_self"; window.setTimeout("ResetTargetToSelf()", 500); // try to set target = value in 1/2 second. } function DoExtendedMapSearch() { top.mappingWindow =3D window.open("", "Mapping", mapWin); document.SmallSub.target =3D "Mapping"; document.SmallSub.action =3D "/Search/mapping/MapSql.asp"; document.SmallSub.MapAction.value =3D "Search"; document.SmallSub.where.value =3D ""; document.SmallSub.submit(); ////This is the line that GenSql(true) = causes=20 document.FormOne.Search1.value =3D"Search"; // allow Searching //document.SmallSub.target =3D "_self"; window.setTimeout("ResetTargetToSelf()", 500); // try to set target = value in 1/2 second. } function ResetTargetToSelf() { document.SmallSub.target =3D "_self"; } function GenSqlDownload(){ var thisAct =3D GetDownloadAction(); if(thisAct.length>1) { document.SmallSub.action =3D GetDownloadAction(); GenSql(true); // Only needs bare minimum } } function GenSearch() { document.SmallSub.action =3D "/"+GetSearchPath() + "Scripts/Srh.asp"; GenSql(true); // Only needs bare minimum } /************ Digital Map 2.0 Implementation Functions Below = ********************/ function DigitalMap(sAcctName, sAgentId, sAPN, sFIPS, sAddress, sCity, = sState, sZip, sType, sFname, sLname, sMLSNum, sMapType) { if (szDMCUsername.length =3D=3D 0){ szDMCUsername =3D sAgentId; initDMC(); } =09 customMapType =3D sMapType; if (sType =3D=3D "SMARTMAP"||sType =3D=3D "SMARTMAP1"){ if (sAddress.length > 0 ){ = getSmartMap().queryByLocation(sAPN,sFIPS,sAddress,sCity,sState,sZip,sMLSN= um); }else{ getSmartMap().openMap(); } } else if (sType=3D=3D"QMLite1.1"){ if (typeof(_QuickPointLite)!=3D"undefined"){ = getQuickPointLite().queryByLocation(sAPN,sFIPS,sAddress,sCity,sState,sZip= ,sMLSNum); } }else{ if (typeof(_QuickMap)!=3D"undefined"){ = getQuickMap().queryByLocation(sAPN,sFIPS,sAddress,sCity,sState,sZip,sMLSN= um); }else if(typeof(window.parent._QuickMap)!=3D"undefined"){ = window.parent.getQuickMap().queryByLocation(sAPN,sFIPS,sAddress,sCity,sSt= ate,sZip,sMLSNum); } } } function initDMC(){ if (typeof(szDMCUsername)!=3D"undefined"){ // window name (second parameter) must be same as the variable name _SmartMap =3D new = __DMPSmartMapInterface("/ShareServer/DigitalMap.asp", "_SmartMap", = width, height, szDMCUsername); // window name (second parameter) must be same as the variable name _QuickMap =3D new __DMPQuickMapInterface(proxyURL, "_QuickMap", = _SmartMap, szDMCUsername); =09 //QuickPoint Lite is used in public detail reports _QuickPointLite =3D new __DMPQuickMapInterface(proxyURL, = "_QuickPointLite", null, szDMCUsername, "QuickPointLite"); } } /************ Digital Map 2.0 Implementation Init Below = ********************/ var width =3D 800; var height =3D 600; var proxyURL =3D "/ShareServer/DigitalMap.asp"; var _SmartMap; var _QuickMap; var _QuickPointLite; var szDMCUsername =3D ""; /************ Digital Map 2.0 windowing functions from thier Sample = Application Map.js file ********************/ function getQuickMap() { var tempWin =3D window; while (tempWin !=3D null && tempWin.parent !=3D tempWin && = tempWin._QuickMap =3D=3D null) { tempWin =3D tempWin.parent; } return tempWin._QuickMap; } function getQuickPointLite() { var tempWin =3D window; while (tempWin !=3D null && tempWin.parent !=3D tempWin && = tempWin._QuickPointLite =3D=3D null) { tempWin =3D tempWin.parent; } return tempWin._QuickPointLite; } function getSmartMap() { var tempWin =3D window; while (tempWin !=3D null && tempWin.parent !=3D tempWin && = tempWin._SmartMap =3D=3D null) { tempWin =3D tempWin.parent; } return tempWin._SmartMap; } /************************************************************************= ***************************************************** QUICKMAP INTERFACE - CODE FROM DMC FILE __DMPQuickMapInterface.js *************************************************************************= *****************************************************/ /** * Digital Map Products QuickMap Interface */ function __DMPQuickMapInterface(proxyURL, windowName, smartMap, agentId, = applicationName)=20 { var XMLDocClass =3D "MSXML2.DOMDocument.3.0"; if (applicationName =3D=3D null || applicationName =3D=3D"") { applicationName=3D"QuickMap"; } var width =3D 509; var height =3D 455; var windowOptions =3D = "status=3Dyes,toolbar=3Dno,menubar=3Dno,location=3Dno,fullscreen=3Dno"; windowOptions +=3D ",height=3D"+height+",width=3D"+width; =09 var mapReady =3D false; var mapWindow =3D null; var queryName =3D null; var savedAPNs =3D null; var savedFIPS =3D null; var savedAddress =3D null; var savedCity =3D null; var savedState =3D null; var savedZip =3D null; var savedMLS =3D null; this.exists =3D function(){ return true; } /** * check for existing map window * return true if window exist and can be scripted to, false otherwise. */ this.mapWindowExists =3D function() { try { if (mapWindow !=3D null && mapWindow.closed !=3D true) { var queryHandler =3D = mapWindow.window.environment.packages.getValue("ExternalAppIntegration");= =09 if (queryHandler !=3D null) return true; } } catch (ex) {} return false; } =09 /** * check if map is ready for integration * return true if map window exists and has received callBack for map = load * false otherwise */ this.isMapReady =3D function() { // check for map window exists if (this.mapWindowExists() =3D=3D false) { // map window doesn't exist // set map ready to false mapReady =3D false; // launch new map window=20 this.openMap(); } // return map readiness stage return mapReady; } =09 this.getMapReferenceOnAncestor =3D function(curWindow) { try { if (curWindow =3D=3D null) return null; if (curWindow._QuickMapWindow !=3D null && curWindow._QuickMapWindow.window.closed !=3D true){ return curWindow._QuickMapWindow; } var tempMapWin =3D null; if (curWindow.parent !=3D curWindow) { tempMapWin =3D this.getMapReferenceOnAncestor(curWindow.parent); } if (tempMapWin !=3D null) return tempMapWin; return this.getMapReferenceOnAncestor(curWindow.opener); } catch (ex) { //alert("set map reference on ancestor(): " + ex.description); return null; } } this.setMapReferenceOnAncestor =3D function(curWindow, mapWin) { try { if (curWindow =3D=3D null) return; curWindow._QuickMapWindow =3D mapWin; if (curWindow.parent !=3D curWindow) { this.setMapReferenceOnAncestor(curWindow.parent, mapWin); } if (curWindow.opener !=3D null) { this.setMapReferenceOnAncestor(curWindow.opener, mapWin); } } catch (ex) { //alert("set map reference on ancestor(): " + ex.description); } } =09 /**=20 * launch map on new window */ this.openMap =3D function() { try { if (this.mapWindowExists()) { // map window exist, probably in=20 // loading state, do not open new window mapWindow.focus(); return; } =09 mapWindow =3D this.getMapReferenceOnAncestor(window); // map window does not exist, launch // map in a new window, name this window // the same as the variable name you used to=20 // store reference to this instance // remember to launch window with all menu and toolbar off // to maximize your display area if (mapWindow =3D=3D null) { mapWindow =3D window.open(proxyURL=20 + "?APPLICATION=3D"+applicationName+"&AgentId=3D"+agentId,=20 windowName, windowOptions); this.setMapReferenceOnAncestor(window, mapWindow); } else { mapReady =3D true; } mapWindow.opener =3D window; mapWindow.window.focus(); } catch (ex){ alert(applicationName + ".openMap(): " + ex.description); } } /** * this method will be called by Map after Map load is completed. * now you can script to map window * this method will also be call when Map need to send any=20 * data back to your application * @param event xml string * format: * ... */ this.callBack =3D function(eventXMLString)=20 { try { mapReady =3D true; // load event xml string to xml document var eventXMLDoc =3D new ActiveXObject(XMLDocClass); eventXMLDoc.loadXML(eventXMLString); // get event name var doc =3D eventXMLDoc.documentElement; var eventName =3D doc.getAttribute("eventName"); // if event is map load if (eventName =3D=3D "MapLoad") { // set map readiness to true mapReady =3D true; // set reference to object manager (us to create query later) gObjectManager =3D mapWindow.window.gObjectManager; if (queryName =3D=3D "APN") { this.queryByAPNs(savedAPNs, savedFIPS); } else if (queryName =3D=3D "Location") { this.queryByLocation(savedAPNs, savedFIPS, savedAddress, savedCity, = savedState, savedZip, savedMLS); } } else if (eventName =3D=3D "OpenSmartMap") { this.openSmartMap(savedAPNs, savedFIPS, savedAddress, savedCity, = savedState, savedZip, savedMLS); } // custom code } catch (ex) { alert(applicationName+".callBack(): " + ex.description); } } =09 /** * query by apns (also known as TaxId) * @param apn list, common delimited * @param fips (state code + county code) */ this.queryByAPNs =3D function(apns, fips) { try { // save query parameters in case map=20 // is not ready for integration savedAPNs =3D apns; savedFIPS =3D fips; queryName =3D "APN"; =09 if (this.isMapReady() !=3D true) { // do nothing; // when map is ready, call this query again.=20 return; } // map is ready if (apns =3D=3D null || fips =3D=3D null) return; mapWindow.window.focus(); //var queryHandler =3D = gObjectManager.constructObject("SmartMapCatalog:QueryHandler"); var queryHandler =3D = mapWindow.window.environment.packages.getValue("ExternalAppIntegration");= queryHandler.queryByAPNs(apns,fips); } catch (ex) { alert(applicationName+".queryByAPNs(APN=3D\"" +apns+"\", fips=3D\"" +fips+"\"): " + ex.description); } } =09 this.queryByLocation =3D function(apn, fips, address, city, state, zip, = sMLSNum) { try { // save query parameters in case map=20 // is not ready for integration if (apn !=3D null) apn =3D apn.toString(); savedAPNs =3D apn; savedFIPS =3D fips; savedAddress =3D address; savedCity =3D city; savedState =3D state; savedZip =3D zip; savedMLS =3D sMLSNum; =09 queryName =3D "Location"; =09 if (this.isMapReady() !=3D true) { // do nothing; // when map is ready, call this query again.=20 return; } // map is ready // if (apn =3D=3D null || fips =3D=3D null) return; mapWindow.window.focus(); var queryHandler =3D = mapWindow.window.environment.packages.getValue("ExternalAppIntegration");= if(typeof(useCustomMapType) !=3D 'undefined' && = useCustomMapType =3D=3D true) { queryHandler.SetMapStyle(customMapType,15); } queryHandler.queryByLocation(apn, fips, address, city, = state, zip, sMLSNum); } catch (ex) { alert(applicationName+".queryByLocation(apn=3D\""+apn+"\", = fips=3D\""+fips+"\", address=3D\"" +address+"\", city=3D\""+city+"\", state=3D\"" +state+"\", zip=3D\""+zip+"\"): " + ex.description); } } this.openSmartMap =3D function (apn, fips, address, city, state, zip, = sMLSNum) { try { if (smartMap =3D=3D null) { return; } if (apn =3D=3D null && (address =3D=3D null=20 || (city =3D=3D null && zip =3D=3D null))) { smartMap.openMap(); } else { smartMap.queryByLocation(apn, fips, address, city, state, zip, = sMLSNum); } =09 } catch (ex) { alert("QuickMap.openSmartMap('"+apns+"', "+fips+") error: " + = ex.description); } } } =09 =09 /************************************************************************= ***************************************************** SMARTMAP INTERFACE - CODE FROM DMC FILE __DMPSmartMapInterface.js *************************************************************************= *****************************************************/ =09 /** * Digital Map Products - SmartMap Interface */ function __DMPSmartMapInterface(proxyURL,=20 windowName, width, height, agentId)=20 { var windowOptions =3D = "toolbar=3Dno,menubar=3Dno,location=3Dno,resizable=3Dyes"; if (width =3D=3D null || isNaN(width) || width < 100) width =3D 800; if (height =3D=3D null || isNaN(height) || height < 100) height =3D = 600; windowOptions +=3D ",height=3D"+height+",width=3D"+width; =09 var applicationName =3D "SmartMap"; var XMLDocClass =3D "MSXML2.DOMDocument.3.0"; var gObjectManager =3D null; var mapReady =3D false; var mapWindow =3D null; =09 var savedResource =3D null; var savedFilter =3D null; var savedAPNs =3D null; var savedFips =3D null; var savedAddress =3D null; var savedCity =3D null; var savedState =3D null; var savedZip =3D null; var savedMLS =3D null; var savedStreet1 =3D null; var savedStreet2 =3D null; var lastQueryName =3D null; =09 /** * check for existing map window * return true if window exist and can be scripted to, false otherwise. */ this.mapWindowExists =3D function() { try { if (mapWindow !=3D null && mapWindow.closed !=3D true) { return true; } } catch (ex) {} return false; } =09 /** * check if map is ready for integration * return true if map window exists and has received callBack for map = load * false otherwise */ this.isMapReady =3D function() { // check for map window exists if (this.mapWindowExists() =3D=3D false) { // map window doesn't exist // set map ready to false mapReady =3D false; // launch new map window=20 this.openMap(); } // return map readiness stage return mapReady; } this.getMapReferenceOnAncestor =3D function(curWindow) { try { if (curWindow =3D=3D null) return null; if (curWindow._SmartMapWindow !=3D null && curWindow._SmartMapWindow.window.closed !=3D true){ return curWindow._SmartMapWindow; } var tempMapWin =3D null; if (curWindow.parent !=3D curWindow) { tempMapWin =3D this.getMapReferenceOnAncestor(curWindow.parent); } if (tempMapWin !=3D null) return tempMapWin; return this.getMapReferenceOnAncestor(curWindow.opener); } catch (ex) { //alert("set map reference on ancestor(): " + ex.description); return null; } } this.setMapReferenceOnAncestor =3D function(curWindow, mapWin) { try { if (curWindow =3D=3D null) return; curWindow._SmartMapWindow =3D mapWin; if (curWindow.parent !=3D curWindow) { this.setMapReferenceOnAncestor(curWindow.parent, mapWin); } if (curWindow.opener !=3D null) { this.setMapReferenceOnAncestor(curWindow.opener, mapWin); } } catch (ex) { //alert("set map reference on ancestor(): " + ex.description); } } /**=20 * launch map on new window */ this.openMap =3D function() { if (this.mapWindowExists()) { // map window exist, probably in=20 // loading state, do not open new window mapWindow.focus(); return; } =09 mapWindow =3D this.getMapReferenceOnAncestor(window); // map window does not exist, launch // map in a new window, name this window // the same as the variable name you used to=20 // store reference to this instance // remember to launch window with all menu and toolbar off // to maximize your display area if (mapWindow =3D=3D null) { mapWindow =3D window.open(proxyURL=20 + "?APPLICATION=3D"+applicationName+"&AgentId=3D"+agentId,=20 windowName, windowOptions); this.setMapReferenceOnAncestor(window, mapWindow); } else { mapReady =3D true; gObjectManager =3D mapWindow.window.gObjectManager; } mapWindow.opener =3D window; try { mapWindow.window.focus(); } catch (ex){ } } =09 /** * this method will be called by Map after Map load is completed. * now you can script to map window * this method will also be call when Map need to send any=20 * data back to your application * @param event xml string * format: * ... */ this.callBack =3D function(eventXMLString) { try { // load event xml string to xml document var eventXMLDoc =3D new ActiveXObject(XMLDocClass); eventXMLDoc.loadXML(eventXMLString); // get event name var doc =3D eventXMLDoc.documentElement; var eventName =3D doc.getAttribute("eventName"); // if event is map load if (eventName =3D=3D "MapLoad") { // set map readiness to true mapReady =3D true; // set reference to object manager (us to create query later) gObjectManager =3D mapWindow.window.gObjectManager; =09 //rerun previous query command, now that map is ready. if (lastQueryName =3D=3D "query") { this.query(savedResource, savedFilter); }=20 else if (lastQueryName =3D=3D "apn") { this.queryByAPNs(savedAPNs, savedFips); }=20 else if (lastQueryName =3D=3D "address") { this.queryByAddress(savedAddress, savedCity, savedState, savedZip, = savedMLS); }=20 else if (lastQueryName =3D=3D "intersection") { this.queryByIntersection(savedStreet1, savedStreet2, savedFips); } else if (lastQueryName =3D=3D "Location") { this.queryByLocation(savedAPNs, savedFips, savedAddress, savedCity, = savedState, savedZip, savedMLS); } } // custom code } catch (ex) { alert(applicationName+".callBack(): " + ex.description); } } =09 /** * do generic query=20 * @param resource name * @param condition - query filter in sql=20 */ this.query =3D function(resource, condition) { try { // save query parameters in case map=20 // is not ready for integration lastQueryName =3D "query"; savedResource =3D resource; savedFilter =3D condition; =09 if (this.isMapReady() !=3D true) { // do nothing; // when map is ready, call this query again.=20 return; } // map is ready if (resource =3D=3D null || condition =3D=3D null) return; // call Map object manager to create a query object var queryHandler =3D = gObjectManager.constructObject("SmartMapCatalog:QueryHandler"); // set the query resource name queryHandler.setResourceName(resource); =09 // bring map window into focus mapWindow.window.focus(); // execute query with the query filter queryHandler.query(condition); } catch (ex) { alert(applicationName+".query(resource=3D\"" +resource+"\", condition=3D\"" +condition+"\"): " + ex.description); } } /** * query by apns (also known as TaxId) * @param apn list, common delimited * @param fips (state code + county code) */ this.queryByAPNs =3D function(apns, fips) { try { // save query parameters in case map=20 // is not ready for integration lastQueryName =3D "apn"; savedAPNs =3D apns; savedFips =3D fips; if (this.isMapReady() !=3D true) { // do nothing; // when map is ready, call this query again.=20 return; } // map is ready if (apns =3D=3D null || fips =3D=3D null) return; // call Map object manager to create a query object var queryHandler =3D = gObjectManager.constructObject("SmartMapCatalog:QueryHandler"); =09 // bring map window into focus mapWindow.window.focus(); // execute query by apns (AKA taxid) queryHandler.queryByAPNs(apns, fips); } catch (ex) { alert(applicationName+".queryByAPNs(APN=3D\"" +apns+"\", fips=3D\"" +fips+"\"): " + ex.description); } } =09 /** * query by address * @param address * @param city * @param state * @param zip */ this.queryByAddress =3D function(address, city, state, zip) { try { // save query parameters in case map=20 // is not ready for integration lastQueryName =3D "address"; savedAddress =3D address; savedCity =3D city; savedState =3D state; savedZip =3D zip; if (this.isMapReady() !=3D true) { // do nothing; // when map is ready, call this query again.=20 return; } // map is ready if (address =3D=3D null || (city =3D=3D null && zip =3D=3D null)) = return; // call Map object manager to create a query object var queryHandler =3D = gObjectManager.constructObject("SmartMapCatalog:QueryHandler"); =09 // bring map window into focus mapWindow.window.focus(); // execute query by address=20 queryHandler.queryByAddress(address, city, state, zip); } catch (ex) { alert(applicationName+".queryByAddress(address=3D\"" +address+"\", city=3D\""+city+"\", state=3D\"" +state+"\", zip=3D\""+zip+"\"): " + ex.description); } } =09 /** * query by address * @param address * @param city * @param state * @param zip */ this.queryByLocation =3D function(apn, fips, address, city, state, zip, = sMLSNum) { try { // save query parameters in case map=20 // is not ready for integration lastQueryName =3D "Location"; savedAPNs =3D apn; savedFips =3D fips; savedAddress =3D address; savedCity =3D city; savedState =3D state; savedZip =3D zip; savedMLS =3D sMLSNum; if (this.isMapReady() !=3D true) { // do nothing; // when map is ready, call this query again.=20 return; } // map is ready if (address =3D=3D null || (city =3D=3D null && zip =3D=3D null)) = return; // call Map object manager to create a query object var queryHandler =3D = gObjectManager.constructObject("SmartMapCatalog:QueryHandler"); =09 // bring map window into focus mapWindow.window.focus(); // execute query by address=20 queryHandler.queryByLocation(apn, fips, address, city, state, zip, = sMLSNum); } catch (ex) { alert(applicationName+".queryByLocation(apn=3D\""+apn+"\", = fips=3D\""+fips+"\", address=3D\"" +address+"\", city=3D\""+city+"\", state=3D\"" +state+"\", zip=3D\""+zip+"\"): " + ex.description); } } =09 /** * query by street intersections * @param first street name (required) * @param second street name (optional) * @param fips (required) (state code + county code)=20 */ this.queryByIntersection =3D function(street1, street2, fips) { try { // save query parameters in case map=20 // is not ready for integration lastQueryName =3D "intersection"; savedStreet1 =3D street1; savedStreet2 =3D street2; savedFips =3D fips; if (this.isMapReady() !=3D true) { // do nothing; // when map is ready, call this query again.=20 return; } // map is ready if (street1 =3D=3D null && street2 =3D=3D null && fips =3D=3D null) = return; // call Map object manager to create a query object var queryHandler =3D = gObjectManager.constructObject("SmartMapCatalog:QueryHandler"); =09 // bring map window into focus mapWindow.window.focus(); // execute query by intersection queryHandler.queryByIntersection(street1, street2, fips); } catch (ex) { alert(applicationName+".queryByIntersection(street1=3D\"" +street1+"\", street2=3D\""+street2+"\", fips=3D\"" +fips+"\"): " + ex.description); } } } ------=_NextPart_000_0009_01C8A304.E1E188B0--