Вход Регистрация
Файл: admin/module_update_user_points.php
Строк: 107
<?php
/***************************************************************************
 *                           ©  KaspeR
 *                            -------------------
 ***************************************************************************/
 
define('IN_PHPBB'1);

$points_config['points_name'] = isset($points_config['points_name']) ? $points_config['points_name'] : 'Points';

//
// First we do the setmodules stuff for the admin cp.
//
if( !empty($setmodules) )
{
    
$filename basename(__FILE__);
    
$menu_name sprintf($lang['Points_update_user'], $points_config['points_name']);
    
$module['Points_sys_settings'][$menu_name] = $filename;
    return;
}

//
// Load default header
//
$phpbb_root_path './../';
require(
$phpbb_root_path 'extension.inc');
require(
'./pagestart.' $phpEx);

$confirm = (isset($HTTP_POST_VARS['confirm'])) ? TRUE FALSE;

if (!
$confirm)
{
    
$template->set_filenames(array(
        
'confirm' => 'confirm_body.tpl')
    );

    
$template->assign_vars(array(
        
'MESSAGE_TITLE'    => sprintf($lang['Points_update_user'], $points_config['points_name']),
        
'MESSAGE_TEXT'    => sprintf($lang['Confirm_points_update'], $points_config['points_name']),
        
'L_YES'            => $lang['Yes'],
        
'L_NO'            => $lang['No'],
        
'S_CONFIRM_ACTION'    => append_sid('module_update_user_points.' $phpEx),
        
'S_HIDDEN_FIELDS'    => '')
    );

    
$template->pparse('confirm');
    
    include(
'./page_footer_admin.'.$phpEx);
    exit;
}

$sql "SELECT user_id 
    FROM " 
USERS_TABLE 
    WHERE user_id <> " 
ANONYMOUS;
if (!
$result $db->sql_query($sql))
{
    
message_die(GENERAL_ERROR'Could not obtain the user information!'''__LINE____FILE__$sql);
}

$users $db->sql_fetchrowset($result);
$db->sql_freeresult($result);

$total_users count($users);

for(
$i 0$i $total_users$i++)
{
    
$user_id $users[$i]['user_id'];

    
$sql 'SELECT COUNT(u.user_id) as all_posts 
        FROM ' 
POSTS_TABLE ' p, ' TOPICS_TABLE ' t, ' FORUMS_TABLE ' f, ' USERS_TABLE ' u
        WHERE p.topic_id = t.topic_id AND t.forum_id = f.forum_id
        AND f.points_disabled = 0
        AND p.poster_id = ' 
$user_id '
        AND u.user_id = p.poster_id
        GROUP BY u.user_id'
;
    if (!
$result $db->sql_query($sql))
    {
        
message_die(GENERAL_ERROR'Could not obtain the posts information!'''__LINE____FILE__$sql);
    }

    
$all_posts $db->sql_fetchrow($result);
    
$db->sql_freeresult($result);
    
    
$sql 'SELECT COUNT(u.user_id) as total_topics 
        FROM ' 
TOPICS_TABLE ' t, ' FORUMS_TABLE ' f, ' USERS_TABLE ' u
        WHERE t.forum_id = f.forum_id
        AND f.points_disabled = 0
        AND u.user_id = t.topic_poster
        AND t.topic_poster = ' 
$user_id '
        GROUP BY u.user_id'
;
    if (!
$result $db->sql_query($sql))
    {
        
message_die(GENERAL_ERROR'Could not obtain the topics information!'''__LINE____FILE__$sql);
    }

    
$total_topics $db->sql_fetchrow($result);
    
$db->sql_freeresult($result);

    
$total_posts $all_posts['all_posts'] - $total_topics['total_topics'];
    
$total_topics $total_topics['total_topics'];

    
$points 0;
    
$points $points + ($total_posts $points_config['points_reply']);
    
$points $points + ($total_topics $points_config['points_topic']);
    
$points $points $points_config['points_register'];

    
$sql "UPDATE " USERS_TABLE 
        SET user_points = 
$points 
        WHERE user_id = 
$user_id";
    if (!
$db->sql_query($sql))
    {
        
message_die(GENERAL_ERROR'Could not update the user points!'''__LINE____FILE__$sql);
    }
}

message_die(GENERAL_MESSAGE'<br /><br />' sprintf($lang['Points_user_updated'], $points_config['points_name']). '<br /><br />');

?>
Онлайн: 2
Реклама