/** * Render (echo) the "Media Library Assistant" subpage in the Settings section * * @since 0.1 * * @return void Echoes HTML markup for the Settings subpage */ public static function mla_render_settings_page() { if (!current_user_can('manage_options')) { echo __('Media Library Assistant', 'media-library-assistant') . ' - ' . __('ERROR', 'media-library-assistant') . "</h2>\r\n"; wp_die(__('You do not have permission to manage plugin settings.', 'media-library-assistant')); } /* * Load template array and initialize page-level values. */ $development_version = MLA::MLA_DEVELOPMENT_VERSION; $development_version = !empty($development_version) ? ' (' . $development_version . ')' : ''; self::$page_template_array = MLAData::mla_load_template('admin-display-settings-page.tpl'); $current_tab_slug = isset($_REQUEST['mla_tab']) ? $_REQUEST['mla_tab'] : 'general'; $current_tab = self::mla_get_options_tablist($current_tab_slug); $page_values = array('Support Our Work' => __('Support Our Work', 'media-library-assistant'), 'Donate' => __('Donate', 'media-library-assistant'), 'version' => 'v' . MLA::CURRENT_MLA_VERSION, 'development' => $development_version, 'messages' => '', 'tablist' => self::_compose_settings_tabs($current_tab_slug), 'tab_content' => '', 'Media Library Assistant' => __('Media Library Assistant', 'media-library-assistant'), 'Settings' => __('Settings', 'media-library-assistant')); /* * Compose tab content */ if ($current_tab) { if (isset($current_tab['render'])) { $handler = $current_tab['render']; $page_content = call_user_func($handler); } else { $page_content = array('message' => __('ERROR', 'media-library-assistant') . ': ' . __('Cannot render content tab', 'media-library-assistant'), 'body' => ''); } } else { $page_content = array('message' => __('ERROR', 'media-library-assistant') . ': ' . __('Unknown content tab', 'media-library-assistant'), 'body' => ''); } if (!empty($page_content['message'])) { if (false !== strpos($page_content['message'], __('ERROR', 'media-library-assistant'))) { $messages_class = 'mla_errors'; } else { $messages_class = 'mla_messages'; } $page_values['messages'] = MLAData::mla_parse_template(self::$page_template_array['messages'], array('messages' => $page_content['message'], 'mla_messages_class' => $messages_class)); } $page_values['tab_content'] = $page_content['body']; echo MLAData::mla_parse_template(self::$page_template_array['page'], $page_values); }
/** * Render (echo) the "Media Library Assistant" subpage in the Settings section * * @since 0.1 * * @return void Echoes HTML markup for the Settings subpage */ public static function mla_render_settings_page() { if (!current_user_can('manage_options')) { echo "Media Library Assistant - Error</h2>\r\n"; wp_die(__('You do not have permission to manage plugin settings.')); } /* * Load template array and initialize page-level values. */ self::$page_template_array = MLAData::mla_load_template(MLA_PLUGIN_PATH . 'tpls/admin-display-settings-page.tpl'); $current_tab = isset($_REQUEST['mla_tab']) ? $_REQUEST['mla_tab'] : 'general'; $page_values = array('settingsURL' => admin_url('options-general.php'), 'version' => 'v' . MLA::CURRENT_MLA_VERSION, 'donateURL' => MLA_PLUGIN_URL . 'images/DonateButton.jpg', 'messages' => '', 'tablist' => self::_compose_settings_tabs($current_tab), 'tab_content' => ''); /* * Compose tab content */ if (array_key_exists($current_tab, self::$mla_tablist)) { if (isset(self::$mla_tablist[$current_tab]['render'])) { $handler = self::$mla_tablist[$current_tab]['render']; $page_content = self::$handler(); } else { $page_content = array('message' => 'ERROR: cannot render content tab', 'body' => ''); } } else { $page_content = array('message' => 'ERROR: unknown content tab', 'body' => ''); } if (!empty($page_content['message'])) { if (false !== strpos($page_content['message'], 'ERROR:')) { $messages_class = 'mla_errors'; } else { $messages_class = 'mla_messages'; } $page_values['messages'] = MLAData::mla_parse_template(self::$page_template_array['messages'], array('messages' => $page_content['message'], 'mla_messages_class' => $messages_class)); } $page_values['tab_content'] = $page_content['body']; echo MLAData::mla_parse_template(self::$page_template_array['page'], $page_values); }