/wp-content/plugins/wp-statistics/widget.php

https://gitlab.com/hop23typhu/faci-vinhomes · PHP · 333 lines · 253 code · 60 blank · 20 comment · 23 complexity · 1d6b8f9e10ccaf9f3b6428186c0ce703 MD5 · raw file

  1. <?php
  2. function wp_statistics_widget() {
  3. register_widget( 'WPStatistics_Widget' );
  4. }
  5. class WPStatistics_Widget extends WP_Widget {
  6. /**
  7. * Sets up the widgets name etc
  8. */
  9. public function __construct() {
  10. parent::__construct(
  11. 'WPStatistics_Widget', // Base ID
  12. __('Statistics', 'wp_statistics'), // Name
  13. array( 'description' => __('Show site stats in sidebar.', 'wp_statistics') ) // Args
  14. );
  15. }
  16. /**
  17. * Outputs the content of the widget
  18. *
  19. * @param array $args
  20. * @param array $instance
  21. */
  22. public function widget( $args, $instance ) {
  23. GLOBAL $WP_Statistics;
  24. extract($args);
  25. $widget_options = $WP_Statistics->get_option('widget');
  26. echo $before_widget;
  27. echo $before_title . $widget_options['name_widget'] . $after_title;
  28. echo "<ul>";
  29. if($widget_options['useronline_widget']) {
  30. echo "<li>";
  31. echo __('User Online', 'wp_statistics'). ": ";
  32. echo number_format_i18n(wp_statistics_useronline());
  33. echo "</li>";
  34. }
  35. if($widget_options['tvisit_widget']) {
  36. echo "<li>";
  37. echo __('Today Visit', 'wp_statistics'). ": ";
  38. echo number_format_i18n(wp_statistics_visit('today'));
  39. echo "</li>";
  40. }
  41. if($widget_options['tvisitor_widget']) {
  42. echo "<li>";
  43. echo __('Today Visitor', 'wp_statistics'). ": ";
  44. echo number_format_i18n(wp_statistics_visitor('today', null, true));
  45. echo "</li>";
  46. }
  47. if($widget_options['yvisit_widget']) {
  48. echo "<li>";
  49. echo __('Yesterday Visit', 'wp_statistics'). ": ";
  50. echo number_format_i18n(wp_statistics_visit('yesterday'));
  51. echo "</li>";
  52. }
  53. if($widget_options['yvisitor_widget']) {
  54. echo "<li>";
  55. echo __('Yesterday Visitor', 'wp_statistics'). ": ";
  56. echo number_format_i18n(wp_statistics_visitor('yesterday', null, true));
  57. echo "</li>";
  58. }
  59. if($widget_options['wvisit_widget']) {
  60. echo "<li>";
  61. echo __('Week Visit', 'wp_statistics'). ": ";
  62. echo number_format_i18n(wp_statistics_visit('week'));
  63. echo "</li>";
  64. }
  65. if($widget_options['mvisit_widget']) {
  66. echo "<li>";
  67. echo __('Month Visit', 'wp_statistics'). ": ";
  68. echo number_format_i18n(wp_statistics_visit('month'));
  69. echo "</li>";
  70. }
  71. if($widget_options['ysvisit_widget']) {
  72. echo "<li>";
  73. echo __('Years Visit', 'wp_statistics'). ": ";
  74. echo number_format_i18n(wp_statistics_visit('year'));
  75. echo "</li>";
  76. }
  77. if($widget_options['ttvisit_widget']) {
  78. echo "<li>";
  79. echo __('Total Visit', 'wp_statistics'). ": ";
  80. echo number_format_i18n(wp_statistics_visit('total'));
  81. echo "</li>";
  82. }
  83. if($widget_options['ttvisitor_widget']) {
  84. echo "<li>";
  85. echo __('Total Visitor', 'wp_statistics'). ": ";
  86. echo number_format_i18n(wp_statistics_visitor('total', null, true));
  87. echo "</li>";
  88. }
  89. if($widget_options['tpviews_widget']) {
  90. echo "<li>";
  91. echo __('Total Page Views', 'wp_statistics'). ": ";
  92. echo number_format_i18n(wp_statistics_pages('total'));
  93. echo "</li>";
  94. }
  95. if($widget_options['ser_widget']) {
  96. echo "<li>";
  97. echo __('Search Engine referred', 'wp_statistics'). ": ";
  98. echo number_format_i18n(wp_statistics_searchengine($widget_options['select_se']));
  99. echo "</li>";
  100. }
  101. if($widget_options['tp_widget']) {
  102. echo "<li>";
  103. echo __('Total Posts', 'wp_statistics'). ": ";
  104. echo number_format_i18n(wp_statistics_countposts());
  105. echo "</li>";
  106. }
  107. if($widget_options['tpg_widget']) {
  108. echo "<li>";
  109. echo __('Total Pages', 'wp_statistics'). ": ";
  110. echo number_format_i18n(wp_statistics_countpages());
  111. echo "</li>";
  112. }
  113. if($widget_options['tc_widget']) {
  114. echo "<li>";
  115. echo __('Total Comments', 'wp_statistics'). ": ";
  116. echo number_format_i18n(wp_statistics_countcomment());
  117. echo "</li>";
  118. }
  119. if($widget_options['ts_widget']) {
  120. echo "<li>";
  121. echo __('Total Spams', 'wp_statistics'). ": ";
  122. echo wp_statistics_countspam();
  123. echo "</li>";
  124. }
  125. if($widget_options['tu_widget']) {
  126. echo "<li>";
  127. echo __('Total Users', 'wp_statistics'). ": ";
  128. echo number_format_i18n(wp_statistics_countusers());
  129. echo "</li>";
  130. }
  131. if($widget_options['ap_widget']) {
  132. echo "<li>";
  133. echo __('Average Posts', 'wp_statistics'). ": ";
  134. echo number_format_i18n(wp_statistics_average_post());
  135. echo "</li>";
  136. }
  137. if($widget_options['ac_widget']) {
  138. echo "<li>";
  139. echo __('Average Comments', 'wp_statistics'). ": ";
  140. echo number_format_i18n(wp_statistics_average_comment());
  141. echo "</li>";
  142. }
  143. if($widget_options['au_widget']) {
  144. echo "<li>";
  145. echo __('Average Users', 'wp_statistics'). ": ";
  146. echo number_format_i18n(wp_statistics_average_registeruser());
  147. echo "</li>";
  148. }
  149. if($widget_options['lpd_widget']) {
  150. echo "<li>";
  151. echo __('Last Post Date', 'wp_statistics'). ": ";
  152. echo wp_statistics_lastpostdate();
  153. echo "</li>";
  154. }
  155. echo "</ul>";
  156. echo $after_widget;
  157. }
  158. /**
  159. * Processing widget options on save
  160. *
  161. * @param array $new_instance The new options
  162. * @param array $old_instance The previous options
  163. */
  164. public function update( $new_instance, $old_instance ) {
  165. GLOBAL $WP_Statistics;
  166. if( array_key_exists( 'wp_statistics_control_widget_submit', $_POST ) ) {
  167. $widget_options['name_widget'] = $_POST['name_widget'];
  168. $widget_options['useronline_widget'] = $_POST['useronline_widget'];
  169. $widget_options['tvisit_widget'] = $_POST['tvisit_widget'];
  170. $widget_options['tvisitor_widget'] = $_POST['tvisitor_widget'];
  171. $widget_options['yvisit_widget'] = $_POST['yvisit_widget'];
  172. $widget_options['yvisitor_widget'] = $_POST['yvisitor_widget'];
  173. $widget_options['wvisit_widget'] = $_POST['wvisit_widget'];
  174. $widget_options['mvisit_widget'] = $_POST['mvisit_widget'];
  175. $widget_options['ysvisit_widget'] = $_POST['ysvisit_widget'];
  176. $widget_options['ttvisit_widget'] = $_POST['ttvisit_widget'];
  177. $widget_options['ttvisitor_widget'] = $_POST['ttvisitor_widget'];
  178. $widget_options['tpviews_widget'] = $_POST['tpviews_widget'];
  179. $widget_options['ser_widget'] = $_POST['ser_widget'];
  180. $widget_options['select_se'] = $_POST['select_se'];
  181. $widget_options['tp_widget'] = $_POST['tp_widget'];
  182. $widget_options['tpg_widget'] = $_POST['tpg_widget'];
  183. $widget_options['tc_widget'] = $_POST['tc_widget'];
  184. $widget_options['ts_widget'] = $_POST['ts_widget'];
  185. $widget_options['tu_widget'] = $_POST['tu_widget'];
  186. $widget_options['ap_widget'] = $_POST['ap_widget'];
  187. $widget_options['ac_widget'] = $_POST['ac_widget'];
  188. $widget_options['au_widget'] = $_POST['au_widget'];
  189. $widget_options['lpd_widget'] = $_POST['lpd_widget'];
  190. $widget_options['select_lps'] = $_POST['select_lps'];
  191. $WP_Statistics->update_option('widget', $widget_options);
  192. }
  193. return array();
  194. }
  195. /**
  196. * Outputs the options form on admin
  197. *
  198. * @param array $instance The widget options
  199. */
  200. public function form( $instance ) {
  201. GLOBAL $WP_Statistics;
  202. $widget_options = $WP_Statistics->get_option('widget');
  203. ?>
  204. <p>
  205. <?php _e('Name', 'wp_statistics'); ?>:<br />
  206. <input id="name_widget" name="name_widget" type="text" value="<?php echo $widget_options['name_widget']; ?>" />
  207. </p>
  208. <?php _e('Items', 'wp_statistics'); ?>:</br />
  209. <ul>
  210. <li><input type="checkbox" id="useronline_widget" name="useronline_widget" <?php checked('on', $widget_options['useronline_widget']); ?>/>
  211. <label for="useronline_widget"><?php _e('User Online', 'wp_statistics'); ?></label></li>
  212. <li><input type="checkbox" id="tvisit_widget" name="tvisit_widget" <?php checked('on', $widget_options['tvisit_widget']); ?>/>
  213. <label for="tvisit_widget"><?php _e('Today Visit', 'wp_statistics'); ?></label></li>
  214. <li><input type="checkbox" id="tvisitor_widget" name="tvisitor_widget" <?php checked('on', $widget_options['tvisitor_widget']); ?>/>
  215. <label for="tvisitor_widget"><?php _e('Today Visitor', 'wp_statistics'); ?></label></li>
  216. <li><input type="checkbox" id="yvisit_widget" name="yvisit_widget" <?php checked('on', $widget_options['yvisit_widget']); ?>/>
  217. <label for="yvisit_widget"><?php _e('Yesterday visit', 'wp_statistics'); ?></label></li>
  218. <li><input type="checkbox" id="yvisitor_widget" name="yvisitor_widget" <?php checked('on', $widget_options['yvisitor_widget']); ?>/>
  219. <label for="yvisitor_widget"><?php _e('Yesterday Visitor', 'wp_statistics'); ?></label></li>
  220. <li><input type="checkbox" id="wvisit_widget" name="wvisit_widget" <?php checked('on', $widget_options['wvisit_widget']); ?>/>
  221. <label for="wvisit_widget"><?php _e('Week Visit', 'wp_statistics'); ?></label></li>
  222. <li><input type="checkbox" id="mvisit_widget" name="mvisit_widget" <?php checked('on', $widget_options['mvisit_widget']); ?>/>
  223. <label for="mvisit_widget"><?php _e('Month Visit', 'wp_statistics'); ?></label></li>
  224. <li><input type="checkbox" id="ysvisit_widget" name="ysvisit_widget" <?php checked('on', $widget_options['ysvisit_widget']); ?>/>
  225. <label for="ysvisit_widget"><?php _e('Years Visit', 'wp_statistics'); ?></label></li>
  226. <li><input type="checkbox" id="ttvisit_widget" name="ttvisit_widget" <?php checked('on', $widget_options['ttvisit_widget']); ?>/>
  227. <label for="ttvisit_widget"><?php _e('Total Visit', 'wp_statistics'); ?></label></li>
  228. <li><input type="checkbox" id="ttvisitor_widget" name="ttvisitor_widget" <?php checked('on', $widget_options['ttvisitor_widget']); ?>/>
  229. <label for="ttvisitor_widget"><?php _e('Total Visitor', 'wp_statistics'); ?></label></li>
  230. <li><input type="checkbox" id="tpviews_widget" name="tpviews_widget" <?php checked('on', $widget_options['tpviews_widget']); ?>/>
  231. <label for="tpviews_widget"><?php _e('Total Page Views', 'wp_statistics'); ?></label></li>
  232. <li><input type="checkbox" id="ser_widget" class="ser_widget" name="ser_widget" <?php checked('on', $widget_options['ser_widget']); ?>/>
  233. <label for="ser_widget"><?php _e('Search Engine Referred', 'wp_statistics'); ?></label></li>
  234. <p id="ser_option" style="<?php if(!$widget_options['ser_widget']) { echo "display: none;"; } ?>">
  235. <?php _e('Select type of search engine', 'wp_statistics'); ?>:<br />
  236. <?php
  237. $search_engines = wp_statistics_searchengine_list();
  238. foreach( $search_engines as $se ) {
  239. echo ' <input type="radio" id="select_' .$se['tag'] . '" name="select_se" value="' . $se['tag'] . '" ';
  240. checked($se['tag'], $widget_options['select_se']);
  241. echo "/>\n";
  242. echo ' <label for="' . $se['name'] . '">' . $se['translated'] . "</label>\n";
  243. echo "\n";
  244. }
  245. ?>
  246. <input type="radio" id="select_all" name="select_se" value="all" <?php checked('all', $widget_options['select_se']); ?>/>
  247. <label for="select_all"><?php _e('All', 'wp_statistics'); ?></label>
  248. </p>
  249. <li><input type="checkbox" id="tp_widget" name="tp_widget" <?php checked('on', $widget_options['tp_widget']); ?>/>
  250. <label for="tp_widget"><?php _e('Total Posts', 'wp_statistics'); ?></label></li>
  251. <li><input type="checkbox" id="tpg_widget" name="tpg_widget" <?php checked('on', $widget_options['tpg_widget']); ?>/>
  252. <label for="tpg_widget"><?php _e('Total Pages', 'wp_statistics'); ?></label></li>
  253. <li><input type="checkbox" id="tc_widget" name="tc_widget" <?php checked('on', $widget_options['tc_widget']); ?>/>
  254. <label for="tc_widget"><?php _e('Total Comments', 'wp_statistics'); ?></label></li>
  255. <li><input type="checkbox" id="ts_widget" name="ts_widget" <?php checked('on', $widget_options['ts_widget']); ?>/>
  256. <label for="ts_widget"><?php _e('Total Spams', 'wp_statistics'); ?></label></li>
  257. <li><input type="checkbox" id="tu_widget" name="tu_widget" <?php checked('on', $widget_options['tu_widget']); ?>/>
  258. <label for="tu_widget"><?php _e('Total Users', 'wp_statistics'); ?></label></li>
  259. <li><input type="checkbox" id="ap_widget" name="ap_widget" <?php checked('on', $widget_options['ap_widget']); ?>/>
  260. <label for="ap_widget"><?php _e('Average Posts', 'wp_statistics'); ?></label></li>
  261. <li><input type="checkbox" id="ac_widget" name="ac_widget" <?php checked('on', $widget_options['ac_widget']); ?>/>
  262. <label for="ac_widget"><?php _e('Average Comments', 'wp_statistics'); ?></label></li>
  263. <li><input type="checkbox" id="au_widget" name="au_widget" <?php checked('on', $widget_options['au_widget']); ?>/>
  264. <label for="au_widget"><?php _e('Average Users', 'wp_statistics'); ?></label></li>
  265. <li><input type="checkbox" id="lpd_widget" class="lpd_widget" name="lpd_widget" <?php checked('on', $widget_options['lpd_widget']); ?>/>
  266. <label for="lpd_widget"><?php _e('Last Post Date', 'wp_statistics'); ?></label></li>
  267. </ul>
  268. <input type="hidden" id="wp_statistics_control_widget_submit" name="wp_statistics_control_widget_submit" value="1" />
  269. <?php
  270. }
  271. }
  272. add_action( 'widgets_init', 'wp_statistics_widget' );
  273. ?>