From bdb1502203e60a90a5110f784cde7025afd74d25 Mon Sep 17 00:00:00 2001 From: Amrasil Date: Wed, 12 Mar 2025 12:21:37 +0100 Subject: [PATCH 1/3] feat/OPS-36: add favicon to all sites --- senju/main.py | 9 ++++++++- senju/static/img/favicon.ico | Bin 0 -> 15406 bytes 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 senju/static/img/favicon.ico diff --git a/senju/main.py b/senju/main.py index bfefb1e..71e65a8 100644 --- a/senju/main.py +++ b/senju/main.py @@ -2,11 +2,13 @@ from __future__ import annotations from pathlib import Path -from flask import Flask, redirect, render_template, request, url_for +from flask import Flask, redirect, render_template, request, url_for, send_from_directory from senju.haiku import Haiku from senju.store_manager import StoreManager +import os + app = Flask(__name__) store = StoreManager(Path("/tmp/store.db")) @@ -60,3 +62,8 @@ def generate_haiku(): return str(id) else: return "Method not allowed", 405 + + +@app.route('/favicon.ico') +def favicon(): + return send_from_directory(os.path.join(app.root_path, 'static/img'), 'favicon.ico', mimetype='image/vnd.microsoft.icon') \ No newline at end of file diff --git a/senju/static/img/favicon.ico b/senju/static/img/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..33fa9a3e600e31306ecc1554921cf33fffd38ced GIT binary patch literal 15406 zcmeI3cd*n&636%I?oU)eK{4?ZML;$E(_!-~M)H`rAF-J>5O?VzEEP z{v6AlJEm<$tleK?v2w9kEF>u^IZVRH@A03&&z>^TlFCw2uza5hvek6ZyCO zqmSh40|#>Sv9Z7X{=4MlV{~oo@gIMbZ;u?29Up%z`#%3XZqDbQe_jrM`)%C2@c73D z4wRX*X338yPRJvVJR*BO`6TFHu3R};w|;%_9h%|se{0i5rca;l`ar*Na=NY{5|*FBQ= z*UIN#d?Cx0FPAM_w+7=^z4@lh(fJq;z4a=mwhuliZ60_)`uFc2&}ZCFKmY8$hvoN= zPMxIT9e2p&r=F7iUw-N4@6fShFdqJqVa19SrFrw_POiTE!FB1Sm&&WlmI?d}7%;%` z2@lYMf0Mthi9en`UAlIa2@@vB_U+r{<)usIuDkA%ewp~8-=s+shiB%@nX+%+zJPzm z@?ov6z4lu9?)&fE_t~>&OP@Y{0{V*=FP7Kectb{w9xY#e{dJb{;3`t2h)l~|vz|SB zO1pOL-1ruE-YLl6Xwio8e}C+l^w2S^9lyV^a;4MxLx&E@Ew|hvn>KCAGTv;^=1Qk! zY@}02<0XD3LqApZgMUi&$9injb@?McM%$PD*?cyh&n8Wu*11OimtTL4({rB}|M|=Y6`DHgxHI;!shUXbGW=QVbxn;vU?_~K6T#o-q zld}94o+laof3H{($v<=8huIJ6>Dt(yV{^05L4VAcF{ecTlTSa*Lf@zLsO~=(TyTNx z*s&vy&fIzPPV#?>>(AbjCr=(R`G34~r{lMu?z_ZMD^<_obC|{k#yjnE3l^N@f9%+} z_kJIHP9}eN&7VKN(?9mR0tE`Vd7)XSZe4k2<3?v^4I4I$qhs`0nK=LI=ux+an;cW2U#(g-S@^;W(oSuzQ|Hc7p+W_@@WKnFP@zJuEn2i_oDM9|codAp zESFt&S%8^$d|0#b8jB!G3Q%|doQ`$+ zx%{=)TrAz9MGNNx@q^zSJQ&FOU(Y=kU<51jL63^vc%!g4nC?R_ivH2>zLOiZFM7`S zV#SKZjWL|8MU$pYC2!um!Wer$|CwjpxL&<`%e?vX1%FYaMhz)mytq86_GtYQ(dRw> z-Q-Mu=3_phazHlptE+wh{tiXxU)cZpHewi}_~$p)3%vuw;+I}>w0JjiTLWMIrhlip|C${WbAaif`s41J-;sB;zW;uwd$zvlhVf+j_xFb$l8x#k zv32~lFGK5_h<|>^cN8vM*va?(4?YOyx3T0Tx7~J|<^ckpmJ9D(r{M*L(?H!s|CR%^=ZpG`bJ9^~&*I$3VTRZ%-&5<2__F()qJdhXL zI9lY1Uh})@Bkyhf!}>@66S@xm9NE!FXK%jwW+#J2jT*(RA@dP~AfL^fHwW_?{ZrLH z!^xfjjS?kF#O3%)HE-iR{4dx1-}+npGfZn1_AXJI9slTjL5(#_mMrONKmI&VO_}2M zTUg47yeIVES;rQ_!k3Svw$+@Wm?ALfY9X_bz5tDW4 z(#7S2IpIGY{9s$SaG^V2@bhBMyr?GepVGmvbI+Q)({c!BII~nEnedzUZ(M6Z+?N;eN@!r;49Et5>gHE+?ce z14e&dNsHMQ|tEIUERZ9eq_^M&*iDNV87&t%uDT+Gkf0Mp!Xl}OW-)FwN>s?fUQiKGLd$S z{HY(%=S=$_kZ@9IX~x^;7Yh1)J@u1!-p=QiI7w&5KHPxKpM^|22vc&mD zYT~cyUX0#!)Vn9d4`Aj49$1r~E6nzWR;`){}a|}`;MLxpP~EkFnGw2EdJ5=KZf7NTgyE7H_qI# zjqn~3#t;A0=+IZ2gBJW|zrO$R`-Gq0()uHEWBsYmAJ;v^@8kQQ(-ptLA8XCpb6#dX z8T_Nw{~-S;{V_T1)U#alnsww(7yB!=K+QZXJNj`31An)l#`u%LAG+})XDUq#Qr1`jkfIJ-iI{&=2~;iooF3;<^Ak9Zy|$Q9obH6L?= zllz4D9C&36eh*%K`uHE#7wq(_Qnjkfd!WY{pQl!>T1Bo$GW_5pE<=ZjB~6~#0Cz4E z;RhqX5i?*zV2QF{-~V&|#=eT~aNbW{;%>eFNPf?~O5zEhcY98TpFWmP`LaN#$P>f( z(O1sIP0zWTf&T=5j|ls9{wGua6UA>fm*EY!+2N-@=SY?(!3TLHxs%NWAIK6P#Carl zin$|29(LVz*E#%s`u5GDKa8>ZNuvGBXe4S=!H--Asa@I{fYW>f?GlZJ&|~vK?6>fX z?pS_HJb|zBaUg#?gXAt6e%k*%mFHCOGY@C1wwL0M*dut4t@c;n2>!}?2bvb#W-IWF z{&43aY`@O`WY(|npSv|~Cbr?e34M`GSVzM=rHUUrAg%xl{%xM#J+k?a>3O-)g|AI| zW;^TYr=9)LmoeOF4(qZX{}7W@RsVDEefPQg9(Muo*Tm_>w%9Z_9Ofrg{EXv#+~Qkk zaUVJ?5BpC4l^W+JvtQ(2A~XLo-Lw{-(L;PSYgth5(~v7|eD~crnyKOk7y4>7aMN$DfyH{-?m|BV9F@4BM~2f7SHrZ|EiZ%Kuc%)fj*~{xkIcJ2inYjdbucmYR+E z6y!E3!Cg#vB}X>D%bj?;V{aIo{buSn4Q@;zfBiE@pNTfYtvKwJLmb(@#p0` zHf(-~*wlQM_4EDDnXW$@O` zD}UzW%-HagOA_~n<{>>1MEJJtQYy5@rRw`k5a+x_emE&_igdT{9g=lgOACd7ya42XOH`z ztZ*N`lRwxUCHz5sT_3x9>d%wibGrChWByNzyMkez&yJS;4u0w*#BTgw67?f&J16s{ hi{CK(x3vEY_{m+l!*MQtxcj5mgU Date: Wed, 12 Mar 2025 12:47:54 +0100 Subject: [PATCH 2/3] feat/OPS-36: fix line length requirement --- senju/main.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/senju/main.py b/senju/main.py index 71e65a8..e6dc95a 100644 --- a/senju/main.py +++ b/senju/main.py @@ -66,4 +66,5 @@ def generate_haiku(): @app.route('/favicon.ico') def favicon(): - return send_from_directory(os.path.join(app.root_path, 'static/img'), 'favicon.ico', mimetype='image/vnd.microsoft.icon') \ No newline at end of file + return send_from_directory(os.path.join(app.root_path, 'static/img'), + 'favicon.ico', mimetype='image/vnd.microsoft.icon') From f60120245e083d09c6ede7773619bc2f0ea1728d Mon Sep 17 00:00:00 2001 From: Amrasil Date: Wed, 12 Mar 2025 13:03:26 +0100 Subject: [PATCH 3/3] feat/OPS-36: fix line length requirement (again) --- senju/main.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/senju/main.py b/senju/main.py index e6dc95a..35a9b27 100644 --- a/senju/main.py +++ b/senju/main.py @@ -2,7 +2,8 @@ from __future__ import annotations from pathlib import Path -from flask import Flask, redirect, render_template, request, url_for, send_from_directory +from flask import (Flask, redirect, render_template, request, url_for, + send_from_directory) from senju.haiku import Haiku from senju.store_manager import StoreManager @@ -67,4 +68,5 @@ def generate_haiku(): @app.route('/favicon.ico') def favicon(): return send_from_directory(os.path.join(app.root_path, 'static/img'), - 'favicon.ico', mimetype='image/vnd.microsoft.icon') + 'favicon.ico', + mimetype='image/vnd.microsoft.icon')