public function __construct() { // Call parent constructor parent::__construct(); // Ajax declaration to save time interval $ajax_hooks = array('wp_stream_reports_save_interval' => 'save_interval'); // Register all ajax action and check referer for this class WP_Stream_Reports::handle_ajax_request($ajax_hooks, $this); }
public function get_chart_coordinates($args) { $date = new WP_Stream_Date_Interval(); $default_interval = array('key' => 'all-time', 'start' => '', 'end' => ''); $user_interval = WP_Stream_Reports_Settings::get_user_options('interval', $default_interval); $user_interval_key = $user_interval['key']; $available_intervals = $date->get_predefined_intervals(); if (array_key_exists($user_interval_key, $available_intervals)) { $user_interval['start'] = $available_intervals[$user_interval_key]['start']; $user_interval['end'] = $available_intervals[$user_interval_key]['end']; } $records = $this->load_metabox_records($args, $user_interval); $records = apply_filters('wp_stream_reports_load_records', $records, $args); $coordinates = apply_filters('wp_stream_reports_make_chart', $records, $args); return apply_filters('wp_stream_reports_finalize_chart', $coordinates, $args); }
protected function get_date_interval() { $date = new WP_Stream_Date_Interval(); $default_interval = array('key' => 'all-time', 'start' => '', 'end' => ''); $user_interval = WP_Stream_Reports_Settings::get_user_options('interval', $default_interval); $user_interval_key = $user_interval['key']; $available_intervals = $date->get_predefined_intervals(); if (array_key_exists($user_interval_key, $available_intervals)) { $interval = $available_intervals[$user_interval_key]; $user_interval['start'] = isset($interval['start']) ? $interval['start']->toDateString() : null; $user_interval['end'] = isset($interval['end']) ? $interval['end']->toDateString() : null; } return $user_interval; }