Setup new profile flags for has_no_map_data and has_no_profile.
authorSteve Sutton <steve@gaslightmedia.com>
Tue, 12 Jun 2018 19:59:12 +0000 (15:59 -0400)
committerSteve Sutton <steve@gaslightmedia.com>
Tue, 12 Jun 2018 19:59:12 +0000 (15:59 -0400)
has_no_profile will keep member detail page link from showing.
has_no_map_data will keep the Bad Lat Lon error messages from showing in
the dashboards.

classes/data/dataMemberInfo.php
models/admin/dashboardWidget/index.php
models/admin/members/index.php
views/admin/member/index.html
views/admin/member/memberInfo/editProfileAddress.html
views/admin/member/memberInfo/editProfileStatus.html
views/front/members/list.html

index ed58335..8a940c7 100644 (file)
@@ -222,6 +222,20 @@ class GlmDataMemberInfo extends GlmDataAbstract
                 'use' => 'a'
             ),
 
+            // Has no map data
+            'has_no_map_data' => array(
+                'field' => 'has_no_map_data',
+                'type'  => 'checkbox',
+                'use'   => 'a',
+            ),
+
+            // Has no profile page
+            'has_no_profile' => array(
+                'field' => 'has_no_profile',
+                'type'  => 'checkbox',
+                'use'   => 'a',
+            ),
+
             // Address Line 1
             'addr1' => array (
                 'field' => 'addr1',
@@ -818,7 +832,8 @@ class GlmDataMemberInfo extends GlmDataAbstract
                     T.url,
                     R.name AS region,
                     T.logo,
-                    T.short_descr
+                    T.short_descr,
+                    T.has_no_profile
                 FROM
                     ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "member_info T
                 LEFT OUTER JOIN ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "regions R ON (R.id = T.region)
index 73a355b..6d0e70f 100644 (file)
@@ -175,7 +175,7 @@ class GlmMembersAdmin_dashboardWidget_index extends GlmDataMembers
 
         // Get member records with bad or no lat/lon
         $hideArchived = " T.status != ".$this->config['status_numb']['Archived'];
-        $badLatLonList = $MemberInfo->getSimpleMemberInfoList($hideArchived.' AND (T.lat = 0 OR T.lon = 0)');
+        $badLatLonList = $MemberInfo->getSimpleMemberInfoList($hideArchived.' AND (T.lat = 0 OR T.lon = 0) AND !has_no_map_data');
         $haveBadLatLon = (is_array($badLatLonList) && count($badLatLonList) > 0);
 
         // If there's members with pending information, list them
index 959b233..16340f2 100644 (file)
@@ -151,7 +151,7 @@ class GlmMembersAdmin_members_index extends GlmDataMembers
 
         // Get member information records with bad or no lat/lon
         $hideArchived  = " T.status != ".$this->config['status_numb']['Archived'];
-        $badLatLonList = $MemberInfo->getSimpleMemberInfoList($hideArchived.' AND (T.lat = 0 OR T.lon = 0)');
+        $badLatLonList = $MemberInfo->getSimpleMemberInfoList($hideArchived.' AND (T.lat = 0 OR T.lon = 0) AND !T.has_no_map_data');
         $haveBadLatLon = (is_array($badLatLonList) && count($badLatLonList) > 0);
 
         // If there's members with pending information, list them
index 2aead12..ccb6baf 100644 (file)
                 <td>{$m.create_time.datetime}</td>
                 <td>{$m.modify_time.datetime}</td>
                 <td>
-                    {if $settings.memb_info_location} {if $m.bad_lat_lon}<span class="glm-error">Bad Map Location</span>{/if} {/if}
+                    {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}
index f0d9906..f36ab0f 100644 (file)
                         </div>
                         <div class="glm-row">
                             {if $memberInfo.fieldRequired.lat}<h4 class="emRequiredInputField">{else}<h4>{/if}Location:</h4>
+                            <input type="checkbox" name="has_no_map_data"{if $memberInfo.fieldData.has_no_map_data.value} checked{/if}> Has no map data
                             <div class="glm-small-12">
                                <p>
                                     Drag the pointer to the desired location for this {$terms.term_member}.
index 2466326..51fbcf1 100644 (file)
@@ -3,11 +3,17 @@
                 <h2>Profile Status:</h2>
                 <div class="glm-small-12">
                     <select name="status">
-        {foreach from=$memberInfo.fieldData.status.list item=v}
-                        <option value="{$v.value}"{if $v.default} selected{/if}>{$v.name}</option>
-        {/foreach}
+                        {foreach from=$memberInfo.fieldData.status.list item=v}
+                            <option value="{$v.value}"{if $v.default} selected{/if}>{$v.name}</option>
+                        {/foreach}
                     </select>
                     {if $memberInfo.fieldFail.status}<p>{$memberInfo.fieldFail.status}</p>{/if}
+                    <input type="checkbox" name="has_no_profile"{if $memberInfo.fieldData.has_no_profile.value} checked{/if}>
+                    Has no profile page
+                </div>
+            </div>
+            <div class="glm-row">
+                <div class="glm-small-12">
                 </div>
             </div>
             <div class="glm-row">
@@ -37,4 +43,4 @@
                     {$terms.term_member} profile.
                 </td>
             </div>-->
-        </div>
\ No newline at end of file
+        </div>
index 96caa7e..4770ba0 100644 (file)
                     </div>
                 {/if}
                 <div class="glm-map-member-name">
-                    {if $settings.list_map_show_detaillink}
+                    {if $settings.list_map_show_detaillink && !$m.has_no_profile.value}
                         <a href="{$siteBaseUrl}{$settings.canonical_member_page}/{$m.member_slug}/{if $settings.enable_multiple_profiles}{$m.id}/{/if}">{$m.member_name}</a>
                     {else}
                         {$m.member_name}
                         {if $m.region && $settings.list_map_show_region}<b>Region:</b> {$m.region}{/if}
                     </p>
     <!-- Not using Description for now - Use short descr for maps {literal}
-                    {if $m.descr && $settings.list_map_show_descr}{$m.descr|nl2br}<br>{/if} 
+                    {if $m.descr && $settings.list_map_show_descr}{$m.descr|nl2br}<br>{/if}
     {/literal} -->
                     {if $m.short_descr && $settings.list_map_show_short_descr}{$m.short_descr}<br>{/if}
     <!-- Not using categories for now  {literal}
                             </ul>
                         </div>
                     {/if}
-     {/literal} -->                    
+     {/literal} -->
     <!-- Not using credit cards for now  {literal}
                     {if $m.cc_type && $settings.list_map_show_creditcards}
                         <div class="glm-member-list-items">
                     {/if}
                     <div class="glm-member-list-info-wrapper">
                         <h4 class="glm-member-title">
-                            {if $settings.list_show_detail_link}
+                            {if $settings.list_show_detail_link && !$member.has_no_profile.value}
                                 <a href="{$siteBaseUrl}{$settings.canonical_member_page}/{$member.member_slug}/{if $settings.enable_multiple_profiles}{$member.id}/{/if}">
                                     {$member.member}
                                 </a>
  <!-- Member name, address, and basic information -->
                     {apply_filters('glm-member-db-front-members-list-memberInfoTop', '', $member.member_pointer)}
                     <h4 class="glm-member-title">
-                        {if $settings.list_show_detail_link}
+                        {if $settings.list_show_detail_link && !$member.has_no_profile.value}
                             <a href="{$siteBaseUrl}{$settings.canonical_member_page}/{$member.member_slug}/{if $settings.enable_multiple_profiles}{$member.id}/{/if}">{$member.member}</a>
                         {else}
                             {$member.member}