Полезная информация


----

Начать новую тему Ответить на тему

Был ли полезен для вас данный анонс ???
Да, буду использовать модификацию
Нет, мод бесполезен
Вы можете выбрать 1 вариант.

Результаты голосования
АвторСообщение

 Сообщение Ajax base phpbb3(автоматическое обновление элементов форума) 
#1 

Аватар пользователя

Всем доброго времени суток. Сегодня вашему вниманию представляю достаточно хорошу модификацию для наших форумов, а именно - Ajax base.
Внимание !!! Инструкция есть только для стилей на основе Просильвера. НО при наличии хотябы минимальных познаний в HTML вы легко поставите данный мод и на Сабсильвер2.

Для чего же она вообщем создана ??? Создана она для автоматического обновления некоторого содержимого форума без перезагрузки страницы, технология аякс вообщем то. Что на данный момент она может:

1. Каждые 15 секунд обновляется Кто онлайн
2. Каждые 15 секунд обновляется статистика форума (кол-во сообщений, пользователей и тд)
3. Предпросмотр сообщения без перезагрузки страницы

Собственно при наличии должного опыта вы сами можете расширить функционал этой модификации. Если заинтересовало - скачиваем и ставим.

Запросов к БД и русификации по инструкции нет, всего несколько правок и мод установлен.

---------------- Дополнение: AJAX-обновление и проверка наличия новых ЛС --------------

Маленькое дополнение для представленной выше модификации, добавит проверку наличия новых ЛС без перезагрузки страницы. Открываем /styles/ваш стиль/template/index_body.html и находим
setTimeout("reload('ctime', 1000)", 1000);
 

Добавляем после найденного
setTimeout("reload('priv', 15000)", 15000);
 

Открываем /styles/ваш стиль/template/overall_header.html и находим
<!-- IF S_DISPLAY_PM --> (<a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}</a>)<!-- ENDIF -->
 

Заменяем найденное на
<!-- IF S_DISPLAY_PM --> (<a href="{U_PRIVATEMSGS}"><span id="priv_span">{PRIVATE_MESSAGE_INFO}</span></a>)<!-- ENDIF -->
 

Открываем /ajax_base.php и находим
echo sprintf($user->lang['CURRENT_TIME'], $user->format_date(time(), false, true));
}
 

Добавляем после найденного
else if( $mode == 'priv' )
{
$l_privmsgs_text = $l_privmsgs_text_unread = '';
$s_privmsg_new = false;
   if (!empty($user->data['is_registered'])){
      if ($user->data['user_new_privmsg']){
         $l_message_new = ($user->data['user_new_privmsg'] == 1) ? $user->lang['NEW_PM'] : $user->lang['NEW_PMS'];
         $l_privmsgs_text = sprintf($l_message_new, $user->data['user_new_privmsg']);

         if (!$user->data['user_last_privmsg'] || $user->data['user_last_privmsg'] > $user->data['session_last_visit']){
            $sql = 'UPDATE ' . USERS_TABLE . '
               SET user_last_privmsg = ' . $user->data['session_last_visit'] . '
               WHERE user_id = ' . $user->data['user_id'];
            $db->sql_query($sql);

            $s_privmsg_new = true;
         } else {
            $s_privmsg_new = false;
         }
      } else {
         $l_privmsgs_text = $user->lang['NO_NEW_PM'];
         $s_privmsg_new = false;
      }

      $l_privmsgs_text_unread = '';

      if ($user->data['user_unread_privmsg'] && $user->data['user_unread_privmsg'] != $user->data['user_new_privmsg']){
         $l_message_unread = ($user->data['user_unread_privmsg'] == 1) ? $user->lang['UNREAD_PM'] : $user->lang['UNREAD_PMS'];
         $l_privmsgs_text_unread = sprintf($l_message_unread, $user->data['user_unread_privmsg']);
      }
   }
echo $l_privmsgs_text;
}
 

Чистим кеши и готово. Успехов :-ok-:


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!

Теги темы
Ajax base модификация для phpbb3, добавляющая автоматическое обновление таких элементов как: Кто онлайн, Статистика форума, а так же аякс-предпросмотр сообщения
          Вернуться наверх  
 

#2 

Аватар пользователя

А не будет ли данный мод подгружать БД?


          Вернуться наверх  
 

#3 

Аватар пользователя

Не должен, он работает лишь тогда, когда конкретный пользователь сидит на главной странице


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 

#4 

Аватар пользователя

Толи я туплю, толи в установочном файле нет куска кода.
А именно: Для файла /styles/ваш стиль/template/index_body.html нет куска который есть в деинсталяционном варианте.
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку


          Вернуться наверх  
 

#5 

Аватар пользователя

Хммм, вы смотрите инструкцию из папки contrib ??? Там же инструкция по обновлению версии мода, разраб видимо оптимизировал код и этот кусок не нужен теперь в новой версии


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 

#6 

Аватар пользователя

Нет. Я смотрю инструкцию в папке ajax_base_2_0_0. ПРочитав Ваше дополнение к моду, начал искать кусок кода
setTimeout("reload('ctime', 1000)", 1000);
 
, а его и нету. Вот я и запаниковал. Полез в папку contrib и там в файле деинсталяции эти строки указаны как удаляемые.
DeaDRoMeO писал(а):

разраб видимо оптимизировал код и этот кусок не нужен теперь в новой версии

Так а ваше дополнение к файлам /styles/ваш стиль/template/overall_header.html и /ajax_base.php нужно делать в новой версии?? И как можно задать другое время?? Как по мне 15 сек. наверное слишком мало. Хотя бы 30сек. выставить чтоб БД не грузить.
Спасибо!


          Вернуться наверх  
 

#7 

Аватар пользователя

В папке шаблонов есть такая вещь как ajax_base.js, там есть кусок кода
if(ajax_base_script == 'index'){
      /*
       * who is online
       */
      $('#who_is_online_wrapper').unrepeat().repeat(15000).load(ajax_base_url, {mode: 'who_is_online'});

      /*
       * statistics
       */
      $('#statistics_wrapper').unrepeat().repeat(15000).load(ajax_base_url, {mode: 'statistics'});
   }
});
 

В нем
repeat(15000)
 

Означает повторение через каждые 15 секунд (или 15 000 миллисекунд), меняете на свое, в вашем случае 30000
А насчет дополнения - погляжу завтра, тут надо переписывать все под новую версию


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 

#8 

Аватар пользователя

Поставил. Подогнал под свой стиль на основе сабсильвера. Всё работает, только вот пришлось в файле overall_header.html помудрить. Если нужную строку <!-- INCLUDE ajax_base.html --> вставить перед </head> , у меня пропадает возможность предварительного просмотра написанных сообщений а если вставить её чуть выше, не работает авто обновление. Я её тыкал-мыкал и вроде как попал. Вставил между двух <!-- ENDIF --> и всё заработало! Опять у меня появилось сомнение в правильности своих действий. Боюсь что что то перестало работать а сразу всё и не проверишь. Сергей! Не могли бы вы глянуть. Хорошее место я выбрал для этой строки <!-- INCLUDE ajax_base.html -->, или есть более подходящее для неё место? Спасибо.
файл overall_header.html Стиль Getaway (сабсильвер2)
</script>
<script type="text/javascript" src="{T_TEMPLATE_PATH}/ca_scripts.js"></script>
<!-- Breizh Shoutbox Start -->
<!-- IF S_DISPLAY_SHOUTBOX -->
<link rel="stylesheet" href="{T_THEME_PATH}/shout_sub.css" type="text/css" />
<script type="text/javascript" src="{T_SUPER_TEMPLATE_PATH}/editor.js"></script>
<script type="text/javascript" src="{T_SUPER_TEMPLATE_PATH}/shoutbox.js"></script>
<script type="text/javascript" src="{U_SHOUT}"></script>
<!-- IF U_CHARS -->
<script type="text/javascript" src="{U_CHARS}"></script>
<!-- ENDIF -->
<!-- INCLUDE ajax_base.html -->     --------  Вот куда я его воткнул! :))
<!-- ENDIF -->
<!-- Breizh Shoutbox End -->

 <script type="text/javascript" src="{T_TEMPLATE_PATH}/tooltip.js"></script>

<!-- INCLUDE gallery/plugins_header.html -->
<link rel="stylesheet" href="{PPKBB3CKER_ADDONS}css/spoiler.css" type="text/css" media="screen" />
<script src="{PPKBB3CKER_ADDONS}js/jquery-min.js" type="text/javascript"></script>
<script src="{PPKBB3CKER_ADDONS}js/spoiler.js" type="text/javascript"></script>
<script type="text/javascript" src="scrolltopcontrol.js"></script>
<script type="text/javascript" src="{T_TEMPLATE_PATH}/crawl.js">
// Image Crawler Script (c)2009 John Davenport Scheuer
// This Notice Must Remain for Legal Use
</script>
<link href="{T_THEME_PATH}/last_x_img_style.css" rel="stylesheet" type="text/css" />
<!-- IF SITE_BG_IMG -->
<style type="text/css">
<!--
#logorow {background:url("{SITE_BG_IMG}") repeat;}
-->
</style>
<!-- ENDIF -->
</head>
 


          Вернуться наверх  
 

#9 

Аватар пользователя

Вставьте его после
<!-- Breizh Shoutbox End -->
 

Потому как вы его запихнули внутрь кода от чата


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Тогда опять не работает пред просмотр сообщений. :nez-nayu:


          Вернуться наверх  
 


Аватар пользователя

Странно однако, может идет конфликт скриптов какой то, тогда оставляйте кусок там где все работает


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Хорошо! Жду тогда обещанной Вами доработки. :co_ol:


          Вернуться наверх  
 


Аватар пользователя

А можно применить это к опросам на главной? Допустим, там есть пагинация опросов, при клике на следующий перегружается вся страница, а хотелось бы, чтобы только этот фрагмент. Или в таких случаях что-то другое используют?


_________________
Подпись:
Я уже прошел тот период когда можно было забывать про очистку кеша ©salexcorp
          Вернуться наверх  
 


Аватар пользователя

Хмм погорячился я насчет простоты добавления для других элементов, там почти все файлы мода нуждаются в редактировании, впринципе погляди как все прописывается и по аналогии сделай, пока нету времени этим заняться((


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Мне нравится, как здесь
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку
. Какой бы линк из меню не нажал, обновляется только div content, а sidebar остаётся на месте.


_________________
Подпись:
Я уже прошел тот период когда можно было забывать про очистку кеша ©salexcorp
          Вернуться наверх  
 


Аватар пользователя

Чиво чиво ? Кликаю по линкам - обновляется вся страница


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

На линки меню кликал или статей?
При клике на менюшку перегружается только определённый фрагмент, а не вся страница. Или я слепая?


_________________
Подпись:
Я уже прошел тот период когда можно было забывать про очистку кеша ©salexcorp
          Вернуться наверх  
 


Аватар пользователя

У меня всегда страница перезагружается, по чему бы я не кликал


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Странно. У меня толкьо, если жму на линки статей. В принципе, можно у тамошнего владельца спросить, мне понравилась эта вещь, красиво и современно.
Хотя, может, я и ошибаюсь, и это реализовано через файлы blablabla.inc.php, где .inc.php выполняет задачу только для определённого элемента.


_________________
Подпись:
Я уже прошел тот период когда можно было забывать про очистку кеша ©salexcorp
          Вернуться наверх  
 


Аватар пользователя

Lorem Ipsum, уххх в таком я еще не разбирался даже))


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 
 
Начать новую тему Ответить на тему


Дополнительные возможности

  Похожие темы  Автор  Ответов  Просмотров  Последнее сообщение 
Аватар пользователя Breizh Ajax Checks phpbb3
Breizh Ajax Checks - модификация для phpbb3, добавляющая на страницу регистрации мгновенную проверку корректности вводимых данных

DeaDRoMeO

33

4766

Аватар пользователя

09 дек 2015, 05:27

DeaDRoMeO

Аватар пользователя board3 Portal phpbb3 - Портал для форума
board3 Portal - модификация для phpbb3, добавляющая на форум очень многофункциональный Портал

DeaDRoMeO

598

66531

Аватар пользователя

08 авг 2017, 06:42

DeaDRoMeO

Аватар пользователя Forum Background for phpBB3 мод для оформления форума
Forum Background for phpBB3 это мод помогающий украсить наш форум

akella1900

172

10503

Аватар пользователя

25 ноя 2016, 10:45

DeaDRoMeO

Аватар пользователя phpBB Gallery phpbb3 (Галлерея для форума)
phpBB Gallery - модификация для phpbb3, организующая достаточно мощную фотогаллерею на форуме.

DeaDRoMeO

405

44361

Случайный аватар. Пользователю рекомендуется загрузить свой аватар в Настройках профиля

23 мар 2016, 19:01

eolis

Аватар пользователя Board Rules phpbb3 (Правила форума)
Board Rules - модификация для phpbb3, добавляющая весьма функциональную страницу с правилами поведения на форуме

DeaDRoMeO

74

8006

Аватар пользователя

19 фев 2016, 20:15

mela

Оставить свой комментарий

Поделиться темой с помощью

Ссылки на тему

Прямая ссылка:
BB-код для форумов, сайтов, блогов:
HTML ссылка:
 


Самая неформальная поддержка phpBB :P