From 5d36669cee4a222bbe897a66896cbda37a48950c Mon Sep 17 00:00:00 2001 From: Anthony Talarico Date: Fri, 4 Jan 2019 11:35:36 -0500 Subject: [PATCH] moving javascript into a separate file, there is now an issue with the dashboard widgets --- js/memberManagement.js | 127 +++++++++++ lib/GlmDataAbstract/DataAbstract.php | 1 + models/admin/dashboard/members.php | 2 +- models/admin/manageDashboard/members.php | 9 + models/admin/member/memberInfo.php | 2 +- views/admin/manageDashboard/index.html | 255 ++++------------------- 6 files changed, 178 insertions(+), 218 deletions(-) create mode 100644 js/memberManagement.js diff --git a/js/memberManagement.js b/js/memberManagement.js new file mode 100644 index 00000000..2af25bd7 --- /dev/null +++ b/js/memberManagement.js @@ -0,0 +1,127 @@ +window.Glma = (function() { + var xhr = function(data, complete, success, error, type){ + jQuery.ajax({ + dataType: "json", + type : type, + url: wp.ajax.settings.url, + data: data, + complete: complete, + success: success, + error: error + }); + } + return { + defaultData: { + action : 'glm_members_admin_ajax', + glm_action : 'memberManagement', + }, + adminSearch: function(data, complete, success, error, type){ + xhr( + data, + complete, + success, + error, + type, + ); + }, + memberEdit: function(data, complete, success, error, type){ + xhr( + data, + complete, + success, + error, + type, + ); + }, + textSearch: function(textSearchData){ + var searchResults = {}; + var imageUrl = `{$glmPluginMediaUrl}/images` + var listData = { + action : 'glm_members_admin_ajax', + glm_action : 'glmTextSearch', + table : textSearchData.table, + fields : textSearchData.fields, + where : textSearchData.where + } + $('input#'+textSearchData.slug+'-text').autoComplete({ + minChars: 1, + source: function( request, response ) { + listData.query = request; + $.ajax({ + dataType: "json", + type : 'POST', + url: '{$ajaxUrl}', + data: listData, + success: function(data) { + + if(data.searchData){ + var searchDropdown = []; + for(var i = 0;i < data.searchData.length;i++){ + var searchTitle = Object.keys(data.searchData[i])[0]; + var image = (data.searchData[i][searchTitle].image) ? data.searchData[i][searchTitle].image : null; + var memberID = data.searchData[i][searchTitle].memberID; + var entityID = data.searchData[i][searchTitle].entityID; + searchDropdown.push(searchTitle); + searchResults[searchTitle] = {image: image, memberID: memberID, entityID: entityID}; + } + response(searchDropdown); + }else{ + response(['No Results Found']) + } + } + }); + }, + renderItem: function (item, search){ + + search = search.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); + var re = new RegExp("(" + search.split(' ').join('|') + ")", "gi"); + return '
'+item.replace(re, "$1")+'
'; + + }, + // onSelect: function(e, term, item){ + // console.log(item); + // var search = $(item).text(); + + // if(search !== "No Results Found"){ + // window.location.replace("TEST"); + // } + // }, + onSelect: function(e, term, item){ + alert('Item "'+item.data('langname')+' ('+item.data('lang')+')" selected by '+(e.type == 'keydown' ? 'pressing enter' : 'mouse click')+'.'); + } + // select: function( event, ui ) { + // console.log("ui:" + ui) + // var memberID = ui.item.id; + // window.location.replace("#=" + memberID ); + // }, + }); + }, + dateSearch: function(dateSearchData){ + var date = new Date(); + var toDate = '', fromDate = (dateSearchData.defaultFromDate) ? '&' + dateSearchData.fromDate + '=' + dateSearchData.defaultFromDate : ''; + $('.fromDate').datepicker({ + format : 'mm/dd/yyyy', + setDefaultDate : true, + defaultDate : date, + autoClose : true, + onClose : function(){ + fromDate = '&' + dateSearchData.fromDate + '=' + $(this)[0].el.value; + } + }); + $('.toDate').datepicker({ + format : 'mm/dd/yyyy', + autoClose : true, + onClose: function(){ + toDate = '&' + dateSearchData.toDate + '=' + $(this)[0].el.value; + } + }); + + $('#' + dateSearchData.searchBtn).on("click", function(){ + window.location = dateSearchData.resultUrl + fromDate + toDate; + }); + }, + listComponent: function(listComponentData) { + $('.tooltipped').tooltip(); + } + } +})(); \ No newline at end of file diff --git a/lib/GlmDataAbstract/DataAbstract.php b/lib/GlmDataAbstract/DataAbstract.php index 50f9c794..7c56ce94 100755 --- a/lib/GlmDataAbstract/DataAbstract.php +++ b/lib/GlmDataAbstract/DataAbstract.php @@ -1037,6 +1037,7 @@ abstract class GlmDataAbstract require_once GLM_MEMBERS_PLUGIN_CLASS_PATH.'/glmPluginSupport.php'; $support = new GlmPluginSupport(); + $support->write_log( $in ); // Is it one of the available values if (isset($f['required']) && $f['required'] && trim($in) == '') { $this->inputFieldStatus = false; diff --git a/models/admin/dashboard/members.php b/models/admin/dashboard/members.php index 53463b3f..4703a5d8 100644 --- a/models/admin/dashboard/members.php +++ b/models/admin/dashboard/members.php @@ -101,7 +101,7 @@ class GlmMembersAdmin_dashboard_members extends GlmDataMemberInfo wp_register_script( 'materialize', - GLM_MEMBERS_PLUGIN_URL . 'js/materialize.min.js', + GLM_MEMBERS_PLUGIN_URL . 'js/materialize/materialize.min.js', array( 'jquery' ), diff --git a/models/admin/manageDashboard/members.php b/models/admin/manageDashboard/members.php index a7325f4a..9bc7ffe9 100644 --- a/models/admin/manageDashboard/members.php +++ b/models/admin/manageDashboard/members.php @@ -132,6 +132,15 @@ class GlmMembersAdmin_manageDashboard_members extends GlmDataMembers ), GLM_MEMBERS_PLUGIN_VERSION ); + wp_register_script( + 'memberManagement', + GLM_MEMBERS_PLUGIN_URL . 'js/memberManagement.js', + array( + 'jquery' + ), + GLM_MEMBERS_PLUGIN_VERSION + ); + wp_enqueue_script('memberManagement', false, array('jquery'), false, true); wp_enqueue_script('materialize', false, array('jquery'), false, true); wp_enqueue_script('autoComplete', false, array('jquery'), false, true); wp_enqueue_style('materialize-css', GLM_MEMBERS_PLUGIN_URL . 'css/materialize.min.css'); diff --git a/models/admin/member/memberInfo.php b/models/admin/member/memberInfo.php index c61a17a5..06967875 100755 --- a/models/admin/member/memberInfo.php +++ b/models/admin/member/memberInfo.php @@ -347,7 +347,7 @@ class GlmMembersAdmin_member_memberInfo extends GlmDataMemberInfo if ($this->haveMemberInfo) { // Update the member Info data - + $support->write_log( $_REQUEST['status']); $this->memberInfo = $this->updateEntry($this->memberInfoID, 'id', true); // $support->write_log( $this->memberInfo ); if ($this->memberInfo['status']) { diff --git a/views/admin/manageDashboard/index.html b/views/admin/manageDashboard/index.html index 4baf816f..53e1b232 100644 --- a/views/admin/manageDashboard/index.html +++ b/views/admin/manageDashboard/index.html @@ -18,46 +18,10 @@ {include file='admin/footer.html'} \ No newline at end of file -- 2.17.1