canShowWidget( 'blcOverview' ) && apply_filters( 'aioseo_blc_show_overview', true ) && ( aioseoBrokenLinkChecker()->access->isAdmin() || aioseoBrokenLinkChecker()->access->hasCapability( 'aioseo_blc_broken_links_page' ) ) ) { wp_add_dashboard_widget( 'aioseo-blc-overview', __( 'Broken Link Checker Overview', 'broken-link-checker-seo' ), [ $this, 'outputBlcOverview', ] ); } } /** * Whether or not to show the widget. * * @since 1.2.6 * * @param string $widget The widget to check if can show. * @return boolean True if yes, false otherwise. */ protected function canShowWidget( $widget ) { // phpcs:disable VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable return true; } /** * Output the BLC Overview widget. * * @since 1.2.6 * * @return void */ public function outputBlcOverview() { $this->output( 'aioseo-blc-overview-app' ); } /** * Output the widget wrapper for the Vue App. * * @since 1.2.6 * * @param string $appId The App ID to print out. * @return void */ private function output( $appId ) { // Enqueue the scripts for the widget. $this->enqueue(); // Opening tag. echo '
'; // Loader element. require AIOSEO_BROKEN_LINK_CHECKER_DIR . '/app/Views/parts/loader.php'; // Closing tag. echo '
'; } /** * Enqueue the scripts and styles. * * @since 1.2.6 * * @return void */ private function enqueue() { aioseoBrokenLinkChecker()->core->assets->load( 'src/vue/standalone/dashboard-widgets/main.js', [], aioseoBrokenLinkChecker()->helpers->getVueData( 'dashboard' ) ); } }