Website: update features on pricing page (#20993)
- Removed duplicate and redundant features - Reordered features by order of operation from the POV of an IT admin - Consolidated use cases - Renamed some features for clarity See [this doc](https://docs.google.com/document/d/1z7X__TmJIpRXQF-Mx9NK4EChwkX73fj0ymLnIJM2GnQ/edit?usp=sharing) for more details, including methodology for the organization and styling. --------- Co-authored-by: Eric <eashaw@sailsjs.com> Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
This commit is contained in:
co-authored by
Eric
Noah Talerman
parent
01014f53e6
commit
9041f49d7f
+1148
-1052
File diff suppressed because it is too large
Load Diff
+3
-3
@@ -29,7 +29,7 @@ module.exports = {
|
||||
|
||||
let pricingTable = [];
|
||||
|
||||
let pricingTableCategories = ['Deployment', 'Device management', 'Endpoint operations', 'Vulnerability management', 'Integrations', 'Support'];
|
||||
let pricingTableCategories = ['Deployment', 'Configuration', 'Devices', 'Integrations', 'Support'];
|
||||
for(let category of pricingTableCategories) {
|
||||
// Get all the features in that have a pricingTableFeatures array that contains this category.
|
||||
let featuresInThisCategory = _.filter(pricingTableFeatures, (feature)=>{
|
||||
@@ -45,7 +45,7 @@ module.exports = {
|
||||
}
|
||||
|
||||
let pricingTableForSecurity = [];
|
||||
let categoryOrderForSecurityPricingTable = ['Support', 'Deployment', 'Integrations', 'Endpoint operations', 'Vulnerability management'];
|
||||
let categoryOrderForSecurityPricingTable = ['Deployment', 'Configuration', 'Devices', 'Integrations', 'Support'];
|
||||
for(let category of categoryOrderForSecurityPricingTable) {
|
||||
// Get all the features in that have a pricingTableFeatures array that contains this category.
|
||||
let featuresInThisCategory = _.filter(pricingTableFeatures, (feature)=>{
|
||||
@@ -61,7 +61,7 @@ module.exports = {
|
||||
}
|
||||
|
||||
|
||||
let categoryOrderForITPricingTable = [ 'Deployment','Device management', 'Endpoint operations', 'Integrations', 'Support'];
|
||||
let categoryOrderForITPricingTable = ['Deployment', 'Configuration', 'Devices', 'Integrations', 'Support'];
|
||||
let pricingTableForIt = [];
|
||||
// Sort the IT-focused pricing table from the order of the elements in the categoryOrderForITPricingTable array.
|
||||
for(let category of categoryOrderForITPricingTable) {
|
||||
|
||||
+1
-1
@@ -845,7 +845,7 @@ module.exports = {
|
||||
let yaml = await sails.helpers.fs.read(path.join(topLvlRepoPath, RELATIVE_PATH_TO_PRICING_TABLE_YML_IN_FLEET_REPO)).intercept('doesNotExist', (err)=>new Error(`Could not find pricing table features YAML file at "${RELATIVE_PATH_TO_PRICING_TABLE_YML_IN_FLEET_REPO}". Was it accidentally moved? Raw error: `+err.message));
|
||||
let pricingTableFeatures = YAML.parse(yaml, {prettyErrors: true});
|
||||
let VALID_PRODUCT_CATEGORIES = ['Endpoint operations', 'Device management', 'Vulnerability management'];
|
||||
let VALID_PRICING_TABLE_CATEGORIES = ['Support', 'Deployment', 'Integrations', 'Endpoint operations', 'Device management', 'Vulnerability management'];
|
||||
let VALID_PRICING_TABLE_CATEGORIES = ['Support', 'Deployment', 'Integrations', 'Configuration', 'Devices', 'Vulnerability management'];
|
||||
let VALID_PRICING_TABLE_KEYS = ['industryName', 'description', 'documentationUrl', 'tier', 'jamfProHasFeature', 'jamfProtectHasFeature', 'usualDepartment', 'productCategories', 'pricingTableCategories', 'waysToUse', 'buzzwords', 'demos', 'dri', 'friendlyName', 'moreInfoUrl', 'comingSoonOn', 'screenshotSrc', 'isExperimental'];
|
||||
for(let feature of pricingTableFeatures){
|
||||
// Throw an error if a feature contains an unrecognized key.
|
||||
|
||||
Vendored
+6
-6
@@ -80,7 +80,7 @@
|
||||
<table purpose="pricing-categories-table" class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<td><h4><%- category.categoryName %></h4></td>
|
||||
<td><h5><%- category.categoryName %></h5></td>
|
||||
<%if(pricingTable.indexOf(category) === 0) {%>
|
||||
<td class="text-center">
|
||||
<strong>Free</strong>
|
||||
@@ -122,7 +122,7 @@
|
||||
</div>
|
||||
<%// Mobile features tables %>
|
||||
<div purpose="mobile-feature-table-section" class="d-block d-md-none" v-for="category in pricingTable">
|
||||
<h4>{{category.categoryName}}</h4>
|
||||
<h5>{{category.categoryName}}</h5>
|
||||
<div purpose="mobile-features-table" class="d-flex flex-column" v-for="feature in category.features">
|
||||
<div purpose="striped-row" class="d-flex flex-row justify-content-between align-items-center">
|
||||
<strong class="d-block">
|
||||
@@ -152,7 +152,7 @@
|
||||
<table purpose="pricing-categories-table" class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<td><h4><%- category.categoryName %></h4></td>
|
||||
<td><h5><%- category.categoryName %></h5></td>
|
||||
<%if(pricingTableForIt.indexOf(category) === 0) {%>
|
||||
<td class="text-center">
|
||||
<strong>Free</strong>
|
||||
@@ -194,7 +194,7 @@
|
||||
</div>
|
||||
<%// Mobile features tables %>
|
||||
<div purpose="mobile-feature-table-section" class="d-block d-md-none" v-for="category in pricingTableForIt">
|
||||
<h4>{{category.categoryName}}</h4>
|
||||
<h5>{{category.categoryName}}</h5>
|
||||
<div purpose="mobile-features-table" class="d-flex flex-column" v-for="feature in category.features">
|
||||
<div purpose="striped-row" class="d-flex flex-row justify-content-between align-items-center" @click="">
|
||||
<strong>
|
||||
@@ -223,7 +223,7 @@
|
||||
<table purpose="pricing-categories-table" class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<td><h4><%- category.categoryName %></h4></td>
|
||||
<td><h5><%- category.categoryName %></h5></td>
|
||||
<%if(pricingTableForSecurity.indexOf(category) === 0) {%>
|
||||
<td class="text-center">
|
||||
<strong>Free</strong>
|
||||
@@ -265,7 +265,7 @@
|
||||
</div>
|
||||
<%// Mobile features tables %>
|
||||
<div purpose="mobile-feature-table-section" class="d-block d-md-none" v-for="category in pricingTableForSecurity">
|
||||
<h4>{{category.categoryName}}</h4>
|
||||
<h5>{{category.categoryName}}</h5>
|
||||
<div purpose="mobile-features-table" class="d-flex flex-column" v-for="feature in category.features">
|
||||
<div purpose="striped-row" class="d-flex flex-row justify-content-between align-items-center">
|
||||
<strong class="d-block">
|
||||
|
||||
Reference in New Issue
Block a user