PHPFusion\Forums\Admin\ForumAdminView::prune_users_posts PHP Метод

prune_users_posts() публичный статический Метод

Recalculate users post count
public static prune_users_posts ( $forum_id )
$forum_id
    public static function prune_users_posts($forum_id)
    {
        // after clean up.
        $result = dbquery("SELECT post_user FROM " . DB_FORUM_POSTS . " WHERE forum_id='" . $forum_id . "'");
        $user_data = array();
        if (dbrows($result) > 0) {
            while ($data = dbarray($result)) {
                $user_data[$data['post_user']] = isset($user_data[$data['post_user']]) ? $user_data[$data['post_user']] + 1 : 1;
            }
        }
        if (!empty($user_data)) {
            foreach ($user_data as $user_id => $count) {
                $result = dbquery("SELECT user_post FROM " . DB_USERS . " WHERE user_id='" . $user_id . "'");
                if (dbrows($result) > 0) {
                    $_userdata = dbarray($result);
                    $calculated_post = $_userdata['user_post'] - $count;
                    $calculated_post = $calculated_post > 1 ? $calculated_post : 0;
                    dbquery("UPDATE " . DB_USERS . " SET user_post='" . $calculated_post . "' WHERE user_id='" . $user_id . "'");
                }
            }
        }
    }