[Geomoose-users] Search Results zoom to, highlight etc not functioning

Len Kne lkne at houstoneng.com
Thu Sep 23 20:00:48 EDT 2010


Disclaimer:  This is a customized version of GeoMOOSE and the answer does not generally apply to the current GeoMOOSE version (2.2).  One thing to check is input "ID" for those services - this needs to be the key field for that data source.  Is the data in a different projection than GeoMOOSE?

Len
________________________________
From: Sean Ziniker [Sean.Ziniker at co.jefferson.or.us]
Sent: Thursday, September 23, 2010 4:38 PM
To: geomoose-users at lists.sourceforge.net
Subject: [Geomoose-users] Search Results zoom to, highlight etc not functioning

When I do a taxlot search there are several services for each result; “Zoom to taxlot”, “Buffer taxlot”, “Highlight taxlot” etc.  I can not get any of these services to work correctly.  The zoom to function zooms to the wrong location and usually the same every time and the buffer and highlight functions are unresponsive.  I have modified my mapbook to reflect my mapfiles, layer names and attribute value for the select services as well as my select_taxlot.html.

Below I have added what I believe are the relevant service code in my map book and the html:

Mapbook.xml code:

<service name="identify" title="Identify" display="false">
                        <url>php/identify.php</url>
                        <step type="spatial" name="shape" show-tools="false" line="false" polygon="false" jump-start="true" default="point">
                                    <input type="visiblelayers" name="layers"/>
                        </step>
            </service>

            <service name="dualmaps" display="false" target="_blank" title="Birdseye">
                        <url>php/dualmaps.php</url>
                        <step type="spatial" name="xy" show-tools="false" box="false" pan="false" line="false" polygon="false" jump-start="true" default="point" format="delim" reproject="EPSG:4326">
                        </step>
            </service>

            <service name="dynamicZoomTo">
                        <url>php/dynamicSelect.php</url>
                        <step type="input">
                                    <input type="ajax_select" name="qstring" title="Zoom To"></input>
                                    <input type="hidden_object" name="layer" title="layer"></input>
                                    <input type="hidden_object" name="qitem" title="qitem"></input>
                                    <input type="hidden" name="mode">map</input>
                        </step>
            </service>

            <service name="print" title="Print">
                        <step type="input">
                                    <url>php/print.php</url>
                                    <input type="print_info" name="layers"/>
                                    <input type="extent" name="extent"/>
                                    <input type="sketches" name="sketches"/>
                                    <input type="vector" name="vector"/>

                                    <input type="user" name="title" title="Map Title">Map</input>
                                    <input type="hidden" name="date" title="Map Date">true</input>

                                    <input type="select" name="template" title="Output Template: ">
                                                <option value="letter_landscape">Letter - Landscape</option>
                                                <option value="letter_portrait">Letter - Portrait</option>
                                                <option value="poster_landscape">11" x 17" - Landscape</option>
                                                <option value="poster_portrait">11" x 17" - Portrait</option>
                                    </input>

                                    <input type="select" name="quality" title="Image Quality: ">
                                                <option value="2">Higher</option>
                                                <option value="3">Highest</option>
                                                <option value="1">Standard</option>
                                    </input>

                                    <input type="hidden" name="scale" title="Preserve Scale: " value="no" />
                        </step>
            </service>

            <service name="select" title="Select">
                        <url>extensions/select_custom.php</url>

                        <!-- Send a selection shape + the visible layers list to the service -->
                        <step type="spatial" showTools='true' name="shape" line="true" polygon="true" point="true" default="polygon" edit-polygon="false" pan="false">

                                    <header><![CDATA[Create a selection area by clicking on the map.]]></header>

                                    <input type="visiblelayers" name="layers"/>
                                    <input type="hidden" name="id" value="ACCOUNT_ID" />

                                    <!--
                                                Option values should be the mapbook path to the layer.
                                                This only supports 'mapserver'-type layers.
                                    -->
                                    <input type="select" name="select_layer" title="Select:">
                                                <option value="assessormap/Taxlots">Taxlots</option>
                                                <option value="survey/surveywebi">Surveys</option>
                                    </input>

                                    <!--
                                    <input type="user" name="shape_buffer" title="Buffer Selection Shape (ft)">0</input>

                                    <input type="select" name="query_layer" title="Using Features In">

                                                <option value="assessormap/Taxlots">Taxlots</option>
                                                <option value="survey/surveywebi">Surveys</option>
                                    </input>
                                    -->
                                    <input type="user" name="shape_buffer" title="Buffer Selection Shape (ft)">0</input>

                                    <footnote><![CDATA[
                                    ]]></footnote>
                        </step>
            </service>

            <service name="mailing_labels" display="false" target="_blank" title="Print Mailing Labels">
                        <url>php/mailing_labels_custom.php</url>
                        <step type="input">
                                    <input type="hidden" name="qstring" />
                                    <input type="hidden" name="output" value="csv" />
                                    <input type="hidden" name="qitem" value="ACCOUNT_ID" />
                                    <input type="hidden" name="qlayers" value="assessormap/Taxlots" />
                        </step>
            </service>

            <service name="select_parcel" title="Select Taxlots" display="true" >
                        <url>extensions/select_custom.php</url>

                        <!-- Send a selection shape + the visible layers list to the service -->
                        <step type="spatial" showTools='true' name="shape" line="true" polygon="true" point="true" default="point" edit-polygon="false" pan="false" jump-start="true" >
                                    <input type="hidden" name="shape_is_object" value="false" />

                                    <header><![CDATA[Select a taxlot by drawing a selection shape on the map.]]></header>

                                    <input type="visiblelayers" name="layers"/>

                                    <!--
                                                Option values should be the mapbook path to the layer.
                                                This only supports 'mapserver'-type layers.
                                    -->
                                    <input type="hidden" name="select_layer" title="Select:" value="assessormap/Taxlots" />
                                    <input type="hidden" name="id" value="ACCOUNT_ID" />

                                    <!--
                                    <input type="user" name="shape_buffer" title="Buffer Selection Shape (ft)">0</input>

                                    <input type="select" name="query_layer" title="Using Features In">

                                                <option value="assessormap/Taxlots">Taxlots</option>
                                                <option value="survey/surveywebi">Surveys</option>
                                    </input>
                                    -->
                                    <input type="hidden" name="shape_buffer" title="Buffer Selection Shape (ft)" value="0" />

                                    <footnote><![CDATA[
                                    ]]></footnote>
                        </step>
            </service>

            <!-- this is called after a standard select in order to buffer the previous selection -->
            <service name="buffered_select_followup" title="Buffer Taxlot">
                        <url>extensions/select_custom.php</url>
                        <step type="input">
                                    <input type="hidden" name="shape"/>
                                    <input type="hidden" name="shape_is_object"/>
