mirror of
https://github.com/overleaf/overleaf.git
synced 2024-10-31 21:21:03 -04:00
41f75b5936
Fix potential Angular XSS issues GitOrigin-RevId: a18a609a25b29e910cb78e28a37398417cfe4842
112 lines
2.7 KiB
Text
112 lines
2.7 KiB
Text
|
|
//- Features Tables
|
|
mixin table_premium
|
|
table.card.plans-table
|
|
tr
|
|
th
|
|
th #{translate("personal")}
|
|
th #{translate("collaborator")}
|
|
.outer.outer-top
|
|
.outer-content
|
|
.best-value
|
|
strong #{translate('best_value')}
|
|
th #{translate("professional")}
|
|
|
|
tr
|
|
td #{translate("price")}
|
|
td #{translate("free")}
|
|
td
|
|
+price_collaborator
|
|
td
|
|
+price_professional
|
|
|
|
for feature in planFeatures
|
|
tr
|
|
td(event-tracking="features-table" event-tracking-trigger="hover" event-tracking-ga="subscription-funnel" event-tracking-label=`${feature.feature}`)
|
|
if feature.info
|
|
span(tooltip=translate(feature.info)) #{translate(feature.feature)}
|
|
else
|
|
| #{translate(feature.feature)}
|
|
for plan in feature.plans
|
|
td(ng-non-bindable)
|
|
if feature.value == 'str'
|
|
| #{plan}
|
|
else if plan
|
|
i.fa.fa-check(aria-hidden="true")
|
|
span.sr-only Feature included
|
|
else
|
|
i.fa.fa-times(aria-hidden="true")
|
|
span.sr-only Feature not included
|
|
|
|
tr
|
|
td
|
|
td
|
|
+btn_buy_free('table')
|
|
td
|
|
+btn_buy_collaborator('table')
|
|
.outer.outer-btm
|
|
.outer-content
|
|
td
|
|
+btn_buy_professional('table')
|
|
|
|
mixin table_cell_student(feature)
|
|
if feature.value == 'str'
|
|
| #{feature.student}
|
|
else if feature.student
|
|
i.fa.fa-check(aria-hidden="true")
|
|
span.sr-only Feature included
|
|
else
|
|
i.fa.fa-times(aria-hidden="true")
|
|
span.sr-only Feature not included
|
|
|
|
mixin table_student
|
|
table.card.plans-table
|
|
tr
|
|
th
|
|
th #{translate("personal")}
|
|
th #{translate("student")} (#{translate("annual")})
|
|
.outer.outer-top
|
|
.outer-content
|
|
.best-value
|
|
strong Best Value
|
|
th #{translate("student")}
|
|
|
|
tr
|
|
td #{translate("price")}
|
|
td #{translate("free")}
|
|
td
|
|
+price_student_annual
|
|
td
|
|
+price_student_monthly
|
|
|
|
for feature in planFeatures
|
|
tr
|
|
td(event-tracking="plans-page-table" event-tracking-trigger="hover" event-tracking-ga="subscription-funnel" event-tracking-label=`${feature.feature}`)
|
|
if feature.info
|
|
span(tooltip=translate(feature.info)) #{translate(feature.feature)}
|
|
else
|
|
| #{translate(feature.feature)}
|
|
td(ng-non-bindable)
|
|
if feature.value == 'str'
|
|
| #{feature.plans.free}
|
|
else if feature.plans.free
|
|
i.fa.fa-check(aria-hidden="true")
|
|
span.sr-only Feature included
|
|
else
|
|
i.fa.fa-times(aria-hidden="true")
|
|
span.sr-only Feature included
|
|
td(ng-non-bindable)
|
|
+table_cell_student(feature)
|
|
td(ng-non-bindable)
|
|
+table_cell_student(feature)
|
|
|
|
tr
|
|
td
|
|
td
|
|
+btn_buy_free('table')
|
|
td
|
|
+btn_buy_student('table', 'annual')
|
|
.outer.outer-btm
|
|
.outer-content
|
|
td
|
|
+btn_buy_student('table', 'monthly')
|