| 1 |
<?php |
<?php |
| 2 |
// $Id: flag.module,v 1.11.2.72.2.25 2009/11/02 06:30:10 quicksketch Exp $ |
// $Id: flag.module,v 1.11.2.72.2.26 2009/11/02 21:20:06 quicksketch Exp $ |
| 3 |
|
|
| 4 |
/** |
/** |
| 5 |
* @file |
* @file |
| 797 |
* |
* |
| 798 |
* @param $fid |
* @param $fid |
| 799 |
* The flag object. |
* The flag object. |
| 800 |
* @param $uid |
* @param $account |
| 801 |
* The user ID on behalf the trimming will occur. |
* The user object on behalf the trimming will occur. |
| 802 |
* @param $cutoff_size |
* @param $cutoff_size |
| 803 |
* The number of flaggings allowed. Any flaggings beyond that will be trimmed. |
* The number of flaggings allowed. Any flaggings beyond that will be trimmed. |
| 804 |
*/ |
*/ |
| 805 |
function flag_trim_flag($flag, $uid, $cutoff_size) { |
function flag_trim_flag($flag, $account, $cutoff_size) { |
| 806 |
$result = db_query("SELECT * FROM {flag_content} WHERE fid = %d AND (uid = %d OR uid = 0) ORDER BY timestamp DESC", $flag->fid, $uid); |
$result = db_query("SELECT * FROM {flag_content} WHERE fid = %d AND (uid = %d OR uid = 0) ORDER BY timestamp DESC", $flag->fid, $account->uid); |
| 807 |
$i = 1; |
$i = 1; |
| 808 |
while ($row = db_fetch_object($result)) { |
while ($row = db_fetch_object($result)) { |
| 809 |
if ($i++ > $cutoff_size) { |
if ($i++ > $cutoff_size) { |
| 810 |
flag('unflag', $flag->name, $row->content_id, $uid); |
flag('unflag', $flag->name, $row->content_id, $account); |
| 811 |
} |
} |
| 812 |
} |
} |
| 813 |
} |
} |