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

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


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

Нет, не учитывает.

мессаги напрямую идут - а не через пост.пхп - так что ни одна инструкция ипбшная не ботает

Ну не совсем уж так )

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

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

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

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

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

Проблему с аттачами тоже?! Это поважнее для кого-то чем права доступа.

 

P.S. А прав всё равно Song :) но инструкцию тогда не все смогут освоить) Эх, был бы у меня ноут на даче...

Поясни проблему с аттачами? У меня все в порядке вроде. :D

Просто пока вы резали и "совершенствовали" функцию, видимо не все сделали. У меня вот такое есть ;)

 

if ( $this->is_merging_posts )
		{
			//-----------------------------------------
			// Update attachments
			//-----------------------------------------

			$this->ipsclass->DB->do_update( 'attachments', array( 'attach_post_key' => $this->post->post['post_key'] ), "attach_rel_module='post' AND attach_rel_id=".$this->post->post['pid'] );
		}

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

Ой как много у меня багов стало, Sannis спасай! :

1 Опросы глючат при включённом AJAX'е на форуме, пишет ошибку при отправке голоса (после того как ты что то поковырял :D)

2 Поставил мод "Причина редактирования сообщения" так когда делаешь быстрое редактирование сообщения, там спрашивают причину редактирования, пишешь туда что нибудь а оно тебе потом код длинный очень даёт типа 34TKLH34OIHT3U34H092 и тд вместо твоей вписанной причины

3 Жмёшь иногда "Быстрая цитата" или "Быстрое редактирование" на AJAX, а оно тебе может процитировать как и сообщение так и код страницы хз, не всегда такое но у меня и у одного знакомого такое было не раз....

4 У меня не работал мод отметки разделов прочтёнными из под AJAX при нажатии на иконку, ты нашёл выход такое - skin_global (Основные HTML фрагменты) > global_board_header добавив там что то типа такого:

//<![CDATA[
var use_afr = {$this->ipsclass->member['use_afr']};
//]]>

стало выдавать ошибку в JAVA скриптах при просмотре форума, хотя возможно это маловажно но не хотелось бы эту ошибку всегда видеть, когда убираешь эти строки то мод снова перестаёт работать, хотелось бы найти более толковый способ решения этой проблемы...

5 как ещё сделать чтобы Быстрое редактирование сообщения не было начальным а могло включаться со всеми AJAX модами или оно и есть начальное?

------------------------

Пока что всё но эти траблы меня очень достали, помоги плиз ;) и все остальные кто может тоже желательно чтобы посоветовали решения моих проблем :)

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

VOTEX, разделите вопросы по модам, а то выходит быстрый ответ во всем виноват?

 

1. Значит недоковырял что-то из того что вы ковыряли... Мы с вами общались насколько мне помнится только на тему быстрого ответа.

 

2. Это чей мод? В его тему, плз. Проблема в том что юникод не конвертируется.

 

3. Не совсем понял что при этом происходит...

 

4. Толковые способы ничто если потом что-то править и валить на других :D

 

5. В смысле начальное? Это стандартная фича, да, настройка что добавили на это не влияет.

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

Song: я имею в виду встроенный антифлуд. который по умолчанию в ипб вшит. или в этой форме быстрого ответа он тоже не работает? O_o

 

Правильно! И я тоже про него говорил.

Не учитывает этот мод проверку на флуд. Причина на прошлой странице обсуждалась.

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

Буду признателен, если ктонить скомпонует список явных косяков, для проверки исправленности в новой версии :D

На данный момент аттачи в норме, все права и т.д. тоже. Доделываю редирект при включённой каптче для гостей. Далее по плану исправить пометку темы как старой.

Возможно потребуется кто-нибудь для теста...

 

--------------------------

Осталась одна проблема, которую никто не упомянул: Что делать если сортировка темы идёт каким-то хитрым образом, например по убыванию? Кому-нибудь это важно из здесь присутствующих?

И ещё одна: проверить кроссбраузерность и таки написать яваскрипт для меню...

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

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

 

P.S. Мозк плавится от накрученного яваскрипты менюшек, жесть просто...

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

аа.. а в 2.х этот порядок типо можно менять?

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

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

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

Ну тогда надо обязательно предусматривать.

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

