Tim Abbott
46226bad21
presence: Fix mypy errors in new feature.
2017-02-10 23:57:28 -08:00
Tim Abbott
eeca69cb4b
mypy: Clean up more optional types.
2017-02-10 23:53:44 -08:00
Tim Abbott
aee81b702c
add_subscriptions_backend: Cleanup type of principals.
2017-02-10 23:53:44 -08:00
Tim Abbott
c9a782ff75
Simplify zerver/views/users.py:get_stream_name.
2017-02-10 23:53:44 -08:00
Tim Abbott
b81fd407e8
mypy: Fix several Optional typing errors.
2017-02-10 23:53:44 -08:00
Tim Abbott
71af0f7e2e
Add endpoint to fetch presence data for a single user.
...
This is an experimental API subject to its data format being changed.
Fixes #3638 .
2017-02-10 23:52:56 -08:00
saisrivathsa
b867ac3496
Extract zerver/lib/events.py from actions.py with event registration.
...
This moves do_events_register, fetch_initial_state_data and friends to
a new file.
Modified significantly by tabbott for correctness and to remove unused
imports.
Fixes #3635 .
2017-02-10 16:50:43 -08:00
Harshit Bansal
7d10cbc32b
Add RealmAlias.allow_subdomains to model, frontend, and API.
...
Includes a database migration.
Fixes #1868 .
2017-02-08 22:03:27 -08:00
Rishi Gupta
a16c48f0c4
actions.py: Change do_remove_realm_alias to take a RealmAlias.
...
Ensures that this function doesn't throw an error / prevents putting in an
incorrect realm or domain argument.
2017-02-08 21:15:28 -08:00
Tim Abbott
56cecc4891
users: Verify full names explicitly in user creation.
...
This fixes an issue where users could be created with an invalid name
(introduced only a couple commits ago when we added character set
restrictions).
2017-02-07 19:54:30 -08:00
Tim Abbott
2283b5fc91
users: Consolidate name change enforcement logic.
...
This has the side effect of fixing an issue where one could edit a
bot to have an invalid name.
2017-02-07 19:45:21 -08:00
Ritwik Srinivas
74b68f6bbc
Adds banned characters in name function
...
Disallows you from putting the characters @, *, `, and > and " in
your name. Added test cases similar to the MAX_NAME_LENGTH check
Copied initial code from:
https://github.com/zulip/zulip/pull/2473
2017-02-07 19:31:14 -08:00
Harshit Bansal
9f67f1ada7
DevAuthBackend: Improve the query for dev users.
...
This changes the query for DevAuthBackend so that the shakespearian
users are not omitted while limiting the number of extra users to be
rendered to something reasonable.
Fixes : #3578 .
2017-02-06 21:59:31 -08:00
Tim Abbott
fa02dfdff4
mobile: Add an endpoint for checking compatibility.
2017-02-03 09:55:34 -08:00
Rishi Gupta
92e8cad42a
dev login page: Add all non-zulip users as community users.
...
We create a new realm and user when running populate_analytics_db.py, in a
realm that is neither 'zulip' nor 'simple'.
2017-02-01 16:10:11 -08:00
Steve Howell
5ec4ed0d5c
bug fix: Allow renaming streams to different cases.
...
Before this change, you could not rename a stream
from "denmark" to "Denmark".
2017-02-01 14:20:46 -08:00
Harshit Bansal
59d22e7cb8
realm_emoji: Cleanup an unreachable try/except block.
...
Fixes : #3515 .
2017-01-30 16:43:02 -08:00
Tim Abbott
1bbf0f9a98
streams: Consider stream name validation logic.
2017-01-29 22:07:14 -08:00
Tim Abbott
884aa2b184
streams: Eliminate last use of get_stream in views.
2017-01-29 22:07:14 -08:00
Tim Abbott
32f778636b
streams: Add tests for do_rename_stream error paths.
2017-01-29 20:27:00 -08:00
Tim Abbott
a3f3f5b7bc
remove_default_stream: use access_stream_by_name.
2017-01-29 20:27:00 -08:00
Tim Abbott
19eaa92059
add_default_stream: use access_stream_by_name.
2017-01-29 20:27:00 -08:00
Tim Abbott
de3f539f58
do_change_stream_description: Accept a stream as argument.
2017-01-29 20:27:00 -08:00
Tim Abbott
2dc90e8ebd
rename_stream: Pass a stream object to do_rename_stream.
2017-01-29 20:27:00 -08:00
Tim Abbott
7be34357b2
rename_stream: Move stream name taken check to view.
2017-01-29 20:27:00 -08:00
Tim Abbott
ccdf17f47e
rename_stream: Move stream already has name check to view.
2017-01-29 20:27:00 -08:00
Tim Abbott
d059a0a90a
rename_stream: Move check_stream_name into view.
2017-01-29 20:26:59 -08:00
Tim Abbott
ab1e9f2b97
rename_stream: Move stripping of whitespace to view.
2017-01-29 20:26:59 -08:00
Tim Abbott
4ad1fadab0
streams: Create and use do_change_stream_invite_only.
2017-01-29 20:26:59 -08:00
Tim Abbott
c74ddb74e9
do_make_stream_private: Accept a stream object, not a name.
2017-01-29 20:26:59 -08:00
Tim Abbott
0a75480444
do_make_stream_public: Accept a stream object, not a name.
2017-01-29 20:26:59 -08:00
Tim Abbott
e137787d1a
users: Use access_stream_by_name to access streams.
...
This simplifies the code somewhat and adds greater consistency of
error messages.
2017-01-29 20:26:59 -08:00
Tim Abbott
ea72b97cd9
home: Cleanup narrow_topic logic.
2017-01-29 20:26:59 -08:00
Tim Abbott
a7cb7dd695
home: Use access_stream_by_name to access streams.
2017-01-29 20:26:59 -08:00
Tim Abbott
6c512bdfd3
json_invite_users: Use access_stream_by_name.
2017-01-29 20:26:59 -08:00
Tim Abbott
bc2f23383e
streams: Move list_to_streams to lib.
2017-01-29 20:26:59 -08:00
Tim Abbott
02f5ef1d23
streams: Move filter_stream_authorization to lib.
2017-01-29 20:26:59 -08:00
Tim Abbott
bb86bba20d
stream_exists_backend: Use access_stream_by_name.
2017-01-29 20:26:59 -08:00
Tim Abbott
46e5b8a9cc
streams: Remove unused json_remove_subscriptions.
2017-01-29 20:26:59 -08:00
Tim Abbott
e57e2ee9f1
get_subscribers_backend: Use access_stream_by_id.
2017-01-29 20:26:59 -08:00
Tim Abbott
0d980b7cef
json_get_stream_id: Use access_stream_by_name.
2017-01-29 20:26:59 -08:00
Tim Abbott
1ced8d3eb6
get_topics_backend: Use access_stream_by_id.
2017-01-29 20:26:58 -08:00
Tim Abbott
6685885741
deactivate_stream_backend: Use access_stream_by_id.
2017-01-29 20:26:58 -08:00
Tim Abbott
826cc80c9e
update_stream_backend: Use access_stream_by_id.
2017-01-29 20:26:58 -08:00
Tim Abbott
de38f3eb94
update_stream_backend: Clean up unnecessary stream_name variable.
2017-01-29 20:26:58 -08:00
Tim Abbott
2cf223470d
streams: Eliminate get_subscription_or_die helper function.
2017-01-29 20:26:58 -08:00
Tim Abbott
7ecda1ac8e
streams: Fix autosubscribe security bug (CVE-2017-0881).
...
A bug in Zulip's implementation of the "stream exists" endpoint meant
that any user of a Zulip server could subscribe to an invite-only
stream without needing to be invited by using the "autosubscribe"
argument.
Thanks to Rafid Aslam for discovering this issue.
2017-01-29 15:30:59 -08:00
Yago González
7fe090f902
translations: Improve some poorly-worded strings.
2017-01-28 18:04:17 -08:00
avisrivastava254084
762b84710e
auth: Redirect users to home from /login if already logged in.
...
This makes various links in Zulip work a bit more reasonably for
already-logged-in users.
Fixes #3316 .
2017-01-28 16:10:19 -08:00
Tim Abbott
e69c4458c6
errors: Use hostname to report deployment.
2017-01-28 13:07:09 -08:00
Tim Abbott
0dd5d6cea0
errors: Separate browser error reporting from backend.
2017-01-27 10:27:41 -08:00
Steve Howell
4be2d6577d
Add a new community realm to our test databases.
...
The realm with string_id of "simple" just has three users
named alice, bob, and cindy for now. It is useful for testing
scenarios where realms don't have special zulip.com exception
handling.
2017-01-26 19:25:34 -08:00
Harshit Bansal
b4186fdfdd
views/realm_aliases.py: Use domain instead of id as handle for RealmAlias.
...
We need to make the change for the API, and the next commit introduces a
unique_together constraint on (realm, domain) anyway.
2017-01-26 17:24:25 -08:00
Harshit Bansal
06cc306d00
Add stricter domain validation and improve error messages.
2017-01-26 17:24:25 -08:00
Harshit Bansal
5b01694e00
actions.py: Rename do_get_realm_aliases to get_realm_aliases.
2017-01-26 17:24:25 -08:00
Tomasz Kolek
7de45951e2
Make webhooks as separate modules with view and tests.
...
Create python packege for every webhook with view.py and tests.py
2017-01-25 23:14:19 -08:00
Tim Abbott
dd9e0b8463
errors: Move do_report_error into zerver/lib/.
2017-01-23 23:18:28 -08:00
Tim Abbott
4e171ce787
lint: Clean up E126 PEP-8 rule.
2017-01-23 22:06:13 -08:00
Tim Abbott
d6e38e2a5c
lint: Clean up E123 PEP-8 rule.
2017-01-23 21:34:26 -08:00
Tim Abbott
9640a9e864
lint: Clean up E712 PEP-8 rule.
2017-01-23 21:11:18 -08:00
Tim Abbott
a088cdaa04
lint: Clean up E714 PEP-8 rule.
2017-01-23 21:07:45 -08:00
Tim Abbott
e9158dd520
lint: Clean up E121 PEP-8 rule.
2017-01-23 21:02:39 -08:00
Tim Abbott
df3d6aee5d
lint: Clean up E114 PEP-8 lint rule.
2017-01-23 20:52:58 -08:00
Tim Abbott
22d1aa396b
lint: Clean up W503 PEP-8 warning.
2017-01-23 20:50:04 -08:00
Tim Abbott
bde2da7dfd
lint: clean up PEP-8 W391 rule.
2017-01-23 20:39:02 -08:00
Tim Abbott
46ab7762e7
edit: Eliminate unnecessary json_update_message wrapper.
2017-01-23 17:22:42 -08:00
Tim Abbott
33b02a02dd
update_message_backend: Fix memcached queries in loop.
...
This fixes a bug where update_message_backend would do one memcached
query per user receiving a given message. Right now we just do a
single bulk database query, but in principle we could use
generic_bulk_cached_fetch to use the cache as well.
2017-01-23 17:22:42 -08:00
Tim Abbott
0f7f9dc0fb
update_message_backend: Log number of changed messages.
...
This will be helpful for debugging potential performance problems.
2017-01-23 17:22:40 -08:00
Tim Abbott
e7c9a5087c
auth methods: Fix buggy check for changes.
...
Apparently, we were comparing the full list of enabled authentication
methods (whether or not supported by the server) against the user's
selections among those supported by the server, which resulted in
authentication methods being always reported as different.
2017-01-22 17:12:58 -08:00
Tim Abbott
5d52f1ec17
bugdown: Move realm_filters_key logic out of callers.
...
This gets rid of the confusing duplicate realm_filters_key and
message_realm arguments that previously were passed to bugdown.
2017-01-21 21:37:57 -08:00
Sampriti Panda
34a4a1378d
bugdown: Use specified realm, not sender realm, for rendering.
...
This changes bugdown to use the realm passed in by the caller (if any)
for rendering, fixing a problem where bots such as the notification
bot would have their messages rendering using the admin realm's
settings, not the settings of the realm their messages are being sent
into.
Also adds a test for the notification bot case.
Fixes #3215 .
2017-01-21 21:37:57 -08:00
Tim Abbott
01e0acb282
render_incoming_message: Require a realm object.
2017-01-21 21:37:57 -08:00
Tim Abbott
99c5563bc6
internal_send_message: Make realm argument mandatory.
...
A lot of care has been taken to ensure we're using the realm that the
message is being sent into, not the realm of the sender, to correctly
handle the logic for cross-realm bot users such as the notifications
bot.
2017-01-21 21:37:30 -08:00
Tim Abbott
8ba7d2080c
internal_prep_message: Make realm argument mandatory.
...
In order to correctly handle messages sent by cross-realm bots, we
need to specify the realm that the messages are being sent into in the
send message code path. The commit and its successors convert that
code path to include the realm the message is being sent to explicitly.
2017-01-21 21:16:18 -08:00
Tomasz Kolek
cc13104780
Add Zapier integration.
2017-01-20 10:43:18 -08:00
Rohith Asrk
a1b0e35792
Remove use of mailer.send_mail from all files.
...
This was just copied from some third-party projects.
Fixes #3153 .
2017-01-19 16:28:29 -08:00
Umair Khan
9fecbcecf5
subdomains: Don't show login page on root aliases.
2017-01-17 15:29:24 -08:00
Tommy Ip
c407919db3
Add /authors page.
...
Contributor visualization showing the avatar, user name and number
of commits for each contributors. The JSON data would be updated
upon deployment, triggered by the `update-prod-static` script.
2017-01-17 13:35:55 -08:00
Tim Abbott
121b926962
emoji: Fix 500 trying to remove nonexisting realm emoji.
2017-01-16 23:48:07 -08:00
Tim Abbott
19cb5013d3
emoji: Extract zerver.lib.emoji.
2017-01-16 23:45:28 -08:00
Tim Abbott
f3b9abee14
Convert realm emoji upload to use PUT properly.
2017-01-16 23:45:12 -08:00
Tim Abbott
19b89eb050
bugdown: Rename realm_id to realm_filters_key.
...
This should substantially improve the clarity of the code, since
inside bugdown, this is only being used as a hash key that happens to
usually be a realm ID, not used as a Realm ID.
2017-01-16 21:48:55 -08:00
Bojidar Marinov
df00ad3e84
search: Prevent crashes with multiple search operators.
...
Fixes #3071 .
2017-01-16 19:42:49 -08:00
Rafid Aslam
d3ee53bdef
Move endpoints to use stream_id instead of stream_name in their URLs
...
- Change `stream_name` into `stream_id` on some API endpoints that use
`stream_name` in their URLs to prevent confusion of `views` selection.
For example:
If the stream name is "foo/members", the URL would be trigger
"^streams/(?P<stream_name>.*)/members$" and it would be confusing because
we intend to use the endpoint with "^streams/(?P<stream_name>.*)$" regex.
All stream-related endpoints now use stream id instead of stream name,
except for a single endpoint that lets you convert stream names to stream ids.
See https://github.com/zulip/zulip/issues/2930#issuecomment-269576231
- Add `get_stream_id()` method to Zulip API client, and change
`get_subscribers()` method to comply with the new stream API
(replace `stream_name` with `stream_id`).
Fixes #2930 .
2017-01-12 15:23:31 -08:00
Rafid Aslam
156eefacc2
API: Add `json/get_stream_id` endpoint
...
Add `json/get_stream_id` endpoint, used to convert `stream_name`
into `stream_id`.
2017-01-12 15:23:31 -08:00
Tomasz Kolek
053feb947c
Change way of handling comments event in jira integration.
2017-01-12 14:54:32 -08:00
Tomasz Kolek
9a60220c37
Refactor jira integration.
...
Remove events that don't exist.
Move handling issue events to separate function.
Make formatting strings using format function.
Change camelCase variable name convetion to using underscores.
Make unknown events error more clear.
Add issue_event_type_name param to all fixtures.
2017-01-12 14:54:32 -08:00
Tomasz Kolek
e6ab93a4c4
Fix Bitbucket2 integration fulfilled event type.
...
The "merged" event type was apparently renamed to "fulfilled".
2017-01-11 14:18:07 -08:00
Tomasz Kolek
f0cc6d8029
Adjust Taiga integration to new payloads format.
...
Update all payloads.
Remove move task between User stories events.
Update code to handle new payload format.
Fixes : #2318 .
2017-01-11 14:17:44 -08:00
Tim Abbott
3f8d4193da
lint: Fix % comprehensions being used without a tuple.
2017-01-09 11:45:11 -08:00
Tim Abbott
f3b5683e77
views: Rename __init__.py to zerver.views.registration.
...
This completes the cleanup process of eliminating functions in the
root zerver/views/__init__.py module.
2017-01-08 16:21:15 -08:00
Tim Abbott
48f1b4e1ab
views: Extract zerver.views.muting.
2017-01-08 16:21:15 -08:00
Tim Abbott
7beff88f5f
views: Extract zerver/views/home.py.
...
This is a significant piece of the remaining effort required to
eliminate the catch-all zerver/views/__init__.py.
2017-01-08 16:21:15 -08:00
Harshit Bansal
ceb636dbd9
Manage allowed domains from admin settings.
...
Fixes : #1867 .
2017-01-06 12:03:31 -08:00
Rishi Gupta
fdb47fc5ee
find my team: Canonicalize URL route.
...
Change URL endpoint to use underscores, not dashes, and change name to use
the full path to the view function. See e.g. /create_realm.
2017-01-06 10:42:28 -08:00
Rishi Gupta
757297b72f
Move find_my_team functions out of views/auth.py
...
The general __init__ file is a more natural home, and where other endpoints
(e.g. create_realm, etc) live.
Also changes forms.ValidationError to django.core.exceptions.ValidationError
to match the rest of the file/codebase.
2017-01-06 10:42:28 -08:00
Rishi Gupta
e481fef9e1
Move find_team_email subject to a templates/ file.
2017-01-06 10:42:28 -08:00
Rishi Gupta
7cb5d26999
Rename find_team_email_html.txt to find_team_email.html.
2017-01-06 10:42:28 -08:00
Jackson
032b5e9db9
integrations: Add webhook code, API endpoint, and tests for Delighted.
2017-01-05 10:47:30 -08:00
Vamshi Balanaga
1b2472b5cb
integrations: Modify solano labs integration.
...
This adds support for the "running" status and adds a test fixture.
2017-01-05 10:19:32 -08:00