Mercurial > defr > drupal > ad
comparison weight/probability/ad_weight_probability.module @ 4:0d1c70d51fbe ad
maj premiere release officielle 2 module advertisement
author | sly |
---|---|
date | Mon, 27 Apr 2009 10:27:29 +0000 |
parents | 948362c2a207 |
children | 6aeff3329e01 |
comparison
equal
deleted
inserted
replaced
3:416ea999ed76 | 4:0d1c70d51fbe |
---|---|
1 <?php | 1 <?php |
2 // $Id: ad_weight_probability.module,v 1.1.4.5 2009/03/27 19:11:50 jeremy Exp $ | 2 // $Id: ad_weight_probability.module,v 1.1.4.6 2009/04/22 15:14:46 jeremy Exp $ |
3 | 3 |
4 /** | 4 /** |
5 * @file | 5 * @file |
6 * A plug in for the ad.module, allowing an admin to set the probability that | 6 * A plug in for the ad.module, allowing an admin to set the probability that |
7 * a given advertisement will be displayed. | 7 * a given advertisement will be displayed. |
46 case 'load': | 46 case 'load': |
47 return _ad_weight_probability_node_load($node); | 47 return _ad_weight_probability_node_load($node); |
48 case 'insert': | 48 case 'insert': |
49 case 'update': | 49 case 'update': |
50 if (user_access('configure ad probability')) { | 50 if (user_access('configure ad probability')) { |
51 // Fully load the node object to confirm that we are working with an | 51 if (is_object($node) && isset($node->adtype) && |
52 // advertisement. | 52 isset($node->probability) && isset($node->nid)) { |
53 $ad = node_load($node->nid); | |
54 if (isset($ad->adtype)) { | |
55 return _ad_weight_probability_node_save($node, $op); | 53 return _ad_weight_probability_node_save($node, $op); |
56 } | 54 } |
57 } | 55 } |
56 break; | |
58 case 'delete': | 57 case 'delete': |
59 return _ad_weight_probability_node_delete($node); | 58 return _ad_weight_probability_node_delete($node); |
60 } | 59 } |
61 } | 60 } |
62 | 61 |
97 | 96 |
98 /** | 97 /** |
99 * Helper function, save the probability to the database. | 98 * Helper function, save the probability to the database. |
100 */ | 99 */ |
101 function _ad_weight_probability_node_save($node) { | 100 function _ad_weight_probability_node_save($node) { |
102 if (is_object($node) && $node->nid) { | 101 if (isset($node->nid) && $node->nid) { |
103 db_query('UPDATE {ad_weight_probability} SET probability = %d WHERE aid = %d', $node->probability, $node->nid); | 102 db_query('UPDATE {ad_weight_probability} SET probability = %d WHERE aid = %d', $node->probability, $node->nid); |
104 if (!db_affected_rows()) { | 103 if (!db_affected_rows()) { |
105 db_query('INSERT INTO {ad_weight_probability} (aid, probability) VALUES(%d, %d)', $node->nid, $node->probability); | 104 db_query('INSERT INTO {ad_weight_probability} (aid, probability) VALUES(%d, %d)', $node->nid, $node->probability); |
106 } | 105 } |
107 } | 106 } |