From 5bf0722acaa3f3190f7db145625bd818cc23038d Mon Sep 17 00:00:00 2001
From: =?utf8?q?Roland=20H=C3=A4der?= <roland@mxchange.org>
Date: Sat, 3 Jun 2017 18:19:24 +0200
Subject: [PATCH] Continued a bit: - created controller for financial (maybe
 will be splitted later?) + template - remote interface for resending
 confirmation link is now genweric in juser-lib - updated method as checked
 exceptions are thrown - updated copyright - updated jar(s)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

Signed-off-by: Roland Häder <roland@mxchange.org>
---
 lib/jcontacts-business-core.jar               | Bin 78431 -> 78431 bytes
 lib/jcontacts-core.jar                        | Bin 48388 -> 48388 bytes
 lib/jcontacts-lib.jar                         | Bin 4437 -> 4437 bytes
 lib/jcore-logger-lib.jar                      | Bin 2535 -> 2535 bytes
 lib/jcoreee.jar                               | Bin 24955 -> 24955 bytes
 lib/jcountry-core.jar                         | Bin 10608 -> 10608 bytes
 lib/jcountry-lib.jar                          | Bin 1544 -> 1544 bytes
 lib/jphone-core.jar                           | Bin 56707 -> 56707 bytes
 lib/jphone-lib.jar                            | Bin 5144 -> 5144 bytes
 lib/jproduct-core.jar                         | Bin 21552 -> 21552 bytes
 lib/juser-core.jar                            | Bin 84624 -> 84647 bytes
 lib/juser-lib.jar                             | Bin 8545 -> 9523 bytes
 src/java/log4j2.xml                           |   2 +-
 .../beans/BaseFinancialsController.java       |   2 +-
 ...ancialsConfirmationLinkWebRequestBean.java |   2 +-
 ...sConfirmationLinkWebRequestController.java |   2 +-
 .../FinancialsAdminContactWebRequestBean.java |   2 +-
 ...cialsAdminContactWebRequestController.java |   2 +-
 .../FinancialsContactWebSessionBean.java      |   2 +-
 ...FinancialsContactWebSessionController.java |   2 +-
 ...ncialsAdminContactPhoneWebRequestBean.java |   2 +-
 ...AdminContactPhoneWebRequestController.java |   2 +-
 .../FinancialsContactPhoneWebSessionBean.java |   2 +-
 ...cialsContactPhoneWebSessionController.java |   2 +-
 .../FinancialsAdminCountryWebRequestBean.java |   2 +-
 ...cialsAdminCountryWebRequestController.java |   2 +-
 .../FinancialsCountryWebApplicationBean.java  |   2 +-
 ...ncialsCountryWebApplicationController.java |   2 +-
 .../FinancialsEmailChangeWebSessionBean.java  |   2 +-
 ...ncialsEmailChangeWebSessionController.java |   2 +-
 .../FinancialsFeatureWebApplicationBean.java  |   2 +-
 ...cialsFeaturesWebApplicationController.java |   2 +-
 ...inancialsAdminFinancialWebRequestBean.java | 172 ++++++++++++++++++
 ...alsAdminFinancialWebRequestController.java |  79 ++++++++
 .../FinancialsGenderWebApplicationBean.java   |   2 +-
 ...ancialsGenderWebApplicationController.java |   2 +-
 .../FinancialsWebRequestHelperBean.java       |   2 +-
 .../FinancialsWebRequestHelperController.java |   2 +-
 .../FinancialsLocalizationSessionBean.java    |   2 +-
 ...nancialsLocalizationSessionController.java |   2 +-
 .../FinancialsUserLoginWebSessionBean.java    |   2 +-
 ...nancialsUserLoginWebSessionController.java |   2 +-
 ...ialsAdminMobileProviderWebRequestBean.java |   2 +-
 ...minMobileProviderWebRequestController.java |   2 +-
 ...inancialsMobileProviderWebRequestBean.java |   2 +-
 ...alsMobileProviderWebRequestController.java |   2 +-
 .../FinancialsAdminPhoneWebRequestBean.java   |   2 +-
 ...ancialsAdminPhoneWebRequestController.java |   2 +-
 .../FinancialsPhoneWebApplicationBean.java    |   2 +-
 ...nancialsPhoneWebApplicationController.java |   2 +-
 .../FinancialsUserProfileWebRequestBean.java  |   2 +-
 ...ncialsUserProfileWebRequestController.java |   2 +-
 ...nancialsProfileModeWebApplicationBean.java |   2 +-
 ...lsProfileModeWebApplicationController.java |   2 +-
 .../FinancialsUserRegisterWebSessionBean.java |   2 +-
 ...cialsUserRegisterWebSessionController.java |   2 +-
 .../FinancialsResendLinkWebSessionBean.java   |  48 +++--
 ...ancialsResendLinkWebSessionController.java |   2 +-
 .../FinancialsAdminUserWebRequestBean.java    |   2 +-
 ...nancialsAdminUserWebRequestController.java |   2 +-
 .../user/FinancialsUserWebSessionBean.java    |   2 +-
 .../FinancialsUserWebSessionController.java   |   2 +-
 .../FinancialsUserPasswordWebRequestBean.java |   2 +-
 ...cialsUserPasswordWebRequestController.java |   2 +-
 .../contact/FinancialsContactConverter.java   |   2 +-
 .../country/FinancialsCountryConverter.java   |   2 +-
 .../mobile/FinancialsMobileConverter.java     |   2 +-
 .../FinancialsMobileProviderConverter.java    |   2 +-
 .../user/FinancialsUserConverter.java         |   2 +-
 .../birthday/FinancialsBirthdayValidator.java |   2 +-
 .../FinancialsEmailAddressValidator.java      |   2 +-
 .../names/FinancialsNameValidator.java        |   2 +-
 .../FinancialsUserPasswordValidator.java      |   2 +-
 .../abroad/FinancialsAbroadDialValidator.java |   2 +-
 .../FinancialsPhoneNumberValidator.java       |   2 +-
 ...nancialsPrivacyTermsCheckboxValidator.java |   2 +-
 .../user/FinancialsUserIdValidator.java       |   2 +-
 .../localization/bundle_de_DE.properties      |  25 ++-
 .../localization/bundle_en_US.properties      |  17 +-
 .../templates/login/user/user_footer.tpl      |   2 +-
 .../login_financials_add_income.xhtml         |  77 ++++++++
 .../login_financials_overview.xhtml           |  27 ++-
 82 files changed, 491 insertions(+), 80 deletions(-)
 create mode 100644 src/java/org/mxchange/jfinancials/beans/financial/FinancialsAdminFinancialWebRequestBean.java
 create mode 100644 src/java/org/mxchange/jfinancials/beans/financial/FinancialsAdminFinancialWebRequestController.java
 create mode 100644 web/user/financials/login_financials_add_income.xhtml

