Перейти к контенту

[2.3.x](SnS) AJAX Быстрый ответ


Рекомендуемые сообщения

Тогда выкладываю, темы соединю...
Ссылка на комментарий
Поделиться на других сайтах

  • Ответы 771
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

Лучшие авторы в этой теме

Загружено фотографий

выловил баг (хотя он может был до меня,поэтому ногами по голове не бить)

вот

http://ipb.sannis.ru/index.php?showtopic=5...dpost&p=232

 

(я про

Цитата(DerSpinner @ 15.3.2008, 20:15) <{POST_SNAPBACK}> [?] [?]
)

 

это если написать чёнить.

потом это в быструю цитату и отправить.

Ссылка на комментарий
Поделиться на других сайтах

Спасибо, fixed.
Ссылка на комментарий
Поделиться на других сайтах

В ответе. Нужно будет заменить только php файл мода, как опубликую. Думаю всё-таки в ближайшее свободное время сделать загрузку последних постов по метке, чтобы кто знает — не грузил по несколько окон с одной темой, а кто не знает — не досаждал сообщениями о "багах" :D Ну и тогда больше не буду им заниматься.
Ссылка на комментарий
Поделиться на других сайтах

Модификация в архиве обновлена.

 

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

 

Вторая версия быстрого ответа доступна для форумов версии 2.3.0 и выше. Тестировалось на версиях 2.3.3, 2.3.4 и 2.3.6. Те, кто ещё не заметил разницы могут наглядно узнать о работе мода на демо-форуме.

Ссылка на комментарий
Поделиться на других сайтах

Я поставил, пока без всяческих косяков, только не понравилось одно, когда форум оффлайн, хак не работает :D В онлайне замечаний нет, СПАСИБО ;)
Ссылка на комментарий
Поделиться на других сайтах

Модификация в архиве обновлена.

 

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

 

Вторая версия быстрого ответа доступна для форумов версии 2.3.0 и выше. Тестировалось на версиях 2.3.3 и 2.3.4. Те, кто ещё не заметил разницы могут наглядно узнать о работе мода на демо.

это всё, Релиз так сказать?

Ссылка на комментарий
Поделиться на других сайтах

Такая проблема, значит по порядку, пишешь сообщение, все отлично, пишешь второе, они соединяются без проблем и все смотриться как надо, но если по айпи найти пользователя и посмотреть его сообщения, то склееное сообщение выглядит так:

 

post-71285-1205674854_thumb.jpg

 

Угадайте, что добовлялось вторым сообщением ?

Ссылка на комментарий
Поделиться на других сайтах

~LeKs~, это не касается мода. Это косяк с вёрсткой страницы поиска сообщений, idTails знает что там подправить, чтобы длинные посты нормально скроллились, а не вылезали за границу.

 

DerSpinner, да.

 

pops, тут как всегда виноваты «фреймворки», надо смотреть по месту, из-за чего такое возникает. Удалённо решение не могу предложить.

Ссылка на комментарий
Поделиться на других сайтах

Sannis, в чём может быть проблема: дома ответ работает на 100 баллов. Сегодня решил написать с работы и он не работает, то есть жму отправить, кнопки становяться не активные (Disable) и всё молчок.

Консоль java выдаёт следующее:

JavaScript - http://www.relaxplace.ru/forum/index.php?showtopic=182&st=0&gopid=1256&
Event thread: click
Error:
name: ReferenceError
message: Statement on line 40: Reference to undefined variable: afr_lang
Backtrace:
 Line 40 of linked script http://www.relaxplace.ru/forum/jscripts/sns_ajax_fast_reply.js
sns_afr_show_msg(afr_lang["posting"], "afr-msg");
 Line 1 of  script 
return sns_afr_post();
 At unknown location
[statement source code not available]

Ссылка на комментарий
Поделиться на других сайтах

Не во все языки добавили переменную? (lang_javascript.js)
Ссылка на комментарий
Поделиться на других сайтах

Только в русский, нужно во все ?

 

P.S. добавил в en, не помогло. На твоем тестовом всё работает ;) Что я мог не так сделать ?

 

P.S.2 Извените за флуд :D помогло седующее: переключил язык на английский, а потом на русский, и все заработало.

Ссылка на комментарий
Поделиться на других сайтах

Только в русский, нужно во все ?

Ну естесственно, во все используемые языки. У вас там видимо не тот загрузился по каким-то неизвестным причинам.

Ссылка на комментарий
Поделиться на других сайтах

Сейчас стоит первая версия мода. Всё было нормально, пока не установил 4ю бету шатбокса(это чат, который также использует аякс), теперь при попытке отправить сообщение оно отправляется нормально, но повисает окошко "подождите пожалуйста", если нажать кнопку отправки второй раз, то страница перегружается и оказывается, что сообщение было отправлено два раза.

Поможет ли установка второй версии? Если нет, то как исправить баг?

Ссылка на комментарий
Поделиться на других сайтах

теперь при попытке отправить сообщение оно отправляется нормально

Сообщения на форуме?

 

Ошибки javascript в студию.

Ссылка на комментарий
Поделиться на других сайтах

Сообщения на форуме?

да, по части отправки сообщение в шатбоксе у него свои глюки-про них я спрашиваю на инвижионайзе в соответствующей теме=)

Ну а в этой теме я интересуюсь как раз проблемами отправки сообщений на форуме.

 

