示例#1
0
        foreach ($adstats as $result) {
            if ($result->clicks == null) {
                $result->clicks = '0';
            }
            if ($result->impressions == null) {
                $result->impressions = '0';
            }
            $dates .= ',"' . date_i18n("d M", $result->thetime) . '"';
            $clicks .= ',' . $result->clicks;
            $impressions .= ',' . $result->impressions;
        }
        $dates = trim($dates, ",");
        $clicks = trim($clicks, ",");
        $impressions = trim($impressions, ",");
        echo '<div id="chart-1" style="height:150px; width:100%;"></div>';
        adrotate_draw_graph(1, $dates, $clicks, $impressions);
    } else {
        _e('No data to show!', 'adrotate');
    }
    ?>
								</td>
							</tr>
							</tbody>
							<?php 
}
?>

							<thead>
							<tr class="first">
								<td colspan="2"><strong><?php 
_e('Support AdRotate', 'adrotate');
function adrotate_stats_graph($type, $id, $chartid, $start, $end, $height = 300)
{
    global $wpdb;
    if ($type == 'ads' or $type == 'advertiser') {
        $stats = $wpdb->get_results($wpdb->prepare("SELECT `thetime`, SUM(`clicks`) as `clicks`, SUM(`impressions`) as `impressions` FROM `" . $wpdb->prefix . "adrotate_stats` WHERE `ad` = %d AND `thetime` >= %d AND `thetime` <= %d GROUP BY `thetime` ASC;", $id, $start, $end), ARRAY_A);
    }
    if ($type == 'groups') {
        $stats = $wpdb->get_results($wpdb->prepare("SELECT `thetime`, SUM(`clicks`) as `clicks`, SUM(`impressions`) as `impressions` FROM `" . $wpdb->prefix . "adrotate_stats` WHERE `group` = %d AND `thetime` >= %d AND `thetime` <= %d GROUP BY `thetime` ASC;", $id, $start, $end), ARRAY_A);
    }
    if ($type == 'fullreport') {
        $stats = $wpdb->get_results($wpdb->prepare("SELECT `thetime`, SUM(`clicks`) as `clicks`, SUM(`impressions`) as `impressions` FROM `" . $wpdb->prefix . "adrotate_stats` WHERE `thetime` >= %d AND `thetime` <= %d GROUP BY `thetime` ASC;", $start, $end), ARRAY_A);
    }
    if ($type == 'advertiserfull') {
        $stats = $wpdb->get_results($wpdb->prepare("SELECT `thetime`, SUM(`clicks`) as `clicks`, SUM(`impressions`) as `impressions` FROM `" . $wpdb->prefix . "adrotate_stats`, `" . $wpdb->prefix . "adrotate_linkmeta` WHERE `" . $wpdb->prefix . "adrotate_stats`.`ad` = `" . $wpdb->prefix . "adrotate_linkmeta`.`ad` AND `" . $wpdb->prefix . "adrotate_linkmeta`.`user` = %d AND (`" . $wpdb->prefix . "adrotate_stats`.`thetime` >= %d AND `" . $wpdb->prefix . "adrotate_stats`.`thetime` <= %d) GROUP BY `thetime` ASC;", $id, $start, $end), ARRAY_A);
    }
    if ($stats) {
        $dates = $clicks = $impressions = '';
        foreach ($stats as $result) {
            if (empty($result['clicks'])) {
                $result['clicks'] = '0';
            }
            if (empty($result['impressions'])) {
                $result['impressions'] = '0';
            }
            $dates .= ',"' . date_i18n("d M", $result['thetime']) . '"';
            $clicks .= ',' . $result['clicks'];
            $impressions .= ',' . $result['impressions'];
        }
        $dates = trim($dates, ",");
        $clicks = trim($clicks, ",");
        $impressions = trim($impressions, ",");
        $output = '';
        $output .= '<div id="chart-' . $chartid . '" style="height:' . $height . 'px; width:100%;"></div>';
        $output .= adrotate_draw_graph($chartid, $dates, $clicks, $impressions);
        unset($stats, $dates, $clicks, $impressions);
    } else {
        $output = __('No data to show!', 'adrotate-pro');
    }
    return $output;
}
function adrotate_stats_graph($type, $id, $chartid, $start, $end)
{
    global $wpdb, $adrotate_debug;
    if ($type == 'ads' or $type == 'advertiser') {
        $stats = $wpdb->get_results($wpdb->prepare("SELECT `thetime`, SUM(`clicks`) as `clicks`, SUM(`impressions`) as `impressions` FROM `" . $wpdb->prefix . "adrotate_stats` WHERE `ad` = %d AND `thetime` >= %d AND `thetime` <= %d GROUP BY `thetime` ASC;", $id, $start, $end), ARRAY_A);
    }
    if ($type == 'groups') {
        $stats = $wpdb->get_results($wpdb->prepare("SELECT `thetime`, SUM(`clicks`) as `clicks`, SUM(`impressions`) as `impressions` FROM `" . $wpdb->prefix . "adrotate_stats` WHERE `group` = %d AND `thetime` >= %d AND `thetime` <= %d GROUP BY `thetime` ASC;", $id, $start, $end), ARRAY_A);
    }
    if ($type == 'global-report') {
        $stats = $wpdb->get_results($wpdb->prepare("SELECT `thetime`, SUM(`clicks`) as `clicks`, SUM(`impressions`) as `impressions` FROM `" . $wpdb->prefix . "adrotate_stats` WHERE `thetime` >= %d AND `thetime` <= %d GROUP BY `thetime` ASC;", $start, $end), ARRAY_A);
    }
    if ($type == 'advertiser-global') {
        $stats = $wpdb->get_results($wpdb->prepare("SELECT `thetime`, SUM(`clicks`) as `clicks`, SUM(`impressions`) as `impressions` FROM `" . $wpdb->prefix . "adrotate_stats`, `" . $wpdb->prefix . "adrotate_linkmeta` WHERE `" . $wpdb->prefix . "adrotate_stats`.`ad` = `" . $wpdb->prefix . "adrotate_linkmeta`.`ad` AND `" . $wpdb->prefix . "adrotate_linkmeta`.`user` = %d AND (`" . $wpdb->prefix . "adrotate_stats`.`thetime` >= %d AND `" . $wpdb->prefix . "adrotate_stats`.`thetime` <= %d) GROUP BY `thetime` ASC;", $id, $start, $end), ARRAY_A);
    }
    if ($stats) {
        $dates = $clicks = $impressions = '';
        foreach ($stats as $result) {
            if (empty($result['clicks'])) {
                $result['clicks'] = '0';
            }
            if (empty($result['impressions'])) {
                $result['impressions'] = '0';
            }
            $dates .= ',"' . date_i18n("d M", $result['thetime']) . '"';
            $clicks .= ',' . $result['clicks'];
            $impressions .= ',' . $result['impressions'];
        }
        $dates = trim($dates, ",");
        $clicks = trim($clicks, ",");
        $impressions = trim($impressions, ",");
        $output = '';
        if ($adrotate_debug['stats'] == true) {
            $output .= "<p><strong>[DEBUG] Dates</strong><pre>" . $dates . "</pre></p>";
            $output .= "<p><strong>[DEBUG] Clicks</strong><pre>" . $clicks . "</pre></p>";
            $output .= "<p><strong>[DEBUG] Impressions</strong><pre>" . $impressions . "</pre></p>";
        }
        $output .= '<div id="chart-1" style="height:300px; width:100%;"></div>';
        $output .= adrotate_draw_graph($chartid, $dates, $clicks, $impressions);
        unset($stats, $dates, $clicks, $impressions);
    } else {
        $output = __('No data to show!', 'adrotate');
    }
    return $output;
}