@ -28,7 +28,7 @@ define([
// Msg.features_f_cryptdrive0 = "";
// Msg.features_f_cryptdrive0 = "";
// Msg.features_f_cryptdrive0_note = "";
// Msg.features_f_cryptdrive0_note = "";
// Msg.features_f_storage0 = "";
// Msg.features_f_storage0 = "";
Msg . features _f _storage0 _note = "Documents are deleted after 3 month s of inactivity";
Msg . features _f _storage0 _note = "Documents are deleted after {0} day s of inactivity";
// Registered column
// Registered column
Msg . features _registered = "Registered" ; //
Msg . features _registered = "Registered" ; //
// Msg.features_f_anon = "";
// Msg.features_f_anon = "";
@ -36,14 +36,12 @@ define([
Msg . features _f _social = "Social Features" ;
Msg . features _f _social = "Social Features" ;
Msg . features _f _social _note = "Add contacts for secure collaboration, create a profile, fine-grained access controls" ;
Msg . features _f _social _note = "Add contacts for secure collaboration, create a profile, fine-grained access controls" ;
// Msg.features_f_file1 = "";
// Msg.features_f_file1 = "";
// XXX add instance limit
Msg . features _f _file1 _note = "Store files in your CryptDrive: images, PDFs, videos, and more. Share them with your contacts or embed them in your documents. (up to {0}MB)" ;
Msg . features _f _file1 _note = "Store files in your CryptDrive: images, PDFs, videos, and more. Share them with your contacts or embed them in your documents. (up to 25MB)" ;
// Msg.features_f_cryptdrive1 = "";
// Msg.features_f_cryptdrive1 = "";
// Msg.features_f_cryptdrive1_note = "";
// Msg.features_f_cryptdrive1_note = "";
// Msg.features_f_devices = "";
// Msg.features_f_devices = "";
// Msg.features_f_devices_note = "";
// Msg.features_f_devices_note = "";
// XXX add instance limit
Msg . features _f _storage1 = "Permanent Storage ({0}GB)" ;
Msg . features _f _storage1 = "Permanent Storage (1GB)" ;
Msg . features _f _storage1 _note = "Documents stored in your CryptDrive are never deleted for inactivity" ;
Msg . features _f _storage1 _note = "Documents stored in your CryptDrive are never deleted for inactivity" ;
// Premium column
// Premium column
Msg . features _premium = "Premium" ;
Msg . features _premium = "Premium" ;
@ -51,7 +49,7 @@ define([
// Msg.features_f_reg = ""
// Msg.features_f_reg = ""
Msg . features _f _reg _note = "With additional benefits" ;
Msg . features _f _reg _note = "With additional benefits" ;
// Msg.features_f_storage2 = ""
// Msg.features_f_storage2 = ""
Msg . features _f _storage2 _note = "From 5GB to 50GB depending on the plan. Increased limit of 150 MB for file uploads.";
Msg . features _f _storage2 _note = "From 5GB to 50GB depending on the plan. Increased limit of {0} MB for file uploads.";
// Msg.features_f_support = ""
// Msg.features_f_support = ""
Msg . features _f _support _note = "Priority response from the administration team via email and built in ticket system." ;
Msg . features _f _support _note = "Priority response from the administration team via email and built in ticket system." ;
Msg . features _f _supporter = "Support privacy" ;
Msg . features _f _supporter = "Support privacy" ;
@ -69,6 +67,53 @@ define([
rel : 'noopener noreferrer'
rel : 'noopener noreferrer'
} , h ( 'button.cp-features-register-button' , Msg . features _f _subscribe ) ) ;
} , h ( 'button.cp-features-register-button' , Msg . features _f _subscribe ) ) ;
var groupItemTemplate = function ( title , content ) {
return h ( 'li.list-group-item' , [
h ( 'div.cp-check' ) ,
h ( 'div.cp-content' , [
h ( 'div.cp-feature' , title ) ,
h ( 'div.cp-note' , content ) ,
] )
] ) ;
} ;
var defaultGroupItem = function ( key ) {
return groupItemTemplate (
Msg [ 'features_f_' + key ] ,
Msg [ 'features_f_' + key + '_note' ]
) ;
} ;
var SPECIAL _GROUP _ITEMS = { } ;
SPECIAL _GROUP _ITEMS . storage0 = function ( f ) {
return groupItemTemplate (
Msg [ 'features_f_' + f ] ,
Msg . _getKey ( 'features_f_' + f + '_note' , [ Config . inactiveTime ] )
) ;
} ;
SPECIAL _GROUP _ITEMS . file1 = function ( f ) {
return groupItemTemplate (
Msg [ 'features_f_' + f ] ,
Msg . _getKey ( 'features_f_' + f + '_note' , [ Config . maxUploadSize / 1024 / 1024 ] )
) ;
} ;
SPECIAL _GROUP _ITEMS . storage1 = function ( f ) {
return groupItemTemplate (
Msg . _getKey ( 'features_f_' + f , [ Config . defaultStorageLimit / 1024 / 1024 ] ) ,
Msg [ 'features_f_' + f + '_note' ]
) ;
} ;
SPECIAL _GROUP _ITEMS . storage2 = function ( f ) {
return groupItemTemplate (
Msg [ 'features_f_' + f ] ,
Msg . _getKey ( 'features_f_' + f + '_note' , [ Config . premiumUploadSize / 1024 / 1024 ] )
) ;
} ;
var groupItem = function ( key ) {
return ( SPECIAL _GROUP _ITEMS [ key ] || defaultGroupItem ) ( key ) ;
} ;
var anonymousFeatures =
var anonymousFeatures =
h ( 'div.col-12.col-sm-4.cp-anon-user' , [
h ( 'div.col-12.col-sm-4.cp-anon-user' , [
h ( 'div.card' , [
h ( 'div.card' , [
@ -79,17 +124,7 @@ define([
h ( 'div.text-center' , '0€' ) ,
h ( 'div.text-center' , '0€' ) ,
h ( 'div.text-center' , Msg . features _noData ) ,
h ( 'div.text-center' , Msg . features _noData ) ,
] ) ,
] ) ,
h ( 'ul.list-group.list-group-flush' ,
h ( 'ul.list-group.list-group-flush' , [ 'apps' , 'file0' , 'core' , 'cryptdrive0' , 'storage0' ] . map ( groupItem ) ) ,
[ 'apps' , 'file0' , 'core' , 'cryptdrive0' , 'storage0' ] . map ( function ( f ) {
return h ( 'li.list-group-item' , [
h ( 'div.cp-check' ) ,
h ( 'div.cp-content' , [
h ( 'div.cp-feature' , Msg [ 'features_f_' + f ] ) ,
h ( 'div.cp-note' , Msg [ 'features_f_' + f + '_note' ] )
] )
] ) ;
} )
) ,
] ) ,
] ) ,
] ) ;
] ) ;
@ -103,17 +138,7 @@ define([
h ( 'div.text-center' , '0€' ) ,
h ( 'div.text-center' , '0€' ) ,
h ( 'div.text-center' , Msg . features _noData ) ,
h ( 'div.text-center' , Msg . features _noData ) ,
] ) ,
] ) ,
h ( 'ul.list-group.list-group-flush' , [
h ( 'ul.list-group.list-group-flush' , [ 'anon' , 'social' , 'file1' , 'cryptdrive1' , 'devices' , 'storage1' ] . map ( groupItem ) ) ,
[ 'anon' , 'social' , 'file1' , 'cryptdrive1' , 'devices' , 'storage1' ] . map ( function ( f ) {
return h ( 'li.list-group-item' , [
h ( 'div.cp-check' ) ,
h ( 'div.cp-content' , [
h ( 'div.cp-feature' , Msg [ 'features_f_' + f ] ) ,
h ( 'div.cp-note' , Msg [ 'features_f_' + f + '_note' ] )
] )
] ) ;
} ) ,
] ) ,
h ( 'div.card-body' , [
h ( 'div.card-body' , [
h ( 'div.cp-features-register#cp-features-register' , [
h ( 'div.cp-features-register#cp-features-register' , [
h ( 'a' , {
h ( 'a' , {
@ -136,19 +161,7 @@ define([
} , Msg . _getKey ( 'features_pricing' , [ '5' , '10' , '15' ] ) ) ) ,
} , Msg . _getKey ( 'features_pricing' , [ '5' , '10' , '15' ] ) ) ) ,
h ( 'div.text-center' , Msg . features _emailRequired ) ,
h ( 'div.text-center' , Msg . features _emailRequired ) ,
] ) ,
] ) ,
h ( 'ul.list-group.list-group-flush' , [
h ( 'ul.list-group.list-group-flush' , [ 'reg' , 'storage2' , 'support' , 'supporter' ] . map ( groupItem ) ) ,
[ 'reg' , 'storage2' , 'support' , 'supporter' ] . map ( function ( f ) {
console . log ( 'features_f_' + f ) ;
console . log ( 'features_f_' + f + '_note' ) ;
return h ( 'li.list-group-item' , [
h ( 'div.cp-check' ) ,
h ( 'div.cp-content' , [
h ( 'div.cp-feature' , Msg [ 'features_f_' + f ] ) ,
h ( 'div.cp-note' , Msg [ 'features_f_' + f + '_note' ] )
] )
] ) ;
} ) ,
] ) ,
h ( 'div.card-body' , [
h ( 'div.card-body' , [
h ( 'div.cp-features-register#cp-features-subscribe' , [
h ( 'div.cp-features-register#cp-features-subscribe' , [
premiumButton
premiumButton