Skip to content
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Действие не выполнено

Здравствуйте!

В колонке "Изменения статуса" при ответе на статус пользователя, выходит js alert "Действие не выполнено". Если обновить страницу, то можно увидеть свой ответ. Т.е. в базу записывается ответ. Если самому написать статус, то все нормально. :(

Кто-нибудь сталкивался?

Featured Replies

Файлы форума правили, внесли лишние пробелы/перевод каретки/BOM, как результат, ajax-ответ форума начинается с пробела, а, как известно, " ok" != "ok". Ищите лишние символы и пустые строки в файлах, что правили.

  • Author

Файлы форума правили, внесли лишние пробелы/перевод каретки/BOM, как результат, ajax-ответ форума начинается с пробела, а, как известно, " ok" != "ok". Ищите лишние символы и пустые строки в файлах, что правили.

Спасибо буду искать!

  • 1 year later...
  • Author

проблема повторяется. Если открыть в браузере файл /ipb/public/js/ipb.js и обновить его, то все приходит в порядок до определенного времени. потом все повторяется.

Попробуйте этот файл от версии 3.4.5. От версии к версии сторонние js не сильно меняются в этом продукте. Если у вас нулл, советую перейти на официальную версию.

ipb.zip

Edited by Zero108

  • Author

Попробуйте этот файл от версии 3.4.5. От версии к версии сторонние js не сильно меняются в этом продукте. Если у вас нулл, советую перейти на официальную версию.

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

  • Author

После вставки того файла, не работает редактор, а именно вставка медиа-файлов и т.д.

Значит, только платить за продление лицензии и вперед обновляться. Могу выслать еще 2-3 файла.

  • Author

Значит, только платить за продление лицензии и вперед обновляться. Могу выслать еще 2-3 файла.

давайте еще файлы. может подберем.

Странный вы человек. Мне-то не жалко. А какие?

 

Кстати, у вас версия от IBR или от IPS?

  • 1 month later...
  • Author

new Ajax.Request( ipb.vars['base_url'] + "app=members&section=status&module=ajax&do=reply&status_id=" + status_id + "&md5check=" + ipb.vars['secure_hash'],
{
method: 'post',
evalJSON: 'force',
parameters: {
	content: $('statusText-' + status_id ).value.encodeParam()
},
onSuccess: function(t)
{
if( Object.isUndefined( t.responseJSON ) )
{
   alert( ipb.lang['action_failed'] );
   return;
}

в файле public/js/ips.status.js срабатывает условие if( Object.isUndefined( t.responseJSON ) ).

  • Author

в приложении members при post-запросе срабатывает этот метод класса

protected function _reply()
{
	/* INIT */
	$status_id = intval( $this->request['status_id'] );
	$comment   = $this->convertAndMakeSafe( $_POST['content'] );
	$id        = intval( $this->request['id'] );

	/* Quick check? */
	if ( ! $status_id OR ! $comment )
		{
		$this->returnJsonError( $this->lang->words['status_no_reply'] );
	}

	/* Set Author */
	$this->registry->getClass('memberStatus')->setAuthor( $this->memberData );

	/* Set Content */
	$this->registry->getClass('memberStatus')->setContent( $comment );

	/* Set Data */
	$this->registry->getClass('memberStatus')->setStatusData( $status_id );

	/* Can we reply? */
	if ( ! $this->registry->getClass('memberStatus')->canReply() )
		{
		$this->returnJsonError( $this->lang->words['status_no_reply'] );
	}

	/* Update */
	$this->registry->getClass('memberStatus')->reply();

	/* Now grab the reply and return it */
	$reply = $this->registry->getClass('output')->getTemplate('profile')->statusReplies( $this->registry->getClass('memberStatus')->fetchAllReplies( $status_id, array( 'sort_dir' => 'desc', 'limit' => 1 ) ) );

	/* And the number of replies */
	$statusData = $this->registry->getClass('memberStatus')->getStatusData();

	$this->returnJsonArray( array( 'status' => 'success', 'html' => $this->cleanOutput( $reply ), 'status_replies' => $statusData['status_replies'] + 1 ) );
}

  • 2 weeks later...
  • Author

Если никто не отвечал на статус который отвечаешь, то все проходит хорошо.

А в случае если уже кто-то ответил, то выдает сообщение "действие не выполнено".

 

Ошибка выдается после строки в файле /ipb/admin/applications/members/modules_public/ajax/status.php

$this->registry->getClass('memberStatus')->reply();

 

 

в файле /ipb/admin/sources/classes/member/status.php

класс memberStatus

метод public function reply

если за комментировать строчку

$this->_sendNotification( $author, $status, $data );

то все работает. Думаю что это класс по отсылке личных сообщений, о том что кто-то ответил на статус.

Edited by ayd-in

  • Author

if( $_owner['member_id'] == $member['member_id'] ){
    ...
}
else{
      return TRUE;
IPSText::getTextClass('email')->subject	= sprintf( 
																			$this->lang->words['subject__other_status_reply'], 
																			$this->registry->output->buildSEOUrl( 'showuser=' . $_replier['member_id'], 'public', $_replier['members_seo_name'], 'showuser' ), 
																			$_replier['members_display_name'],
																			$this->registry->output->buildSEOUrl( 'showuser=' . $_owner['member_id'], 'public', $_owner['members_seo_name'], 'showuser' ), 
																			$_owner['members_display_name'],
																			$this->settings['base_url'] . 'app=members&module=profile&section=status&do=list&status_id=' . $status['status_id']
																		);
}

Если добавить return TRUE; то работает. Получается что не работает отправка notification :(

Edited by ayd-in

  • Author

Аааааааааааааааааааааа :blink: :blink: :blink: :blink

сделал так, работает. $this->lang->words['subject__other_status_reply'], Вместо $this->lang->words['subject_other_status_reply']

 

но в языках с двумя черточками

 

 

проблема решилась тем что

 

в языках не правильно было слово subject__other_status_reply

<a href='%s'>%s</a> has replied to <a href='%s'>%s</a>'s <a href='%s'>status</a>

Edited by ayd-in

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.