<?php

if (!defined('XOOPS_ROOT_PATH')) exit();

class baseModulePreloadWating extends XCube_ActionFilter {
    function preBlockFilter()
    {
        $this->mController->mRoot->mEventManager->add('Legacyblock.Wating.Show',new XCube_InstanceDelegate($this,"callbackWatingShow"));
    }
    
    function callbackWatingShow(&$controller,&$eventArgs) {
        $xoopsDB =& Database::getInstance();
        // for News Module
        $module_handler =& xoops_gethandler('module');
        if ($module_handler->getCount(new Criteria('dirname', 'news'))) {
            $result = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("stories")." WHERE published=0");
            if ( $result ) {
                $blockVal = array();
                $blockVal['adminlink'] = XOOPS_URL."/modules/news/admin/index.php?op=newarticle";
                list($blockVal['pendingnum']) = $xoopsDB->fetchRow($result);
                $blockVal['lang_linkname'] = _MB_BASE_SUBMS;
                $eventArgs['modules'][] = $blockVal;
            }
        }
        // for MyLinks Module
        if ($module_handler->getCount(new Criteria('dirname', 'mylinks'))) {
            $result = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mylinks_links")." WHERE status=0");
            if ( $result ) {
                $blockVal = array();
                $blockVal['adminlink'] = XOOPS_URL."/modules/mylinks/admin/index.php?op=listNewLinks";
                list($blockVal['pendingnum']) = $xoopsDB->fetchRow($result);
                $blockVal['lang_linkname'] = _MB_BASE_WLNKS;
                $eventArgs['modules'][] = $blockVal;
            }
            $result = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mylinks_broken"));
            if ( $result ) {
                $blockVal = array();
                $blockVal['adminlink'] = XOOPS_URL."/modules/mylinks/admin/index.php?op=listBrokenLinks";
                list($blockVal['pendingnum']) = $xoopsDB->fetchRow($result);
                $blockVal['lang_linkname'] = _MB_BASE_BLNK;
                $eventArgs['modules'][] = $blockVal;
            }
            $result = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mylinks_mod"));
            if ( $result ) {
                $blockVal = array();
                $blockVal['adminlink'] = XOOPS_URL."/modules/mylinks/admin/index.php?op=listModReq";
                list($blockVal['pendingnum']) = $xoopsDB->fetchRow($result);
                $blockVal['lang_linkname'] = _MB_BASE_MLNKS;
                $eventArgs['modules'][] = $blockVal;
            }
        }
        // for MyDownloads Modules
        if ($module_handler->getCount(new Criteria('dirname', 'mydownloads'))) {
            $result = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mydownloads_downloads")." WHERE status=0");
            if ( $result ) {
                $blockVal = array();
                $blockVal['adminlink'] = XOOPS_URL."/modules/mydownloads/admin/index.php?op=listNewDownloads";
                list($blockVal['pendingnum']) = $xoopsDB->fetchRow($result);
                $blockVal['lang_linkname'] = _MB_BASE_WDLS;
                $eventArgs['modules'][] = $blockVal;
            }
            $result = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mydownloads_broken")."");
            if ( $result ) {
                $blockVal = array();
                $blockVal['adminlink'] = XOOPS_URL."/modules/mydownloads/admin/index.php?op=listBrokenDownloads";
                list($blockVal['pendingnum']) = $xoopsDB->fetchRow($result);
                $blockVal['lang_linkname'] = _MB_BASE_BFLS;
                $eventArgs['modules'][] = $blockVal;
            }
            $result = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mydownloads_mod")."");
            if ( $result ) {
                $blockVal = array();
                $blockVal['adminlink'] = XOOPS_URL."/modules/mydownloads/admin/index.php?op=listModReq";
                list($blockVal['pendingnum']) = $xoopsDB->fetchRow($result);
                $blockVal['lang_linkname'] = _MB_BASE_MFLS;
                $eventArgs['modules'][] = $blockVal;
            }
        }
        // for Comments
        $result = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("xoopscomments")." WHERE com_status=1");
        if ( $result ) {
            $blockVal = array();
            $blockVal['adminlink'] = XOOPS_URL."/modules/system/admin.php?module=0&amp;status=1&amp;fct=comments";
            list($blockVal['pendingnum']) = $xoopsDB->fetchRow($result);
            $blockVal['lang_linkname'] =_MB_BASE_COMPEND;
            $eventArgs['modules'][] = $blockVal;
        }
    }
}
?>
