fixng admin settings bug when editing a record
authorAnthony Talarico <talarico@gaslightmedia.com>
Fri, 9 Nov 2018 12:19:39 +0000 (07:19 -0500)
committerAnthony Talarico <talarico@gaslightmedia.com>
Fri, 9 Nov 2018 12:19:39 +0000 (07:19 -0500)
css/admin.min.css
models/admin/ajax/mapSettingsAjax.php
sass/admin/_settings.scss
views/admin/settings/mapSettings.html

index ab72ae5..522e2e7 100644 (file)
@@ -1 +1 @@
-#new-area-section{background-color:white}#new-area-section .input-container{margin-bottom:0;padding:0 10px 0 10px}#new-area-section .input-container input.area-name{margin:10px 10px 0 0px}#new-area-section .input-container input.area-name+label{top:15px !important}#new-area-section .map-page-selection .select-wrapper .dropdown-content.select-dropdown li:not(:first-child){line-height:1;min-height:20px}#new-area-section .map-page-selection .select-wrapper .dropdown-content.select-dropdown li:not(:first-child) span,#new-area-section .map-page-selection .select-wrapper .dropdown-content.select-dropdown li:not(:first-child) a{line-height:1;padding:2px 10px}#new-area-section .map-color-selection{margin-top:20px}#new-area-section .map-color-selection label{margin-left:15px;font-size:16px}#list-header{padding:5px;background-color:#003366;color:white}#list-header .area-header{color:inherit}#area-list .record-container{margin-bottom:2px}#area-list .record-container .area-record{padding:5px;background-color:white}#area-list .record-container .area-record:hover{cursor:pointer}#area-list .record-container .area-record .area-record-delete{position:relative;right:15px}#area-list .record-container .area-record .area-record-delete:hover{cursor:pointer}
+#new-area-section{background-color:white}#new-area-section .input-container{margin-bottom:0;padding:0 10px 0 10px}#new-area-section .input-container input.area-name{margin:10px 10px 0 0px}#new-area-section .input-container input.area-name+label{top:15px !important}#new-area-section .map-page-selection .select-wrapper .dropdown-content.select-dropdown li:not(:first-child){line-height:1;min-height:20px}#new-area-section .map-page-selection .select-wrapper .dropdown-content.select-dropdown li:not(:first-child) span,#new-area-section .map-page-selection .select-wrapper .dropdown-content.select-dropdown li:not(:first-child) a{line-height:1;padding:2px 10px}#new-area-section .map-color-selection{margin-top:20px}#new-area-section .map-color-selection label{margin-left:15px;font-size:16px}#list-header{padding:5px;background-color:#003366;color:white}#list-header .area-header{color:inherit}#area-list .record-container{margin-bottom:2px}#area-list .record-container .area-record{padding:5px;background-color:white}#area-list .record-container .area-record:hover{cursor:pointer}#area-list .record-container .area-record .area-record-delete{position:relative;right:15px}#area-list .record-container .area-record .area-record-delete:hover{cursor:pointer}.edit-field{background-color:rgba(30,202,162,0.3) !important}.error-field{background-color:rgba(244,67,54,0.3) !important}
index bf59cee..432ad12 100644 (file)
@@ -100,6 +100,7 @@ class GlmMembersAdmin_ajax_mapSettingsAjax extends GlmDataMapSettings
         }
         // If there's an action option
         if ( $option ) {
+            
             switch( $option ) {
                 
                 case 'add':
@@ -125,8 +126,27 @@ class GlmMembersAdmin_ajax_mapSettingsAjax extends GlmDataMapSettings
 
                 case 'update':
                     if ( $id > 0 ) {
-                        $this->updateEntry( $id );
+                        $test = $id;
+                        $area_name      = filter_var($_REQUEST['area_name'], FILTER_SANITIZE_STRING);
+                        $page_id        = (isset($_REQUEST['page_id'])) ? filter_var($_REQUEST['page_id'], FILTER_SANITIZE_STRING) : 0;
+                        $hover_color    = filter_var($_REQUEST['hover_color'], FILTER_SANITIZE_URL);
+                        $this->wpdb->update(
+                            GLM_MEMBERS_COUNTY_MAP_PLUGIN_DB_PREFIX . 'areas',
+                            array( 
+                                'area_name'     => $area_name,
+                                'hover_color'   => $area_color,
+                                'page_id'       => $page_id
+                            ),
+                            array( 'id' => $id ),
+                            array( 
+                                '%s',
+                                '%s',
+                                '%d'
+                            ),
+                            array( '%d' )
+                        );
                     }
+                    $areas = $this->getAreas();
                     break;
 
                 case 'delete':
index 534a1c2..1967284 100644 (file)
             }
         }
     }