Пока что предусмотрел в виде перенаправления к view=getlastpost. Хотя если на первой странице отвечаешь, нужно пост по идее в начало страницы добавлять... Это ещё в разработке, но уже не критичный баг. Потому собственно не выкладываю...
Ссылка на комментарий
Поделиться на других сайтах

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

исправил файлы, в шаблонах вроде исправления нет (не трогал), и при отправке сообщения - сообщение НЕ отправляется и остается в форме быстрого ответа ;)

 

мой renderrow правильный?

<div id="post-row-{$post['pid']}">
<!--post-html-->
<!--Begin Msg Number {$post['pid']}-->
<table class='ipbtable' cellspacing="1">
<tr>
	<td valign="middle" class="row2" width="1%">
		<a name="entry{$post['pid']}"></a>
		<if="$author['id']">
			<div id="post-member-{$post['pid']}" class='popmenubutton-new-out'>
				<span class="{$post['name_css']}">{$author['_pp_online_image']}{$author['_members_display_name']}</span>
			</div>
			<!-- member menu -->
			<div class='popupmenu-new' id='post-member-{$post['pid']}_menu' style='display:none;width:230px'>
				<div class='popupmenu-item-last'>
					<if="$author['members_display_name_short'] != $author['members_display_name']">
						<div class='popupmenu-item'><strong>{$author['members_display_name']}</strong></div>
					</if>
					<div style='float:right'>
						<div class='pp-image-thumb-wrap'>
							<img src='{$author['pp_thumb_photo']}' width='{$author['pp_thumb_width']}' height='{$author['pp_thumb_height']}' alt='' />
						</div>
						<if="$this->ipsclass->vars['pp_allow_member_rate']">
							<div style='margin-top:5px;margin-left:6px;'>
								<img src="{$this->ipsclass->vars['img_url']}/rating_{$author['_pp_rating_real']}_mini.gif" alt='{$this->ipsclass->lang['rating_prefix']}: {$author['_pp_rating_real']}' style='vertical-align:middle' border='0' />
							</div>
						</if>
					</div>
					<div class='popupmenu-item'>
						{$author['_pp_gender_image']} <a href="{$this->ipsclass->base_url}showuser={$author['id']}">{$this->ipsclass->lang['dd_view_profile']}</a>
					</div>
					<if="$this->ipsclass->member['id']">
						<div class='popupmenu-item'>
							<if="in_array( $author['id'], array_keys( $this->ipsclass->member['_cache']['friends'] ) )">
								<img src='{$this->ipsclass->vars['img_url']}/folder_profile_portal/friend_remove_small.png' alt='' border='0' /> <a href="#" onclick='friends_pop("&do=remove&member_id={$author['id']}&md5check={$this->ipsclass->md5_check}"); return false'>{$this->ipsclass->lang['dd_remove_friend']}</a>
							<else />
								<img src='{$this->ipsclass->vars['img_url']}/folder_profile_portal/friend_add_small.png' alt='' border='0' /> <a href="#" onclick='friends_pop("&do=add&member_id={$author['id']}&md5check={$this->ipsclass->md5_check}"); return false'>{$this->ipsclass->lang['dd_add_friend']}</a>
							</if>
						</div>
						<div class='popupmenu-item'>
							<img src='{$this->ipsclass->vars['img_url']}/folder_profile_portal/send_pm_small.png' alt='' border='0' /> <a href="{$this->ipsclass->base_url}act=Msg&CODE=4&MID={$author['id']}">{$this->ipsclass->lang['dd_send_pm']}</a>
						</div>
						<div class='popupmenu-item'>
							<img src='{$this->ipsclass->vars['img_url']}/folder_profile_portal/find_posts.png' alt='' border='0' /> <a href='{$this->ipsclass->base_url}act=Search&CODE=gettopicsuser&mid={$author['id']}'>{$this->ipsclass->lang['dd_find_topics']}</a>
						</div>
						<div class='popupmenu-item-last'>
							<img src='{$this->ipsclass->vars['img_url']}/folder_profile_portal/find_posts.png' alt='' border='0' /> <a href='{$this->ipsclass->base_url}act=Search&CODE=getalluser&mid={$author['id']}'>{$this->ipsclass->lang['dd_find_posts']}</a>
						</div>
					</if>
				</div>
			</div>
			<!-- member menu -->
			<script type="text/javascript">
				ipsmenu.register( "post-member-{$post['pid']}", '', 'popmenubutton-new', 'popmenubutton-new-out' );
			</script>
		<else />
			<span class="{$post['name_css']}">{$author['_members_display_name']}</span>
		</if>

	</td>
	<td class="row2" valign="middle" width="99%">
		<!-- POSTED DATE DIV -->
		<div style="float: left;">
			<span class="postdetails">{$post['post_icon']} <img src='{$this->ipsclass->vars['img_url']}/to_post_off.gif' alt='{$this->ipsclass->lang['to_post_alt']}' border='0' style='padding-bottom:2px' /> {$post['post_date']}</span>
		</div>
		<!-- REPORT / DELETE / EDIT / QUOTE DIV -->
		<div align="right">
			<span class="postdetails">{$post['ip_address']} {$this->ipsclass->lang['posted_on']}
				<a title="{$this->ipsclass->lang['tt_link']}" href="{$this->ipsclass->vars['board_url']}/index.{$this->ipsclass->vars['php_ext']}?showtopic={$post['topic_id']}&view=findpost&p={$post['pid']}" onclick="link_to_post({$post['pid']}); return false;">#{$post['post_count']}</a>
				<if="$this->ipsclass->member['is_mod']">
					| <a href="#" title="{$this->ipsclass->lang['click_for_mod']}" onclick="topic_toggle_pid('{$post['pid']}'); return false;">{$post['pid_start_image']}</a>
				</if>
			</span>
		</div>
	</td>
