Correct upgrade banner
This commit is contained in:
parent
bff3cc054a
commit
4a3487abcb
|
|
@ -395,6 +395,20 @@ const String kSettingsTaskStatuses = 'task_status';
|
|||
const String kSettingsTaskStatusView = 'task_status_view';
|
||||
const String kSettingsTaskStatusEdit = 'task_status_edit';
|
||||
|
||||
const List<String> kAdvancedSettings = [
|
||||
kSettingsCustomDesignsEdit,
|
||||
kSettingsGroupSettingsEdit,
|
||||
kSettingsClientPortal,
|
||||
kSettingsCustomFields,
|
||||
kSettingsEmailSettings,
|
||||
kSettingsGeneratedNumbers,
|
||||
kSettingsInvoiceDesign,
|
||||
kSettingsTemplatesAndReminders,
|
||||
kSettingsWorkflowSettings,
|
||||
kSettingsSubscriptionsEdit,
|
||||
kSettingsUserManagementEdit,
|
||||
];
|
||||
|
||||
const String kReportClient = 'client';
|
||||
const String kReportCredit = 'credit';
|
||||
const String kReportDocument = 'document';
|
||||
|
|
|
|||
|
|
@ -28,7 +28,6 @@ class EditScaffold extends StatelessWidget {
|
|||
this.appBarBottom,
|
||||
this.saveLabel,
|
||||
this.isFullscreen = false,
|
||||
this.isAdvancedSettings = false,
|
||||
this.onActionPressed,
|
||||
this.actions,
|
||||
}) : super(key: key);
|
||||
|
|
@ -45,7 +44,6 @@ class EditScaffold extends StatelessWidget {
|
|||
final Widget bottomNavigationBar;
|
||||
final String saveLabel;
|
||||
final bool isFullscreen;
|
||||
final bool isAdvancedSettings;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
|
|
@ -65,9 +63,9 @@ class EditScaffold extends StatelessWidget {
|
|||
: localization.ownerUpgradeToPaidPlan;
|
||||
if (state.account.isTrial) {
|
||||
final trialStarted = convertSqlDateToDateTime(state.account.trialStarted);
|
||||
final trialEnds = DateTime.now().add(Duration(days: 14));
|
||||
final trialEnds = trialStarted.add(Duration(days: 14));
|
||||
final countDays = trialEnds.difference(trialStarted).inDays;
|
||||
if (countDays == 1) {
|
||||
if (countDays <= 1) {
|
||||
upgradeMessage = localization.freeTrialEndsToday;
|
||||
} else {
|
||||
upgradeMessage = localization.freeTrialEndsInDays
|
||||
|
|
@ -76,7 +74,7 @@ class EditScaffold extends StatelessWidget {
|
|||
}
|
||||
|
||||
if (!state.isProPlan || state.account.isTrial) {
|
||||
if (isAdvancedSettings) {
|
||||
if (kAdvancedSettings.contains(state.uiState.subRoute)) {
|
||||
showUpgradeBanner = true;
|
||||
if (!state.isProPlan && isEnabled) {
|
||||
isCancelEnabled = true;
|
||||
|
|
|
|||
|
|
@ -725,7 +725,9 @@ class SidebarFooter extends StatelessWidget {
|
|||
),
|
||||
IconButton(
|
||||
icon: Icon(Icons.help_outline),
|
||||
onPressed: () => launch(kDocsUrl),
|
||||
onPressed: () {
|
||||
launch(kDocsUrl);
|
||||
},
|
||||
tooltip: localization.help,
|
||||
),
|
||||
IconButton(
|
||||
|
|
|
|||
|
|
@ -220,7 +220,6 @@ class _DesignEditState extends State<DesignEdit>
|
|||
|
||||
return EditScaffold(
|
||||
isFullscreen: true,
|
||||
isAdvancedSettings: true,
|
||||
title: design.isNew ? localization.newDesign : localization.editDesign,
|
||||
onCancelPressed: (context) => viewModel.onCancelPressed(context),
|
||||
appBarBottom: isMobile(context)
|
||||
|
|
|
|||
|
|
@ -79,7 +79,6 @@ class _GroupEditState extends State<GroupEdit> {
|
|||
return EditScaffold(
|
||||
onCancelPressed: (context) => viewModel.onCancelPressed(context),
|
||||
title: group.isNew ? localization.newGroup : localization.editGroup,
|
||||
isAdvancedSettings: true,
|
||||
onSavePressed: (context) {
|
||||
final bool isValid = _formKey.currentState.validate();
|
||||
|
||||
|
|
|
|||
|
|
@ -234,7 +234,6 @@ class _ClientPortalState extends State<ClientPortal>
|
|||
|
||||
return EditScaffold(
|
||||
title: localization.clientPortal,
|
||||
isAdvancedSettings: true,
|
||||
onSavePressed: (context) => _onSavePressed(context),
|
||||
appBarBottom: TabBar(
|
||||
key: ValueKey(state.settingsUIState.updatedAt),
|
||||
|
|
|
|||
|
|
@ -83,7 +83,6 @@ class _CustomFieldsState extends State<CustomFields>
|
|||
|
||||
return EditScaffold(
|
||||
title: localization.customFields,
|
||||
isAdvancedSettings: true,
|
||||
onSavePressed: viewModel.onSavePressed,
|
||||
appBarBottom: TabBar(
|
||||
key: ValueKey(state.settingsUIState.updatedAt),
|
||||
|
|
|
|||
|
|
@ -134,7 +134,6 @@ class _EmailSettingsState extends State<EmailSettings> {
|
|||
|
||||
return EditScaffold(
|
||||
title: localization.emailSettings,
|
||||
isAdvancedSettings: true,
|
||||
onSavePressed: disableSave ? null : _onSavePressed,
|
||||
body: AppForm(
|
||||
formKey: _formKey,
|
||||
|
|
|
|||
|
|
@ -179,7 +179,6 @@ class _GeneratedNumbersState extends State<GeneratedNumbers>
|
|||
|
||||
return EditScaffold(
|
||||
title: localization.generatedNumbers,
|
||||
isAdvancedSettings: true,
|
||||
onSavePressed: _onSavePressed,
|
||||
appBarBottom: TabBar(
|
||||
key: ValueKey(state.settingsUIState.updatedAt),
|
||||
|
|
|
|||
|
|
@ -85,7 +85,6 @@ class _InvoiceDesignState extends State<InvoiceDesign>
|
|||
|
||||
return EditScaffold(
|
||||
title: localization.invoiceDesign,
|
||||
isAdvancedSettings: true,
|
||||
onSavePressed: viewModel.onSavePressed,
|
||||
appBarBottom: TabBar(
|
||||
key: ValueKey(state.settingsUIState.updatedAt),
|
||||
|
|
|
|||
|
|
@ -229,7 +229,6 @@ class _TemplatesAndRemindersState extends State<TemplatesAndReminders>
|
|||
|
||||
return EditScaffold(
|
||||
title: localization.templatesAndReminders,
|
||||
isAdvancedSettings: true,
|
||||
onSavePressed: viewModel.onSavePressed,
|
||||
appBarBottom: TabBar(
|
||||
key: ValueKey(state.settingsUIState.updatedAt),
|
||||
|
|
|
|||
|
|
@ -68,7 +68,6 @@ class _WorkflowSettingsState extends State<WorkflowSettings>
|
|||
|
||||
return EditScaffold(
|
||||
title: localization.workflowSettings,
|
||||
isAdvancedSettings: true,
|
||||
onSavePressed: viewModel.onSavePressed,
|
||||
appBarBottom: TabBar(
|
||||
key: ValueKey(state.settingsUIState.updatedAt),
|
||||
|
|
|
|||
|
|
@ -182,7 +182,6 @@ class _SubscriptionEditState extends State<SubscriptionEdit>
|
|||
title: subscription.isNew
|
||||
? localization.newSubscription
|
||||
: localization.editSubscription,
|
||||
isAdvancedSettings: true,
|
||||
onCancelPressed: (context) => viewModel.onCancelPressed(context),
|
||||
onSavePressed: (context) {
|
||||
final bool isValid = _formKey.currentState.validate();
|
||||
|
|
|
|||
|
|
@ -147,7 +147,6 @@ class _UserEditState extends State<UserEdit>
|
|||
entity: user,
|
||||
title:
|
||||
viewModel.user.isNew ? localization.newUser : localization.editUser,
|
||||
isAdvancedSettings: true,
|
||||
appBarBottom: TabBar(
|
||||
controller: _controller,
|
||||
isScrollable: isMobile(context),
|
||||
|
|
|
|||
Loading…
Reference in New Issue