Lauryn Menard
aad93e149e
audit-log: Move remote server event types to AuditLogEventType enum.
...
Event types moved: REMOTE_SERVER_DEACTIVATED, REMOTE_SERVER_REACTIVATED
REMOTE_SERVER_PLAN_TYPE_CHANGED, REMOTE_SERVER_DISCOUNT_CHANGED
REMOTE_SERVER_SPONSORSHIP_APPROVED, REMOTE_SERVER_BILLING_MODALITY_CHANGED
REMOTE_SERVER_SPONSORSHIP_PENDING_STATUS_CHANGED, REMOTE_SERVER_CREATED
2024-09-09 11:50:13 -07:00
Anders Kaseorg
531b34cb4c
ruff: Fix UP007 Use `X | Y` for type annotations.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-07-13 22:28:22 -07:00
Anders Kaseorg
e08a24e47f
ruff: Fix UP006 Use `list` instead of `List` for type annotation.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-07-13 22:28:22 -07:00
Alex Vandiver
88be3246a0
management: Move commands to all use ZulipBaseCommand.
2024-05-24 10:30:16 -07:00
Vector73
8ab526a25a
models: Replace realm.uri with realm.url.
...
In #23380 , we are changing all occurrences of uri with url in order to
follow the latest URL standard. Previous PRs #25038 and #25045 has
replaced the occurences of uri that has no direct relation with realm.
This commit changes just the model property, which has no API
compatibility concerns.
2024-05-08 11:12:43 -07:00
Prakhar Pratyush
fce50bb4a0
populate_billing_realms: Add legacy remote realm.
2024-01-31 12:25:31 -08:00
Aman Agrawal
f285de39e9
populate_realms: Allow billing page access without stripe_api_key.
2024-01-12 08:47:43 -08:00
Aman Agrawal
39376190fe
populate_billing_realms: Bump licenses to 25 to avoid negative amount.
2024-01-12 08:47:43 -08:00
Aman Agrawal
fd85f51745
populate_billing_realms: Add a realms on basic plan.
2024-01-12 08:47:43 -08:00
Lauryn Menard
b4b44e5558
support: Display remote realm is deactivated fields.
...
Also updates populate_billing_realms to not locally deactivate
test remote realms when generating them.
2024-01-03 14:40:11 -08:00
Lauryn Menard
b9ca60ab9e
support: Add date created field to remove server information.
...
Removes the last updated field and replaces it with the date the
remote server was created based on the audit log data.
2024-01-02 13:16:35 -08:00
Karl Stolley
a37354f92a
corporate: Add a Basic plan.
2023-12-20 23:09:21 -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
Tim Abbott
6308e07e53
billing: Standardize remote server plan type IDs.
...
This will likely save us at least one headache.
2023-12-13 16:40:44 -08:00
Aman Agrawal
35b644c564
populate_billing_realms: Don't create plan for sponsored remote realm.
2023-12-13 08:13:33 -08:00
Aman Agrawal
e9ce69aaf6
populate_billing_realms: Call sessions with billing_user.
2023-12-12 17:31:41 -08:00
Aman Agrawal
df23701475
stripe: Rename add_server_to_legacy_plan.
...
This function will not also be used to migrate remote realms
to legacy plan.
2023-12-11 13:23:49 -08:00
Aman Agrawal
a1fa969693
populate_billing_realms: Add temporary fix for MissingDataError.
...
We need to add proper logs here, which can probably be copied from
test_current_count_for_billed_licenses.
2023-12-09 12:50:05 -08:00
Aman Agrawal
c49fc8c6fe
populate_billing_realms: Delete existing remote realms.
...
Running script multiple times created multiple `RemoteRealm`
objects resulting in processing error.
2023-12-08 11:24:15 -08:00
Aman Agrawal
9594e635cd
populate_billing_realms: Simulate 2 months free trial.
...
Makes the billing page for realms on free trial more realistic.
2023-12-08 09:21:18 -08:00
Aman Agrawal
1a60697bd5
populate_billing_realms: Use correct plan tier for sponsored realms.
...
In cloud:
Sponsored organizations have plan_type=STANDARD_FREE, don't have
a CustomerPlan object and thus no tier value.
With self-hosting:
Sponsored organizations have a CustomerPlan object with tier
TIER_SELF_HOSTED_COMMUNITY and a plan_type of PLAN_TYPE_COMMUNITY.
2023-12-06 12:04:10 -08:00
Aman Agrawal
9f1f292462
populate_billing_realms: Add some helpful comments for testing.
2023-12-06 12:04:10 -08:00
Aman Agrawal
2c7afa19ba
populate_billing_realms: Add method to populate remote realms.
...
We also avoid deleting all RemoteZulipServer at start so that
we don't delete the registered server for remote realms.
2023-12-05 23:44:29 -08:00
Aman Agrawal
cfb62e7ffa
populate_billing_realms: Extract method to create customer plan.
2023-12-05 23:44:29 -08:00
Aman Agrawal
8165f718d6
populate_billing_realms: Add different remote servers for testing.
2023-12-05 23:44:29 -08:00
Aman Agrawal
750f5c07b7
populate_billing_realms: Extract method to add card to customer.
2023-12-05 23:44:29 -08:00
Anders Kaseorg
8a7916f21a
python: Consistently use from…import for datetime.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-05 12:01:18 -08:00
Anders Kaseorg
ebee57813c
populate_billing_realms: Fix PLW0127 Self-assignment of variable.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-12-05 11:13:49 -08:00
Aman Agrawal
7d83508235
commands: Add script to create servers on legacy plan.
...
Also adds `SWITCH_PLAN_TIER_AT_PLAN_END` for `CustomerPlan`
which will be used to mark status of remote server legacy
plans which are scheduled for an upgrade.
2023-12-04 12:36:24 -08:00
Aman Agrawal
ff368e3240
populate_billing_realms: Extract function to populate realms.
2023-12-03 15:15:04 -08:00
Tim Abbott
610338d192
billing: Add BILLING_SCHEDULE_ prefix to values.
2023-11-29 23:32:56 -08:00
Tim Abbott
5d6b635efe
billing: Use better variable names for plan tiers.
...
The existing values didn't have our standard type-prefixing naming
scheme.
Add some extra unused placeholder values while we're at it.
2023-11-29 23:32:56 -08:00
Aman Agrawal
a2fc9fabd8
populate_billing_realms: Increase price_per_license.
...
This help us show a nice number when divided by 12 for annual
frequency on billing page.
2023-11-13 10:35:39 -08:00
Aman Agrawal
0f31f18744
populate_billing_realms: Add a realm on free-trial.
2023-11-10 05:17:52 +05:30
Aman Agrawal
a124374202
populate_billing_realms: Add switch-to-annual-EOC customer.
2023-11-10 05:17:52 +05:30
Aman Agrawal
07990ad8f1
populate_billing_realms: Add invoice-payment customer.
2023-11-10 05:17:52 +05:30
Lauryn Menard
63abf063b7
corporate: Use StripeCustomerData dataclass to create stripe Customer.
...
So that all child classes of BillingSession generate the same data
structure for customers that are created in Stripe, revise
`get_data_for_stripe_customer` to return a specific dataclass:
StripeCustomerData.
2023-11-04 17:20:49 -07:00
Lauryn Menard
ce6f1f8c18
stripe: Create BillingSession class for different customer types.
...
So that `update_or_create_stripe_customer` can work for Customer
objects with either a realm or remote_server, we create an abstract
base class, BillingSession, and implement a child class for the
current implementation of Customer objects with a realm.
Refactoring `update_or_create_stripe_customer` also moves
`create_stripe_customer` and `replace_payment_method` to the
BillingSession class.
2023-11-04 17:20:49 -07:00
Aman Agrawal
c9a55941b0
populate_billing_realms: Add Zulip Cloud Free realms.
2023-11-04 12:46:06 -07:00
Lauryn Menard
379c8d92ec
populate_billing_realms: Add next_invoice_date to CustomerPlans.
...
Having a next_invoice_date is expected for the support view of the
organization.
2023-11-04 12:16:30 -07:00
Aman Agrawal
9ebb3f06b3
populate_billing_realms: Add script to populate different realms.
...
These realms are based on different cases of realms which can
exist while billing them and hence are useful for testing.
2023-11-03 08:44:23 -07:00