first commit
This commit is contained in:
15
services/web/app/views/subscriptions/add-seats.pug
Normal file
15
services/web/app/views/subscriptions/add-seats.pug
Normal file
@@ -0,0 +1,15 @@
|
||||
extends ../layout-marketing
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/group-management/add-seats'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-subscriptionData" data-type="json" content=subscriptionData)
|
||||
meta(name="ol-groupName", data-type="string", content=groupName)
|
||||
meta(name="ol-subscriptionId", data-type="string", content=subscriptionId)
|
||||
meta(name="ol-totalLicenses", data-type="number", content=totalLicenses)
|
||||
meta(name="ol-isProfessional", data-type="boolean", content=isProfessional)
|
||||
|
||||
block content
|
||||
main.content.content-alt#main-content
|
||||
#add-seats-root
|
@@ -0,0 +1,10 @@
|
||||
extends ../layout-react
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/canceled-subscription'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-user" data-type="json" content=user)
|
||||
|
||||
block content
|
||||
main.content.content-alt#subscription-canceled-root
|
34
services/web/app/views/subscriptions/dashboard-react.pug
Normal file
34
services/web/app/views/subscriptions/dashboard-react.pug
Normal file
@@ -0,0 +1,34 @@
|
||||
extends ../layout-react
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/dashboard'
|
||||
|
||||
block head-scripts
|
||||
script(type="text/javascript", nonce=scriptNonce, src="https://js.recurly.com/v4/recurly.js")
|
||||
|
||||
block append meta
|
||||
meta(name="ol-subscription" data-type="json" content=personalSubscription)
|
||||
meta(name="ol-userCanExtendTrial" data-type="boolean" content=userCanExtendTrial)
|
||||
meta(name="ol-managedGroupSubscriptions" data-type="json" content=managedGroupSubscriptions)
|
||||
meta(name="ol-memberGroupSubscriptions" data-type="json" content=memberGroupSubscriptions)
|
||||
meta(name="ol-managedInstitutions" data-type="json" content=managedInstitutions)
|
||||
meta(name="ol-managedPublishers" data-type="json" content=managedPublishers)
|
||||
meta(name="ol-planCodesChangingAtTermEnd" data-type="json", content=planCodesChangingAtTermEnd)
|
||||
meta(name="ol-currentInstitutionsWithLicence" data-type="json" content=currentInstitutionsWithLicence)
|
||||
meta(name="ol-hasSubscription" data-type="boolean" content=hasSubscription)
|
||||
meta(name="ol-fromPlansPage" data-type="boolean" content=fromPlansPage)
|
||||
meta(name="ol-plans" data-type="json" content=plans)
|
||||
meta(name="ol-groupSettingsAdvertisedFor" data-type="json" content=groupSettingsAdvertisedFor)
|
||||
meta(name="ol-canUseFlexibleLicensing" data-type="boolean", content=canUseFlexibleLicensing)
|
||||
meta(name="ol-showGroupDiscount" data-type="boolean", content=showGroupDiscount)
|
||||
meta(name="ol-groupSettingsEnabledFor" data-type="json" content=groupSettingsEnabledFor)
|
||||
meta(name="ol-hasAiAssistViaWritefull" data-type="boolean", content=hasAiAssistViaWritefull)
|
||||
meta(name="ol-user" data-type="json" content=user)
|
||||
if (personalSubscription && personalSubscription.payment)
|
||||
meta(name="ol-recurlyApiKey" content=settings.apis.recurly.publicKey)
|
||||
meta(name="ol-recommendedCurrency" content=personalSubscription.payment.currency)
|
||||
meta(name="ol-groupPlans" data-type="json" content=groupPlans)
|
||||
|
||||
block content
|
||||
main.content.content-alt#main-content
|
||||
#subscription-dashboard-root
|
@@ -0,0 +1,10 @@
|
||||
extends ../layout-marketing
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/group-management/manually-collected-subscription'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-groupName", data-type="string", content=groupName)
|
||||
|
||||
block content
|
||||
main.content.content-alt#manually-collected-subscription-root
|
@@ -0,0 +1,10 @@
|
||||
extends ../layout-marketing
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/group-management/missing-billing-information'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-groupName", data-type="string", content=groupName)
|
||||
|
||||
block content
|
||||
main.content.content-alt#missing-billing-information-root
|
86
services/web/app/views/subscriptions/plans/_faq_new.pug
Normal file
86
services/web/app/views/subscriptions/plans/_faq_new.pug
Normal file
@@ -0,0 +1,86 @@
|
||||
include ./_plans_faq_tabs
|
||||
include ../../_mixins/eyebrow
|
||||
|
||||
- var managingYourSubscription = 'managingYourSubscription'
|
||||
- var overleafIndividualPlans = 'overleafIndividualPlans'
|
||||
- var overleafGroupPlans = 'overleafGroupPlans'
|
||||
.plans-faq
|
||||
.row.row-spaced-extra-large
|
||||
.col-md-12.faq-heading-container
|
||||
h2
|
||||
+eyebrow(translate("frequently_asked_questions"))
|
||||
| #{translate("your_questions_answered")}
|
||||
|
||||
.row
|
||||
.col-xs-12
|
||||
div(
|
||||
class={
|
||||
'plans-faq-tabs': bootstrapVersion === 5,
|
||||
'ol-tabs': bootstrapVersion === 5,
|
||||
'ol-tabs-scrollable': bootstrapVersion === 3
|
||||
}
|
||||
)
|
||||
.nav-tabs-container
|
||||
ul.nav.nav-tabs(role="tablist")
|
||||
//- In the bs5 version of plans page, the `active` class need to be added to the `a` tag instead of the parent `li` tag
|
||||
//- If the `plans-page-bs5` split test has been completed, remove the `active` class from the `li` tag since we're not using it anymore
|
||||
//- If the `plans-page-bs5` split test has been completed, remove the `data-toggle` because it is not needed anymore (bs5 uses `data-bs-toggle`)
|
||||
li(
|
||||
role="presentation"
|
||||
class={
|
||||
active: bootstrapVersion === 3
|
||||
}
|
||||
)
|
||||
a(
|
||||
role="tab"
|
||||
data-toggle="tab"
|
||||
data-bs-toggle="tab"
|
||||
href='#' + managingYourSubscription
|
||||
aria-controls=managingYourSubscription
|
||||
class={
|
||||
active: bootstrapVersion === 5
|
||||
}
|
||||
)
|
||||
| #{translate('managing_your_subscription')}
|
||||
li(role="presentation")
|
||||
a(
|
||||
role="tab"
|
||||
data-toggle="tab"
|
||||
data-bs-toggle="tab"
|
||||
href='#' + overleafIndividualPlans
|
||||
aria-controls=overleafIndividualPlans
|
||||
)
|
||||
| #{translate('overleaf_individual_plans')}
|
||||
li(role="presentation")
|
||||
a(
|
||||
role="tab"
|
||||
data-toggle="tab"
|
||||
data-bs-toggle="tab"
|
||||
href='#' + overleafGroupPlans
|
||||
aria-controls=overleafGroupPlans
|
||||
)
|
||||
| #{translate('overleaf_group_plans')}
|
||||
|
||||
.tab-content
|
||||
.tab-pane.active(
|
||||
role="tabpanel"
|
||||
id=managingYourSubscription
|
||||
)
|
||||
+managingYourSubscription()
|
||||
.tab-pane(
|
||||
role="tabpanel"
|
||||
id=overleafIndividualPlans
|
||||
)
|
||||
+overleafIndividualPlans()
|
||||
.tab-pane(
|
||||
role="tabpanel"
|
||||
id=overleafGroupPlans
|
||||
)
|
||||
+overleafGroupPlans()
|
||||
|
||||
.row
|
||||
.col-xs-12.plans-faq-support
|
||||
span #{translate('still_have_questions')}
|
||||
button(data-ol-open-contact-form-modal="general")
|
||||
span(style="margin-right: 4px") #{translate('contact_support')}
|
||||
i.icon-md.material-symbols.material-symbols-rounded.material-symbols-arrow-right(aria-hidden="true") arrow_right_alt
|
356
services/web/app/views/subscriptions/plans/_plans_faq_tabs.pug
Normal file
356
services/web/app/views/subscriptions/plans/_plans_faq_tabs.pug
Normal file
@@ -0,0 +1,356 @@
|
||||
//- If the `plans-page-bs5` split test has been completed, remove the `data-toggle` and `data-target` because it is not needed anymore (bs5 uses `data-bs-toggle` and `data-bs-target`)
|
||||
|
||||
mixin managingYourSubscription()
|
||||
.ol-accordions-container
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#managingYourSubscriptionQ1"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#managingYourSubscriptionQ1"
|
||||
aria-expanded="false"
|
||||
aria-controls="managingYourSubscriptionQ1"
|
||||
)
|
||||
| Can I change plans or cancel later?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="managingYourSubscriptionQ1")
|
||||
.custom-accordion-body
|
||||
span Yes, you can do this at any time by going to
|
||||
strong Account > Subscription
|
||||
span when logged in to Overleaf. You can change plans, switch between monthly and annual billing options, or cancel to downgrade to the free plan. When canceling, your subscription will continue until the end of the billing period.
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#managingYourSubscriptionQ2"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#managingYourSubscriptionQ2"
|
||||
aria-expanded="false"
|
||||
aria-controls="managingYourSubscriptionQ2"
|
||||
)
|
||||
| If I change or cancel my Overleaf plan, will I lose my projects?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="managingYourSubscriptionQ2")
|
||||
.custom-accordion-body
|
||||
| No. Changing or canceling your plan won’t affect your projects, the only change will be to the features available to you. You can see which features are available only on paid plans in the comparison table.
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#managingYourSubscriptionQ3"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#managingYourSubscriptionQ3"
|
||||
aria-expanded="false"
|
||||
aria-controls="managingYourSubscriptionQ3"
|
||||
)
|
||||
| Can I pay by invoice or purchase order?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="managingYourSubscriptionQ3")
|
||||
.custom-accordion-body
|
||||
| This is possible when you’re purchasing a group subscription for five or more people, or a site license. For individual subscriptions, we can only accept payment online via credit card, debit card, or PayPal.
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#managingYourSubscriptionQ4"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#managingYourSubscriptionQ4"
|
||||
aria-expanded="false"
|
||||
aria-controls="managingYourSubscriptionQ4"
|
||||
)
|
||||
| How do I view/update the credit card being charged for my subscription?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="managingYourSubscriptionQ4")
|
||||
.custom-accordion-body
|
||||
| You can view and update the card on file by going to Account >
|
||||
a.inline-green-link(
|
||||
target="_blank"
|
||||
href="/user/subscription"
|
||||
event-tracking="plans-page-click"
|
||||
event-tracking-mb="true"
|
||||
event-tracking-trigger="click"
|
||||
event-segmentation={ button: 'contact', location: 'faq' }
|
||||
)
|
||||
span Subscription
|
||||
| .
|
||||
|
||||
|
||||
|
||||
|
||||
mixin overleafIndividualPlans()
|
||||
.ol-accordions-container
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafIndividualPlansQ1"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafIndividualPlansQ1"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafIndividualPlansQ1"
|
||||
)
|
||||
| How does the free trial work?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafIndividualPlansQ1")
|
||||
.custom-accordion-body
|
||||
span You get full access to your chosen plan during your 7-day free trial, and there’s no obligation to continue beyond the trial. Your card will be charged at the end of your trial unless you cancel before then. To cancel, go to
|
||||
strong Account >
|
||||
a.inline-green-link(
|
||||
target="_blank"
|
||||
href="/user/subscription"
|
||||
event-tracking="plans-page-click"
|
||||
event-tracking-mb="true"
|
||||
event-tracking-trigger="click"
|
||||
event-segmentation={ button: 'contact', location: 'faq' }
|
||||
)
|
||||
span Subscription
|
||||
span when logged in to Overleaf (the trial will continue for the full 7 days).
|
||||
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafIndividualPlansQ2"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafIndividualPlansQ2"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafIndividualPlansQ2"
|
||||
)
|
||||
| What’s a collaborator on an Overleaf individual subscription?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafIndividualPlansQ2")
|
||||
.custom-accordion-body
|
||||
| A collaborator is someone you invite to work with you on a project. So, for example, on our Standard plan you can have up to 10 people collaborating with you on any given project.
|
||||
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafIndividualPlansQ3"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafIndividualPlansQ3"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafIndividualPlansQ3"
|
||||
)
|
||||
| The individual Standard plan has 10 project collaborators, does it mean that 10 people will be upgraded?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafIndividualPlansQ3")
|
||||
.custom-accordion-body
|
||||
span No. Only the subscriber’s account will be upgraded. An individual Standard subscription allows you to invite 10 people per project to edit the project with you. Your collaborators can access features such as the full document history and extended compile time, but
|
||||
strong only
|
||||
span for the project(s) they’re working on with you. If your collaborators want access to those features on their own projects, they will need to purchase their own subscription. (If you work with the same people regularly, you might find a group subscription more cost effective.)
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafIndividualPlansQ4"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafIndividualPlansQ4"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafIndividualPlansQ4"
|
||||
)
|
||||
| Do collaborators also have access to the editing and collaboration features I’ve paid for?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafIndividualPlansQ4")
|
||||
.custom-accordion-body
|
||||
span If you have an Overleaf subscription, then your project collaborators will have access to features like real-time track changes and document history, but
|
||||
strong only
|
||||
span for the project(s) they’re working on with you. If your collaborators want access to those features on their own projects, they will need to purchase their own subscription. (If you work with the same people regularly, you might find a group subscription more cost effective.)
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafIndividualPlansQ5"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafIndividualPlansQ5"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafIndividualPlansQ5"
|
||||
)
|
||||
| Can I purchase an individual plan on behalf of someone else?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafIndividualPlansQ5")
|
||||
.custom-accordion-body
|
||||
| Individual subscriptions must be purchased by the account that will be the end user. If you want to purchase a plan for someone else, you’ll need to provide them with relevant payment details to enable them to make the purchase.
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafIndividualPlansQ6"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafIndividualPlansQ6"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafIndividualPlansQ6"
|
||||
)
|
||||
| Who is eligible for the Student plan?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafIndividualPlansQ6")
|
||||
.custom-accordion-body
|
||||
| As the name suggests, the Student plan is only for students at educational institutions. This includes graduate students.
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafIndividualPlansQ7"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafIndividualPlansQ7"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafIndividualPlansQ7"
|
||||
)
|
||||
| Can I transfer an individual subscription to someone else?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafIndividualPlansQ7")
|
||||
.custom-accordion-body
|
||||
| No. Individual plans can’t be transferred.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
mixin overleafGroupPlans()
|
||||
.ol-accordions-container
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafGroupPlansQ1"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafGroupPlansQ1"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafGroupPlansQ1"
|
||||
)
|
||||
| What’s the difference between users and collaborators on an Overleaf group subscription?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafGroupPlansQ1")
|
||||
.custom-accordion-body
|
||||
div On any of our group plans, the number of users refers to the number of people you can invite to join your group. All of these people will have access to the plan’s paid-for features across all their projects, such as real-time track changes and document history.
|
||||
div.mt-2 Collaborators are people that your group users may invite to work with them on their projects. So, for example, if you have the Group Standard plan, the users in your group can invite up to 10 people to work with them on a project. And if you have the Group Professional plan, your users can invite as many people to work with them as they want.
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafGroupPlansQ2"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafGroupPlansQ2"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafGroupPlansQ2"
|
||||
)
|
||||
| What is the benefit of purchasing an Overleaf Group plan?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafGroupPlansQ2")
|
||||
.custom-accordion-body
|
||||
| Our Group subscriptions allow you to purchase access to our premium features for multiple people. They’re easy to manage, help save on paperwork, and allow groups of 5 or more to purchase via purchase order (PO). We also offer discounts on purchases of Group subscriptions for more than 20 users; just get in touch with our
|
||||
a.inline-green-link(
|
||||
target="_blank"
|
||||
href="/for/contact-sales"
|
||||
event-tracking="plans-page-click"
|
||||
event-tracking-mb="true"
|
||||
event-tracking-trigger="click"
|
||||
event-segmentation={ button: 'contact', location: 'faq' }
|
||||
)
|
||||
span Sales team
|
||||
| .
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafGroupPlansQ3"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafGroupPlansQ3"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafGroupPlansQ3"
|
||||
)
|
||||
| Who is eligible for the educational discount?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafGroupPlansQ3")
|
||||
.custom-accordion-body
|
||||
| The educational discount for group subscriptions is for students or faculty who are using Overleaf primarily for teaching.
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafGroupPlansQ4"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafGroupPlansQ4"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafGroupPlansQ4"
|
||||
)
|
||||
| How do I add more licenses to my group subscription, and what will it cost?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafGroupPlansQ4")
|
||||
.custom-accordion-body
|
||||
div
|
||||
| You can add up to 20 licenses using the
|
||||
a.inline-green-link(
|
||||
target="_blank"
|
||||
href="/user/subscription"
|
||||
event-tracking="plans-page-click"
|
||||
event-tracking-mb="true"
|
||||
event-tracking-trigger="click"
|
||||
event-segmentation={ button: 'contact', location: 'faq' }
|
||||
)
|
||||
span subscription management page
|
||||
| accessed by going to Account >
|
||||
a.inline-green-link(
|
||||
target="_blank"
|
||||
href="/user/subscription"
|
||||
event-tracking="plans-page-click"
|
||||
event-tracking-mb="true"
|
||||
event-tracking-trigger="click"
|
||||
event-segmentation={ button: 'contact', location: 'faq' }
|
||||
)
|
||||
span Subscription
|
||||
| when logged into Overleaf. The cost per license will be prorated at the current per license rate, and will end with your existing renewal date.
|
||||
div.mt-2
|
||||
| If you need more than 20 licenses added to your subscription, please
|
||||
a.inline-green-link(
|
||||
target="_blank"
|
||||
href="/for/contact-sales"
|
||||
event-tracking="plans-page-click"
|
||||
event-tracking-mb="true"
|
||||
event-tracking-trigger="click"
|
||||
event-segmentation={ button: 'contact', location: 'faq' }
|
||||
)
|
||||
span contact the Sales team
|
||||
| .
|
||||
.custom-accordion-item
|
||||
button.custom-accordion-header.collapsed(
|
||||
type="button"
|
||||
data-toggle="collapse"
|
||||
data-target="#overleafGroupPlansQ5"
|
||||
data-bs-toggle="collapse"
|
||||
data-bs-target="#overleafGroupPlansQ5"
|
||||
aria-expanded="false"
|
||||
aria-controls="overleafGroupPlansQ5"
|
||||
)
|
||||
| How do I upgrade my plan from Group Standard to Group Professional?
|
||||
span.custom-accordion-icon
|
||||
i.material-symbols.material-symbols-outlined(aria-hidden="true") keyboard_arrow_down
|
||||
.collapse(id="overleafGroupPlansQ5")
|
||||
.custom-accordion-body
|
||||
| You can upgrade your plan from Group Standard to Group Professional on the
|
||||
a.inline-green-link(
|
||||
target="_blank"
|
||||
href="/user/subscription"
|
||||
event-tracking="plans-page-click"
|
||||
event-tracking-mb="true"
|
||||
event-tracking-trigger="click"
|
||||
event-segmentation={ button: 'contact', location: 'faq' }
|
||||
)
|
||||
span subscription management page
|
||||
| .
|
11
services/web/app/views/subscriptions/preview-change.pug
Normal file
11
services/web/app/views/subscriptions/preview-change.pug
Normal file
@@ -0,0 +1,11 @@
|
||||
extends ../layout-marketing
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/preview-change'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-subscriptionChangePreview" data-type="json" content=changePreview)
|
||||
|
||||
block content
|
||||
main.content.content-alt#main-content
|
||||
#subscription-preview-change
|
@@ -0,0 +1,10 @@
|
||||
extends ../layout-marketing
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/group-management/subtotal-limit-exceeded'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-groupName", data-type="string", content=groupName)
|
||||
|
||||
block content
|
||||
main.content.content-alt#subtotal-limit-exceeded-root
|
@@ -0,0 +1,12 @@
|
||||
extends ../layout-react
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/successful-subscription'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-subscription" data-type="json" content=personalSubscription)
|
||||
meta(name="ol-postCheckoutRedirect" content=postCheckoutRedirect)
|
||||
meta(name="ol-user" data-type="json" content=user)
|
||||
|
||||
block content
|
||||
main.content.content-alt#subscription-success-root
|
11
services/web/app/views/subscriptions/team/group-invites.pug
Normal file
11
services/web/app/views/subscriptions/team/group-invites.pug
Normal file
@@ -0,0 +1,11 @@
|
||||
extends ../../layout-react
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/group-invites'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-teamInvites" data-type="json" content=teamInvites)
|
||||
meta(name="ol-user" data-type="json" content=user)
|
||||
|
||||
block content
|
||||
main.content.content-alt.team-invite#group-invites-root
|
18
services/web/app/views/subscriptions/team/invite-managed.pug
Normal file
18
services/web/app/views/subscriptions/team/invite-managed.pug
Normal file
@@ -0,0 +1,18 @@
|
||||
extends ../../layout-react
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/invite-managed'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-inviteToken" content=inviteToken)
|
||||
meta(name="ol-inviterName" content=inviterName)
|
||||
meta(name="ol-expired" data-type="boolean" content=expired)
|
||||
meta(name="ol-alreadyEnrolled" data-type="boolean" content=alreadyEnrolled)
|
||||
meta(name="ol-validationStatus" data-type="json" content=validationStatus)
|
||||
meta(name="ol-currentManagedUserAdminEmail" data-type="string" content=currentManagedUserAdminEmail)
|
||||
meta(name="ol-groupSSOActive" data-type="boolean" content=groupSSOActive)
|
||||
meta(name="ol-subscriptionId" data-type="string" content=subscriptionId)
|
||||
meta(name="ol-user" data-type="json" content=user)
|
||||
|
||||
block content
|
||||
main.content.content-alt.team-invite#invite-managed-root
|
17
services/web/app/views/subscriptions/team/invite.pug
Normal file
17
services/web/app/views/subscriptions/team/invite.pug
Normal file
@@ -0,0 +1,17 @@
|
||||
extends ../../layout-react
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/invite'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-hasIndividualRecurlySubscription" data-type="boolean" content=hasIndividualRecurlySubscription)
|
||||
meta(name="ol-inviterName" data-type="string" content=inviterName)
|
||||
meta(name="ol-inviteToken" data-type="string" content=inviteToken)
|
||||
meta(name="ol-currentManagedUserAdminEmail" data-type="string" content=currentManagedUserAdminEmail)
|
||||
meta(name="ol-expired" data-type="boolean" content=expired)
|
||||
meta(name="ol-groupSSOActive" data-type="boolean" content=groupSSOActive)
|
||||
meta(name="ol-subscriptionId" data-type="string" content=subscriptionId)
|
||||
meta(name="ol-user" data-type="json" content=user)
|
||||
|
||||
block content
|
||||
main.content.content-alt#invite-root
|
@@ -0,0 +1,30 @@
|
||||
extends ../../layout-react
|
||||
|
||||
block append meta
|
||||
meta(name="ol-user" data-type="json" content=user)
|
||||
|
||||
block content
|
||||
- var colClass = bootstrapVersion === 5 ? 'col-lg-8 m-auto' : 'col-md-8 col-md-offset-2'
|
||||
|
||||
main.content.content-alt.team-invite#main-content
|
||||
.container
|
||||
.row
|
||||
div(class=colClass)
|
||||
.card.text-center
|
||||
.card-body
|
||||
.page-header
|
||||
// TODO: Remove `team-invite-name` once we fully migrated to Bootstrap 5
|
||||
h1.text-centered !{translate("invited_to_group", {inviterName: inviterName, appName: appName }, [{name: 'span', attrs: {class: 'team-invite-name'}}])}
|
||||
|
||||
if (accountExists)
|
||||
div
|
||||
p #{translate("invited_to_group_login_benefits", {appName: appName})}
|
||||
p #{translate("invited_to_group_login", {emailAddress: emailAddress})}
|
||||
p
|
||||
a.btn.btn-primary(href=`/login?redir=/subscription/invites/${inviteToken}${groupSSOActive ? "&hide_sso_login=true" : ""}`) #{translate("login_to_accept_invitation")}
|
||||
else
|
||||
div
|
||||
p #{translate("invited_to_group_register_benefits", {appName: appName})}
|
||||
p #{translate("invited_to_group_register", {inviterName: inviterName})}
|
||||
p
|
||||
a.btn.btn-primary(href=`/register?redir=/subscription/invites/${inviteToken}${groupSSOActive ? "&hide_sso_login=true" : ""}`) #{translate("register_to_accept_invitation")}
|
@@ -0,0 +1,12 @@
|
||||
extends ../layout-marketing
|
||||
|
||||
block entrypointVar
|
||||
- entrypoint = 'pages/user/subscription/group-management/upgrade-group-subscription'
|
||||
|
||||
block append meta
|
||||
meta(name="ol-subscriptionChangePreview" data-type="json" content=changePreview)
|
||||
meta(name="ol-totalLicenses", data-type="number", content=totalLicenses)
|
||||
meta(name="ol-groupName", data-type="string", content=groupName)
|
||||
|
||||
block content
|
||||
main.content.content-alt#upgrade-group-subscription-root
|
Reference in New Issue
Block a user