From 3c4ca66e59d6fd5398722f4b400725b5fb689cf9 Mon Sep 17 00:00:00 2001 From: Julian Rother <julianr@fsmpi.rwth-aachen.de> Date: Fri, 30 Jul 2021 21:17:20 +0200 Subject: [PATCH] Fixed behaviour if an invalid password is set in admin view, closes #28 --- tests/test_user.py | 1 - uffd/translations/de/LC_MESSAGES/messages.mo | Bin 30572 -> 30646 bytes uffd/translations/de/LC_MESSAGES/messages.po | 14 +++++++++----- uffd/user/views_user.py | 4 +++- 4 files changed, 12 insertions(+), 7 deletions(-) diff --git a/tests/test_user.py b/tests/test_user.py index 3d5f53fa..962840db 100644 --- a/tests/test_user.py +++ b/tests/test_user.py @@ -194,7 +194,6 @@ class TestUserViews(UffdTestCase): self.assertEqual(user_updated.loginname, user_unupdated.loginname) self.assertTrue(ldap.test_user_bind(user_updated.dn, 'newpassword')) - @unittest.skip('See #28') def test_update_invalid_password(self): user_unupdated = self.get_user() r = self.client.get(path=url_for('user.show', uid=user_unupdated.uid), follow_redirects=True) diff --git a/uffd/translations/de/LC_MESSAGES/messages.mo b/uffd/translations/de/LC_MESSAGES/messages.mo index 3fb2252ba8b5eba1f3c47aa9ec52c6b5eef02364..df2fed3467524abc4c2f938fd07bb2cad81b9f2c 100644 GIT binary patch delta 4914 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 delta 4852 zcmdn?p7G5)#`=3gEK?a67#K7e85m?37#LDGK|BOrBgDYK&%nU2R)~Q?n1O*|uMh(R z8v_HwMIi<T9|i`78$t{WJPZsBs=^EmTnr2hM#2!jEtKyi%)r3Qz`zhH%)r3Tz`&3! z%)lVRz`&3#%)p??z);W7Ak4sE&%nU2NSJ}akb!~WkuU>8Ap--0hzLYun+O9#Gy?;} z6cGjnR|W=#4<ZZ<H4F?4W}*xX?hFhJn?)HIY8e<9ev2|NC^0ZFREjY$xG^v=%n@T? zkYr$Bcr3=iAjZJJ@K+4t5fO0)1`7rT1{HCTgX<X>V#Ogo%7D`O;t+*p;tUK93=9ly z;tUL|3=9m%q4ZgCh(j+!)v-!2Fvv16Fo;SpFo-fRFc?cPFi0~nFnCHZFbFa*Fr-Q_ zFmNz1FqBI`9MT{G3CZaa3=Dkr3=9mbB^VgE85kILNq}6$z;Fzz;i3e@VYi?LKa_w3 z?RThp7D-4@3P?i4RiU(zBm;vb0|SG-Bt(BDRJ=hF9OMkWk`M>2mt<h52gThENr=mj zN-{90GcYjRmSkX%VqjokmSSK?VPIg8lY+=MOEEC;F)%R9gwiXd7#I{77#OxoF)&zz z(t;EuDn+Cj7%~|c7(%2WalTI)V&O4qh=a~cGcX7+Ffd$`W~c`zuIJK_5cn?5z`zW$ zSOyY=>@o}tatsU%$}$iOoMa$rqD}^4P>&46L6c<|7_NfSkPHJu1p@;^g)9TZL<R<i zkFpSRn&lws=gToLC^IlHER%yo@hQ1_hyk~t0x#ttiRh;s1H)zp1_l{<h{6l<5T87d zha{>O@(c{(3=9lR3Xr&zQh@kK56ZV!faIoN1&GB33J?#LL*<(lAofnLSAfLHG6hJ` zolt;S#Gwe$D4@u|pv}O*Ag%~WgwBc(2Y4znFtC8KlOh8HD92_fLZYHbk%2*#fq`MN zA|&K?Dl#y*fTBhb61B2QkPvWHf|ysIsRT)M`AQH4RZ0*87AY|>$TKi7oKRu_=l2&% z3=A3!3=Hp;AQnj|LmXhK3`u-;%8-!qR)(aNXk`WlT?Ph*LS=~h`N|L<A5eyP@VqkE z-g<`XP>qiu0t}y&Awl(58R9ce6$S=<1_lOU6^Mn-Dhv#v3=9k&DqsT`=BYr^%t{rA zL)Jp+T`G_$Ij+LMAOs2l6^PGYt3b@<R|R>no`FG9m4QKpfq}tN6_TCeR2dkiFfcF_ zt1>WbWME+6P=lo2T~PY48pPl;Y77jT3=9l+)gbwrT^+)gQ-^rKLmlFv5Oqk@CaN<q zq%$xuEQHE)YA`UcgYv(q1|$*5YCwX>P=kRXpMinFL4$#zje&t-g9aqkn`=TG;;IR; z&`%R0o~p^fU<-1vCM2phYC@u7hbF|QCp01EUebi5iHDjD3|gQPUW<XD9+Y^rwIBwW zYC$wOYe5o+uNI^r3D$y?2fbR5G_XPo5)~J<AQoQJVqk~>g@hKw=Vsar3=#|s3{KjR z5Qx@>glvX3!~?b35C^qsGt`4CkEz-W3^PFa7plNo2jU<X9Y|0I=|Buf)`3`9p#zEg zdL2mIcIiMuWUdaRQre;eDF+yJAr7n3Wnh@Zz`$@>7otB+4^o8Z>eVwav@$R-%-3UJ zm;kE9^dZ@6n?58;F6c8bEM{O}c%lzU#T^C=3<eAg3@Z&Faed1G5<)D7kjlu;5Td`$ z5Tbs8Ap?UW0|UcBLr7i1Yy?S!E=G_L%&0el1a+<vB-<1lF)+MkU|{Gpf>bKy#*oxK z)ff^IGmRlZx5^melbyy440#L;3<r!E7(5sl81zjT7`#9wpa~?K9X4TLuwh_eIBf!n z3Jz0<eWIq2sH&GXg%m*QrVy8TnnDsut|`QV9#e>qCPVpaO(Cgyizx#`6axdp7gI>} z>~994SDQhCn%$g%A(erFVU{@qgBd8XSuilfFfcHfTR^JuDHaS2$3XS}EenVb7Ft5; zZ2>C=h7tw_hHxte24e;WhBH<WAA@QbP*Cz)LyG7?YX$~21_p)_Ylwlftsw>1Lu&?x zQU(SFb{j|$U26j=h^E>wFhnviFdVjFU`S+OV34&1(e(@r^|nxrwhRnMKpO2B7(h*; zGj@<fm}CzLfdYF-kagKZDwS#WkT~3A4@uSA?IDTsfIR~P6DY{-AyIG+N?)^wWXpT@ z3=F-D3=Hq=85o2>`M<^ylGyqkAqFjWgap+ZM@XD=IzcR!a)LNW%?V<Wi4!FC+dDzx zG{^~(h9aCG`8&@Ek|<|7K@#ahCkBRU1_lOcXGm_E?##eYpUl9(u*Ml0^ezkx4WOWR zf$(p*FfbG`FfhowLW<x?t_%#p3=9m1Tp=MK<_59Q$PMBU4>tw|Qw9cxXg7!hC%Qq( zlR0jXkXYsh@z6Rqi23{7p!uK89il<l9g?`@+#yABoI510o1yeFcSu2W(jC&Ydg2aA zq~F{jA@dh1&+P&6p_&II?O1z29O4C~Lp&fM9p_OGsi)IDAU<gEfMk>DPy?1g`8z!z zQE<!y5~P<rAU=}vgg8XW6H+dictX^rLg_+JNWoO=$-tloYQ%a%vh`t4NE&-s?+L1f z7#PaEAZcK_7sSP@y%-pDKy5-VNCEQP3lj92-jLRAtv4jZetSb4%;p1ekgyNL9BChj zhxC0QiO$IfQjP@qKypo(4<uLA*ZMFpgn$~MJ`kTU_(BX4@`c2elrICrD+UGzZC?h4 zDh37yF+T=|)eH;_6a64jW9tv`ae_YsgE<2OLykYh;wAnN^S1j#g8rmGq(r>z&%kg9 zRBrf#9ahh<JpiKMcmO15E(Smn)%yTQT(bs33{(h&G*FBKAq7=*AS9&fp>$s$ME%@A zNC@l*WMD7?l^=l&3;_%b4F3bc7BU0`K^+_fsx|8w7;=Ij4p<cgNpxF+7{E=dn?aC7 zaxVzt)8|2upyLXL<OaiF28K8W28P671_nP+5gZKB&mRKOXA%O58ru*^uJ8(h=xYdp z1pNk(I#B+<7XnEf&!Gy$LLokLgVLd)knENc3Q4RDp$rUG3=9l&Lm>v;2!#YSTNorw zNI+@jFo?Kb7{td8VGsxTgh4_mGK_(t9@K8n4TJc2Wf-L3Sr-Nga_(?QqLB-SI7lfR zQm-3^L*%`}Aw_I#IHX-r8V<2wUN|HqR)<3zcp)5;3;u;OFiZ#alp+`y4uJZU5e)U< zPGepqB*-cwAqF=^LPBI}BqYd>L_(_1*O3s1=tM!{(mD!K>v=~(>WnE-kVMNF4N1gO z(Gb2;G{m9C(F_bd3=9n3(F_dhKyAY4dPoqp$3R>@GX|1~mc>9UIvB&i;Kabda3Kbg zMucM_1&eGfM4wSC#AhzCkY;*xETp<^kA+0VkyuF3pNH~q$3hCMXR(k@=-c{ONSvz0 zF))}gFfcgBK`g3((oJy;47m&p3_WoWgMP(9Dl4{lNC@b}L!!hc9^&KBct{AwLgfqM z85mYEFfcU4LrO^P1c(PL6CnEP{SqLxTY3T{+chRYd^SA+V$sS3NL-#zfTWEt2@DLg z7#J7=6CnlBn?y*{Eh`D)Gv;JS!Nrx#z%Ub3-zP)b0~eDaxhN$C60+?n;BugzVOk2L zwu(%J^i*0>Ax*23sSFIx3=9mPQyCb7KnA5j%7?Brhy^Rs7#O@67#OamF)(;CFfb^l zL-KoeIwaA~ONS)tMd=WaEl+1)5Mg9s*qaVXtd}xC>gpL7erG@o{+|I+D4PjM3&xoY z4B4P&cqRjb9jKPfgjn=C6A~4sSrCUgW<m5#$$})}Rap@E%~=qS?9YNE=9gKJY%Gxt zG2bMcfk6S3{~fa-i6to;Qn}=2L#o}a*^q9uMh*kGS34<(fnfs!0|R$114BFm1H+zN zNHr>x2PvA9^B5Qc85kJu<uNdPVqjn}$cMCqlnWqDwV4GB3>~1Nw*ZpXY6}?{>OmtE zn+hS-?vX-BVq__TxLmOa;vnxLNIsri1c}pwMG&7v7emyQ7egGpu$Y0N5;SyE0^#?S zK+Iz-WnlOW8b>IF^s0r*AZhGa8G|2qpy5UtBuGA&K^mV7<&e0OFNXxB3Y0d0irbV! wg4(ehlIp$6A&EF>^G=~8&CTXEJ}gWI#+zFmGK?n2mFP?sC}7!aU0lrq07io`uK)l5 diff --git a/uffd/translations/de/LC_MESSAGES/messages.po b/uffd/translations/de/LC_MESSAGES/messages.po index 8860b6b4..cec4ea94 100644 --- a/uffd/translations/de/LC_MESSAGES/messages.po +++ b/uffd/translations/de/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2021-07-30 21:03+0200\n" +"POT-Creation-Date: 2021-07-30 21:15+0200\n" "PO-Revision-Date: 2021-05-25 21:18+0200\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language: de\n" @@ -1431,21 +1431,25 @@ msgstr "E-Mail-Adresse nicht valide" msgid "Display name does not meet requirements" msgstr "Anzeigename entspricht nicht den Anforderungen" -#: uffd/user/views_user.py:75 +#: uffd/user/views_user.py:63 +msgid "Password is invalid" +msgstr "Passwort ist ungültig" + +#: uffd/user/views_user.py:77 msgid "Service user created" msgstr "Service-Account erstellt" -#: uffd/user/views_user.py:78 +#: uffd/user/views_user.py:80 msgid "User created. We sent the user a password reset link by mail" msgstr "" "Benutzer erstellt. E-Mail mit einem Link zum Setzen des Passworts wurde " "versendet." -#: uffd/user/views_user.py:80 +#: uffd/user/views_user.py:82 msgid "User updated" msgstr "Benutzer aktualisiert" -#: uffd/user/views_user.py:91 +#: uffd/user/views_user.py:93 msgid "Deleted user" msgstr "Benutzer gelöscht" diff --git a/uffd/user/views_user.py b/uffd/user/views_user.py index 969b71b4..db2800a8 100644 --- a/uffd/user/views_user.py +++ b/uffd/user/views_user.py @@ -59,7 +59,9 @@ def update(uid=None): return redirect(url_for('user.show', uid=uid)) new_password = request.form.get('password') if uid is not None and new_password: - user.set_password(new_password) + if not user.set_password(new_password): + flash(_('Password is invalid')) + return redirect(url_for('user.show', uid=uid)) ldap.session.add(user) user.roles.clear() for role in Role.query.all(): -- GitLab