comparison ad.pages.inc @ 1:948362c2a207 ad

update advertisement
author pierre
date Thu, 02 Apr 2009 15:28:21 +0000
parents d8a3998dac8e
children
comparison
equal deleted inserted replaced
0:d8a3998dac8e 1:948362c2a207
1 <?php 1 <?php
2 // $Id: ad.pages.inc,v 1.1.2.6 2009/02/16 23:12:28 jeremy Exp $ 2 // $Id: ad.pages.inc,v 1.1.2.6.2.2 2009/02/28 23:39:47 jeremy Exp $
3 3
4 /** 4 /**
5 * @file 5 * @file
6 * Advertisement nodes pages and forms. 6 * Advertisement nodes pages and forms.
7 * 7 *
9 * Jeremy Andrews <jeremy@tag1consulting.com> 9 * Jeremy Andrews <jeremy@tag1consulting.com>
10 */ 10 */
11 11
12 function theme_node_ad($node, $yield_form = TRUE) { 12 function theme_node_ad($node, $yield_form = TRUE) {
13 $output = ''; 13 $output = '';
14 if (ad_adaccess($node, 'access statistics')) { 14 if (ad_permission($node, 'access statistics')) {
15 $output = theme('ad_status_display', $node); 15 $output = theme('ad_status_display', $node);
16 $output .= theme('ad_statistics_display', ad_statistics($node->nid)); 16 $output .= theme('ad_statistics_display', ad_statistics($node->nid));
17 } 17 }
18 if (ad_adaccess($node, 'access click history')) { 18 if (ad_permission($node, 'access click history')) {
19 $header = array( 19 $header = array(
20 array('data' => t('Time'), 'field' => 'timestamp', 'sort' => 'desc'), 20 array('data' => t('Time'), 'field' => 'timestamp', 'sort' => 'desc'),
21 array('data' => t('User'), 'field' => 'uid'), 21 array('data' => t('User'), 'field' => 'uid'),
22 array('data' => t('URL where clicked'), 'field' => 'url'), 22 array('data' => t('URL where clicked'), 'field' => 'url'),
23 ); 23 );
24 if (function_exists('click_filter_status_text') && user_access('view filtered clicks')) { 24 if (function_exists('click_filter_status_text') && user_access('view filtered clicks')) {
25 $header[] = array('data' => t('Status'), 'field' => 'status'); 25 $header[] = array('data' => t('Status'), 'field' => 'status');
26 } 26 }
27 $header[] = ''; 27 $header[] = '';
28 28
29 if ($node->nid) { 29 if (isset($node->nid) && $node->nid > 0) {
30 $sql = "SELECT cid, timestamp, uid, status, url FROM {ad_clicks} WHERE aid = %d"; 30 $sql = "SELECT cid, timestamp, uid, status, hostname, url FROM {ad_clicks} WHERE aid = %d";
31 $sql .= tablesort_sql($header); 31 $sql .= tablesort_sql($header);
32 $result = pager_query($sql, 25, 0, NULL, $node->nid); 32 $result = pager_query($sql, 25, 0, NULL, $node->nid);
33 33
34 while ($ad = db_fetch_object($result)) { 34 while ($ad = db_fetch_object($result)) {
35 if (module_exists('click_filter') && $ad->status != CLICK_VALID) { 35 if (module_exists('click_filter') && $ad->status != CLICK_VALID) {
176 array('data' => $statistics[$key]['views'] ? sprintf('%1.2f', ((int)$statistics[$key]['clicks'] / (int)$statistics[$key]['views']) * 100) .'%' : '0.00%'), 176 array('data' => $statistics[$key]['views'] ? sprintf('%1.2f', ((int)$statistics[$key]['clicks'] / (int)$statistics[$key]['views']) * 100) .'%' : '0.00%'),
177 ); 177 );
178 } 178 }
179 } 179 }
180 if (empty($rows) || (!$statistics['global']['views'] && !$statistics['global']['clicks'])) { 180 if (empty($rows) || (!$statistics['global']['views'] && !$statistics['global']['clicks'])) {
181 $statistics = '<p>'. t('There are no any statistics yet.') .'</p>'; 181 $statistics = '<p>'. t('There are currently no statistics for this advertisement.') .'</p>';
182 } 182 }
183 else { 183 else {
184 $statistics = theme('table', $header, $rows); 184 $statistics = theme('table', $header, $rows);
185 } 185 }
186 186
187 return theme('box', t('Statistics'), $statistics); 187 return theme('box', t('Statistics'), $statistics);
188 } 188 }
189 189
190 190 /**
191 * Display details about a specific click.
192 */
191 function ad_click_details($node, $cid) { 193 function ad_click_details($node, $cid) {
192 drupal_set_breadcrumb(array(l(t('Home'), NULL), l(check_plain($node->title), 'node/'. $node->nid))); 194 drupal_set_breadcrumb(array(l(t('Home'), NULL), l(check_plain($node->title), 'node/'. $node->nid)));
193 if ($click = db_fetch_object(db_query('SELECT * FROM {ad_clicks} WHERE cid = %d', $cid))) { 195 if ($click = db_fetch_object(db_query('SELECT * FROM {ad_clicks} WHERE cid = %d', $cid))) {
194 $ad = node_load($click->aid); 196 $ad = node_load($click->aid);
195 $account = user_load(array('uid' => $click->uid)); 197 $account = user_load(array('uid' => $click->uid));