mirror of
https://github.com/flarum/framework.git
synced 2025-05-23 23:29:57 +08:00

- Does not affect "core.deleted_user" global string. - Corresponding YAML will be sent later w/ more extracted strings.
37 lines
963 B
JavaScript
37 lines
963 B
JavaScript
import highlight from 'flarum/helpers/highlight';
|
|
import avatar from 'flarum/helpers/avatar';
|
|
|
|
/**
|
|
* The `UsersSearchSource` finds and displays user search results in the search
|
|
* dropdown.
|
|
*
|
|
* @implements SearchSource
|
|
*/
|
|
export default class UsersSearchResults {
|
|
search(query) {
|
|
return app.store.find('users', {
|
|
filter: {q: query},
|
|
page: {limit: 5}
|
|
});
|
|
}
|
|
|
|
view(query) {
|
|
const results = app.store.all('users')
|
|
.filter(user => user.username().toLowerCase().substr(0, query.length) === query);
|
|
|
|
if (!results.length) return '';
|
|
|
|
return [
|
|
<li className="Dropdown-header">{app.trans('core.forum.search_users_heading')}</li>,
|
|
results.map(user => (
|
|
<li className="UserSearchResult" data-index={'users' + user.id()}>
|
|
<a href={app.route.user(user)} config={m.route}>
|
|
{avatar(user)}
|
|
{highlight(user.username(), query)}
|
|
</a>
|
|
</li>
|
|
))
|
|
];
|
|
}
|
|
}
|