', '' ) ?>

ISO 3166-1 alpha-2' ) ?>

' . $label . '
' . $input . '
'; } function rrtngg_get_like_unlike_btn_style_options() { return array( 'thumbs_1' => __( 'Thumbs up/down 1', '5-stars-rating-funnel' ), 'thumbs_2' => __( 'Thumbs up/down 2', '5-stars-rating-funnel' ), 'face_1' => __( 'Face 1', '5-stars-rating-funnel' ), 'face_2' => __( 'Face 2', '5-stars-rating-funnel' ), 'face_3' => __( 'Face 3', '5-stars-rating-funnel' ), 'heart_1' => __( 'Heart 1', '5-stars-rating-funnel' ), 'heart_2' => __( 'Heart 2', '5-stars-rating-funnel' ), 'weather_1' => __( 'Weather', '5-stars-rating-funnel' ), 'check_1' => __( 'Check / Uncheck', '5-stars-rating-funnel' ), ); } function rrtngg_get_mail_steps_default_content( $step ) { $template = RRTNGG_ABS_PATH . 'templates/emails/default/' . $step . '.php'; if ( ! file_exists( $template ) ) { $step = 'invitation'; } $template = RRTNGG_ABS_PATH . 'templates/emails/default/' . $step . '.php'; if ( ! file_exists( $template ) ) { return ''; } ob_start(); include $template; return ob_get_clean(); } function get_language_name_from_abbreviation( $abbreviation ) { // Array mapping language abbreviations to their names $language_names = array( 'en_US' => 'English (United States)', 'es_ES' => 'Spanish (Spain)', 'fr_FR' => 'French (France)', 'de_DE' => 'German (Germany)', 'it_IT' => 'Italian (Italy)', 'pt_PT' => 'Portuguese (Portugal)', 'pt_BR' => 'Portuguese (Brazil)', 'nl_NL' => 'Dutch (Netherlands)', 'ru_RU' => 'Russian (Russia)', 'ja' => 'Japanese', 'zh_CN' => 'Chinese (Simplified)', 'zh_TW' => 'Chinese (Traditional)', // Add more language mappings as needed ); // Return the language name if it exists in the mapping array, otherwise return the abbreviation itself return isset( $language_names[ $abbreviation ] ) ? $language_names[ $abbreviation ] : $abbreviation; } function rrtngg_get_pages_default_content( $step ) { $template = RRTNGG_ABS_PATH . 'templates/funnel/default/' . $step . '.php'; if ( ! file_exists( $template ) ) { return ''; } ob_start(); include $template; return ob_get_clean(); } function rrtngg_get_like_unlike_btn_style_description() { $like_unlike_btn_styles = rrtngg_get_like_unlike_btn_style_options(); ob_start(); ?>
$data ) { ?>

>

', '' ); } if ( ! empty( $trial_link ) ) { if ( ! empty( $upgrade_link ) ) { $trial_link_btn .= __( 'or', '5-stars-rating-funnel' ) . ' '; } $trial_link_btn .= sprintf( __( '%1$sTry trial%2$s', '5-stars-rating-funnel' ), '', '' ); } ob_start(); ?>
', '' ); } if ( ! empty( $trial_link ) ) { if ( ! empty( $upgrade_link ) ) { $trial_link_btn .= __( 'or', '5-stars-rating-funnel' ) . ' '; } $trial_link_btn .= sprintf( __( '%1$sTry 7 days trial%2$s', '5-stars-rating-funnel' ), '', '' ); } ob_start(); ?>

$placeholder ) { if ( ! empty( $placeholder['hide'] ) ) { continue; } ?>

{} -


',', ); $atts = array_merge( $default_atts, $atts ); $row = 0; $fields = array(); $values = array(); if ( ( $handle = fopen( $path, 'r' ) ) !== false ) { while ( ( $data = fgetcsv( $handle, 10000, $atts['sep'] ) ) !== false ) { $num = count( $data ); // echo "

$num fields in line $row:

\n"; if ( 0 === $row ) { for ( $c = 0; $c < $num; $c++ ) { $string = $data[ $c ]; if ( 'efbbbf' === substr( bin2hex( $string ), 0, 6 ) ) { $string = substr( $string, 3 ); } $fields[] = preg_replace( '/[\x{200B}-\x{200D}]/u', '', strtolower( trim( $string ) ) ); } } else { for ( $f = 0; $f < $num; $f++ ) { $string = $data[ $f ]; if ( 'efbbbf' === substr( bin2hex( $string ), 0, 6 ) ) { $string = substr( $string, 3 ); } $values[ $row ][ $fields[ $f ] ] = $string; } } $row++; } fclose( $handle ); return array( 'fields' => $fields, 'values' => $values, ); } else { return false; } } function rrtngg_get_btn_colors( $hex_color ) { $hexCode = ltrim( $hex_color, '#' ); if ( strlen( $hexCode ) == 3 ) { $hexCode = $hexCode[0] . $hexCode[0] . $hexCode[1] . $hexCode[1] . $hexCode[2] . $hexCode[2]; } if ( strlen( $hexCode ) == 3 ) { $hexCode = $hexCode[0] . $hexCode[0] . $hexCode[1] . $hexCode[1] . $hexCode[2] . $hexCode[2]; } $hoverCode = array_map( 'hexdec', str_split( $hexCode, 2 ) ); $adjustPercent = -0.05; foreach ( $hoverCode as & $color ) { $adjustableLimit = $adjustPercent < 0 ? $color : 255 - $color; $adjustAmount = ceil( $adjustableLimit * $adjustPercent ); $color = str_pad( dechex( $color + $adjustAmount ), 2, '0', STR_PAD_LEFT ); } $hover_color = '#' . implode( $hoverCode ); $r = hexdec( substr( $hex_color, 1, 2 ) ); $g = hexdec( substr( $hex_color, 3, 2 ) ); $b = hexdec( substr( $hex_color, 5, 2 ) ); $yiq = ( ( $r * 299 ) + ( $g * 587 ) + ( $b * 114 ) ) / 1000; $text_color = ( $yiq >= 198 ) ? 'black' : 'white'; return array( 'hover_color' => $hover_color, 'text_color' => $text_color, ); } function rrtngg_show_below_button_text( $service_id, $funnel_settings ) { if ( ! empty( $funnel_settings[ 'services_' . $service_id . '_below_btn_text' ] ) ) { ?>