diff -r 346c88efed21 -r 5e2f62d02dcd wp/wp-content/plugins/portfolio/bws_menu/bws_functions.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wp/wp-content/plugins/portfolio/bws_menu/bws_functions.php Tue Jun 09 03:35:32 2015 +0200 @@ -0,0 +1,770 @@ + $value ) { + if ( array_key_exists( $key, $all_plugins ) ) { + if ( $bws_menu_version < $value && is_plugin_active( $base ) ) { + if ( ! isset( $plugin_with_newer_menu ) ) + $plugin_with_newer_menu = $key; + elseif ( $bstwbsftwppdtplgns_options['bws_menu']['version'][ $plugin_with_newer_menu ] < $bstwbsftwppdtplgns_options['bws_menu']['version'][ $key ] ) + $plugin_with_newer_menu = $key; + } + } else { + unset( $bstwbsftwppdtplgns_options['bws_menu']['version'][ $key ] ); + if ( is_multisite() ) + update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options ); + else + update_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options ); + } + } + if ( ! isset( $plugin_with_newer_menu ) ) + $plugin_with_newer_menu = $base; + $plugin_with_newer_menu = explode( '/', $plugin_with_newer_menu ); + $wp_content_dir = defined( 'WP_CONTENT_DIR' ) ? basename( WP_CONTENT_DIR ) : 'wp-content'; + + if ( file_exists( ABSPATH . $wp_content_dir . '/plugins/' . $plugin_with_newer_menu[0] . '/bws_menu/bws_menu.php' ) ) + require_once( ABSPATH . $wp_content_dir . '/plugins/' . $plugin_with_newer_menu[0] . '/bws_menu/bws_menu.php' ); + else + require_once( dirname( __FILE__ ) . '/bws_menu.php' ); + $bstwbsftwppdtplgns_added_menu = true; + } + add_menu_page( 'BWS Plugins', 'BWS Plugins', 'manage_options', 'bws_plugins', 'bws_add_menu_render', plugins_url( 'images/px.png', __FILE__ ), 1001 ); + } +} + + +/** +* Function check if plugin is compatible with current WP version +* @return void +*/ +if ( ! function_exists ( 'bws_wp_version_check' ) ) { + function bws_wp_version_check( $plugin_basename, $plugin_info, $require_wp ) { + global $wp_version; + if ( version_compare( $wp_version, $require_wp, "<" ) ) { + include_once( ABSPATH . 'wp-admin/includes/plugin.php' ); + if ( is_plugin_active( $plugin_basename ) ) { + deactivate_plugins( $plugin_basename ); + $admin_url = ( function_exists( 'get_admin_url' ) ) ? get_admin_url( null, 'plugins.php' ) : esc_url( '/wp-admin/plugins.php' ); + wp_die( + sprintf( + "%s %s WordPress %s %s

%s %s.", + $plugin_info['Name'], + __( 'requires', 'bestwebsoft' ), + $require_wp, + __( 'or higher, that is why it has been deactivated! Please upgrade WordPress and try again.', 'bestwebsoft' ), + __( 'Back to the WordPress', 'bestwebsoft' ), + $admin_url, + __( 'Plugins page', 'bestwebsoft' ) + ) + ); + } + } + } +} + +if ( ! function_exists( 'bws_plugin_banner' ) ) { + function bws_plugin_banner( $plugin_info, $this_banner_prefix, $link_slug, $link_key, $link_pn, $banner_url_or_slug ) { + global $wp_version, $bstwbsftwppdtplgns_cookie_add, $bstwbsftwppdtplgns_banner_array; + + if ( empty( $bstwbsftwppdtplgns_banner_array ) ) { + if ( ! function_exists( 'bws_get_banner_array' ) ) + require_once( dirname( __FILE__ ) . '/bws_menu.php' ); + bws_get_banner_array(); + } + + if ( false == strrpos( $banner_url_or_slug, '/' ) ) { + $banner_url_or_slug = '//ps.w.org/' . $banner_url_or_slug . '/assets/icon-128x128.png'; + } + + if ( ! function_exists( 'is_plugin_active' ) ) + require_once( ABSPATH . 'wp-admin/includes/plugin.php' ); + + $all_plugins = get_plugins(); + + $this_banner = $this_banner_prefix . '_hide_banner_on_plugin_page'; + foreach ( $bstwbsftwppdtplgns_banner_array as $key => $value ) { + if ( $this_banner == $value[0] ) { + if ( ! isset( $bstwbsftwppdtplgns_cookie_add ) ) { + echo ''; + $bstwbsftwppdtplgns_cookie_add = true; + } ?> + +
+ +
+ = $value[2] && is_plugin_active( $value[1] ) && ! isset( $_COOKIE[ $value[0] ] ) ) { + break; + } + } + } +} + +if ( ! function_exists( 'bws_plugin_reviews_block' ) ) { + function bws_plugin_reviews_block( $plugin_name, $plugin_slug ) { ?> +
+
+ : + +
+
+ : + http://support.bestwebsoft.com +
+
+ ( time() - (24 * 60 * 60) ) ) { + $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] = $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] + 1; + } else { + $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] = 1; + $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['time'] = time(); + } + + /* download Pro */ + if ( ! function_exists( 'get_plugins' ) ) + require_once( ABSPATH . 'wp-admin/includes/plugin.php' ); + + $all_plugins = get_plugins(); + + if ( ! array_key_exists( $bws_license_plugin, $all_plugins ) ) { + $current = get_site_transient( 'update_plugins' ); + if ( is_array( $all_plugins ) && !empty( $all_plugins ) && isset( $current ) && is_array( $current->response ) ) { + $to_send = array(); + $to_send["plugins"][ $bws_license_plugin ] = array(); + $to_send["plugins"][ $bws_license_plugin ]["bws_license_key"] = $bws_license_key; + $to_send["plugins"][ $bws_license_plugin ]["bws_illegal_client"] = true; + $options = array( + 'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3 ), + 'body' => array( 'plugins' => serialize( $to_send ) ), + 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' ) ); + $raw_response = wp_remote_post( 'http://bestwebsoft.com/wp-content/plugins/paid-products/plugins/update-check/1.0/', $options ); + + if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) { + $result['error'] = __( "Something went wrong. Please try again later. If the error appears again, please contact us", 'bestwebsoft' ) . ' BestWebSoft. ' . __( "We are sorry for inconvenience.", 'bestwebsoft' ); + } else { + $response = maybe_unserialize( wp_remote_retrieve_body( $raw_response ) ); + if ( is_array( $response ) && !empty( $response ) ) { + foreach ( $response as $key => $value ) { + if ( "wrong_license_key" == $value->package ) { + $result['error'] = __( "Wrong license key", 'bestwebsoft' ); + } elseif ( "wrong_domain" == $value->package ) { + $result['error'] = __( "This license key is bind to another site", 'bestwebsoft' ); + } elseif ( "you_are_banned" == $value->package ) { + $result['error'] = __( "Unfortunately, you have exceeded the number of available tries per day. Please, upload the plugin manually.", 'bestwebsoft' ); + } elseif ( "time_out" == $value->package ) { + $result['error'] = __( "Unfortunately, Your license has expired. To continue getting top-priority support and plugin updates you should extend it in your", 'bestwebsoft' ) . ' Client area'; + } elseif ( "duplicate_domen_for_trial" == $value->package ) { + $result['error'] = __( "Unfortunately, the PRO licence was already installed to this domain. The PRO Trial license can be installed only once.", 'bestwebsoft' ); + } + } + if ( empty( $result['error'] ) ) { + $bstwbsftwppdtplgns_options[ $bws_license_plugin ] = $bws_license_key; + + $url = 'http://bestwebsoft.com/wp-content/plugins/paid-products/plugins/downloads/?bws_first_download=' . $bws_license_plugin . '&bws_license_key=' . $bws_license_key . '&download_from=5'; + $uploadDir = wp_upload_dir(); + $zip_name = explode( '/', $bws_license_plugin ); + $received_content = file_get_contents( $url ); + if ( ! $received_content ) { + $result['error'] = __( "Failed to download the zip archive. Please, upload the plugin manually", 'bestwebsoft' ); + } else { + if ( is_writable( $uploadDir["path"] ) ) { + $file_put_contents = $uploadDir["path"] . "/" . $zip_name[0] . ".zip"; + if ( file_put_contents( $file_put_contents, $received_content ) ) { + @chmod( $file_put_contents, octdec( 755 ) ); + if ( class_exists( 'ZipArchive' ) ) { + $zip = new ZipArchive(); + if ( $zip->open( $file_put_contents ) === TRUE ) { + $zip->extractTo( WP_PLUGIN_DIR ); + $zip->close(); + } else { + $result['error'] = __( "Failed to open the zip archive. Please, upload the plugin manually", 'bestwebsoft' ); + } + } elseif ( class_exists( 'Phar' ) ) { + $phar = new PharData( $file_put_contents ); + $phar->extractTo( WP_PLUGIN_DIR ); + } else { + $result['error'] = __( "Your server does not support either ZipArchive or Phar. Please, upload the plugin manually", 'bestwebsoft' ); + } + @unlink( $file_put_contents ); + } else { + $result['error'] = __( "Failed to download the zip archive. Please, upload the plugin manually", 'bestwebsoft' ); + } + } else { + $result['error'] = __( "UploadDir is not writable. Please, upload the plugin manually", 'bestwebsoft' ); + } + } + + /* activate Pro */ + if ( file_exists( WP_PLUGIN_DIR . '/' . $zip_name[0] ) ) { + if ( is_multisite() && is_plugin_active_for_network( plugin_basename( __FILE__ ) ) ) { + /* if multisite and free plugin is network activated */ + $active_plugins = get_site_option( 'active_sitewide_plugins' ); + $active_plugins[ $bws_license_plugin ] = time(); + update_site_option( 'active_sitewide_plugins', $active_plugins ); + } else { + /* activate on a single blog */ + $active_plugins = get_option( 'active_plugins' ); + array_push( $active_plugins, $bws_license_plugin ); + update_option( 'active_plugins', $active_plugins ); + } + $result['pro_plugin_is_activated'] = true; + } elseif ( empty( $result['error'] ) ) { + $result['error'] = __( "Failed to download the zip archive. Please, upload the plugin manually", 'bestwebsoft' ); + } + } + } else { + $result['error'] = __( "Something went wrong. Try again later or upload the plugin manually. We are sorry for inconvenience.", 'bestwebsoft' ); + } + } + } + } else { + $bstwbsftwppdtplgns_options[ $bws_license_plugin ] = $bws_license_key; + /* activate Pro */ + if ( ! is_plugin_active( $bws_license_plugin ) ) { + if ( is_multisite() && is_plugin_active_for_network( plugin_basename( __FILE__ ) ) ) { + /* if multisite and free plugin is network activated */ + $network_wide = true; + } else { + /* activate on a single blog */ + $network_wide = false; + } + activate_plugin( $bws_license_plugin, NULL, $network_wide ); + $result['pro_plugin_is_activated'] = true; + } + } + if ( is_multisite() ) + update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options ); + else + update_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options ); + } + } else { + $result['error'] = __( "Please, enter Your license key", 'bestwebsoft' ); + } + } + return $result; + } +} + +if ( ! function_exists( 'bws_go_pro_tab' ) ) { + function bws_go_pro_tab( $plugin_info, $plugin_basename, $page, $pro_page, $bws_license_plugin, $link_slug, $link_key, $link_pn, $pro_plugin_is_activated = false, $trial_days_number = false ) { + global $wp_version, $bstwbsftwppdtplgns_options; + $bws_license_key = ( isset( $_POST['bws_license_key'] ) ) ? stripslashes( esc_html( trim( $_POST['bws_license_key'] ) ) ) : ""; + if ( $pro_plugin_is_activated ) { ?> + +

+

+ + () +

+ +
+

+ + &wp_v=" target="_blank" title=" Pro">PRO +
+ + + http://bestwebsoft.com/wp-login.php + + +

+ ' . sprintf( __( 'Start Your Free %s-Day Trial Now', 'bestwebsoft' ), $trial_days_number ) . ''; + if ( isset( $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] ) && + '5' < $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] && + $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['time'] > ( time() - ( 24 * 60 * 60 ) ) ) { ?> +

+ + + +

+

+ +

+ + + + + +

+ +
+ +
+

+ PRO' ) . ' '; + _e( 'After that you can activate it by entering your license key.', 'bestwebsoft' ); ?>
+ + + http://bestwebsoft.com/wp-login.php + + +

+ ( time() - ( 24 * 60 * 60 ) ) ) { ?> +

+ + +

+

+ +

+ + + + + +

+ +
+ + +

+

+ + () +

+ response ) ) { + $to_send = array(); + $to_send["plugins"][ $plugin_basename ] = $plugins_all[ $plugin_basename ]; + $to_send["plugins"][ $plugin_basename ]["bws_license_key"] = $license_key; + $to_send["plugins"][ $plugin_basename ]["bws_illegal_client"] = true; + $options = array( + 'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3), + 'body' => array( 'plugins' => serialize( $to_send ) ), + 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' ) + ); + $raw_response = wp_remote_post( 'http://bestwebsoft.com/wp-content/plugins/paid-products/plugins/update-check/1.0/', $options ); + if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) { + $result['error'] = __( 'Something went wrong. Please try again later. If the error appears again, please contact us', 'bestwebsoft' ) . ' BestWebSoft. ' . __( 'We are sorry for inconvenience.', 'bestwebsoft' ); + } else { + $response = maybe_unserialize( wp_remote_retrieve_body( $raw_response ) ); + if ( is_array( $response ) && !empty( $response ) ) { + foreach ( $response as $key => $value ) { + if ( "wrong_license_key" == $value->package ) { + $result['error'] = __( 'Wrong license key.', 'bestwebsoft' ); + } else if ( "wrong_domain" == $value->package ) { + $result['error'] = __( 'This license key is bind to another site.', 'bestwebsoft' ); + } else if ( "time_out" == $value->package ) { + $result['message'] = __( 'This license key is valid, but Your license has expired. If you want to update our plugin in future, you should extend the license.', 'bestwebsoft' ); + } elseif ( "you_are_banned" == $value->package ) { + $result['error'] = __( "Unfortunately, you have exceeded the number of available tries.", 'bestwebsoft' ); + } elseif ( "duplicate_domen_for_trial" == $value->package ) { + $result['error'] = __( "Unfortunately, the PRO Trial licence was already installed to this domain. The PRO Trial license can be installed only once.", 'bestwebsoft' ); + } + if ( empty( $result['message'] ) && empty( $result['error'] ) ) { + if ( isset( $value->trial ) ) + $result['message'] = __( 'The PRO Trial license key is valid.', 'bestwebsoft' ); + else + $result['message'] = __( 'The license key is valid.', 'bestwebsoft' ); + + if ( isset( $value->time_out ) && $value->time_out != '' ) + $result['message'] .= ' ' . __( 'Your license will expire on', 'bestwebsoft' ) . ' ' . $value->time_out . '.'; + + if ( isset( $value->trial ) && $trial_plugin != false ) + $result['message'] .= ' ' . sprintf( __( 'In order to continue using the plugin it is necessary to buy a %s license.', 'bestwebsoft' ), 'PRO' ); + + if ( isset( $value->trial ) ) { + $bstwbsftwppdtplgns_options['trial'][ $plugin_basename ] = 1; + } else { + unset( $bstwbsftwppdtplgns_options['trial'][ $plugin_basename ] ); + } + } + if ( empty( $result['error'] ) ) { + if ( $bstwbsftwppdtplgns_options[ $plugin_basename ] != $license_key ) { + $bstwbsftwppdtplgns_options[ $plugin_basename ] = $license_key; + $bstwbsftwppdtplgns_options['time_out'][ $plugin_basename ] = $value->time_out; + if ( is_multisite() ) + update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options ); + else + update_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options ); + $file = @fopen( dirname( dirname( __FILE__ ) ) . "/license_key.txt" , "w+" ); + if ( $file ) { + @fwrite( $file, $license_key ); + @fclose( $file ); + } + } + } + } + } else { + $result['error'] = __( 'Something went wrong. Please try again later. If the error appears again, please contact us', 'bestwebsoft' ) . ' BestWebSoft. ' . __( 'We are sorry for inconvenience.', 'bestwebsoft' ); + } + } + } + } else { + $result['error'] = __( 'Please, enter your license key', 'bestwebsoft' ); + } + } + return $result; + } +} + +if ( ! function_exists ( 'bws_check_pro_license_form' ) ) { + function bws_check_pro_license_form( $plugin_basename, $page ) { + global $bstwbsftwppdtplgns_options; + $license_key = ( isset( $bstwbsftwppdtplgns_options[ $plugin_basename ] ) ) ? $bstwbsftwppdtplgns_options[ $plugin_basename ] : ''; ?> +
+
+

http://bestwebsoft.com/wp-login.php ' . __( '(your username is the email you specify when purchasing the product). If necessary, please submit "Lost your password?" request.', 'bestwebsoft' ); ?>

+

+ + + + +

+
+ + +
' . __( 'WARNING: Illegal use notification', 'bestwebsoft' ) . '. ' . __( 'You can use one license of the Pro plugin for one domain only. Please check and edit your license or domain if necessary using you personal Client Area. We strongly recommend you to solve the problem within 24 hours, otherwise the Pro plugin will be deactivated.', 'bestwebsoft' ) . ' ' . __( 'Learn More', 'bestwebsoft' ) . '
+ + '; + } elseif ( isset( $bstwbsftwppdtplgns_options['time_out'][ $plugin_key ] ) && strtotime( $bstwbsftwppdtplgns_options['time_out'][ $plugin_key ] ) < strtotime( date("m/d/Y") ) ) { + echo ' + +
'; + if ( isset( $bstwbsftwppdtplgns_options['trial'][ $plugin_key ] ) && $link_slug != false ) { + echo __( 'Notice: Your PRO Trial license has expired. To continue using the plugin you should buy a PRO license', 'bestwebsoft' ) . ' - http://bestwebsoft.com/products/' . $link_slug . '/'; + } else { + echo __( 'Your license has expired. To continue getting top-priority support and plugin updates you should extend it.', 'bestwebsoft' ) . ' ' . __( "Learn more", 'bestwebsoft' ) . ''; + } + echo '
+ + '; + } elseif ( isset( $bstwbsftwppdtplgns_options['trial'][ $plugin_key ] ) ) { + echo ' + +
'; + if ( $free_plugin_name != false ) { + echo sprintf( __( 'Notice: You are using the PRO Trial license of %s plugin.', 'bestwebsoft' ), $free_plugin_name ); + } else { + _e( 'Notice: You are using the PRO Trial license of plugin.', 'bestwebsoft' ); + } + if ( isset( $bstwbsftwppdtplgns_options['time_out'][ $plugin_key ] ) ) + echo ' ' . __( "The PRO Trial license will expire on", 'bestwebsoft' ) . ' ' . $bstwbsftwppdtplgns_options['time_out'][ $plugin_key ] . '.'; + echo '
+ + '; + } + } +} + +if ( ! function_exists ( 'bws_plugin_banner_timeout' ) ) { + function bws_plugin_banner_timeout( $plugin_key, $plugin_prefix, $plugin_name, $banner_url = false ) { + global $bstwbsftwppdtplgns_options, $bstwbsftwppdtplgns_cookie_add; + if ( isset( $bstwbsftwppdtplgns_options['time_out'][ $plugin_key ] ) && ( strtotime( $bstwbsftwppdtplgns_options['time_out'][ $plugin_key ] ) < strtotime( date("m/d/Y") . '+1 month' ) ) && ( strtotime( $bstwbsftwppdtplgns_options['time_out'][ $plugin_key ] ) > strtotime( date("m/d/Y") ) ) ) { + if ( ! isset( $bstwbsftwppdtplgns_cookie_add ) ) { + echo ''; + $bstwbsftwppdtplgns_cookie_add = true; + } ?> + +
+ +
+ = '3.8' ) + wp_enqueue_script( 'theme-install' ); + elseif ( $wp_version >= '3.4' ) + wp_enqueue_script( 'theme' ); + } + } +} + +if ( ! function_exists ( 'bws_admin_head' ) ) { + function bws_admin_head() { + if ( isset( $_GET['page'] ) && $_GET['page'] == "bws_plugins" ) { ?> + + $wp_version ) + return; + /* Default arguments */ + $tooltip_args_default = array( + 'tooltip_id' => false, + 'css_selector' => false, + 'actions' => array( + 'click' => true, + 'onload' => false, + ), + 'buttons' => array( + 'close' => array( + 'type' => 'dismiss', + 'text' => __( 'Close', 'bestwebsoft' ), + ), + ), + 'position' => array( + 'edge' => 'top', + 'align' => 'center', + 'pos-left' => 0, + 'pos-top' => 0, + 'zindex' => 10000 + ), + ); + $tooltip_args = array_merge( $tooltip_args_default, $tooltip_args ); + /* Check that our merged array has default values */ + foreach ( $tooltip_args_default as $arg_key => $arg_value ) { + if ( is_array( $arg_value ) ) { + foreach ( $arg_value as $key => $value) { + if ( ! isset( $tooltip_args[ $arg_key ][ $key ] ) ) { + $tooltip_args[ $arg_key ][ $key ] = $tooltip_args_default[ $arg_key ][ $key ]; + } + } + } + } + /* Check if tooltip is dismissed */ + if ( true === $tooltip_args['actions']['onload'] ) { + if ( in_array( $tooltip_args['tooltip_id'], array_filter( explode( ',', (string) get_user_meta( get_current_user_id(), 'dismissed_wp_pointers', true ) ) ) ) ) { + $tooltip_args['actions']['onload'] = false; + } + } + /* Check entered data */ + if ( false === $tooltip_args['tooltip_id'] || false === $tooltip_args['css_selector'] || ( false === $tooltip_args['actions']['click'] && false === $tooltip_args['actions']['onload'] ) ) { + /* if not enough data to output a tooltip or both actions (click, onload) are false */ + return; + } else { + /* check position */ + if ( ! in_array( $tooltip_args['position']['edge'], array( 'left', 'right', 'top', 'bottom' ) ) ) { + $tooltip_args['position']['edge'] = 'top'; + } + if ( ! in_array( $tooltip_args['position']['align'], array( 'top', 'bottom', 'left', 'right', 'center', ) ) ) { + $tooltip_args['position']['align'] = 'center'; + } + } + /* fix position */ + switch ( $tooltip_args['position']['edge'] ) { + case 'left': + case 'right': + switch ( $tooltip_args['position']['align'] ) { + case 'top': + case 'bottom': + $tooltip_args['position']['align'] = 'center'; + break; + } + break; + case 'top': + case 'bottom': + if ( $tooltip_args['position']['align'] == 'left' ) { + $tooltip_args['position']['pos-left'] -= 65; + } + break; + } + $this->tooltip_args = $tooltip_args; + /* add styles and scripts */ + wp_enqueue_style( 'wp-pointer' ); + wp_enqueue_script( 'wp-pointer' ); + /* add script that displays our tooltip */ + add_action( 'admin_print_footer_scripts', array( $this, 'add_scripts' ) ); + } + + /** + * Display tooltip + */ + public function add_scripts() { + global $bstwbsftwppdtplgns_tooltip_script_add; + if ( ! isset( $bstwbsftwppdtplgns_tooltip_script_add ) ) { + echo ''; + $bstwbsftwppdtplgns_tooltip_script_add = true; + } + $tooltip_args = $this->tooltip_args; ?> + +