From: Anthony Talarico Date: Fri, 29 Mar 2019 14:31:01 +0000 (-0400) Subject: adding events count to the member list X-Git-Url: http://cvs2.gaslightmedia.com/gitweb/?a=commitdiff_plain;h=aab1550384b38055e720e330b51690a2ca249839;p=WP-Plugins%2Fglm-member-db.git adding events count to the member list --- diff --git a/models/admin/manageDashboard/members.php b/models/admin/manageDashboard/members.php index caef2cec..b47f79ad 100644 --- a/models/admin/manageDashboard/members.php +++ b/models/admin/manageDashboard/members.php @@ -418,6 +418,17 @@ class GlmMembersAdmin_manageDashboard_members extends GlmDataMembers } } + // get a count of the events for each member + $sql = "SELECT COUNT(id) as eventsCount, ref_dest as member FROM " .GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX ."events GROUP BY ref_dest"; + $eventsCountData = $this->wpdb->get_results($sql, ARRAY_A); + if ( isset( $eventsCountData ) && is_array( $eventsCountData ) ) { + foreach ( $eventsCountData as $eventsCount) { + // $support->write_log($eventsCount); + $memberEventsCount[$eventsCount['member']] = $eventsCount; + + } + } + // Determine if current user can add, edit, delete member data // $canEdit = current_user_can('glm_members_edit'); // get all active member profile IDs and Images @@ -426,26 +437,41 @@ class GlmMembersAdmin_manageDashboard_members extends GlmDataMembers if ( isset( $profileResults ) && is_array( $profileResults ) ) { foreach ( $profileResults as $profile) { $memberProfiles[$profile['member']] = $profile; + } } // Add a url for each member if ( isset( $list) && is_array( $list ) ) { foreach ($list as $member) { - $list[$member['id']]['profile_data'] = $memberProfiles[$member['id']]; + // $support->write_log($member); + if( isset( $memberEventsCount[$member['id']] ) ) { + $list[$member['id']]['events_data'] = $memberEventsCount[$member['id']]; + }else{ + $list[$member['id']]['events_data'] = []; + } + if( isset( $memberProfiles[$member['id']] ) ) { + $list[$member['id']]['profile_data'] = $memberProfiles[$member['id']]; + }else{ + $list[$member['id']]['profile_data'] = []; + } $list[$member['id']]['member_slug'] = sanitize_title($member['name']); } } - + $support->write_log($list); // Create current month/date string to pre-populate the Month/Year field for $monthYear = date('F Y'); + // Update the textSearch for output into the form. $textSearch = str_replace("\'", "'", $textSearch ); $textSearch = str_replace('\\"', '"', $textSearch ); $textSearch = str_replace('\\', '', $textSearch ); - + + + + foreach($this->config['addOns'] as $addOn){ $nickName = ucfirst(substr($addOn['slug'], strpos($addOn['slug'], "glm-member-db-") + 14)); $addOns[$nickName] = $addOn; diff --git a/views/admin/manageDashboard/list.html b/views/admin/manageDashboard/list.html index 09cec443..8f9c4a53 100644 --- a/views/admin/manageDashboard/list.html +++ b/views/admin/manageDashboard/list.html @@ -18,7 +18,7 @@ {if isset($addOns.Events)} Events: - 0 + {if $member.events_data.eventsCount} {$member.events_data.eventsCount} {else} 0 {/if} {/if} {if isset($addOns.Packaging)}