function mod_comments($module_id, $cfg) { $inDB = cmsDatabase::getInstance(); $inUser = cmsUser::getInstance(); if (!isset($cfg['showrss'])) { $cfg['showrss'] = 1; } if (!isset($cfg['minrate'])) { $cfg['minrate'] = 0; } if (!isset($cfg['showguest'])) { $cfg['showguest'] = 0; } if (!sizeof($cfg['targets'])) { return true; } cmsCore::loadModel('comments'); $model = new cms_model_comments(); $model->initAccess(); // Комментарии только нужного назначения $model->whereTargetIn($cfg['targets']); // Если не показывать гостей, добавляем условие if (!$cfg['showguest']) { $model->whereOnlyUsers(); } // Администраторам и админам показываем все комментарии if (!($inUser->is_admin || $model->is_can_moderate)) { $model->whereIsShow(); } // Комментарии в зависимости от рейтинга if ($cfg['minrate'] != 0) { $model->whereRatingOver($cfg['minrate']); } $inDB->orderBy('c.pubdate', 'DESC'); $inDB->limitPage(1, $cfg['shownum']); $comments = $model->getComments(true, false, true); if (!$comments) { return false; } cmsPage::initTemplate('modules', 'mod_comments')->assign('comments', $comments)->assign('cfg', $cfg)->display('mod_comments.tpl'); return true; }