PluginProbe
TWIPLA – Website Intelligence / trunk
TWIPLA – Website Intelligence vtrunk
trunk 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.1.0 1.2.0 1.3.0
visitor-analytics-io / includes / class-visitoranalytics.php

class-visitoranalytics.php in TWIPLA – Website Intelligence trunk, at includes/class-visitoranalytics.php

155 lines 4.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 if (!defined('ABSPATH')) {
3 exit;
4 }
5
6
7 /**
8 */
9 class VisitorAnalytics {
10
11 /**
12 */
13 public function __construct() {
14
15 }
16
17 /**
18 */
19 public function init() {
20 //
21 $this->init_admin();
22 $this->enqueue_jquery();
23 $this->enqueue_tracking_script();
24 $this->enqueue_admin_styles();
25 $this->enqueue_admin_js();
26 }
27
28 /**
29 * add_menu_page( string $page_title, string $menu_title, string $capability, string $menu_slug, callable $callback = '', string $icon_url = '', int|float $position = null ): string
30 */
31 public function add_plugin_admin_menu() {
32 //
33 add_menu_page(
34 'TWIPLA', // page_title
35 'TWIPLA', // menu_title
36 'manage_options', // capability
37 'visitor-analytics-v2', // $this->plugin_name, // menu_slug
38 array($this, 'display_plugin_setup_page'), // callback
39 '/images/va-icon.svg', // VISITOR_ANALYTICS_IO_ADMIN_URL . '/images/va-icon.svg', // icon_url
40 6 // position
41 );
42 }
43
44 /**
45 */
46 public function display_plugin_setup_page() {
47 include_once('partials/dashboard-iframe.php');
48 }
49
50
51 /**
52 */
53 public function visitor_analytics_activation() {
54 exit(wp_redirect(admin_url('options-general.php?page=visitor_analytics_settings')));
55 }
56
57 /**
58 */
59 public function init_admin() {
60 // register the setting to save the website id
61 register_setting('visitor_analytics', 'visitor_analytics_site_id');
62 register_setting('visitor_analytics', 'visitor_analytics_version');
63 register_setting('visitor_analytics', 'visitor_analytics_migration_done');
64
65 // register the settings page
66 add_action('admin_menu', array( $this, 'create_nav_page'));
67
68 // register the dashboad shortcut
69 // add_action('admin_menu', array( $this, 'add_plugin_admin_menu'));
70 }
71
72 /**
73 */
74 public function create_nav_page() {
75 add_options_page(
76 esc_html__( 'TWIPLA', 'visitoranalytics' ),
77 esc_html__( 'TWIPLA', 'visitoranalytics' ),
78 'manage_options',
79 'visitor_analytics_settings',
80 array($this,'admin_view')
81 );
82 }
83
84
85 /**
86 */
87 public static function admin_view() {
88 //
89 require_once plugin_dir_path( __FILE__ ) . '/../admin/views/settings.php';
90 }
91
92 /**
93 */
94 public static function visitor_analytics_script() {
95 //
96 $visitor_analytics_site_id = esc_attr(get_option('visitor_analytics_site_id'));
97 $is_admin = is_admin();
98
99 //
100 $visitor_analytics_site_id = trim($visitor_analytics_site_id);
101 if (!$visitor_analytics_site_id) {
102 return;
103 }
104
105 //
106 if($is_admin) {
107 return;
108 }
109
110 echo "<!-- START: VISA Tracking Code --><script>(function(v,i,s,a,t){v[t]=v[t]||function(){(v[t].v=v[t].v||[]).push(arguments)};if(!v._visaSettings){v._visaSettings={}}v._visaSettings[a]={v:'1.0',s:a,a:'1',t:t};var b=i.getElementsByTagName('body')[0];var p=i.createElement('script');p.defer=1;p.async=1;p.src=s+'?s='+a;b.appendChild(p)})(window,document,'//app-worker.visitor-analytics.io/main.js','".$visitor_analytics_site_id."','va')</script><!-- END: VISA Tracking Code -->";
111 }
112
113 /**
114 */
115 private function enqueue_jquery() {
116 // add jquery to the admin settings page
117 // add_action('wp_head', 'jquery');
118 }
119
120 /**
121 */
122 private function enqueue_tracking_script() {
123 // add_action('wp_head', array($this, 'visitor_analytics_script'));
124 add_action('wp_footer', array($this, 'visitor_analytics_script'));
125 }
126
127 /**
128 */
129 private function enqueue_admin_styles() {
130 add_action('admin_enqueue_scripts', array($this, 'visitor_analytics_admin_styles'));
131 }
132
133 /**
134 */
135 public static function visitor_analytics_admin_styles() {
136 wp_register_style('visitor_analytics_custom_admin_style', plugins_url( '../admin/static/css/admin.css', __FILE__ ), array(), '20190701', 'all' );
137 wp_enqueue_style('visitor_analytics_custom_admin_style' );
138 }
139
140 /**
141 */
142 private function enqueue_admin_js() {
143 add_action('admin_enqueue_scripts', array($this, 'visitor_analytics_admin_js'));
144 }
145
146 /**
147 */
148 public function visitor_analytics_admin_js() {
149 wp_enqueue_script('visitor_analytics_custom_admin_js', plugins_url( '../admin/static/js/jquery.js', __FILE__ ), array(), '20190701', 'all' );
150 }
151
152 }
153
154 ?>
155