| @@ -53,9 +53,9 @@ | ||
| 53 | 53 | parent::__construct( $plugin ); |
| 54 | 54 | $this->_addAction( 'load-post.php', 'enqueueMediaScripts' ); |
| 55 | 55 | $this->_addAction( 'load-post-new.php', 'enqueueMediaScripts' ); |
| 56 | 56 | $this->_addAction( 'admin_footer', 'renderTemplates' ); |
| 57 | - $this->_addAction( 'admin_enqueue_scripts', 'enqueueLibraryScripts', null, 0 ); | |
| 57 | + $this->_addAction( 'admin_enqueue_scripts', 'enqueueLibraryScripts', null, 8 ); | |
| 58 | 58 | $this->_addAction( 'admin_menu', 'registerAdminMenu' ); |
| 59 | 59 | $this->_addFilter( 'media_view_strings', 'setupMediaViewStrings' ); |
| 60 | 60 | $this->_addFilter( 'plugin_action_links', 'getPluginActionLinks', 10, 2 ); |
| 61 | 61 | $this->_addFilter( 'plugin_row_meta', 'getPluginMetaLinks', 10, 2 ); |
| @@ -73,10 +73,8 @@ | ||
| 73 | 73 | $this->_addAction( 'visualizer_chart_schedules_spl', 'addSplChartSchedules', null, 10, 3 ); |
| 74 | 74 | |
| 75 | 75 | $this->_addAction( 'admin_init', 'init' ); |
| 76 | 76 | |
| 77 | - $this->_addAction( 'visualizer_chart_languages', 'addMultilingualSupport' ); | |
| 78 | - | |
| 79 | 77 | if ( defined( 'TI_CYPRESS_TESTING' ) ) { |
| 80 | 78 | $this->load_cypress_hooks(); |
| 81 | 79 | } |
| 82 | 80 | |
| @@ -366,9 +364,9 @@ | ||
| 366 | 364 | 'filters' => $chart_types, |
| 367 | 365 | 'types' => array_keys( $chart_types ), |
| 368 | 366 | ), |
| 369 | 367 | 'nonce' => wp_create_nonce(), |
| 370 | - 'buildurl' => esc_url( add_query_arg( 'action', Visualizer_Plugin::ACTION_CREATE_CHART, admin_url( 'admin-ajax.php' ) ) ), | |
| 368 | + 'buildurl' => add_query_arg( 'action', Visualizer_Plugin::ACTION_CREATE_CHART, admin_url( 'admin-ajax.php' ) ), | |
| 371 | 369 | ); |
| 372 | 370 | |
| 373 | 371 | return $strings; |
| 374 | 372 | } |
| @@ -687,20 +685,8 @@ | ||
| 687 | 685 | 'edit_posts', |
| 688 | 686 | 'viz-support', |
| 689 | 687 | array( $this, 'renderSupportPage' ) |
| 690 | 688 | ); |
| 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 | 689 | remove_submenu_page( Visualizer_Plugin::NAME, Visualizer_Plugin::NAME ); |
| 704 | 690 | |
| 705 | 691 | add_action( "load-{$this->_libraryPage}", array( $this, 'addScreenOptions' ) ); |
| 706 | 692 | } |
| @@ -705,41 +691,8 @@ | ||
| 705 | 691 | add_action( "load-{$this->_libraryPage}", array( $this, 'addScreenOptions' ) ); |
| 706 | 692 | } |
| 707 | 693 | |
| 708 | 694 | /** |
| 709 | - * Handle get pro plugin submenu. | |
| 710 | - */ | |
| 711 | - public function handleGetProSubMenu() { | |
| 712 | - ?> | |
| 713 | - <style type="text/css"> | |
| 714 | - #toplevel_page_visualizer ul.wp-submenu li.wp-first-item + li + li + li { | |
| 715 | - background: #FF7E65; | |
| 716 | - font-size: 14px; | |
| 717 | - font-weight: 600; | |
| 718 | - color: #fff; | |
| 719 | - } | |
| 720 | - #toplevel_page_visualizer ul.wp-submenu li.wp-first-item + li + li + li > a { | |
| 721 | - color: #fff !important; | |
| 722 | - } | |
| 723 | - #toplevel_page_visualizer ul.wp-submenu li.wp-first-item + li + li + li > a:hover { | |
| 724 | - box-shadow: inherit; | |
| 725 | - } | |
| 726 | - #toplevel_page_visualizer ul.wp-submenu li.wp-first-item + li + li + li + li { | |
| 727 | - display: none; | |
| 728 | - } | |
| 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 | |
| 739 | - } | |
| 740 | - | |
| 741 | - /** | |
| 742 | 695 | * Adds the screen options for pagination. |
| 743 | 696 | */ |
| 744 | 697 | function addScreenOptions() { |
| 745 | 698 | $screen = get_current_screen(); |
| @@ -770,24 +723,8 @@ | ||
| 770 | 723 | * Adds the display filters to be used in the meta_query while displaying the charts. |
| 771 | 724 | */ |
| 772 | 725 | private function getDisplayFilters( &$query_args ) { |
| 773 | 726 | $query = array(); |
| 774 | - global $sitepress; | |
| 775 | - if ( Visualizer_Module::is_pro() && ( function_exists( 'icl_get_languages' ) && $sitepress instanceof \SitePress ) ) { | |
| 776 | - $current_lang = icl_get_current_language(); | |
| 777 | - if ( in_array( $current_lang, array( 'all', icl_get_default_language() ), true ) ) { | |
| 778 | - $query[] = array( | |
| 779 | - 'key' => 'chart_lang', | |
| 780 | - 'compare' => 'NOT EXISTS', | |
| 781 | - ); | |
| 782 | - } else { | |
| 783 | - $query[] = array( | |
| 784 | - 'key' => 'chart_lang', | |
| 785 | - 'value' => $current_lang, | |
| 786 | - 'compare' => '=', | |
| 787 | - ); | |
| 788 | - } | |
| 789 | - } | |
| 790 | 727 | |
| 791 | 728 | // add chart type filter to the query arguments |
| 792 | 729 | $type = filter_input( INPUT_GET, 'type' ); |
| 793 | 730 | if ( $type && in_array( $type, Visualizer_Plugin::getChartTypes(), true ) ) { |
| @@ -885,9 +822,9 @@ | ||
| 885 | 822 | |
| 886 | 823 | $this->getDisplayFilters( $query_args ); |
| 887 | 824 | |
| 888 | 825 | // Added by Ash/Upwork |
| 889 | - $filterByMeta = ! empty( $_GET['s'] ) ? sanitize_text_field( wp_unslash( $_GET['s'] ) ) : null; // phpcs:ignore WordPress.Security.NonceVerification.Recommended | |
| 826 | + $filterByMeta = filter_input( INPUT_GET, 's', FILTER_SANITIZE_STRING ); | |
| 890 | 827 | if ( $filterByMeta ) { |
| 891 | 828 | $query = array( |
| 892 | 829 | 'key' => Visualizer_Plugin::CF_SETTINGS, |
| 893 | 830 | 'value' => $filterByMeta, |
| @@ -988,15 +925,8 @@ | ||
| 988 | 925 | $css .= $arguments[0]; |
| 989 | 926 | $settings = $arguments[1]; |
| 990 | 927 | } |
| 991 | 928 | |
| 992 | - if ( isset( $settings['controls']['ui']['labelStacking'] ) ) { | |
| 993 | - unset( $settings['controls']['ui']['labelStacking'] ); | |
| 994 | - } | |
| 995 | - if ( isset( $settings['controls']['ui']['orientation'] ) ) { | |
| 996 | - unset( $settings['controls']['ui']['orientation'] ); | |
| 997 | - } | |
| 998 | - | |
| 999 | 929 | // add chart to the array |
| 1000 | 930 | $charts[ $id ] = array( |
| 1001 | 931 | 'id' => $chart->ID, |
| 1002 | 932 | 'type' => $type, |
| @@ -1015,30 +945,26 @@ | ||
| 1015 | 945 | 'language' => $this->get_language(), |
| 1016 | 946 | 'map_api_key' => get_option( 'visualizer-map-api-key' ), |
| 1017 | 947 | 'charts' => $charts, |
| 1018 | 948 | 'urls' => array( |
| 1019 | - 'base' => esc_url( add_query_arg( array( 'vpage' => false, 'vaction' => false ) ) ), | |
| 1020 | - 'create' => esc_url( | |
| 1021 | - add_query_arg( | |
| 1022 | - array( | |
| 1023 | - 'action' => Visualizer_Plugin::ACTION_CREATE_CHART, | |
| 1024 | - 'library' => 'yes', | |
| 1025 | - 'type' => isset( $_GET['type'] ) ? $_GET['type'] : '', | |
| 1026 | - 'chart-library' => isset( $_GET['chart-library'] ) ? $_GET['chart-library'] : '', | |
| 1027 | - 'vaction' => false, | |
| 1028 | - ), | |
| 1029 | - $ajaxurl | |
| 1030 | - ) | |
| 949 | + 'base' => add_query_arg( array( 'vpage' => false, 'vaction' => false ) ), | |
| 950 | + 'create' => add_query_arg( | |
| 951 | + array( | |
| 952 | + 'action' => Visualizer_Plugin::ACTION_CREATE_CHART, | |
| 953 | + 'library' => 'yes', | |
| 954 | + 'type' => isset( $_GET['type'] ) ? $_GET['type'] : '', | |
| 955 | + 'chart-library' => isset( $_GET['chart-library'] ) ? $_GET['chart-library'] : '', | |
| 956 | + 'vaction' => false, | |
| 957 | + ), | |
| 958 | + $ajaxurl | |
| 1031 | 959 | ), |
| 1032 | - 'edit' => esc_url( | |
| 1033 | - add_query_arg( | |
| 1034 | - array( | |
| 1035 | - 'action' => Visualizer_Plugin::ACTION_EDIT_CHART, | |
| 1036 | - 'library' => 'yes', | |
| 1037 | - 'vaction' => false, | |
| 1038 | - ), | |
| 1039 | - $ajaxurl | |
| 1040 | - ) | |
| 960 | + 'edit' => add_query_arg( | |
| 961 | + array( | |
| 962 | + 'action' => Visualizer_Plugin::ACTION_EDIT_CHART, | |
| 963 | + 'library' => 'yes', | |
| 964 | + 'vaction' => false, | |
| 965 | + ), | |
| 966 | + $ajaxurl | |
| 1041 | 967 | ), |
| 1042 | 968 | ), |
| 1043 | 969 | 'page_type' => 'library', |
| 1044 | 970 | 'is_front' => false, |
| @@ -1113,9 +1039,9 @@ | ||
| 1113 | 1039 | esc_html__( 'Docs', 'visualizer' ) |
| 1114 | 1040 | ); |
| 1115 | 1041 | // flattr link |
| 1116 | 1042 | $plugin_meta[] = sprintf( |
| 1117 | - '<a style="color:red" href="' . tsdk_utmify( Visualizer_Plugin::PRO_TEASER_URL, 'pluginrow' ) . '" target="_blank">%s</a>', | |
| 1043 | + '<a style="color:red" href="' . Visualizer_Plugin::PRO_TEASER_URL . '" target="_blank">%s</a>', | |
| 1118 | 1044 | esc_html__( 'Pro Addon', 'visualizer' ) |
| 1119 | 1045 | ); |
| 1120 | 1046 | } |
| 1121 | 1047 | |
| @@ -1131,65 +1057,6 @@ | ||
| 1131 | 1057 | if ( Visualizer_Module::is_pro() ) { |
| 1132 | 1058 | return true; |
| 1133 | 1059 | } |
| 1134 | 1060 | return 'yes' === get_option( 'visualizer-new-user', 'yes' ) ? false : true; |
| 1135 | - } | |
| 1136 | - | |
| 1137 | - /** | |
| 1138 | - * Multilingual Support. | |
| 1139 | - * | |
| 1140 | - * @param int $chart_id Chart ID. | |
| 1141 | - * @return bool Default false | |
| 1142 | - */ | |
| 1143 | - public function addMultilingualSupport( $chart_id ) { | |
| 1144 | - global $sitepress; | |
| 1145 | - if ( Visualizer_Module::is_pro() ) { | |
| 1146 | - return; | |
| 1147 | - } | |
| 1148 | - if ( function_exists( 'icl_get_languages' ) && $sitepress instanceof \SitePress ) { | |
| 1149 | - $language = icl_get_languages(); | |
| 1150 | - $current_lang = icl_get_current_language(); | |
| 1151 | - $default_lang = icl_get_default_language(); | |
| 1152 | - $post_info = wpml_get_language_information( null, $chart_id ); | |
| 1153 | - $translations = array(); | |
| 1154 | - if ( ! empty( $post_info ) && ( $default_lang === $post_info['language_code'] ) ) { | |
| 1155 | - $trid = $sitepress->get_element_trid( $chart_id, 'post_' . Visualizer_Plugin::CPT_VISUALIZER ); | |
| 1156 | - $translations = $sitepress->get_element_translations( $trid ); | |
| 1157 | - } | |
| 1158 | - if ( empty( $translations ) ) { | |
| 1159 | - return; | |
| 1160 | - } | |
| 1161 | - ?> | |
| 1162 | - <hr><div class="visualizer-languages-list only-pro"> | |
| 1163 | - <?php | |
| 1164 | - foreach ( $language as $lang ) { | |
| 1165 | - $lang_code = $lang['code']; | |
| 1166 | - if ( $current_lang !== $lang_code ) { | |
| 1167 | - ?> | |
| 1168 | - <a href="javascript:;"> | |
| 1169 | - <img src="<?php echo esc_url( $lang['country_flag_url'] ); ?>" alt="<?php echo esc_attr( $lang['translated_name'] ); ?>"> | |
| 1170 | - </a> | |
| 1171 | - <?php | |
| 1172 | - } | |
| 1173 | - } | |
| 1174 | - ?> | |
| 1175 | - <a href="<?php echo tsdk_utmify( Visualizer_Plugin::PRO_TEASER_URL, 'wpml-support', 'visualizer_render_char' ); ?>"target="_blank"><?php esc_html_e( 'Upgrade to PRO to active this translation for charts', 'visualizer' ); ?></a> | |
| 1176 | - </div> | |
| 1177 | - <?php | |
| 1178 | - } | |
| 1179 | - } | |
| 1180 | - | |
| 1181 | - /** | |
| 1182 | - * Check chart is enabled or not. | |
| 1183 | - * | |
| 1184 | - * @param string $type Chart ID. | |
| 1185 | - * | |
| 1186 | - * @return bool Default false | |
| 1187 | - */ | |
| 1188 | - public static function checkChartStatus( $type ) { | |
| 1189 | - $types = self::_getChartTypesLocalized( false, false, false, true ); | |
| 1190 | - if ( isset( $types[ $type ] ) ) { | |
| 1191 | - return ! empty( $types[ $type ]['enabled'] ); | |
| 1192 | - } | |
| 1193 | - return false; | |
| 1194 | 1061 | } |
| 1195 | 1062 | } |