Add management method of checking on lat lon for memmbers
authorSteve Sutton <steve@gaslightmedia.com>
Wed, 8 May 2019 19:16:57 +0000 (15:16 -0400)
committerSteve Sutton <steve@gaslightmedia.com>
Wed, 8 May 2019 19:16:57 +0000 (15:16 -0400)
Trying to verify with google lat lon data.

models/admin/management/import.php
models/admin/management/import/checkLatLonData.php [new file with mode: 0644]
views/admin/management/import.html
views/admin/management/import/checkLatLonData.html [new file with mode: 0644]

index 9998b55..c38f319 100644 (file)
@@ -132,6 +132,10 @@ class GlmMembersAdmin_management_import
                 $requestedView = 'import.html';
                 break;
 
+            case 'checkLatLonData':
+                require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/checkLatLonData.php';
+                break;
+
             case 'members':
                 require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/members.php';
                 break;
@@ -152,18 +156,6 @@ class GlmMembersAdmin_management_import
                 require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/memberImages.php';
                 break;
 
-            case 'brewbakersImages':
-                require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/brewbakersImages.php';
-                break;
-
-            case 'brewbakersFiles':
-                require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/brewbakersFiles.php';
-                break;
-
-            case 'trailmapsFiles':
-                require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/trailmapsFiles.php';
-                break;
-
             case 'importOldMemberIds':
                 require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/oldMemberIds.php';
                 break;
@@ -172,18 +164,6 @@ class GlmMembersAdmin_management_import
                 require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/displayNewOldMemberIds.php';
                 break;
 
-            case 'importBrewbakers':
-                require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/brewbakersImport.php';
-                break;
-
-            case 'importTrailMaps':
-                require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/trailmapsImport.php';
-                break;
-
-            case 'brewbakersBrands':
-                require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/brewbakersBrands.php';
-                break;
-
             case 'customfields':
                 $requestedView = 'custom.html';
                 $templateData['content']    = apply_filters( 'glm-members-customfields-edit', '', GLM_MEMBERS_PLUGIN_SLUG );
diff --git a/models/admin/management/import/checkLatLonData.php b/models/admin/management/import/checkLatLonData.php
new file mode 100644 (file)
index 0000000..e6393dc
--- /dev/null
@@ -0,0 +1,34 @@
+<?php
+require_once GLM_MEMBERS_PLUGIN_CLASS_PATH . '/data/dataMemberInfo.php';
+// Verify lat lon from member is correct
+
+// Set view file
+$requestedView = 'import/checkLatLonData.html';
+
+// Create parts for the where clause
+$whereParts = array();
+$whereParts[] = 'T.lat IS NOT NULL';
+$whereParts[] = 'T.lon IS NOT NULL';
+$whereParts[] = 'T.lat <> 0';
+$whereParts[] = 'T.lon <> 0';
+$whereParts[] = "(addr1 IS NOT NULL AND addr1 !='' )";
+$whereParts[] = "city IS NOT NULL";
+$whereParts[] = " (
+        SELECT access
+         FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."members
+        WHERE id = T.member
+    ) IN (
+         ".$this->config['access_numb']['NoAccess'].",
+         ".$this->config['access_numb']['Moderated'].",
+         ".$this->config['access_numb']['Full']."
+         )
+    AND T.status = ".$this->config['status_numb']['Active'];
+
+// Setup where variable
+$where      = implode( ' AND ', $whereParts );
+$MemberData = new GlmDataMemberInfo( $this->wpdb, $this->config );
+$members    = $MemberData->getList( $where );
+
+// echo '<pre>$members: ' . print_r( $members, true ) . '</pre>';
+
+$templateData['members'] = $members;
index 3c4db07..d2d6260 100644 (file)
@@ -23,6 +23,7 @@
                     <input type="radio" name="option" value="importMailingAddresses" class="import-type"> Import member Mailing Addresses<br>
                     <input type="radio" name="option" value="importCountyCity" class="import-type"> Import Counties to City Table<br>
                     <input type="radio" name="option" value="displayOldNewMemberIds" class="import-type"> List old/new member IDs<br>
+                    <input type="radio" name="option" value="checkLatLonData" class="import-type">Check Lat Lon data<br>
                 </td>
             </tr>
             <tr class="for-trailmaps glm-hidden">
diff --git a/views/admin/management/import/checkLatLonData.html b/views/admin/management/import/checkLatLonData.html
new file mode 100644 (file)
index 0000000..594c973
--- /dev/null
@@ -0,0 +1,57 @@
+<h1>Check Lat Lon Data</h1>
+
+<script>
+    function fetchLatLonData( dataUrl, dataId ) {
+        $.getJSON( dataUrl )
+            .fail( function(data){
+                $('#member-' + dataId).append( 'failed' );
+            }  )
+            .done(function( data ){
+                console.log( 'lat data:', data );
+                var message = '';
+                if ( data.status == 'OK' ) {
+                    var lat =  data.results[0].geometry.location.lat;
+                    lat = ( Math.round( lat * 10000 ) ) / 10000;
+                    var lng =  data.results[0].geometry.location.lng;
+                    lng = ( Math.round( lng * 10000 ) ) / 10000;
+
+                    message += '<div>Lat: ' + lat + '</div>';
+                    message += '<div>Lon: ' + lng + '</div>';
+                }
+                $('#member-' + dataId).append( '<div style="color: green;">' + message + '</div>' );
+
+            });
+    }
+</script>
+
+{foreach $members as $member}
+    <ul>
+        <li> Member Name: {$member.member_name} </li>
+        <li> Address:<br>
+            {$member.addr1}<br>
+            {$member.city}
+            {$member.state.name},
+            {$member.zip}
+        </li>
+        <li>
+            <div style="color: red;">
+                <div>
+                    Lat: {$member.lat}
+                </div>
+                <div>
+                    Lon: {$member.lon}
+                </div>
+            </div>
+        </li>
+        <li> <span id="member-{$member.id}"></span>
+        </li>
+    </ul>
+    <script>
+    jQuery(document).ready(function($) {
+        var mapUrl = 'https://maps.googleapis.com/maps/api/geocode/json?address={$member.addr1|regex_replace:'[ ]':'+'},+{$member.city|regex_replace:'[ ]':'+'},+{$member.state.value}&key=AIzaSyBSZw7bDiqZLmMcha4jUiqQmrUPvUPCzLs';
+        //fetchLatLonData( mapUrl, {$member.id});
+    });
+    </script>
+{/foreach}
+
+