adding specific column names to the import script instead of assuming which social
authorAnthony Talarico <talarico@gaslightmedia.com>
Mon, 30 Oct 2017 19:34:52 +0000 (15:34 -0400)
committerAnthony Talarico <talarico@gaslightmedia.com>
Mon, 30 Oct 2017 19:34:52 +0000 (15:34 -0400)
media columns there will be

had issues importing to migcsa because some of the social media columns that the import
script was looking for weren't present

models/admin/management/social.php
views/admin/management/social.html

index 9bc6815..ff2beb5 100644 (file)
@@ -131,13 +131,33 @@ class GlmMembersAdmin_management_social extends GlmDataSocials
                 break;
 
             case 'socialimport':
-                $importResult = '<pre>$_REQUEST: ' . print_r( $_REQUEST, true ) . '</pre>';
+//                $importResult = '<pre>$_REQUEST: ' . print_r( $_REQUEST, true ) . '</pre>';
                 $db_host      = filter_var( $_REQUEST['db_host'], FILTER_SANITIZE_STRING );
                 $db_name      = filter_var( $_REQUEST['db_name'], FILTER_SANITIZE_STRING );
                 $db_user      = filter_var( $_REQUEST['db_user'], FILTER_SANITIZE_STRING );
                 $db_password  = filter_var( $_REQUEST['db_password'], FILTER_SANITIZE_STRING );
+                $db_schema    = filter_var( $_REQUEST['db_schema'], FILTER_SANITIZE_STRING );
+    
+                // Social Media Options
+                
+                $fb             = isset($_REQUEST['facebook']) ? filter_var( $_REQUEST['facebook'], FILTER_SANITIZE_STRING ) : false;
+                $yt             = isset($_REQUEST['youtube']) ? filter_var( $_REQUEST['youtube'], FILTER_SANITIZE_STRING ) : false;
+                $twitter        = isset($_REQUEST['twitter']) ? filter_var( $_REQUEST['twitter'], FILTER_SANITIZE_STRING ) : false;
+                $pinterest      = isset($_REQUEST['pinterest']) ? filter_var( $_REQUEST['pinterest'], FILTER_SANITIZE_STRING ) : false;
+                $linkedin       = isset($_REQUEST['linkedin']) ? filter_var( $_REQUEST['linkedin'], FILTER_SANITIZE_STRING ) : false;
+                $gp             = isset($_REQUEST['googleplus']) ? filter_var( $_REQUEST['googleplus'], FILTER_SANITIZE_STRING ) : false;
+                $instagram      = isset($_REQUEST['instagram']) ? filter_var( $_REQUEST['instagram'], FILTER_SANITIZE_STRING ) : false;
+                $blog           = isset($_REQUEST['blog']) ? filter_var( $_REQUEST['blog'], FILTER_SANITIZE_STRING ) : false;
+                $myspace        = isset($_REQUEST['myspace']) ? filter_var( $_REQUEST['myspace'], FILTER_SANITIZE_STRING ) : false;
+                $digg           = isset($_REQUEST['digg']) ? filter_var( $_REQUEST['digg'], FILTER_SANITIZE_STRING ) : false;
+                $flickr         = isset($_REQUEST['flickr']) ? filter_var( $_REQUEST['flickr'], FILTER_SANITIZE_STRING ) : false;
+                $photobucket    = isset($_REQUEST['photobucket']) ? filter_var( $_REQUEST['photobucket'], FILTER_SANITIZE_STRING ) : false;
+                
+                $social_media = array($fb,$yt,$twitter,$pinterest,$linkedin,$gp,$instagram,$blog,$digg,$flickr,$photobucket,$myspace);
+                $social_media = array_filter($social_media);
+       
                 $this->connectPostgresDb($db_host, $db_name, $db_user, $db_password);
-                $this->importSocial();
+                $this->importSocial($db_schema, $social_media);
                 break;
 
             default:
@@ -183,17 +203,18 @@ class GlmMembersAdmin_management_social extends GlmDataSocials
     /**
      * importSocial
      */
-    public function importSocial()
+    public function importSocial($schema, $social_media)
     {
         $this->wpdb->query( "DELETE FROM " . GLM_MEMBERS_SOCIAL_PLUGIN_DB_PREFIX . "social_urls" );
         require_once GLM_MEMBERS_SOCIAL_PLUGIN_CLASS_PATH.'/data/dataSocialUrls.php';
         $socialUrl = new GlmDataSocialUrls($this->wpdb, $this->config);
-
+        $select = implode(",",$social_media);
+      
         $oldMemberDataSql = "
-          SELECT m.member_id,m.facebook, m.twitter, m.linkedin, m.blog, m.youtube, m.pinterest,
-                 m.instagram, m.google_plus
-            FROM members.member m
-        ORDER BY m.member_id";
+          SELECT m.member_id," . $select . "
+          FROM $schema.member m
+          ORDER BY m.member_id";
+//
         $oldMemberData = $this->dbh->query( $oldMemberDataSql )->fetchAll(PDO::FETCH_ASSOC);
         //echo '<pre>$oldMemberData: ' . print_r($oldMemberData, true) . '</pre>';
         $dataFormat = array( '%s', '%d', '%d', '%d' );
index 969ab52..df98683 100644 (file)
                     <fieldset>
                         <legend>Settings:</legend>
                         <label for="schema">Schema</label>
-                        <input id="schema" name="schema" />
+                        <input id="schema" name="db_schema" />
+                    </fieldset>
+
+                    <input type="submit" value="Import Members Social Url's" />
+                </div>
+                <div style="width: 200px;padding-top: 20px;clear: both;">
+                    <fieldset>
+                        <legend style="font-weight: bold;padding-bottom:10px;">Social Media Column Names:</legend>
+                        <label for="schema">Facebook</label>
+                        <input type="text" id="facebook" name="facebook" />
+                        
+                        <label for="schema">Instagram</label>
+                        <input type="text" id="instagram" name="instagram" />
+                        
+                        <label for="schema">Myspace</label>
+                        <input type="text" id="myspace" name="myspace" />
+                        
+                        <label for="schema">Blog</label>
+                        <input type="text" id="blog" name="blog" />
+                        
+                        <label for="schema">Twitter</label>
+                        <input type="text" id="twitter" name="twitter" />
+                        
+                        <label for="schema">LinkedIn</label>
+                        <input type="text" id="linkedin" name="linkedin" />
+                        
+                        <label for="schema">Google +</label>
+                        <input type="text" id="googleplus" name="googleplus" />
+                        
+                        <label for="schema">Youtube</label>
+                        <input type="text" id="youtube" name="youtube" />
+                        
+                        <label for="schema">Pinterest</label>
+                        <input type="text" id="pinterest" name="pinterest" />
+                        
+                        <label for="schema">Digg</label>
+                        <input type="text" id="digg" name="digg" />
+                        
+                        <label for="schema">Flickr</label>
+                        <input type="text" id="flickr" name="flickr" />
+                        
+                        <label for="schema">Photobucket</label>
+                        <input type="text" id="photobucket" name="photobucket" />
+                        
                     </fieldset>
 
                     <input type="submit" value="Import Members Social Url's" />