</tr>
<tr>
	<td valign="top" class="{$post['post_css']}">
		<span class="postdetails">
			<if="$author['id'] AND $author['avatar']">
				<a href="{$this->ipsclass->base_url}showuser={$author['id']}" title="{$this->ipsclass->lang['dd_view_profile']}">{$author['avatar']}</a><br /><br />
			<else />
				{$author['avatar']}<br /><br />
			</if>
			{$author['title']}<br />
			{$author['member_rank_img']}<br /><br />
			{$author['member_group']}<br />
			{$author['member_posts']}<br />
			{$author['member_joined']}<br />
			{$author['member_location']}
			{$author['member_number']}<br /><br>
				   <b> {$author['ins_nick']}<br /><br>
{$author['ins_q']}</b><br />
			<if="$author['custom_fields'] != """>
				{$author['custom_fields']}
			</if>
			<br />
			{$author['warn_text']} {$author['warn_minus']}{$author['warn_img']}{$author['warn_add']}
		</span><br />
		<img src="{$this->ipsclass->vars['img_url']}/spacer.gif" alt="" width="160" height="1" /><br /> 
   </td>
   <td width="100%" valign="top" class="{$post['post_css']}" id='post-main-{$post['pid']}'>
		<!-- THE POST {$post['pid']} -->
		<div class="postcolor" id='post-{$post['pid']}'>
			{$post['post']}
			{$post['edit_by']}
			<if="$post['post_edit_reason'] != ''">
				<div class='post-edit-reason'>
					{$this->ipsclass->lang['reason_for_edit']}: {$post['post_edit_reason']}
				</div>
			</if>
			<!--IBF.ATTACHMENT_{$post['pid']}-->
		</div>

		{$post['signature']}
		<!-- THE POST -->		
	</td>
</tr>
<tr>
	<td class="formbuttonrow" nowrap="nowrap">
		<div style='text-align:left'><a href="java script:scroll(0,0);"><{P_UP}></a>{$post['report_link']}</div>
	</td>
	<td class="formbuttonrow" nowrap="nowrap">
		<!-- PM / EMAIL / WWW / MSGR -->
		<div style="float: left;">

		</div>
		<!-- REPORT / UP -->
		 <div align="right">
			 {$post['delete_button']}{$post['edit_button']}<a href="#" onclick="multiquote_add({$post['pid']}); return false;" title="{$this->ipsclass->lang['mq_title']}">{$post['mq_start_image']}</a><a href="{$this->ipsclass->base_url}act=Post&CODE=02&f={$this->ipsclass->input['f']}&t={$this->ipsclass->input['t']}&qpid={$post['pid']}" title="{$this->ipsclass->lang['tt_reply_to_post']}"><{P_QUOTE}></a>
		 </div>
	 </td>
