changing the textSearch fields to use ids instead of classes for the widgets dashboar...
authorAnthony Talarico <talarico@gaslightmedia.com>
Thu, 20 Sep 2018 20:36:21 +0000 (16:36 -0400)
committerAnthony Talarico <talarico@gaslightmedia.com>
Thu, 20 Sep 2018 20:36:21 +0000 (16:36 -0400)
models/admin/ajax/glmTextSearch.php
views/admin/newDashboard/components/textSearch.html

index f617627..f672873 100644 (file)
@@ -73,17 +73,18 @@ class GlmMembersAdmin_ajax_glmTextSearch
     public function modelAction ($actionData = false)
     {
         global $wpdb;
-  
+        $status = $this->config['status_numb']['Active'];
         if( isset( $_REQUEST['table'] ) ){
+            $clause         = filter_var($_REQUEST['where'], FILTER_SANITIZE_STRING);
             $searchQuery    = filter_var($_REQUEST['query'], FILTER_SANITIZE_STRING);
             $fields         = $_REQUEST['fields'];
             $table          = filter_var($_REQUEST['table'], FILTER_SANITIZE_STRING);
-            $sql            = "SELECT $fields FROM $table where title like '%$searchQuery%'";
+            $sql            = "SELECT $fields FROM $table where $clause like '%$searchQuery%'";
             $entities       = $wpdb->get_results($sql); 
 
             foreach($entities as $entity){
                 $searchData[] = [
-                    $entity->title => ["image"=>$entity->image ,"entityID" => $entity->id, "memberID"=>$entity->ref_dest]
+                    $entity->name => ["image"=>$entity->image ,"entityID" => $entity->id, "memberID"=>$entity->ref_dest]
                 ];
             }
         }else{
@@ -91,6 +92,7 @@ class GlmMembersAdmin_ajax_glmTextSearch
         }
         
         $return = array(
+            "test"  => $sql,
             'searchData'    => $searchData        // Where our events list will go
         );
 
index a3f1c71..7f34f4f 100644 (file)
@@ -1,7 +1,7 @@
 <div class="row">
     <div class="s12 col input-field glm-widget-search">
-        <input id="{$addon.slug}" type="text" class="glm-widget-search-input search-autocomplete">
-        <label for="{$addon.slug}">Search</label>
+        <input id="{$addon.slug}-text" type="text" class="glm-widget-search-input search-autocomplete">
+        <label for="{$addon.slug}-text">Search</label>
     </div>
     
 </div>
             action      : 'glm_members_admin_ajax',
             glm_action  : 'glmTextSearch',
             table       : '{$widgetField.table}',
-            fields      : '{$widgetField.fields}'
+            fields      : '{$widgetField.fields}',
+            where       : '{$widgetField.where}'
         }
-        $('input.search-autocomplete').autoComplete({
+        $('input#{$addon.slug}-text').autoComplete({
             source: function( request, response ) {
                 data.query = request;
                 $.ajax({
@@ -24,6 +25,7 @@
                     url: '{$ajaxUrl}',
                     data: data,
                     success: function(data) {
+                        console.log(data.searchData);
                         if(data.searchData){
                             let searchDropdown = [];
                             for(let i = 0;i < data.searchData.length;i++){
@@ -51,8 +53,7 @@
                 let search = $(item).text();
                 console.log(search)
                 if(search !== "No Results Found"){
-                    window.location.replace('{$widgetField.resultUrl}&member='+searchResults[search].memberID+"&{$widgetField.entityID}="+searchResults[search].entityID);
-                    // window.location.replace('{ $packagingAdminUrl}&member='+searchResults[search].memberID+"&entityID="+searchResults[search].entityID);
+                    window.location.replace('{$widgetField.resultUrl}&{$widgetField.entityID}='+searchResults[search].entityID);
                 }
             },
             minLength: 3,