| @@ -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' ), |
| @@ -899,8 +899,9 @@ | ||
| 899 | 899 | * @access public |
| 900 | 900 | */ |
| 901 | 901 | public function renderSupportPage() { |
| 902 | 902 | wp_enqueue_style( 'visualizer-upsell', VISUALIZER_ABSURL . 'css/upsell.css', array(), Visualizer_Plugin::VERSION ); |
| 903 | + $this->load_survey(); | |
| 903 | 904 | include_once VISUALIZER_ABSPATH . '/templates/support.php'; |
| 904 | 905 | } |
| 905 | 906 | |
| 906 | 907 | /** |
| @@ -1052,8 +1053,11 @@ | ||
| 1052 | 1053 | 'total' => $query->max_num_pages, |
| 1053 | 1054 | 'type' => 'array', |
| 1054 | 1055 | ) |
| 1055 | 1056 | ); |
| 1057 | + | |
| 1058 | + $this->load_survey(); | |
| 1059 | + | |
| 1056 | 1060 | $render->render(); |
| 1057 | 1061 | } |
| 1058 | 1062 | |
| 1059 | 1063 | /** |
| @@ -1180,6 +1184,77 @@ | ||
| 1180 | 1184 | if ( isset( $types[ $type ] ) ) { |
| 1181 | 1185 | return ! empty( $types[ $type ]['enabled'] ); |
| 1182 | 1186 | } |
| 1183 | 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 ); | |
| 1184 | 1259 | } |
| 1185 | 1260 | } |