WIP member and member_info import
authorSteve Sutton <steve@gaslightmedia.com>
Wed, 7 Jun 2017 14:11:40 +0000 (10:11 -0400)
committerSteve Sutton <steve@gaslightmedia.com>
Wed, 7 Jun 2017 14:11:40 +0000 (10:11 -0400)
Working on import of member and profile data.

models/admin/import/index.php

index 2ec0279..091f898 100644 (file)
@@ -344,6 +344,26 @@ class GlmMembersAdmin_import_index
         case 'member':
             $memberData = $this->readCSVFile( $fileName );
             $ret = '<pre>$memberData: ' . print_r( $memberData, true ) . '</pre>';
+            // Get default member type
+            $memberTypeId = $this->wpdb->get_var(
+                $this->wpdb->prepare(
+                    "SELECT id
+                       FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_type
+                      WHERE name = %s",
+                    'Default'
+                )
+            );
+            if ( !$memberTypeId ) {
+                $this->wpdb->import(
+                    GLM_MEMBERS_PLUGIN_DB_PREFIX . 'member_type',
+                    array(
+                        'name'  => 'Default',
+                        'descr' => ''
+                    ),
+                    '%s'
+                );
+                $memberTypeId = $this->mpdb->insert_id;
+            }
             foreach ( $memberData as $data ) {
                 // Check for duplicate member
                 $memberId = $this->wpdb->get_var(
@@ -357,11 +377,12 @@ class GlmMembersAdmin_import_index
                 if ( $memberId ) {
                     $member[$data['id']]['new_id'] = $memberId;
                 } else {
+                    $access = $this->config['access_numb']['Moderated'];
                     $this->wpdb->insert(
                         GLM_MEMBERS_PLUGIN_DB_PREFIX . 'members',
                         array(
                             'access'        => $access,
-                            'member_type'   => $defaultMemberType,
+                            'member_type'   => $memberTypeId,
                             'created'       => date( 'Y-m-d' ),
                             'name'          => $data['member_name'],
                             'member_slug'   => sanitize_title( $data['member_name'] ),
@@ -386,16 +407,16 @@ class GlmMembersAdmin_import_index
                 array(
                     'member'         => $memberId,
                     'member_name'    => $data['member_name'],
-                    'status'         => $this->config('status_numb']['Active'],
+                    'status'         => $this->config['status_numb']['Active'],
                     'reference_name' => 'Imported Member Information',
                     'descr'          => $data['descr'],
                     'short_descr'    => $data['short_descr'],
                     'addr1'          => $data['addr1'],
                     'addr2'          => $data['addr2'],
-                    'city'           => $data['city'],
+                    'city'           => ((isset($data['city']) && isset($city[$data['city']]['new_id'])) ? $city[$data['city']]['new_id']: 0),
                     'state'          => $data['state'],
                     'country'        => $data['country'],
-                    'region'         => $data['region'],
+                    'region'         => ((isset($data['region']) && isset($region[$data['region']]['new_id'])) ? $region[$data['region']]['new_id']: 0),
                     'county'         => $data['county'],
                     'zip'            => $data['zip'],
                     'lat'            => $data['lat'],
@@ -409,7 +430,32 @@ class GlmMembersAdmin_import_index
                     'create_time'    => date( 'Y-m-d' ),
                     'modify_time'    => date( 'Y-m-d' ),
                 ),
-                array()
+                array(
+                    '%d',
+                    '%s',
+                    '%d',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%d',
+                    '%s',
+                    '%s',
+                    '%d',
+                    '%d',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                    '%s',
+                )
             );
             break;
         default: