Файл: js/xenforo/full/acp_quicksearch.js
Строк: 84
<?php
/** @param {jQuery} $ jQuery Object */
!function($, window, document, _undefined)
{
XenForo.AdminSearchForm = function($form)
{
var $input = $('#AdminSearchInput'),
$target = $($form.data('target')),
timeOut = null,
xhr = null,
storedValue = '';
$input.attr('autocomplete', 'off').bind(
{
keyup: function(e)
{
var currentValue = $input.strval();
if (currentValue != storedValue && currentValue.length >= 2)
{
storedValue = currentValue;
clearTimeout(timeOut);
timeOut = setTimeout(function()
{
console.log('The input now reads "%s"', $input.strval());
if (xhr)
{
xhr.abort();
}
xhr = XenForo.ajax
(
$form.attr('action'),
$form.serializeArray(),
function(ajaxData, textStatus)
{
if (XenForo.hasResponseError(ajaxData))
{
return false;
}
if (XenForo.hasTemplateHtml(ajaxData))
{
$target.empty().append(ajaxData.templateHtml);
$target.find('li').mouseleave(function(e)
{
$(this).removeClass('kbSelect');
});
$target.find('li:first').addClass('kbSelect');
}
}
);
}, 250);
}
else if (currentValue == '')
{
$target.empty();
}
},
keydown: function(e)
{
switch (e.which)
{
case 38: // up
case 40: // down
{
var $links = $target.find('li'),
$selected = $links.filter('.kbSelect'),
index = 0;
if ($selected.length)
{
index = $links.index($selected.get(0));
index += (e.which == 40 ? 1 : -1);
if (index < 0 || index >= $links.length)
{
index = 0;
}
}
$links.removeClass('kbSelect').eq(index).addClass('kbSelect');
return false;
}
}
}
});
$input.closest('form').submit(function(e)
{
e.preventDefault();
var $link = $target.find('li.kbSelect a');
if ($link.length)
{
window.location = $link.attr('href');
}
return false;
});
};
// *********************************************************************
XenForo.register('#AdminSearchForm', 'XenForo.AdminSearchForm');
}
(jQuery, this, document);
?>