Отключил шатбокс-всё стало нормально, сейчас включил, начал тестить, ошибка почему-то не появляется больше, буду отслеживать дальше, если будут продвижения-отпишусь. Но больше склоняюсь к тому, что ошибок явы не будет, я так думаю, проблема возникает в момент одновременного или близкого по времени обновления чата, если в этот момент также идет через аякс запрос отправить сообщение. Т.е. ошибка будет проявляться не каждый раз и потому при повторной отправке всё бывает норм.

 

А нет, сейчас вот висит окошко "Загрузка. Пожалуйста подождите..." и круг, по которому стрелки крутятся. В консоли, как я и ожидал, чисто.

Ссылка на комментарий
Поделиться на других сайтах

Тогда остаётся только пункт 2: ссылка на форум.

Я посмотрю как шутбокс работает, возможно напишу исправление.

Ссылка на комментарий
Поделиться на других сайтах

Sannis, проблема таже: при нажатии отправить в быстром ответе появляется

"function (iterator) { var index = 0; try { this._each((function (value) { try { iterator(value, index++); } catch (e) { if (e != $continue) throw e; } } )); } catch (e) { if (e != $break) throw e; } } function (iterator) { var result = true; this.each((function (value,index) { result = result && ! ! (iterator || Prototype.K)(value, index); if (! result) throw $break; } )); return result; } function (iterator) { var result = true; this.each((function (value,index) { if (result = ! ! (iterator || Prototype.K)(value, index)) throw $break; } )); return result; } function (iterator) { var results = []; this.each((function (value,index) { results.push(iterator(value, index)); } )); return results; } function (iterator) { var result; this.each((function (value,index) { if (iterator(value, index)) { result = value; throw $break; } } )); return result; } function (iterator) { var results = []; this.each((function (value,index) { if (iterator(value, index)) results.push(value); } )); return results; } function (pattern,iterator) { var results = []; this.each((function (value,index) { var stringValue = value.toString(); if (stringValue.match(pattern)) results.push((iterator || Prototype.K)(value, index)); } )); return results; } function (object) { var found = false; this.each((function (value) { if (value == object) { found = true; throw $break; } } )); return found; } function (memo,iterator) { this.each((function (value,index) { memo = iterator(memo, value, index); } )); return memo; } function (method) { var args = $A(arguments).slice(1); return this.collect((function (value) { return value[method].apply(value, args); } )); } function (iterator) { var result; this.each((function (value,index) { value = (iterator || Prototype.K)(value, index); if (value >= (result || value)) result = value; } )); return result; } function (iterator) { var result; this.each((function (value,index) { value = (iterator || Prototype.K)(value, index); if (value <= (result || value)) result = value; } )); return result; } function (iterator) { var trues = [], falses = []; this.each((function (value,index) { ((iterator || Prototype.K)(value, index) ? trues : falses).push(value); } )); return [trues, falses]; } function (ibresource) { var results = []; this.each((function (value,index) { results.push(value[ibresource]); } )); return results; } function (iterator) { var results = []; this.each((function (value,index) { if (! iterator(value, index)) results.push(value); } )); return results; } function (iterator) { return this.collect((function (value,index) { return {value : value, criteria : iterator(value, index)}; } )).sort((function (left,right) { var a = left.criteria, b = right.criteria; return a < b ? - 1 : a > b ? 1 : 0; } )).pluck("value"); } function () { return this.collect(Prototype.K); } function () { var iterator = Prototype.K, args = $A(arguments); if (typeof args.last() == "function") iterator = args.pop(); var collections = [this].concat(args).map($A); return this.map((function (value,index) { iterator(value = collections.pluck(index)); return value; } )); } function () { return "[" + this.map(Object.inspect).join(", ") + "]"; } function (iterator) { var results = []; this.each((function (value,index) { results.push(iterator(value, index)); } )); return results; } function (iterator) { var result; this.each((function (value,index) { if (iterator(value, index)) { result = value; throw $break; } } )); return result; } function (iterator) { var results = []; this.each((function (value,index) { if (iterator(value, index)) results.push(value); } )); return results; } function (object) { var found = false; this.each((function (value) { if (value == object) { found = true; throw $break; } } )); return found; } function () { return this.collect(Prototype.K); } function reverse() { [native code] } function (iterator) { for (var i = 0;i < this.length;i++) iterator(this); } function () { this.length = 0; return this; } function () { return this[0]; } function () { return this[(this.length - 1)]; } function () { return this.select((function (value) { return value != undefined || value != null; } )); } function () { return this.inject([], (function (array,value) { return array.concat(value.constructor == Array ? value.flatten() : [value]); } )); } function () { var values = $A(arguments); return this.select((function (value) { return ! values.include(value); } )); } function (object) { for (var i = 0;i < this.length;i++) if (this == object) return i; return - 1; } function () { var args = arguments; this.each((function (f) { f.apply(this, args); } )); } function () { for (var i = 1;i < this.length;i++) { if (this[0] == this[(i - 1)][0]) { this.splice(i, 1); } } } function () { for (var i = 0;i <= this.length;i++) { this.shift(); } }"........

 

Что необходимо ? )

Ссылка на комментарий
Поделиться на других сайтах

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

Да, и еще, а та система предпросмотра сообщений в темах как показана на твоем демонстрационном сайте уже в этом моде ? или это отдельно ? просто если в этом то ничего после уставноки не поменялось )
Ссылка на комментарий
Поделиться на других сайтах

Всплывающая подсказка? Нет, при чём тут ответ :D Про него есть отдельная тема.
Ссылка на комментарий
Поделиться на других сайтах


×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.