subscription: Fix error in being re-subscribed to private stream.

Fixes #9023
This commit is contained in:
YJDave
2018-04-08 10:36:42 +05:30
committed by Tim Abbott
parent 24f51739eb
commit ed70a92ed3
2 changed files with 15 additions and 0 deletions

View File

@@ -58,6 +58,9 @@ exports.hide_sub_settings = function (sub) {
}; };
exports.show_sub_settings = function (sub) { exports.show_sub_settings = function (sub) {
if (!exports.is_sub_settings_active(sub)) {
return;
}
var $settings = $(".subscription_settings[data-stream-id='" + sub.stream_id + "']"); var $settings = $(".subscription_settings[data-stream-id='" + sub.stream_id + "']");
if ($settings.find(".email-address").val().length === 0) { if ($settings.find(".email-address").val().length === 0) {
// Rerender stream email address, if not. // Rerender stream email address, if not.

View File

@@ -203,6 +203,10 @@ function add_email_hint_handler() {
} }
exports.add_sub_to_table = function (sub) { exports.add_sub_to_table = function (sub) {
if (exports.is_sub_already_present(sub)) {
return;
}
var html = templates.render('subscription', sub); var html = templates.render('subscription', sub);
var settings_html = templates.render('subscription_settings', sub); var settings_html = templates.render('subscription_settings', sub);
if (stream_create.get_name() === sub.name) { if (stream_create.get_name() === sub.name) {
@@ -224,6 +228,14 @@ exports.add_sub_to_table = function (sub) {
} }
}; };
exports.is_sub_already_present = function (sub) {
var button = button_for_sub(sub);
if (button.length !== 0) {
return true;
}
return false;
};
exports.remove_stream = function (stream_id) { exports.remove_stream = function (stream_id) {
// It is possible that row is empty when we deactivate a // It is possible that row is empty when we deactivate a
// stream, but we let jQuery silently handle that. // stream, but we let jQuery silently handle that.