<!--                               <input type="hidden" name="query_layer"/> -->
                                    <input type="select" name="select_layer" title="Using Features In">
                                    <input type="hidden" name="id" value="ACCOUNT_ID" />

                                                <option value="assessormap/Taxlots">Taxlots</option>
                                                <option value="survey/surveywebi">Surveys</option>
                                    </input>
<!--                               <input type="hidden" name="shape_buffer" title="Buffer Features By: "/> -->
                                    <input type="user" name="shape_buffer" title="Buffer Features By (ft): "/>
                        </step>
            </service>

<service name="select_historic_taxlot" title="">
                        <url>extensions/select_custom.php</url>

                        <!-- Send a selection shape + the visible layers list to the service-->
                        <step type="input">

                                    <input type="hidden" name="select_layer" value="historic_taxmap/PolkTaxlots" />
                                    <input type="hidden" name="id" value="TAXLOTC1" />

                                    <input type="hidden" name="shape_buffer">-1</input>

                                    <input type="hidden" name="shape" />
                                    <input type="hidden" name="parcel" />
                        </step>
            </service>

            <service name="template_test_report" title="Template Test" display="false">
                        <step type="input">
                                    <url>php/print.php</url>
                                    <input type="hidden" name="parcel" />
                                    <input type="print_info" name="layers"/>
                                    <input type="extent" name="extent"/>
                                    <input type="sketches" name="sketches"/>
                                    <input type="vector" name="vector"/>
                                    <input type="hidden" name="qstring" />

                                    <input type="hidden" name="mode" value="template_test_report"/>
                                    <input type="hidden" name="padding" value="50"/>
                                    <input type="hidden" name="src" value="historic_taxmap/PolkTaxlots" />
                                    <input type="hidden" name="TAXLOT"/>

                                    <input type="hidden" name="title" title="Map Title">Map</input>
                                    <input type="hidden" name="date" title="Map Date">true</input>

                                    <input type="hidden" name="template" title="Output Template: " value="template_test"/>

                                    <input type="hidden" name="quality" title="Image Quality: " value="Higher"/>

                                    <input type="hidden" name="scale" title="Preserve Scale: " value="Yes"/>
                        </step>
            </service>

            <service name="geocode_address" title="Geocode Address">
                        <url>php/geocode.php</url>
                        <step type="input">
                                    <header><![CDATA[
                                                This tool searches Google's geocoder.  Search strings can be an address (e.g. 1060 W. Addison Street, Chicago), a landmark (e.g. Empire State Building) or intersection (e.g. Hennepin and Lake, Minneapolis).
                                    ]]></header>
                                    <input type="user" name="address" title="Enter Address: "/>
                                    <input type="hidden" name="googlekey" value="ABQIAAAAQIpq5I8azu0hKAMlTu1zmxReCrxMK0wjSlowlOuMeIzwrJkJ8BQ-fBmqCn24aFFeybJLxf_WNIPi1Q"/>
                                    <input type='hidden' name='map_proj' value='+proj=utm +zone=14 +ellps=GRS80 +datum=NAD83 +units=m +no_defs' />
                        </step>
            </service>

            <service name="search_parcels" title="Search Taxlots">
                        <url>extensions/query_custom.php</url>
                        <step type="input">
                                    <input type="hidden" name="highlight" value="true"/>
                                    <input type="hidden" name="mode" value="search"/>
                                    <input type="hidden" name="id" value="ACCOUNT_ID" />

                                    <input type="hidden" name="layer0" value="assessormap/Taxlots"/>
                                    <input type="hidden" name="template0" value="itemquery"/>

                                    <input type="select" name="fieldname0" title="Search By:">
                                                <option value="ACCOUNT_ID">Account Number</option>
                                                <option value="MAPNUM">Map</option>
                                                <option value="TAXLOT">Taxlot</option>
                                                <option value="MAPTAXLOT">Map and Taxlot</option>
                                                <option value="OWNER">Owner</option>
                                                <option value="AGENT">Agent</option>
                                                <option value="M_ADDRESS">Mailing Add</option>
                                                <option value="HOUSE_NUMB">Primary Situs</option>
                                    </input>
                                    <input type="select" name="comparitor0" title="That: ">
                                                <option value="like-icase">Contains</option>
                                                <option value="right-like-icase">Begins With</option>
                                                <option value="eq-str">Matches Exactly</option>
                                    </input>
                                    <input type="user" name="value0" title=""/>


                        </step>
            </service>

            <service name="search_parcels_url">
                        <url>extensions/query_custom.php</url>
                        <step type="input">
                                    <input type="hidden" name="highlight" value="true"/>
                                    <input type="hidden" name="mode" value="search"/>

                                    <input type="hidden" name="layer0" value="assessormap/Taxlots"/>
                                    <input type="hidden" name="template0" value="itemquery"/>

                                    <input type="user" name="fieldname0" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor0" value="like-icase" />
                                    <input type="user" name="value0" title=""/>

                                    <input type="user" name="operator1" value="and" />
                                    <input type="user" name="fieldname1" value="" />
                                    <input type="user" name="comparitor1" value="like-icase" />
                                    <input type="user" name="value1" title=""/>

                                    <input type="user" name="operator2" value="and" />
                                    <input type="user" name="fieldname2" value="" />
                                    <input type="user" name="comparitor2" value="like-icase" />
                                    <input type="user" name="value2" title=""/>
                        </step>
            </service>

            <service name="search_parcels_by_account">
                        <url>extensions/query_custom.php</url>
                        <step type="input">
                                    <input type="hidden" name="highlight" value="true"/>
                                    <input type="hidden" name="mode" value="search"/>

                                    <input type="hidden" name="layer0" value="assessormap/Taxlots"/>
                                    <input type="hidden" name="template0" value="itemquery"/>

                                    <input type="user" name="fieldname0" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor0" value="eq" />
                                    <input type="user" name="value0" title=""/>

                                    <input type="user" name="operator1" value="or" />
                                    <input type="user" name="fieldname1" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor1" value="eq" />
                                    <input type="user" name="value1" title=""/>

                                    <input type="user" name="operator2" value="or" />
                                    <input type="user" name="fieldname2" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor2" value="eq" />
                                    <input type="user" name="value2" title=""/>

                                    <input type="user" name="operator3" value="or" />
                                    <input type="user" name="fieldname3" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor3" value="eq" />
                                    <input type="user" name="value3" title=""/>

                                    <input type="user" name="operator4" value="or" />
                                    <input type="user" name="fieldname4" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor4" value="eq" />
                                    <input type="user" name="value4" title=""/>

                                    <input type="user" name="operator5" value="or" />
                                    <input type="user" name="fieldname5" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor5" value="eq" />
                                    <input type="user" name="value5" title=""/>

                                    <input type="user" name="operator6" value="or" />
                                    <input type="user" name="fieldname6" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor6" value="eq" />
                                    <input type="user" name="value6" title=""/>

                                    <input type="user" name="operator7" value="or" />
                                    <input type="user" name="fieldname7" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor7" value="eq" />
                                    <input type="user" name="value7" title=""/>

                                    <input type="user" name="operator8" value="or" />
                                    <input type="user" name="fieldname8" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor8" value="eq" />
                                    <input type="user" name="value8" title=""/>

                                    <input type="user" name="operator9" value="or" />
                                    <input type="user" name="fieldname9" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor9" value="eq" />
                                    <input type="user" name="value9" title=""/>

                                    <input type="user" name="operator10" value="or" />
                                    <input type="user" name="fieldname10" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor10" value="eq" />
                                    <input type="user" name="value10" title=""/>

                                    <input type="user" name="operator11" value="or" />
                                    <input type="user" name="fieldname11" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor11" value="eq" />
                                    <input type="user" name="value11" title=""/>

                                    <input type="user" name="operator12" value="or" />
                                    <input type="user" name="fieldname12" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor12" value="eq" />
                                    <input type="user" name="value12" title=""/>

                                    <input type="user" name="operator13" value="or" />
                                    <input type="user" name="fieldname13" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor13" value="eq" />
                                    <input type="user" name="value13" title=""/>

                                    <input type="user" name="operator14" value="or" />
                                    <input type="user" name="fieldname14" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor14" value="eq" />
                                    <input type="user" name="value14" title=""/>

                                    <input type="user" name="operator15" value="or" />
                                    <input type="user" name="fieldname15" value="ACCOUNT_ID" />
                                    <input type="user" name="comparitor15" value="eq" />
                                    <input type="user" name="value15" title=""/>
                        </step>
            </service>


