Помогите решить проблему с модулем Архив новостей и компонентом Архив материалов

#1 30 декабря 2009 в 14:45
Так как выяснилось, что не работает этот модуль только у меня, то может кто-то поможет решить эту досадную проблему:
Модуль Архив новостей — переход на любой из месяцев приводит на 404
В настройках модуля выставлено:
Источник статей: Каталог и архив
Показывать статьи из раздела: Все разделы
Переходить в меню: непереходить (так было выставлено и на 1.5.2)при
переходе на декабрь, кпримеру, переходит по такой ссылке alpizza.ax3.net/arhive/1/2009/12

Компонент Архив материалов
Так как стало работать перемещение просроченых статей в архив статей, я попытался выделить несколько статей, которые хотел удалить, нажал большую кнопку "Удалить выбранное" и появилась такая ошибка:
Fatal error: Call to undefined function cmsClearTags() in /мой сайт/admin/includes/cp.php on line 985
когда нажимаешь по отдельности удалить статью из архива статей, только не на большую кнопку "Удалить выбранное", а на кнопку удаления напротив самой статьи, тогда всё нормально удаляет, но так не удобно, потому что удалять можно по одной статье, и потом переходит во все статьи, и потом снова надо будет переходить в архив статей, чтобы удалить следующую статью.
#2 31 декабря 2009 в 13:57
Друзья, ну подскажите хоть какие-то варианты решения этих двух проблем, может подскажите надо подправить?
#3 31 декабря 2009 в 14:12
Здесь в файле /мой сайт/admin/includes/cp.php on line 985 вот такая запись:
  1. cmsClearTags('content', $value);
, что в ней неправильного?
#4 1 января 2010 в 11:14
Я непойму почему никто не отвечает неужели у всех работает архив новостей, я пробовал устанавливать уже несколько раз чистую установку Instant CMS 1.5.3 с демо данными, создавал для каждой установки разные базы, и всёравно те самые ошибки, при переходе на любой из месяцев в архиве новостей открывает страницу 404, а при удалении статей кнопкой Удалить выбранные из архива материалов, выводит ошибку Fatal error: Call to undefined function cmsClearTags() in /мой сайт/admin/includes/cp.php on line 985
Неужели у всех работает, или никто не проверял?
#5 15 января 2010 в 13:24
Ну помогите решить эту проблему хотя бы с массовым удалением статей из архива (ошибка Fatal error: Call to undefined function cmsClearTags() in /www/ax3.net/a/l/alpizza/home/site/admin/includes/cp.php on line 985). Или надо в багтрекер писать?
#6 15 января 2010 в 14:07


Ну помогите решить эту проблему хотя бы с массовым удалением статей из архива (ошибка Fatal error: Call to undefined function cmsClearTags() in /www/ax3.net/a/l/alpizza/home/site/admin/includes/cp.php on line 985). Или надо в багтрекер писать?

Юрий
Посмотри есть ли функция cmsClearTags в файле /core/lib_tags.php
Должна быть. У меня она на строке 38.
#7 15 января 2010 в 14:23

Посмотри есть ли функция cmsClearTags в файле /core/lib_tags.php
Должна быть. У меня она на строке 38.

