Вот исправленная интеграция для 1.8.9:
1. Откройте файл /components/com_datsogallery/includes/datso.viewdetails.php
и замените на:
if ($ad_showcomment) {
$commentsPath = JPATH_SITE . DS . 'components'. DS . 'com_jcomments'. DS . 'jcomments.php';
if (file_exists($commentsPath)) {
require_once($commentsPath);
echo JComments::showComments($id, 'com_datsogallery', $imgtitle);
}
/*
Найдите:
}
if ($ad_showsend2friend) {
и замените на:
*/
}
if ($ad_showsend2friend) {
2. Откройте файл /components/com_datsogallery/datso.functions.php
Найдите::
if ($ad_showcomments) {
$and = ($is_editor)? '' : ' AND published = 1';
$db->setQuery('SELECT COUNT(cmtid) FROM #__datsogallery_comments WHERE cmtpic = '.$row1->id.$and);
$comments = $db->loadResult();
echo "<strong>"._DG_COMMENTS."</strong>: $comments";
}
и замените на:
if ($ad_showcomments) {
$comments = 0;
$commentsPath = JPATH_SITE . DS . 'components'. DS . 'com_jcomments'. DS . 'jcomments.php';
if (file_exists($commentsPath)) {
require_once($commentsPath);
$comments = JComments::getCommentsCount($row1->id, 'com_datsogallery');
}
echo "<strong>"._DG_COMMENTS."</strong>: $comments";
}
Найдите::
$db->setQuery("SELECT COUNT(cmtid) FROM #__datsogallery_comments WHERE cmtpic = ".$row->id);
$comments = $db->loadResult();
и замените на::
$comments = 0;
$commentsPath = JPATH_SITE . DS . 'components'. DS . 'com_jcomments'. DS . 'jcomments.php';
if (file_exists($commentsPath)) {
require_once($commentsPath);
$comments = JComments::getCommentsCount($row->id, 'com_datsogallery');
}
3. Откройте файл /components/com_datsogallery/includes/datso.lastcommented.php
Найдите::
$db->setQuery('SELECT count(*)'
.' FROM #__datsogallery AS d'
.' JOIN #__datsogallery_comments AS c'
.' ON c.cmtpic = d.id'
.' WHERE d.published = 1'
.' AND d.approved = 1'
);
$total = $db->loadResult();
$pageNav = new JPagination($total, $limitstart, $limit);
$page_nav_links = $pageNav->getPagesLinks();
$db->setQuery('SELECT a.*, cc.cmtid'
.' FROM #__datsogallery AS a,'
.' #__datsogallery_comments AS cc,'
.' #__datsogallery_catg AS ca'
.' WHERE a.id = cc.cmtpic'
.' AND a.catid = ca.cid'
.' AND cc.cmtid = (SELECT MAX(ab.cmtid)'
.' FROM #__datsogallery_comments AS ab'
.' WHERE a.id = ab.cmtpic)'
.' AND a.published = 1'
.' AND a.approved = 1'
.' AND ca.published = 1'
.' AND ca.access <= '.$user->get('aid')
.' GROUP BY a.id'
.' ORDER BY cc.cmtid DESC'
.' LIMIT '.$pageNav->limitstart.', '.$pageNav->limit
);
и замените на::
$db->setQuery('SELECT count(*)'
.' FROM #__datsogallery AS d'
.' JOIN #__jcomments AS c'
.' ON cc.object_id = d.id'
.' WHERE d.published = 1'
.' AND d.approved = 1'
);
$total = $db->loadResult();
$pageNav = new JPagination($total, $limitstart, $limit);
$page_nav_links = $pageNav->getPagesLinks();
$db->setQuery("select a.*, cc.id as cmtid "
." from #__datsogallery as a, #__jcomments as cc, "
." #__datsogallery_catg as ca "
." where a.id=cc.object_id "
." and cc.object_group='com_datsogallery' "
." and a.catid=ca.cid "
." and cc.id=(select max(ab.id) "
." from #__jcomments as ab "
." where a.id=ab.object_id and ab.object_group='com_datsogallery') "
.' AND a.published = 1'
.' AND a.approved = 1'
.' AND ca.published = 1'
.' AND ca.access <= '.$user->get('aid')
.' GROUP BY a.id'
.' ORDER BY cc.id DESC'
.' LIMIT '.$pageNav->limitstart.', '.$pageNav->limit
);
Найдите::
if ($ad_showcomments) {
$is_editor = (
strtolower($user->usertype) == 'editor'
|| strtolower($user->usertype) == 'administrator'
|| strtolower($user->usertype) == 'super administrator'
);
$and = ($is_editor)? '' : ' AND published = 1';
$db->setQuery("SELECT COUNT(cmtid) FROM #__datsogallery_comments WHERE cmtpic = ".$row->id.$and);
$comments = $db->loadResult();
echo _DG_COMMENTS.": $comments";
}
и замените на:
if ($ad_showcomments) {
$comments = 0;
$commentsPath = JPATH_SITE . DS . 'components'. DS . 'com_jcomments'. DS . 'jcomments.php';
if (file_exists($commentsPath)) {
require_once($commentsPath);
$comments = JComments::getCommentsCount($row->id, 'com_datsogallery');
}
echo _DG_COMMENTS.": $comments";
}
Дальше откройте все указанные файлы:
\components\com_datsogallery\includes\datso.downloads.php
\components\com_datsogallery\includes\datso.favorites.php
\components\com_datsogallery\includes\datso.lastadded.php
\components\com_datsogallery\includes\datso.owner.php
\components\com_datsogallery\includes\datso.popular.php
\components\com_datsogallery\includes\datso.purchases.php
\components\com_datsogallery\includes\datso.rating.php
\components\com_datsogallery\includes\datso.search.php
Найдите:
if ($ad_showcomments) {
$is_editor = (
strtolower($user->usertype) == 'editor'
|| strtolower($user->usertype) == 'administrator'
|| strtolower($user->usertype) == 'super administrator'
);
$and = ($is_editor)? '' : ' AND published = 1';
$db->setQuery("SELECT COUNT(cmtid) FROM #__datsogallery_comments WHERE cmtpic = ".$row->id.$and);
$comments = $db->loadResult();
echo _DG_COMMENTS.": $comments";
}
и замените на:
if ($ad_showcomments) {
$comments = 0;
$commentsPath = JPATH_SITE . DS . 'components'. DS . 'com_jcomments'. DS . 'jcomments.php';
if (file_exists($commentsPath)) {
require_once($commentsPath);
$comments = JComments::getCommentsCount($row->id, 'com_datsogallery');
}
echo _DG_COMMENTS.": $comments";
}