Select_taxlots.html code:
<!-- MapServer Template -->
<div id="div_[ACCOUNT_ID]">
<table border="0" cellpadding="1" cellspacing="2">
<tr><td colspan="2"><hr/></td></tr>
            <tr>
                        <td colspan=2 style="background-color:#DDDDDD;padding-left:4px;">


                                                <img src='images/toolbar/zoomin.png' class='noborder' title='Zoom to taxlot' alt='Zoom to taxlot' onclick='highlight.zoomToExtent(highlight.getBounds("[ACCOUNT_ID]"));' />
                                                <img src='images/toolbar/select.png' class='noborder' alt='Buffer taxlot' title='Buffer taxlot' onclick='GeoMOOSE.startService("buffered_select_followup", {shape: highlight.getShape("[ACCOUNT_ID]"),"shape_is_object":"false"})'/>
                                                <img src='skins/polkcounty/images/services.png' class='noborder' title='Highlight taxlot' alt='Highlight taxlot' onclick='highlight.turnRed("[ACCOUNT_ID]");'/>
                                                <img src='images/toolbar/clear.png' title='Remove from selection' alt='Remove from selection' onclick='removeFeature("[ACCOUNT_ID]");removeElement(document.getElementById("div_[ACCOUNT_ID]"));highlight.updateNumShapes();' />
                                                <img src='images/toolbar/layout-edit.png' title='Template test' alt='Template test' onclick='javascript:polkTemplate.renderHtml({shape: highlight.getShape("[ACCOUNT_ID]")},"[ACCOUNT_ID]")' />
                        </td>
            </tr>
