Вход Регистрация
Файл: modules/mod_userfiles/module.php
Строк: 68
<?php
/******************************************************************************/
//                                                                            //
//                             InstantCMS v1.10                               //
//                        http://www.instantcms.ru/                           //
//                                                                            //
//                   written by InstantCMS Team, 2007-2012                    //
//                produced by InstantSoft, (www.instantsoft.ru)               //
//                                                                            //
//                        LICENSED BY GNU/GPL v2                              //
//                                                                            //
/******************************************************************************/

function fetchFiles($sql){

    
$inDB       cmsDatabase::getInstance();
    
$files      = array();

    
$result     $inDB->query($sql);

    if (
$inDB->num_rows($result)){
        while(
$file $inDB->fetch_assoc($result)){
            
$file['size']   = round(($file['filesize'] / 1024) / 10242);
            
$files[]        = $file;
        }
    }

    return 
$files;

}

function 
mod_userfiles($module_id){

        
$inCore     cmsCore::getInstance();
        
$inDB       cmsDatabase::getInstance();

        
$cfg        $inCore->loadModuleConfig($module_id);

        if (!isset(
$cfg['sw_stats']))       { $cfg['sw_stats']      = 1;  }
        if (!isset(
$cfg['sw_latest']))      { $cfg['sw_latest']     = 1;  }
        if (!isset(
$cfg['sw_popular']))     { $cfg['sw_popular']    = 1;  }
        if (!isset(
$cfg['num_latest']))     { $cfg['num_latest']    = 5;  }
        if (!isset(
$cfg['num_popular']))    { $cfg['num_popular']   = 5;  }

        
$latest     = array();
        
$popular    = array();
        
$stats      = array();

        
//-------------------------- Новые файлы --------------------------------------

        
if ($cfg['sw_latest'] && $cfg['num_latest']){

            
$sql "SELECT f.*,
                           u.nickname as user_nickname, u.login as user_login
                    FROM cms_user_files f, cms_users u
                    WHERE f.user_id = u.id AND f.allow_who = 'all'
                    ORDER BY f.pubdate desc
                    LIMIT 
{$cfg['num_latest']}";

            
$latest fetchFiles($sql);

        }

        
//-------------------------- Популярные файлы ---------------------------------

        
if ($cfg['sw_popular'] && $cfg['num_popular']){

            
$sql "SELECT f.*,
                           u.nickname as user_nickname, u.login as user_login
                    FROM cms_user_files f, cms_users u
                    WHERE f.user_id = u.id AND f.allow_who = 'all'
                    ORDER BY f.hits desc
                    LIMIT 
{$cfg['num_popular']}";

            
$popular fetchFiles($sql);

        }

        
//----------------------------- Статистика ------------------------------------

        
if ($cfg['sw_stats']){

            
$stats['total_files']   = $inDB->rows_count('cms_user_files'"allow_who='all'");

            
$stats['total_size']    = 0;

            
$sql "SELECT SUM(f.filesize) as bytes
                    FROM cms_user_files f
                    WHERE f.allow_who = 'all'"
;

            
$result $inDB->query($sql);

            if (
$inDB->num_rows($result)){
                
$size                   $inDB->fetch_assoc($result);
                
$stats['total_size']    = round(($size['bytes'] / 1024) / 10242);
            }
            
        }        

        
//-----------------------------------------------------------------------------

        
if (!$popular && !$latest){
            echo 
'<p>Нет файлов.</p>';
            return 
true;
        }

        
$smarty $inCore->initSmarty('modules''mod_userfiles.tpl');

        if (
$latest$smarty->assign('latest'$latest);
        if (
$popular$smarty->assign('popular'$popular);
        if (
$stats$smarty->assign('stats'$stats);

        
$smarty->assign('cfg'$cfg);
        
$smarty->display('mod_userfiles.tpl');
        
        return 
true;
        
}
?>
Онлайн: 1
Реклама