вВсё для ucoz-форумов

Добавление сообщений на форум (темы и посты)

 
Скрипт, который не делает перезагрузку страницы и плавно добавляет сообщение и материал.
Работает так, вы жмете добавить, и нет паузы и нет картинки что материал добавлен по центру монитора. А вылазит Ajax окно в правом нижнем углу и оповещает вас о том что материал добавлен успешно.
Установка:
Ставим в Общий вид страниц форума, после $BODY$.

Код
<?if$PAGE_ID$=’threadpage’ or $PAGE_ID$=’addthread’ or $PAGE_ID$=’addpoll’?><script type=»text/javascript»>function haveFiles()var f = false;$(«input.uplFileFl»).each(function()if ($(this).val()) f=true;);return f}document.addform.onsubmit = function()var namewnd = «w» + Math.floor(Math.random()*999); _uWnd.alert(‘<img src=»/.s/img/wd/3/ajax.gif» border=»0″ alt=»Загрузка»>’,’Загрузка’,name: namewnd, w: 250, h: 80, tm: 0); $(«#frF16″).attr(«disabled», true); if (haveFiles()) _uPostForm($(«form[name=’addform’]»), success: function(dt) parseResult(dt, namewnd);})} else $.post(«/forum», $(«form[name=’addform’]»).serialize(), function(dt) parseResult(dt, namewnd))};return false;};function parseResult(dt, namewnd)var err = $(«#frM2», dt).text(), thmurl = $(«a:first», dt).attr(«href»); if (err) _uWnd.content(namewnd, ‘<center>’+err+'</center>’); _uWnd.setTitle(namewnd, ‘Ошибка’); $(«#frF16″).attr(«disabled», false); setTimeout(function() _uWnd.close(namewnd) ,2000);} else if ($(dt).text().indexOf(«Ответ добавлен») > -1) $(«textarea#message»).val(«»); $(«form[name=’addform’] input:file»).val(«»); _uWnd.content(namewnd, ‘<center>Добавлено</center>’); _uWnd.setTitle(namewnd, ‘Успех’); $(«#frF16″).attr(«disabled», false); setTimeout(function() _uWnd.close(namewnd) ,2000); setTimeout(function() <?if $PAGE_ID$=’threadpage’?>$(«.gDivRight:first»).load(thmurl + «?» + Math.floor(Math.random()*9999) + » .gDivRight:first»); setPnt(thmurl);<?endif?><?if $PAGE_ID$=’addthread’ or $PAGE_ID$=’addpoll’?>setPnt($(«td.forumNamesBar:first a.forumBarA:last», dt).attr(«href»), true);<?endif?>, 50);} else _uWnd.content(namewnd, ‘Во время отправки произошла ошибка’); _uWnd.setTitle(namewnd, ‘Не удалось’); $(«#frF16″).attr(«disabled», false); setTimeout(function() _uWnd.close(namewnd) ,2000); }};</script><?endif?>

источник: zornet.ru

Похожие посты