Крот

Крот

Никакой код не может быть быстрее, чем отсутствие кода.
+459
Репутация
6376
Рейтинг
0
Крот Крот сообщения на Ajax 1.9 12 лет назад
и еще, если я прочитал все сообщения в окне - в модуле красная полоса продолжает моргать
0
Крот Крот сообщения на Ajax 1.9 12 лет назад
поставил на InstantCMS 1.9+ патч безопасности - при отправке сообщения из ajax окна вылетает ошибка jewix
0
Крот Крот Исправляем ошибку меню для ссылок из url_rewrite.php. Хак. 12 лет назад
посмотрел, да так проще
НО:
второе решение, также как и мое содержит один нюанс -
есть два пункта меню
1) /catalog/1001
2) /catalog

при клике на первое - активным становится второе. решается сначала перебором полных путей, а затем, если не найдено перебор частичных путей.
вот теперь меня метод menuID() устраивает полностью )))

Код PHP:
  1. /**
  2. * Возвращает ID текущего пункта меню
  3. * @return int
  4. */
  5. public function menuId(){
  6. //если menu_id был определен ранее, то вернем и выйдем
  7. if ($this->menu_id) { return $this->menu_id; }
  8. $view = self::request('view', 'str', '');
  9. if ($this->is_content){
  10. $uri = substr($this->uri, strlen('content/'));
  11. } else {
  12. $uri = $this->uri;
  13. }
  14. $uri = '/'.$uri;
  15. $real_uri = '/'.$this->real_uri;
  16. //флаг, показывающий было совпадение URI и ссылки пунта меню
  17. //полным или частичным
  18. $is_strict = false;
  19. //главная страница?
  20. $menuid = ($uri == '/' ? 1 : 0);
  21. if ($menuid == 1) {
  22. $this->is_menu_id_strict = 1;
  23. return $menuid;
  24. }
  25. //перевернем массив меню чтобы перебирать от последнего пункта к первому
  26. $menu = array_reverse($this->menu_struct);
  27. $fnd=false;
  28. //перебираем меню в поисках текущего пункта
  29. foreach($menu as $item){
  30. if (!$item['link']) { continue; }
  31. // uri с учетом имени хоста
  32. $full_uri = HOST . $uri;
  33. if (in_array($item['link'], array($uri, $full_uri, $real_uri))){
  34. $menuid = $item['id'];
  35. $is_strict = true; //полное совпадение
  36. $fnd=true;
  37. break;
  38. }
  39. }
  40. //перебираем меню в поисках текущего пункта
  41. if (!$fnd)
  42. foreach($menu as $item){
  43. if (!$item['link']) { continue; }
  44. // uri с учетом имени хоста
  45. $full_uri = HOST . $uri;
  46. //частичное совпадение ссылки и адреса (по началу строки)?
  47. $uri_first_part = mb_substr($uri, 0, mb_strlen($item['link']));
  48. $real_uri_first_part = mb_substr($real_uri, 0, mb_strlen($item['link']));
  49. if (in_array($item['link'], array($uri_first_part, $real_uri_first_part))){
  50. $menuid = $item['id'];
  51. break;
  52. }
  53. }
  54. $this->menu_id = $menuid;
  55. $this->is_menu_id_strict = $is_strict;
  56. return $menuid;
  57. }
+2
Крот Крот Добавление комментариев на AJAX. Хак. InstantCMS 1.9 12 лет назад
в личку сайт пришлите, тут ничего не видно
+1
Крот Крот Добавление комментариев на AJAX. Хак. InstantCMS 1.9 12 лет назад
по сути, у нас при отображении всегда есть id последнего комментария...
можно по таймеру получить комментарии >id и вывести их под соответствующие родительские комментарии (parent)
+1
Крот Крот Добавление комментариев на AJAX. Хак. InstantCMS 1.9 12 лет назад
хотя можно просто тупо все дерево из аякса менять - но тогда смысл пропадает
+1
Крот Крот Добавление комментариев на AJAX. Хак. InstantCMS 1.9 12 лет назад
по хорошему после клика на отправить нужно скрыть все и повесить анимацию отправки

еще думаю сделать отслежку и вывод новых комментариев, но там посложнее будет
+1
Крот Крот Добавление комментариев на AJAX. Хак. InstantCMS 1.9 12 лет назад
это не ошибка странная... это одной переменной $model прицепляется сначала класс одного компонента, а потом другого... и все в пределах одной функции...

странно все-таки, почему у меня в хроме работало??? smile

Разработчики, поправьте код!!!
+2
+1
Крот Крот Добавление комментариев на AJAX. Хак. InstantCMS 1.9 12 лет назад
тоже самое в опере...
странная ошибка
поправил
0
Крот Крот Плагин Мои подписки для комментариев и форума 2.0. 12 лет назад
будет и лента и емейлы...

по мне вот, лента даже как-то больше нравиться))) она почту мою не засоряет
+1
Крот Крот iMaps, Уведомление об ошибке в ЛС 12 лет назад
режет в базе - похоже разработчики недодумали

+в карму за уведомление ЛС - нужная штука
+2
Крот Крот iMaps, Уведомление об ошибке в ЛС 12 лет назад
еще, если кто-то пишет жалобу, обычно "у вас про наш магазин-фирму написано так, а надо вот так, так и так"
текст жалобы режется (не сохраняется полностью) и какой толк от этих жалоб? только минус в карму сайту
0
Крот Крот Плагин Мои подписки для комментариев и форума 2.0. 12 лет назад
а зачем проверять, если по onload загружено уже?
тем более, если лента будет обновляться по таймеру
+1
Крот Крот Плагин Мои подписки для комментариев и форума 2.0. 12 лет назад
будет по onLoad странички... грузить каждый раз думаю не стоит, только при входе в профиль
Например я отлистал в ленте вниз 4 страницы, переключился на вкладку "сообщения", написал, потом обратно в ленту, а тут все на месте и листать больше не нужно

хотя в настройки плагина можно сделать, вдруг у кого-то нужно именно так!
так и сделаю)
0
Крот Крот Плагин Мои подписки для комментариев и форума 2.0. 12 лет назад
можно посмотреть еще раз демо
внес изменения -
теперь есть просмотр по объектам, т.е. статья и ниже комментарии к ней
+3
Крот Крот Плагин Мои подписки для комментариев и форума 2.0. 12 лет назад
да этот функционал ожидается в следующих версиях
0
Крот Крот Компонент Инвайтер v.1.5 stable 12 лет назад
спасибо, постараюсь)
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.