PATH:
home
/
sarkas88.com
/
public_html
/
wp-content
/
plugins
/
wordpress-seo
/
admin
<?php /** * WPSEO plugin file. * * @package WPSEO\Admin */ /** * Class WPSEO_presenter_paper. */ class WPSEO_Paper_Presenter { /** * Title of the paper. * * @var string */ private $title; /** * The view variables. * * @var array */ private $settings; /** * The path to the view file. * * @var string */ private $view_file; /** * WPSEO_presenter_paper constructor. * * @param string $title The title of the paper. * @param string|null $view_file Optional. The path to the view file. Use the content setting * if do not wish to use a view file. * @param array $settings Optional. Settings for the paper. */ public function __construct( $title, $view_file = null, array $settings = [] ) { $defaults = [ 'paper_id' => null, 'paper_id_prefix' => 'wpseo-', 'collapsible' => false, 'collapsible_header_class' => '', 'expanded' => false, 'help_text' => '', 'title_after' => '', 'class' => '', 'content' => '', 'view_data' => [], ]; $this->settings = wp_parse_args( $settings, $defaults ); $this->title = $title; $this->view_file = $view_file; } /** * Renders the collapsible paper and returns it as a string. * * @return string The rendered paper. */ public function get_output() { $view_variables = $this->get_view_variables(); extract( $view_variables, EXTR_SKIP ); $content = $this->settings['content']; if ( $this->view_file !== null ) { ob_start(); require $this->view_file; $content = ob_get_clean(); } ob_start(); require WPSEO_PATH . 'admin/views/paper-collapsible.php'; $rendered_output = ob_get_clean(); return $rendered_output; } /** * Retrieves the view variables. * * @return array The view variables. */ private function get_view_variables() { if ( $this->settings['help_text'] instanceof WPSEO_Admin_Help_Panel === false ) { $this->settings['help_text'] = new WPSEO_Admin_Help_Panel( '', '', '' ); } $view_variables = [ 'class' => $this->settings['class'], 'collapsible' => $this->settings['collapsible'], 'collapsible_config' => $this->collapsible_config(), 'collapsible_header_class' => $this->settings['collapsible_header_class'], 'title_after' => $this->settings['title_after'], 'help_text' => $this->settings['help_text'], 'view_file' => $this->view_file, 'title' => $this->title, 'paper_id' => $this->settings['paper_id'], 'paper_id_prefix' => $this->settings['paper_id_prefix'], 'yform' => Yoast_Form::get_instance(), ]; return array_merge( $this->settings['view_data'], $view_variables ); } /** * Retrieves the collapsible config based on the settings. * * @return array The config. */ protected function collapsible_config() { if ( empty( $this->settings['collapsible'] ) ) { return [ 'toggle_icon' => '', 'class' => '', 'expanded' => '', ]; } if ( ! empty( $this->settings['expanded'] ) ) { return [ 'toggle_icon' => 'dashicons-arrow-up-alt2', 'class' => 'toggleable-container', 'expanded' => 'true', ]; } return [ 'toggle_icon' => 'dashicons-arrow-down-alt2', 'class' => 'toggleable-container toggleable-container-hidden', 'expanded' => 'false', ]; } }
[+]
watchers
[+]
taxonomy
[+]
pages
[-] class-premium-popup.php
[open]
[-] class-my-yoast-proxy.php
[open]
[+]
tracking
[-] class-admin-help-panel.php
[open]
[-] interface-collection.php
[open]
[-] class-wincher-dashboard-widget.php
[open]
[-] class-database-proxy.php
[open]
[-] class-admin-asset-location.php
[open]
[-] class-admin-user-profile.php
[open]
[-] class-yoast-notification-center.php
[open]
[-] class-yoast-columns.php
[open]
[+]
metabox
[-] class-meta-columns.php
[open]
[-] class-plugin-availability.php
[open]
[-] class-bulk-description-editor-list-table.php
[open]
[-] class-paper-presenter.php
[open]
[-] class-yoast-input-validation.php
[open]
[+]
import
[-] class-admin-editor-specific-replace-vars.php
[open]
[+]
exceptions
[-] class-yoast-plugin-conflict.php
[open]
[+]
notifiers
[+]
views
[+]
filters
[-] class-yoast-dashboard-widget.php
[open]
[-] class-export.php
[open]
[-] class-premium-upsell-admin-block.php
[open]
[-] class-expose-shortlinks.php
[open]
[-] class-bulk-editor-list-table.php
[open]
[-] class-bulk-title-editor-list-table.php
[open]
[-] class-yoast-network-admin.php
[open]
[+]
endpoints
[-] class-suggested-plugins.php
[open]
[+]
google_search_console
[-] class-option-tab.php
[open]
[-] class-gutenberg-compatibility.php
[open]
[-] index.php
[open]
[+]
formatter
[-] class-asset.php
[open]
[-] class-collector.php
[open]
[-] class-option-tabs-formatter.php
[open]
[-] class-yoast-form.php
[open]
[-] class-schema-person-upgrade-notification.php
[open]
[-] class-primary-term-admin.php
[open]
[-] class-admin-asset-analysis-worker-location.php
[open]
[-] class-admin-init.php
[open]
[+]
ajax
[-] admin-settings-changed-listener.php
[open]
[-] ajax.php
[open]
[-] class-admin-gutenberg-compatibility-notification.php
[open]
[-] class-admin-utils.php
[open]
[-] class-admin.php
[open]
[-] class-yoast-notification.php
[open]
[-] class-config.php
[open]
[+]
statistics
[-] class-admin-recommended-replace-vars.php
[open]
[-] class-product-upsell-notice.php
[open]
[+]
listeners
[-] class-admin-asset-manager.php
[open]
[+]
capabilities
[-] class-admin-asset-dev-server-location.php
[open]
[-] class-remote-request.php
[open]
[-] interface-installable.php
[open]
[+]
services
[+]
..
[-] class-plugin-conflict.php
[open]
[-] class-yoast-network-settings-api.php
[open]
[-] class-option-tabs.php
[open]
[-] class-yoast-notifications.php
[open]
[-] class-admin-asset-seo-location.php
[open]
[+]
menu
[+]
roles