mirror of https://github.com/zulip/zulip.git
search.js: Construct descriptions while constructing suggestions.
(imported from commit 5de6d0799de6d132e6e7ac28658d0f25b71cc7ed)
This commit is contained in:
parent
d216069e29
commit
b4e05d3430
|
@ -197,6 +197,13 @@ function get_stream_suggestions(query) {
|
||||||
return mapped[label];
|
return mapped[label];
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$.each(objs, function (idx, obj) {
|
||||||
|
var prefix = 'Narrow to stream';
|
||||||
|
var stream = obj.query;
|
||||||
|
stream = typeahead_helper.highlight_query_in_phrase(query, stream);
|
||||||
|
obj.description = prefix + ' ' + stream;
|
||||||
|
});
|
||||||
|
|
||||||
// streams are already sorted
|
// streams are already sorted
|
||||||
objs = typeahead_helper.sorter(query, objs, get_query);
|
objs = typeahead_helper.sorter(query, objs, get_query);
|
||||||
|
|
||||||
|
@ -217,6 +224,24 @@ function get_person_suggestions(query, action) {
|
||||||
return mapped[label];
|
return mapped[label];
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$.each(objs, function (idx, obj) {
|
||||||
|
var prefix;
|
||||||
|
var person;
|
||||||
|
var name;
|
||||||
|
|
||||||
|
if (action === 'private_message') {
|
||||||
|
prefix = 'Narrow to private messages with';
|
||||||
|
}
|
||||||
|
|
||||||
|
if (action === 'sender') {
|
||||||
|
prefix = 'Narrow to messages sent by';
|
||||||
|
}
|
||||||
|
|
||||||
|
person = obj.query;
|
||||||
|
name = highlight_person(query, person);
|
||||||
|
obj.description = prefix + ' ' + name;
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
objs.sort(function (x, y) {
|
objs.sort(function (x, y) {
|
||||||
return typeahead_helper.compare_by_pms(get_query(x), get_query(y));
|
return typeahead_helper.compare_by_pms(get_query(x), get_query(y));
|
||||||
|
@ -242,6 +267,8 @@ exports.initialize = function () {
|
||||||
var label = get_label(obj);
|
var label = get_label(obj);
|
||||||
mapped[label] = obj;
|
mapped[label] = obj;
|
||||||
obj.label = label;
|
obj.label = label;
|
||||||
|
var description = describe(operators);
|
||||||
|
obj.description = Handlebars.Utils.escapeExpression(description);
|
||||||
result = [label];
|
result = [label];
|
||||||
} else {
|
} else {
|
||||||
return [];
|
return [];
|
||||||
|
@ -262,37 +289,8 @@ exports.initialize = function () {
|
||||||
},
|
},
|
||||||
items: 20,
|
items: 20,
|
||||||
highlighter: function (item) {
|
highlighter: function (item) {
|
||||||
var query = this.query;
|
|
||||||
var obj = mapped[item];
|
var obj = mapped[item];
|
||||||
var prefix;
|
return obj.description;
|
||||||
var person;
|
|
||||||
var name;
|
|
||||||
var stream;
|
|
||||||
|
|
||||||
if (obj.action === 'private_message') {
|
|
||||||
prefix = 'Narrow to private messages with';
|
|
||||||
person = obj.query;
|
|
||||||
name = highlight_person(query, person);
|
|
||||||
return prefix + ' ' + name;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (obj.action === 'sender') {
|
|
||||||
prefix = 'Narrow to messages sent by';
|
|
||||||
person = obj.query;
|
|
||||||
name = highlight_person(query, person);
|
|
||||||
return prefix + ' ' + name;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (obj.action === 'stream') {
|
|
||||||
prefix = 'Narrow to stream';
|
|
||||||
stream = obj.query;
|
|
||||||
stream = typeahead_helper.highlight_query_in_phrase(query, stream);
|
|
||||||
return prefix + ' ' + stream;
|
|
||||||
}
|
|
||||||
|
|
||||||
var description = describe(obj.operators);
|
|
||||||
description = Handlebars.Utils.escapeExpression(description);
|
|
||||||
return description;
|
|
||||||
},
|
},
|
||||||
matcher: function (item) {
|
matcher: function (item) {
|
||||||
return true;
|
return true;
|
||||||
|
|
Loading…
Reference in New Issue