+}
+.edit-field{
+    background-color: rgba(30, 202, 162, 0.3) !important;
+}
+.error-field{
+    background-color: rgba(244, 67, 54, 0.3) !important;
 }
\ No newline at end of file
index 36a1ff5..859a4f0 100644 (file)
@@ -1,4 +1,4 @@
-<button class="btn" data-action="add">Add Area</button>
+<button id="area-update" class="btn" data-option="add">Add Area</button>
 <div id="new-area-section">
     <div class="row">
         <div class="s12 l4 col">
@@ -63,7 +63,7 @@
                 data: data,
                 success: function(data) {
                     if(data.areas.list){
-                        $('#area-list').not( $("#list-header") ).empty();
+                        $('#area-list').empty();
                         data.areas.list.forEach( function(area) {
                            
                             $("<div class='row record-container'><div style='display: flex;' class='s12 col area-record' data-id='" + area.id + "'><span class='area-record-name' style='flex: 1;'>" + area.area_name + "</span> <span class='area-record-page' style='flex: 1;'>" + pages[area.page_id] + "</span><span class='area-record-color' style='flex: 1;'>" + area.hover_color + "</span><span class='area-record-delete' style='flex: 0;'> <i class='material-icons area-record-delete'>delete_forever</i></span></div></div>").appendTo( $("#area-list") );
         };
      
         // Form interaction events
-        $('button').on("click", function(){
+        $(document).on("click", '#area-update',function(){
+            
             if($("#area-name").val() ){
-                data.option = 'add';
+           
+                data.option = $(this).data("option");
                 data.area_name = capitalize($("#area-name").val());
+                $("#map-color").val();
                 data.page_id = $("select").val();
-                serverCall(data);
+                
+                // duplicate code
                 $("#area-name").val("").siblings("label").removeClass("active");
                 $("#map-color").val("#003366");
             
                 $('select').prop('selectedIndex', 0);
                 $("select").formSelect();
+                console.log("BUTTOJN ACTIONL :",data );
+                serverCall(data);
             }else{
-                $("#area-name").css({literal}{'background-color':"rgba(244, 67, 54, 0.3)"}{/literal})
+                $("#area-name").parent().addClass("error-field");
             }
         });
 
         $("#area-name").on("click", function(){
-            console.log( $(this).css({literal}{"background-color": "transparent"}{/literal}) );
+            $(this).css({literal}{"background-color": "transparent"}{/literal});
         });
 
         $('select').formSelect();
             data.hover_color = $(this).val();
         });
 
-        $(document).on("click", ".material-icons",function(){
+        $(document).on("click", ".material-icons",function(e){
+            e.stopPropagation();
             data.option = 'delete';
             data.id     = $(this).parent().parent().data("id");
             serverCall(data);
             var area_color  = $(this).find($('.area-record-color')).text();
 
             $("#area-name").val(area_name).siblings("label").addClass("active");
-            $("#map-color").val(area_color);
+            $("#area-name").parent().addClass("edit-field");
+            $("#map-color").val(area_color).css({literal}{'background-color':"rgba(30, 202, 162, 0.3)"}{/literal});
 
-            $('select').val(page_id)
+            $('select').val(page_id);
+            $(".map-page-selection").addClass("edit-field")
             $("select").formSelect();
-            console.log(area_color, area_page, area_name)
-            // serverCall(data);
+            $("#area-update").attr("data-option", "update").text("Update Area").attr("data-id", id);
+            data.id = id;
         });
 
         // Initial page load list population
             data.option = 'list';
             serverCall(data);
         })();
+        $("#area-name").val("").siblings("label").removeClass("active");
+        $("#map-color").val("#003366");
+        $('select').prop('selectedIndex', 0);
+        $("select").formSelect();
     });
 </script>
\ No newline at end of file