parent
4dfab5b8e2
commit
0cbc96a54b
4 changed files with 92 additions and 45 deletions
|
@ -15,6 +15,7 @@ PLANS = [
|
||||||
'audience': 'For smaller teams',
|
'audience': 'For smaller teams',
|
||||||
'bus_features': False,
|
'bus_features': False,
|
||||||
'deprecated': True,
|
'deprecated': True,
|
||||||
|
'free_trial_days': 14,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'title': 'Basic',
|
'title': 'Basic',
|
||||||
|
@ -24,24 +25,37 @@ PLANS = [
|
||||||
'audience': 'For your basic team',
|
'audience': 'For your basic team',
|
||||||
'bus_features': False,
|
'bus_features': False,
|
||||||
'deprecated': True,
|
'deprecated': True,
|
||||||
|
'free_trial_days': 14,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'title': 'Medium',
|
'title': 'Yacht',
|
||||||
'price': 2200,
|
|
||||||
'privateRepos': 20,
|
|
||||||
'stripeId': 'medium',
|
|
||||||
'audience': 'For medium teams',
|
|
||||||
'bus_features': False,
|
|
||||||
'deprecated': True,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
'title': 'Large',
|
|
||||||
'price': 5000,
|
'price': 5000,
|
||||||
'privateRepos': 50,
|
'privateRepos': 20,
|
||||||
'stripeId': 'large',
|
'stripeId': 'bus-coreos-trial',
|
||||||
'audience': 'For larger teams',
|
'audience': 'For small businesses',
|
||||||
|
'bus_features': True,
|
||||||
|
'deprecated': True,
|
||||||
|
'free_trial_days': 180,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'title': 'Personal',
|
||||||
|
'price': 1200,
|
||||||
|
'privateRepos': 5,
|
||||||
|
'stripeId': 'personal',
|
||||||
|
'audience': 'Individuals',
|
||||||
'bus_features': False,
|
'bus_features': False,
|
||||||
'deprecated': True,
|
'deprecated': True,
|
||||||
|
'free_trial_days': 14,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'title': 'Skiff',
|
||||||
|
'price': 2500,
|
||||||
|
'privateRepos': 10,
|
||||||
|
'stripeId': 'bus-micro',
|
||||||
|
'audience': 'For startups',
|
||||||
|
'bus_features': True,
|
||||||
|
'deprecated': True,
|
||||||
|
'free_trial_days': 14,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'title': 'Yacht',
|
'title': 'Yacht',
|
||||||
|
@ -51,6 +65,27 @@ PLANS = [
|
||||||
'audience': 'For small businesses',
|
'audience': 'For small businesses',
|
||||||
'bus_features': True,
|
'bus_features': True,
|
||||||
'deprecated': True,
|
'deprecated': True,
|
||||||
|
'free_trial_days': 14,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'title': 'Freighter',
|
||||||
|
'price': 10000,
|
||||||
|
'privateRepos': 50,
|
||||||
|
'stripeId': 'bus-medium',
|
||||||
|
'audience': 'For normal businesses',
|
||||||
|
'bus_features': True,
|
||||||
|
'deprecated': True,
|
||||||
|
'free_trial_days': 14,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'title': 'Tanker',
|
||||||
|
'price': 20000,
|
||||||
|
'privateRepos': 125,
|
||||||
|
'stripeId': 'bus-large',
|
||||||
|
'audience': 'For large businesses',
|
||||||
|
'bus_features': True,
|
||||||
|
'deprecated': True,
|
||||||
|
'free_trial_days': 14,
|
||||||
},
|
},
|
||||||
|
|
||||||
# Active plans
|
# Active plans
|
||||||
|
@ -62,51 +97,57 @@ PLANS = [
|
||||||
'audience': 'Committment to FOSS',
|
'audience': 'Committment to FOSS',
|
||||||
'bus_features': False,
|
'bus_features': False,
|
||||||
'deprecated': False,
|
'deprecated': False,
|
||||||
|
'free_trial_days': 30,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'title': 'Personal',
|
'title': 'Personal',
|
||||||
'price': 1200,
|
'price': 1200,
|
||||||
'privateRepos': 5,
|
'privateRepos': 5,
|
||||||
'stripeId': 'personal',
|
'stripeId': 'personal-30',
|
||||||
'audience': 'Individuals',
|
'audience': 'Individuals',
|
||||||
'bus_features': False,
|
'bus_features': False,
|
||||||
'deprecated': False,
|
'deprecated': False,
|
||||||
|
'free_trial_days': 30,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'title': 'Skiff',
|
'title': 'Skiff',
|
||||||
'price': 2500,
|
'price': 2500,
|
||||||
'privateRepos': 10,
|
'privateRepos': 10,
|
||||||
'stripeId': 'bus-micro',
|
'stripeId': 'bus-micro-30',
|
||||||
'audience': 'For startups',
|
'audience': 'For startups',
|
||||||
'bus_features': True,
|
'bus_features': True,
|
||||||
'deprecated': False,
|
'deprecated': False,
|
||||||
|
'free_trial_days': 30,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'title': 'Yacht',
|
'title': 'Yacht',
|
||||||
'price': 5000,
|
'price': 5000,
|
||||||
'privateRepos': 20,
|
'privateRepos': 20,
|
||||||
'stripeId': 'bus-coreos-trial',
|
'stripeId': 'bus-small-30',
|
||||||
'audience': 'For small businesses',
|
'audience': 'For small businesses',
|
||||||
'bus_features': True,
|
'bus_features': True,
|
||||||
'deprecated': False,
|
'deprecated': False,
|
||||||
|
'free_trial_days': 30,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'title': 'Freighter',
|
'title': 'Freighter',
|
||||||
'price': 10000,
|
'price': 10000,
|
||||||
'privateRepos': 50,
|
'privateRepos': 50,
|
||||||
'stripeId': 'bus-medium',
|
'stripeId': 'bus-medium-30',
|
||||||
'audience': 'For normal businesses',
|
'audience': 'For normal businesses',
|
||||||
'bus_features': True,
|
'bus_features': True,
|
||||||
'deprecated': False,
|
'deprecated': False,
|
||||||
|
'free_trial_days': 30,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'title': 'Tanker',
|
'title': 'Tanker',
|
||||||
'price': 20000,
|
'price': 20000,
|
||||||
'privateRepos': 125,
|
'privateRepos': 125,
|
||||||
'stripeId': 'bus-large',
|
'stripeId': 'bus-large-30',
|
||||||
'audience': 'For large businesses',
|
'audience': 'For large businesses',
|
||||||
'bus_features': True,
|
'bus_features': True,
|
||||||
'deprecated': False,
|
'deprecated': False,
|
||||||
|
'free_trial_days': 30,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -838,12 +838,12 @@ i.toggle-icon:hover {
|
||||||
font-size: 1.4em;
|
font-size: 1.4em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plans-list .plan.bus-small, .plans-list .plan.bus-coreos-trial {
|
.plans-list .plan.bus-small, .plans-list .plan.bus-small-30 {
|
||||||
border-top: 6px solid #46ac39;
|
border-top: 6px solid #46ac39;
|
||||||
margin-top: -10px;
|
margin-top: -10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plans-list .plan.bus-small .plan-box, .plans-list .plan.bus-coreos-trial .plan-box {
|
.plans-list .plan.bus-small .plan-box, .plans-list .plan.bus-small-30 .plan-box {
|
||||||
background: black !important;
|
background: black !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -934,7 +934,7 @@ i.toggle-icon:hover {
|
||||||
margin-bottom: 6px;
|
margin-bottom: 6px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plans-list .plan.bus-small button, .plans-list .plan.bus-coreos-trial button {
|
.plans-list .plan.bus-small button, .plans-list .plan.bus-small-30 button {
|
||||||
font-size: 1em;
|
font-size: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -942,7 +942,7 @@ i.toggle-icon:hover {
|
||||||
padding-top: 248px;
|
padding-top: 248px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plans-list .features-bar .feature .count {
|
.plans-list .features-bar .feature .count-panel {
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -972,7 +972,8 @@ i.toggle-icon:hover {
|
||||||
padding-bottom: 0px;
|
padding-bottom: 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plans-list .plan .feature {
|
.plans-list .plan .feature,
|
||||||
|
.plans-list .plan .count-feature {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
border-bottom: 1px solid #ddd;
|
border-bottom: 1px solid #ddd;
|
||||||
|
@ -1008,7 +1009,7 @@ i.toggle-icon:hover {
|
||||||
background: #46ac39;
|
background: #46ac39;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plans-list .plan .count, .plans-list .features-bar .count {
|
.plans-list .plan .count-panel, .plans-list .features-bar .count-panel {
|
||||||
background: white;
|
background: white;
|
||||||
border-bottom: 0px;
|
border-bottom: 0px;
|
||||||
text-align: center !important;
|
text-align: center !important;
|
||||||
|
@ -1016,8 +1017,7 @@ i.toggle-icon:hover {
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plans-list .plan .count b, .plans-list .features-bar .count b {
|
.plans-list .plan .count-panel b, .plans-list .features-bar .count-panel b {
|
||||||
font-size: 1.5em;
|
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1048,14 +1048,20 @@ i.toggle-icon:hover {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.plans-list .plan .count {
|
.plans-list .plan .count-panel {
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plans-list .plan .count b {
|
.plans-list .plan .count b {
|
||||||
|
font-size: 1.5em;
|
||||||
|
vertical-align: text-bottom;
|
||||||
color: #428bca;
|
color: #428bca;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.plans-list .plan .count-feature {
|
||||||
|
line-height: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
.plans-list .plan.business-plan .count b {
|
.plans-list .plan.business-plan .count b {
|
||||||
color: #46ac39;
|
color: #46ac39;
|
||||||
}
|
}
|
||||||
|
@ -1879,7 +1885,7 @@ p.editable:hover i {
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.repo .repo-controls .count {
|
.repo .repo-controls .count-panel {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding-left: 4px;
|
padding-left: 4px;
|
||||||
padding-right: 4px;
|
padding-right: 4px;
|
||||||
|
@ -1895,7 +1901,7 @@ p.editable:hover i {
|
||||||
-moz-transition: -moz-transform 500ms ease-in-out;
|
-moz-transition: -moz-transform 500ms ease-in-out;
|
||||||
}
|
}
|
||||||
|
|
||||||
.repo .repo-controls .count.visible {
|
.repo .repo-controls .count-panel.visible {
|
||||||
transform: scaleX(1);
|
transform: scaleX(1);
|
||||||
-webkit-transform: scaleX(1);
|
-webkit-transform: scaleX(1);
|
||||||
-moz-transform: scaleX(1);
|
-moz-transform: scaleX(1);
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
<div class="col-md-7">
|
<div class="col-md-7">
|
||||||
<h1>Secure hosting for <b>private</b> Docker<a class="disclaimer-link" href="/disclaimer" target="_self">*</a> repositories</h1>
|
<h1>Secure hosting for <b>private</b> Docker<a class="disclaimer-link" href="/disclaimer" target="_self">*</a> repositories</h1>
|
||||||
<h3>Use the Docker images <b>your team</b> needs with the safety of <b>private</b> repositories</h3>
|
<h3>Use the Docker images <b>your team</b> needs with the safety of <b>private</b> repositories</h3>
|
||||||
<a href="/plans/?trial-plan=bus-coreos-trial" class="call-to-action">Get 20 free private repos for 6 months<i class="fa fa-arrow-right"></i></a>
|
<a href="/plans/" class="call-to-action">Start your free 30 day trial today<i class="fa fa-arrow-right"></i></a>
|
||||||
</div> <!-- col -->
|
</div> <!-- col -->
|
||||||
|
|
||||||
<div class="col-md-4 col-md-offset-1">
|
<div class="col-md-4 col-md-offset-1">
|
||||||
|
|
|
@ -41,13 +41,6 @@
|
||||||
</span>
|
</span>
|
||||||
<i class="fa fa-calendar visible-lg"></i>
|
<i class="fa fa-calendar visible-lg"></i>
|
||||||
</div>
|
</div>
|
||||||
<div class="feature">
|
|
||||||
<span class="context-tooltip" bs-tooltip="tooltip.title" data-container="body" data-placement="right"
|
|
||||||
data-title="Grant subsets of users in an organization their own permissions, either on a global basis or a per-repository basis">
|
|
||||||
Teams
|
|
||||||
</span>
|
|
||||||
<i class="fa fa-group visible-lg"></i>
|
|
||||||
</div>
|
|
||||||
<div class="feature">
|
<div class="feature">
|
||||||
<span class="context-tooltip" bs-tooltip="tooltip.title" data-container="body" data-placement="right"
|
<span class="context-tooltip" bs-tooltip="tooltip.title" data-container="body" data-placement="right"
|
||||||
data-title="Every action take within an organization is logged in detail, with the ability to visualize logs and download them">
|
data-title="Every action take within an organization is logged in detail, with the ability to visualize logs and download them">
|
||||||
|
@ -55,11 +48,18 @@
|
||||||
</span>
|
</span>
|
||||||
<i class="fa fa-bar-chart-o visible-lg"></i>
|
<i class="fa fa-bar-chart-o visible-lg"></i>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="feature">
|
||||||
|
<span class="context-tooltip" bs-tooltip="tooltip.title" data-container="body" data-placement="right"
|
||||||
|
data-title="Grant subsets of users in an organization their own permissions, either on a global basis or a per-repository basis">
|
||||||
|
Teams
|
||||||
|
</span>
|
||||||
|
<i class="fa fa-group visible-lg"></i>
|
||||||
|
</div>
|
||||||
<div class="feature">
|
<div class="feature">
|
||||||
<span class="context-tooltip" bs-tooltip="tooltip.title" data-container="body" data-placement="right"
|
<span class="context-tooltip" bs-tooltip="tooltip.title" data-container="body" data-placement="right"
|
||||||
data-title="All plans have a free trial">
|
data-title="All plans have a free trial">
|
||||||
<span class="hidden-sm-inline">Free Trial</span>
|
<span class="hidden-sm-inline">Free Trial Days</span>
|
||||||
<span class="visible-sm-inline">Free Trial</span>
|
<span class="visible-sm-inline">Free Trial Days</span>
|
||||||
</span>
|
</span>
|
||||||
<i class="fa fa-clock-o visible-lg"></i>
|
<i class="fa fa-clock-o visible-lg"></i>
|
||||||
</div>
|
</div>
|
||||||
|
@ -76,27 +76,27 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="features hidden-xs">
|
<div class="features hidden-xs">
|
||||||
<div class="count"><b>{{ plan.privateRepos }}</b> private repositories</div>
|
<div class="count count-panel"><b>{{ plan.privateRepos }}</b> private repositories</div>
|
||||||
|
<div class="feature present"></div>
|
||||||
<div class="feature present"></div>
|
<div class="feature present"></div>
|
||||||
<div class="feature present"></div>
|
<div class="feature present"></div>
|
||||||
<div class="feature present"></div>
|
<div class="feature present"></div>
|
||||||
<div class="feature present"></div>
|
<div class="feature present"></div>
|
||||||
<div class="feature present"></div>
|
<div class="feature present"></div>
|
||||||
<div class="feature" ng-class="plan.bus_features ? 'present' : ''"></div>
|
<div class="feature" ng-class="plan.bus_features ? 'present' : ''"></div>
|
||||||
<div class="feature" ng-class="plan.bus_features ? 'present' : ''"></div>
|
<div class="count-feature count"><b>{{ plan.free_trial_days }}</b></div>
|
||||||
<div class="feature present"></div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="features visible-xs">
|
<div class="features visible-xs">
|
||||||
<div class="count"><b>{{ plan.privateRepos }}</b> private repositories</div>
|
<div class="count count-panel"><b>{{ plan.privateRepos }}</b> private repositories</div>
|
||||||
<div class="feature present">Unlimited Public Repositories</div>
|
<div class="feature present">Unlimited Public Repositories</div>
|
||||||
<div class="feature present">SSL Encryption</div>
|
<div class="feature present">SSL Encryption</div>
|
||||||
<div class="feature present">Robot accounts</div>
|
<div class="feature present">Robot accounts</div>
|
||||||
<div class="feature present">Dockerfile Build</div>
|
<div class="feature present">Dockerfile Build</div>
|
||||||
<div class="feature present">Invoice History</div>
|
<div class="feature present">Invoice History</div>
|
||||||
|
<div class="feature present">Logging</div>
|
||||||
<div class="feature" ng-class="plan.bus_features ? 'present' : 'notpresent'">Teams</div>
|
<div class="feature" ng-class="plan.bus_features ? 'present' : 'notpresent'">Teams</div>
|
||||||
<div class="feature" ng-class="plan.bus_features ? 'present' : 'notpresent'">Logging</div>
|
<div class="count-feature count"><b>{{ plan.free_trial_days }}</b> Days Free</div>
|
||||||
<div class="feature present">Free Trial</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button class="btn btn-block" ng-class="plan.bus_features ? 'btn-success' : 'btn-primary'"
|
<button class="btn btn-block" ng-class="plan.bus_features ? 'btn-success' : 'btn-primary'"
|
||||||
|
|
Reference in a new issue