Recent Topics

Все моды, созданные нашим сообществом для phpBB 2.0.x, будут анонсированы тут. Вся техническая поддержка по этим модам оказывается в этом форуме.

Сообщение PekopT 03.12.2007 15:35

PekopT писал(а):А у меня вот такой вопросик: возможно ли обновление Java скрипта без перезагрузки страницы ? как я понимаю, это и есть AJAX. а еще я слышал что к Glance такую штуку прикрутили.... было бы очень интересно такое увидеть и в Recent Topics...

RedNaxi писал(а):<script language='JavaScript' type='text/javascript' src='http://www.xxx.com/recent.php'></script>

то очевидно можно.

надо немного подумать


хм, вопрос открыт, господа кто знает ajax, уделите внимание пожалуйста.
PekopT
phpBB 1.2.1
 
Сообщения: 21
Зарегистрирован: 12.10.2007 12:00


Сообщение RedNaxi 03.12.2007 15:41

если до меня никто не сделает завтра займусь этим вопросом.
Программирую всякую чушь за еду.
Контакт
Над этим, и не только, я когда-то работал.
Аватара пользователя
RedNaxi
phpBB 2.0.18
 
Сообщения: 1154
Зарегистрирован: 21.02.2007 3:05
Откуда: BMK :)

Сообщение PekopT 08.12.2007 17:26

RedNaxi ну так что?

господа, это буде стоящая весчь. почему бы не попробывать?
PekopT
phpBB 1.2.1
 
Сообщения: 21
Зарегистрирован: 12.10.2007 12:00

Сообщение Xpert 09.12.2007 10:52

Я попробую сегодня, все равно мод обновлять надо.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Xpert
phpBB Guru
 
Сообщения: 5710
Зарегистрирован: 13.03.2004 22:27
Откуда: msk.ru

Сообщение sires 10.12.2007 6:47

