Update in member dashboard
authorSteve Sutton <steve@gaslightmedia.com>
Thu, 8 Aug 2019 17:18:55 +0000 (13:18 -0400)
committerSteve Sutton <steve@gaslightmedia.com>
Thu, 8 Aug 2019 17:18:55 +0000 (13:18 -0400)
trying to straighten out the code. Was a mess. Using smarty comments
instead of html comments and marking the else part with what started
them.

models/admin/member/index.php
setup/adminHooks.php
views/admin/member/index.html

index 2ee5dd2..e0e9ec7 100644 (file)
@@ -14,7 +14,7 @@
  */
 
 // Load Members data abstract
-require_once GLM_MEMBERS_PLUGIN_CLASS_PATH.'/data/dataMembers.php';
+require_once GLM_MEMBERS_PLUGIN_CLASS_PATH . '/data/dataMembers.php';
 
 /*
  * This class performs the work for the default action of the "Members" menu
@@ -48,7 +48,7 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
      * @return object Class object
      *
      */
-    public function __construct ($wpdb, $config)
+    public function __construct ( $wpdb, $config )
     {
 
         // Save WordPress Database object
@@ -58,7 +58,7 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
         $this->config = $config;
 
         // Run constructor for members data class
-        parent::__construct(false, false);
+        parent::__construct( false, false );
 
     }
 
@@ -96,64 +96,63 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
      * produce output.
      *
      */