<tr>
<td align="right"><b>Account Number:</b></td>
<td>[ACCOUNT_ID]</td>
</tr>
<tr>
<td align="right"><b>Map Number:</b></td>
<td>[MAPNUM]</td>
</tr>
<tr>
<td align="right"><b>TaxLot:</b></td>
<td>[TAXLOT]</td>
</tr>
<tr>
<td align="right"><b>Map Taxlot:</b></td>
<td>[MAPTAXLOT]</td>
</tr>
<tr>
<td align="right"><b>Owner:</b></td>
<td>[OWNER]</td>
</tr>
<tr>
<td align="right"><b>Agent:</b></td>
<td>[AGENT]</td>
</tr>
<tr>
<td align="right"><b>Mailing Add:</b></td>
<td>[M_ADDRESS]</td>
</tr>
<tr>
<td align="right"><b>City:</b></td>
<td>[M_CITY]</td>
</tr>
<tr>
<td align="right"><b>St:</b></td>
<td>[M_STATE]</td>
</tr>
<tr>
<td align="right"><b>ZIP:</b></td>
<td>[M_ZIP]</td>
</tr>
<tr>
<td align="right"><b>Primary Situs:</b></td>
<td>[HOUSE_NUMB] [PRE_DIRECT] [STREET_NAM] [STREET_TYP] [DIRECTION] [UNIT_NUMBE]</td>
</tr>
<tr>
<td align="right"><b>City/State/Zip:</b></td>
<td>[CITY] [STATE] [ZIP]</td>
</tr>
<tr>
<td align="right"><b>Acre:</b></td>
<td>[ACRES]</td>
<tr>
<td align="right"><b>Zoning:</b></td>
<td>[PLAN_ZONE]</td>
</tr>
</tr>
</table>
</div>


Thanks,
Sean
Sean Ziniker
GIS Analyst
Jefferson County, Oregon
66 S.E. "D" Street, Suite B
Madras, OR 97741
541.325.5083 Office
541.325.5089 Fax





More information about the Geomoose-users mailing list