Files
zulip/static/js/feature_flags.js
Steve Howell 2fb7c0059d Support negated searches on staging.
Behind a feature flag you can now do searches like this:

    -pm-with:othello@example.com is:private

The "-" in front of "pm-with" tells us to exclude messages
with Othello from our search.  We support "-" in front of
all operators, although the behavior for "-search:" and
and "-near:" doesn't really change in this commit.

Note that the filtering out of "negated" predicates only
happens on the client side in this commit.  On the server
side we ignore negated predicates and send back a superset
of the results.

(imported from commit 6cdeaf32f2d493fbbb838630f0da3da880b1ca18)
2014-02-13 14:14:24 -05:00

69 lines
2.0 KiB
JavaScript

var feature_flags = (function () {
var exports = {};
// Helpers
var special_24_hour_people= _.contains([],
page_params.email);
var zulip_mit_emails = [];
var is_zulip_mit_user = _.contains(zulip_mit_emails, page_params.email);
var iceland = page_params.domain === 'customer8.invalid';
var customer4_realms = [
'customer4.invalid',
'users.customer4.invalid'
];
var is_customer4 = _.contains(customer4_realms, page_params.domain);
// Enterprise-related flags
exports.do_not_share_the_love = page_params.enterprise;
// Manually-flipped debugging flags
exports.log_send_times = false;
exports.collect_send_times = false;
// Permanent realm-specific stuff:
exports.disable_message_editing = _.contains(['mit.edu'], page_params.domain);
exports.twenty_four_hour_time = special_24_hour_people || iceland;
exports.mandatory_topics = _.contains([
'customer7.invalid'
],
page_params.domain
);
exports.left_side_userlist = page_params.staging || _.contains(['customer7.invalid'], page_params.domain);
//This was set as a page_params variable already, because it's also used in
//the settings.html django template. See zerver/views/__init__.py:home(request).
exports.show_autoscroll_forever_option = page_params.show_autoscroll_forever_option;
// Still very beta:
exports.full_width = false; //page_params.staging;
exports.local_echo = page_params.staging || is_customer4 || _.contains(['customer15.invalid'], page_params.domain);
exports.cleanup_before_reload = page_params.staging;
exports.show_digest_email_setting = page_params.staging;
exports.negated_search = page_params.staging;
exports.fade_at_stream_granularity = page_params.staging;
// Still burning in...
exports.fade_users_when_composing = true;
exports.mark_read_at_bottom = true;
exports.propagate_topic_edits = true;
exports.summarize_read_while_narrowed = false;
exports.clicking_notification_causes_narrow = true;
exports.use_socket = true;
// Ready for deprecation.
exports.collapsible = false;
exports.dropbox_integration = false;
return exports;
}());