| @@ -670,9 +670,9 @@ | ||
| 670 | 670 | Visualizer_Plugin::NAME, |
| 671 | 671 | __( 'Chart Library', 'visualizer' ), |
| 672 | 672 | __( 'Chart Library', 'visualizer' ), |
| 673 | 673 | 'edit_posts', |
| 674 | - admin_url( 'admin.php?page=' . Visualizer_Plugin::NAME ) | |
| 674 | + 'admin.php?page=' . Visualizer_Plugin::NAME | |
| 675 | 675 | ); |
| 676 | 676 | add_submenu_page( |
| 677 | 677 | Visualizer_Plugin::NAME, |
| 678 | 678 | __( 'Add New Chart', 'visualizer' ), |
| @@ -677,9 +677,9 @@ | ||
| 677 | 677 | Visualizer_Plugin::NAME, |
| 678 | 678 | __( 'Add New Chart', 'visualizer' ), |
| 679 | 679 | __( 'Add New Chart', 'visualizer' ), |
| 680 | 680 | 'edit_posts', |
| 681 | - admin_url( 'admin.php?page=' . Visualizer_Plugin::NAME . '&vaction=addnew' ) | |
| 681 | + 'admin.php?page=' . Visualizer_Plugin::NAME . '&vaction=addnew' | |
| 682 | 682 | ); |
| 683 | 683 | add_submenu_page( |
| 684 | 684 | Visualizer_Plugin::NAME, |
| 685 | 685 | __( 'Support', 'visualizer' ), |
| @@ -688,22 +688,12 @@ | ||
| 688 | 688 | 'viz-support', |
| 689 | 689 | array( $this, 'renderSupportPage' ) |
| 690 | 690 | ); |
| 691 | 691 | |
| 692 | - if ( ! Visualizer_Module::is_pro() ) { | |
| 693 | - add_submenu_page( | |
| 694 | - Visualizer_Plugin::NAME, | |
| 695 | - __( 'Get Visualizer Pro', 'visualizer' ), | |
| 696 | - __( 'Get Visualizer Pro', 'visualizer' ), | |
| 697 | - 'edit_posts', | |
| 698 | - 'viz-get-pro', | |
| 699 | - '__return_null' | |
| 700 | - ); | |
| 701 | - add_action( 'admin_footer', array( $this, 'handleGetProSubMenu' ) ); | |
| 702 | - } | |
| 703 | 692 | remove_submenu_page( Visualizer_Plugin::NAME, Visualizer_Plugin::NAME ); |
| 704 | 693 | |
| 705 | 694 | add_action( "load-{$this->_libraryPage}", array( $this, 'addScreenOptions' ) ); |
| 695 | + add_action( 'admin_footer', array( $this, 'handleGetProSubMenu' ) ); | |
| 706 | 696 | } |
| 707 | 697 | |
| 708 | 698 | /** |
| 709 | 699 | * Handle get pro plugin submenu. |
| @@ -708,35 +698,35 @@ | ||
| 708 | 698 | /** |
| 709 | 699 | * Handle get pro plugin submenu. |
| 710 | 700 | */ |
| 711 | 701 | public function handleGetProSubMenu() { |
| 712 | - ?> | |
| 702 | + if ( ! Visualizer_Module::is_pro() ) { | |
| 703 | + ?> | |
| 713 | 704 | <style type="text/css"> |
| 714 | - #toplevel_page_visualizer ul.wp-submenu li.wp-first-item + li + li + li { | |
| 705 | + #toplevel_page_visualizer ul.wp-submenu li:last-child { | |
| 715 | 706 | background: #FF7E65; |
| 716 | 707 | font-size: 14px; |
| 717 | 708 | font-weight: 600; |
| 718 | 709 | color: #fff; |
| 719 | 710 | } |
| 720 | - #toplevel_page_visualizer ul.wp-submenu li.wp-first-item + li + li + li > a { | |
| 711 | + #toplevel_page_visualizer ul.wp-submenu li:last-child > a { | |
| 721 | 712 | color: #fff !important; |
| 722 | 713 | } |
| 723 | - #toplevel_page_visualizer ul.wp-submenu li.wp-first-item + li + li + li > a:hover { | |
| 714 | + #toplevel_page_visualizer ul.wp-submenu li:last-child > a:hover { | |
| 724 | 715 | box-shadow: inherit; |
| 725 | 716 | } |
| 726 | - #toplevel_page_visualizer ul.wp-submenu li.wp-first-item + li + li + li + li { | |
| 727 | - display: none; | |
| 717 | + </style> | |
| 718 | + <?php | |
| 719 | + if ( get_option( 'visualizer_fresh_install', false ) ) { | |
| 720 | + ?> | |
| 721 | + <style type="text/css"> | |
| 722 | + #toplevel_page_visualizer ul.wp-submenu li.wp-first-item + li + li + li { | |
| 723 | + display: none; | |
| 724 | + } | |
| 725 | + </style> | |
| 726 | + <?php | |
| 728 | 727 | } |
| 729 | - </style> | |
| 730 | - <script type="text/javascript"> | |
| 731 | - jQuery( document ).ready( function() { | |
| 732 | - jQuery( '#toplevel_page_visualizer' ).on( 'click', 'li:not(.wp-submenu-head, .wp-first-item):eq(2)', function( e ) { | |
| 733 | - e.preventDefault(); | |
| 734 | - window.open( '<?php echo tsdk_utmify( 'https://themeisle.com/plugins/visualizer-charts-and-graphs/upgrade/', 'toplevel' ); ?>', '_blank' ); | |
| 735 | - } ); | |
| 736 | - } ); | |
| 737 | - </script> | |
| 738 | - <?php | |
| 728 | + } | |
| 739 | 729 | } |
| 740 | 730 | |
| 741 | 731 | /** |
| 742 | 732 | * Adds the screen options for pagination. |
| @@ -909,8 +899,9 @@ | ||
| 909 | 899 | * @access public |
| 910 | 900 | */ |
| 911 | 901 | public function renderSupportPage() { |
| 912 | 902 | wp_enqueue_style( 'visualizer-upsell', VISUALIZER_ABSURL . 'css/upsell.css', array(), Visualizer_Plugin::VERSION ); |
| 903 | + $this->load_survey(); | |
| 913 | 904 | include_once VISUALIZER_ABSPATH . '/templates/support.php'; |
| 914 | 905 | } |
| 915 | 906 | |
| 916 | 907 | /** |
| @@ -1062,8 +1053,11 @@ | ||
| 1062 | 1053 | 'total' => $query->max_num_pages, |
| 1063 | 1054 | 'type' => 'array', |
| 1064 | 1055 | ) |
| 1065 | 1056 | ); |
| 1057 | + | |
| 1058 | + $this->load_survey(); | |
| 1059 | + | |
| 1066 | 1060 | $render->render(); |
| 1067 | 1061 | } |
| 1068 | 1062 | |
| 1069 | 1063 | /** |
| @@ -1190,6 +1184,77 @@ | ||
| 1190 | 1184 | if ( isset( $types[ $type ] ) ) { |
| 1191 | 1185 | return ! empty( $types[ $type ]['enabled'] ); |
| 1192 | 1186 | } |
| 1193 | 1187 | return false; |
| 1188 | + } | |
| 1189 | + | |
| 1190 | + /** | |
| 1191 | + * Get the survey metadata. | |
| 1192 | + * | |
| 1193 | + * @return array The survey metadata. | |
| 1194 | + */ | |
| 1195 | + private function get_survey_metadata() { | |
| 1196 | + $install_date = get_option( 'visualizer_install', false ); | |
| 1197 | + $install_category = 0; | |
| 1198 | + | |
| 1199 | + if ( false !== $install_date ) { | |
| 1200 | + $days_since_install = round( ( time() - $install_date ) / DAY_IN_SECONDS ); | |
| 1201 | + | |
| 1202 | + if ( 0 === $days_since_install || 1 === $days_since_install ) { | |
| 1203 | + $install_category = 0; | |
| 1204 | + } elseif ( 1 < $days_since_install && 8 > $days_since_install ) { | |
| 1205 | + $install_category = 7; | |
| 1206 | + } elseif ( 8 <= $days_since_install && 31 > $days_since_install ) { | |
| 1207 | + $install_category = 30; | |
| 1208 | + } elseif ( 30 < $days_since_install && 90 > $days_since_install ) { | |
| 1209 | + $install_category = 90; | |
| 1210 | + } elseif ( 90 <= $days_since_install ) { | |
| 1211 | + $install_category = 91; | |
| 1212 | + } | |
| 1213 | + } | |
| 1214 | + | |
| 1215 | + $plugin_data = get_plugin_data( VISUALIZER_BASEFILE, false, false ); | |
| 1216 | + $plugin_version = ''; | |
| 1217 | + if ( ! empty( $plugin_data['Version'] ) ) { | |
| 1218 | + $plugin_version = $plugin_data['Version']; | |
| 1219 | + } | |
| 1220 | + | |
| 1221 | + $user_id = 'visualizer_' . preg_replace( '/[^\w\d]*/', '', get_site_url() ); // Use a normalized version of the site URL as a user ID. | |
| 1222 | + | |
| 1223 | + $license_data = get_option( 'visualizer_pro_license_data', false ); | |
| 1224 | + if ( false !== $license_data ) { | |
| 1225 | + $user_id = 'visualizer_' . $license_data->key; | |
| 1226 | + } | |
| 1227 | + | |
| 1228 | + return array( | |
| 1229 | + 'userId' => $user_id, | |
| 1230 | + 'attributes' => array( | |
| 1231 | + 'days_since_install' => $install_category, | |
| 1232 | + 'free_version' => $plugin_version, | |
| 1233 | + 'pro_version' => defined( 'VISUALIZER_PRO_VERSION' ) ? VISUALIZER_PRO_VERSION : '', | |
| 1234 | + 'license_status' => apply_filters( 'product_visualizer_license_status', 'invalid' ), | |
| 1235 | + ), | |
| 1236 | + ); | |
| 1237 | + } | |
| 1238 | + | |
| 1239 | + /** | |
| 1240 | + * Load the survey. | |
| 1241 | + */ | |
| 1242 | + private function load_survey() { | |
| 1243 | + | |
| 1244 | + if ( defined( 'TI_CYPRESS_TESTING' ) ) { | |
| 1245 | + return; | |
| 1246 | + } | |
| 1247 | + | |
| 1248 | + $survey_handler = apply_filters( 'themeisle_sdk_dependency_script_handler', 'survey' ); | |
| 1249 | + | |
| 1250 | + if ( empty( $survey_handler ) ) { | |
| 1251 | + return; | |
| 1252 | + } | |
| 1253 | + | |
| 1254 | + $metadata = $this->get_survey_metadata(); | |
| 1255 | + | |
| 1256 | + do_action( 'themeisle_sdk_dependency_enqueue_script', 'survey' ); | |
| 1257 | + wp_enqueue_script( 'visualizer_chart_survey', VISUALIZER_ABSURL . 'js/survey.js', array( $survey_handler ), $metadata['attributes']['free_version'], true ); | |
| 1258 | + wp_localize_script( 'visualizer_chart_survey', 'visualizerSurveyData', $metadata ); | |
| 1194 | 1259 | } |
| 1195 | 1260 | } |