-    public function modelAction ($actionData = false)
+    public function modelAction ( $actionData = false )
     {
 
         // ***** THIS IS ONLY TEMPORARY AS WE TRANSITION AWAY FROM OPTION FOR LAST MEMBER ID - Can be deleted after 2.10.30 ******
         delete_option('glmMembersDatabaseMemberID');
 
-
-        $success = true;
-        $haveMember = false;
-        $addingMember = false;
-        $memberData = false;
-        $memberName = false;
-        $memberID = 0;
-        $archived = false;
-        $memberUpdated = false;
-        $haveMemberInfo = false;
-        $clickThroughCounts = array('day' => 0, 'week' => 0, 'month' => 0);
-        $detailViewCounts = array('day' => 0, 'week' => 0, 'month' => 0);
+        $success            = true;
+        $haveMember         = false;
+        $addingMember       = false;
+        $memberData         = false;
+        $memberName         = false;
+        $memberID           = 0;
+        $archived           = false;
+        $memberUpdated      = false;
+        $haveMemberInfo     = false;
+        $clickThroughCounts = array( 'day' => 0, 'week' => 0, 'month' => 0 );
+        $detailViewCounts   = array( 'day' => 0, 'week' => 0, 'month' => 0 );
 
         // Check for required Member Types
-        require_once GLM_MEMBERS_PLUGIN_CLASS_PATH.'/data/dataMemberTypes.php';
-        $MemberTypes = new GlmDataMemberTypes($this->wpdb, $this->config);
+        require_once GLM_MEMBERS_PLUGIN_CLASS_PATH . '/data/dataMemberTypes.php';
+        $MemberTypes      = new GlmDataMemberTypes( $this->wpdb, $this->config );
         $memberTypesStats = $MemberTypes->getStats();
-        $haveMemberTypes = ($memberTypesStats > 0);
+        $haveMemberTypes  = ( $memberTypesStats > 0 );
 
         // Check if there's a logged in user who is locked to their own entity
-        $lockedToMember = apply_filters('glm_members_locked_to_member_id', false);
-        if ($lockedToMember) {
+        $lockedToMember = apply_filters( 'glm_members_locked_to_member_id', false );
+        if ( $lockedToMember ) {
             $memberID = $lockedToMember;
 
         // Next make darn't sure they are admin or members manager before checking for other member ID.
-        } elseif (!apply_filters('glm_members_menu_members', false) && !is_admin()) {
+        } elseif ( !apply_filters( 'glm_members_menu_members', false ) && !is_admin() ) {
 
-            wp_die('There has been a member access check failure. Please call for support.');
+            wp_die( 'There has been a member access check failure. Please call for support.' );
 
         // Otherwise Check for other member selection options
         } else {
 
-            if (isset($_REQUEST['option']) && $_REQUEST['option'] == 'add') {
+            if ( isset($_REQUEST['option'] ) && $_REQUEST['option'] == 'add' ) {
 
                $memberID = 0;
-               setcookie("glmMembersDatabaseMemberID", $memberID, time()-3600);
+               setcookie( "glmMembersDatabaseMemberID", $memberID, time() - 3600 );
 
             // Check if a redirecting model supplied the member ID
-            } elseif (isset($actionData['memberID'])) {
+            } elseif ( isset( $actionData['memberID'] ) ) {
 
                 $memberID = $actionData['memberID'];
 
             // Otherwise check if one was supplied by the user or passed from somewhere else
-            } elseif (isset($_REQUEST['member'])) {
+            } elseif ( isset( $_REQUEST['member'] ) ) {
 
                 // Make sure it's a number
-                $memberID = $_REQUEST['member']-0;
+                $memberID = $_REQUEST['member'] - 0;
 
             } else {
 
                 $memberID = 0;
-                if (isset($_COOKIE['glmMembersDatabaseMemberID']) && $_COOKIE['glmMembersDatabaseMemberID'] > 0) {
+                if ( isset( $_COOKIE['glmMembersDatabaseMemberID']) && $_COOKIE['glmMembersDatabaseMemberID'] > 0 ) {
                     $memberID = $_COOKIE['glmMembersDatabaseMemberID'];
                 }
 
@@ -165,22 +164,22 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
          * Setup to add a new member
          *
          */
-        if ($memberID <= 0 && isset($_REQUEST['option']) && ($_REQUEST['option'] == 'add' || $_REQUEST['option'] == 'addNew')) {
+        if ( $memberID <= 0 && isset( $_REQUEST['option'] ) && ( $_REQUEST['option'] == 'add' || $_REQUEST['option'] == 'addNew' ) ) {
 
             // If this is a new member submission
-            if (isset($_REQUEST['option']) && $_REQUEST['option'] == 'addNew') {
+            if ( isset($_REQUEST['option'] ) && $_REQUEST['option'] == 'addNew' ) {
 
                 // Attempt to add the new member
                 $memberData = $this->insertEntry();
-                if($memberData['status']) {
+                if( $memberData['status'] ) {
 
                     $memberID = $memberData['fieldData']['id'];
 
                     // Update the member slug then get member data again
-                    $this->updateSlug($memberID);
+                    $this->updateSlug( $memberID );
 
                     // Now get the updated entry with the slug
-                    $memberData = $this->editEntry($memberID);
+                    $memberData = $this->editEntry( $memberID );
 
                     $haveMember = true;
 
@@ -200,25 +199,24 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
          * Member update
          *
          */
-        } elseif (isset($_REQUEST['option']) && $_REQUEST['option'] == 'submit') {
+        } elseif ( isset( $_REQUEST['option'] ) && $_REQUEST['option'] == 'submit' ) {
 
-            $memberData = $this->updateEntry($memberID);
+            $memberData = $this->updateEntry( $memberID );
 
             // If update was successful then use editEntry() to setup for the edit again.
-            if ($memberData['status']) {
-
-                $slug = $this->updateSlug($memberID);
+            if ( $memberData['status'] ) {
 
-                $memberData = $this->editEntry($memberID);
+                $slug          = $this->updateSlug( $memberID );
+                $memberData    = $this->editEntry( $memberID );
                 $memberUpdated = true;
 
                 // Also update all member info records with any possible name change
                 $sql = "
-                    UPDATE ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info
-                       SET member_name = '".addslashes($memberData['fieldData']['name'])."'
+                    UPDATE " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_info
+                       SET member_name = '".addslashes( $memberData['fieldData']['name'] )."'
                      WHERE member = $memberID
                 ;";
-                $this->wpdb->query($sql);
+                $this->wpdb->query( $sql );
 
             }
 
@@ -229,11 +227,11 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
          *  Get existing base member data
          *
          */
-        } elseif ($memberID > 0) {
+        } elseif ( $memberID > 0 ) {
 
             // Try to get existing member data
-            $memberData = $this->editEntry($memberID);
-            if ($memberData) {
+            $memberData = $this->editEntry( $memberID );
+            if ( $memberData ) {
                 $haveMember = true;
             }
 
@@ -245,32 +243,40 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
          *
          */
         // Check if there's a request to delete a specific member information record
-        if (isset($_REQUEST['deleteID']) && $_REQUEST['deleteID'] != '') {
+        if ( isset( $_REQUEST['deleteID'] ) && $_REQUEST['deleteID'] != '' ) {
 
             // Make sure ID is a number
-            $delID = $_REQUEST['deleteID']-0;
+            $delID = $_REQUEST['deleteID'] - 0;
 
             // Make sure it's positive integer
-            if ($delID > 0 && is_int($delID)) {
+            if ( $delID > 0 && is_int( $delID ) ) {
 
                 // Delete the selected record
                 $sql = "
-                    UPDATE ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info
-                       SET status = ".$this->config['status_numb']['Archived']."
+                    UPDATE " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_info
+                       SET status = " . $this->config['status_numb']['Archived'] . "
                      WHERE id = $delID
                 ;";
-                $this->wpdb->query($sql);
+                $this->wpdb->query( $sql );
 
             }
+
+            if ( $memberID > 0 ) {
+                // Try to get existing member data
+                $memberData = $this->editEntry( $memberID );
+                if ( $memberData ) {
+                    $haveMember = true;
+                }
+            }
         }
 
         // Check if there's a request to activate a specific member information record
-        if (isset($_REQUEST['activateID']) && $_REQUEST['activateID'] != '') {
+        if ( isset( $_REQUEST['activateID'] ) && $_REQUEST['activateID'] != '' ) {
 
-            $activateID = $_REQUEST['activateID']-0;
+            $activateID = $_REQUEST['activateID'] - 0;
 
             // If the ID is sane, try to activate this recored
-            if ($activateID > 0) {
+            if ( $activateID > 0 ) {
 
                 // Make sure we have a good ID
                 $sql = "
@@ -278,31 +284,31 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
                       FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info
                      WHERE id = $activateID
                 ;";
-                $idTest = $this->wpdb->get_row($sql, ARRAY_A);
+                $idTest = $this->wpdb->get_row( $sql, ARRAY_A );
 
                 // If we do, then activate it
-                if($idTest != null) {
+                if ( $idTest != null ) {
 
                     if ( !$this->config['settings']['enable_multiple_profiles'] ) {
                          $sql = "
                              UPDATE ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info
-                                SET status = ".$this->config['status_numb']['Inactive']."
+                                SET status = " . $this->config['status_numb']['Inactive'] . "
                               WHERE member = $memberID
-                                AND status = ".$this->config['status_numb']['Active']."
+                                AND status = " . $this->config['status_numb']['Active'] . "
                          ;";
-                         $this->wpdb->query($sql);
+                         $this->wpdb->query( $sql );
                     }
 
                     $sql = "
                          UPDATE ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info
-                            SET status = ".$this->config['status_numb']['Active']."
+                            SET status = " . $this->config['status_numb']['Active'] . "
                           WHERE id = $activateID";
-                    $this->wpdb->query($sql);
+                    $this->wpdb->query( $sql );
 
                     glmClearShortcodeCache();
 
                     // Ask to re-index this member.
-                    $url = GLM_MEMBERS_SITE_BASE_URL.$this->config['settings']['canonical_member_page'].'/'.$memberData['fieldData']['member_slug'].'/';
+                    $url    = GLM_MEMBERS_SITE_BASE_URL . $this->config['settings']['canonical_member_page'] . '/' . $memberData['fieldData']['member_slug'] . '/';
                     $result = apply_filters( 'glm_member_db_common_search_indexurl', $url );
 
                     if ( !$lockedToMember ) {
@@ -326,116 +332,116 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
         }
 
         // If we have a member then also get a list of member info records
-        $haveInfoRecords = false;
+        $haveInfoRecords   = false;
         $memberInfoRecords = false;
-        $noActive = false;
-        $showArchived = false;
-        if ($haveMember) {
+        $noActive          = false;
+        $showArchived      = false;
+        if ( $haveMember ) {
 
             // Get member name for title
             $memberName =  $memberData['fieldData']['name'];
 
             // Hide archived unless instructed otherwise
             $hideArchived = '';
-            if (!isset($_REQUEST['showArchived']) || $_REQUEST['showArchived'] != 'true') {
-                $hideArchived = " && T.status != ".$this->config['status_numb']['Archived'];
+            if ( !isset( $_REQUEST['showArchived'] ) || $_REQUEST['showArchived'] != 'true' ) {
+                $hideArchived = " && T.status != " . $this->config['status_numb']['Archived'];
             } else {
                 $showArchived = true;
             }
 
-            require_once GLM_MEMBERS_PLUGIN_CLASS_PATH.'/data/dataMemberInfo.php';
-            $MemberInfo = new GlmDataMemberInfo($this->wpdb, $this->config);
-            $memberInfoRecords = $MemberInfo->getList("T.member = $memberID".$hideArchived, 'T.status');
+            require_once GLM_MEMBERS_PLUGIN_CLASS_PATH . '/data/dataMemberInfo.php';
+            $MemberInfo        = new GlmDataMemberInfo( $this->wpdb, $this->config );
+            $memberInfoRecords = $MemberInfo->getList( "T.member = $memberID".$hideArchived, 'T.status');
 
             // Check if there's any member information records
-            if (is_array($memberInfoRecords) && count($memberInfoRecords) > 0) {
+            if ( is_array( $memberInfoRecords ) && count( $memberInfoRecords ) > 0 ) {
                 $haveInfoRecords = true;
             }
 
             // Determine if there are any active info records for this member
             $sql = "
                 SELECT count(id) as numbActive
-                  FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info
-                 WHERE status = ".$this->config['status_numb']['Active']."
+                  FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_info
+                 WHERE status = " . $this->config['status_numb']['Active'] . "
             ;";
-            $activeTest = $this->wpdb->get_row($sql, ARRAY_A);
+            $activeTest = $this->wpdb->get_row( $sql, ARRAY_A );
 
             // If count is 0 then there are no active info records
-            if ($activeTest['numbActive'] == 0) {
+            if ( $activeTest['numbActive'] == 0 ) {
                 $noActive = true;
             }
 
             // Also save the mmeber ID as a cookie
-            setcookie("glmMembersDatabaseMemberID", $memberID, time()+86400);
+            setcookie( "glmMembersDatabaseMemberID", $memberID, time() + 86400 );
 
             /*
              * Get member view stats
              */
 
             // Get the current date, first date of this week, and first date of this month
-            $today = date('Y-m-d');
-            $thisWeek =  date('Y-m-d', strtotime('-'.date('w').' days'));
-            $thisMonth = date('Y-m-d', strtotime('-'.(date('j')-1).' days'));
+            $today     = date( 'Y-m-d' );
+            $thisWeek  = date( 'Y-m-d', strtotime( '-'.date( 'w' ).' days' ) );
+            $thisMonth = date( 'Y-m-d', strtotime( '-'.( date( 'j' ) - 1 ).' days' ) );
 
-            $clickThroughCounts = $this->wpdb->get_row("
+            $clickThroughCounts = $this->wpdb->get_row( "
                 SELECT COALESCE ((
                             SELECT clicks
-                              FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."clickthrough_stats
+                              FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "clickthrough_stats
                              WHERE member = $memberID
                                AND stat_type = 1
                                AND stat_date = '$today'
                        ), 0) AS day,
                        COALESCE ((
                             SELECT clicks
-                              FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."clickthrough_stats
+                              FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "clickthrough_stats
                              WHERE member = $memberID
                                AND stat_type = 2
                                AND stat_date = '$thisWeek'
                        ), 0) AS week,
                        COALESCE ((
                             SELECT clicks
-                              FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."clickthrough_stats
+                              FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "clickthrough_stats
                              WHERE member = $memberID
                                AND stat_type = 3
                                AND stat_date = '$thisMonth'
                        ), 0) AS month
-            ", ARRAY_A);
+            ", ARRAY_A );
 
-            $detailViewCounts = $this->wpdb->get_row("
+            $detailViewCounts = $this->wpdb->get_row( "
                 SELECT COALESCE ((
                             SELECT clicks
-                              FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_detail_stats
+                              FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_detail_stats
                              WHERE member = $memberID
                                AND stat_type = 1
                                AND stat_date = '$today'
                        ), 0) AS day,
                        COALESCE ((
                             SELECT clicks
-                              FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_detail_stats
+                              FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_detail_stats
                              WHERE member = $memberID
                                AND stat_type = 2
                                AND stat_date = '$thisWeek'
                        ), 0) AS week,
                        COALESCE ((
                             SELECT clicks
-                              FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_detail_stats
+                              FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_detail_stats
                              WHERE member = $memberID
                                AND stat_type = 3
                                AND stat_date = '$thisMonth'
                        ), 0) AS month
-            ", ARRAY_A);
+            ", ARRAY_A );
 
         }
 
         // Build data for month and year picklists for graph date selection
         $years = array();
-        for ($y=date('Y', strtotime('-10 years')) ;  $y<=date('Y') ; $y++ ) {
+        for ( $y = date( 'Y', strtotime( '-10 years' ) ) ; $y <= date( 'Y' ); $y++ ) {
             $years[$y] = $y;
         }
 
         // End of - Get member view stats
 
-        $thisDate = date('m/d/Y');
+        $thisDate = date( 'm/d/Y' );
 
         // Compile template data
         $templateData = array(
@@ -457,25 +463,23 @@ class GlmMembersAdmin_member_index extends GlmDataMembers
             'clickThroughCounts' => $clickThroughCounts,
             'detailViewCounts'   => $detailViewCounts,
             'thisDate'           => $thisDate,
-            'thisMonth'          => date('m')-1,                 // Using this as an index into the month array - starts with 0
-            'thisYear'           => date('Y'),
+            'thisMonth'          => date( 'm' ) - 1,                 // Using this as an index into the month array - starts with 0
+            'thisYear'           => date( 'Y' ),
             'years'              => $years,
             'months'             => $this->config['month'],
-            'time'               => time()                            // Used to break browser caching of graphs
+            'time'               => time(),                            // Used to break browser caching of graphs
         );
 
         // Return status, suggested view, and data to controller
         return array(
-            'status' => $success,
+            'status'           => $success,
             'menuItemRedirect' => false,
-            'modelRedirect' => false,
-            'view' => 'admin/member/index.html',
-            'data' => $templateData
+            'modelRedirect'    => false,
+            'view'             => 'admin/member/index.html',
+            'data'             => $templateData,
         );
 
     }
 
 
 }
-
-?>
index 4970b21..0b50445 100755 (executable)
@@ -169,7 +169,7 @@ add_action('admin_menu', 'glmAdminMenuTests');
 // If members are enabled
 if ( isset( $config ) && isset( $config['settings'] ) && $config['settings']['enable_members'] ) {
 
-    $lockedToMember = apply_filters('glm_members_locked_to_member_id', false);
+    $lockedToMember           = apply_filters('glm_members_locked_to_member_id', false);
     $enable_contact_edit_only = $config['settings']['enable_contact_edit_only'];
 
     // Add member widgets
@@ -275,12 +275,12 @@ if ( isset( $config ) && isset( $config['settings'] ) && $config['settings']['en
  * so together they must form a unique value.
  *
  */
-add_filter( 'glm-hook-list-map-items-by-latlon', function($data) {
+add_filter( 'glm-hook-list-map-items-by-latlon', function( $data ) {
 
     // Call dedicated model to perform search
     include_once GLM_MEMBERS_PLUGIN_PATH . '/classes/memberDataByLatLon.php';
-    $MapItems = new GlmMembersFront_members_memberDataByLatLon($this->wpdb, $this->config);
-    $mapItems = $MapItems->getMembers($data['request'], $data['area'], $data['filter']);
+    $MapItems = new GlmMembersFront_members_memberDataByLatLon( $this->wpdb, $this->config );
+    $mapItems = $MapItems->getMembers( $data['request'], $data['area'], $data['filter'] );
 
     // Add the info on this source
     $data['sources'][GLM_MEMBERS_PLUGIN_SLUG] = array(
@@ -289,8 +289,8 @@ add_filter( 'glm-hook-list-map-items-by-latlon', function($data) {
     );
 
     // If there's any map items merge them into the map items sub-array
-    if (is_array($mapItems) && count($mapItems) > 0) {
-        $data['mapItems'] = array_merge($data['mapItems'], $mapItems);
+    if ( is_array( $mapItems ) && count( $mapItems ) > 0 ) {
+        $data['mapItems'] = array_merge( $data['mapItems'], $mapItems );
     }
 
     return $data;
@@ -298,12 +298,12 @@ add_filter( 'glm-hook-list-map-items-by-latlon', function($data) {
 });
 
 // Add Filter for the glm_associate_phone_filter
-add_filter('glm_associate_phone_filter', function( $phone ){
+add_filter( 'glm_associate_phone_filter', function( $phone ) {
     // Passing phone to Plugin Support Function
     return glmMembersFilterPhone( $this->config, $phone );
 });
 
-add_filter( 'glm_user_is_moderated', function( $memberID ){
+add_filter( 'glm_user_is_moderated', function( $memberID ) {
     // If setting for all edits moderated is on then all member contacts are moderated.
     if ( $this->config['memberNotifications']['all_edits_moderated'] ) {
         return true;
index 1e66fc0..a49bf39 100644 (file)
 {include file='admin/member/header.html'}
 
 {if $haveMember || $addingMember}
- {if $haveMemberTypes}
   {if $haveMemberTypes}
 
-  {if $memberUpdated}
-    <h2 class="glm-notice glm-flash-updated">{$terms.term_member_cap} Updated</h2>
-  {/if}
-
-<div id="glm-admin-member-dashboard" class="glm-admin-table">
-  {if $haveMember}
-
-    {if $lockedToMember}
-        {if apply_filters( 'glm-members-billing-enabled', false )}
-            <div class="glm-row{if !$lockedToMember} glm-hidden{/if}">
-                <div class="glm-small-12 glm-column">
-                    <a class="button" href="{$thisUrl}?page=glm-members-admin-menu-billing-index">Billing</a><br>
-                </div>
-            </div>
+        {if $memberUpdated}
+            <h2 class="glm-notice glm-flash-updated">{$terms.term_member_cap} Updated</h2>
         {/if}
-            <div class="glm-row{if !$lockedToMember} glm-hidden{/if}">
-                <div class="glm-small-12 glm-column">
-                    <a class="button" href="{$thisUrl}?page=glm-members-admin-menu-profile">My Contact Info</a>
-                </div>
-            </div>
 
-        {if apply_filters( 'glm-members-forsale-enabled', false )}
-            <div class="glm-row{if !$lockedToMember} glm-hidden{/if}">
-                <div class="glm-small-12 glm-column">
-                    <a class="button" href="{$thisUrl}?page=glm-members-admin-menu-for-sale-index">For Sale</a>
-                </div>
-            </div>
-        {/if}
+        <div id="glm-admin-member-dashboard" class="glm-admin-table">
 
-        {if apply_filters( 'glm-members-jobs-enabled', false )}
-            <div class="glm-row{if !$lockedToMember} glm-hidden{/if}">
-                <div class="glm-small-12 glm-column">
-                    <a class="button" href="{$thisUrl}?page=glm-members-admin-menu-jobs-index">Job Postings</a>
-                </div>
-            </div>
-        {/if}
-    {/if}
+            {if $haveMember}
 
-        <div class="glm-row">
-            <div class="glm-small-4 glm-left">
-                <div class="glm-admin-table">
-                    <div class="glm-row{if $lockedToMember} glm-hidden{/if}">
-                        <div class="glm-small-12 glm-column">
-                            <h4>Date created:</h4>
+                {if $lockedToMember}
+                    {if apply_filters( 'glm-members-billing-enabled', false )}
+                        <div class="glm-row{if !$lockedToMember} glm-hidden{/if}">
+                            <div class="glm-small-12 glm-column">
+                                <a class="button" href="{$thisUrl}?page=glm-members-admin-menu-billing-index">Billing</a><br>
+                            </div>
                         </div>
+                    {/if}
+                    <div class="glm-row{if !$lockedToMember} glm-hidden{/if}">
                         <div class="glm-small-12 glm-column">
-                            {$member.fieldData.created.date}
+                            <a class="button" href="{$thisUrl}?page=glm-members-admin-menu-profile">My Contact Info</a>
                         </div>
                     </div>
-                    <div class="glm-row{if $lockedToMember && !$settings.enable_member_reports} glm-hidden{/if}">
-                        <div class="glm-small-12 glm-column">
-                            <h4>URL CLick Counts</h4>
-                        </div>
-                        <div class="glm-small-12 glm-column">
-                            <b>Today:</b> {$clickThroughCounts.day}&nbsp;&nbsp;&nbsp;<a data-type="daysClicks" class="dialog-button" href=""><img src="{$assetsUrl}/graph.png"></a>
+
+                    {if apply_filters( 'glm-members-forsale-enabled', false )}
+                        <div class="glm-row{if !$lockedToMember} glm-hidden{/if}">
+                            <div class="glm-small-12 glm-column">
+                                <a class="button" href="{$thisUrl}?page=glm-members-admin-menu-for-sale-index">For Sale</a>
+                            </div>
                         </div>
-                    </div>
-                </div>
-            </div>
-            <div class="glm-small-4 glm-left">
-                <div class="glm-admin-table">
-                    <div class="glm-row{if $lockedToMember} glm-hidden{/if}">
-                        <div class="glm-small-12 glm-column">
-                            <h4>{$terms.term_member_cap} Display & Access:</h4>
+                    {/if}
+
+                    {if apply_filters( 'glm-members-jobs-enabled', false )}
+                        <div class="glm-row{if !$lockedToMember} glm-hidden{/if}">
+                            <div class="glm-small-12 glm-column">
+                                <a class="button" href="{$thisUrl}?page=glm-members-admin-menu-jobs-index">Job Postings</a>
+                            </div>
                         </div>
-                        <div class="glm-small-12 glm-column">
-                            {$member.fieldData.access.name}
+                    {/if}
+                {/if}
+
+                <div class="glm-row">
+                    <div class="glm-small-4 glm-left">
+                        <div class="glm-admin-table">
+                            <div class="glm-row{if $lockedToMember} glm-hidden{/if}">
+                                <div class="glm-small-12 glm-column">
+                                    <h4>Date created:</h4>
+                                </div>
+                                <div class="glm-small-12 glm-column">
+                                    {$member.fieldData.created.date}
+                                </div>
+                            </div>
+                            <div class="glm-row{if $lockedToMember && !$settings.enable_member_reports} glm-hidden{/if}">
+                                <div class="glm-small-12 glm-column">
+                                    <h4>URL CLick Counts</h4>
+                                </div>
+                                <div class="glm-small-12 glm-column">
+                                    <b>Today:</b> {$clickThroughCounts.day}&nbsp;&nbsp;&nbsp;<a data-type="daysClicks" class="dialog-button" href=""><img src="{$assetsUrl}/graph.png"></a>
+                                </div>
+                            </div>
                         </div>
                     </div>
-                    <div class="glm-row{if $lockedToMember} glm-hidden{/if}">
-                        <div class="glm-small-12 glm-column">
-                            <h4>{$terms.term_member_cap} Type:</h4>
-                        </div>
-                        <div class="glm-small-12 glm-column">
-                            {$member.fieldData.member_type.name}
+                    <div class="glm-small-4 glm-left">
+                        <div class="glm-admin-table">
+                            <div class="glm-row{if $lockedToMember} glm-hidden{/if}">
+                                <div class="glm-small-12 glm-column">
+                                    <h4>{$terms.term_member_cap} Display & Access:</h4>
+                                </div>
+                                <div class="glm-small-12 glm-column">
+                                    {$member.fieldData.access.name}
+                                </div>
+                            </div>
+                            <div class="glm-row{if $lockedToMember} glm-hidden{/if}">
+                                <div class="glm-small-12 glm-column">
+                                    <h4>{$terms.term_member_cap} Type:</h4>
+                                </div>
+                                <div class="glm-small-12 glm-column">
+                                    {$member.fieldData.member_type.name}
+                                </div>
+                            </div>
+                            <div class="glm-row{if $lockedToMember && !$settings.enable_member_reports} glm-hidden{/if}">
+                                <div class="glm-small-12 glm-column">
+                                    <h4>Detail Page View Counts</h4>
+                                </div>
+                                <div class="glm-small-12 glm-column">
+                                    <b>Today:</b> {$detailViewCounts.day}&nbsp;&nbsp;&nbsp;<a data-type="daysViews" class="dialog-button" href=""><img src="{$assetsUrl}/graph.png"></a>
+                                </div>
+                            </div>
                         </div>
                     </div>
-                    <div class="glm-row{if $lockedToMember && !$settings.enable_member_reports} glm-hidden{/if}">
-                        <div class="glm-small-12 glm-column">
-                            <h4>Detail Page View Counts</h4>
+                    {if apply_filters('glm_members_menu_members', true)}
+                        <div class="glm-small-4 glm-right">
+                            <a href="{$thisUrl}?page={$thisPage}&glm_action=memberEdit&member={$memberID}" class="button button-primary glm-button glm-right">Edit {$terms.term_member_cap} Name and Status</a>
                         </div>
-                        <div class="glm-small-12 glm-column">
-                            <b>Today:</b> {$detailViewCounts.day}&nbsp;&nbsp;&nbsp;<a data-type="daysViews" class="dialog-button" href=""><img src="{$assetsUrl}/graph.png"></a>
-                        </div>
-                    </div>
+                    {/if}
+                </div>
+            {else}
+                <h3>No {$terms.term_member} information available.</h3>
+            {/if}
+
+            {apply_filters('glm_members_admin_member_index_topOfMemberSummary', '', {$member.fieldData.id})}
+
+            <script src="{$jsUrl}/PrintArea/jquery.PrintArea.js"></script>
+
+            {* URL click through graphs *}
+            <div id="daysClicks" class="graph-dialog glm-dialog-box" title="URL Click-Through Counts Graph">
+                <center>
+                    <p>&nbsp;</p>
+                    <select id="clickMonths">
+                {foreach from=$months key=monthNumb item=monthName}
+                        <option value="{$monthNumb}"{if $monthNumb == $thisMonth} selected{/if}>{$monthName}</option>
+                {/foreach}
+                    </select>
+                    <select id="clickYears">
+                {foreach $years as $year}
+                        <option value="{$year}"{if $thisYear == $year} selected{/if}>{$year}</option>
+                {/foreach}
+                    </select>
+                    <div id="clickUpdate" class="button button-secondaryt">Update Graphs</div>
+                    <span class="message button notice-link" data-notice='Legacy Websites may not have included retained daily data.-br--br-If this was the case, you will only see daily URL Click-Through counts collected subsequent to the introduction of this site.-br--br-Any monthly count summaries imported from a legacy site should however display on the lower graph.'>?</span>
+                    &nbsp;&nbsp;&nbsp;&nbsp;<div class="button button-secondary graph-print" data-areaToPrint="urlClicksPrintArea">Print</div>
+                    <a id="clickExport" class="button button-secondary" href="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=exportClicks&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}">Export All Monthly Totals</a>
+                </center>
+                <div id="urlClicksPrintArea" class="PrintArea" style="padding: 10px;">
+                    <p><img id="clicksMonthGraph" src="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=clicks&graphPeriod=oneMonth&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}"><br></p>
+                    <p><img id="clicksYearGraph" src="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=clicks&graphPeriod=twoYears&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}"><br></p>
                 </div>
             </div>
-            {if apply_filters('glm_members_menu_members', true)}
-            <div class="glm-small-4 glm-right">
-                <a href="{$thisUrl}?page={$thisPage}&glm_action=memberEdit&member={$memberID}" class="button button-primary glm-button glm-right">Edit {$terms.term_member_cap} Name and Status</a>
+
+            {* Member Detail Views *}
+            <div id="daysViews" class="graph-dialog glm-dialog-box" title="Daily Detail Page Views Graph">
+                <center>
+                    <p>&nbsp;</p>
+                    <select id="viewMonths">
+                        {foreach from=$months key=monthNumb item=monthName}
+                            <option value="{$monthNumb}"{if $monthNumb == $thisMonth} selected{/if}>{$monthName}</option>
+                        {/foreach}
+                    </select>
+                    <select id="viewYears">
+                        {foreach $years as $year}
+                            <option value="{$year}"{if $thisYear == $year} selected{/if}>{$year}</option>
+                        {/foreach}
+                    </select>
+                    <div id="viewUpdate" class="button button-secondaryt">Update Graphs</div>
+                    <span class="message button notice-link" data-notice='Legacy Websites may not have included retained daily data.-br--br-If this was the case, you will only see daily Detail Page View counts collected subsequent to the introduction of this site.-br--br-Any monthly count summaries imported from a legacy site should however display on the lower graph.'>?</span>
+                    &nbsp;&nbsp;&nbsp;&nbsp;<div class="button button-secondary graph-print" data-areaToPrint="viewsPrintArea">Print</div>
+                    <a id="viewExport" class="button button-secondary" href="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=exportViews&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}">Export All Monthly Totals</a>
+                </center>
+                <div id="viewsPrintArea" class="PrintArea" style="padding: 10px;">
+                    <p><img id="viewsMonthGraph" src="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=views&graphPeriod=oneMonth&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}"><br></p>
+                    <p><img id="viewsYearGraph" src="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=views&graphPeriod=twoYears&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}"><br></p>
+                </div>
             </div>
-            {/if}
-        </div>
-  {else}
-        <h3>No {$terms.term_member} information available.</h3>
-  {/if}
-
-    {apply_filters('glm_members_admin_member_index_topOfMemberSummary', '', {$member.fieldData.id})}
-
-    <script src="{$jsUrl}/PrintArea/jquery.PrintArea.js" type="text/JavaScript" language="javascript"></script>
-
-    <!-- URL click through graphs -->
-    <div id="daysClicks" class="graph-dialog glm-dialog-box" title="URL Click-Through Counts Graph">
-        <center>
-            <p>&nbsp;</p>
-            <select id="clickMonths">
-        {foreach from=$months key=monthNumb item=monthName}
-                <option value="{$monthNumb}"{if $monthNumb == $thisMonth} selected{/if}>{$monthName}</option>
-        {/foreach}
-            </select>
-            <select id="clickYears">
-        {foreach $years as $year}
-                <option value="{$year}"{if $thisYear == $year} selected{/if}>{$year}</option>
-        {/foreach}
-            </select>
-            <div id="clickUpdate" class="button button-secondaryt">Update Graphs</div>
-            <span class="message button notice-link" data-notice='Legacy Websites may not have included retained daily data.-br--br-If this was the case, you will only see daily URL Click-Through counts collected subsequent to the introduction of this site.-br--br-Any monthly count summaries imported from a legacy site should however display on the lower graph.'>?</span>
-            &nbsp;&nbsp;&nbsp;&nbsp;<div class="button button-secondary graph-print" data-areaToPrint="urlClicksPrintArea">Print</div>
-            <a id="clickExport" class="button button-secondary" href="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=exportClicks&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}">Export All Monthly Totals</a>
-        </center>
-        <div id="urlClicksPrintArea" class="PrintArea" style="padding: 10px;">
-            <p><img id="clicksMonthGraph" src="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=clicks&graphPeriod=oneMonth&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}"><br></p>
-            <p><img id="clicksYearGraph" src="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=clicks&graphPeriod=twoYears&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}"><br></p>
-        </div>
-    </div>
 
-    <!-- Member Detail Views -->
-    <div id="daysViews" class="graph-dialog glm-dialog-box" title="Daily Detail Page Views Graph">
-        <center>
-            <p>&nbsp;</p>
-            <select id="viewMonths">
-        {foreach from=$months key=monthNumb item=monthName}
-                <option value="{$monthNumb}"{if $monthNumb == $thisMonth} selected{/if}>{$monthName}</option>
-        {/foreach}
-            </select>
-            <select id="viewYears">
-        {foreach $years as $year}
-                <option value="{$year}"{if $thisYear == $year} selected{/if}>{$year}</option>
-        {/foreach}
-            </select>
-            <div id="viewUpdate" class="button button-secondaryt">Update Graphs</div>
-            <span class="message button notice-link" data-notice='Legacy Websites may not have included retained daily data.-br--br-If this was the case, you will only see daily Detail Page View counts collected subsequent to the introduction of this site.-br--br-Any monthly count summaries imported from a legacy site should however display on the lower graph.'>?</span>
-            &nbsp;&nbsp;&nbsp;&nbsp;<div class="button button-secondary graph-print" data-areaToPrint="viewsPrintArea">Print</div>
-            <a id="viewExport" class="button button-secondary" href="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=exportViews&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}">Export All Monthly Totals</a>
-        </center>
-        <div id="viewsPrintArea" class="PrintArea" style="padding: 10px;">
-            <p><img id="viewsMonthGraph" src="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=views&graphPeriod=oneMonth&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}"><br></p>
-            <p><img id="viewsYearGraph" src="{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=views&graphPeriod=twoYears&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}"><br></p>
-        </div>
-    </div>
+            {apply_filters('glm_members_admin_member_index_bottomOfMemberSummary', '', {$member.fieldData.id})}
 
-  {apply_filters('glm_members_admin_member_index_bottomOfMemberSummary', '', {$member.fieldData.id})}
+            {if $haveMember}
 
-  {if $haveMember}
+            {if !$lockedToMember}
+                {if apply_filters('glm_members_permit_admin_member_index_view_member_info_version', true)}
+                    {if apply_filters('glm_members_permit_admin_member_index_add_member_info_version', true)}{/if}
 
-{if !$lockedToMember}
-  {if apply_filters('glm_members_permit_admin_member_index_view_member_info_version', true)}
-    {if apply_filters('glm_members_permit_admin_member_index_add_member_info_version', true)}
-    {/if}
-    <div class="glm-row">
-        <div>
-            <h3 class="glm-left">{$terms.term_member_cap} Profile Versions</h3>
-            <span class="glm-right">
-                <a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}" class="button button-primary glm-button glm-right">Add New {$terms.term_member_cap} Profile Version</a>
-            </span>
-
-            <div class="glm-admin-show-archived-container">
-                <input type="checkbox" id="showArchived"{if $showArchived} checked="checked"{/if}> Show archived information&nbsp;&nbsp;
-            </div>
-        </div>
-        <br clear="all">
-        <table class="wp-list-table striped glm-admin-table">
-            <thead>
-                <tr>
-                    <th>Status</th>
-                    <th>Reference Name</th>
-                    <th>Created</th>
-                    <th>Last Update</th>
-                    <th> </th>
-                </tr>
-            </thead>
-            <tbody>
-
-      {if $haveInfoRecords}
-        {assign var="i" value="0"}
-        {foreach $memberInfoRecords as $m}
-
-         {if $m.status.value == $statusTypeNumbers.Active || apply_filters('glm_members_permit_admin_member_index_list_inactive_info', true)}
-          {if $i++ is odd by 1}
-            <tr>
-          {else}
-            <tr class="alternate{if $m.status.name == 'Active'} glm-admin-table-active{/if}">
-          {/if}
-                <td>
-                    <a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}&memberInfo={$m.id}"{if $m.status.value == $statusPending} class="glm-notice"{/if}>
-                        Edit {if $m.status.name == 'Active'}Current{else}{$m.status.name}{/if} Profile
-                    </a>
-                </td>
-                <td>{$m.reference_name}</td>
-                <td>{$m.create_time.datetime}</td>
-                <td>{$m.modify_time.datetime}</td>
-                <td>
-                    {if $settings.memb_info_location} {if $m.bad_lat_lon && !$m.has_no_map_data.value}<span class="glm-error">Bad Map Location</span>{/if} {/if}
-          {if apply_filters('glm_members_permit_admin_member_index_clone_activate_info_version', true)}
-                    <a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}&memberInfo={$m.id}&option=clone" class="button button-secondary glm-button-small glm-right">Clone</a>&nbsp;
-                    {if $m.status.name != 'Active'}<a href="{$thisUrl}?page={$thisPage}&glm_action=index&member={$memberID}&activateID={$m.id}" class="button button-secondary glm-button-small glm-right">Activate</a>{/if}
-          {/if}
-                </td>
-            </tr>
-
-
-         {/if}
-        {/foreach}
-      {else} <!-- haveInfoRecords -->
-            <tr><td colspan="5"><a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}">Click here to start entering information for this {$terms.term_member}.</a></td></tr>
-      {/if}
-        </tbody>
-    </table>
-   {/if} <!-- apply_filters -->
-  {/if}
-{/if}
-    </div>
-    <br>
+                    <div class="glm-row">
+                        <div>
+                            <h3 class="glm-left">{$terms.term_member_cap} Profile Versions</h3>
+                            <span class="glm-right">
+                                <a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}" class="button button-primary glm-button glm-right">Add New {$terms.term_member_cap} Profile Version</a>
+                            </span>
+
+                            <div class="glm-admin-show-archived-container">
+                                <input type="checkbox" id="showArchived"{if $showArchived} checked="checked"{/if}> Show archived information&nbsp;&nbsp;
+                            </div>
+                        </div>
+                        <br clear="all">
+                        <table class="wp-list-table striped glm-admin-table">
+                            <thead>
+                                <tr>
+                                    <th>Status</th>
+                                    <th>Reference Name</th>
+                                    <th>Created</th>
+                                    <th>Last Update</th>
+                                    <th> </th>
+                                </tr>
+                            </thead>
+                            <tbody>
+                                {if $haveInfoRecords}
+                                    {assign var="i" value="0"}
+                                    {foreach $memberInfoRecords as $m}
+
+                                        {if $m.status.value == $statusTypeNumbers.Active || apply_filters('glm_members_permit_admin_member_index_list_inactive_info', true)}
+                                            <tr class="{if $m@iteration is div by 2}alternate{/if}{if $m.status.name == 'Active'} glm-admin-table-active{/if}">
+                                                <td>
+                                                    <a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}&memberInfo={$m.id}"{if $m.status.value == $statusPending} class="glm-notice"{/if}>
+                                                        Edit {if $m.status.name == 'Active'}Current{else}{$m.status.name}{/if} Profile
+                                                    </a>
+                                                </td>
+                                                <td>{$m.reference_name}</td>
+                                                <td>{$m.create_time.datetime}</td>
+                                                <td>{$m.modify_time.datetime}</td>
+                                                <td>
+                                                    {if $settings.memb_info_location} {if $m.bad_lat_lon && !$m.has_no_map_data.value}<span class="glm-error">Bad Map Location</span>{/if} {/if}
+                                                    {if apply_filters('glm_members_permit_admin_member_index_clone_activate_info_version', true)}
+                                                        <a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}&memberInfo={$m.id}&option=clone" class="button button-secondary glm-button-small glm-right">Clone</a>&nbsp;
+                                                        {if $m.status.name != 'Active'}<a href="{$thisUrl}?page={$thisPage}&glm_action=index&member={$memberID}&activateID={$m.id}" class="button button-secondary glm-button-small glm-right">Activate</a>{/if}
+                                                    {/if}
+                                                </td>
+                                            </tr>
+                                        {/if}
+                                    {/foreach}
+                                {else} {* haveInfoRecords *}
+                                    <tr><td colspan="5"><a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}">Click here to start entering information for this {$terms.term_member}.</a></td></tr>
+                                {/if}
+                            </tbody>
+                        </table>
+                    </div>
+                {/if} {* apply_filters *}
+            {/if} {* lockedToMember *}
+        {/if} {* haveMember *}
 
+        <br>
 
-     {else}
+    {else} {* haveMemberTypes *}
         <h3 class="glm-error">You do not have any {$terms.term_member_cap} Types setup.</h3>
         <p>You must have at least one {$terms.term_member_cap} Type to add a new {$terms.term_member}.</p>
         <td><a href="{$thisUrl}?page=glm-members-admin-menu-settings&glm_action=index">Click here to add {$terms.term_member_cap} Types.</a></td>
-     {/if}
-    {else}
-        <h3 class="glm-error">No {$terms.term_member} currently selected.</h3>
     {/if}
 
-    {if $lockedToMember}
-        <div id="glm-dashboard-widgets-wrap">
-            {apply_filters('glm-member-db-dashboard-member-widgets', $member)}
-        </div>
-    {/if}
+    </div>
 
-</div>
-    <script type="text/javascript">
-        jQuery(document).ready(function($) {
+{else} {* $haveMember && $haveInfoRecords *}
+    <h3 class="glm-error">No {$terms.term_member} currently selected.</h3>
+{/if}
 
-            $('#clickUpdate').on('click', function() {
-                var m = $('#clickMonths option:selected').val();
-                var y = $('#clickYears option:selected').val();
-                $('#clicksMonthGraph').attr('src', '{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=clicks&graphPeriod=oneMonth&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}&refMonth=' + m + '&refYear=' + y);
-                $('#clicksYearGraph').attr('src', '{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=clicks&graphPeriod=twoYears&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}&refMonth=' + m + '&refYear=' + y);
-            });
+{if $lockedToMember}
+    <div id="glm-dashboard-widgets-wrap">
+        {apply_filters('glm-member-db-dashboard-member-widgets', $member)}
+    </div>
+{/if}
 
-            $('#viewUpdate').on('click', function() {
-                var m = $('#viewMonths option:selected').val();
-                var y = $('#viewYears option:selected').val();
-                $('#viewsMonthGraph').attr('src', '{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=views&graphPeriod=oneMonth&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}&refMonth=' + m + '&refYear=' + y);
-                $('#viewsYearGraph').attr('src', '{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=views&graphPeriod=twoYears&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}&refMonth=' + m + '&refYear=' + y);
-            });
 
-            // Create graph dialog boxes
-            $(".graph-dialog").dialog({
-                autoOpen: false,
-                minWidth: 1020
-            });
+<script>
+    jQuery(document).ready(function($) {
 
-            $("div.graph-print").click(function(){
-                var areaToPrint = $(this).attr('data-areaToPrint');
-                var position = $(this).offset();
-                $('#' + areaToPrint).printArea({
-                    mode:       'popup',        //printable window is either iframe or browser popup
-                    popHt:      500,            // popup window height
-                    popWd:      1000,            // popup window width
-                    popX:       200,            // popup window screen X position
-                    popY:       200,            //popup window screen Y position
-                    popTitle:   'Graph Print Window',   // popup window title element
-                    popClose:   true,           // popup window close after printing
-                    extraCss:   '',             // Comma separated list of extra css to include
-                    extraHead:  '',             // Comma separated list of extra elements to be appended to head tag
-                    strict:     false           // strict or looseTransitional html 4.01 document standard or undefined to not include at all only for popup option
-                });
-           });
-
-            // Display selected graph dialog box
-            $('.dialog-button').click( function() {
-                $(".graph-dialog").dialog("close");
-                var graph = $(this).attr('data-type');
-                $('#' + graph).dialog("open");
-                return false;
-            });
+        $('#clickUpdate').on('click', function() {
+            var m = $('#clickMonths option:selected').val();
+            var y = $('#clickYears option:selected').val();
+            $('#clicksMonthGraph').attr('src', '{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=clicks&graphPeriod=oneMonth&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}&refMonth=' + m + '&refYear=' + y);
+            $('#clicksYearGraph').attr('src', '{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=clicks&graphPeriod=twoYears&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}&refMonth=' + m + '&refYear=' + y);
+        });
 
-            $('#showArchived').click( function() {
-                checked = 'false';
-                if ($(this).attr('checked') == 'checked') {
-                    checked = 'true';
-                }
-                window.location.replace("{$thisUrl}?page={$thisPage}&glm_action=index&member={$memberID}&showArchived=" + checked);
-            });
+        $('#viewUpdate').on('click', function() {
+            var m = $('#viewMonths option:selected').val();
+            var y = $('#viewYears option:selected').val();
+            $('#viewsMonthGraph').attr('src', '{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=views&graphPeriod=oneMonth&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}&refMonth=' + m + '&refYear=' + y);
+            $('#viewsYearGraph').attr('src', '{$ajaxUrl}?action=glm_members_admin_ajax&glm_action=memberGraphs&graphType=views&graphPeriod=twoYears&memberId={$member.fieldData.id}&memberSlug={$member.fieldData.member_slug}&kb={$time}&refMonth=' + m + '&refYear=' + y);
+        });
+
+        // Create graph dialog boxes
+        $(".graph-dialog").dialog({
+            autoOpen: false,
+            minWidth: 1020
+        });
 
-            $('.message').on('click', function() {
-                var notice = $(this).attr('data-notice');
-                alert(notice.replace(/-br-/g, "\n"));
+        $("div.graph-print").click(function(){
+            var areaToPrint = $(this).attr('data-areaToPrint');
+            var position = $(this).offset();
+            $('#' + areaToPrint).printArea({
+                mode:       'popup',              // printable window is either iframe or browser popup
+                popHt:      500,                  // popup window height
+                popWd:      1000,                 // popup window width
+                popX:       200,                  // popup window screen X position
+                popY:       200,                  // popup window screen Y position
+                popTitle:   'Graph Print Window', // popup window title element
+                popClose:   true,                 // popup window close after printing
+                extraCss:   '',                   // Comma separated list of extra css to include
+                extraHead:  '',                   // Comma separated list of extra elements to be appended to head tag
+                strict:     false                 // strict or looseTransitional html 4.01 document standard or undefined to not include at all only for popup option
             });
+       });
+
+        // Display selected graph dialog box
+        $('.dialog-button').click( function() {
+            $(".graph-dialog").dialog("close");
+            var graph = $(this).attr('data-type');
+            $('#' + graph).dialog("open");
+            return false;
+        });
 
-            // Flash certain elements for a short time after display
-            $(".glm-flash-updated").fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500);
+        $('#showArchived').click( function() {
+            checked = 'false';
+            if ($(this).attr('checked') == 'checked') {
+                checked = 'true';
+            }
+            window.location.replace("{$thisUrl}?page={$thisPage}&glm_action=index&member={$memberID}&showArchived=" + checked);
+        });
 
+        $('.message').on('click', function() {
+            var notice = $(this).attr('data-notice');
+            alert(notice.replace(/-br-/g, "\n"));
         });
-    </script>
+
+        // Flash certain elements for a short time after display
+        $(".glm-flash-updated").fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500);
+
+    });
+</script>
 
 
 {include file='admin/footer.html'}