urls: Move URLs that don't belong on self-hosted servers to corporate URLs.

Use absolute URLs for these links in files which will be served
to self-hosted servers.
This commit is contained in:
Aman Agrawal 2022-08-16 07:39:36 +00:00 committed by Tim Abbott
parent f1a1868de8
commit e54ded49c4
9 changed files with 97 additions and 92 deletions

View File

@ -2,7 +2,7 @@ from typing import Any
from django.conf.urls import include
from django.urls import path
from django.views.generic import TemplateView
from django.views.generic import RedirectView, TemplateView
from corporate.views.billing_page import billing_home, update_plan
from corporate.views.event_status import event_status, event_status_page
@ -14,6 +14,14 @@ from corporate.views.support import support_request
from corporate.views.upgrade import initial_upgrade, sponsorship, upgrade
from corporate.views.webhook import stripe_webhook
from zerver.lib.rest import rest_path
from zerver.views.portico import (
app_download_link_redirect,
apps_view,
hello_view,
landing_view,
plans_view,
team_view,
)
i18n_urlpatterns: Any = [
# Zephyr/MIT
@ -40,6 +48,66 @@ v1_api_and_json_patterns = [
rest_path("billing/event/status", GET=event_status),
]
landing_page_urls = [
# Landing page, features pages, signup form, etc.
path("hello/", hello_view),
path("new-user/", RedirectView.as_view(url="/hello", permanent=True)),
path("features/", landing_view, {"template_name": "zerver/features.html"}),
path("plans/", plans_view, name="plans"),
path("apps/", apps_view),
path("apps/download/<platform>", app_download_link_redirect),
path("apps/<platform>", apps_view),
path(
"developer-community/", RedirectView.as_view(url="/development-community/", permanent=True)
),
path(
"development-community/",
landing_view,
{"template_name": "zerver/development-community.html"},
),
path("attribution/", landing_view, {"template_name": "zerver/attribution.html"}),
path("team/", team_view),
path("history/", landing_view, {"template_name": "zerver/history.html"}),
path("why-zulip/", landing_view, {"template_name": "zerver/why-zulip.html"}),
path("self-hosting/", landing_view, {"template_name": "zerver/self-hosting.html"}),
path("security/", landing_view, {"template_name": "zerver/security.html"}),
# /for pages
path("use-cases/", landing_view, {"template_name": "zerver/use-cases.html"}),
path("for/education/", landing_view, {"template_name": "zerver/for-education.html"}),
path("for/events/", landing_view, {"template_name": "zerver/for-events.html"}),
path("for/open-source/", landing_view, {"template_name": "zerver/for-open-source.html"}),
path("for/research/", landing_view, {"template_name": "zerver/for-research.html"}),
path("for/business/", landing_view, {"template_name": "zerver/for-business.html"}),
path("for/companies/", RedirectView.as_view(url="/for/business/", permanent=True)),
path(
"for/communities/",
landing_view,
{"template_name": "zerver/for-communities.html"},
),
# We merged this into /for/communities.
path(
"for/working-groups-and-communities/",
RedirectView.as_view(url="/for/communities/", permanent=True),
),
# case-studies
path("case-studies/idrift/", landing_view, {"template_name": "zerver/idrift-case-study.html"}),
path("case-studies/tum/", landing_view, {"template_name": "zerver/tum-case-study.html"}),
path("case-studies/ucsd/", landing_view, {"template_name": "zerver/ucsd-case-study.html"}),
path("case-studies/rust/", landing_view, {"template_name": "zerver/rust-case-study.html"}),
path("case-studies/lean/", landing_view, {"template_name": "zerver/lean-case-study.html"}),
path(
"case-studies/asciidoctor/",
landing_view,
{"template_name": "zerver/asciidoctor-case-study.html"},
),
path(
"case-studies/recurse-center/",
landing_view,
{"template_name": "zerver/recurse-center-case-study.html"},
),
]
i18n_urlpatterns += landing_page_urls
# Make a copy of i18n_urlpatterns so that they appear without prefix for English
urlpatterns = list(i18n_urlpatterns)

View File

@ -1,6 +1,6 @@
* Zulip is [100% open-source software][zulip-github], with no "open core" catch.
When you self-host Zulip, you get the same software as [Zulip Cloud
Standard](/plans/) customers.
Standard](https://zulip.com/plans/) customers.
* Retain full control over your data and simplify compliance by self-hosting
Zulip behind your firewall.

View File

@ -2,5 +2,5 @@
overhead. [Sign up](/new/) with just a few clicks.
* Always updated to the latest version of Zulip.
* Anyone can [start with Zulip Cloud Free](/new/). [Free or heavily
discounted Zulip Cloud Standard](/plans/) pricing is available for
discounted Zulip Cloud Standard](https://zulip.com/plans/) pricing is available for
most non-business uses.

View File

@ -1,6 +1,6 @@
You can start by reading about how [Zulips](/hello/) unique
topic-based threading [combines the best of email and
chat](/why-zulip/) to make [remote work](/for/business/) productive
chat](/why-zulip/) to make [remote work](https://zulip.com/for/business/) productive
and delightful.
We also highly recommend trying Zulip for yourself! You can:

View File

@ -1,7 +1,7 @@
# Setting up Zulip for a class
Welcome to Zulip! This page will guide you through setting everything
up for [teaching with Zulip](/for/education/). If you are using Zulip
up for [teaching with Zulip](https://zulip.com/for/education/). If you are using Zulip
for a different purpose, we recommend checking out the [Setting up
your organization][setting-up] guide instead.
@ -18,7 +18,7 @@ us know!
## Trying out Zulip
You can start by reading about [Zulip for Education](/for/education/),
You can start by reading about [Zulip for Education](https://zulip.com/for/education/),
and how Zulip can become the communication hub for your class. Zulip
is the only [modern team chat app](/features/) that is
[ideal](/why-zulip/) for both live and asynchronous
@ -53,7 +53,7 @@ ensure you can always move from our hosting to yours (and back).
* Always updated to the latest version of Zulip.
* Anyone can [start with Zulip Cloud Free](/new/), which works well for a typical class.
* For large classes and departments, we offer [special Zulip for
Education pricing](/for/education/#feature-pricing), with the same
Education pricing](https://zulip.com/for/education/#feature-pricing), with the same
features as Zulip Cloud Standard. You can always get started with
Zulip Cloud Free, and upgrade down the line if needed.

View File

@ -1,7 +1,7 @@
# Using Zulip for a class
Welcome to Zulip! This pages offers some tips for [using Zulip for a
class](/for/education). If this is your first time using Zulip, we
class](https://zulip.com/for/education). If this is your first time using Zulip, we
recommend checking out [Getting started with
Zulip](/help/getting-started-with-zulip) to get oriented.

View File

@ -1,7 +1,7 @@
# Zulip Cloud billing
This page answers some frequently asked questions about [Zulip Cloud plans and
pricing](/plans). If you have any other questions, please don't hesitate to
pricing](https://zulip.com/plans). If you have any other questions, please don't hesitate to
reach out at sales@zulip.com.
## Differences between Zulip Cloud plans

View File

@ -20,19 +20,19 @@
<div class="dropdown-label first">Product<i class="fa fa-chevron-down"></i></div>
<ul class="dropdown-list product-options">
<li>
<a href="/hello">Home</a>
<a href="https://zulip.com">Home</a>
</li>
<li>
<a href="/why-zulip">Why Zulip</a>
<a href="https://zulip.com/why-zulip">Why Zulip</a>
</li>
<li>
<a href="/features/">Features</a>
<a href="https://zulip.com/features/">Features</a>
</li>
<li>
<a href="/self-hosting/">Self-hosting</a>
<a href="https://zulip.com/self-hosting/">Self-hosting</a>
</li>
<li>
<a href="/security/">Security</a>
<a href="https://zulip.com/security/">Security</a>
</li>
<li>
<a href="/integrations/">Integrations</a>
@ -48,52 +48,52 @@
<div class="dropdown-column">
<li class="nav-header">Use cases</li>
<li>
<a href="/for/business/">Business</a>
<a href="https://zulip.com/for/business/">Business</a>
</li>
<li>
<a href="/for/education/">Education</a>
<a href="https://zulip.com/for/education/">Education</a>
</li>
<li>
<a href="/for/research/">Research</a>
<a href="https://zulip.com/for/research/">Research</a>
</li>
<li>
<a href="/for/events/">Events and conferences</a>
<a href="https://zulip.com/for/events/">Events and conferences</a>
</li>
<li>
<a href="/for/open-source/">Open source projects</a>
<a href="https://zulip.com/for/open-source/">Open source projects</a>
</li>
<li>
<a href="/for/communities/">Communities</a>
<a href="https://zulip.com/for/communities/">Communities</a>
</li>
</div>
<div class="dropdown-column">
<li class="nav-header">Customer stories</li>
<li>
<a href="/case-studies/idrift/">iDrift AS company</a>
<a href="https://zulip.com/case-studies/idrift/">iDrift AS company</a>
</li>
<li>
<a href="/case-studies/tum/">Technical University of Munich</a>
<a href="https://zulip.com/case-studies/tum/">Technical University of Munich</a>
</li>
<li>
<a href="/case-studies/ucsd/">University of California San Diego</a>
<a href="https://zulip.com/case-studies/ucsd/">University of California San Diego</a>
</li>
<li>
<a href="/case-studies/lean/">Lean theorem prover community</a>
<a href="https://zulip.com/case-studies/lean/">Lean theorem prover community</a>
</li>
<li>
<a href="/case-studies/asciidoctor/">Asciidoctor open-source community</a>
<a href="https://zulip.com/case-studies/asciidoctor/">Asciidoctor open-source community</a>
</li>
<li>
<a href="/case-studies/rust/">Rust language community</a>
<a href="https://zulip.com/case-studies/rust/">Rust language community</a>
</li>
<li>
<a href="/case-studies/recurse-center/">Recurse Center</a>
<a href="https://zulip.com/case-studies/recurse-center/">Recurse Center</a>
</li>
</div>
</ul>
</div>
<li data-on-page="plans">
<a href="/plans/">Pricing</a>
<a href="https://zulip.com/plans/">Pricing</a>
</li>
<div class="dropdown nav-dropdown">
<div class="dropdown-label">Resources<i class="fa fa-chevron-down"></i></div>
@ -107,7 +107,7 @@
<a href="/help">Help center</a>
</li>
<li>
<a href="/development-community/" target=”_blank”>
<a href="https://zulip.com/development-community/" target=”_blank”>
Community chat
</a>
</li>

View File

@ -77,14 +77,6 @@ from zerver.views.message_flags import (
)
from zerver.views.message_send import render_message_backend, send_message_backend, zcommand_backend
from zerver.views.muting import mute_user, unmute_user, update_muted_topic
from zerver.views.portico import (
app_download_link_redirect,
apps_view,
hello_view,
landing_view,
plans_view,
team_view,
)
from zerver.views.presence import (
get_presence_backend,
get_statuses_for_realm,
@ -621,61 +613,6 @@ i18n_urls = [
path("integrations/doc-html/<integration_name>", integration_doc),
path("integrations/", integrations_view),
path("integrations/<path:path>", integrations_view),
# Landing page, features pages, signup form, etc.
path("hello/", hello_view),
path("new-user/", RedirectView.as_view(url="/hello", permanent=True)),
path("features/", landing_view, {"template_name": "zerver/features.html"}),
path("plans/", plans_view, name="plans"),
path("apps/", apps_view),
path("apps/download/<platform>", app_download_link_redirect),
path("apps/<platform>", apps_view),
path(
"development-community/",
landing_view,
{"template_name": "zerver/development-community.html"},
),
# Renamed to have a cleared URL.
path(
"developer-community/", RedirectView.as_view(url="/development-community/", permanent=True)
),
path("attribution/", landing_view, {"template_name": "zerver/attribution.html"}),
path("team/", team_view),
path("history/", landing_view, {"template_name": "zerver/history.html"}),
path("why-zulip/", landing_view, {"template_name": "zerver/why-zulip.html"}),
path("for/education/", landing_view, {"template_name": "zerver/for-education.html"}),
path("for/events/", landing_view, {"template_name": "zerver/for-events.html"}),
path("for/open-source/", landing_view, {"template_name": "zerver/for-open-source.html"}),
path("for/research/", landing_view, {"template_name": "zerver/for-research.html"}),
path("for/business/", landing_view, {"template_name": "zerver/for-business.html"}),
path("for/companies/", RedirectView.as_view(url="/for/business/", permanent=True)),
path("case-studies/idrift/", landing_view, {"template_name": "zerver/idrift-case-study.html"}),
path("case-studies/tum/", landing_view, {"template_name": "zerver/tum-case-study.html"}),
path("case-studies/ucsd/", landing_view, {"template_name": "zerver/ucsd-case-study.html"}),
path("case-studies/rust/", landing_view, {"template_name": "zerver/rust-case-study.html"}),
path("case-studies/lean/", landing_view, {"template_name": "zerver/lean-case-study.html"}),
path(
"case-studies/asciidoctor/",
landing_view,
{"template_name": "zerver/asciidoctor-case-study.html"},
),
path(
"case-studies/recurse-center/",
landing_view,
{"template_name": "zerver/recurse-center-case-study.html"},
),
path(
"for/communities/",
landing_view,
{"template_name": "zerver/for-communities.html"},
),
# We merged this into /for/communities.
path(
"for/working-groups-and-communities/",
RedirectView.as_view(url="/for/communities/", permanent=True),
),
path("use-cases/", landing_view, {"template_name": "zerver/use-cases.html"}),
path("self-hosting/", landing_view, {"template_name": "zerver/self-hosting.html"}),
path("security/", landing_view, {"template_name": "zerver/security.html"}),
]
# Make a copy of i18n_urls so that they appear without prefix for english