File manager - Edit - /home/monara/public_html/intern_web/wp-content/plugins/buddypress/bp-messages/bp-messages-blocks.php
Back
<?php /** * BP Messages Blocks Functions. * * @package BuddyPress * @subpackage MessagesBlocks * @since 9.0.0 */ // Exit if accessed directly. defined( 'ABSPATH' ) || exit; /** * Callback function to render the BP Sitewide Notices Block. * * @since 9.0.0 * * @param array $attributes The block attributes. * @return string HTML output. */ function bp_messages_render_sitewide_notices_block( $attributes = array() ) { $block_args = bp_parse_args( $attributes, array( 'title' => '', ), 'widget_object_sitewide_messages' ); if ( ! is_user_logged_in() ) { return; } $feedback_tpl = '<div class="components-placeholder">' . "\n"; $feedback_tpl .= '<div class="components-placeholder__label">%1$s</div>' . "\n"; $feedback_tpl .= '<div class="components-placeholder__fieldset">%2$s</div>' . "\n"; $feedback_tpl .= '</div>'; // Don't display the block if there are no Notices to show. $notice = BP_Messages_Notice::get_active(); if ( empty( $notice->id ) ) { // Previewing the Block inside the editor. if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) { return sprintf( $feedback_tpl, esc_html__( 'Preview unavailable', 'buddypress' ), esc_html__( 'No active sitewide notices.', 'buddypress' ) ); } return; } // Only enqueue common/specific scripts and data once per page load. if ( ! wp_script_is( 'bp-sitewide-notices-script', 'enqueued' ) ) { $path = sprintf( '/%1$s/%2$s/sitewide-notices/', bp_rest_namespace(), bp_rest_version() ); wp_enqueue_script( 'bp-sitewide-notices-script' ); wp_localize_script( 'bp-sitewide-notices-script', 'bpSitewideNoticeBlockSettings', array( 'path' => ltrim( $path, '/' ), 'dismissPath' => ltrim( $path, '/' ) . 'dismiss', 'root' => esc_url_raw( get_rest_url() ), 'nonce' => wp_create_nonce( 'wp_rest' ), ) ); } $closed_notices = (array) bp_get_user_meta( bp_loggedin_user_id(), 'closed_notices', true ); if ( in_array( $notice->id, $closed_notices, true ) ) { // Previewing the Block inside the editor. if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) { return sprintf( $feedback_tpl, esc_html__( 'Preview unavailable', 'buddypress' ), esc_html__( 'You dismissed the sitewide notice.', 'buddypress' ) ); } return; } // There is an active, non-dismissed notice to show. $title = $block_args['title']; $classnames = 'widget_bp_core_sitewide_messages buddypress widget'; $wrapper_attributes = get_block_wrapper_attributes( array( 'class' => $classnames ) ); $widget_content = '<div class="bp-sitewide-notice-block">'; if ( $title ) { $widget_content .= sprintf( '<h2 class="widget-title">%s</h2>', esc_html( $title ) ); } $widget_content .= sprintf( '<div class="bp-sitewide-notice-message info bp-notice" rel="n-%1$d"> <strong>%2$s</strong> <a href="%3$s" class="bp-tooltip button dismiss-notice" data-bp-tooltip="%4$s" data-bp-sitewide-notice-id="%5$d"><span class="bp-screen-reader-text">%6$s</span> <span aria-hidden="true">✖</span></a> %7$s </div>', esc_attr( $notice->id ), bp_get_message_notice_subject( $notice ), esc_url( bp_get_message_notice_dismiss_link() ), esc_attr__( 'Dismiss this notice', 'buddypress' ), esc_attr( $notice->id ), esc_html__( 'Dismiss this notice', 'buddypress' ), bp_get_message_notice_text( $notice ) ); $widget_content .= '</div>'; // Enqueue BP Tooltips. wp_enqueue_style( 'bp-tooltips' ); if ( ! did_action( 'dynamic_sidebar_before' ) ) { return sprintf( '<div %1$s>%2$s</div>', $wrapper_attributes, $widget_content ); } return $widget_content; }
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.06 |
proxy
|
phpinfo
|
Settings