' : ''; $matewa_name_html = $name ? '
' . esc_html( $name ) . '
' : ''; $matewa_title_html = $title ? '
' . esc_html( $title ) . '
' : ''; return '
' . $matewa_avatar_html . '
' . $matewa_name_html . ' ' . $matewa_title_html . '
'; } } /* ---------------------------------------------------------------------- FEATURE ACCESS ENGINE (MODE SAFE) ---------------------------------------------------------------------- */ if ( ! function_exists( 'matewa_feature_allowed' ) ) { function matewa_feature_allowed( $feature ) { $matewa_mode = function_exists( 'matewa_get_mode' ) ? matewa_get_mode() : MATEWA_MODE_FREE; if ( defined( 'MATEWA_MODE_MASTER' ) && MATEWA_MODE_MASTER === $matewa_mode ) { return true; } $matewa_pro_like_modes = array(); if ( defined( 'MATEWA_MODE_PRO' ) ) { $matewa_pro_like_modes[] = MATEWA_MODE_PRO; } if ( defined( 'MATEWA_MODE_TRIAL' ) ) { $matewa_pro_like_modes[] = MATEWA_MODE_TRIAL; } if ( defined( 'MATEWA_MODE_SOFT_TRIAL' ) ) { $matewa_pro_like_modes[] = MATEWA_MODE_SOFT_TRIAL; } switch ( $feature ) { case 'chips': case 'profile': case 'job_title': case 'avatar': case 'branding': return in_array( $matewa_mode, $matewa_pro_like_modes, true ); case 'analytics_basic': return ( defined( 'MATEWA_MODE_FREE' ) && MATEWA_MODE_FREE !== $matewa_mode ); case 'analytics_advanced': $matewa_advanced_modes = array(); if ( defined( 'MATEWA_MODE_PRO' ) ) { $matewa_advanced_modes[] = MATEWA_MODE_PRO; } if ( defined( 'MATEWA_MODE_MASTER' ) ) { $matewa_advanced_modes[] = MATEWA_MODE_MASTER; } return in_array( $matewa_mode, $matewa_advanced_modes, true ); default: return false; } } } /* ---------------------------------------------------------------------- SOFT TRIAL ACTIVE CHECK ---------------------------------------------------------------------- */ if ( ! function_exists( 'matewa_soft_trial_active' ) ) { function matewa_soft_trial_active() { if ( ! function_exists( 'matewa_get_mode' ) ) { return false; } if ( ! defined( 'MATEWA_MODE_SOFT_TRIAL' ) ) { return false; } return ( MATEWA_MODE_SOFT_TRIAL === matewa_get_mode() ); } } /* ---------------------------------------------------------------------- SOFT TRIAL MESSAGE (HTML STRING) ---------------------------------------------------------------------- */ if ( ! function_exists( 'matewa_soft_trial_message' ) ) { function matewa_soft_trial_message() { if ( ! matewa_soft_trial_active() ) { return ''; } if ( ! defined( 'MATEWA_SOFT_TRIAL_DAYS' ) ) { define( 'MATEWA_SOFT_TRIAL_DAYS', 7 ); } $matewa_default_start = time(); if ( defined( 'MATEWA_SOFT_TRIAL_START' ) ) { $matewa_start = intval( matewa_opt( MATEWA_SOFT_TRIAL_START, $matewa_default_start ) ); } else { $matewa_start = $matewa_default_start; } $matewa_elapsed = (int) floor( ( time() - $matewa_start ) / DAY_IN_SECONDS ); $matewa_remaining = max( 0, MATEWA_SOFT_TRIAL_DAYS - $matewa_elapsed ); return '
' . sprintf( /* translators: %d: number of days remaining in the soft trial period. */ esc_html__( 'Your free pass has ended. You are now in a soft trial with %d days remaining.', '247chatmate' ), $matewa_remaining ) . '
'; } } /* ---------------------------------------------------------------------- PAGE BUILDER DETECTION (EDIT MODE ONLY) ---------------------------------------------------------------------- */ if ( ! function_exists( 'matewa_builder_active' ) ) { function matewa_builder_active() { $matewa_elementor_preview = filter_input( INPUT_GET, 'elementor-preview', FILTER_SANITIZE_FULL_SPECIAL_CHARS ); $matewa_action = filter_input( INPUT_GET, 'action', FILTER_SANITIZE_FULL_SPECIAL_CHARS ); $matewa_et_fb = filter_input( INPUT_GET, 'et_fb', FILTER_SANITIZE_FULL_SPECIAL_CHARS ); $matewa_bricks = filter_input( INPUT_GET, 'bricks', FILTER_SANITIZE_FULL_SPECIAL_CHARS ); $matewa_fl_builder = filter_input( INPUT_GET, 'fl_builder', FILTER_SANITIZE_FULL_SPECIAL_CHARS ); if ( ( defined( 'ELEMENTOR_VERSION' ) && ! empty( $matewa_elementor_preview ) ) || ( defined( 'ELEMENTOR_VERSION' ) && 'elementor' === $matewa_action ) ) { return true; } if ( ! empty( $matewa_et_fb ) ) { return true; } if ( ! empty( $matewa_bricks ) ) { return true; } if ( ! empty( $matewa_fl_builder ) ) { return true; } return false; } }