From b2d66e561e1ad7f67548588b24e298ebc0eb71cd Mon Sep 17 00:00:00 2001 From: hhokawa777 Date: Wed, 29 Jul 2020 23:35:16 +0900 Subject: [PATCH] modify deecay's Excel & CSV query runner for compatibility with latest development; add excel logo --- client/app/assets/images/db-logos/excel.png | Bin 0 -> 8001 bytes redash/query_runner/csv.py | 87 +++++++++++++++++++ redash/query_runner/excel.py | 89 ++++++++++++++++++++ redash/settings/__init__.py | 2 + 4 files changed, 178 insertions(+) create mode 100755 client/app/assets/images/db-logos/excel.png create mode 100644 redash/query_runner/csv.py create mode 100644 redash/query_runner/excel.py diff --git a/client/app/assets/images/db-logos/excel.png b/client/app/assets/images/db-logos/excel.png new file mode 100755 index 0000000000000000000000000000000000000000..80715081f6ae209958cf1a1f4e8e38f396689a64 GIT binary patch literal 8001 zcmb_>bx_=~x9=AzTC7-cEACdjP-J0ocPZ}fzCcTXqKg&R;tLd5w2Kxgw73+?0xjv`oa7`YIXRz`SWR_BJRC|K008j7O7hwOfb!Ht0kANhDpRit zI{?7<3DPz6(YExb_waJJb9Aw#_X+f{rMC@meCiBX*v~S_ppr;bcod7HMYW(G`g_!- zKUNsMO!b^SZ#(DW+|2CU0QyA}#HU0kDk_TAabNc+br2q~o*Oq(3~$nwtXuT@lt(us zUFX*oHFkM>k5hNZyNMhe8{+p=9ecK4*CD>SK8SZH+3h^BR1}rm;N|EPHCn_ zBF{p^>DDF6$d>H`+JZU0arH1*G+*}h6wsW(PLX3vkLjn@;dvU;*A3rF^gFu<*Mc`K z$it0ALk&r~%&|D{d?o6}#H#Zf3y|lgM-G7uJ7|iRZW#Ec`3J5aT26?(x;sz4OqWL`?g7zZeDFDcE7-p5ed=j{Z?z4Kut6J#XwrvK+e z1dLBuZ8#5!8Lx5Kbt*t*89{OV11Wp*@q`;R#kogB9ds$TC9PtW;Uq0r{wdyM?cs`R z)J3<>i=D9x4dNp1-}AYI3U1^tJVWOWtoHS%ZyqnNmSZ1QiO+>~GLcd3B>$*s4QnNP zHKS^pC@+lXFJ}@nk&(;YxGtUo`;68J=6+}Pu-4NoTWr3^Co{DE1SP?b(Q1_IhXb32L^y}bL@ zW~nm7bL(PfO86~5PwE5jl%}hlDOfPC6Izh|f}VvjFuxWy#-4(d@ikZm_{7Y~(zxRIpB zui#^h)mUmXaI+dvle7nt56XpR{+83m5#{<`sYFCOf#(uR!|ffpfW$e-Uv^>!*h?Y4>A(2=%Y!e1?{ zWcBw>Q=ot~5RW0!uP?>sMirL)(5BvVONC+YOfWid_WqN2scEv` zalELJv3o7!;loDEOPI5?UsIt2?at6WZUn0>rAqQ=P@mDpP-Ya*g+DVXh%gz>a=itt zVw({uup;Bd3(?zAjm3)5Rb0c~O55*?R$K8P`EAgn4QAo5duEB+afx`ae1;GO`jdPb zz4jDgV}lnG){+Rj6;ZoS)tmFiwzLJ470GnqqVX>|p;#yU&& z9Bs8Q+ZD}q+8sD*_s6x`^romkyzlrqema}>`VUcRdd_$Z0CC!h?{Q6v|;puOw)HpBY?1!pweY(G=c8VVL~c>k%i;Mx4Lw70Ci z?w=2Iyyl>V<;g5sDg(L?-7ZCtex2P9KcK6x!(P=0T4sTZG^62ZyXchhP-{25NSfDz zLMRew8I&$c_zhLnOG?qs;yvuplS;?b?mpdb6VorF*=2u0ZTYQOAxc*ROX}jl4 z7=~g|Mw^~tC76$hx`O^`DDoW@^JRy)E0OJ|B;rwzDa7eUPujZ}((_1$83qw3x^I#j zd#-^Vy+GxhpPEk~74(y;7`d&UOv=xFvn5CiyI1(fi6`9qk`cDr^7YBWc8u01nmr#} zd9S`Ua6%<=*3#Tycv5;Sx#x}~=50U2`)gz)E=RRgb{<=OK8%4%*YhAnoixP%3zCZ12*>~;1;r1gxA z7aCWIQ|%9iqDZGJ?U8*2lljzZSMAH8-i@;hc=|^F&6etJg`}lgaKzt$4Q^;X3q%)^ z>>+0AENP{Ho)XVW_|6Kc+B+T7YYE@8BB+w1HBw}ga<%iiIs4_kumx3Pp-|2Fn^gIT zl8unFkHsv6C+`^dA_#8$Iwya;<4o3Ik~MgBRIFmrrq9>ptzpSsC9o!lffz3)9%J)G zL7@CQ4AxivB4^K#7}E*wOA`$HQK-kbyu#)Ywexx8N>0#9xaph2jA?Vm|*8s_Fz{O>{YeAEYpvoFnN4D`DwaQ3}2oZ$C_aMO4`xZWk}A z1=}RO{8p##x6qC6*aaTuaZ;fwg`z0 zY)3bGCL0*>J6~v3#8#qa^>-nq+&-!Q_LLh@cTVnpwXcTlj`v3ZTOBO%JA`qbFj#q* z#r{vii^&@%6?WFq8yqYc+BOe_;G(qHvGC@frDl{}>4_#mA$c{nuGkqVrtq!E)rE>CTAuQCz&@j|cJbUY7y zWc*@&ZK9&K4ABt9jK|bRPf;1-_jC+fF55$oU+^7wf z-8g9R6!39o=USOGSUZ#-gnzkw<3!Ckv1A>1B#YN{PVRZ0x1NMv&{1tEAhbN1m%+<%~)k*3LVx1>dKLc%~XP# zMk=lq?MVyI`4ruit*rbma{#+E9c;_JsOslwM+2BTa!`UJk(Bw2Nu2U$?OgV<5!Mf_7HQbpyHh)GGv zghOons(cLXf;cK&3OETP*$q$@+`;Vvwwq#@fdRA$xOk{8R%U)$ zJU@R#?=K&F{`u86bR6vZ4yzU3q3y~I>s^PriaJJia~{(VJoz04NZ`Q;|ygIa{OY|OjBio)G#USEN!P!qa>Vb zs5#%_ON{8iy;wSI?*bNa-Mg@MK^(Mm=fTY$C!3Md1kJd@&y3-DXv^R1EnoQCw|W1z zo^a4eL~~G&(GQwvXAQFKQrqge1 z3Tw3wZ&{q>I&YoMt>pme85D9G_2$vGikiN`0GCJfiYxBm|HsZ3`w-|67YG-%GcjE-K&-C z-4*yvKjv*MixOFWK^z@C0^grWR&M8sv_65+4~}wjnqWD(|BFALP-kvvij-2H40XSS z&X;0ROoB(4zeCuN6x05cV62c$4eQ&o}MJ8xcFgQ`ZT7wzP=u$=sg64 ztct7(1%)$Er|3lA9d_pJYvTWB?NR<&tfQ(ddo|OM64u~HAfbv}B=k#jj z2O-J9IjN8k#HS;!L+|iJH)eZ*Zq^rL0?7K9x!7_M?!41Co-w4%AFgr(eiq`skoGe3 zyH4=#v5c^fj`#6O6qV;9Gd6Uy)ECnI$NsOr*eQ+I##CR_-BVwMbhec>+>)=HyS!E1 zn~S%qZ|eKVcWcOkSvYKYBlZ<^fMPU@;NoNB{Uv?NGGeA zz$?X*DUy@GmHYTkcHFZi)Vyjp_k_^gH-O`g(>8{vC^`r?4Y6^2kT|>aAT_mhh?(Bv z1^?+fviuYmz_3zLlm{OFlM4~$sZSJa4<#dS0Fc1{PeJ+FTom<0#Pk8HDPXQ)(%>?@ z>^Qg!rMnAQb;inon{sL%ajFxP(DJ^w`MuUf00B!TA($HC_sl-ZxFd3i_f!9?~ z8lK*yq&)zKKF5c2T`5g^fk#?20_&pz857D!Vd$(9W$IVoylWJCaAzqVw6i^QILcmd zJ3&lnN@H+^^^wP5vJX1&qKRTc-7V#;VDszNu*UBjv0G9WWN>xhlu0ZlW--^Lt!-YQcBGsxiyUBhhKK2Ef56>iIDh+??w{>4V62nG@WtXO+)8-Sa<8ShkJkIwQopFa78$z#$!8@tImaf0@&M1Q`)vBl$W9>H^ ziC}kU*zf0JuD06lfw+ip32AivWh_Eq+nxSnBccG6Dd%Xd;M2&!3+TFOz7FJ!c-^D< zR$it7n!s#hjh$7&sguS{Y-`hv1(+qO1)Pix*yKoZL;*6HYbMv5tI)x100mOZzCALK zU4e-TnEBBYY6!3^0fi$cHEYCADr;wPZtKnbFO3bc5mnLW@`E~6x7dCU4V!MrXQjVd zeSb&8sR(j8)~d#dIL0h$w{t8C8u9;i`L8VI?Sh3K+S=@l8&Lshb%{qeJRnV#esX$ zAe*sWYC=MQ#&s$SEy(E)X9L5p4n9^3T-KjjQ46n8TgB@-I{CLpyyV<|z#J=PN^%U? zhvz(>Br?y4*LMjv!jzUIGd}plG~j%&GS+hAE4Ax90dEv4Y&CdC;S9@PdZ-$f7XRKr z^~5pqBLJrFV#dk4MlCG?{SrL5T$`)UQ$Hb5XXu}hL$Pps_{LY0z@UamWFr#Tvf;dN zn=Xs`BRdjLC1fm!5vm@BYk^Bifs}q2pM#CUj(n4Pn9ljkMCOS#g*s$vE-x=F;c2=8NYa z$Gw<>31;*9Se_-KzGyJ^>7zd9#CdZmtz%H4IATx<5ez2;D*MvUPPwbk!_I$W;zmN)z?474H_hP=lnsEACKfEQl`rF3-0rAl%?+JCZ;9w#{fKJ^eCvIlOs} z{ukx>vn+_zwbc*MeQ^k!5`mun9F<-#&|JHVC*1s8tw->zPX)v2;B%I;c{Xm$OT|mI z&(+1bk#-{{&hU->grJ8gS6#lRDeP>T4z45?>fN0^)+rS)LpoKXPI%l5h1x3$SnxY| z>hF%d%g;w(&S`^|C@9Go4DVoJ-?qUt68_@#ss+X7?TtQhJ9niA)WMBG8{{G;qb;4Z z$dgEXQ&GA8NI)q`3*xiYO97idzUk*a$tLnNMIO)R2=7!qwC}d(WYgWKEQC0e(=H?O zm7k#`yM;B~D1bcw*-C*oeWl!yYv$7Ak!n1sHR*U{Xcmar|E%B%I>rF)aK` z{!$CO)Y9U*WMW!>HpJj}(z0<$RtbxH65b5;@kJsXom(|{li^b<7n>IYhZBHsP4jm;qall+y^AjtwNJ+5z z_GWfYCw;f6d`D^Jv}1i^myRV|A>&ho3{aXG<9XJ-_KbtQwQ7EF_aB}y+&gOa;CG=- zce6PNG^H3n_ieILmkkTz^Vg)Bs*bi~`wKBDYo7>hg{JK<%%G4%(EjbwefM0Pcx|V! zZ70SCnafBRVClzn(N^7hFk@S5MV(&JCx}Tn}JKH3z~eQ+vpNKHr|V_%!%S zE1tXiEl}EAdJgwEQ%%31pf)T!8RFTmeZ#?2664wQF!Xx=4N=ISdTVNK%J6Ep9YH7# z21@d9H2LMsKi7j(P7##pJ&$8*Li7>Ec$kiB~$+<5{TwSUJU zfD%}1b*m$lyh_6|$&Rk2A;{Ie?RD zML9K=+qTU~?KYof%(r&QhKqai9UZIDb(U`~g-M+qnj#TN2W^&#RDQ?Igzxb${fZ-8P8%I*jg^*(S9t3b_;r>DR$|NQ)XqEV=9`DonBByn##hYm5f@yu%{ z``^uWfqqpdJ1r&2=>W3W=st@O9c8>Ink2*F@Ap61h?&b(#G}SYLF!@4J*ULnOIPuW z(aar}6&(L6sGt@er?Vy!#Z+vZ=J-oV?) z0V_4OmfO5Zh>u$zGXL8K5UUK+R_Hgpo(;?bN0zxa3m5>VPg&OGCx^k?YQ)|qOZm6r)nCBON>N8!y2vHux1 zxA2&J7Rui?A2h@NyxDEA!i4iL+0K?jBh@S6SidBl3MTvEBbPPy<#VL*Gk`*W830YUTG|*(v9}av%rsI z&A+eyjHig2t+AGf|B5%&E50NcF*U+V_Q@9223^%fq)ayH)**dQ_ z%-}VgtHE-vML-j7ZO{?aSDDmx#zvmPD9JpQ^))|JNcQV5cfmmDsbhFvsI5|8LH$B`O{E_V^}v+ z|D{WIA!A?$#ucc-<<-glK#71YFV*kqIXManHlk$D`X3#yLF#_;ZfuxIK_Ygpajgw+dtCa6!JMjNg+JEoRLq@05FNSyH1~UMeiXbp{6$6tV zG2j4BDCKx+20wZ|VTFPh&O5JQMJxj9rjw26fNWk^P<8rQeJRZ}2o$J)!YR0o_w{h9 ze66>Z81I=irc0)fj`r8~ZuOrOKQqs&O5Jr~H8rfj_yVD*9-m*gI9Tcx-dw-yaEke; z(oKp@mkzw)#Iy_{7W4&w-2MSwv35W?o6C{!Z8F&o^L}bmrIT&{glcFix(wz{hez?( pj1ja+g_&U-d@|sFIniu{1E%HRr+>lWr2h;JR#2C(m3