Юра
У меня есть такое
  1. function cmsClearTags($target, $item_id){
  2. $inDB = cmsDatabase::getInstance();
  3. $inDB->query("DELETE FROM cms_tags WHERE target='$target' AND item_id = $item_id");
  4. return;
Причём эта же ошибка с удалением была и в версии 1.5.2 и на локалке и на хосте, осталась и в 1.5.3. По одному удаляет, а кнопкой Удалить выбранные выдаёт вот эту ошибку.
#8 15 января 2010 в 14:33

Юрий, Есть подозрение что трабла в том же menuid

т.е. правильная ссылка на архив — alpizza.ax3.net/arhive/0/2009/12

Maximov
Если можно, то подскажите как мне это исправить, эта ссылка от моей отличается цифрой /arhive/0/2009/ на моём сайте же /arhive/1/2009/
#9 15 января 2010 в 16:21

Проверь настройки модуля
Переходить в меню: Не переходить

Maximov
Да, так и настроено. (сейчас снова вывел этот модуль на свой сайт, ранее решил просто поставить календарь статей вместо этого модуля).
Maximov, Вы бы немогли бы помочь решить проблему с удалением статей из архива статей, все мои действия ошибки описаны выше.
#10 15 января 2010 в 17:00
Ссылка получается такая alpizza.ax3.net/arhive//2010/01 и соответственно ведёт на 404
вобще весь код этого файла такой
  1. function mod_arhive($module_id){
  2. $inCore = cmsCore::getInstance();
  3. $inDB = cmsDatabase::getInstance();
  4. global $_LANG;
  5. $cfg = $inCore->loadModuleConfig($module_id);
  6. if ($cfg['menuid']>0) {
  7. $menuid = $cfg['menuid'];
  8. } else {
  9. $menuid = $inCore->menuId();
  10. }
  11.  
  12. $sql = "SELECT DATE_FORMAT( pubdate, '%M, %Y' ) fdate, DATE_FORMAT( pubdate, '%Y' ) year, DATE_FORMAT( pubdate, '%m' ) month, COUNT( id ) num
  13. FROM cms_content"."\n";
  14.  
  15. if($cfg['cat_id']>0){
  16. $sql .= "WHERE category_id = ".$cfg['cat_id'];
  17. if ($cfg['source']!='both'){
  18. if ($cfg['source']=='arhive'){
  19. $sql .= " AND is_arhive = 1". "\n";
  20. } else {
  21. $sql .= " AND is_arhive = 0". "\n";
  22. }
  23. } else {
  24. $sql .= "\n";
  25. }
  26. }
  27.  
  28. $sql .= "GROUP BY DATE_FORMAT(pubdate, '%M, %Y')"."\n";
  29. $sql .= "ORDER BY pubdate DESC";
  30.  
  31. $result = $inDB->query($sql) ;
  32.  
  33. if ($inDB->num_rows($result)>0){
  34. while ($item = $inDB->fetch_assoc($result)){
  35. $item['fdate'] = $inCore->getRusDate($item['fdate']);
  36. echo '<div class="arhive_month"><a href="/arhive/'.$menuid.'/'.$item['year'].'/'.$item['month'].'">'.$item['fdate'].'</a> ('.$item['num'].')</div>';
  37.  
  38. }
  39. } else { echo '<p>'.$_LANG['ARHIVE_NOT_MATERIAL'].'</p>'; }
  40. return true;
  41. }
  42. ?>
#11 15 января 2010 в 17:41

Ну попробуй жестко сказать
Код:

$menuid = 0;

Это не решение проблемы в целом.
Но для частного случая пойдет.
Главное для себя пометку сделай или комментарии в коде оставь о том что менял.

Maximov
Это подействовало, огромное спасибо, вот только непонятно почему такая проблема возникает и на локалке дома (ставил несколько раз 1.5.3 и базы менял) и на хостинге такая же ошибка.
#12 18 января 2010 в 13:25
Ошибка с (ошибка Fatal error: Call to undefined function cmsClearTags() in /www/ax3.net/a/l/alpizza/home/site/admin/includes/cp.php on line 985) так и не решена.
#13 1 февраля 2010 в 17:01
Люди, ну отпишитесь, пожалуйста, у Вас работает массовое удаление статей из архива материалов (Админка — контент — статьи — архив материалов выбрать несколько и нажать кнопку Удалить выбранное)?
#14 2 февраля 2010 в 23:26

Ни у кого не работает.

Что бы работало:
В файл /admin/applets/arhive.php
после строки
Код:

$inCore = cmsCore::getInstance();

добавляем
Код:

$inCore->loadLib(tags);

Maximov
Преогромное спасибо, реально заработало, Вы как всегда выручили!!!
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.