Email templates

This commit is contained in:
Hillel Coren 2018-08-13 22:13:17 -07:00
parent a1ee7e91ab
commit e262ceb1e8
4 changed files with 15 additions and 15 deletions

View File

@ -1,4 +1,4 @@
import 'package:invoiceninja_flutter/ui/app/invoice/invoice_email_dialog_vm.dart';
import 'package:invoiceninja_flutter/ui/app/invoice/invoice_email_vm.dart';
import 'package:redux/redux.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:flutter/material.dart';
@ -126,7 +126,7 @@ class InvoiceNinjaAppState extends State<InvoiceNinjaApp> {
},
InvoiceViewScreen.route: (context) => InvoiceViewScreen(),
InvoiceEditScreen.route: (context) => InvoiceEditScreen(),
InvoiceEmailDialog.route: (context) => InvoiceEmailDialog(),
InvoiceEmailScreen.route: (context) => InvoiceEmailScreen(),
SettingsScreen.route: (context) => SettingsScreen(),
},
),

View File

@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
import 'package:invoiceninja_flutter/data/models/models.dart';
import 'package:invoiceninja_flutter/redux/dashboard/dashboard_actions.dart';
import 'package:invoiceninja_flutter/redux/ui/ui_actions.dart';
import 'package:invoiceninja_flutter/ui/app/invoice/invoice_email_dialog_vm.dart';
import 'package:invoiceninja_flutter/ui/app/invoice/invoice_email_vm.dart';
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_vm.dart';
import 'package:invoiceninja_flutter/ui/invoice/invoice_screen.dart';
import 'package:invoiceninja_flutter/ui/invoice/view/invoice_view_vm.dart';
@ -80,7 +80,7 @@ Middleware<AppState> _showEmailInvoice() {
return (Store<AppState> store, dynamic action, NextDispatcher next) async {
next(action);
Navigator.of(action.context).pushNamed(InvoiceEmailDialog.route);
Navigator.of(action.context).pushNamed(InvoiceEmailScreen.route);
/*
final invoice = await Navigator.of(action.context).pushNamed(InvoiceEmailDialog.route);

View File

@ -1,7 +1,7 @@
import 'package:invoiceninja_flutter/constants.dart';
import 'package:invoiceninja_flutter/data/models/entities.dart';
import 'package:invoiceninja_flutter/ui/app/form_card.dart';
import 'package:invoiceninja_flutter/ui/app/invoice/invoice_email_dialog_vm.dart';
import 'package:invoiceninja_flutter/ui/app/invoice/invoice_email_vm.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:invoiceninja_flutter/ui/app/lists/activity_list_tile.dart';
@ -11,7 +11,7 @@ import 'package:flutter_html_view/flutter_html_view.dart';
import 'package:invoiceninja_flutter/utils/templates.dart';
class InvoiceEmailView extends StatefulWidget {
final EmailInvoiceDialogVM viewModel;
final EmailInvoiceVM viewModel;
const InvoiceEmailView({
Key key,

View File

@ -3,19 +3,19 @@ import 'package:flutter/material.dart';
import 'package:flutter_redux/flutter_redux.dart';
import 'package:invoiceninja_flutter/redux/client/client_actions.dart';
import 'package:invoiceninja_flutter/redux/invoice/invoice_actions.dart';
import 'package:invoiceninja_flutter/ui/app/invoice/invoice_email_dialog.dart';
import 'package:invoiceninja_flutter/ui/app/invoice/invoice_email_screen.dart';
import 'package:redux/redux.dart';
import 'package:invoiceninja_flutter/data/models/models.dart';
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
class InvoiceEmailDialog extends StatelessWidget {
class InvoiceEmailScreen extends StatelessWidget {
static const String route = '/invoice/email';
const InvoiceEmailDialog({Key key}) : super(key: key);
const InvoiceEmailScreen({Key key}) : super(key: key);
@override
Widget build(BuildContext context) {
return StoreConnector<AppState, EmailInvoiceDialogVM>(
return StoreConnector<AppState, EmailInvoiceVM>(
onInit: (Store<AppState> store) {
final invoiceId = store.state.uiState.invoiceUIState.selectedId;
final invoice = store.state.invoiceState.map[invoiceId];
@ -27,7 +27,7 @@ class InvoiceEmailDialog extends StatelessWidget {
converter: (Store<AppState> store) {
final invoiceId = store.state.uiState.invoiceUIState.selectedId;
final invoice = store.state.invoiceState.map[invoiceId];
return EmailInvoiceDialogVM.fromStore(store, invoice);
return EmailInvoiceVM.fromStore(store, invoice);
},
builder: (context, vm) {
return InvoiceEmailView(
@ -38,7 +38,7 @@ class InvoiceEmailDialog extends StatelessWidget {
}
}
class EmailInvoiceDialogVM {
class EmailInvoiceVM {
final CompanyEntity company;
final InvoiceEntity invoice;
final ClientEntity client;
@ -46,7 +46,7 @@ class EmailInvoiceDialogVM {
//final List<ContactEntity> recipients;
EmailInvoiceDialogVM({
EmailInvoiceVM({
@required this.company,
@required this.invoice,
@required this.client,
@ -54,11 +54,11 @@ class EmailInvoiceDialogVM {
//@required this.recipients,
});
factory EmailInvoiceDialogVM.fromStore(
factory EmailInvoiceVM.fromStore(
Store<AppState> store, InvoiceEntity invoice) {
final state = store.state;
return EmailInvoiceDialogVM(
return EmailInvoiceVM(
company: state.selectedCompany,
invoice: invoice,
client: state.clientState.map[invoice.clientId],