</tr><tr>
<td class="catend" colspan="2">
<!-- no content -->
</td>
</tr>
</table>
<!--post-html-->
</div>
<!--rrjs-->
<if="$post['edit_button']!=''">
<script type='text/javascript'>
//<![CDATA[
if ( ajax_loaded && use_enhanced_js )
{
menu_build_menu( 'edit-but-{$post['pid']}',
new Array(  img_item + " <a title='{$this->ipsclass->lang['edit_full_desc']}' href='{$this->ipsclass->base_url}act=post&do=edit_post&f={$post['forum_id']}&t={$post['topic_id']}&p={$post['pid']}&st={$this->ipsclass->input['st']}'>{$this->ipsclass->lang['edit_full_title']}</a>",
			img_item + " <a href='#' title='{$this->ipsclass->lang['edit_quick_desc']}' onclick='return ajax_prep_for_edit({$post['pid']}, event);'>{$this->ipsclass->lang['edit_quick_title']}</a>" ) );
}
//]]>
</script>
</if>

 

Стал появлятся джава-алерт:

Ошибка. Возможно вы не ввели текст сообщения или вам запрещено оставлять сообщения в этой теме.
:D

 

В расширенной форме ответа всё добавляется...

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

Да блин.. пофиг на атаччи, пофиг на отметку тему.. главное сделйте чтобы ЗАБАНЕННЫЕ юзеры НЕ МОГЛИ написать сообщения!!!!!!!!!!!!!

 

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

 

Зачем такой мод тогда, из-за которога столько функций пропадает?!?!?!

 

Исправьте это недоразумение!!!

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

Да блин.. пофиг на атаччи, пофиг на отметку тему.. главное сделйте чтобы ЗАБАНЕННЫЕ юзеры НЕ МОГЛИ написать сообщения!!!!!!!!!!!!!

 

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

 

Зачем такой мод тогда, из-за которога столько функций пропадает?!?!?!

 

Исправьте это недоразумение!!!

Дык ты не молчанку давай, а бань по полной.

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

2 archtod: да.

 

2 archtod, TOIIOP: ссылка несколькими сообщениями выше.

 

2 pikachu: На forum.evanescence.ru? Сейчас нет алерта. В моде плавающей формы ответа не менялось название поля для ввода текста? Скорее всего это причина, либо нужно смотреть xmlout.php. Пишите в ПМ, могу посмотреть.

 

P.S. TOIIOP, не нравится - не ставьте.

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

Sannis: Нет, со старой версии этого мода НИЧЕГО не изменял. Исправил только обновления в файлах. Пороюсь пока сам...

 

ps: алерт скорее всего только у авторизированных пользователей (в том числе и у меня).

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

У неавторизированных нет быстрого ответа, тьак что я не поленился зарегиться. Алерта у меня нет :D

 

Так старую версию ставите или из архива по ссылке? Убедитесь что браузер грузит новый яваскрипт. Попробуйте очистить кеш для этого или зайти из другого браузера или компа...

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

Sannis: Перепроверил по инструкции все файлы. Еще раз. Всё без ошибок. 1ая версия мода работала, но известные проблемы с забанеными и двойные посты ОЧЕНЬ мешали. Понять не могу, что неправильно...

Я, кстати, после установки 1ой версии мода файлы форума и скины даже не трогал - вот решил обновиться...

 

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

Ну ладно, если не разберусь тогда удалю мод.

 

ps: у меня алерт всплывает и в огнелисе и в макстоне.

 

А проблема может быть связана с тем, что форум на утф8 крутиться? я просто сейчас сохранил сам скрипт в utf8 (через akelpad), поставил галочку на BOM, и сообщения стали добавляться, НО с перезагрузкой страницы...я скоро с ума сойду :D

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

2 archtod, TOIIOP: ссылка несколькими сообщениями выше.
Дык, там же для 2.2.х только... а хотелось бы и для 2.1.х. (возможно я ослеп уже, не вижу то что надо)

 

P.S. TOIIOP, не нравится - не ставьте.
Да уже установил, не охото удалять
Ссылка на комментарий
Поделиться на других сайтах

Имхо для 2.1 там будет тоже самое.

В отличии от Windows Админ не многозадачен!

Так что сначала для 2.2/2.3, а потом уже для 2.1.

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


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

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

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