1#line 2 "src/Gui/BillPay/EditWidget.cpp"
3#include <Wt/WMenuItem.h>
4#include <Wt/WVBoxLayout.h>
5#include <Wt/WMessageBox.h>
7#include "../../Eng/AccountComboModel.h"
8#include "../../Glb/Core.h"
13:
Wt::WContainerWidget(),
21 auto lw =
setLayout( std::make_unique< Wt::WVBoxLayout >() );
32 std::make_unique< Wt::WTemplate >(
TR(
"gcw_gui.billpay.editwidget.form.main") )
79 templtMain-> bindString(
"accountLabel" ,
TR(
"gcw.billPay.lbl.account" ) );
80 templtMain-> bindString(
"dueDayLabel" ,
TR(
"gcw.billPay.lbl.dueDay" ) );
81 templtMain-> bindString(
"minimumLabel" ,
TR(
"gcw.billPay.lbl.minimum" ) );
82 templtMain-> bindString(
"budgetLabel" ,
TR(
"gcw.billPay.lbl.budget" ) );
83 templtMain-> bindString(
"nicknameLabel" ,
TR(
"gcw.billPay.lbl.nickname" ) );
84 templtMain-> bindString(
"groupLabel" ,
TR(
"gcw.billPay.lbl.group" ) );
85 templtMain-> bindString(
"limitLabel" ,
TR(
"gcw.billPay.lbl.limit" ) );
86 templtMain-> bindString(
"actualLabel" ,
TR(
"gcw.billPay.lbl.actual" ) );
100 auto u_ = std::make_unique< Wt::WTemplate >(
TR(
"gcw_gui.billpayeditor.form.tab1" ) );
102 m_tabWidget-> addTab( std::move(
u_ ),
TR(
"gcw.billPay.tabName.payment") );
104 for(
int cb = 0; cb < 12; cb++ )
106 auto cbx = std::make_unique< Wt::WCheckBox >(
toString( cb+1 ) );
107 cbx-> setTristate(
true );
108 cbx-> setPartialStateSelectable(
true );
135 for(
auto cb :
m_cbx )
136 cb-> setValueText(
"no" );
154 auto w_ = std::make_unique< GCW::Gui::AccountRegister::Widget >();
157 auto tab =
m_tabWidget-> addTab( std::move(
w_ ),
TR(
"gcw.billPay.tabName.history") );
184 m_pbProcess -> setDisabled(
false );
185 m_pbDelete -> setDisabled(
false );
202 m_account -> setDisabled(
true );
208 m_account -> setValueText( fullName );
209 m_dueDay -> setValueText(
bpItem.dueDay () );
210 m_minimum -> setValueText(
bpItem.minimum () );
211 m_budget -> setValueText(
bpItem.budget () );
212 m_nickname -> setValueText(
bpItem.nickname () );
213 m_group -> setValueText(
bpItem.group () );
214 m_limit -> setValueText(
bpItem.limit () );
215 m_actual -> setValueText(
bpItem.actual () );
216 m_url -> setValueText(
bpItem.url () );
217 m_ap -> setValueText(
bpItem.ap () );
218 m_isActive -> setValueText(
bpItem.isActive () );
219 m_isVisible -> setValueText(
bpItem.isVisible () );
220 m_autoPay -> setValueText(
bpItem.autoPay () );
221 m_payNow -> setValueText(
bpItem.payNow () );
222 m_last4 -> setValueText(
bpItem.last4 () );
223 m_note -> setValueText(
bpItem.note () );
226 for(
auto cb : m_cbx )
227 cb-> setValueText(
bpItem.cb( i++ ) );
229 m_register -> setAccountGuid(
bpItem.accountGuid() );
237 auto accountGuid = m_account-> valueGuid();
241 for(
auto & itm : items )
253 && item.
guid() != m_bpGuid
269 if( m_account-> valueText() ==
"" )
275#ifdef DUPLICATES_ARE_ALLOWED_SINCE_INTERNET_EXPENSES_ARE_PAID_TO_FRONTIER_AND_HOSTGATOR_AND_SO_ON_SO_THERE_CAN_BE_MULTIPLE_INTERNET_BILLS
280 if( accountIsDuplicated() )
304 bpItem.set_accountGuid ( m_account -> valueGuid() );
305 bpItem.set_dueDay ( m_dueDay -> valueText() );
306 bpItem.set_minimum ( m_minimum -> valueText() );
307 bpItem.set_budget ( m_budget -> valueText() );
308 bpItem.set_nickname ( m_nickname -> valueText() );
309 bpItem.set_group ( m_group -> valueText() );
310 bpItem.set_limit ( m_limit -> valueText() );
311 bpItem.set_actual ( m_actual -> valueText() );
312 bpItem.set_url ( m_url -> valueText() );
313 bpItem.set_ap ( m_ap -> valueText() );
314 bpItem.set_isActive ( m_isActive -> valueText() );
315 bpItem.set_isVisible ( m_isVisible -> valueText() );
316 bpItem.set_autoPay ( m_autoPay -> valueText() );
317 bpItem.set_payNow ( m_payNow -> valueText() );
318 bpItem.set_last4 ( m_last4 -> valueText() );
319 bpItem.set_note ( m_note -> valueText() );
322 for(
auto cb : m_cbx )
323 bpItem.set_cb( i++, cb-> valueText() );
331static std::unique_ptr< GCW::Gui::BillPay::PaymentWidgetDialog >
dialog;
336 dialog = std::make_unique< GCW::Gui::BillPay::PaymentWidgetDialog >( m_bpGuid );
339 finished().connect( [&]()
341 m_lastPaymentDate =
dialog-> paymentDate();
352 addStyleClass(
"EditWidgetDialog" );
353 setWindowTitle(
"Bill Pay Account" );
356 rejectWhenEscapePressed(
true );
358 auto editWidget = contents()-> addNew< EditWidget >( _bpGuid );
360 editWidget-> saved ().connect( [&](){ accept(); });
361 editWidget-> canceled ().connect( [&](){ reject(); });
#define GCW_GUI_BILLPAY_ITEM_CFY
auto guid() const -> std::string
Item GUID.
auto accountGuid() const -> std::string
Account GUID.
void emit(A... args) const
auto newGuid() -> std::string
Generate new GUID string value.
auto fullName(const std::string &_guid) -> std::string
Account Fullname via GUID.
auto getByCfy(const std::string &_cfyValue) -> GCW::Dbo::Vars::Item::Vector
auto bpItem(const std::string &_guid) -> GCW::Gui::BillPay::Item
Bill Pay Item.
auto toString(int _value) -> std::string
Convert Integer to String.