From 45b8747a0edf9dcf672bffe9afee00a28392670e Mon Sep 17 00:00:00 2001 From: Steve Sutton Date: Thu, 7 Mar 2019 11:56:09 -0500 Subject: [PATCH] Adding link for clear shortcode cache. Updating the mobel for coding standards. --- models/admin/management/index.php | 205 +++++++++++++++--------------- views/admin/management/index.html | 62 +++++---- 2 files changed, 136 insertions(+), 131 deletions(-) diff --git a/models/admin/management/index.php b/models/admin/management/index.php index a7df4cfa..23449aca 100755 --- a/models/admin/management/index.php +++ b/models/admin/management/index.php @@ -67,16 +67,19 @@ class GlmMembersAdmin_management_index extends GlmDataSettingsGeneral */ public function updateRequiredPages(){ $this->requiredPages = array(); - foreach ( $this->config[ 'addOns' ] as $a ) { - if ( isset ( $a[ 'requiredPages' ] ) ) { - foreach ( $a[ 'requiredPages' ] as $page_name => $page_data ) { - $pageID = get_option(GLM_MEMBERS_PLUGIN_OPTION_PREFIX.$page_data['underscored_title']); - $this->prefixSlugs[] = GLM_MEMBERS_PLUGIN_OPTION_PREFIX.$page_data['underscored_title']; - $this->requiredPages[ $a[ 'underscored_name' ] ][ $page_name ]['id'] = $pageID; - $page = get_post( $pageID ); - $this->requiredPages[ $a[ 'underscored_name' ] ][ $page_name ][ 'slug' ] = $page->post_name; - $this->requiredPages[ $a[ 'underscored_name' ] ][ $page_name ][ 'title' ] = $page->post_title; - $this->requiredPages[ $a[ 'underscored_name' ] ][ $page_name][ 'static_name' ] = strtolower(str_replace(" ","-",$page_name)); + foreach ( $this->config['addOns'] as $a ) { + if ( isset ( $a['requiredPages'] ) ) { + foreach ( $a['requiredPages'] as $page_name => $page_data ) { + // Get $pageID and $page + $pageID = get_option( GLM_MEMBERS_PLUGIN_OPTION_PREFIX . $page_data['underscored_title'] ); + $page = get_post( $pageID ); + + // Setup class variables + $this->prefixSlugs[] = GLM_MEMBERS_PLUGIN_OPTION_PREFIX . $page_data['underscored_title']; + $this->requiredPages[ $a['underscored_name'] ][ $page_name ]['id'] = $pageID; + $this->requiredPages[ $a['underscored_name'] ][ $page_name ]['slug'] = $page->post_name; + $this->requiredPages[ $a['underscored_name'] ][ $page_name ]['title'] = $page->post_title; + $this->requiredPages[ $a['underscored_name'] ][ $page_name ]['static_name'] = strtolower( str_replace( " ", "-", $page_name ) ); } } } @@ -118,26 +121,26 @@ class GlmMembersAdmin_management_index extends GlmDataSettingsGeneral */ public function modelAction ($actionData = false) { - $settings_updated = false; - $settings_update_error = false; + $settings_updated = false; + $settings_update_error = false; $required_pages_required_error = false; - $id_error = false; - $title_error = false; - $MapInterfaceSelected = array(); + $id_error = false; + $title_error = false; + $MapInterfaceSelected = array(); // General settings are always stored in a record with ID=1. $id = 1; // Determine if current user can edit configurations - if (!current_user_can('glm_members_settings')) { + if ( ! current_user_can( 'glm_members_settings' ) ) { return array( - 'status' => false, - 'menuItemRedirect' => 'error', - 'modelRedirect' => 'index', - 'view' => 'admin/error/index.html', - 'data' => array( - 'reason' => 'User does not have rights to make configuration changes.' - ) + 'status' => false, + 'menuItemRedirect' => 'error', + 'modelRedirect' => 'index', + 'view' => 'admin/error/index.html', + 'data' => array( + 'reason' => 'User does not have rights to make configuration changes.' + ) ); } @@ -150,102 +153,106 @@ class GlmMembersAdmin_management_index extends GlmDataSettingsGeneral $this->updateRequiredPages(); switch( $option ) { - // Update General Settings and redisplay the form - case 'submit': - foreach ( $this->config[ 'addOns' ] as $a ) { - if ( isset( $a[ 'requiredPages' ] ) ) { - foreach( $a[ 'requiredPages'] as $pageName => $pageData ) { - - $current_page_id_value = get_option( GLM_MEMBERS_PLUGIN_OPTION_PREFIX.$pageData[ 'underscored_title' ] ); - - // the static slug name used to create unique form field names - $page_title_field_name = 'glm_members_database_title_' . $this->requiredPages[ $a[ 'underscored_name'] ][ $pageName ][ 'static_name' ]; - $page_id_field_name = 'glm_members_database_id_' . $this->requiredPages[ $a[ 'underscored_name' ] ][ $pageName ][ 'static_name' ]; - - // the slug used to update the options table - $page_option_slug = GLM_MEMBERS_PLUGIN_OPTION_PREFIX.$pageData['underscored_title']; - - $current_page_title_value = $this->requiredPages[ $a[ 'underscored_name' ] ][ $pageName][ 'title' ]; - - if ( isset( $_POST[ $page_title_field_name ] ) && ! empty( $_POST[ $page_title_field_name ] ) ){ - $new_page_title_value = filter_var( $_POST[ $page_title_field_name ], FILTER_SANITIZE_STRING); - } else { - $title_error = true; - } - - // check to make sure the post value isn't empty and is numeric - if ( isset( $_POST[ $page_id_field_name ] ) && ! empty( $_POST[ $page_id_field_name ] ) && is_numeric( $_POST[ $page_id_field_name ] ) ){ - $new_page_id_value = filter_var( $_POST[ $page_id_field_name ], FILTER_SANITIZE_STRING ); - } else { - $id_error = true; - } - - // if the current page title matches the posted value, no need to update - if ( $current_page_title_value !== $new_page_title_value ){ - $args = array ( - 'ID' => $current_page_id_value, - 'post_title' => $new_page_title_value, - ); - wp_update_post( $args ); - } - - // ensure the new page id exists and isn't already the same as the current page ID value - if ( $current_page_id_value !== $new_page_id_value && get_post_status( $new_page_id_value ) ){ - update_option( $page_option_slug, $new_page_id_value ); - } + // Update General Settings and redisplay the form + case 'submit': + foreach ( $this->config['addOns'] as $a ) { + if ( isset( $a['requiredPages'] ) ) { + foreach( $a['requiredPages'] as $pageName => $pageData ) { + + $current_page_id_value = get_option( GLM_MEMBERS_PLUGIN_OPTION_PREFIX . $pageData['underscored_title'] ); + + // the static slug name used to create unique form field names + $page_title_field_name = 'glm_members_database_title_' . $this->requiredPages[ $a['underscored_name'] ][ $pageName ]['static_name']; + $page_id_field_name = 'glm_members_database_id_' . $this->requiredPages[ $a['underscored_name'] ][ $pageName ]['static_name']; + + // the slug used to update the options table + $page_option_slug = GLM_MEMBERS_PLUGIN_OPTION_PREFIX . $pageData['underscored_title']; + $current_page_title_value = $this->requiredPages[ $a['underscored_name'] ][ $pageName]['title']; + + if ( isset( $_POST[ $page_title_field_name ] ) && ! empty( $_POST[ $page_title_field_name ] ) ) { + $new_page_title_value = filter_var( $_POST[ $page_title_field_name ], FILTER_SANITIZE_STRING ); + } else { + $title_error = true; + } + + // check to make sure the post value isn't empty and is numeric + if ( isset( $_POST[ $page_id_field_name ] ) && ! empty( $_POST[ $page_id_field_name ] ) && is_numeric( $_POST[ $page_id_field_name ] ) ) { + $new_page_id_value = filter_var( $_POST[ $page_id_field_name ], FILTER_SANITIZE_STRING ); + } else { + $id_error = true; + } + + // if the current page title matches the posted value, no need to update + if ( $current_page_title_value !== $new_page_title_value ) { + $args = array ( + 'ID' => $current_page_id_value, + 'post_title' => $new_page_title_value, + ); + wp_update_post( $args ); + } + + // ensure the new page id exists and isn't already the same as the current page ID value + if ( $current_page_id_value !== $new_page_id_value && get_post_status( $new_page_id_value ) ) { + update_option( $page_option_slug, $new_page_id_value ); } } } + } - $this->updateRequiredPages(); + $this->updateRequiredPages(); - // Update all general setttings - $generalSettings = $this->updateEntry( 1 ); - // echo '
$generalSettings: ' . print_r( $generalSettings, true ) . '
'; - if ( $generalSettings[ 'status' ] ) { - $settings_updated = true; - } else { - $settings_update_error = true; - } + // Update all general setttings + $generalSettings = $this->updateEntry( 1 ); + if ( $generalSettings['status'] ) { + $settings_updated = true; + } else { + $settings_update_error = true; + } - break; + break; - // Default is to get the current settings and display the form - default: + case 'clearCache': - // Try to get the first (should be only) entry for general settings. - $generalSettings = $this->editEntry( $id ); - // echo '
$generalSettings: ' . print_r( $generalSettings, true ) . '
'; + // Cleaor the shortcode cache. + glmClearShortcodeCache(); - break; + // Try to get the first (should be only) entry for general settings. + $generalSettings = $this->editEntry( $id ); + break; + + // Default is to get the current settings and display the form + default: + + // Try to get the first (should be only) entry for general settings. + $generalSettings = $this->editEntry( $id ); + + break; } - if( $settings_update_error ){ + if ( $settings_update_error ) { $settings_updated = false; } // Compile template data $templateData = array( - 'reason' => '', - 'genSettings' => $generalSettings, - 'timezones' => DateTimeZone::listIdentifiers(), - 'settingsUpdated' => $settings_updated, - 'settingsUpdateError' => $settings_update_error, - 'requiredPages' => $this->requiredPages, - 'id_error' => $id_error, - 'title_error' => $title_error, - 'requiredPagesUpdateError' => $required_pages_required_error, + 'reason' => '', + 'genSettings' => $generalSettings, + 'timezones' => DateTimeZone::listIdentifiers(), + 'settingsUpdated' => $settings_updated, + 'settingsUpdateError' => $settings_update_error, + 'requiredPages' => $this->requiredPages, + 'id_error' => $id_error, + 'title_error' => $title_error, + 'requiredPagesUpdateError' => $required_pages_required_error, ); // Return status, suggested view, and data to controller return array( - 'status' => true, - 'menuItemRedirect' => false, - 'modelRedirect' => false, - 'view' => 'admin/management/index.html', - 'data' => $templateData, + 'status' => true, + 'menuItemRedirect' => false, + 'modelRedirect' => false, + 'view' => 'admin/management/index.html', + 'data' => $templateData, ); } } - -?> diff --git a/views/admin/management/index.html b/views/admin/management/index.html index 5830d941..9ae0814a 100755 --- a/views/admin/management/index.html +++ b/views/admin/management/index.html @@ -27,36 +27,6 @@ - - - - - - - - - - - - - - - - - - - - -

Debug Settings

Admin Debug Information: - -
Admin Debug Verbose: - -
Front-End Debug Information: - -
Front-End Debug Verbose: - -
- @@ -96,9 +66,35 @@ {/foreach}
- + + + + + + + + + + + + + + + + + + + @@ -117,7 +113,9 @@ - + -- 2.17.1

Debug Settings

Admin Debug Information: + +
Admin Debug Verbose: + +
Front-End Debug Information: + +
Front-End Debug Verbose: + +

Members Related Settings

Enable Members:
Enable Caching + Clear Cache +
Enable Counties: