Русское сообщество fluxbb

Быстрый лёгкий надёжный форумный движок

Вы не вошли.

Объявление

Вы можете внести свой вклад в содержание сайта. Жертвователи попадут в почетную группу "Спонсоры". Поддержать сайт.

#1 2007-03-10 11:57:15

Slavik
Гость

Punbb with ajax

Как вам идея чтобы перевести форум по кускам на санки ajax? В принципе можно было бы сразу весь перетащить, но наверное так будет меньше прироста в скорости и в трафике.

Вероятно придется переделать большую часть форума, то есть разбить страницы на несколько основных частей. Это в большей части для того, чтобы обеспечить работу браузеров без js...

#2 2007-03-10 12:07:34

artoodetoo
Гость

Re: Punbb with ajax

а конкретно в каком месте? ajax-ом перерисовывают часть страницы, когда какую-нибудь доп. инфу добывают уже после загрузки страницы. ЧТО именно собираешся добывать?

#3 2007-03-12 16:09:17

Zevs
Гость

Re: Punbb with ajax

Самое первое, что надо сделать - это быстрый ответ. Это именно то, что большинству не хватает.

#4 2007-03-12 16:34:01

niikto
Гость

Re: Punbb with ajax

щас меня устраивает быстрый ответ, а есл иу меня канал маленький, сколько же я буду ждать подгрузки формы быстрого ответа?

#5 2007-03-12 17:06:58

hcs
Гость

Re: Punbb with ajax

А что не так с быстрым ответом?

#6 2007-03-12 20:25:13

Slavik
Гость

Re: Punbb with ajax

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

#7 2007-04-06 04:39:23

hcs
Гость

Re: Punbb with ajax

Slavik
Я приветствую твою задумку. Профиль - хорошо. Сам я сейчас обдумываю ЛС, во-первых хочу сделать его в виде "цепочек" как гуглмайл, ну и сразу же применять аякс.
Вот и хочу узнать, как твои успехи?

#8 2007-04-06 13:27:53

Dexus
Гость

Re: Punbb with ajax

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

#9 2007-04-07 06:37:39

Slavik
Гость

Re: Punbb with ajax

hcs
да как-то не особо. Мой форум загнулся, хотелось бы дождаться версии 1.3 чтобы сделав сейчас не переносить все это дело на 1.3
Dexus
честно говоря ничего не понял :-)

#10 2007-04-07 09:40:51

Dexus
Гость

Re: Punbb with ajax

Slavik
Пока ты пишешь сообщение тут, куча народу может свои уже послать. И ты их не увидишь если аякс не будет учитывать их с СЕРВЕРНОЙ стороны. А увидишь только свое. И пока не тыкнешь в F5 - не увидишь что между сообщением на которое ты ответил и твоим еще с пол-дюжины других ошиваются.

#11 2007-04-07 15:49:30

Slavik
Гость

Re: Punbb with ajax

Ну можно подгружать все тело страницы, оставляя только футер и хедер

#12 2007-04-08 09:08:02

Dexus
Гость

Re: Punbb with ajax

Slavik
Тогда толку от аякса немного. Смысл-то в том, что обновляется только то, что надо. А не все сразу. Чтоб все обновить - можно F5 тыкнуть.

#13 2007-04-08 15:15:18

Slavik
Гость

Re: Punbb with ajax

Ну я же говорю не все. Притом можно эту фичу обойти, передав заодно с сообщением дату последнего открытого поста

#14 2007-05-06 08:37:52

Юко
Гость

Re: Punbb with ajax

Самое первое, что надо сделать - это быстрый ответ. Это именно то, что большинству не хватает.

А что не так с быстрым ответом?

наверно имелось ввиду "быстрое редактирование"

#15 2007-06-05 22:02:46

Ragimovich
Гость

Re: Punbb with ajax

быстрое редактирование? как два байта переслать. уже почти доделал;-)

#16 2007-06-06 08:49:48

niikto
Гость

Re: Punbb with ajax

Ragimovich
Так выкладывай дарагой!

#17 2007-06-06 23:26:56

Ragimovich
Гость

Re: Punbb with ajax

[--Модуль быстрого редактирования--]
[--Версия 0.1--]
[--Copyright (c)2007--]
[--ВНИМАНИЕ! Это не руководство для начинающих юзверей! ОНО НЕ ПРОВЕРЕНО! Модифицируйте, только, если понимаете, что делаете!--]
[--Модуль использует библиотеку XAJAX--]
[--Разрабатывалось на модифицированной сборке от punbb.ru. Отсюда введение всех функций в модуль цитирования--]
[--Короче, юзеры не юзайте это Г. Дождитесь нормального руководства!;-)--]


[--quote.common.php--]
[--Добавляем в конец файла--]
$xajax->registerFunction("postEditView");   // регистрируем функцию, отвечающую за вывод поля редактирования
$xajax->registerFunction("postEditSave");   // регистрируем функцию, отвечающую за сохранение изменений
$xajax->registerFunction("postEditCancel"); // регистрируем функцию, отвечающую за возвращение поста, если изменений не сделано

[--quote.server.php--]
[--Ищем--]
  $objResponse->addAssign("req_message", "style.height", "300px");
  return $objResponse->getXML();
}
[--Вставляем после--]
function postEditView($pid)
{
  global $db, $pun_user;
  require PUN_ROOT.'lang/'.$pun_user['language'].'/topic.php';
  $objResponse = new xajaxResponse();
  $result = $db->query('SELECT id,message FROM '.$db->prefix.'posts WHERE id='.$pid) or error('Unable to fetch post info', __FILE__, __LINE__, $db->error());
  $cur_post = $db->fetch_assoc($result);
  $quotemsg = '<div class="postedt" id="postedt"><textarea rows="7" cols="75" name="ptext" id="ptext">'.$cur_post["message"].'</textarea><br><button onclick="xajax_postEditSave('.$cur_post['id'].',';
  $quotemsg = $quotemsg."document.getElementById('ptext').value)\"";
  $quotemsg = $quotemsg.'>'.$lang_topic['QEdit Save'].'</button>';
  $quotemsg = $quotemsg.'<button onclick="xajax_postEditCancel('.$cur_post['id'].')">'.$lang_topic['QEdit Cancel'].'</button></div>';
  $objResponse->addClear("p$pid","innerHTML"); 
  $objResponse->addAppend("p$pid", "innerHTML", $quotemsg);
  return $objResponse->getXML();
}
function postEditSave($pid,$ptext)
{
  global $db, $pun_user;
  $objResponse = new xajaxResponse();
  $db->query("UPDATE posts SET message='$ptext' WHERE id='$pid'") or error('Unable update post info', __FILE__, __LINE__, $db->error());
  $result = $db->query('SELECT message,hide_smilies FROM '.$db->prefix.'posts WHERE id='.$pid) or error('Unable to fetch post info', __FILE__, __LINE__, $db->error());
  $cur_post = $db->fetch_assoc($result);
    require PUN_ROOT.'include/parser.php';
  $quotemsg = parse_message($cur_post['message'],$cur_post['hide_smilies']);
  //$quotemsg = $cur_post['message'];
  $objResponse->addClear("p$pid","innerHTML");
  $objResponse->addAppend("p$pid", "innerHTML", $quotemsg);
  return $objResponse->getXML();
}

function postEditCancel($pid)
{
  global $db, $pun_user;
  $objResponse = new xajaxResponse();
  $result = $db->query('SELECT message,hide_smilies FROM '.$db->prefix.'posts WHERE id='.$pid) or error('Unable to fetch post info', __FILE__, __LINE__, $db->error());
  $cur_post = $db->fetch_assoc($result);
    require PUN_ROOT.'include/parser.php';
  $quotemsg = parse_message($cur_post['message'],$cur_post['hide_smilies']);
  //$quotemsg = $cur_post['message'];
  $objResponse->addClear("p$pid","innerHTML");
  $objResponse->addAppend("p$pid", "innerHTML", $quotemsg);
  return $objResponse->getXML();
}

[--viewtopic.php--]
[--Ищем--]
$post_actions[] = '<li class="postedit"><a href="edit.php?id='.$cur_post['id'].'">'.$lang_topic['Edit'].'</a>';
[--После вставляем--]
$post_actions[] = '<li class="postedit"><a onclick="xajax_postEditView('.$cur_post['id'].')" href="#p'.$cur_post['id'].'">'.$lang_topic['QEdit'].'</a>';
[--Ищем--]
$post_actions[] = ... (просто не могу восстановить что было в оригинале)
[--Меняем на--]
$post_actions[] = '<li class="postedit"><a onclick="xajax_postEditView('.$cur_post['id'].')" href="#p'.$cur_post['id'].'">'.$lang_topic['QEdit'].'</a>';
[--Ищем--]
<h3><?php if (($post_count + $start_from) > 1) echo ' Re: '; ?><?php echo pun_htmlspecialchars($cur_topic['subject']) ?></h3>
[--Изменяем то что после с целью присвоения уникального айди--]
<div class="postmsg" id="p<?php echo $cur_post['id']; ?>" name="p<?php echo $cur_post['id']; ?>">

[--base.css--]
[--Добавляем--]
DIV.postedt {
    WIDTH: 100%;
    POSITION: relative;
}
DIV.postedt textarea {
    border-style: solid;
    border-width: 1px;
    width: 100%;
}
DIV.postedt button {
    border-style: solid;
    border-width: 1px;
    float: right;
    margin-top: 4px;
    margin-left: 4px;
}

#18 2007-08-27 17:40:36

VoiD
Гость

Re: Punbb with ajax

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

#19 2007-08-29 19:26:58

spycam
Гость

Re: Punbb with ajax

я поставил вроде это твик, но там окно редактирования появлялось где-то ниже: не в посте.
Далее там вроде две кнопки, но они очччень маленькие и их не видно.Так и должно быть?
Делал по инструкции
Может быть вы выложите ваш вьювтопик пхп?

#20 2007-09-05 00:05:41

Ragimovich
Гость

Re: Punbb with ajax

Так как для какой версии мод писать? Для обычной или сборки панбб.ру? Они разные, т.к. в пан.ру уже есть аякс, а в обычном нет:-( Короче, кому нужен, ищите по асе или жаббре 7931653 и [email protected](это надежнее, т.к. транспорты аси отмирают, гады). Спишемся и решим проблему, а за одно и мод нарисуем;-)

#21 2007-09-08 10:06:16

Ragimovich
Гость

Re: Punbb with ajax

Короче, выслал измененные и вроде рабочие исходники spycam. Он обещался отписать. Ждем результатов.

#22 2007-09-08 10:53:03

CR
Гость

Re: Punbb with ajax

ждём, интересно попробывать в деле smile

#23 2007-09-08 13:04:38

Ragimovich
Гость

Re: Punbb with ajax

По сути дела можете глянуть исходники:
http://www.satspace.org/QuickEdit10Beta.rar

ЭТО ДЛЯ СБОРКИ ОТ PUNBB.RU!!!

#24 2007-09-09 06:53:56

spycam
Гость

Re: Punbb with ajax

вообщем ошибку выдает при нажатии на быстрое редактирование
::thumb11:: (это я взял из темы про цитирование - там такая же ошибка выводится, но только в ие, а тут во всех браузерах)

делал как с заменой вьювтопика из архива, так и внедрением только изменений в свой файл.

ПХП 4.4.4
База в утф, форум в вин 1251

#25 2007-09-09 07:38:15

Ragimovich
Гость

Re: Punbb with ajax

Ничего не могу посоветовать. Я работаю только в УТФ:-( И таких ошибок ниразу не видел... Мож кто из гуру подскажет?

Подвал доски

Под управлением FluxBB. Хостинг Hostens