Сегодня утром задался этим вопросом,изучил форум но ничего здесь не нашел.Видимо никто так и не смог сделать, или те кто сделал как партизаны молчат и не делятся.Собственно изменений делал довольно много, но после определенных тестов выяснилось что далеко не все это надо делать.Вообщем у меня все работает.Выложу приблизительный мануал ( по идее этих простых изменений должно быть достаточно чтобы работали комментарии и их счетчик на мини-эскизах):
1.Откройте файл /components/com_datsogallery/includes/datso.image.php:
замените на
if ($ad_showcomment) {
$commentsPath = JPATH_SITE . DS . 'components'. DS . 'com_jcomments'. DS . 'jcomments.php';
if (file_exists($commentsPath)) {
require_once($commentsPath);
echo "<div class=\"dg_head_background\">". JComments::showComments($id, 'com_datsogallery', $imgtitle). "</div>";
}
Также нужно закомментировать следующие блоки с помощью /* код */ или просто их удалить:
/* $cmtip = getIpAddress();
$and = (array_intersect($is_admin, $userGroups))? '':' AND published = 1';
$db->setQuery('SELECT * FROM #__datsogallery_comments WHERE cmtpic = '.$obj->id.$and.' ORDER BY cmtid ASC');
$rows = $db->loadObjectList();
echo "<div class=\"dg_head_background\">".JText::_('COM_DATSOGALLERY_COMMENT1').": ".count($rows)."</div>"; */
и
/* echo '<ul id="list">';
foreach ($rows as $row) {
$db->setQuery("SELECT id FROM #__users WHERE email = '".$row->cmtmail."'");
$user_id = $db->loadResult();
if($ad_js || $ad_cb) {
$avatar = ($user_id)? getUserAvatar($user_id) : getUserAvatar(0);
} elseif($ad_kunena) {
$avatar = ($user_id)? getUserAvatar($user_id) : getUserAvatar(0);
} else {
$avatar = ($user_id)? getUserAvatar($user_id) : getUserAvatar(0);
}
$action = ($row->published != 0)? $appruve : $unappruve;
if (array_intersect($is_admin, $userGroups) || $cmtip == $row->cmtip) {
echo "<script type=\"text/javascript\">
datso(document).ready(function(){
datso('#".$row->cmtid."-edit').editInPlace({
bg_img_over: '".$bg_img_over." url('+ siteurl +'/components/com_datsogallery/images/".$dg_theme."/edit.png) no-repeat bottom right',
bg_img_out: '".$bg_img_out."',
show_buttons: true,
save_button: '<button class=\"inplace_save dg_btn\"><span><span>".JText::_('COM_DATSOGALLERY_SAVE')."</span></span></button>',
cancel_button:'<button class=\"inplace_cancel dg_btn\"><span><span>".JText::_('COM_DATSOGALLERY_CANCEL')."</span></span></button>',
field_type: 'textarea',
url: 'index.php?option=com_datsogallery&task=editcomment&format=raw',
update_value: 'cmttext',
element_id: 'cmtid',
field_type: 'textarea',
saving_image: '".JURI::base(true)."/components/com_datsogallery/images/".$dg_theme."/loading.gif',
success: function(response){ datso('#".$row->cmtid."-edit').html(response); }
});
});
</script>";
}
echo "<li id=\"".$row->cmtid."\" class=\"pane\">\n";
echo "<div class=\"imgblock\">";
echo $avatar;
echo "</div>";
echo '<div style="display:block;min-height:60px;margin-left:70px;padding-bottom:20px;cursor: text;" id="'.$row->cmtid.'-edit">'.nl2br($row->cmttext).'</div>';
echo '<div class="date">'.sprintf(JText::_('COM_DATSOGALLERY_ON'), $row->cmtname, strftime($ad_datef, (int) $row->cmtdate)).'</div>';
if (array_intersect($is_admin, $userGroups)) {
echo '<div class="control"><a class="btn-delete">'.JText::_('COM_DATSOGALLERY_DELETE').'</a> | '.$action.' | <a class="btn-spam">Spam</a></div>';
}
echo "</li>\n";
}
echo "</ul>\n";
}
else {
echo '<div id="nocom"></div>';
}
if ($ad_anoncomment || $user->id) {
if($ad_js || $ad_cb) {
$avatar = ($user->id)? getUserAvatar($user->id) : getUserAvatar(0);
} elseif($ad_kunena) {
$avatar = ($user->id)? getUserAvatar($user->id) : getUserAvatar(0);
} else {
$avatar = getGravatar($user->email);
}
$brd = ($ad_showsend2friend && $user->id)? '' : ' style="border-bottom: 1px solid #DCDCDC"';
*/
<div class="dg_body_background_comment"<?php echo $brd; ?>>
<div class="imgblock" style="position:relative;float:right"><?php echo $avatar;?></div>
<p>
<label for="cmtname"><?php echo JText::_('COM_DATSOGALLERY_YOUR_NAME');?></label>
<?php if ($user->id) {?>
<input class="inputbox" id="cmtname" value="<?php echo $user->name;?>" size="40" disabled="disabled">
<?php }else {?>
<input class="inputbox" id="cmtname" value="" size="40">
<?php }?>
</p>
<p>
<label for="cmtmail"><?php echo JText::_('COM_DATSOGALLERY_YOUR_MAIL');?></label>
<?php if ($user->id) {?>
<input class="inputbox" id="cmtmail" value="<?php echo $user->email;?>" size="40" disabled="disabled">
<?php }else {?>
<input class="inputbox" id="cmtmail" value="" size="40">
<?php }?>
</p>
<p>
<label for="cmttext"><?php echo JText::_('COM_DATSOGALLERY_YOUR_COMMENT');?></label>
<textarea id="cmttext" style="width: 100%" rows="4" cols="10" class="resizable"></textarea>
</p>
<p>
<?php
$refreshimage = '<img src="'.JURI::base().'components/com_datsogallery/images/'.$dg_theme.'/refresh.png" alt="Refresh Security Image" align="absmiddle" />';
$out = '';
$out .= '<img src="'.JURI::base().'index.php?option=com_datsogallery&task=captcha&format=raw" id="dgcaptcha" alt="Security Image" align="absmiddle" /> ';
$out .= '<input class="inputbox" type="text" style="font-weight:bold" name="captcha" value="" size="4" id="dgcaptchaval" /><button class="dg_btn" id="btn-submit"><span><span>'.JText::_('COM_DATSOGALLERY_SEND').'</span></span></button>';
$out .= '<a id="rfc" style="cursor: pointer" onclick="dgCaptcha(\''.JURI::base().'index.php?option=com_datsogallery&task=captcha&format=raw\'); return false;" title="Refresh">'.$refreshimage.'</a>';
echo $out;
?>
</p>
2. Откройте файл /components/com_datsogallery/datso.functions.php:
$db->setQuery('SELECT COUNT(cmtid) FROM #__datsogallery_comments WHERE cmtpic = '.$row1->id.$and);
Замените на
$db->setQuery('SELECT COUNT(object_id) FROM #__jcomments WHERE object_id = '.$row1->id.$and);
PS: Пробуйте и у вас получиться, главное не сдаваться)