Перейти к содержимому
Русский язык для Invision Community 5

Код для поиска по системе жалоб

Добрый день!

 

Не подскажите ли код для строки поиска по системе жалоб? Чтобы можно было ввести никнейм модератора и жалоба нашлась. Мне нужен только код для строки поиска.

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

Я не вижу поиск по жалобам.

  • Автор

Я не вижу поиск по жалобам.

Его там и нет. Я хочу его сделать. Вот такой код нашел, но он не работает.

 

<input type="text" name="show" id="filter" placeholder="Модератор" value="">
<input type="submit" class="input_submit alt" name="_filtering" id="_filtering" value="Отфильтровать">

 

Ошибка: [#20113] Выбрана неправильная опция

 

Я так понял, что на сервер отправляется пустой запрос. Он не берет данные из введенной строки и поэтому возникает ошибка.

Его там и нет.

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

  • Автор

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

Нет. Это не поиск, а фильтр по никнеймам. Вот нашел ссылку: /index.php?app=core&module=reports&do=index&show=Mid2&report_date_start=&report_date_end=

Где Mid2 - искомый в жалобах никнейм.

<form action="{$this->settings['base_url']}app=core&module=reports&do=index&report_date_start=&report_date_end=" method="get">
<input type="text" name="show" class="input_text">
</form>

  • Автор

"Выбрана неправильная опция" Куда и как его вставлять?

Куда и как его вставлять?

Куда хотите туда и вставляйте. Только в форме поиска добавлять не нужно, потому что там отдельная форма. Если вы хотите вставить в форме поиска, придется написать обработчик событий по примеру как здесь сделано с тегами.

 

document.observe("dom:loaded", function(){
if($('search-box')){
	$('search-box').observe('submit', function(e){
		var f = this;

		if(! f.s_tags.checked){
			return;
		}

		var elems = {'do': 'search', module: 'cloud', section: 'cloud', mode: 2},
			input;
		for(var n in elems){
			if(! f[n]){
				input = new Element('input', {'type': 'hidden', 'name':n, 'value': elems[n]});
				f.appendChild(input);
			}
			else{
				f[n].value = elems[n];
			}
		}
		if(! f['tag']){
				input = new Element('input', {'type': 'hidden', 'name':'tag', 'value': ''});
				f.appendChild(input);
		}

		f['tag'].value = f['search_term'].value;
		f.action = ipb.vars['board_url']+'/index.php?'+'app=tagscloud';
	});
}
});

  • Автор

Я вставил в шаблон жалоб, но у меня выдает ошибку при вводе никнейма. И Вы же сами говорили что в IPB такая функция не предусмотрена.

И Вы же сами говорили что в IPB такая функция не предусмотрена.

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

  • Автор

А ну я про него и говорю, я думал что это одинаковые функции. А почему сам фильтр не рабочий?

Судя по всему он посылает пустой запрос, хотя должна формироваться ссылка. А что фильтр предусмотрен IPB?

Сам фильтр скорее всего рабочий, проблема в том как вы отправляете запрос.

  • Автор

Сам фильтр скорее всего рабочий, проблема в том как вы отправляете запрос.

Я ввожу никнейм искомого модератора и нажимаю enter. Вот код куда вставил:

<div id='topic_mod' class='moderation_bar rounded with_action clear'>
<a href='#' class='ipsButton_secondary left' id='prune_reports'>{$this->lang->words['report_option_prune']}</a>
       <span class="desc">Фильтр:</span>
       <form action="{$this->settings['base_url']}app=core&module=reports&do=index&report_date_start=&report_date_end=" method="get">
   <input type="text" name="show" placeholder="Модератор">
</form>
<span class='desc'>{$this->lang->words['r_with_selected']}</span>
<select name="newstatus" id="report_actions">
	<option value="x">---</option>
	<if test="accessACP:|:$this->memberData['g_access_cp']">
		<optgroup label="{$this->lang->words['report_actions']}"  style="font-style: normal;">
		<if test="$this->memberData['g_access_cp']"><option value="d">{$this->lang->words['report_option_delete']}</option></if>
		</optgroup>
	</if>
	<optgroup label="{$this->lang->words['report_actions_mark_optgroup']}" style="font-style: normal;">
	{$acts}
	</optgroup>
</select>
<label for='pruneDayBox' id='pruneDayLabel'>{$this->lang->words['older_than']}</label>
<input type="text" name="pruneDays" id="pruneDayBox" class='input_text' size="3" value="" />
<span id='pruneDayLang'>{$this->lang->words['report_prune_days_box']}</span>
<input type="submit" id='report_mod' class="input_submit alt" value="{$this->lang->words['r_go']}" />
</div>

главное создать отдельную форму

 

Разве не видно что там есть теги input, select а это элементы другой формы?

Форму нужно вывести за пределами этой формы, то есть за .

  • Автор

Разве не видно что там есть теги input, select а это элементы другой формы?

Форму нужно вывести за пределами этой формы, то есть за </form>.

Вынес, но фильтрации нет. Страница обновляется и все.

Страница не должна обновляться, она должна перейти по адресу который указан в form action.

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.