чего я мог не так сделать?
при обращении forum/recent.php, выдает:
document.writeln('Игра 15.12.07 (регистрация, об…
\n'); document.writeln('Поздравляю!
sires
phpBB 1.0.0
 
Сообщения: 4
Зарегистрирован: 02.12.2007 2:13

Сообщение Xpert 10.12.2007 8:19

Уже второй вопрос на последдних страницах. Это правильно - файл отдает JavaScript.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Xpert
phpBB Guru
 
Сообщения: 5710
Зарегистрирован: 13.03.2004 22:27
Откуда: msk.ru

Сообщение sires 10.12.2007 8:38

Xpert писал(а):Уже второй вопрос на последдних страницах. Это правильно - файл отдает JavaScript.

:D Спасибо! Все понял... Получилось!
sires
phpBB 1.0.0
 
Сообщения: 4
Зарегистрирован: 02.12.2007 2:13

Сообщение PekopT 11.12.2007 12:59

Xpert,
что там с ajax для Recent Topics ?

есть какие-то подвижки?
PekopT
phpBB 1.2.1
 
Сообщения: 21
Зарегистрирован: 12.10.2007 12:00

Сообщение natali 13.12.2007 14:19

Простите что повторяюсь, но что с кашированием можно придумать? А то висящий форум кладёт весь сайт (((
Аватара пользователя
natali
phpBB 2.0.8
 
Сообщения: 329
Зарегистрирован: 30.05.2005 12:18
Откуда: Киев

Сообщение PekopT 13.12.2007 14:38

natali писал(а): А то висящий форум кладёт весь сайт (((

хм. возможно это у вас что-то не так, ибо у меня при висящем форуме - просто нет ни одной темы...
PekopT
phpBB 1.2.1
 
Сообщения: 21
Зарегистрирован: 12.10.2007 12:00

Сообщение Roms 22.12.2007 23:23

Люди, такое дело, пытаюсь приделать этот мод к WordPress`у, но вордпресс использует другую кодировку, из-за чего выводится вот такое: "�� ��������". Можно сделать что-нибудь сделать? :(
Roms
phpBB 1.0.0
 
Сообщения: 1
Зарегистрирован: 22.12.2007 23:14

Сообщение Shock13666 07.02.2008 5:59

Есть ли возможность сделать, чтобы этот мод давал ссылки на сообщения не так, как он дает, а так, как то предусмотрено модом SE Friendly Forum то есть к примеру topic335.html вместо viewtopic.php?t=335. Да, я знаю, что поисковики его ссылки все равно не видят. Мне надо по другой причине. Старался сделать это с помощью хтакцес, но не получилось. Как можно исправить код?
Музыка - как вино. Некачественная попса, со временем, превращается в уксус.. Рок же только обретает свой истинный вкус..
Я не нацист. Но когда кто нибудь осмелится высказать криво о моей стране я прихожу в ярость.
Немножко знаю xHTML, CSS, слышал про JavaScript, PHP. Уже год использую и стараюсь понять, как устроен phpBB.
[ Mozilla Firefox User ] [ Web Dev panel for FF ] [ xHTML 1.0 Strict ] [ Valid CSS 2.1 ] [ Да, я маньяк! ] [ Я ВКонтакте! ]
Аватара пользователя
Shock13666
phpBB 2.0.6
 
Сообщения: 250
Зарегистрирован: 19.11.2007 18:51
Откуда: Киев

Сообщение VVVas 12.02.2008 10:53

Shock13666
Можно лёгким движением руки делается...

Код: Выделить всё
$script_name = ($script_name == '') ? $script_name : '/' . $script_name;
$board_path = $server_protocol . $server_name . $server_port . $script_name;
$viewtopic_url = $board_path . '/topic';
$viewpost_url = $board_path . '/post';

и
Код: Выделить всё
      'U_TOPIC' => $viewtopic_url . $row['topic_id'] . '.html',
      'TOPIC_TITLE' => str_replace("'", "\'", $topic_title)
вы нарушили правила конференции, объяснений не будет - сами читайте правила
я люблю daft punk | Активные темы
Аватара пользователя
VVVas
Люмпен Пролетариат
Люмпен Пролетариат
 
Сообщения: 4737
Зарегистрирован: 12.11.2004 1:20
Откуда: RU-MSK

Сообщение Shock13666 13.02.2008 14:24

[AJAX mod here] Я так поннимаю:
Код: Выделить всё
#
#-----[ OPEN ]------------------------------------------
#

recent.php

#
#-----[ FIND ]------------------------------------------
#

$script_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['script_path']));
$script_name = ($script_name == '') ? $script_name : '/' . $script_name;
$board_path = $server_protocol . $server_name . $server_port . $script_name;
$viewtopic_url = $board_path . '/viewtopic.' . $phpEx;

#
#-----[ REPLACE WITH ]------------------------------------------
#

$script_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['script_path']));
$script_name = ($script_name == '') ? $script_name : '/' . $script_name;
$board_path = $server_protocol . $server_name . $server_port . $script_name;
$viewtopic_url = $board_path . '/topic';
$viewpost_url = $board_path . '/post';

#
#-----[ FIND ]------------------------------------------
#

'U_TOPIC' => $viewtopic_url . '?' . POST_TOPIC_URL . '=' . $row['topic_id'],

#
#-----[ REPLACE WITH ]------------------------------------------
#

'U_TOPIC' => $viewtopic_url . $row['topic_id'] . '.html',



Добавлено спустя 4 минуты 6 секунд:

Огромное спасибо! У мня все получилось!

Такой еще вопрос - как там прогресс с AJAX апгрейдом мода?

Добавлено спустя 2 часа 6 минут 43 секунды:


AJAX Recent Mod Beta

Ладно. Тк аякс-версия данного мода что-то застопорилась, пришлось изучать аякс и писать свою. Моя первая поделка на аякс.

Файл recent_ajax.js (кидаем в корень форума)
Код: Выделить всё
var xmlObj = null;
   
function recent() {
   if(window.XMLHttpRequest){
      xmlObj = new XMLHttpRequest();
   }
   else if(window.ActiveXObject){
      xmlObj = new ActiveXObject("Microsoft.XMLHTTP");
   }
   else {
      return;
   }
   xmlObj.onreadystatechange = process
   xmlObj.open ('GET', "recent.php", true);
   xmlObj.send ( null );
}
function process(){
   if(xmlObj.readyState == 4){
      document.getElementById("output").innerHTML = xmlObj.responseText ;
   }
}


Файл recent_body.tpl
Код: Выделить всё
<!-- BEGIN topicrow -->
<li><a href="{topicrow.U_TOPIC}">{topicrow.TOPIC_TITLE}</a></li>
<!-- END topicrow -->


На странице, где будет сам список:
Код: Выделить всё
#
#--- [ Find ] ---
#
</head>

#
#--- [ Before, add ] ---
#
<script type="text/javascript" src="recent_ajax.js"></script>

#
#--- [ Find ] ---
#
<body

#
#--- [ In line, find ] ---
#
body

#
#--- [ After, add ] ---
#
onLoad="recent()"


Сообственно, сам список последних тем:
Код: Выделить всё
<ul id="output">
<li>Default</li>
</ul>


Кнопка обновления списка:
Код: Выделить всё
<a onclick="recent()">Update Recent Topics</a>


В двух словах обьясняю принцип работы. Сначала загружается весь документ, потом берется содержимое файла recent.php ( body onLoad="recent()" ) и заменяет содержимое блока с id="output" на то, что в файле ресент.пхп. В случае, если ЖаваСкрипты отключены, то будет показываться содержимое по умолчанию (в данном случае <li>Default</li>). Этот момент можно заменить на что угодно, например на сообщение "Включите Жабоскрипты" или на рекламу, что, мо моему, значительный плюс по сравнению с предыдущей версией, которая невалидна и не выдает ничего в случае неисправности. Если жаваскрипты включены, то будет создана конструкция след вида:
Код: Выделить всё
<ul id="recent_output">
<li><a href="{LINK}">{NAME}</a></li>
<li><a href="{LINK}">{NAME}</a></li>
<li><a href="{LINK}">{NAME}</a></li>
<li><a href="{LINK}">{NAME}</a></li>
<li><a href="{LINK}">{NAME}</a></li>
</ul>

Внешний вид этой конструкции очень легко изменяется с помощью ксс: ul#recent_output{background:green}.

Дальше. У нас есть кнопка обновления списка <a onclick="recent()">Update Recent Topics</a>. Вы можете заменить тег А на Див, Спан, Буттон, или что-то другое - неважно. При клике на него снова изменяется содержимое блокас id="output" на то, что в файле ресент.пхп, без перезагрузки всей страницы. Текст может быть заменен на красивый рисунок, или еще чет. Главное - суть.

Итого, этот вариант позволяет сделать меню последних тем с обновлением при нажатии кнопки, размещенной в любом другом месте.

Добавлено спустя 9 минут 40 секунд:

Я еще полажу, поэкспериментирую и, может, самообновляющуюся сделаю...

Добавлено спустя 1 час 21 минуту 49 секунд:

AJAX Recent Mod Beta. TimeOut Addon

auto_recent_ajax.js (в корне форума)
Код: Выделить всё
var info = document.getElementById("recent_timer");
var timer;
function auto_recent() {
   timer = setInterval(function() {
      var cur = parseInt(info.innerHTML);
      if(cur == '0') {
         recent();
         cur = 30; // Time of Update
      }
      else cur--;
      info.innerHTML = cur;
   },1000);
}

Строка 8 - это количество секунд, которые проходят между автообновлениями.

Изменения после установки предыдущего мода Аякс:
Код: Выделить всё
#
#--- [ Open ] ---
#
overall_footer.tpl

#
#--- [ Find ] ---
#
</body>

#
#--- [ Before, Add ] ---
#
<script type="text/javascript" src="auto_recent_ajax.js"></script>


#
#--- [ Open ] ---
#
overall_header.tpl

#
#--- [ Find ] ---
#
<body

#
#--- [ In line, find ] ---
#
onload="recent();"

#
#--- [ In line, replace ] ---
#
onload="auto_recent();"


В любом месте можно вставить следующий код, который будет показывать, сколько секунд осталось до следующего автообновления:
Код: Выделить всё
<span id="recent_timer">0</span>


Добавлено спустя 1 минуту 55 секунд:

Вроде все написал. У меня на Локалхосте работает.
Если что - извините за ошибки. Щас 5 часов утра, мог где-то сбиться...

Добавлено спустя 7 часов 17 минут 48 секунд:

Может быть ошибка в кодировке. Русские буквы будут отображаться знаками вопроса. Тогда:
Код: Выделить всё
#
#--- [ Open ] ---
#
recent.php

#
#--- [ Find ] ---
#
//
// Let's prevent caching
//

#
#--- [ Before, Add ] ---
#
header ('Content-type: text/html; charset=windows-1251');
Последний раз редактировалось Shock13666 13.05.2008 21:49, всего редактировалось 1 раз.
Музыка - как вино. Некачественная попса, со временем, превращается в уксус.. Рок же только обретает свой истинный вкус..
Я не нацист. Но когда кто нибудь осмелится высказать криво о моей стране я прихожу в ярость.
Немножко знаю xHTML, CSS, слышал про JavaScript, PHP. Уже год использую и стараюсь понять, как устроен phpBB.
[ Mozilla Firefox User ] [ Web Dev panel for FF ] [ xHTML 1.0 Strict ] [ Valid CSS 2.1 ] [ Да, я маньяк! ] [ Я ВКонтакте! ]
Аватара пользователя
Shock13666
phpBB 2.0.6
 
Сообщения: 250
Зарегистрирован: 19.11.2007 18:51
Откуда: Киев

Сообщение Shock13666 13.02.2008 21:25

Гурру, попрошу прокоментировать.... Интересует мнение профи.
Музыка - как вино. Некачественная попса, со временем, превращается в уксус.. Рок же только обретает свой истинный вкус..
Я не нацист. Но когда кто нибудь осмелится высказать криво о моей стране я прихожу в ярость.
Немножко знаю xHTML, CSS, слышал про JavaScript, PHP. Уже год использую и стараюсь понять, как устроен phpBB.
[ Mozilla Firefox User ] [ Web Dev panel for FF ] [ xHTML 1.0 Strict ] [ Valid CSS 2.1 ] [ Да, я маньяк! ] [ Я ВКонтакте! ]
Аватара пользователя
Shock13666
phpBB 2.0.6
 
Сообщения: 250
Зарегистрирован: 19.11.2007 18:51
Откуда: Киев

Пред.След.

Вернуться в Анонсы и поддержка модов для phpBB 2.0.x

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0