Mateusz Mandera
d3e8ddd6ce
test_push_notifications: Use self.server instead of .get expression.
...
It makes no sense to do RemoteZulipServer.objects.get with
self.server_uuid, when there simply is self.server.
2023-12-23 14:58:27 -08:00
Mateusz Mandera
82ee93d967
zilencer: Set .remote_realm for existing RemotePushDeviceToken.
...
Old RemotePushDeviceTokens were created without this attribute. But when
processing a notification, if we have remote_realm, we can take the
opportunity to to set this for all the registrations for this user.
2023-12-23 14:58:27 -08:00
Aman Agrawal
d4a852e97c
stripe: Save a query to get CustomerPlan for sponsored customers.
2023-12-18 12:55:34 -08:00
Tim Abbott
5dc1d36f73
zilencer: Fix community plan push notifications.
2023-12-17 09:36:47 -08:00
Anders Kaseorg
b38f3d2472
models: Extract zerver.models.lookups.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
c343d7c30e
models: Move query_for_ids to zerver.lib.query_helpers.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
33d140c8dc
models: Extract zerver.models.alert_words.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
1f1b2f9a68
models: Extract zerver.models.bots.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
27c0b507af
models: Extract zerver.models.custom_profile_fields.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
d5410b577a
models: Extract zerver.models.onboarding_steps.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
68d3b9f629
models: Extract zerver.models.realm_audit_logs.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
c9c819e1d7
models: Extract zerver.models.scheduled_jobs.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
73e68050bb
models: Extract zerver.models.presence.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
9fb577337b
models: Extract zerver.models.user_activity.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
cff0b78771
models: Move some functions to zerver.lib.attachments.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
09d0abfe70
models: Extract zerver.models.drafts.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
b15999c799
models: Extract zerver.models.messages.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
bac027962f
models: Extract zerver.models.clients.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
2394b37fa3
models: Extract zerver.models.muted_users.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
ea2ee61b4c
models: Extract zerver.models.user_topics.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
4aa2d76bea
models: Extract zerver.models.streams.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
5391ec99d9
models: Extract zerver.models.push_notifications.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
927d7a9a60
models: Extract zerver.models.prereg_users.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
51f1dc257d
models: Extract zerver.models.recipients.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
3c11fd9466
models: Move some functions to zerver.lib.display_recipient.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
33610c8782
models: Extract zerver.models.realm_playgrounds.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
21ab3858a7
models: Extract zerver.models.linkifiers.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
67fb485797
models: Extract zerver.models.realm_emoji.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
cd96193768
models: Extract zerver.models.realms.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
7001a0dfc0
models: Extract zerver.models.groups.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
45bb8d2580
models: Extract zerver.models.users.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
37a9c4501f
models: Extract zerver.models.constants.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Anders Kaseorg
e601d0ae7c
models: Rename zerver/models.py to zerver/models/__init__.py.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-16 22:08:44 -08:00
Alex Vandiver
f1597afb2b
send_email: Send emails to remote servers from BILLING_SUPPORT_EMAIL.
2023-12-15 13:15:27 -08:00
Karl Stolley
e44ba3b1f1
portico: Add new self-hosted plans.
...
Co-authored-by: Alya Abbott <alya@zulip.com>
2023-12-15 11:03:42 -08:00
Sahil Batra
03323b0124
push_notifications: Enforce max user count on self managed plan.
...
We do not support sending push notifications for realms having
more than 10 users on self managed plan.
2023-12-15 11:03:42 -08:00
Tim Abbott
10862451ef
billing: Refactor code to compute push status.
...
This moves the function which computes can_push and
expected_end_timestamp outside RemoteRealmBillingSession
because we might use this function for RemoteZulipServer
as well and also renames it.
2023-12-15 11:03:42 -08:00
Aman Agrawal
3aed22dcd0
gear_menu_popover: Enable `Plan management` in production.
2023-12-15 11:03:42 -08:00
Mateusz Mandera
fb5137f8b5
zilencer: Handle deleted realms nicely at server/analytics.
2023-12-15 09:18:26 -08:00
Alex Vandiver
8102519242
send_email: Remove `List-Unsubscribe-Post` from remote-server emails.
...
For remote servers, we cannot advertise `List-Unsubscribe=One-Click`,
which is specified in RFC 8058[^1] to mean that the `List-Unsubscribe`
URL supports a POST request with no arguments to unsubscribe. Because
we show an interstitial and confirmation page, as this is not just a
mailing list which is disabled if you click the link, it does not
support the mail system performing the unsubscribe for the user.
Remove the inaccurate header for remote servers.
[^1]: https://datatracker.ietf.org/doc/html/rfc8058
2023-12-15 09:12:25 -08:00
Alex Vandiver
0f2cc383f6
send_email: Support add_context for remote servers.
...
612f2c73d6
started passing add_context to
`send_custom_server_email`, but did not make it make use of it.
Also add the `hostname` as a built-in value, since that is most likely
the most useful property.
2023-12-15 08:37:02 -08:00
Tim Abbott
63e5712837
push_notifications: Improve logging when not contacting bouncer.
2023-12-15 08:15:36 -08:00
Mateusz Mandera
d351353126
zilencer: Fix server/register failing to check if server is deactivated.
...
A deactivated server shouldn't be updated like that - we want to return
an error.
2023-12-15 08:06:58 -08:00
Tim Abbott
53f40133eb
remote_server: Handle JsonableErrors and connection failures better.
...
This fixes the exception case on the initial
`/api/v1/remotes/server/analytics/status` case. Other exceptions from
`send_to_push_bouncer` are allowed to escape.
Co-authored-by: Alex Vandiver <alexmv@zulip.com>
2023-12-14 15:08:52 -08:00
Anders Kaseorg
b472d769d1
change_user_role: List role choices in --help output.
...
Fixes #28227 .
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-14 15:06:18 -08:00
Sahil Batra
633ec698f5
realm: Enfore length restriction on jitsi_server_url at API level.
...
Previously, passing a url longer than 200 characters for
jitsi_server_url caused a low-level failure at DB level. This
commit adds this restriction at API level.
Fixes part of #27355 .
2023-12-14 12:11:59 -08:00
Alex Vandiver
bedb68b2fe
registration: Prevent injecting arbitrary strings via query param.
...
While the query parameter is properly excaped when inlined into the
template (and thus is not an XSS), it can still produce content which
misleads the user via carefully-crafted query parameter.
Validate that the parameter looks like an email address.
Thanks to jinjo2 for reporting this, via HackerOne.
2023-12-14 12:00:16 -08:00
Alex Vandiver
9067220af6
signup: Send status code 400 on invalid emails.
2023-12-14 12:00:16 -08:00
Anders Kaseorg
c7245d5f3b
models: Make ScheduledMessage.read_by_sender non-nullable.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-14 08:16:31 -08:00
Anders Kaseorg
77a6f44455
message_send: Add read_by_sender API parameter.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-14 08:16:31 -08:00