// # Copyright (C) 2010-2020 RhodeCode GmbH // # // # This program is free software: you can redistribute it and/or modify // # it under the terms of the GNU Affero General Public License, version 3 // # (only), as published by the Free Software Foundation. // # // # This program is distributed in the hope that it will be useful, // # but WITHOUT ANY WARRANTY; without even the implied warranty of // # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // # GNU General Public License for more details. // # // # You should have received a copy of the GNU Affero General Public License // # along with this program. If not, see . // # // # This program is dual-licensed. If you wish to learn more about the // # RhodeCode Enterprise Edition, including its added features, Support services, // # and proprietary license terms, please see https://rhodecode.com/licenses/ /** * autocomplete formatter that uses gravatar * */ var autocompleteFormatResult = function (data, value, org_formatter) { var activeUser = data.active || true; var valueDisplay = data.value_display; if (!activeUser) { valueDisplay = '(disabled) ' + valueDisplay; } var escapeRegExChars = function (value) { return value.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); }; var pattern = '(' + escapeRegExChars(value) + ')'; valueDisplay = valueDisplay.replace(new RegExp(pattern, 'gi'), '$1<\/strong>'); var tmpl = '
{1}
'; if (data.icon_link === "") { tmpl = '
{0}
'; return tmpl.format(valueDisplay); } return tmpl.format(data.icon_link, valueDisplay); }; /** * autocomplete filter that uses display value to filter */ var autocompleteFilterResult = function (suggestion, originalQuery, queryLowerCase) { return suggestion.value_display.toLowerCase().indexOf(queryLowerCase) !== -1; };