diff --git a/lib/jcontacts-business-core.jar b/lib/jcontacts-business-core.jar
index a0ca53b9d02f36e1d30269cefd780f092ac072e0..6de90379984e4536915f0abf67334246fccec75a 100644
GIT binary patch
delta 828
zcmYk(T}V@57zgn4KgZ2w&eq69s6}(%PPajjc{9RlF%g$qNkPr*W2oJT2ue8nxQ()b
zhi;r;q)>vji$x?D>4niv7gErL1rkPNUxF5i?fsuqI5<2%{?Ge959e%QF>hfp&m5~$
z@(Lu$BuTMbF9yvXr6E_Umqkf=QNwx>hgc_Yko7wbvmTIZS(9>vbxuCAJ$ElEZTdM<
zkHYp;z;4*INz86mj`B`gX%scHqHHq~#)3D+#QQz{TGHwY?_x3<KA%q%M81>~zuRVu
zxpMqktn02plEhOZR;ocCN;2lYQ3DTVlF{7)kB6U{7);&YUqY-tFVlwZoNF&+a$|l*
zChFdP)UfZ}=R&S|Ff(B7v`CV8A}Ra|X5ve?Ej;{l&8!rOx3^w-xil?H(zL7wjEH7h
z{=C+v_&0hLlQ`jiHPn;}ZN#$cG8|fzxLQ9fA~haFes;i!GDS?yj%-1%rcyKdw6h)G
zo;*|cni0z`Tj12XwjH=vq~!iWb;^!vaaCQj;~_CtjwrEGj%K3Hfn!A4f#bxg15HG|
z6DNr=Cr$_qxzNC%(S;Ub!i95$)s3@6w;N}Oc{e(US`XTZNe|ixn^#Y+d(p|{hZh%!
zQ$8e!Ssz*nZw0!EkqTTUEPnk~(vM3_KKb>-^_7S-nXE(?;jGek-KjzkldS>t{Qvf<
jB><b64&XF<>;HQG@&21yZ!oC$z6SLHiI9#DA@u(R@i;K&

delta 828
zcmY+AT}V@57{}lLIon*zW826@s6}(%PPajjc{9Rlu^}zBl7gDq$56Ww5tP{M<2J}n
zc<9CnMhYcZ=VB5G23i>1bRh*@SRi3U_9bYM*xu)yq7J+~|MUC*pXYhcSy(hIEE=R_
zLNr(yGc)$gc56WLiBAiqc3CXE$$r#PJ&*lV$FYy<R~(?aSE#3&6=GE9goCz1U!48(
zxa0>>ryOz`|KB7xi-)KuCpPkx>Wa9<#DQwEyecK~c4tN-t)A$1A|uhWMU=6`K9!UB
z**05hE40VQt|Yr|8yVxLj;~b00hFmy--wZdYBs)u&v-cW$V_1B?w&Fly85I-8@g?-
zy_m?g`5A#k;`Muh!n@ymET%8JH`8zLv@*s|OvaC}np(PHrOfv=Ni5-CZ@=_>X<A@x
zT2MkJ#MPExFSRMbjb72r6W$ktO>$%-nO_&+(op(x!w^SGDvY9hzX=s0pPC=ugkDXR
zOX$<G9bYCNE4w5l^UGGaHP^8fcS?ANGUY@qzrC{N#C;;8m57sAsYEl0gbPPV<XkvP
zV%3Ev5)Ez~Co$^AF)ju@I830?gBB9w9-N^Kb}vp7>Gt9jk$EpVh}8SgPGrJ|HX;sx
zf$$4n^`n!lZ+@I3aw32<k=X!RiTJC~O=P$V7l~MddRI1x3uJu=>fwfJq$o2{jV==I
x8hzKz8uSp^9750Ef3H|Wa45MDPLj9&#|w^Su4~>vSoc1M^#SRKF5X3u`3*y2Ar}Au

diff --git a/lib/jcontacts-core.jar b/lib/jcontacts-core.jar
index eaa2463471426757016ba6786661d4a7b471c087..54a8731c3ecc2973c6f9286a08706a16c4a442ab 100644
GIT binary patch
delta 850
zcmZqq#nkePi8sKTnT3mifrEj;umA8wUJYj7{=*wBlo^?U+{tl_RuGy=WAX(lepJPi
z4OlfM8wB!A7G>%Z1giF8KmuBm8(9@6Ur6VeT#&#r`7RR|*qptr`am%OG;_?DJHWCB
znO(p%2TM0xbwRs;G>Q{ZY%u`aa$u*><Ug!ZlWkdz!TO3>-J$wD!E__D=Hv|vxhC7N
zfnBlLldYc<B(eE6zlsjn<^7*t8AJj@0fdc!W=a8lE4ta<CKIAzwc8ICu!d#c6GXra
z%Y>V(V1{T~Cpf4!FHHXn5m}f!6Cz@p{}Uo&Svnmea=C0H#GLl(rx20++T#!r%chSI
z5#1Ixh%U2EUM8>=Zrw5vk<<y25Rt}7PawK7rvHWL%9#0!g%=bDukG1>PGV$Wm^9g;
zQ+4u%-FA}~G>LA0KCd03u5iIAh)%nuJHU*|KUZ3SqI|N+s*fPsCTpzr0@J0d1HtsI
z_0p4{tiB3n?^zQHrWJr<`fKgL?1Hr`z_j$b5HMY|ZZ%X*B$%#QzYa|6ZU~2pOHW?3
z0iyTxTItFEHW-1$jW<H%dpAad`L8#|f@$wfNnm;dlos7w2<CTgt_IWWTgt(7<CaD+
z&APP=OxJB~0Mm@yiotaGwpuX#eH%o5;dY4nuiGKwr90Ze^8a^0#G7|Q5~1L(O0anE
Yu4XVTyc?o^@@|NF***DS@%}xf0D$sVX8-^I

delta 801
zcmYk3T}V@57=X|3vccw7oeP&;^arCF4eiItHiN{<Mbwpq1QL`+#2h&##%!B|vBai(
z1CfEaprGd5Sx4t|UU(zXE@BWtKXhjVd1Vl_mDM@#>qQsi`Mzh*`>~frYh1L(87_Nx
zLC-LC3=<wmO&F|vXdsnuImk}@GQn-u2Ho6Is95U%>(l`3q802{j399j)Q~*_VR1iH
zdh4LSM}SY99&Dls%HjdlnV?;;z*#<^z4)3x4VMHHNW!po)r$TY7OWlLSY6r$zePPp
zF0omQLSidk%c2wckZ%Mztp}%0&###uDHn8!op|_If9RN5HJyoXU+q`brL<3z`m9CW
zKvLSAw`d^K@l(*&RGxaq_u!<X=e>vr>1Le8L%Mg1O#03g8JD+8#^IkN^JXwFU>pm4
zCgTmhB;$x|lCec~G<7O&;4tnOZ6tGJyn#$OxlU7klUp>^H&qi1+9n%qx@wYTm?WHu
zABIZF4Koo*`7#}&&Nox0N%xbYz^i{CRG+nItHFuqo6s<8f|D5+GLmUW{~@;*)-!L>
zy_!9bwB?L&JnP1DFq=YJ=guMT&rNSP7m@K?8rdp$ZhIp<mTC4~)(C&(CT&Y-&UYcl
z^4-Xd{57QK#dZ80vP!L!6dy9K1du!Chmhg<Fj8C?L=G>6kZj>Da;OkQ{wPrITcrN`
nB6)u?hTs1!k{?+b#k+a=9&&7X1i8CJJ(Q^5x8g;gSn>Y@Bj7>6

diff --git a/lib/jcontacts-lib.jar b/lib/jcontacts-lib.jar
index 7baf796e4bd5f98534e20916a8329df0cebeaf71..a60343d14a5d410602d777851ed25dc714469436 100644
GIT binary patch
delta 128
zcmcbrbXAErz?+$ci-CcIfg!N}@I+n>=79dg8!eO>nStENag0`AdN!j4h~9jSF`o&{
x@L)+`0W(%}bg_b!SnyeZv`#MO`v~Tz^Lv5mE&Lu}`agdzn9di-0MoYwssY&AF8=@k

delta 128
zcmcbrbXAErz?+$ci-CcIfuXr%_C#I{=BAR_8!eO>LG<J}Mk_Eqo6!P9Z@$Ku&je<8
yuq3d68LK(ESeb!3CtL7=l}s+?`v}&O&hG`LxA1#_>Hqw>U^-tQ15Do%s0IL}uPz4w

diff --git a/lib/jcore-logger-lib.jar b/lib/jcore-logger-lib.jar
index c8046481dc6d1d52e4cec0137a3fb47448a8f795..3e757cdc2af9b522811655bbbacd2cd6dce2cba9 100644
GIT binary patch
delta 96
zcmaDZ{9Kqfz?+$ci-CcIfx*51@I+n>X1D&s8!c8dg6PT57(GGsW+Ns8CNLwFC7+2I
esBrRiHVd$T5c^Ds(sdk>U@csnNnkpkvjPCz&LF}7

delta 95
zcmaDZ{9Kqfz?+$ci-CcIfnl%Ul!?3=%zFf<Y_wR-IPtf@<j;&YAns-(CIcogBb6ne
li5aMF@^v-~uz(QzOvcIk*aar<=I{XtOy=TD0@L}N6#$O09@qc?

diff --git a/lib/jcoreee.jar b/lib/jcoreee.jar
index 7f47a54432a763f3d0b883e7cec8d940444c27c1..1c4dbecc0ac4e4d62ad903e93f26d31c47b8ae2e 100644
GIT binary patch
delta 201
zcmex;i1GI!M&1B#W)?061`Y-W*Z#v3c{P|_`VVikkY#2DayLgX@8SY8MEP<Az>F5T
zvk<8eC2w}H$RbTs4lv`EVF?eI5oospBJ#)0ksB=H5Og1`c(PKI1;~QUu~FGzV<w-D
tjR&citQ(gOrl-f{foYETFfg4MpA4pt$7h0R<AgLYJtrXpOtUAJ008HzO)UTb

delta 201
zcmex;i1GI!M&1B#W)?061`Y;>J%Upv@@g>e7M!xtLY5gsZ;oKz#RX=F^5qDC87*>W
zAyOeq-t1tJMVh7@V8$)O5*{!k&~61p<d2&pH(10W=sr6$(EQ0tQ5Il<*r;r<F_TZn
s#)AYV>&B&n>FIHKV45R73`{4+CxhwZ@tI)SI3W#8&q>Gt)9i^Q06tkrcK`qY

diff --git a/lib/jcountry-core.jar b/lib/jcountry-core.jar
index 5cbad453c2f8698f9ab16791a4e97baef7fa6686..e91ed0ad88c8635e2a9fccb45c289eefa8d2f943 100644
GIT binary patch
delta 178
zcmewm^dX2hz?+$ci-CcIfx)x?@I+n>W{>{E8!eO=LG<KUMl&!yjnM*3Uu3ia(VGRB
zTv))2a5i2MFe6=RIxCpLsE`fTyE$L+Ei*IF%*pYp5Y4kxKY&zB?p1RG)7R8Iz_g;e
c511}c4+hi6)WgBFf<_9MZr8{I(?2vS0Cpcij{pDw

delta 175
zcmewm^dX2hz?+$ci-CcIf#IOwl!?3=%m)OgY_w2focLQ{au%Z|h+5334WjNb>VqUV
z3oyB`fEnRzydq#my3}-5FoRJcn-R>&SA5IN3^Z_Zys8CAVDc>050kmo1SZc?vjo$R
j)vUp^p1M6)zCb+~OdnGZ2h$1~DPX!?BM(gf(5L_a0<Ant

diff --git a/lib/jcountry-lib.jar b/lib/jcountry-lib.jar
index 066e9a10de897adc8457948e4449c71d31e5329e..d3f45e10d9cdf026834a75ecb1186027469f96da 100644
GIT binary patch
delta 78
zcmeC+>EPiF@MdP=VqoB4VDRccJdsy}*|Y!fMhhiI5Is4T(F{ayp2pb0#0-?5tjJ;k
SmWW~b0H*y}-N5t=)&c-;Kp92=

delta 78
zcmeC+>EPiF@MdP=VqoB4V5lycJ&{*~xvFILMhhiIW*~QRETb8S-aL)5g9$94$YKFf
TFgb?h1DNm6>ISA~uoeISUmzH|

diff --git a/lib/jphone-core.jar b/lib/jphone-core.jar
index 9587335f2376f8ddf1f9275c0ec27c454450b266..6f596cc999fe3f3bcc5ecb56de3a09ef90910f9f 100644
GIT binary patch
delta 1146
zcmY+CYe<t}6vwx{yQ(wO9J(!yOwG&I(!8J|W|p}H$;w1hR6@F#)-0l=G*BxdFn7QY
zkwQ>G$wGP24AT_F%XH2;@6PD<q5NW>f(kU>b6y60`u)%UT%PCQISqYGLm#8eH!)%#
zfj}-0n3{)Ml=~TD^Ke&ctB~0a!6nS*X@Fy*K(FrHB?r4$4K`5%dhtvW3~J;M&iL?g
zuGb%kqFM)I;5@7ND5j2!b0|!-rgH^mbi*YkWR@%voQr<YE>U3oT9SeMA<5!s6-Qb_
zRsY`|u1k+#O}Hcy?lx=Tuaqt$mnET}B}?PT-jOxo>sX1x#-P*f*CIxdw{w<KVL^Oq
zTGb?!Z+98hKXrZJA7g-k-O;eeErrUMP}UWaK=o3!h$i@k{U#xc_#^b^8vSl4FSIfO
zK`R60A+azJ70s4KzNCW{F*fRd7u!b1^sl!h!A7zk*5Z^9pbvpUMFA_-B~pEcVUVV8
z9r{j<>&c%e<w$EIrz)d^geG&7Qrhgj5`5m_+!}Ivj7>6hGR<G4C?bl&D3w#(OYK`F
zp9Ap$@`u{=TA@HtD}*7V+8P=UKG$}@lVTNHWT~Lqp_<Yl8guWl2u06>bHOOI?J1Nx
z)Afr^IN9yNPi6HVuHwDm*+?q4cC2Tl5$Az&OapbJDck_mZm)ihp8vQ8oMW^S{^NyS
zuVMTV>Y)h@=qB*H;nKuu-m@Vs_OnQ*-H6mqo<LSk<|Db@<w@#QO`Sr|V%Na^DO^3U
zPtgK9w>_QX0Om^_HOM)hdDFERk51o0W;-eWmS_CTZS*^M#=06Y?s7HYvT-{Doii#h
z&z7Un`!z=m2e%CuZv=k)CW1HfD#&-2U~8xQCNgfW9%-AaL+a<rf5mg(0{Jg^MlD{$
zx~Gemk-ke7Wc^YVa$~6sX<j~$e7{_Z3|pZ(>&iupH&>{>dbI-Mg;jd8$#Vtceop~1
Hc&+*$hz#7&

delta 1130
zcmX|9X-HII6n$^ryjj$lM$JKI%px0iN3+~UF%wf9sbs)HP(}%<a48pB%(PG|BFLE=
zMwwDS3PKEJa0#=N%zfW?+J2OOtUo~s+I;tW`0Jc|&bjx#`}nH5xT-Erk(SDd9T-N&
zFy*E77KI;oqqM#?s*bg6sbHNAhXxTrZ%7ik?DCeqG8h(Xpji|~V$qx*^k`+UpL4)S
zG-nXd58nIG=olBu)#g93icg@GE{-If3bBthh6GHc3gY89`$s^$R0k6aPSD89iQK`5
zp!}1MCukMxtR8C1Zw=g*M4+*s*TJoap0FixAbB^bpD@P2eRO_gyD6<<k?`_n4oRDn
zMT{iHd74^Yu7WkLu3=^NE~DmGa2F{3LqWCA7Y@uwAkW{!Hsu~h^Ae4SPH^=4ONrF`
zAFCvdPFEBc>Ntj};~>X9!2Sb#ZP~h4bg|sOnfAX8Xkcab|6%Oju!O^AgdWxc6`<0)
z!&!N{O%i;B=3_&9==7bVKWO7d#Aj-a85*ck5ZgqFHg20Ehub_84)S>3@#JC}Za3CQ
zQHe8sl_2rX@S;{?W+#hXJ6T^`@BrC;&zLfnVaizOHEOILLEuob2cBlCZ5c(mG}~Kj
zcBNzP)QXU_-#h0<mp4XI>rCq(y5V%&svIr-hs!)6@S-n@JTu#BUo{ISKdC@7poEJ4
zNH7mjKC{aoqpuxQ!o)x<`r1LGfJ&$ud_Z0m^bTnuc*ubI)uCkU86SF%STTGGmre{D
zvGyN1hIQUZ8Y1ak8Zn^fJ(`4C(XbZoj>e<5Fd8NF+joqGkZZv_R*X0+V9IzI*8Stx
z5fdh;-yvYoWI5_h0tQS~W8FGcg^!KA8EBbQgK0Vkh0bq@8aQkhrUb!d{ksU>%&8%5
zCJRq)nYo4|0%t1`n`bK!^>b8zE#RSfs=u@&`S(5xC764*kdNrNScF))Sb(^>n2l&!
rI*<8xOJ=OSmW!~qE?>lYdzt17S8`FGU!f<bu3kdFdo>+(x3$9mA#lyF

diff --git a/lib/jphone-lib.jar b/lib/jphone-lib.jar
index 3c22799492f7a2d81213e1003191b44d016579ff..aa0c7b7f7f079149bf1cf52e6aa554e546a71dd7 100644
GIT binary patch
delta 146
zcmbQCF++nlz?+$ci-CcIfx)-`@I+n>W}p7U8!h4)LG<KVjNV}S1)~#)-mJ?soe9i1
z&Y}fjd|?Y_0gHHXFJfT^8Zr4jzXe!8OTZRlNS0tUNMP~_!5}a#E7S_6mkKq3X)WPm
JFug#y0st#4G@Sqd

delta 146
zcmbQCF++nlz?+$ci-CcIfuXi!_C#I{=9-e(8!h4)nStENvlzX>^b1BO5WQKKX*v`0
z5y2^&kF#h&7+=_eS-?_W+>5}B$?y3sKxS;#60n6Bk|h`oHspk05SW$~Y6Y1wd8tqn
OnAQ?528%Bct^feXYclNs

diff --git a/lib/jproduct-core.jar b/lib/jproduct-core.jar
index 081cf1fc5285da28641848b97101a71eb8ae1b58..58afdc537b85c6c7de127b2b27f86ec60a4ed6fd 100644
GIT binary patch
delta 415
zcmdn6f^owNM&1B#W)?061`Y;>^!~#Wc{P~R`VVikh-C!PlV>nGg6TVq4q#fIsSL_j
zpZtNDfATpdE-+t~S#Odt2M^pRkX~74dyw4bc;<MpVVe)K)UgQyMZ6wtSeC@V$iM)?
zHj@vENKHP#$hNtFTN9#g4vz>2Sm$Pu5GF8#OFRI=h?Ts_3>LAJJquxQDyl#j1}bcP
z5Gf;9RxqQ{{24!(k>$RenHlK2$s*nsU;%$`Yl#1PeF8xOlOOs7fN2xoX;8lO<QKlC
zV77vvKa`f9-0NooW*_m(1k(oo5PFV(I+)KE0HF&4a=`ri0oh>MH?SB?9}X-6(-uK-
XV0vayDwt*rP5{#>!O39yRB##qES{VV

delta 400
zcmdn6f^owNM&1B#W)?061`Y;>n}Sm&@@g>O5S+5nB9?LDZ-L268BIXcOGaZ5rNfj7
z;Ym&Yz|24S91|CatHrE1$(Uo}CrKd72&8#)JaarFm~oJ$j!h6K;`Ly|vLpsZ1_lte
znS4-0YVrX_w#^0Hnh<q!ctkkB8a9iBFo79d;sFpwtmI8*u!yDXSqOtuQ3b*<P+{YP
zNEx}Zf*FnG&-lTNEcfNi%s}r<7V)+K3;26mGfw{PEiieOj|-T7=i@xt-bY}vqi-ja
z&o}vnuPK<V>*oZP)Ai$<-0NooGGOu%zf3S~;18ka_@{&UYyl9uARq_KzaNkdrhNm8
h!Svz4A~0<c6bGhf2Bm^&#^3}nof4c3rcVW@0RX^BlbQek

diff --git a/lib/juser-core.jar b/lib/juser-core.jar
index aa8a72393fba606d8e39c915068e9ea7ca5faf74..fd411f914c67a74da6daa0cce6a4534883b0b9ca 100644
GIT binary patch
delta 4319
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

delta 4239
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
Ee~#CVb^rhX

diff --git a/lib/juser-lib.jar b/lib/juser-lib.jar
index e845d87ba2337996bcc8aef68c5b14cfb6c6e763..38a2d3739dc9a9b584d39e9fe49980aec684bac3 100644
GIT binary patch
delta 871
zcmZuv&ubGw6n;CK?&imCvYVu-viUJ-R038*DPkz3m<Ee&N{tq)C$-cli!s623iejf
zgQvDWFU5<3KMsN-`3I~yh+Y(rUW^xSD!F+PoSB6*Te|S}y<xuh&CK_`ACs*ay;7Dv
zegH2(d!xOnXXW=B?YH@iB+sw6@uHL$c}toy*?I>0z6_2MiUu(RB14KM>vSQq3^5$L
zRjpsC+4bwWos&5AHBu0bFUcIwt-r*SMWHFWQ^b9%vfw=Y;@IyC1c1jh=Zy3?&sKRk
z%jh45>7l3!K@~zO7!t&qVyo1sU$vVz7MJZtox>zJjW_jNU}f2^<z^d8i?u3Je-z8Q
zkv3Hbs}PaEKi^nsE>)-OT2%tNa|ZtLPfI0CdlG{VyLeaMej`x8PqA_AgeLI*&@6Vm
z!4WUWpfY`ZK!6F&{sGWfRzLzBz@<uSOFJ?kRQPEAQ=DSoBO)_v@UoTX-r!@a%QtX6
zeoEwT@dc5`5<*D4mpHSB6F(D2kN4fVQkF<mc6{G$>~POy1AY~s5H#rl+@I9wZs3>;
z*l~bNMqEv5;z|#a78#YXE2VJ46GVG};`dZo@X)U3_8aCWk5Z2Z;Mv+qg*6<+6AHz5
z)Zw|4vdB3fK22otQXnlj_^i3+!o~4bW8n1OV=}~P#T`ao-+lGP1Hfa_)xQ~HkFE&N
p`1#`Ca|M7$!3Elm;u<ZBhkm9O*|vmGM!FP?Km<N8{6dm9{09Nw<g)+(

delta 557
zcmdn&_0Wkoz?+$ci-CcIfuXfz_C#I{=9ZG#8!eO>C;k?goXw~WqLwjQ3IavF7?6PS
zWJ4x}$pTCQAoY`#nH<6NS|(eNhF?JLX~8L*?U)6b!8#Q_vXrf7VqgGaXOPa#4Q%(B
zz*1dLvP^`S85ls=7bvB<c_ybbGsv{f^Z0dH!Hjbvf7!qWo|B%!#0+%j<WxBeu!Rfc
zK2G+L7nr<I-Wp85k@p0PTPXN}=}v_}45uqieyyN4IYEeZvV**gfHB-t0t{~*XE9Cw
z$S4n%RA3g?Vq_9wh6E1KJ6=Jh{ZdPTJ^<lBxHblcC5^9{CNnC<D}VwC#j7Za{<BU_
zWOJSDpv)r=Qi$Sl6ovegKPbh34bxfIwE6-I0|N*<p{VKMfjU%v@&YzCkfC4=R^g7K
zOWA-<1Y%nh4SNK^8U(~RCs(T|gF<uiLKSJIJrYPB7My%VRt0RHtSSeeAcG*oFIJ#e
Ir9lP(0DeM|zyJUM

diff --git a/src/java/log4j2.xml b/src/java/log4j2.xml
index 3741761a..98e9a65f 100644
--- a/src/java/log4j2.xml
+++ b/src/java/log4j2.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-Copyright (C) 2016 Roland Häder
+Copyright (C) 2016, 2017 Roland Häder
 
 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/BaseFinancialsController.java b/src/java/org/mxchange/jfinancials/beans/BaseFinancialsController.java
index 28adbde7..c18c2ee8 100644
--- a/src/java/org/mxchange/jfinancials/beans/BaseFinancialsController.java
+++ b/src/java/org/mxchange/jfinancials/beans/BaseFinancialsController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/confirmlink/FinancialsConfirmationLinkWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/confirmlink/FinancialsConfirmationLinkWebRequestBean.java
index 35d8f270..28491ff6 100644
--- a/src/java/org/mxchange/jfinancials/beans/confirmlink/FinancialsConfirmationLinkWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/confirmlink/FinancialsConfirmationLinkWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/confirmlink/FinancialsConfirmationLinkWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/confirmlink/FinancialsConfirmationLinkWebRequestController.java
index 3051e932..8f50673f 100644
--- a/src/java/org/mxchange/jfinancials/beans/confirmlink/FinancialsConfirmationLinkWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/confirmlink/FinancialsConfirmationLinkWebRequestController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/contact/FinancialsAdminContactWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/contact/FinancialsAdminContactWebRequestBean.java
index 3eb02b0b..f6616125 100644
--- a/src/java/org/mxchange/jfinancials/beans/contact/FinancialsAdminContactWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/contact/FinancialsAdminContactWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/contact/FinancialsAdminContactWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/contact/FinancialsAdminContactWebRequestController.java
index 25c7153d..ab80a8da 100644
--- a/src/java/org/mxchange/jfinancials/beans/contact/FinancialsAdminContactWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/contact/FinancialsAdminContactWebRequestController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/contact/FinancialsContactWebSessionBean.java b/src/java/org/mxchange/jfinancials/beans/contact/FinancialsContactWebSessionBean.java
index 66d1fbab..b7d84b40 100644
--- a/src/java/org/mxchange/jfinancials/beans/contact/FinancialsContactWebSessionBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/contact/FinancialsContactWebSessionBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/contact/FinancialsContactWebSessionController.java b/src/java/org/mxchange/jfinancials/beans/contact/FinancialsContactWebSessionController.java
index 35910f56..ec63e3af 100644
--- a/src/java/org/mxchange/jfinancials/beans/contact/FinancialsContactWebSessionController.java
+++ b/src/java/org/mxchange/jfinancials/beans/contact/FinancialsContactWebSessionController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsAdminContactPhoneWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsAdminContactPhoneWebRequestBean.java
index cf05d408..6c42dac8 100644
--- a/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsAdminContactPhoneWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsAdminContactPhoneWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsAdminContactPhoneWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsAdminContactPhoneWebRequestController.java
index 13dd2fdc..b31f30ce 100644
--- a/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsAdminContactPhoneWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsAdminContactPhoneWebRequestController.java
@@ -1,6 +1,6 @@
 
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsContactPhoneWebSessionBean.java b/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsContactPhoneWebSessionBean.java
index eddc4dc7..e33f0ecb 100644
--- a/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsContactPhoneWebSessionBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsContactPhoneWebSessionBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsContactPhoneWebSessionController.java b/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsContactPhoneWebSessionController.java
index 3cdb8c75..65189bb6 100644
--- a/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsContactPhoneWebSessionController.java
+++ b/src/java/org/mxchange/jfinancials/beans/contact/phone/FinancialsContactPhoneWebSessionController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/country/FinancialsAdminCountryWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/country/FinancialsAdminCountryWebRequestBean.java
index f7447ff6..f275a9b2 100644
--- a/src/java/org/mxchange/jfinancials/beans/country/FinancialsAdminCountryWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/country/FinancialsAdminCountryWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/country/FinancialsAdminCountryWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/country/FinancialsAdminCountryWebRequestController.java
index 3b28164a..cbba1f69 100644
--- a/src/java/org/mxchange/jfinancials/beans/country/FinancialsAdminCountryWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/country/FinancialsAdminCountryWebRequestController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/country/FinancialsCountryWebApplicationBean.java b/src/java/org/mxchange/jfinancials/beans/country/FinancialsCountryWebApplicationBean.java
index cea6d8c2..5511c9cd 100644
--- a/src/java/org/mxchange/jfinancials/beans/country/FinancialsCountryWebApplicationBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/country/FinancialsCountryWebApplicationBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/country/FinancialsCountryWebApplicationController.java b/src/java/org/mxchange/jfinancials/beans/country/FinancialsCountryWebApplicationController.java
index 9605ecf7..98737e0d 100644
--- a/src/java/org/mxchange/jfinancials/beans/country/FinancialsCountryWebApplicationController.java
+++ b/src/java/org/mxchange/jfinancials/beans/country/FinancialsCountryWebApplicationController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/email_address/FinancialsEmailChangeWebSessionBean.java b/src/java/org/mxchange/jfinancials/beans/email_address/FinancialsEmailChangeWebSessionBean.java
index ded705f1..da10877a 100644
--- a/src/java/org/mxchange/jfinancials/beans/email_address/FinancialsEmailChangeWebSessionBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/email_address/FinancialsEmailChangeWebSessionBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/email_address/FinancialsEmailChangeWebSessionController.java b/src/java/org/mxchange/jfinancials/beans/email_address/FinancialsEmailChangeWebSessionController.java
index ea4bc682..4c372766 100644
--- a/src/java/org/mxchange/jfinancials/beans/email_address/FinancialsEmailChangeWebSessionController.java
+++ b/src/java/org/mxchange/jfinancials/beans/email_address/FinancialsEmailChangeWebSessionController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/features/FinancialsFeatureWebApplicationBean.java b/src/java/org/mxchange/jfinancials/beans/features/FinancialsFeatureWebApplicationBean.java
index 4fda84be..362c541f 100644
--- a/src/java/org/mxchange/jfinancials/beans/features/FinancialsFeatureWebApplicationBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/features/FinancialsFeatureWebApplicationBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/features/FinancialsFeaturesWebApplicationController.java b/src/java/org/mxchange/jfinancials/beans/features/FinancialsFeaturesWebApplicationController.java
index 238eeff1..90860396 100644
--- a/src/java/org/mxchange/jfinancials/beans/features/FinancialsFeaturesWebApplicationController.java
+++ b/src/java/org/mxchange/jfinancials/beans/features/FinancialsFeaturesWebApplicationController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/financial/FinancialsAdminFinancialWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/financial/FinancialsAdminFinancialWebRequestBean.java
new file mode 100644
index 00000000..5907473d
--- /dev/null
+++ b/src/java/org/mxchange/jfinancials/beans/financial/FinancialsAdminFinancialWebRequestBean.java
@@ -0,0 +1,172 @@
+/*
+ * Copyright (C) 2016, 2017 Roland Häder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jfinancials.beans.financial;
+
+import org.mxchange.jfinancials.FinancialSessionBeanRemote;
+import java.text.MessageFormat;
+import java.util.Arrays;
+import java.util.List;
+import javax.annotation.PostConstruct;
+import javax.enterprise.context.RequestScoped;
+import javax.faces.view.facelets.FaceletException;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import org.mxchange.jfinancials.beans.BaseFinancialsController;
+import org.mxchange.jfinancials.beans.login.user.FinancialsUserLoginWebSessionController;
+import org.mxchange.jfinancials.model.income.BillableIncome;
+import org.mxchange.jfinancials.model.income.FinancialIncome;
+import org.mxchange.jfinancials.model.income.interval.FinancialInterval;
+
+/**
+ * An administrative user bean (controller)
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+@Named ("financialController")
+@RequestScoped
+public class FinancialsAdminFinancialWebRequestBean extends BaseFinancialsController implements FinancialsAdminFinancialWebRequestController {
+
+	/**
+	 * Serial number
+	 */
+	private static final long serialVersionUID = 56_189_028_928_371L;
+
+	/**
+	 * Remote contact bean
+	 */
+	private FinancialSessionBeanRemote financialBean;
+
+	/**
+	 * Income interval
+	 */
+	private FinancialInterval incomeInterval;
+
+	/**
+	 * Income single amount
+	 */
+	private Float incomeSingleAmount;
+
+	/**
+	 * Income (type) title
+	 */
+	private String incomeTitle;
+
+	/**
+	 * User instance
+	 */
+	@Inject
+	private FinancialsUserLoginWebSessionController userLoginController;
+
+	/**
+	 * Constructor
+	 */
+	public FinancialsAdminFinancialWebRequestBean () {
+		// Call super constructor
+		super();
+	}
+
+	public String addFinancialIncome () {
+		// Is all data valid?
+		if (null == this.getIncomeInterval()) {
+			// Throw NPE
+			throw new NullPointerException("incomeInterval is null"); //NOI18N
+		} else if (null == this.getIncomeSingleAmount()) {
+			// Throw again
+			throw new NullPointerException("incomeSingleAmount is null"); //NOI18N
+		} else if (this.getIncomeSingleAmount() < 0) {
+			// Not allowed value
+			throw new IllegalArgumentException(MessageFormat.format("incomeSingleAmount={0} is not valid.", this.getIncomeSingleAmount())); //NOI18N
+		} else if (null == this.getIncomeTitle()) {
+			// Throw again
+			throw new NullPointerException("incomeTitle is null"); //NOI18N
+		} else if (this.getIncomeTitle().isEmpty()) {
+			// Should not be empty
+			throw new IllegalArgumentException("incomeTitle is empty"); //NOI18N
+		}
+
+		// Now that all required data has been entered, prepare new income instance
+		BillableIncome income = new FinancialIncome(this.getIncomeTitle(), this.getIncomeSingleAmount(), this.getIncomeInterval(), this.userLoginController.getLoggedInUser());
+
+		// Handle it over to the EJB
+		// @TODO Use updated income instance, e.g. fire event
+		BillableIncome updatedIncome = this.financialBean.addIncome(income);
+
+		// All fine
+		return "add_user_fiancial_income"; //NOI18N
+	}
+
+	@Override
+	public List<FinancialInterval> getAllIncomeIntervals () {
+		// Init array
+		List<FinancialInterval> incomeIntervals = Arrays.asList(FinancialInterval.values());
+
+		// Return it
+		return incomeIntervals;
+	}
+
+	@Override
+	public FinancialInterval getIncomeInterval () {
+		return this.incomeInterval;
+	}
+
+	@Override
+	public void setIncomeInterval (final FinancialInterval incomeInterval) {
+		this.incomeInterval = incomeInterval;
+	}
+
+	@Override
+	public Float getIncomeSingleAmount () {
+		return this.incomeSingleAmount;
+	}
+
+	@Override
+	public void setIncomeSingleAmount (final Float incomeSingleAmount) {
+		this.incomeSingleAmount = incomeSingleAmount;
+	}
+
+	@Override
+	public String getIncomeTitle () {
+		return this.incomeTitle;
+	}
+
+	@Override
+	public void setIncomeTitle (final String incomeTitle) {
+		this.incomeTitle = incomeTitle;
+	}
+
+	/**
+	 * Post-initialization of this class
+	 */
+	@PostConstruct
+	public void init () {
+		// Try it
+		try {
+			// Get initial context
+			Context context = new InitialContext();
+
+			// Try to lookup
+			this.financialBean = (FinancialSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/financial!org.mxchange.jfinancials.FinancialSessionBeanRemote"); //NOI18N
+		} catch (final NamingException e) {
+			// Throw again
+			throw new FaceletException(e);
+		}
+	}
+
+}
diff --git a/src/java/org/mxchange/jfinancials/beans/financial/FinancialsAdminFinancialWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/financial/FinancialsAdminFinancialWebRequestController.java
new file mode 100644
index 00000000..df46fe68
--- /dev/null
+++ b/src/java/org/mxchange/jfinancials/beans/financial/FinancialsAdminFinancialWebRequestController.java
@@ -0,0 +1,79 @@
+/*
+ * Copyright (C) 2016, 2017 Roland Häder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jfinancials.beans.financial;
+
+import java.io.Serializable;
+import java.util.List;
+import org.mxchange.jfinancials.model.income.interval.FinancialInterval;
+
+/**
+ * An administrative interface for user beans
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+public interface FinancialsAdminFinancialWebRequestController extends Serializable {
+
+	/**
+	 * Getter for income single amount
+	 * <p>
+	 * @return Income single amount
+	 */
+	Float getIncomeSingleAmount ();
+
+	/**
+	 * Setter for income single amount
+	 * <p>
+	 * @param incomeSingleAmount Income single amount
+	 */
+	void setIncomeSingleAmount (final Float incomeSingleAmount);
+
+	/**
+	 * Getter for income (type) title
+	 * <p>
+	 * @return Income title
+	 */
+	String getIncomeTitle ();
+
+	/**
+	 * Setter for income (type) title
+	 * <p>
+	 * @param incomeTitle Income title
+	 */
+	void setIncomeTitle (final String incomeTitle);
+
+	/**
+	 * Getter for income interval
+	 * <p>
+	 * @return Income interval
+	 */
+	FinancialInterval getIncomeInterval ();
+
+	/**
+	 * Setter for income (type) interval
+	 * <p>
+	 * @param incomeInterval Income interval
+	 */
+	void setIncomeInterval (final FinancialInterval incomeInterval);
+
+	/**
+	 * Returns a list of all all income intervals
+	 * <p>
+	 * @return Income intervals
+	 */
+	List<FinancialInterval> getAllIncomeIntervals ();
+
+}
diff --git a/src/java/org/mxchange/jfinancials/beans/gender/FinancialsGenderWebApplicationBean.java b/src/java/org/mxchange/jfinancials/beans/gender/FinancialsGenderWebApplicationBean.java
index 3990bfac..523afad7 100644
--- a/src/java/org/mxchange/jfinancials/beans/gender/FinancialsGenderWebApplicationBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/gender/FinancialsGenderWebApplicationBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/gender/FinancialsGenderWebApplicationController.java b/src/java/org/mxchange/jfinancials/beans/gender/FinancialsGenderWebApplicationController.java
index 29d93763..61860a29 100644
--- a/src/java/org/mxchange/jfinancials/beans/gender/FinancialsGenderWebApplicationController.java
+++ b/src/java/org/mxchange/jfinancials/beans/gender/FinancialsGenderWebApplicationController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/helper/FinancialsWebRequestHelperBean.java b/src/java/org/mxchange/jfinancials/beans/helper/FinancialsWebRequestHelperBean.java
index a14f4e52..735134d7 100644
--- a/src/java/org/mxchange/jfinancials/beans/helper/FinancialsWebRequestHelperBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/helper/FinancialsWebRequestHelperBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder GmbH
+ * Copyright (C) 2016, 2017 Roland Häder GmbH
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/helper/FinancialsWebRequestHelperController.java b/src/java/org/mxchange/jfinancials/beans/helper/FinancialsWebRequestHelperController.java
index 5f188f9f..8f4c3e55 100644
--- a/src/java/org/mxchange/jfinancials/beans/helper/FinancialsWebRequestHelperController.java
+++ b/src/java/org/mxchange/jfinancials/beans/helper/FinancialsWebRequestHelperController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder GmbH
+ * Copyright (C) 2016, 2017 Roland Häder GmbH
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/localization/FinancialsLocalizationSessionBean.java b/src/java/org/mxchange/jfinancials/beans/localization/FinancialsLocalizationSessionBean.java
index 6cd1cb75..e02b4df7 100644
--- a/src/java/org/mxchange/jfinancials/beans/localization/FinancialsLocalizationSessionBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/localization/FinancialsLocalizationSessionBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/localization/FinancialsLocalizationSessionController.java b/src/java/org/mxchange/jfinancials/beans/localization/FinancialsLocalizationSessionController.java
index e420470c..f8bac04e 100644
--- a/src/java/org/mxchange/jfinancials/beans/localization/FinancialsLocalizationSessionController.java
+++ b/src/java/org/mxchange/jfinancials/beans/localization/FinancialsLocalizationSessionController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/login/user/FinancialsUserLoginWebSessionBean.java b/src/java/org/mxchange/jfinancials/beans/login/user/FinancialsUserLoginWebSessionBean.java
index 601c8aad..b7110988 100644
--- a/src/java/org/mxchange/jfinancials/beans/login/user/FinancialsUserLoginWebSessionBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/login/user/FinancialsUserLoginWebSessionBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/login/user/FinancialsUserLoginWebSessionController.java b/src/java/org/mxchange/jfinancials/beans/login/user/FinancialsUserLoginWebSessionController.java
index 3ddd5f7b..adf6afb5 100644
--- a/src/java/org/mxchange/jfinancials/beans/login/user/FinancialsUserLoginWebSessionController.java
+++ b/src/java/org/mxchange/jfinancials/beans/login/user/FinancialsUserLoginWebSessionController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsAdminMobileProviderWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsAdminMobileProviderWebRequestBean.java
index 9c7a3cad..334f66f2 100644
--- a/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsAdminMobileProviderWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsAdminMobileProviderWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsAdminMobileProviderWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsAdminMobileProviderWebRequestController.java
index 274ffd60..92336e3b 100644
--- a/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsAdminMobileProviderWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsAdminMobileProviderWebRequestController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsMobileProviderWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsMobileProviderWebRequestBean.java
index f1395ba7..8a054514 100644
--- a/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsMobileProviderWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsMobileProviderWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsMobileProviderWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsMobileProviderWebRequestController.java
index 2f8c3fe0..b9aa55ad 100644
--- a/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsMobileProviderWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/mobileprovider/FinancialsMobileProviderWebRequestController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/phone/FinancialsAdminPhoneWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/phone/FinancialsAdminPhoneWebRequestBean.java
index a6acca6a..b0524e9d 100644
--- a/src/java/org/mxchange/jfinancials/beans/phone/FinancialsAdminPhoneWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/phone/FinancialsAdminPhoneWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/phone/FinancialsAdminPhoneWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/phone/FinancialsAdminPhoneWebRequestController.java
index ba4703c0..aa00f2de 100644
--- a/src/java/org/mxchange/jfinancials/beans/phone/FinancialsAdminPhoneWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/phone/FinancialsAdminPhoneWebRequestController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/phone/FinancialsPhoneWebApplicationBean.java b/src/java/org/mxchange/jfinancials/beans/phone/FinancialsPhoneWebApplicationBean.java
index b4587a49..5c4a05df 100644
--- a/src/java/org/mxchange/jfinancials/beans/phone/FinancialsPhoneWebApplicationBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/phone/FinancialsPhoneWebApplicationBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/phone/FinancialsPhoneWebApplicationController.java b/src/java/org/mxchange/jfinancials/beans/phone/FinancialsPhoneWebApplicationController.java
index e7e0c45f..99e7004f 100644
--- a/src/java/org/mxchange/jfinancials/beans/phone/FinancialsPhoneWebApplicationController.java
+++ b/src/java/org/mxchange/jfinancials/beans/phone/FinancialsPhoneWebApplicationController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/profile/FinancialsUserProfileWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/profile/FinancialsUserProfileWebRequestBean.java
index d6920ba9..8536049a 100644
--- a/src/java/org/mxchange/jfinancials/beans/profile/FinancialsUserProfileWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/profile/FinancialsUserProfileWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/profile/FinancialsUserProfileWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/profile/FinancialsUserProfileWebRequestController.java
index 738aefa9..2639732a 100644
--- a/src/java/org/mxchange/jfinancials/beans/profile/FinancialsUserProfileWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/profile/FinancialsUserProfileWebRequestController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/profilemode/FinancialsProfileModeWebApplicationBean.java b/src/java/org/mxchange/jfinancials/beans/profilemode/FinancialsProfileModeWebApplicationBean.java
index 26b3d2b0..d4084863 100644
--- a/src/java/org/mxchange/jfinancials/beans/profilemode/FinancialsProfileModeWebApplicationBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/profilemode/FinancialsProfileModeWebApplicationBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/profilemode/FinancialsProfileModeWebApplicationController.java b/src/java/org/mxchange/jfinancials/beans/profilemode/FinancialsProfileModeWebApplicationController.java
index 612a8c5d..c1b11430 100644
--- a/src/java/org/mxchange/jfinancials/beans/profilemode/FinancialsProfileModeWebApplicationController.java
+++ b/src/java/org/mxchange/jfinancials/beans/profilemode/FinancialsProfileModeWebApplicationController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/register/FinancialsUserRegisterWebSessionBean.java b/src/java/org/mxchange/jfinancials/beans/register/FinancialsUserRegisterWebSessionBean.java
index 9e38b14b..976e2cc2 100644
--- a/src/java/org/mxchange/jfinancials/beans/register/FinancialsUserRegisterWebSessionBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/register/FinancialsUserRegisterWebSessionBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/register/FinancialsUserRegisterWebSessionController.java b/src/java/org/mxchange/jfinancials/beans/register/FinancialsUserRegisterWebSessionController.java
index bdb8fb57..1dabe3a4 100644
--- a/src/java/org/mxchange/jfinancials/beans/register/FinancialsUserRegisterWebSessionController.java
+++ b/src/java/org/mxchange/jfinancials/beans/register/FinancialsUserRegisterWebSessionController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/resendlink/FinancialsResendLinkWebSessionBean.java b/src/java/org/mxchange/jfinancials/beans/resendlink/FinancialsResendLinkWebSessionBean.java
index 96d6b683..ddc5c031 100644
--- a/src/java/org/mxchange/jfinancials/beans/resendlink/FinancialsResendLinkWebSessionBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/resendlink/FinancialsResendLinkWebSessionBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
@@ -16,9 +16,10 @@
  */
 package org.mxchange.jfinancials.beans.resendlink;
 
-import java.text.MessageFormat;
 import javax.annotation.PostConstruct;
 import javax.enterprise.context.SessionScoped;
+import javax.enterprise.event.Event;
+import javax.enterprise.inject.Any;
 import javax.faces.view.facelets.FaceletException;
 import javax.inject.Inject;
 import javax.inject.Named;
@@ -29,9 +30,13 @@ import org.mxchange.jcoreee.utils.FacesUtils;
 import org.mxchange.jfinancials.beans.BaseFinancialsController;
 import org.mxchange.jfinancials.beans.localization.FinancialsLocalizationSessionController;
 import org.mxchange.jfinancials.beans.user.FinancialsUserWebSessionController;
+import org.mxchange.jusercore.events.resendlink.ObservableUserResendLinkAccountEvent;
+import org.mxchange.jusercore.events.resendlink.UserResendLinkAccountEvent;
 import org.mxchange.jusercore.exceptions.UserEmailAddressNotFoundException;
+import org.mxchange.jusercore.exceptions.UserNotFoundException;
 import org.mxchange.jusercore.exceptions.UserStatusConfirmedException;
 import org.mxchange.jusercore.exceptions.UserStatusLockedException;
+import org.mxchange.jusercore.model.resendlink.ResendLinkSessionBeanRemote;
 import org.mxchange.jusercore.model.user.User;
 import org.mxchange.jusercore.model.user.status.UserAccountStatus;
 
@@ -71,6 +76,13 @@ public class FinancialsResendLinkWebSessionBean extends BaseFinancialsController
 	@Inject
 	private FinancialsUserWebSessionController userController;
 
+	/**
+	 * Event being fired after confirmation link is being sent
+	 */
+	@Inject
+	@Any
+	private Event<ObservableUserResendLinkAccountEvent> userResendLinkEvent;
+
 	/**
 	 * Default constructor
 	 */
@@ -98,7 +110,8 @@ public class FinancialsResendLinkWebSessionBean extends BaseFinancialsController
 			this.clear();
 
 			// Not found, should not happen as the registered validator should find it
-			throw new FaceletException(MessageFormat.format("this.emailAddress={0} should be resolveable into User instance.", this.getEmailAddress()), ex); //NOI18N
+			this.showFacesMessage("form_resend_link:", "ERROR_USER_EMAIL_ADDRESS_NOT_FOUND"); //NOI18N
+			return ""; //NOI18N
 		}
 
 		// Is the user account already confirmed?
@@ -107,31 +120,44 @@ public class FinancialsResendLinkWebSessionBean extends BaseFinancialsController
 			this.clear();
 
 			// Then abort here
-			this.showFacesMessage("form_resend_link:resendEmailAddress", new UserStatusConfirmedException(user)); //NOI18N
+			this.showFacesMessage("form_resend_link:resendEmailAddress", "ERROR_USER_STATUS_ALREADY_CONFIRMED"); //NOI18N
 			return ""; //NOI18N
 		} else if (user.getUserAccountStatus() == UserAccountStatus.LOCKED) {
 			// Always clear bean
 			this.clear();
 
 			// User account is locked
-			this.showFacesMessage("form_resend_link:resendEmailAddress", new UserStatusLockedException(user)); //NOI18N
+			this.showFacesMessage("form_resend_link:resendEmailAddress", "ERROR_USER_STATUS_LOCKED"); //NOI18N
 			return ""; //NOI18N
 		} else if (user.getUserConfirmKey() == null) {
 			// Status is UNCONFIRMED but confirmation key is NULL
 			throw new NullPointerException("user.userConfirmKey is null"); //NOI18N
 		}
 
-		// Get base URL
-		String baseUrl = FacesUtils.generateBaseUrl();
+		try {
+			// Get base URL
+			String baseUrl = FacesUtils.generateBaseUrl();
+
+			// Call EJB and return redirect target
+			this.resendLinkBean.resendConfirmationLink(user, this.localizationController.getLocale(), baseUrl);
+		} catch (final UserNotFoundException ex) {
+			// User not found
+			this.showFacesMessage("form_resend_link:resendEmailAddress", "ERROR_USER_NOT_FOUND"); //NOI18N
+			return ""; //NOI18N
+		} catch (final UserStatusLockedException | UserStatusConfirmedException ex) {
+			// Output message, this should not happen as the confirmation key is being removed
+			this.showFacesMessage("form_resend_link:resendEmailAddress", ex); //NOI18N
+			return ""; //NOI18N
+		}
 
-		// Call EJB and return redirect target
-		this.resendLinkBean.resendConfirmationLink(user, this.localizationController.getLocale(), baseUrl);
+		// Fire event
+		this.userResendLinkEvent.fire(new UserResendLinkAccountEvent(user));
 
 		// Clear this bean
 		this.clear();
 
 		// Return redirect target
-		return "resend_done"; //NOI18N
+		return "user_resend_done"; //NOI18N
 	}
 
 	@Override
@@ -155,7 +181,7 @@ public class FinancialsResendLinkWebSessionBean extends BaseFinancialsController
 			Context context = new InitialContext();
 
 			// Try to lookup
-			this.resendLinkBean = (ResendLinkSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/resendLink!org.mxchange.jfinancials.beans.resendlink.ResendLinkSessionBeanRemote"); //NOI18N
+			this.resendLinkBean = (ResendLinkSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/resendLink!org.mxchange.jusercore.model.resendlink.ResendLinkSessionBeanRemote"); //NOI18N
 		} catch (final NamingException e) {
 			// Throw again
 			throw new FaceletException(e);
diff --git a/src/java/org/mxchange/jfinancials/beans/resendlink/FinancialsResendLinkWebSessionController.java b/src/java/org/mxchange/jfinancials/beans/resendlink/FinancialsResendLinkWebSessionController.java
index 3ddcc2eb..844e5ee4 100644
--- a/src/java/org/mxchange/jfinancials/beans/resendlink/FinancialsResendLinkWebSessionController.java
+++ b/src/java/org/mxchange/jfinancials/beans/resendlink/FinancialsResendLinkWebSessionController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/user/FinancialsAdminUserWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/user/FinancialsAdminUserWebRequestBean.java
index 88459f4e..a7565eba 100644
--- a/src/java/org/mxchange/jfinancials/beans/user/FinancialsAdminUserWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/user/FinancialsAdminUserWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/user/FinancialsAdminUserWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/user/FinancialsAdminUserWebRequestController.java
index 19fc1e31..98ffc17a 100644
--- a/src/java/org/mxchange/jfinancials/beans/user/FinancialsAdminUserWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/user/FinancialsAdminUserWebRequestController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/user/FinancialsUserWebSessionBean.java b/src/java/org/mxchange/jfinancials/beans/user/FinancialsUserWebSessionBean.java
index 9f2cf942..2880d7ca 100644
--- a/src/java/org/mxchange/jfinancials/beans/user/FinancialsUserWebSessionBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/user/FinancialsUserWebSessionBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/user/FinancialsUserWebSessionController.java b/src/java/org/mxchange/jfinancials/beans/user/FinancialsUserWebSessionController.java
index 38aa8d8f..e209be36 100644
--- a/src/java/org/mxchange/jfinancials/beans/user/FinancialsUserWebSessionController.java
+++ b/src/java/org/mxchange/jfinancials/beans/user/FinancialsUserWebSessionController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/user/password/FinancialsUserPasswordWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/user/password/FinancialsUserPasswordWebRequestBean.java
index 574d6789..3b1a075b 100644
--- a/src/java/org/mxchange/jfinancials/beans/user/password/FinancialsUserPasswordWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/user/password/FinancialsUserPasswordWebRequestBean.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/beans/user/password/FinancialsUserPasswordWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/user/password/FinancialsUserPasswordWebRequestController.java
index 9d47fbee..65be5276 100644
--- a/src/java/org/mxchange/jfinancials/beans/user/password/FinancialsUserPasswordWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/user/password/FinancialsUserPasswordWebRequestController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/converter/contact/FinancialsContactConverter.java b/src/java/org/mxchange/jfinancials/converter/contact/FinancialsContactConverter.java
index 2b0227fc..cd62e99b 100644
--- a/src/java/org/mxchange/jfinancials/converter/contact/FinancialsContactConverter.java
+++ b/src/java/org/mxchange/jfinancials/converter/contact/FinancialsContactConverter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/converter/country/FinancialsCountryConverter.java b/src/java/org/mxchange/jfinancials/converter/country/FinancialsCountryConverter.java
index db941ab4..3b89772b 100644
--- a/src/java/org/mxchange/jfinancials/converter/country/FinancialsCountryConverter.java
+++ b/src/java/org/mxchange/jfinancials/converter/country/FinancialsCountryConverter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/converter/mobile/FinancialsMobileConverter.java b/src/java/org/mxchange/jfinancials/converter/mobile/FinancialsMobileConverter.java
index f22b5d53..4e34f413 100644
--- a/src/java/org/mxchange/jfinancials/converter/mobile/FinancialsMobileConverter.java
+++ b/src/java/org/mxchange/jfinancials/converter/mobile/FinancialsMobileConverter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/converter/mobileprovider/FinancialsMobileProviderConverter.java b/src/java/org/mxchange/jfinancials/converter/mobileprovider/FinancialsMobileProviderConverter.java
index 161ba249..67c05375 100644
--- a/src/java/org/mxchange/jfinancials/converter/mobileprovider/FinancialsMobileProviderConverter.java
+++ b/src/java/org/mxchange/jfinancials/converter/mobileprovider/FinancialsMobileProviderConverter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/converter/user/FinancialsUserConverter.java b/src/java/org/mxchange/jfinancials/converter/user/FinancialsUserConverter.java
index cd37f065..d045dcef 100644
--- a/src/java/org/mxchange/jfinancials/converter/user/FinancialsUserConverter.java
+++ b/src/java/org/mxchange/jfinancials/converter/user/FinancialsUserConverter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/validator/birthday/FinancialsBirthdayValidator.java b/src/java/org/mxchange/jfinancials/validator/birthday/FinancialsBirthdayValidator.java
index bc3ea9d5..4a1c7835 100644
--- a/src/java/org/mxchange/jfinancials/validator/birthday/FinancialsBirthdayValidator.java
+++ b/src/java/org/mxchange/jfinancials/validator/birthday/FinancialsBirthdayValidator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
diff --git a/src/java/org/mxchange/jfinancials/validator/emailaddress/FinancialsEmailAddressValidator.java b/src/java/org/mxchange/jfinancials/validator/emailaddress/FinancialsEmailAddressValidator.java
index 607468dc..bd938371 100644
--- a/src/java/org/mxchange/jfinancials/validator/emailaddress/FinancialsEmailAddressValidator.java
+++ b/src/java/org/mxchange/jfinancials/validator/emailaddress/FinancialsEmailAddressValidator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/validator/names/FinancialsNameValidator.java b/src/java/org/mxchange/jfinancials/validator/names/FinancialsNameValidator.java
index 64e97c0d..786c5f29 100644
--- a/src/java/org/mxchange/jfinancials/validator/names/FinancialsNameValidator.java
+++ b/src/java/org/mxchange/jfinancials/validator/names/FinancialsNameValidator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
diff --git a/src/java/org/mxchange/jfinancials/validator/password/FinancialsUserPasswordValidator.java b/src/java/org/mxchange/jfinancials/validator/password/FinancialsUserPasswordValidator.java
index 8ef2a765..29c04248 100644
--- a/src/java/org/mxchange/jfinancials/validator/password/FinancialsUserPasswordValidator.java
+++ b/src/java/org/mxchange/jfinancials/validator/password/FinancialsUserPasswordValidator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
diff --git a/src/java/org/mxchange/jfinancials/validator/phone/abroad/FinancialsAbroadDialValidator.java b/src/java/org/mxchange/jfinancials/validator/phone/abroad/FinancialsAbroadDialValidator.java
index 90732b74..98a89d24 100644
--- a/src/java/org/mxchange/jfinancials/validator/phone/abroad/FinancialsAbroadDialValidator.java
+++ b/src/java/org/mxchange/jfinancials/validator/phone/abroad/FinancialsAbroadDialValidator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
diff --git a/src/java/org/mxchange/jfinancials/validator/phone/number/FinancialsPhoneNumberValidator.java b/src/java/org/mxchange/jfinancials/validator/phone/number/FinancialsPhoneNumberValidator.java
index 7f10444a..0a229d64 100644
--- a/src/java/org/mxchange/jfinancials/validator/phone/number/FinancialsPhoneNumberValidator.java
+++ b/src/java/org/mxchange/jfinancials/validator/phone/number/FinancialsPhoneNumberValidator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
diff --git a/src/java/org/mxchange/jfinancials/validator/privacy_terms/FinancialsPrivacyTermsCheckboxValidator.java b/src/java/org/mxchange/jfinancials/validator/privacy_terms/FinancialsPrivacyTermsCheckboxValidator.java
index 0f6ff44c..86424469 100644
--- a/src/java/org/mxchange/jfinancials/validator/privacy_terms/FinancialsPrivacyTermsCheckboxValidator.java
+++ b/src/java/org/mxchange/jfinancials/validator/privacy_terms/FinancialsPrivacyTermsCheckboxValidator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
diff --git a/src/java/org/mxchange/jfinancials/validator/user/FinancialsUserIdValidator.java b/src/java/org/mxchange/jfinancials/validator/user/FinancialsUserIdValidator.java
index b8ffd634..d65c4720 100644
--- a/src/java/org/mxchange/jfinancials/validator/user/FinancialsUserIdValidator.java
+++ b/src/java/org/mxchange/jfinancials/validator/user/FinancialsUserIdValidator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 Roland Häder
+ * Copyright (C) 2016, 2017 Roland Häder
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
diff --git a/src/java/org/mxchange/localization/bundle_de_DE.properties b/src/java/org/mxchange/localization/bundle_de_DE.properties
index 9ec9eb53..0f795fbe 100644
--- a/src/java/org/mxchange/localization/bundle_de_DE.properties
+++ b/src/java/org/mxchange/localization/bundle_de_DE.properties
@@ -1,4 +1,4 @@
-# Copyright (C) 2016 Roland H\u00e4der
+# Copyright (C) 2016, 2017 Roland H\u00e4der
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU Affero General Public License as
@@ -778,3 +778,26 @@ ADMIN_LINK_SHOW_CONTACT_DATA=Kontaktdaten anzeigen
 ERROR_USER_PASSWORD_TO_WEAK=Das eingegebene Passwort ist zu schwach. Bitte geben Sie Bustaben, Zahlen und Sonderzeichen ein, um ein sicheres Passwort zu erstellen.
 #@TODO Please fix German umlauts!
 GUEST_REGISTRATION_USER_NAME_NOT_ENTERED=Bitte geben Sie einen Benutzernamen ein. Dieser wird auf Verfuegbarkeit hin getestet.
+#@TODO Please fix German umlauts!
+PAGE_TITLE_LOGIN_FINANCIAL_OVERVIEW=Finanzen-Uebersicht
+#@TODO Please fix German umlauts!
+SUB_TITLE_LOGIN_FINANCIAL_OVERVIEW=Uebersicht Ihrer Finanzen:
+#@TODO Please fix German umlauts!
+PAGE_TITLE_LOGIN_FINANCIAL_ADD_RECEIPT=Rechnung hinzufuegen/erfassen
+SUB_TITLE_LOGIN_FINANCIAL_ADD_RECEIPT=Weitere Rechnung erfassen:
+#@TODO Please fix German umlauts!
+PAGE_TITLE_LOGIN_FINANCIAL_ADD_INCOME=Neue Einkommensart hinzufuegen
+#@TODO Please fix German umlauts!
+SUB_TITLE_LOGIN_FINANCIAL_ADD_INCOME=Weitere Einkommensart hinzufuegen:
+LOGIN_FINANCIAL_ADD_INCOME_FORM_TITLE=Daten einer Einkommensart erfassen:
+LOGIN_FINANCIAL_INCOME_INTERVAL=Einkommensinterval:
+#@TODO Please fix German umlauts!
+FIELD_FINANCIAL_INCOME_REQUIRED=Feld "Einkommensinterval" muss ausgewaehlt werden.
+#@TODO Please fix German umlauts!
+BUTTON_LOGIN_FINCIAL_ADD_INCOME=Einkommensart hinzufuegen
+LOGIN_FINANCIAL_INCOME_SINGLE_VALUE=Einkommensbetrag:
+#@TODO Please fix German umlauts!
+FIELD_FINANCIAL_INCOME_SINGLE_VALUE_REQUIRED=Feld "Einkommensbetrag" bitte ausfuellen.
+LOGIN_FINANCIAL_INCOME_TITLE=Bezeichnung der Einkommensart:
+#@TODO Please fix German umlauts!
+FIELD_FINANCIAL_INCOME_TITLE_REQUIRED=Feld "Title" muss ausgefuellt werden.
diff --git a/src/java/org/mxchange/localization/bundle_en_US.properties b/src/java/org/mxchange/localization/bundle_en_US.properties
index 1f274a5d..4c1a6193 100644
--- a/src/java/org/mxchange/localization/bundle_en_US.properties
+++ b/src/java/org/mxchange/localization/bundle_en_US.properties
@@ -1,4 +1,4 @@
-# Copyright (C) 2016 Roland H\u00e4der
+# Copyright (C) 2016, 2017 Roland H\u00e4der
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU Affero General Public License as
@@ -466,7 +466,6 @@ SELECTION_NOTICE_USER_PROFILE_MODE_INVISIBLE=If you choose "Invisible", nobody c
 SELECTION_NOTICE_USER_PROFILE_MODE_MEMBERS=If you choose "Only members", other users can start sharing address books with you.
 SELECTION_NOTICE_USER_PROFILE_MODE_PUBLIC=If you choose "All" the whole Internet can view your profile, including bots.
 LOGIN_ENTER_CURRENT_PASSWORD_CONFIRMATION_LEGEND=Your current password for confirmation:
-LINK_LOGIN_USER_CHANGE_EMAIL_ADDRESS=Change your email address
 LOGIN_USER_CHANGE_PERSONAL_DATA_TITLE=Change personal data:
 LINK_TITLE_GUEST_LOGIN_LOST_PASSWORD=Restore your password
 PAGE_TITLE_INDEX_CONFIRM_ACCOUNT=Confirm registration
@@ -774,3 +773,17 @@ BUTTON_USER_CHANGE_PASSWORD=Change password
 ADMIN_LINK_SHOW_CONTACT_DATA=Show contact data
 ERROR_USER_PASSWORD_TO_WEAK=Your entered password is to weak. Please enter letters, numbers and special characters to create a secure password.
 GUEST_REGISTRATION_USER_NAME_NOT_ENTERED=Please enter a user name. The entered name is being checked for availability.
+PAGE_TITLE_LOGIN_FINANCIAL_OVERVIEW=Financials Overview
+SUB_TITLE_LOGIN_FINANCIAL_OVERVIEW=Overview of your financials:
+PAGE_TITLE_LOGIN_FINANCIAL_ADD_RECEIPT=Add receipt
+SUB_TITLE_LOGIN_FINANCIAL_ADD_RECEIPT=Add new receipt:
+PAGE_TITLE_LOGIN_FINANCIAL_ADD_INCOME=Add new income type
+SUB_TITLE_LOGIN_FINANCIAL_ADD_INCOME=Add new income type:
+LOGIN_FINANCIAL_ADD_INCOME_FORM_TITLE=Enter all data of one income type:
+LOGIN_FINANCIAL_INCOME_INTERVAL=Income interval:
+FIELD_FINANCIAL_INCOME_REQUIRED=Field "Income interval" must be selected.
+BUTTON_LOGIN_FINCIAL_ADD_INCOME=Add income type
+LOGIN_FINANCIAL_INCOME_SINGLE_VALUE=Income value:
+FIELD_FINANCIAL_INCOME_SINGLE_VALUE_REQUIRED=Field "Income value" must be filled out.
+LOGIN_FINANCIAL_INCOME_TITLE=Title of income type:
+FIELD_FINANCIAL_INCOME_TITLE_REQUIRED=Field "Title" must be filled out.
diff --git a/web/WEB-INF/templates/login/user/user_footer.tpl b/web/WEB-INF/templates/login/user/user_footer.tpl
index b1bcc38b..627af1a5 100644
--- a/web/WEB-INF/templates/login/user/user_footer.tpl
+++ b/web/WEB-INF/templates/login/user/user_footer.tpl
@@ -29,7 +29,7 @@
 				</li>
 			</ui:fragment>
 
-			<li class="footer_copyright">Copyright (c) 2017 Roland Häder</li>
+			<li class="footer_copyright">Copyright (c) 2016, 2017 Roland Häder</li>
 		</ul>
 	</footer>
 
diff --git a/web/user/financials/login_financials_add_income.xhtml b/web/user/financials/login_financials_add_income.xhtml
new file mode 100644
index 00000000..274a26b3
--- /dev/null
+++ b/web/user/financials/login_financials_add_income.xhtml
@@ -0,0 +1,77 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	  lang="#{localizationController.language}" xml:lang="#{localizationController.language}"
+	  xmlns:ui="http://java.sun.com/jsf/facelets"
+	  xmlns:h="http://xmlns.jcp.org/jsf/html"
+	  xmlns:f="http://xmlns.jcp.org/jsf/core"
+	  >
+
+	<ui:composition template="/WEB-INF/templates/login/user/user_base.tpl">
+		<ui:define name="login_title">
+			<h:outputText value="#{msg.PAGE_TITLE_LOGIN_FINANCIAL_ADD_INCOME}" />
+		</ui:define>
+
+		<ui:define name="content_header">
+			<h:outputText value="#{msg.SUB_TITLE_LOGIN_FINANCIAL_ADD_INCOME}" />
+		</ui:define>
+
+		<ui:define name="content">
+			<h:form id="form_add_financials_income">
+				<h:panelGroup styleClass="table_medium" layout="block">
+					<div class="table_header">
+						<h:outputText value="#{msg.LOGIN_FINANCIAL_ADD_INCOME_FORM_TITLE}" />
+					</div>
+
+					<div class="table_row">
+						<div class="table_left_medium">
+							<h:outputLabel for="incomeTitle" value="#{msg.LOGIN_FINANCIAL_INCOME_TITLE}" />
+						</div>
+
+						<div class="table_right_medium">
+							<h:inputText styleClass="input" id="incomeTitle" size="2" maxlength="10" value="#{financialController.incomeTitle}" required="true" requiredMessage="#{msg.FIELD_FINANCIAL_INCOME_TITLE_REQUIRED}">
+								<f:validator validatorId="IncomeTitleValidator" />
+							</h:inputText>
+						</div>
+
+						<div class="clear"></div>
+					</div>
+
+					<div class="table_row">
+						<div class="table_left_medium">
+							<h:outputLabel for="incomeInterval" value="#{msg.LOGIN_FINANCIAL_INCOME_INTERVAL}" />
+						</div>
+
+						<div class="table_right_medium">
+							<h:selectOneMenu styleClass="select" id="incomeInterval" value="#{financialController.incomeInterval}" required="true" requiredMessage="#{msg.FIELD_FINANCIAL_INCOME_REQUIRED}">
+								<f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" noSelectionOption="true" />
+								<f:selectItems value="#{financialController.allIncomeIntervals}" var="incomeInterval" itemValue="#{incomeInterval}" itemLabel="#{msg[incomeInterval.concat('_INTERVAL')]}" />
+							</h:selectOneMenu>
+						</div>
+
+						<div class="clear"></div>
+					</div>
+
+					<div class="table_row">
+						<div class="table_left_medium">
+							<h:outputLabel for="incomeSingleValue" value="#{msg.LOGIN_FINANCIAL_INCOME_SINGLE_VALUE}" />
+						</div>
+
+						<div class="table_right_medium">
+							<h:inputText styleClass="input" id="incomeSingleValue" size="5" maxlength="20" value="#{financialController.incomeSingleAmount}" required="true" requiredMessage="#{msg.FIELD_FINANCIAL_INCOME_SINGLE_VALUE_REQUIRED}">
+								<f:validator validatorId="CurrencyAmountValidator" />
+							</h:inputText>
+						</div>
+
+						<div class="clear"></div>
+					</div>
+
+					<div class="table_footer">
+						<h:commandButton styleClass="reset right_space" type="reset" value="#{msg.BUTTON_RESET_FORM}" />
+
+						<h:commandButton styleClass="submit" id="submit_add_income" type="submit" action="#{financialController.addFinancialIncome()}" value="#{msg.BUTTON_LOGIN_FINCIAL_ADD_INCOME}" />
+					</div>
+				</h:panelGroup>
+			</h:form>
+		</ui:define>
+	</ui:composition>
+</html>
diff --git a/web/user/financials/login_financials_overview.xhtml b/web/user/financials/login_financials_overview.xhtml
index bb0ed480..5a5fae09 100644
--- a/web/user/financials/login_financials_overview.xhtml
+++ b/web/user/financials/login_financials_overview.xhtml
@@ -25,16 +25,37 @@
 					<h:column>
 						<h:outputLabel for="totalReceipts" styleClass="data_label" value="#{msg.USER_FINANCIALS_TOTAL_RECEIPTS}" />
 
-						<h:outputLink id="totalReceipts" target="list_user_financial_receipts" value="#{financialController.receipts.size()}" />
+						<h:outputLink id="totalReceipts" styleClass="data_field" target="list_user_financial_receipts" value="#{financialController.receipts.size()}" />
+					</h:column>
+
+					<h:column>
+						<h:outputLabel for="totalReceipts" styleClass="data_label" value="#{msg.USER_FINANCIALS_TOTAL_OTHER_EXPENSES}" />
+
+						<h:outputLink id="totalReceipts" styleClass="data_field" target="list_user_financial_other_expenses" value="#{financialController.income.size()}" />
+					</h:column>
+
+					<h:column>
+						<h:outputLabel for="totalReceipts" styleClass="data_label" value="#{msg.USER_FINANCIALS_TOTAL_INCOME}" />
+
+						<h:outputLink id="totalReceipts" styleClass="data_field" target="list_user_financial_income" value="#{financialController.income.size()}" />
 					</h:column>
 				</h:panelGrid>
 			</h:panelGroup>
 
 			<h:panelGroup layout="block" styleClass="para">
-				<h:outputText value="#{msg.USER_FINANCIALS_NEXT_ACTIONS}"
+				<h:outputText value="#{msg.USER_FINANCIALS_NEXT_ACTIONS}" />
+
 				<ul>
 					<li>
-						<h:link  title="#{msg.LINK_USER_ADD_FINANCIAL_RECEIPT_TITLE}" outcome="add_user_fiancial_receipt" value="#{msg.LINK_USER_ADD_FINANCIAL_RECEIPT}" />
+						<h:link  title="#{msg.LINK_USER_FINANCIAL_ADD_RECEIPT_TITLE}" outcome="add_user_fiancial_receipt" value="#{msg.LINK_USER_FINANCIAL_ADD_RECEIPT}" />
+					</li>
+
+					<li>
+						<h:link  title="#{msg.LINK_USER_FINANCIAL_ADD_OTHER_EXPENSES_TITLE}" outcome="add_user_fiancial_other_expenses" value="#{msg.LINK_USER_FINANCIAL_ADD_OTHER_EXPENSES}" />
+					</li>
+
+					<li>
+						<h:link  title="#{msg.LINK_USER_FINANCIAL_ADD_INCOME_TITLE}" outcome="add_user_fiancial_income" value="#{msg.LINK_USER_FINANCIAL_ADD_INCOME}" />
 					</li>
 				</ul>
 			</h:panelGroup>
-- 
2.39.5