Index: schema.xml
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/apachesolr/schema.xml,v
retrieving revision 1.1.2.1.2.31
diff -u -r1.1.2.1.2.31 schema.xml
--- schema.xml	2 Mar 2009 04:47:44 -0000	1.1.2.1.2.31
+++ schema.xml	29 Mar 2009 21:36:19 -0000
@@ -315,7 +315,13 @@
         or to add multiple fields to the same field for easier/faster searching.  -->
    <copyField source="title" dest="spell"/>
    <copyField source="body" dest="spell"/>
-
+    
+    <!-- local lucene field types -->
+    <field name="lat" type="sdouble" indexed="true" stored="true"/><!-- must match the latField in solrconfig.xml -->
+    <field name="lng" type="sdouble" indexed="true" stored="true"/><!-- must match the lngField in solrconfig.xml -->
+    <field name="geo_distance" type="sdouble"/> <!-- Optional but used for distributed searching -->
+    <dynamicField name="_local*" type="sdouble" indexed="true" stored="true"/><!-- used internally by localsolr -->
+    
    <!-- Dynamic field definitions.  If a field name is not found, dynamicFields
         will be used if the name matches any of the patterns.
         RESTRICTION: the glob-like pattern in the name attribute must have
Index: solrconfig.xml
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/apachesolr/solrconfig.xml,v
retrieving revision 1.1.2.16
diff -u -r1.1.2.16 solrconfig.xml
--- solrconfig.xml	2 Mar 2009 05:07:36 -0000	1.1.2.16
+++ solrconfig.xml	29 Mar 2009 21:36:19 -0000
@@ -30,9 +30,8 @@
   <!-- Used to specify an alternate directory to hold all index data
        other than the default ./data under the Solr home.
        If replication is in use, this should match the replication configuration. -->
-<!--
+
   <dataDir>${solr.data.dir:./solr/data}</dataDir>
--->
 
   <indexDefaults>
    <!-- Values here affect all index writers and act as a default unless overridden. -->
@@ -647,6 +646,37 @@
     </lst>
   </requestHandler>
 
+<!-- begin Localsolr configuration -->
+  <updateRequestProcessorChain>
+     <processor class="com.pjaol.search.solr.update.LocalUpdateProcessorFactory">
+        <str name="latField">lat</str> <!-- The field used to store your latitude -->
+        <str name="lngField">lng</str> <!-- The field used to store your longitude -->
+        <int name="startTier">9</int> <!-- The lowest level to store data at, level 9 covers about 100 miles,                                             level 5 about 1000 -->
+        <int name="endTier">20</int> <!-- The highest granular level you want to search at, 15 is about 1 mile -->
+       </processor>
+       <processor class="solr.RunUpdateProcessorFactory" />    
+       <processor class="solr.LogUpdateProcessorFactory" /> 
+   </updateRequestProcessorChain>
+  <searchComponent name="localsolr" class="com.pjaol.search.solr.component.LocalSolrQueryComponent" >
+    <str name="latField">lat</str><!-- The field used to store your latitude -->
+    <str name="lngField">lng</str><!-- The field used to store your longitude -->
+  </searchComponent>
+
+  <!-- local lucene request handler -->
+  <requestHandler name="geo" class="solr.StandardRequestHandler">
+    <lst name="defaults">
+      <str name="q">*:*</str>
+    </lst>
+    <arr name="components">
+      <str>localsolr</str>
+      <str>facet</str> 
+      <str>mlt</str>
+      <str>highlight</str>
+      <str>debug</str>
+    </arr>
+  </requestHandler>
+<!-- end Localsolr configuration -->
+
   <highlighting>
    <!-- Configure the standard fragmenter -->
    <!-- This could most likely be commented out in the "default" case -->
