From af745f5f3f92adc21b1b8f586f5a5ed34b6697b3 Mon Sep 17 00:00:00 2001 From: Andros Fenollosa Date: Thu, 11 May 2017 23:51:06 +0200 Subject: [PATCH 1/3] Optimize generate forms edit contact --- app.py | 12 ++++++---- book.sqlite | Bin 0 -> 20480 bytes templates/web/edit_contact.html | 39 +++++++++----------------------- 3 files changed, 18 insertions(+), 33 deletions(-) create mode 100644 book.sqlite diff --git a/app.py b/app.py index 9ef1de2..c7fb3e6 100644 --- a/app.py +++ b/app.py @@ -55,8 +55,13 @@ def edit_contact(id): :param id: Id from contact ''' - form = ContactForm() my_contact = Contact.query.filter_by(id=id).first() + form = ContactForm( + name=my_contact.name, + surname=my_contact.surname, + email=my_contact.email, + phone=my_contact.phone + ) if form.validate_on_submit(): # Get form name = form.name.data @@ -79,8 +84,7 @@ def edit_contact(id): flash('Error update contact.', 'danger') return render_template( 'web/edit_contact.html', - form=form, - my_contact=my_contact) + form=form) @app.route("/contacts") @@ -108,8 +112,6 @@ def search(): def contacts_delete(): ''' Delete contact - - :param id: Id from contact ''' try: mi_contacto = Contact.query.filter_by(id=request.form['id']).first() diff --git a/book.sqlite b/book.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..8cc4546f19af9bb7c5253e98f89a9937135fdc9b GIT binary patch literal 20480 zcmeHOYiuLebtXlLk|>F^y_RKJmY4Qg7HN6NxpU{aT6rmPwbJUbyOw0H*N-?Oa#ozx za7G!DD{_mVaFU`x;5J6lqGi=a)@^hbcA zMOwJu8B!8gqU;n6P&A+b?MkFB@44rE=W)L|XY;u=yJ{tGd4AcfCVA+-P&gdQC6l30 zXcymo_&)dwgZU+_Qu{$XFcq0GpABZ+?x^~8T1ivKwA_J=L#zTeeAR|8!QbT!b` zKvx4@4Rkfo)j(GRT@7?K(AB`tNCU4w7w#XMoD6@WRyDUBtKhj+vrw%Z{NIz`Se)Nl zOm59DtSu%FUQMQAgLW}_b0%p)#umNo=L_AU9)T@Uzp#>FVAnJbTNI; zo0Xb>&-+Xi)3nGco3?YfN@~5jSMuDW&yt#ddVS-{`uxVtEh58`jdKOWD=2S(l=`OL`X$msBU!@oQ14rhnnANs4IH;1-{&cyyU_B*jsOdNcF z@UI7db#QI)k%9LH{$OBl;KD$p|IhnB*}vQ$iT-8u_2@=)qVETNf7rL*x73&DeY^M9 zdSB^HM&673Uc`^+k)ED!_56B|)sqSTYxs}CmGHCSMCk8AUm#HqzGfGrq0zI7vTpi~ z4X^0iJ2mU>p6ORSx3XusZX@TLjm)-vmkGM42@>N16S-bDBuUq#OISR{ve(U;vt(AS zO4TfzzG<*r!z_7Trr?!RvL>cAT@f@*<8@h6g*?_wWY29hO!tQAR4u=9+bg-6nk$)Z z#d2wpC@Q)vVFxbrg=lDO)JU(G1#f%ZteO?KQN$X{baN%IN;akyOkk=ah@1V_&QaxOy_`*IM>` z*V=9VvTxyMKeul?(2h_j)%-#!IHS&ZnloA8I+x}y;(X&5l@+gIt=omp{p=A0+&W^-S zDTbKlvMwl!%7nRS=*&2qnlCq&Out~8+qccaF2u}j``*4w1~e2dD7r4lqQtZd(a^-C zF||$~YdJR{r)`!iWzTUM!Gd<(s*);5Tox1#bIf9&34w3f<;4nMa@Q<4-VSVWWN?G4 zY3w2BlA_jiS>=*^9%mYzo4Vw=rc+$TX5~OJ;KQmVYd_aCX`m4%36d-cT-0>kz^ZXW zn6H!^tFZ+yhaw6dFm@Z^ppq-qiZ~ywnvtcHnARl`3Y3{5DLPh;F*ffOeQSRidTSK6 zO~=6xN9qHfCFl;SlXXL?b5)l#T4tPEsgdOa$ZVT_6^;N*w<|PcrtiX$Mx8X&$yVJ6`CX0d!iyN{k)kPV$JFk#K%(6@7zI)lX z5O3T7F=lY?_I(*Q1P)^uifYsu*L6*n39ic2X4Tq*``FfU&97AVJ$J|Q?Ry+V(zu}N zj1DYw4(pE|TAw_z7{JZ3bg6wqU6BO?9&f0sep$kzv2|quK2`MG8zlt57Aj!|%dzj8 z+g7zi-VtD_32;f01(*^TWvnhqnyjmgMAoJcMZQ{dt-IwW5V@4Az-3F;U0R-!xs+Bl z99rR0Mx$>G5NEIN7m2=GUHvO?-C>h`r-x9Aw%REaSF*`l)x|`-56ACf$ zxlY+^z=hi)N6OF*IIk!u%wQKXIOO=!RNij@XU?UXTOe`B{k^@C8HbnuB0gg|NOPx9=ybnxL!jC>1{c3_+X=8{W3%SJyoso>XYK z)sk(>{Adr^&=B54fy=U5S0U;QRB=X`qL{sAS+@hc-fKDfD@jxYCMnYV)7WJq&*y7! zhsOL)&GvokwpS_D%xcLio0Z(Qxoi1C(KefEXPTN;4M|X8u)4@}oz0~wUd(1&fdY<& zum;B<*jaAba^NLLAwW@hMpN|+)0hODGCiMyVkVdP3OVk&T_r;}`;NKqTW-P1705RM zU%~W!uMwmTCWwe^GM$2J5W)n82H@PW-0Q%ewMRHW#<9&@(GJ3020BE@$uO>D zBsg{*4yMYpPm!Jt-V6vU7UdZTZC5I0GurJFnghrwnvS#U0@tvZ%kZ@MDZ<3&xiw_^ zirHB5Z5(0;qFPl-cW|9t+4Fo$C>I>Fwo`I!H)FfEJcKY+(L_mCbnQt3#>MmkBy9pC z@Nfb>6k)Z)g8}S@pmTtPb5%MAOONvG79!9M&nrS?)2S6;vcoKvGGrqy!n1V)IYgJa z@kEd@l|b3cP%Wib7z=Vi)WbN9P@rKm5u0h6Q5Qu-PVsRpoe&*}SOWYXNmA15x}wOUcov!+ z&8G86JC@~M0{&bCz&i-;ZDQ(3(yDGCxobx5F>E)!Dg=r|^?)6U<{i6O_I&s#Fjy{> zQF*umy&CK~!&pj9b4}GCw!)+flVr_V*2;YAR?&9N+rUxTHcNq3j#SG8$q)q*1p-r< zT1TK@kCH2~sb-j8fK_grl``_VyVGtF%ehM!9;J3$)aQ(KnrH>e<}+}TEzwSxq9 zRK9TJO9^%tMI_8euwar4D_)~uAtnR|E47S>thZCLf?T2^R~kBG(-0MOP1nXrH@xX& zSKJ-nELZJYw@kOewe~Z?9}v(bK~r?KE{VFKJq(bY%VyX8N@fiJOD@1cJh!lG`@8Kz zq9V&MS%GUyN*(c>Yh&1PLK7~L36{M*vhqw({j5PAH{)C%;u?g80k2V_0Zy$kr=&AEZv zghRL10aw{T)-@DSdyr7a`6hfH3vXE4+f6rSQqBxSX{Ih+CVL=+QX~LeW%&$p{RErd zq(85g%$25JA$r}hT}3>?Y>MhZl!Cy3A!QzbsAFuJ^43kS7G&mvOF1uxpuZCY9SH$f zmkhv6)#vUfrOxqH6Txu-?wee{bPy<@r+aXgLWoE+q*&mG*O94V)B6Yo8e8yd1?#$p zk`-lI6~S^>z9$XA{bdclC?d}2O5FgG5~Ncty>VE$?xJ$BiVXzV#?j#rnQ<~r!nckh zCQdE_t;blwN_7%!6o`D|mH^I+~^f zuyO`kQtM1L40VVkR#vpAxn{8J1Yu=u9x6t}5(j5wQ3)Ui;bzRP= zvYt^@QLS^%Bz+)QDqKOnvYchFxMS@iaWrrxKniU4G)2|vHX|sa1hG|3=|>eL2vh5R zW`%-WBe_{9xt5K{?g#gfqsV~U4^pNE7uT2^B`h#T5MQtPxB}j}^l5cOQEHWl2RTBCWZ zlvI{6xREiS7T!ZaKwx>(t|EMFBHrvaOMycZrZjG(6a5V9ip+6b;$AQm})S~l=-l1!Q;>coRcjQa)uMT}D`c&-GeQ)%=aljmO|Lp8`?3}rqZSqc*?f;&i14d>|YB!D#l_u$cPAElLaHLCbvU5;|wYb3>f z8T1%9vZ9yU@vR-tZ_s8Rp(Rzj>{Uw*Sv*?u>eG>%;a$6oD$;47fAmM4jm(A3GUfBu1xVQTpr%0nt?`H!-Ztytp>`mmn+vXQv}`l@NaEdY zS$?So4IQa%LAP7P!vR}{wQKbHF4W*RT*Ww&cr`#M zk;W}l9KE$d+xgyhaDQsjqD})BDWRo#;vue(nr>USZUL_xEc?-|bD69K?SYkOn2ve$ zu}idL>)HUx?VTe{U8Xgio)0XNLQeAkmk4^KihBtDJZ;dK$zLE-9H;8%>6{u$@JJ7S$O=1+!QNAcB7hK^6(vnGU}Y0O%O&Jxf?QjnzI+AJ&<= zHb`qH$!VQdbS9rQI_9Yavr5PhlyH(hR>*XnxM7)g>&yW2CnM_zYD0wVO!G>FFuHyr zFx<=FGE(g^qE;jkPa$Ko6hPZ}fRlV{CWwY7X;pz<@4%ftLx=9fkj|WqSdx9{1oauX=Ams1N${jLZ2YE9wz*DB(BB?ByD&+&PzQ+De;4;r%@7x2!^7055e?c;Q1%Gqcij} zl@Rw*L=QCMOOr1?P6ORf@^@r;?xS})(l`lvrz2Gpe=IT|KAnvjAry7yT87EjI*}`g$5a<_fFwC1_-dn8H|3?-ASS%N=83HMDzuUK0z|{lEpuOM2OJF$Ekvz ziOAgGX;i=n{5>Czg%aOP{6^yD&*b_4FZJj8!_jXGm4@T=W`rn+MQt(rq4S)_dLNfo}7_&v)}c_xXSK`G5EMKRA)@^Z)Mif9kaDKL1C1 zX!rSl_xV5CtWUf2H=qBjx+sfu|4$CQ8%q2|;*G>c;!OPA_!r`Kd}`!}BY!-yKe9ZM z82;|?=ZDSVr-%My=xalt99kKADE6(`o3V{pa`1bDUmV;W%nbY|KA`*6)j(GRT@7?K z(A7X!16>XLA8X(V3*C@sX2wkVD&8s{dxBmpqRm$HDcXtLY-pYlK z(9oH|*3o$E-nFgEHp)=HbN5gRb98CRpfN*P#z2dx&%R2H%siX-YJSzV8tC4)+&#~) zcIYv}kXi<_H)xqvIVOQLap@HZJ9)D?A#yM__|r8Z(S!j0OfV8!_tEH&VL1jPah2VK z)MLtYFcNbO&o(Qa`kPXk!Gmsk9V1WkFOpfWWHIPSjaLgaz45`lPeIqe3QUTUD%WA$ z>c7y8~v?g=?d4lik z)Jn6*C*PW;I;EvbRV1vEGw>Ys{1#S@&Sh6IyNkY|>zI-|t=S4gqZr{0CNqsX=2}#B zlX}uI{1Nm(1?TJ7i-qYi%r#&Z2Cdh1)eyA}0xwD1Y|mN%3OzUICp+1!g`qmk-~ctS zr0^V!I3b+7N;7gRt=WrXeO#Dg5;5K=GE7!pkA@x}69fznf2@YS71!FNIo#t-Ug##z zsD_HMK|n>6j0@Mu?sLFpFq=Am$MVr;-?;}Y#h9E1#4tf6YrvVpwX38QrZfloXfCF5 zvPTS#pwcL=f*=B<$T~(77S_pztLau0*{qtks9mfXy-w{ULkz@(CLn;Ge@WzP(CiqW zKG5t6wcB;*GfQErDQy^-Zoyo(z6yykHMAKtvNs2oJM^HXG?8Kc26KptCSx7~?d`@2 ztu(TE#GZ!JTp5fMoaj=+*kUl5avqpMz?y8_RcT%Dq6qk|ywAzf?+h8lv29E{ZI z%M>v+7L3ST!VEd#r$c`mCW0{;gYi`i9n~4;pA~rtY92=*Xh!-~n!fWpb-<;VE@4~+ mdtxN(!exvo;G~Bm3iH8GTjvHjjBCK5#f*;e+`5c$y#EIAy8hDu literal 0 HcmV?d00001 diff --git a/templates/web/edit_contact.html b/templates/web/edit_contact.html index 5842ef0..dd177fb 100644 --- a/templates/web/edit_contact.html +++ b/templates/web/edit_contact.html @@ -4,34 +4,17 @@

Edit contact

{{ form.csrf_token }} -
- {{ form.name.label }} - {{ form.name(class='form-control', value=my_contact.name) }} - {% for error in form.name.errors %} - {{ error }} - {% endfor %} -
-
- {{ form.surname.label }} - {{ form.surname(class='form-control', value=my_contact.surname) }} - {% for error in form.surname.errors %} - {{ error }} - {% endfor %} -
-
- {{ form.email.label }} - {{ form.email(class='form-control', value=my_contact.email) }} - {% for error in form.email.errors %} - {{ error }} - {% endfor %} -
-
- {{ form.phone.label }} - {{ form.phone(class='form-control', value=my_contact.phone) }} - {% for error in form.phone.errors %} - {{ error }} - {% endfor %} -
+ {% for field in form %} + {% if field.label.text != 'CSRF Token' %} +
+ {{ field.label }} + {{ field(class='form-control') }} + {% for error in field.errors %} + {{ error }} + {% endfor %} +
+ {% endif %} + {% endfor %}
{% endblock %} From 47e3f5f6217632814ae791c0bbb68c150452f4a0 Mon Sep 17 00:00:00 2001 From: Andros Fenollosa Date: Thu, 11 May 2017 23:52:55 +0200 Subject: [PATCH 2/3] Add gitignore --- .gitignore | 1 + book.sqlite | Bin 20480 -> 0 bytes 2 files changed, 1 insertion(+) create mode 100644 .gitignore delete mode 100644 book.sqlite diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8aafa25 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +book.sqlite diff --git a/book.sqlite b/book.sqlite deleted file mode 100644 index 8cc4546f19af9bb7c5253e98f89a9937135fdc9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20480 zcmeHOYiuLebtXlLk|>F^y_RKJmY4Qg7HN6NxpU{aT6rmPwbJUbyOw0H*N-?Oa#ozx za7G!DD{_mVaFU`x;5J6lqGi=a)@^hbcA zMOwJu8B!8gqU;n6P&A+b?MkFB@44rE=W)L|XY;u=yJ{tGd4AcfCVA+-P&gdQC6l30 zXcymo_&)dw
gZU+_Qu{$XFcq0GpABZ+?x^~8T1ivKwA_J=L#zTeeAR|8!QbT!b` zKvx4@4Rkfo)j(GRT@7?K(AB`tNCU4w7w#XMoD6@WRyDUBtKhj+vrw%Z{NIz`Se)Nl zOm59DtSu%FUQMQAgLW}_b0%p)#umNo=L_AU9)T@Uzp#>FVAnJbTNI; zo0Xb>&-+Xi)3nGco3?YfN@~5jSMuDW&yt#ddVS-{`uxVtEh58`jdKOWD=2S(l=`OL`X$msBU!@oQ14rhnnANs4IH;1-{&cyyU_B*jsOdNcF z@UI7db#QI)k%9LH{$OBl;KD$p|IhnB*}vQ$iT-8u_2@=)qVETNf7rL*x73&DeY^M9 zdSB^HM&673Uc`^+k)ED!_56B|)sqSTYxs}CmGHCSMCk8AUm#HqzGfGrq0zI7vTpi~ z4X^0iJ2mU>p6ORSx3XusZX@TLjm)-vmkGM42@>N16S-bDBuUq#OISR{ve(U;vt(AS zO4TfzzG<*r!z_7Trr?!RvL>cAT@f@*<8@h6g*?_wWY29hO!tQAR4u=9+bg-6nk$)Z z#d2wpC@Q)vVFxbrg=lDO)JU(G1#f%ZteO?KQN$X{baN%IN;akyOkk=ah@1V_&QaxOy_`*IM>` z*V=9VvTxyMKeul?(2h_j)%-#!IHS&ZnloA8I+x}y;(X&5l@+gIt=omp{p=A0+&W^-S zDTbKlvMwl!%7nRS=*&2qnlCq&Out~8+qccaF2u}j``*4w1~e2dD7r4lqQtZd(a^-C zF||$~YdJR{r)`!iWzTUM!Gd<(s*);5Tox1#bIf9&34w3f<;4nMa@Q<4-VSVWWN?G4 zY3w2BlA_jiS>=*^9%mYzo4Vw=rc+$TX5~OJ;KQmVYd_aCX`m4%36d-cT-0>kz^ZXW zn6H!^tFZ+yhaw6dFm@Z^ppq-qiZ~ywnvtcHnARl`3Y3{5DLPh;F*ffOeQSRidTSK6 zO~=6xN9qHfCFl;SlXXL?b5)l#T4tPEsgdOa$ZVT_6^;N*w<|PcrtiX$Mx8X&$yVJ6`CX0d!iyN{k)kPV$JFk#K%(6@7zI)lX z5O3T7F=lY?_I(*Q1P)^uifYsu*L6*n39ic2X4Tq*``FfU&97AVJ$J|Q?Ry+V(zu}N zj1DYw4(pE|TAw_z7{JZ3bg6wqU6BO?9&f0sep$kzv2|quK2`MG8zlt57Aj!|%dzj8 z+g7zi-VtD_32;f01(*^TWvnhqnyjmgMAoJcMZQ{dt-IwW5V@4Az-3F;U0R-!xs+Bl z99rR0Mx$>G5NEIN7m2=GUHvO?-C>h`r-x9Aw%REaSF*`l)x|`-56ACf$ zxlY+^z=hi)N6OF*IIk!u%wQKXIOO=!RNij@XU?UXTOe`B{k^@C8HbnuB0gg|NOPx9=ybnxL!jC>1{c3_+X=8{W3%SJyoso>XYK z)sk(>{Adr^&=B54fy=U5S0U;QRB=X`qL{sAS+@hc-fKDfD@jxYCMnYV)7WJq&*y7! zhsOL)&GvokwpS_D%xcLio0Z(Qxoi1C(KefEXPTN;4M|X8u)4@}oz0~wUd(1&fdY<& zum;B<*jaAba^NLLAwW@hMpN|+)0hODGCiMyVkVdP3OVk&T_r;}`;NKqTW-P1705RM zU%~W!uMwmTCWwe^GM$2J5W)n82H@PW-0Q%ewMRHW#<9&@(GJ3020BE@$uO>D zBsg{*4yMYpPm!Jt-V6vU7UdZTZC5I0GurJFnghrwnvS#U0@tvZ%kZ@MDZ<3&xiw_^ zirHB5Z5(0;qFPl-cW|9t+4Fo$C>I>Fwo`I!H)FfEJcKY+(L_mCbnQt3#>MmkBy9pC z@Nfb>6k)Z)g8}S@pmTtPb5%MAOONvG79!9M&nrS?)2S6;vcoKvGGrqy!n1V)IYgJa z@kEd@l|b3cP%Wib7z=Vi)WbN9P@rKm5u0h6Q5Qu-PVsRpoe&*}SOWYXNmA15x}wOUcov!+ z&8G86JC@~M0{&bCz&i-;ZDQ(3(yDGCxobx5F>E)!Dg=r|^?)6U<{i6O_I&s#Fjy{> zQF*umy&CK~!&pj9b4}GCw!)+flVr_V*2;YAR?&9N+rUxTHcNq3j#SG8$q)q*1p-r< zT1TK@kCH2~sb-j8fK_grl``_VyVGtF%ehM!9;J3$)aQ(KnrH>e<}+}TEzwSxq9 zRK9TJO9^%tMI_8euwar4D_)~uAtnR|E47S>thZCLf?T2^R~kBG(-0MOP1nXrH@xX& zSKJ-nELZJYw@kOewe~Z?9}v(bK~r?KE{VFKJq(bY%VyX8N@fiJOD@1cJh!lG`@8Kz zq9V&MS%GUyN*(c>Yh&1PLK7~L36{M*vhqw({j5PAH{)C%;u?g80k2V_0Zy$kr=&AEZv zghRL10aw{T)-@DSdyr7a`6hfH3vXE4+f6rSQqBxSX{Ih+CVL=+QX~LeW%&$p{RErd zq(85g%$25JA$r}hT}3>?Y>MhZl!Cy3A!QzbsAFuJ^43kS7G&mvOF1uxpuZCY9SH$f zmkhv6)#vUfrOxqH6Txu-?wee{bPy<@r+aXgLWoE+q*&mG*O94V)B6Yo8e8yd1?#$p zk`-lI6~S^>z9$XA{bdclC?d}2O5FgG5~Ncty>VE$?xJ$BiVXzV#?j#rnQ<~r!nckh zCQdE_t;blwN_7%!6o`D|mH^I+~^f zuyO`kQtM1L40VVkR#vpAxn{8J1Yu=u9x6t}5(j5wQ3)Ui;bzRP= zvYt^@QLS^%Bz+)QDqKOnvYchFxMS@iaWrrxKniU4G)2|vHX|sa1hG|3=|>eL2vh5R zW`%-WBe_{9xt5K{?g#gfqsV~U4^pNE7uT2^B`h#T5MQtPxB}j}^l5cOQEHWl2RTBCWZ zlvI{6xREiS7T!ZaKwx>(t|EMFBHrvaOMycZrZjG(6a5V9ip+6b;$AQm})S~l=-l1!Q;>coRcjQa)uMT}D`c&-GeQ)%=aljmO|Lp8`?3}rqZSqc*?f;&i14d>|YB!D#l_u$cPAElLaHLCbvU5;|wYb3>f z8T1%9vZ9yU@vR-tZ_s8Rp(Rzj>{Uw*Sv*?u>eG>%;a$6oD$;47fAmM4jm(A3GUfBu1xVQTpr%0nt?`H!-Ztytp>`mmn+vXQv}`l@NaEdY zS$?So4IQa%LAP7P!vR}{wQKbHF4W*RT*Ww&cr`#M zk;W}l9KE$d+xgyhaDQsjqD})BDWRo#;vue(nr>USZUL_xEc?-|bD69K?SYkOn2ve$ zu}idL>)HUx?VTe{U8Xgio)0XNLQeAkmk4^KihBtDJZ;dK$zLE-9H;8%>6{u$@JJ7S$O=1+!QNAcB7hK^6(vnGU}Y0O%O&Jxf?QjnzI+AJ&<= zHb`qH$!VQdbS9rQI_9Yavr5PhlyH(hR>*XnxM7)g>&yW2CnM_zYD0wVO!G>FFuHyr zFx<=FGE(g^qE;jkPa$Ko6hPZ}fRlV{CWwY7X;pz<@4%ftLx=9fkj|WqSdx9{1oauX=Ams1N${jLZ2YE9wz*DB(BB?ByD&+&PzQ+De;4;r%@7x2!^7055e?c;Q1%Gqcij} zl@Rw*L=QCMOOr1?P6ORf@^@r;?xS})(l`lvrz2Gpe=IT|KAnvjAry7yT87EjI*}`g$5a<_fFwC1_-dn8H|3?-ASS%N=83HMDzuUK0z|{lEpuOM2OJF$Ekvz ziOAgGX;i=n{5>Czg%aOP{6^yD&*b_4FZJj8!_jXGm4@T=W`rn+MQt(rq4S)_dLNfo}7_&v)}c_xXSK`G5EMKRA)@^Z)Mif9kaDKL1C1 zX!rSl_xV5CtWUf2H=qBjx+sfu|4$CQ8%q2|;*G>c;!OPA_!r`Kd}`!}BY!-yKe9ZM z82;|?=ZDSVr-%My=xalt99kKADE6(`o3V{pa`1bDUmV;W%nbY|KA`*6)j(GRT@7?K z(A7X!16>XLA8X(V3*C@sX2wkVD&8s{dxBmpqRm$HDcXtLY-pYlK z(9oH|*3o$E-nFgEHp)=HbN5gRb98CRpfN*P#z2dx&%R2H%siX-YJSzV8tC4)+&#~) zcIYv}kXi<_H)xqvIVOQLap@HZJ9)D?A#yM__|r8Z(S!j0OfV8!_tEH&VL1jPah2VK z)MLtYFcNbO&o(Qa`kPXk!Gmsk9V1WkFOpfWWHIPSjaLgaz45`lPeIqe3QUTUD%WA$ z>c7y8~v?g=?d4lik z)Jn6*C*PW;I;EvbRV1vEGw>Ys{1#S@&Sh6IyNkY|>zI-|t=S4gqZr{0CNqsX=2}#B zlX}uI{1Nm(1?TJ7i-qYi%r#&Z2Cdh1)eyA}0xwD1Y|mN%3OzUICp+1!g`qmk-~ctS zr0^V!I3b+7N;7gRt=WrXeO#Dg5;5K=GE7!pkA@x}69fznf2@YS71!FNIo#t-Ug##z zsD_HMK|n>6j0@Mu?sLFpFq=Am$MVr;-?;}Y#h9E1#4tf6YrvVpwX38QrZfloXfCF5 zvPTS#pwcL=f*=B<$T~(77S_pztLau0*{qtks9mfXy-w{ULkz@(CLn;Ge@WzP(CiqW zKG5t6wcB;*GfQErDQy^-Zoyo(z6yykHMAKtvNs2oJM^HXG?8Kc26KptCSx7~?d`@2 ztu(TE#GZ!JTp5fMoaj=+*kUl5avqpMz?y8_RcT%Dq6qk|ywAzf?+h8lv29E{ZI z%M>v+7L3ST!VEd#r$c`mCW0{;gYi`i9n~4;pA~rtY92=*Xh!-~n!fWpb-<;VE@4~+ mdtxN(!exvo;G~Bm3iH8GTjvHjjBCK5#f*;e+`5c$y#EIAy8hDu From 7978bfcdb39a7734b554526e5c6c1b5ce6822c17 Mon Sep 17 00:00:00 2001 From: Andros Fenollosa Date: Fri, 12 May 2017 00:23:01 +0200 Subject: [PATCH 3/3] Fix position buttons --- templates/web/contacts.html | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/templates/web/contacts.html b/templates/web/contacts.html index fc0df3b..ff4aa6e 100644 --- a/templates/web/contacts.html +++ b/templates/web/contacts.html @@ -21,15 +21,11 @@ {{ contact.phone }}
- -
-
- - -
-
+
+ + +
+ Edit