mirror of
https://github.com/zulip/zulip.git
synced 2025-11-07 07:23:22 +00:00
Move stream-related uri helpers to hash_util.
This allows several modules to no longer need to import `narrow` (or, in our current pre-import world, to not have to use that global). The broken dependencies are reflected in the node tests, which should now run slightly faster.
This commit is contained in:
@@ -10,7 +10,6 @@ set_global('blueslip', global.make_zblueslip());
|
|||||||
|
|
||||||
zrequire('util');
|
zrequire('util');
|
||||||
zrequire('hash_util');
|
zrequire('hash_util');
|
||||||
zrequire('narrow');
|
|
||||||
zrequire('topic_data');
|
zrequire('topic_data');
|
||||||
zrequire('people');
|
zrequire('people');
|
||||||
zrequire('stream_color');
|
zrequire('stream_color');
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ zrequire('stream_sort');
|
|||||||
zrequire('colorspace');
|
zrequire('colorspace');
|
||||||
zrequire('stream_color');
|
zrequire('stream_color');
|
||||||
zrequire('hash_util');
|
zrequire('hash_util');
|
||||||
zrequire('narrow');
|
|
||||||
zrequire('unread');
|
zrequire('unread');
|
||||||
zrequire('stream_data');
|
zrequire('stream_data');
|
||||||
zrequire('scroll_util');
|
zrequire('scroll_util');
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ set_global('stream_popover', {});
|
|||||||
set_global('templates', {});
|
set_global('templates', {});
|
||||||
|
|
||||||
zrequire('hash_util');
|
zrequire('hash_util');
|
||||||
zrequire('narrow');
|
|
||||||
zrequire('stream_data');
|
zrequire('stream_data');
|
||||||
zrequire('unread');
|
zrequire('unread');
|
||||||
zrequire('topic_data');
|
zrequire('topic_data');
|
||||||
|
|||||||
@@ -55,6 +55,16 @@ exports.decode_operand = function (operator, operand) {
|
|||||||
return operand;
|
return operand;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
exports.by_stream_uri = function (stream) {
|
||||||
|
return "#narrow/stream/" + exports.encode_stream_name(stream);
|
||||||
|
};
|
||||||
|
|
||||||
|
exports.by_stream_subject_uri = function (stream, subject) {
|
||||||
|
return "#narrow/stream/" + exports.encode_stream_name(stream) +
|
||||||
|
"/subject/" + exports.encodeHashComponent(subject);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
return exports;
|
return exports;
|
||||||
|
|
||||||
}());
|
}());
|
||||||
|
|||||||
@@ -232,9 +232,10 @@ MessageListView.prototype = {
|
|||||||
|
|
||||||
if (message_container.msg.stream) {
|
if (message_container.msg.stream) {
|
||||||
message_container.stream_url =
|
message_container.stream_url =
|
||||||
narrow.by_stream_uri(message_container.msg.stream);
|
hash_util.by_stream_uri(message_container.msg.stream);
|
||||||
message_container.topic_url =
|
message_container.topic_url =
|
||||||
narrow.by_stream_subject_uri(message_container.msg.stream,
|
hash_util.by_stream_subject_uri(
|
||||||
|
message_container.msg.stream,
|
||||||
message_container.msg.subject);
|
message_container.msg.subject);
|
||||||
} else {
|
} else {
|
||||||
message_container.pm_with_url =
|
message_container.pm_with_url =
|
||||||
|
|||||||
@@ -787,15 +787,6 @@ exports.by_sender_uri = function (reply_to) {
|
|||||||
]);
|
]);
|
||||||
};
|
};
|
||||||
|
|
||||||
exports.by_stream_uri = function (stream) {
|
|
||||||
return "#narrow/stream/" + hash_util.encode_stream_name(stream);
|
|
||||||
};
|
|
||||||
|
|
||||||
exports.by_stream_subject_uri = function (stream, subject) {
|
|
||||||
return "#narrow/stream/" + hash_util.encode_stream_name(stream) +
|
|
||||||
"/subject/" + hash_util.encodeHashComponent(subject);
|
|
||||||
};
|
|
||||||
|
|
||||||
exports.by_conversation_and_time_uri = function (message, is_absolute_url) {
|
exports.by_conversation_and_time_uri = function (message, is_absolute_url) {
|
||||||
var absolute_url = "";
|
var absolute_url = "";
|
||||||
if (is_absolute_url) {
|
if (is_absolute_url) {
|
||||||
|
|||||||
@@ -228,7 +228,7 @@ exports.update_calculated_fields = function (sub) {
|
|||||||
!sub.invite_only || sub.subscribed);
|
!sub.invite_only || sub.subscribed);
|
||||||
// User can add other users to stream if stream is public or user is subscribed to stream.
|
// User can add other users to stream if stream is public or user is subscribed to stream.
|
||||||
sub.can_access_subscribers = !sub.invite_only || sub.subscribed || page_params.is_admin;
|
sub.can_access_subscribers = !sub.invite_only || sub.subscribed || page_params.is_admin;
|
||||||
sub.preview_url = narrow.by_stream_uri(sub.name);
|
sub.preview_url = hash_util.by_stream_uri(sub.name);
|
||||||
exports.render_stream_description(sub);
|
exports.render_stream_description(sub);
|
||||||
exports.update_subscribers_count(sub);
|
exports.update_subscribers_count(sub);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -220,7 +220,7 @@ function build_stream_sidebar_li(sub) {
|
|||||||
var args = {
|
var args = {
|
||||||
name: name,
|
name: name,
|
||||||
id: sub.stream_id,
|
id: sub.stream_id,
|
||||||
uri: narrow.by_stream_uri(name),
|
uri: hash_util.by_stream_uri(name),
|
||||||
not_in_home_view: stream_data.in_home_view(sub.stream_id) === false,
|
not_in_home_view: stream_data.in_home_view(sub.stream_id) === false,
|
||||||
invite_only: sub.invite_only,
|
invite_only: sub.invite_only,
|
||||||
color: stream_data.get_color(name),
|
color: stream_data.get_color(name),
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ exports.widget = function (parent_elem, my_stream_id) {
|
|||||||
unread: num_unread,
|
unread: num_unread,
|
||||||
is_zero: num_unread === 0,
|
is_zero: num_unread === 0,
|
||||||
is_muted: muting.is_topic_muted(my_stream_name, topic_name),
|
is_muted: muting.is_topic_muted(my_stream_name, topic_name),
|
||||||
url: narrow.by_stream_subject_uri(my_stream_name, topic_name),
|
url: hash_util.by_stream_subject_uri(my_stream_name, topic_name),
|
||||||
};
|
};
|
||||||
var li = $(templates.render('topic_list_item', topic_info));
|
var li = $(templates.render('topic_list_item', topic_info));
|
||||||
self.topic_items.set(topic_name, li);
|
self.topic_items.set(topic_name, li);
|
||||||
|
|||||||
Reference in New Issue
Block a user