<?php 
/** 
 * jQuery File Tree PHP Connector 
 * Output a list of files for jQuery File Tree 
 * 
 * You may not change or alter any portion of this comment or credits 
 * of supporting developers from this source code or any supporting source code 
 * which is considered copyrighted (c) material of the original comment or credit authors. 
 * This program is distributed in the hope that it will be useful, 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
 * 
 * @copyright       (c) 2000-2016 XOOPS Project (www.xoops.org) 
 * @license             GNU GPL 2 (http://www.gnu.org/licenses/gpl-2.0.html) 
 * @author              Maxime Cointin (AKA Kraven30) 
 * @package             system 
 */ 
/* @var XoopsUser $xoopsUser */ 
/* @var XoopsModule $xoopsModule */ 
 
require dirname(dirname(dirname(dirname(__DIR__)))) . '/mainfile.php'; 
require XOOPS_ROOT_PATH . '/header.php'; 
 
// defined('XOOPS_ROOT_PATH') || exit('XOOPS root path not defined'); 
 
if (!is_object($xoopsUser) || !is_object($xoopsModule) || !$xoopsUser->isAdmin($xoopsModule->mid())) { 
    exit(_NOPERM); 
} 
 
if (isset($_REQUEST['op'])) { 
    $op = $_REQUEST['op']; 
} else { 
    @$op = 'default'; 
} 
 
switch ($op) { 
 
    // Display post 
    case 'display_post': 
        global $xoopsDB; 
 
        $GLOBALS['xoopsLogger']->activated = false; 
 
        include_once XOOPS_ROOT_PATH . '/include/comment_constants.php'; 
        include_once XOOPS_ROOT_PATH . '/kernel/module.php'; 
        include_once XOOPS_ROOT_PATH . '/modules/system/include/functions.php'; 
 
        $tables = array(); 
        // Count comments (approved only: com_status == XOOPS_COMMENT_ACTIVE) 
        $tables[] = array('table_name' => 'xoopscomments', 'uid_column' => 'com_uid', 'criteria' => new Criteria('com_status', XOOPS_COMMENT_ACTIVE)); 
        // Count forum posts 
        if (XoopsModule::getByDirname('newbb')) { 
            $tables[] = array('table_name' => 'bb_posts', 'uid_column' => 'uid'); 
        } 
        $uid         = system_CleanVars($_REQUEST, 'uid', 'int'); 
        $total_posts = 0; 
        foreach ($tables as $table) { 
            $criteria = new CriteriaCompo(); 
            $criteria->add(new Criteria($table['uid_column'], $uid)); 
            if (!empty($table['criteria'])) { 
                $criteria->add($table['criteria']); 
            } 
            $sql = 'SELECT COUNT(*) AS total FROM ' . $xoopsDB->prefix($table['table_name']) . ' ' . $criteria->renderWhere(); 
            if ($result = $xoopsDB->query($sql)) { 
                if ($row = $xoopsDB->fetchArray($result)) { 
                    $total_posts += $row['total']; 
                } 
            } 
        } 
 
        $sql = 'UPDATE ' . $xoopsDB->prefix('users') . " SET posts = '" . $total_posts . "' WHERE uid = '" . $uid . "'"; 
        if (!$result = $xoopsDB->queryF($sql)) { 
            redirect_header('admin.php?fct=users', 1, _AM_SYSTEM_USERS_CNUUSER); 
        } else { 
            echo $total_posts; 
        } 
        break; 
} 
 
 |