From caecc2616b3c6e48488e7e84f7bcfbdad273877d Mon Sep 17 00:00:00 2001 From: Mark Crane Date: Sun, 27 Apr 2014 06:39:48 +0000 Subject: [PATCH] Update Adminer to the latest version 4.1.0 --- app/adminer/adminer.php | 2134 ++++++++++++++++++++++----------------- 1 file changed, 1229 insertions(+), 905 deletions(-) diff --git a/app/adminer/adminer.php b/app/adminer/adminer.php index 50da72673d..0b7671296e 100644 --- a/app/adminer/adminer.php +++ b/app/adminer/adminer.php @@ -13,214 +13,264 @@ exit; } //customization - end - /** Adminer - Compact database management * @link http://www.adminer.org/ * @author Jakub Vrana, http://www.vrana.cz/ * @copyright 2007 Jakub Vrana * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2 (one or other) -* @version 3.7.1 -*/error_reporting(6135);$qc=!ereg('^(unsafe_raw)?$',ini_get("filter.default"));if($qc||ini_get("filter.default_flags")){foreach(array('_GET','_POST','_COOKIE','_SERVER')as$X){$Ig=filter_input_array(constant("INPUT$X"),FILTER_UNSAFE_RAW);if($Ig)$$X=$Ig;}}if(function_exists("mb_internal_encoding"))mb_internal_encoding("8bit");if(isset($_GET["file"])){if($_SERVER["HTTP_IF_MODIFIED_SINCE"]){header("HTTP/1.1 304 Not Modified");exit;}header("Expires: ".gmdate("D, d M Y H:i:s",time()+365*24*60*60)." GMT");header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");if($_GET["file"]=="favicon.ico"){header("Content-Type: image/x-icon");echo +* @version 4.1.0 +*/error_reporting(6135);$Gc=!preg_match('~^(unsafe_raw)?$~',ini_get("filter.default"));if($Gc||ini_get("filter.default_flags")){foreach(array('_GET','_POST','_COOKIE','_SERVER')as$X){$Ch=filter_input_array(constant("INPUT$X"),FILTER_UNSAFE_RAW);if($Ch)$$X=$Ch;}}if(function_exists("mb_internal_encoding"))mb_internal_encoding("8bit");if(isset($_GET["file"])){if($_SERVER["HTTP_IF_MODIFIED_SINCE"]){header("HTTP/1.1 304 Not Modified");exit;}header("Expires: ".gmdate("D, d M Y H:i:s",time()+365*24*60*60)." GMT");header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");if($_GET["file"]=="favicon.ico"){header("Content-Type: image/x-icon");echo lzw_decompress("\0\0\0` \0\0\n @\0C\"\0`EQ?tvM'Jdd\\b0\0\"fӈs5AXPaJ08#RTz`#.cXȀ?-\0Im?.M\0ȯ(̉/(%\0");}elseif($_GET["file"]=="default.css"){header("Content-Type: text/css; charset=utf-8");echo -lzw_decompress("\n1ٌ̇l7B14vb0fsn2Bѱ٘n:#(b.\rDc)a7El ñi1̎s-4f i7 Féa'3Id!S:4+Mdgǃt cb{H(Ɠєt1)t}Fp0 8\\82DL>9 `'Cۗ889 xQ\0e4QʘlPVbT4 \\W/\n`  7\"hq4ZM6T\rr\\C{h7\rx67J2.39KH,!mƆo\$.[\r&#\$ X:\rܺ3b-8SLK.-ҥ\rH@ml:;J0LR2! A 2 m0eI-:U\r9MWL0GcJv2(F9`C1HRSd9%U1Sna|.ԁ`8:#C2*[o4X~7j\\ 6/09\r;;VnnމvkHB%.k\">[\nlp9cFZs|>6 5l1Vΐ67:\"Azde\\5*մ]p[*Am)Kt[\n8g= ;2z|̣4t8.N#ʲB\"9%HQw qdF\$&VQ#Q'_m ̡ \rh Xrt0j5W4ד m\"CAF!엖h>b007;84Ka \0p aHXF1:8U9HIó;sQ7FcLpXM@e吞+g(73O3pblEE>Chb%DI8E' #)=%CjY1yh;cA6jK\r9Ž\$|g-Zo\0z\$+DVw*WpJ\\FO'ɲa1m,_ڧ\r1Po;\05e\r& 3^\r6MR2T\05?~5 P >85hn1;\rRL8`\\@`;z\n\0ԃ89RyZP@ib?ƭv\$<% A\r?\0Sʥ BÞ4JҨ:`#Hi7ε+}voJVڰ 9W2Q\rTD`f wLI]MKd7*rk*j\nASjF-[ezzrʁfU3~\\ZZ{)>>Ѓp*;zDbw]mC\n訓KBBm@ִ>wU’*N(baƶ@fv)`\0uD)mD@/49jHBm1I5DR uE9Aӗ=1b0ey1s;-]s 5\\\n1;Q^bi;YJ2d!s#kg hށ] W)>VIx]r;6JLcprd{pyM-UVH5'\ntвlpHoeZϨqeXF`Gy\r!Ww*Dut%dQ/p:iht&Pe,J͌t!O76GgRC[skvqU}yhAGV|lFޅL^.]u&w![jnnڏ[kCvkrmOɭJ>WT0\npMCbtVG|oy8c");}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");echo -lzw_decompress("f:gCI\n:saPi2\nOgc e6Le7s)Ћ\rHGI3as'cDi6N2H8uFR#r7#v}@`Qo5aI,2O'8R-q:PS(a*w(%p-C \" XS`\\F֬h83`X:O,) 898c<#0L9 ?(R#e=\n:*0D9C@{ZO8ioVvkAr8&..cHE>H_hWU51r* ^ (bxܡY1&XH6ؓ.9xP\r.`v484daXV6FEHHfc-^=txY\r%xeQ,X=1!svjkQ2 %W? Ů=dY&ٓVX4ـ\\5Xì!}NgvڃWY*Qi&lѵZ#Ց\rA\$ev5o#ޛ5gc3MTCL>vH<`*]_;%;Vi4X'`ij0gOۥi9ƙےdFk/lŞnc\n/ l[ ŠPa8%!1v/SUcoJ:4J+BvJ\rb{,|\0zcYl\ni.!)dmJ!' B\nC\\ i\$J\"2+IkJ \$Gy\$#ܲi/CAbbC(:UX2& , Q;~/Ky9?\r6tV!6CP hYEl䏞(ؖTp'3C<dc?yCe0@&A?= %A:JD&SQ6R)Ab`0@u9(!0R\nF Š wC\\υrܙ #~2'\$ :K`h@Eb[~ Tlf5BR]{\"-\0L>\r\$@\n(&\r9\0vh*ɇ*X!_djpy`jYwJ\$R(uaM+nxspU^Ap`ͤIH\nf02)!4a9 EwC ˩ LPAi)p3Au AIAHu !g͕UZUc *Mxf :^Xp+V KC#+ WhCP! ;[pn\\%k \0,ڨ87xQC\nY\rbXvC d\nA;lF,_wr4RPHA!;&^Ͳ\"6;=#CI 9f':DY!B+sxV8lÓ\"鑃HU%\"Z6u\re0[pa. +^``b5#CM\$ I˚AP5C\r SdWN6H[ SR\\+X=kλ׺Sr^(oo7\\huklHaC(mnRBUup2C1[|ٽbeG0\"CG?\$x7n\$Z=ZӦsi5f&,fhiIyn20DvETxM{`ܤGN#遂Z,ƒ/ R\$#\\I- |0-0NP ;s-v҆nwGtndiH|4(+v&Ņ+KL\nJ\$ԩ:\\Q/F\n?mFj 3 p DHKv Ⱥɜ\0X*\rʚ\n0 e\n%\riOflNM%]UQ QL-S±T4!U5T\nndi0#EMi./U\rZF j;H☎d`mݩ\ntQS e|iQt d12,DY 1UQSUcdE)\\L F\$@V{W6\"LlTA\$6abOdrLp c,esΞ<2`@bXP\$3@˃P,KVխ^MLu1 @ct-(`\09n2sb/ Fm)Hl5@nl\$q+:/ d,\n޵. 4\$ w0\$dV0\"rW4678VtqBaupÀI<\$#x`wd9^*kuofBEp g2f4 L!r=\0 \" \r< hU%ThBk#>'Cp\n (\r2\"3lMԋ7Gx.,Uu%Dt wy^Mf\" (vU3uJ^HC_IUYkSc_ylcc]rF_q%W#]@rkv3-cyVHJG<ZT@V8\$6o2H@\rª\0=ݍ\"39z:K uK >B\$r.J*l'kophxvL`w1 !M4\"I\$\"o\$>˙Bea\"DBoʶ+ B0Pxp&7|p{|}7ְ\$-P@beVYmoMo\0Nzn*>΄)-Hl!hpg &tZ㜤\0!8 ɩZK@DZG F秩. lz%(x}'<Ū(<XZǬњ ɮgwzz{e'{;@噱(&R^Eݛx宛Y\"MܒV\n5zlzr[x˪ G\$OW@Zx, be fdƻ2EËIDYT%k{J\\\rU N '_ɽf|w޵,l7kt1RD>ЋXZЊ|y|Z{|բ\r%;#\0eZ,\rKt\r >>\$>??c?+@  @ʰcqfc+3Ș؀&x]N*|b2R_\$< \rl [*`\n~b]jB\rqˣQ꾼+(W| +ep9j}RiJ6p\r-S0tHJ`7Dcp)\nߢ\\%aQ Cf6\ne\n>@%h%I `\0uAX K `8+ I\\(\rń\0lH#]*y\$,H ?EFC7`țE@rGpLB3H,0+s\r\0\0!9Hua4 0aJ(\0DqgaJ!m~Aa&à/ *p\"IBD\r!9!vL:Ċ!\$AKe\0lb i6%YzKrlRK\"AF{ 6XH&: h~9_2Ws>\$Ћ pC@vz0և8\\vp:s_\\:Y\rB\$|iGR# YR9\0D28?+}YᩇJ#CiVCT6Q9piteLp\$4\$D#@@|gRc\rF8Q&@5r\0XV5\\fh @v, /\0\n&/!d qKRm;aD2d\0002b\$ L/1,E4@<}aی\$1*`>0 :d   - Ä\rDYl(6[6ksf' 8I TJDUD:A2hd\0a\0)2:B3:Z1=@-qN\\!\$kfNw `n\$LCR5pcE3Ca\0=Hjڒg-ژE e.\0!o,'wI`\\s6RE}e0F\\m|F>q ?jД6i p +N9qup2eɑm.+L~\$\"Rs]iqCИjZgx`6t.b,ͩkY\\`'Sljհ!ln\0Wg+:+c6~KFʖĩ-h9-H@SDG;Π_ \n)fnQ-*C֩{MSnZ ED\0)Pg]6b%%Hj&%-* 9}j 43@*(m\$QDۆҹ(m¼ukjO\" ,1Vv%s1kP` /@0>F>#X8%lⴹKS|Yw0u̧bÉX4p\0\n%\0ZQ2WWEkoɇjy .Z\0 PptHR>,%)k `|,prZhZ,P|CFLxn .PReVoB;xDk)M?n`/5Ilqh\0צ5Ehq폴A ˉUdkDOy;ƆëA.OrƄ!H ^ҋD3Ig>ce~Zon_^+!h|*3ޢG[nڶjp 7H/T+3lP{<2ʞЩ)\"ãލYˣA2:&\0ۃ~cK\nD4GNg.`RB1H.j{}n|/o`]f_6y`\r x^@\\R='ς_{ X-\\)L EPl\\\0]hareӝ8NG^I:ܵJ%r~-܍ 1g+gVoσzm>54)mm\$oEbܒ)mEѨK6!* \nӔq 0?wPKg1i~X`\0XY Z *Dh 1El\r\0:?\r>#2@3h2袰Æ&Oе.Ʉ(.LbVEь s:88{>χAoHrySdvmr׃f>jO\nÀ5ֳ͂A002>nf16q3”]+arFx6 S-3e +x̤/jhD\r-\nјG7z2i.A9f`YTx9\"^\\nݣs9{0s83\$:#3Y6{0\nJ \$#D\\ļ@Ў3u0\"*.rs؛5G_ȎDdHKm]\\4\0;d}[ S2ܜ}ޞKd& t rf *j +Px܍\r7M8A[#m\n\n𧀯9+ZH|H[_ź| j5H|U1^u] P L`Xgh _r smZ:l]ihsK>ec 9 p7jCLRp ``");}else{header("Content-Type: image/gif");switch($_GET["file"]){case"plus.gif":echo"GIF87a\0\0\0\0\0\0\0\0\0\0,\0\0\0\0\0\0\0!M*)o) qe#L\0;";break;case"cross.gif":echo"GIF87a\0\0\0\0\0\0\0\0\0\0,\0\0\0\0\0\0\0##\naFo~y._wa1J GL6]\0\0;";break;case"up.gif":echo"GIF87a\0\0\0\0\0\0\0\0\0\0,\0\0\0\0\0\0\0 MQN\n}a8yaŶ\0\0;";break;case"down.gif":echo"GIF87a\0\0\0\0\0\0\0\0\0\0,\0\0\0\0\0\0\0 M*)[W\\L&ٜƶ\0\0;";break;case"arrow.gif":echo"GIF89a\0\n\0\0\0!\0\0\0,\0\0\0\0\0\n\0\0iӲ޻\0\0;";break;}}exit;}function -connection(){global$i;return$i;}function +lzw_decompress("\n1ٌ̇l7B14vb0fsn2Bѱ٘n:#(b.\rDc)a7El ñi1̎s-4f i7 Févt2! r0t~U'3MWB'cP:6T\rcAzr_WK\r-VNFS%~c&\\^ruŎÞً4'7kQh'g\rFB\ryT7SSP1=ǤcI:dm>S8LJt.M ϋ`'C889 Q2#8А6mjh<9/:J)ʂ\0d>!\0Zvno(k7s> !R\"*nS\0@P\"(#[@g ozn9k8n1I* =n0c(;à!*c>ΎE7DLJ1J=1L?s=#`3\$4uȱzGC YAt?;Qk&YPuǯ}UaHV%G;slڴIH3xw0t6%MR%jhB<\0AQ-ʈ QH\nvL+væ<\rv\\*Ӵݢgn˩ TЩ2P\rߋ\"+z8:#2J[i;zr3 #ى:n\r㽃epdݍ 2c4k\rGE6_މb/HB%0>hoWnxl֍浃CQ^\r4lK{Z:Ã.pĂJB-+B(T%J0lT`+-@BۄV\0C,0tF?Ġ\na@Ɍ>ZECO-^Q&)I)R]\r97_\rF80Ob >\nR_8٫ ov0bCAF!tă%0/zAYO(4 '] I8hH053@x&n|T)`.s6eYDzJѓ.{GEbӋ2{\$**@C-:zYHZI5F]YCOA`x'.*9t'{(wP=**xwr*cc|DV\rV.0 Vd?Ҁ,E͝`T6ۈ-ڎT[ѐz.Ar̀Pnc= a9Fn!u A0iPJ6e T]V[\rXav k\n+Eܕ*\0~@g\"NCI\$Ɍx@Wy*vuD\0v댆V\0V`GuE֕flh@)0@T7§RAٷ3ۘ/Q],s{VRFA<vץ%@9F5t%+ /8;WJo:N` h{ܣ Ԑ8Eu&W|ɆU&\r\"|-udžN:ncfV# U20>\">`k]-xS͇ТcB}&`r+E\$yNb,Wx -9r,`+ˊC)7x\rWfMSR \\zQ̓u A24L&Hi µS\$)eg rȌ\$]ZiYskWn>7E1k8drkEwwcmTya\$tx\rB=*<l fKN/ lkH8.?f6ч{gi/\"@ K@2a|#,Z wd6w^&tP].Tkro\ro=%h`:\0᱂ |ꊣa Ԯ6*:*rO-^nM}Aya\nu^rnO\r`T~</wy}:|̡6v \rcٸߣC/6ഷ#p@p `Zch\0 \0o 4OO i\0-\n/\0D. .Đ\0fiȫ\0ID\0\r0foGeJ|\rl 3~ iP&/\09 ^\0r0] ›o .\" M vPZm pP ڜޏ{C ?kϼ}d ʏ~=.- m1> hЕ1;QIOP\rcpApVk\rQ* Q}q>u15BqQ[1flap\0*JQ=G _bGHF.0 = 2P P!#(3 \n!1&72f`/\0\"PU \$\r0 ,QrU&2f_X ]9\"S''y8\rkW)O)*Ra%\\ i%&ҳ+r3S`,v&2L&Pu*-0\"%HĬԞ@ؓHBP(\$p&,1M ح;\rn. I.',1)42u+3 ` S pL\nt_*S3;6r'h3555䜋d2q+68O7sC\"pm8ҭ69m\n@e0<8B8<,(8\0 0J<@IR6pԭmG\"116.\"5̂:8bA1;';?<*\$,̍o= T/3#҆");}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");echo +lzw_decompress("f:gCI\n0S a9S`&(n0QIf\$At^ sGtf6ey()LSP'R'fq]\"s> )`H2Eq9?*)t'ϧ\n \rs2Xœej:9^1cȝ:Y@u㓛4X&|)ђ-Kx S1\$@\\!x]\0FCO:1K*F4 ak KϚ2lp3J<,28# \r hF݉2Pl(\$ְ\nJ۷-ǰcc~Frtbm{h.{tkBKcz4C9۫~>`ƓC s:!cڵ*WHX:W;Nj*/(_p3HIKln!trG㭺tC v?m㤣\0Coܥcbf6I'\rb7h`9id5taM={ɩ`NoK !d4zWXdmH*S ]3&\0ڰ d%A- ( Q}U !t7 䋆>xt{mY0@^\"= @t\r+Y.X\nI'KT^(D.@ ++@3X aE!,Y2-432Ԍ MOI\$q% ċGX9[R\0nи PJy\r Bp\\HpgSɼFaejk.4C.^yi9PĈe\"ΔNYBH#8B1\"j\\کx#@G 92f.ЌpsrTJxk4KIlf8zKȇ>AKn^=&A*?' ^%; 4܀9QhN>M=['vHIJvRt<Ҳ^z‰B^h'ɩ)-'#9JT)@jO!c,ej@H,javZ>ҷ)E`\0\nTP8LM9,BxუzouB?`&I<eYszԇ*.'tz)m*4X=tI=nѦyޚc2` .Y:KNr06_rJktO|^͈z\nϿ鱕~ur29htgB#Fp(@`u0у(flGa0bZ7J@I_PZyq^7G3d3铄0{ָa6P4W d:W\nt4.Dyȧ85AMLXw5eseC #rrY Ǯ!唟@/\r 0wEl\"OWpk D\r4aNY ({ DnƆ>jĨ1 JȮb3 (Fzސr`OX\rZq\r 1\$gklr+ kf'5846\0 -.i~4E<\$Jlru2F;Bn<%#lq% b=#L(HJ1b%\r縼zG2^8w^% G*g7D\0^ rc pL, *Xr\$ 8,*D`\nZs1l1\\{.I~`*3 ]1F͑1X -%#S3Ll6\$CrC/\r%,| Ȇnj su8J䬗9hN.PFt\$3\nFB/=4- ͏9# O:I]#7B,:4\0f*\0*TK02<0S f?Da4X-uj\$E6\0Ni\nc9H HIbFsR~tI3L;% 0p.B FBnMKRsD'aD\r1O\0sgL^̅O>lC<DH-4<\"V]`/BU&ӹ-#w;^Mrq0-o~pK p \nq,4W\$Fnl\0ML\n-m\0)Z@Z ^@ &Սd] `t\r'\$^R'O]SЬ35 ⓘF\"Q[u[H\$o`6Zumo[]XT ]Ҟ\\cb:bU\0W2Vbe2/d%t#~R\"en  s;D Itu p t@8d \0 @lTwr ww~ b J u\n, u;jַ7s{*o>q<-\0 \n|¹rcv7i7O{EC(1py҇nZ[r>8X {~j~((Y`7_»z%vd'%.\$w/.=p&8V5R=N4(fuJlju`zXQ.X! kqrp~~Ticfnx@S3*6b ؤݐrp pn=)ƭ\0L(Ln/-88s\0z g\nLKS!m&\"b8}BXZy,ͦd _X^\r1zBuW7;s8ly^BfZ`FyYg! Pl횣O8fG3. <7ĜmޥViwמ 0/\n\r%1\0yK E\rⳚޠ޸eNL:C'?~6 \$}jfR\rWD.T\nNT}_E|퓗U}O'I,ʖ7Ϳ:h\$Z0DV`t XnvjGs9lB㓐rSF<;g%v((QץP(\nFl?j\0o݀3{dxfbW-޸,Qu,+a.Y l[%WSx\\ DG, l]@L\" |p?lZa80!/ºo\$vց`rߣG\0, 0YPN'0UW0B2Ag0gDMB4&1ɚw!0`-7 F)+(\0007(r\$9LŀTL=\"KQ.NE s}*8`)I\nȖ,LʶUҞ?D)Re8ւݠq \n(>E@rh7Z[u2'@.SaVxJ)-0dta@wJ +\"\\8 ؔ(p(xZt=>hp3hg?\0\0.1mK]/J.[cN f 0-ҩ N-jBu d|2iݗq)W9HAeϚ(it儌*R\n< gp HFҰZy7I9tPI\n(,2e#iV\"pγP춚XSjW! r8d&\$aK!uU2U/@_-8F P@VUdvzZUH@QV*Lb,C+A4ur@s|geQvM \"dQY3R[:(D\0>\0uBJ5SVћlLb V%ux[hU#Cnٛ%JKoJU eβ&\00RJ&TmcZ-t hy^P\0rw{@^teP?2]KNq&~`.,dC(/\$x*Y\\T FhQ9 ^Ah[3=5|xΡU7T-P<\\;b̢j%:\n %«r<Ŷ-@`;{-6p'82 2ުE/& RJa\nWi9NOB\$\nE/25o(o)ɓK\nL|% '#RRD@ÂxC !\\EF/!tsAW _ E!&c]eFKG.+@^iAʧ'ZOaS52OEF1rt-\08~;VD+7TV> ^dũ׍}D\r*(RH㶵(*5 (-[)(p>ouӝx6&ϠW>苍T1\"\\gl1Uzq+V#L~XYK4 9A]\\q8Jwu^'K?%q!9,Y4BMJW' BAc:y+icp'GL*qRc?D0 \\MM\0&IɃK)u˗')Fa w(O\0e2d!@#DG6.LF!+]>hI\0ߐ+-x^gЁtP^0 nȾ4ej[Oӎ]4*\0ԡO5]ӇU|t& \$8EUdj\0qѳd@'< /kp\rf7*Iؘ@-^jWɍH44N&ZʖuQT_'@;πr~ h/@:\r v2,VH[Ўk|!6a V\$jεf3˭VqL# ~a2mƨ]G&)bAABW}C_Bt]L.Ae@ȕW6ޛ8X\n\ny':C@8K(2\"_PD`;J4HbZ^l5P( T(\0f\0t \0?PU~{\$‡'`v4\0^ J JɪtCmZ :L ;N#,PȺsĥ\0D >>j)NSt8\nʢ#xi@¬>zrm{k`dREF\n:B}F(aHI> hl<\0'(}1Iءǀe~ãh()_tve-DaDz0gYJQυsA#gK4{\n@D1숉PMޒ@^:8 nщDnhIATa4EO7T\0004 6_:<\0[!vHh.'\0QX Eu`v]pO+ȗh\0f@)ȯ)\0[h6㰼y\$\"X>>q!Omwu[P \"e;Tymƻcvv6ݴ_+G` 2uEmqUBm{5m~'Nlmv˷\r)l:dg\04jqT;n, DT yC?P{w8\nz\rgszOo2@n'wt Ud=t8ZP݅8_v0 /Pt(\n[NV~nP.g)U5Scqf]V־5#p]r^\0y@>T-+ܻXa\0*D[Q>d*rE@+  Lg#Q&FѢAڣ}D[\0f*ِ,D~D<\"VB>@T\$@3PF'FHsbLJG56 Q 3*;L#c(^)H\\ a|!ŏ3bHg)02;1bǓ&jnXV0XֳFd\rHgaLq 'S\n<8\n\n7.x621PJ\"\nt6eU\0k 9zKvPLONӪ]𠝎P<םB_~ZGxcA0\0‚zL(t8> ݠHp<9E^{|On4|9aϜśx\"n~bHx^GkΦsЁ");}elseif($_GET["file"]=="jush.js"){header("Content-Type: text/javascript; charset=utf-8");echo +lzw_decompress("v0F==FS _6MƳr:ECIo:CXc\r؄J(:=Ea28x?'iSANNxsNBVl0S Ul(D|҄P>E㩶yH ch-3Eb bpEp9.~\n?Kbiw|`d.x8EN!23\rYy6GFmY8o7\n\r0\0Dbc!Q7Шd8~N)Eг`Ns`S)O /<x9o3n2!r:;+9CȨ\n<`b\\?`4\r#`8\$c1cc{n7ANRLi\r1!( j´+62X8+.\r!xh' 6S\0RO\n1(W07q:NE:68n+մ5_(s\r /m6P@EQ9\nV-\".:J8weq|؇X]Y XezW 7Z1hQfuj4Z{p\\AUJ<k@ɍ@}&L7 UwuYh2@u P7Ah3 ÛXEͅZ]l@Mplv) HWy>Y-Y/hC[*F#~!`\r#0PC˝f \\^%B<\\fޱ&/OL\\jFjZ1\\:ƴ>NXaFAfh{\"s\n64?8^p\"띰ȸ\\e(PNq[gr&}PhW*r_sPh\nom#.\0@pdW \$ҺQ۽Tl0 HdH)ۏ )PHgUBe\rt:\0)\"t,[(DO\nR8!Ƭ֚lAV4hSq<@}gK]]=90'wA<a~WD|A2XU2yŊ=p)\0P sn3rf\0FvG I@%+_I` \r.NKI[ʖSJaUfSzM %\"Q|9Bcaq\08#Zle5#U@iUG‚n%Ұs;gxLpP?BQ\\b 龒Q=7:ݡQ\r:t:y( \nd)\nX;CaA\rPGH!@9\n\nAl~HV\nsիƯbBr3\rP% ф\r}b/Α\$5PC\"wB_UgAt夅^QUjBvh졄4) +)lj-&`9qPy6\r.y&ảE80kAVT7px)ޡ~M΁!EtP\\ϗm~cB\\\nmv{9`G[~xsL\\IXwy\nuSc1?A*{ Ϳ|9޾/E4/W[ȳ>] rv~B PB`TH>0B)>N!4\"xW-X)0BhA0J2P@>AA)SnnOQbrҦh@ȋ(\nF˜ϖƙ(γP\0No}lVԍp8%2>B m @G(s\$d̜v\"pw6}(V KˠKL ¾W q\r̤ʀQL%PdJHNxK:\n %fn%ҌDM [#T\rr.LL&W/>h6 @E LPvC6O:Yh^ mn6nj>7`z `N\\j\rg\ri2I\$\"@[`hM3q3d \0ֵys\$ `D\$\0QOf1&\"~0 ` \"@ZG) Y:SD.S%͈3 dmU5 .p2Q3VذWBDt Cq#C@IPDT_D:Qf-WX\rpUDt&7@? }O122#UK*)긋0o<>]HƿrLGNW%M^9X:ɥNsE@xy(HƙMd5<52B k!>\r^J`ISN4'ƚ**`>`|0,DJFxb 4lTؕ[[\\Ԡ\\{6\\ޖ (#mJԣ,`IJխl jj֟?֣kGkT9]3ohuJW\rk)\03@x,- 5B=࣐#gf&Z`#o Xf\r Jh5rqnz s,6otDybhCtn9n`X&\r'tpL7Η&lZ-w{ r@iUzM{rxאmSB\r@ H*BD.7(3XCV ʘɆ:6;ZX0 ̢#cMyUi2,qF˚bJ @gG|4gmzW )r|X`Scէ˙c!B/}{4J\0Ýn Kuz @mѮ߭y͞y\")uY睘scy둶y7||{Ϙ*)4Y`ϵ[v^NXW7;_*x\r߼߉xm+m \$\nl);|٠ڙ:N:_8NU5;p+UL \\9 O:IzQT)XGJ{w8ʼnU\$PxTYpjhJÀJ{@ǂZsh˘X\0ۖlӖθY}^@u2S#U;È|P\\#|<\\J۝,\\̚E]Wl,ɖ<Ό>Yn),ΙrԼ⍺] \$qDJ=XI-ŀallõ]\\w(iC׃tkRu\\+>)3PP6M%pԌ A3qmu2fzۯ4s `ێ-kS%6\"IT5~\"Ut_ TuvֽYw0I7L\$1M?e@3q{,\"&ViI?mUWR\"uiTuqj\"G(-By5c? wT`eiJtbgU3@~+\0MG7`\0_- ?\rV?FO6`\noϚIn*pe\"T{[Гp^\nlh@l0[/p oJKX<=9{Ǿ6!OQx{ZVFԎ`~IߖL)Q[TMT*BC~ \ngÈŅp9zKwzO9di^'+Dz4gHALy\nr/%|ȅ̒ގ\$)1P30(\r+\nZ z))\0*\0k2υ(E86stf& +;76&K_(9f,@-4l\$ۂe7\0:lLM7.\0 |oJ۩Zu̺'y{H,#\0vU@9! '&G@_-ٿt;:uDPUцjH 9FBcCiBwMtx PM?p=8lg~ta%]b\$\rra,6tW)\0UF |쓢vhQ*Ol.C\$\\ցRR[j[] KRJ>.;F=Rڌ<rM=Ԓh^Y\\Rmn Nn*gB5^Q҉@OxHIT9)(&}A)P\\/_!́Hڑ\0B\$z4TYuJv\0ꏃ%@32\0Sm--Gi@Q%jY+FuzlSW3ŷOrU\$E;M\\Աu/jeQ,#JXP&|Uс`h2n6I+ né-nD`ɔ@B!;XsmȯpC`p5O%Z/5#CK`XcbQ#Qaqp)G+~ۖ\"lM_^z!EХap86n+oJ,󇢺w\n]̓pR'eJq'ܨ%'nlOh@>NBȊX5,rGrZ l\r(ˑjIl%b;s+נWg7)*e13Le@(p\0ÎdsAD\0Í\\bD\nu/&1XRץE楂5T\r}7A٬k\\͵q2܀Z-wotZ]-yq2j+ՆխënXA\0\0+S+Y6_BV7znZ@̆Էƴ]-UMJc*s\"+\0xB3^0\rc\\j*P-\\Q8ʎlc%XVB},;(`*Q \$r{KC%\rx Q,/v\" p~   J5e E-^X;c\\׬m7?6C*庮,7Hf/9e0[@!bUБ=i.Jocj;B\0]ՔvG8O\\\0NJO\$.& p\\ H1bp:F\"8ŶVxRx=3f1+| \0BkbPLђ\$zc i,Pcb,pn(,`'/~kֵpq-ȱV܆\r  \0 dS+\"鈭1\0(-1~tcfBۑb}ؠ0<1\rL\$2d\"1&ƀBóN\rB\rr\"?vdZ.\".\0?w9o\r0с!dR뤶\0Hra%Њ+\0yrHsϒ4W#,\$ \0*xB\nP| 8@/\02UbΪx! dN3S?P(g\n8ppS 9@' \0y\0y46H<\n`SCYjp:\0N(ӍX4kgDyt{ >\0P`O\\s <?4w~f@z~hBWxhAO'=P֌ײ=c[ysg|掳%M,Q8 'X hlUs ٢ 4qDx*8gNLBȖ;}%e@Yvho!\$NcCX@;YH'@^ Rf^x\0^os_f;pj]:Ԥ.mLl\rV\0@܀\"1%!_@-]8f-a]YWψh`(J@\rY kB(x:5B\\QkO[:0¼ukX\\P\0[xŮ`RIGk5YzPҙ=l=e\02=k` [KB8C}kc{#آldfF.̵-A6KPv'lHiA8C G`Gbyپ- 0Ĭ;[*_mlH{(;Uo*],ċX80CK ! N(I` VDvwrpc,\09~sXnr[ec4dpi \\e2laZCkglbB7x%Żk` \n( @ź5ݘϭċ#tܖE}ńsLvE\nQQ۔76}Orjb%@7۵hw͹nk`Vq~~4{ˁ;8p2mP+ daX8&,=n}!/K&\rtH)/Y6@=}EUlK\\kb[1GM)J xXET /\"-<4xDp(3ʟߴ'+\$\rF܉\\Rپ-nܧ\n?F~a+x\rl,fC+wiG.X!_71ym~ D7 G;gwb/89x@!R9éJqYh'3Ĭ*Xwˮ^  75`:#+ۭ0S@0o7:&~r (ZG1zpdN`/Fz@8t0Z_ 0{LnׇoEÍ=rGj]H ҷAf+Vm7B*q}cw=ۄgwE-H&Rh4M Z_L]WV'զ\"u @-aMs@9L:Ւ]#aoyb\n\0[rp*}Qbw?;Vcʰ .s索XְyR=&drO2j!uxR{N&ѻ5}vy۰1o8Z#{NrQ:BHzW{W{:r}D\$j7)PCvVXdD7፮,h_]^qσܟxO]?p{\"O8Q?xw}J?9kx5bu& o^>wg]h#?+m(/ng 55<;ȅ˳x%;(V;o-˽.enkp_FX9WjQCB اv3R=솦;a][yȻ4/|##v @_ǭ}UM>1\rCMqCmc,kzy4Kބ>a!i1p\nA` J xV,\n}K+sJv(S=#:M>U zڞ y4&=@MX0P'{b6 E  #@M6uOuK_\r)E)G9Z>o#Gl@%Ls0 Z/+@_=||0O~ y|O~E/rHj\\>׀t-,!`7VoG9kC\n}!Q-G>v;ޞo|@ 2 ?(jI\0S>XX |6 4 ?v?~7/o||d\n_o-k7>_S~/>~ P~C?+Y@*|*2>m}o|OݿR{p#Po¿ +ܠ\"z3\$0 >+\n ߾c #>KP >\0/ ;lx>`\"H3:\09쳛\0i n?@\nu>c瀪jCP'BO>2ܠ#&%(03,@| ,K\n/@|S ),@x9L\$쀫 3@K*@pFA `&@{€ 0JCb0??p\0 #`3ao#z:`>Aa orͿHXOo@[ 3[*O #~\\(P\np+?+4\0u@PU?x A\n`\$j\n\\,AoďoAB͏?('\0tpV\n=T#>ΫC \"?x; 0z#>\$P|\0%7Bb\0BkBb\n\0R6 >=X \0>#ΓEL۾\">60U\nN/\n14>P 𤀗I\0<>ါAKD`'04\rBX x\0W 36P>d?\"c+l1 >hH b<B 3BC:#D=3. Dϛr?2B!h+3G> \0)C\r*\re P4\$9P3?s7 Ab8æD3ChIR64â:pB# PVC)\$<0Bo=CL\"A];@'B ;@>8PB]\n@CE, *ASݍ3 A\0 +1\n?K;3\"B\"N1 DI\r<0@X/rDQTC/gTB?\n9\090#\$7DY4%1%Db?+I\rB\$,\0JQ+DJ Ğ/ y?3D\0&0jSDy/ ďHl!q+#h %o{شT>F~|HBP0> \ncnD1 TL8qSCͺ5Ay0\"W 23D>0DhjØ\$LQ _EO5C;\n X3@[@(A tp򀾍%`DiTP* X\n+(}Ed]xBn>'p\08\n\nMAZoC\\>#<@\$sbb6>0M\n83yAt4M/BDC\0Cd .#o#?\$h F͚N/B1ƖDhpDƔqh(\0J(0IAz!P+ec>?(]ܬ\$\rD!h*<\$*OCl.V\$>A\r#@<@\">h)@DRQdr 'A|S\\gF]Q3> ,?A-GeHӣ~Gn6Gb3 P\$/搳1D-C #퀜\00>YM?tM=q|EP4D23= \nB P\nBtoPF,HB\nT]#?E۾{4@ v)\0Y !\$OĈ\r@ d\rm@+i\rF5I\0c`\nHxE% RP@94FH%RS1DȠNM i`% A\0+2KLoD 9`&\04B đ#kp ;x2s!K@1# L\$`EE>{LeyCx@!K葖; )e>i!e!ã\rB ZN`\"@-kD;D14D?\n5-\$8֒ҎDd4>KLC& pvF!LRw`\rHq D@?3P4\$i1?3Rx#62MIJB0>U\nQ(|\0 yyH>j!%|0U /J2ČJ/\nL6bk?tow>ă@I\nkiD䀸\$3Cd\"@<\$\n?I+H8 N\$t +MwJ.\$\r\$i*:68  ``f\0>'݊`ז* 0ˈ<s^o:ӻ\0V̬7\0\r1KbH=-2\0 K| )*.4 Y8m@º\$: JH*M˾EEKl.F=ތg )Fv o*\r\"\00# 4\0\n]JLoΤ?DB\0p0&1 )7\$G/oAd)(BAcQ1Ņ1,;q\rd3LX6a1pZNSD@2s\"?,!X3j 97ri)D˪Q8,|.p3/I3Pp!JӒ%S0ʘ< u09\r\0ژJ;TYk.h5f:]4/T.0 <;P,Ct\0\rx\r.I bOo,g<\$!; \\\0,5>? Ų).[W+\0>ޤA{M5 \05 5sNMP%泂.s7R_`!NtEZu2G C7 r[2OSF 8YO: 3|\$v*ܻSX]+\"U,,yNPdᎌ#SY4!},ў2€I=LJ1;,č :!t6/sΘ\$r8BPS~; 4N3 5ο- 3F.ʜ)8jԜ\$VH@\0sM ǵί+_5>\"VPgN\\X.θ2{4!u Ta9u\$ \n u:FY4?Ķ+{\0˚O0Yd9+ ͈a ͋@SY9Zr?OS\0`̈́!X0\$v@9Nbl\n>J1Ka/SA3J8<\".*ؕA6.~d.@ <ΠP\nr7/,6+;-N\rJ̱;Cz\0P`2 ОLM Ӿ;PSg~\nPCv=(%<0;9s7\0 fN]D4H8`\$Q2`NC;y.c4MTT5 c&3>V܁O;F̶/- arr\r`1Lh@\rXH€ڭQvJe4JF ΅IFh:+[n\rM?@ɘTi\0`ch`P@F;2Ѵ%U2QG&fa?PO?9\0004:% ̣3 K\r\n>T%Ѓ,4< :F!dgK0Ћ\0LsV:cs8M;-rQ: Rl6ĻRd'tIXK0\0J/6}DA̽ӬK\$ \\ W-˥t\0.(6Kz-R7:-d/].+ wKT&- @2R/L/rRQ-,Q\$-4KKe2RL/SI;4SL3RL2KM\r\$.\0/\"S̕Լ`KMRM#˺(4 +_,SPL\rYĽF0~MZMԤD̀!1\02{4Mw|4O,8Z\"Ä-CC@O+F1 su\r> P\"SP,=\0004LL5!4:=@QO@t3fe}@C-J1-BQPISIB+VX1O=P %7[D dTVEIBFzhAtQ/?SV=8͞Tn=QX6M 7;BN<@6V8*>\0`w. 8S( 3 6Xp5]`aHӼ\n.dKpOFVS!qtE׈e(a\rsWen^ +VYWedVQNe%V6Ճu7Y=\rHXcz&W;c+ =B,oԧ+\r7+A\07h,Q\ri3ONA@6\n ˝V#RVkMAv\0^\rgº\\mrTz-\rc3N%Sb#ReMfWMX\rSY'M;m=p\n42[d -ע5lTB5ļNg8BU[pU`< ta\0:͇ի\"(\\[3b\$Meu6\r\\}5уL[9 ܈GW|\rV\\hQ8>AGEʣZr=tVnUUmnԳ1\\%n\rZ2[R+r}#1t5S@:{6MwU=AR[p7[ձ\$RoVpֻ[D ]5[p][R[NڒoSS8\"?Y[БPD,Y\0U']8q]37m ^zNZ\nYt8C1V`MgJEE:Qua[vҗ|wyM7|Xr^Ex-]rW*55xiy\"3W[ `K\$){ _]5Ly%[ҜyCYIw!@|׮٢V+s\"V0AR;yU=Ow\$ؗ=EKhM_䵼ݒf aU=#Ԁ:MUAW OQGsw\\=fHUO5nHsM-31 p-W CL\\1Sy{&w[\"v%~\rwVl`+ կU߰jaO\r}*]_V55%iY8UD\rVZ~eً(b;uQ.\0_|n\0WSڟSςc۶טuز\r떰.7Q@_-dTPŧu \\XUP~U`ENiBD\n99!BN9^8cHC?H ('gs>\nBҲ.SMm%贀'B.M:GCnh*Ш_m7R \r`̇\r\rC4h}y> 9=0G A[+Kl[bzU߃i42V=a[F;5?*\"&MaNc;P ;l-5(h Ȁj1.5B;x.@v[مʰyo26T2U%g瀝ta\rڵu:kȬ8+X{8(A3|-ƃӵe;JF͉:};\"Nψ/Fv !Γa#\rҳ(Pv_bP >@<^p4 R{U5AF5m3H\0qg#(3cmt/FᏣ@L=G=cL_2c^+2, F]DR?d?î+%y ACpXY?@FCKkRL \nLq@%y\$}AL_qG3DQH〡>X{L{&H0G7I㕏s{]&H0㑆H8c_I{lp >e{#V\0J.ɯ`P^d3y'98 A>PY:U\nNB<BNPCk>4!c׏nS&\r''&9)C?Pc;И ǐT&93 My\\d>Np!La @OXDeO\\(p\n3\$\nCCH\ntRµ\"@Q8C&lIoE8E5ɡHq|{KQA><\n>J|рd'y4Acc7efAه:\\\09Oel<:yu~xk_i__L>hao\0BhT&B\npQYTf1u9_@FO 1/DR?)3D# 2tETOb2}\$/!>Ve7XJ-ΟR: tRV\"F582atP Hp'\rN0hA7P7&%9 KiW3N6r\n\\N3O>WԢ\$=`=%u[K%IؕURheƉY Hu2]TR.7s}\n4M&t834S2uţuy_ˠL5q-1MP/pn&J]N]Aih#vi'YE4/>T:G?Du 8G3nJD\$ԘD u-eSS,E:]#Eπ72_ Naɔg7ηeCSxRice\$kku@+kOLo⿲x6ܽ&PUTm SF[*y0^w674Y@ͳ]()l>{3nE-ų;7.+Vʜ;6Е%[8C!]CUjTN,B{ SYuOH&ԍDTc\\ Q涡U\nr֑i5f~N;t5'k55B.|0UQkIwBG!@ڼ@튜ᷧ']d:?J0]T-YhbI׸lfشzZTI̸c`A/5T-u\rgpGSE2pڍUqRso{Eʔn=T2`=-p\r\rwOzqy4\\SvŢ0e\\xg_+PH8nF1x(hKVoX0j?YۧO}< CuŝqeŻw\0MVbt_o@ \\84Tls-Sg8FHT 僐 \0oF5+14>%WsiOO-KUʝmח[V2iI\\U k38m;8w Z<\rWeP[l;Zcf\ruY_Vﶳ?;;9Z+5c`9(FқH812!FϪ_F6`cZ\0'FW`Xŝh[0.f4cУN?WsOd\$4ӪCu}GDf4AbMzUڬClCQR <( d9H%\"lMDTz(/\$_e\n1C\rs\0(C#7\"|)E\$4}IT^I&AtO\"4m%ŗ%ArlI\\kE\\\rcD1Կ&wE\n.7M7&3\0<_lİYDd*[ͿIĶQ;;MI]S/S! O {ӌ2*f4jN օMgǞ}q 5>ot6 ;NpaOx.Dg %f[7HK\$WΏ,@\"*+@P\\UVi싂3@=^3W!{\\th^S lqւDi{]Qr\r+nM?SsO|[A͋\rw3\rf?(_cBxKWiUEBv+S@BNX'tٽ\\2l~\\ѿeX!{7s9#|PN`QA)^㍚ڍy9QZ#fjaCLg5TwYt ΞYSkBNzsb\0\0s z_\0m@nz \0nϪug@zyB\0oW߮z釣r^NϮr,װz=N\0~豈޳zܞ\0a짵~z?^Ck>ϥg\0sd~~/g쏬 \0k73뗷{鏸yꗭ^z{HB@1(ݱ_←^z쟾zzꏩ\0s>zgޏǾ>gA^\0s>)׵|\$y \0\$Q '> {~{_zN#/^zG_{O]gz~o^{q͞|O{/~\0i@_ \0i>|_Y-IAɞ{g_\"^ꏰ?T|+|iƿ4|G{7_ z?({8_E_zW͞)W~#xczzkƿao^M>\0g@oz̞|Go_\"{?7שg/ziXg ^N#9o~}){} _|߶ {~)\$g߿c`a7z?z]|#}~g>={_d~~>{z?2zzo{[Kao\0m̞}^{(|?\nw_\n__{5駸}-o~o_?/F| _s8_}[77=q_v~:Y{ao?w|Y7zo|?O2{K?}yڟG{,'ُp@})_R> wÏ_꽚C>{C޷/nr?|\0!gɿ|tvw}y'ڏ^cz&ۨOI\rf{K` '~υS9~b](O_=i}~+/t^>{GV?0zyGZ_z?!|P?At/j|X\0cw^?0~^i/G -@{q\0D\0ϧ|HJ^=&:Ig A?|zgp!>zU {- %}Ə@z׬ާ?Ag5}+/YAz[8߂=l}bㇺ¾{9wZ=%obĀj\07ޓ>#|v\n/Zt>i<wŏ[7*9P>_\r\"X_\0002z3Ώ=|]Oh>'~gF^=E~AN,~#&͹: #^?d}f e`'N#\0aPSb?c\"O^=nHXΗǯ[y)^}30K_s=1\0\0̏d_,\0\0֐3|{4 0`0@z Qdd =P#է5?*g/^@zFt_r]zm, b?pzcfo}׭ >~ >Fz+o@{z  ^A85X=4zWƯ_w%y{P/`ɽǁ\04h2/`@} ~yQ8tD?)4]Aψ>?f*1H1Л!u }\$fАa\"AbFjC\r 9D]hX-CIIXN\0(d^ qK!L.%P@!bƵP!33CE\n@\0)kպ3]\0Ir.LqhHf~>~j@L}?y FgœGt\$KG\0eAęQ~\$A \n?#UϭEy\nՑ.63¡; Z/T')%f8\"Y4ae8'kE ?@HbXԮ\nV;@>-y(aHPRB(G,yYPYT=ʀJalס >\" y*8LPz'Hj{2.2MC \0\nL 0x,!}(-hR@a[u/1.\rIc-g(.!\"5@EMf+(Zb]E\nB\$ہLJΊ\$3T\\\n ?\n@t` \n!wD y\"Nf!\0*BB%'4Xlъ!d\0aBa(bFf*@\\P!0CB@\r-9OpQV.bXUQ D-\n\\%\0 %QaBS\n\n9YÛID+6PL@%58>C]a,9vlj*=?.4ڣBALxQA{\n(-7pE2[`X=/(WREƓ03!\r\07\$iY#pصE5ӈ\"wFp\$5@»݃p.#:݅n\0 314B(!@TKaRTDz|*Wy4Z\0P52DAaULCȁZtȸ,G\$=L!tdFa\$`\ndi x]=BT%dC8OH4}*\"\$HڢF\"\"Rhi):,dNI\nxM ЀO>zV\"%8.#G,'`8I݆2]d\"71YAEe\0l)&\$G#=Ȇ̠Bp@:\$[14\nq\n\r 4I2M5DY4I@}, ~[ߌP\0DCF\"%t0HW@()S c Kȇhd]BH&+(3W2nL )%d9Q DYC>*cr\"kȉLEVH, Ie#Z\nX¢t Ac#Q\"`2r~&'B\"#\"sDF@\0OP\0&Y@(.f+Ke\n\$EzlC<\"`w !ĐBc͏d@xfIL:EeS)7\"!3*pP‡?9#E\")j8NB7r)K)1Db#0Ra\"jH7BDyGtaDzg\"\$yc\0\ns)!(DA1tD]Y\0Wԁ&V%\n+TaSEwz\$W1,\"D 4ȳ( *Ȭ CC~1 Lt\$иbDˋPd>Haߡʼn\r+Mq-mO\",|\$X1kOD䋉 '|`Ȉ'А<(D )[cxIJ7'\0\0'BZ2.h6™\0h1l!ºHY\0\n(C\0*)NQơFW>8D)q\0/ꅂA|,C{ \"=Qp^N9i\"L/ q5b!c:2PbM\0G:6\0F -/ᏼI2\" /@u#\"ףGtk5D0HK#?y%#j \n@25H \0P*7!;#N!\\2)&~A\0Ѫz %\0M> zFX&#)\r`To)9me<~80dF\\|2Ec#E\"\$?H 7|x8s:#Dه,{p CaÔ=\0zMDiHۑ{G}l2@%:\0NA-F̐:tM(ǚ\0\\\"(v\\\$Gֈ\rPa Dj Y\n\n N1dŇj@<7rCCIZvF \$y+*4Gq҅?Ln\nB2f|uI*Pڑ*^GVG\$2CJ@o@rS9!}b\$%k 2He [<\"⁖7Dh #Y@7J\n4i, aG e\$U}\n\"?\0Ltvsh*@o\r܄tˡA.Ly4IWKMT]HAl(f&=( sC`3ƋCbб¿wHG@=\0lO9c{@I\0\0/\0,'[8oti%/IoZRb\re36)+iM/|\0o)SLP%1\0SOI\0J[3)zRz %>ʈJBT\\P,3 \\8P2JY*FS@\$PJy)U,TOeNJ~*UL)QҡeXʓ2Ul9RǥFJDvUbp%`_*iTVQ%EJ%*b\n\$LR/D-*VXQ%OΕC+VU沸VJؔUO08J|+6VLLiJʕ0.VU@%ʛ)\\^2%ʤ+Q\\`%{)y\\`r^J+ Zr 8Jz+XxbceyJ~?+Xc򿥋d?,\nXܩcԖ?,*Yicå&~,yd K,X8\$%H~-D fe?= A,RidKL-VVԴ8rѥ^W-nSkC+Y,TfJ+[Ykew--S#WߥJ-V)m%Q-N[ǣeK<)\\)q -K{g-\\K9p K>\\u2%\0_,\\ܺrؖd.^RitrK.\\\\ ˭m.VivK-[ܼ9h2K2K/V]ܩzjK՗/LG%<՗/'RC{/.SWveKٔLY~Ro/_ľI_r)`4R3e 0&]d1@:0QΜ0l&0Ds'0_L¹排#+:`4L;7[\\Ù%L2Las #s,H hm1BbG/=2&.A(c3 f-1:cU4kH,`=,k'ɦ9 /5jɹ'f2li`̩5a ɕR&X͔ iׯdLz6Jj)SV왓5!i?^ͦC3^jD͙3e&|6m\\Wm>)fm0́46ېӏu&V5bX'W&}5*nr&Ț7TOL17hsWL4~oQ'eޯM\r8mY&Mz7nթL,cAy|Ց*>F#N4f\r'j%p QP6ጤ)\nHH>/iĂZg|\$icq4u q:ܕiTg1ŋ;4/yg\0#Z5lWЩFRٖ)м+FmdK%DW c\$ T]JxOs9t~ *v0R2]\n\"81CbBY(awCd8B2\\Pr&ҁplXc/Yɂp_OY%3\nK L'_:JNS!DCfq6{9w6uY;Dw\"]q?tbûv,iyq'%195N?;g(E\r?I:v\\^JQzdr˓gM2AŠuP-H=P\ns4G&Pq fW铞!m1X%Ή&d~\nN8b.)NON:rqy\"N+U:ukHά\0W:bN6?u]Ӱ\$Ey;chWdOT=2.P2*e9fzDsb;e;/3)-Lc_^B=h#Eg1y 0P9B\ra\nԉhc\\Cz1\0N䑲FQ@T=vȤޒ Q:!\"FH1WR|q`'ˊX2NP@\\}SzϢL[~t FiR1(%n\np>5oKL%-0sVgGKj8ekS\n)-2q3TB~~TK?y)BH-?eCʧhx5|v}f{hئbY NL8 ;@KbxWBPYy% +K2ġ@1\0c\0?0>\0D'9@;5hqky#A.=<6iDRh4rE9qY_ 1@UJ(GPK:\n~ZiÏ@,KAUl\\\nSO2d *j ,dh\\D\r4'WV=Vh+e\"\\u\0QѡڶS4 1eMf6\$4܀xKŜ\n_9\"8AOu``V@;P|\nX(A\0'kV=Acnf PPsRmB%5N+ɪVd}`&+Pp4u ǂ)NrX\\@`\nC)q2ʾhN;3p`Piq^\r0`g\n*  T7P⁨K@<tʆ+7F9z㾇 kJ4 Cj AQu;!Ph\0xz75\0(p:]5>@&8 \$p\0QMLXQb).\"lma1ȶ672!¨07 OҴAGdz@\0fN*EPʮ^(ROB 0Gtgڥp!ݶ~'\0K- :-g 0#`\0\r԰Uß5dm sY22B 'Q\n~\$w\n n\rR J\0Qe\$%X`\nQS,w(&\nL@Wx@4AR`\\!I\\`PJdRsk D-%sWgSjPu&:t0ҡAC\\0;v E&e#'M \$ò\0iLȓ/Fk@ 57,D0W\0(&rIX2@HHb>a~b4@G9p)\084ZzҲ\nPo @:\0O8\$9o\n2:[K0Cٰ)A\n!Rju)gy x{;u\0M»ߠS\$u2 )aOĩ|hik\\3VH=< \0");}else{header("Content-Type: image/gif");switch($_GET["file"]){case"plus.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0!M*)o) qe#L\0;";break;case"cross.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0##\naFo~y._wa1J GL6]\0\0;";break;case"up.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0 MQN\n}a8yaŶ\0\0;";break;case"down.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0 M*)[W\\L&ٜƶ\0\0;";break;case"arrow.gif":echo"GIF89a\0\n\0\0\0!\0\0\0,\0\0\0\0\0\n\0\0iӲ޻\0\0;";break;}}exit;}function +connection(){global$h;return$h;}function adminer(){global$b;return$b;}function -idf_unescape($t){$pd=substr($t,-1);return -str_replace($pd.$pd,$pd,substr($t,1,-1));}function +idf_unescape($t){$Nd=substr($t,-1);return +str_replace($Nd.$Nd,$Nd,substr($t,1,-1));}function escape_string($X){return substr(q($X),1,-1);}function -remove_slashes($We,$qc=false){if(get_magic_quotes_gpc()){while(list($x,$X)=each($We)){foreach($X -as$hd=>$W){unset($We[$x][$hd]);if(is_array($W)){$We[$x][stripslashes($hd)]=$W;$We[]=&$We[$x][stripslashes($hd)];}else$We[$x][stripslashes($hd)]=($qc?$W:stripslashes($W));}}}}function -bracket_escape($t,$Ca=false){static$vg=array(':'=>':1',']'=>':2','['=>':3');return -strtr($t,($Ca?array_flip($vg):$vg));}function -h($O){return -htmlspecialchars(str_replace("\0","",$O),ENT_QUOTES);}function -nbsp($O){return(trim($O)!=""?h($O):" ");}function -nl_br($O){return -str_replace("\n","
",$O);}function -checkbox($B,$Y,$Pa,$md="",$je="",$Sa=""){$I="";return($md!=""||$Sa?"$I".h($md)."":$I);}function -optionlist($ne,$Af=null,$Og=false){$I="";foreach($ne -as$hd=>$W){$oe=array($hd=>$W);if(is_array($W)){$I.='';$oe=$W;}foreach($oe -as$x=>$X)$I.=''.h($X);if(is_array($W))$I.='';}return$I;}function -adminer_html_select($B,$ne,$Y="",$ie=true){if($ie)return"";$I="";foreach($ne -as$x=>$X)$I.="";return$I;}function -confirm($jb=""){return" onclick=\"return confirm('".lang(0).($jb?" (' + $jb + ')":"")."');\"";}function -print_fieldset($Oc,$ud,$Xg=false,$je=""){echo"
$ud
\n";}echo' - -';}elseif(isset($_GET["edit"])){$a=$_GET["edit"];$p=fields($a);$Z=(isset($_GET["select"])?(count($_POST["check"])==1?where_check($_POST["check"][0],$p):""):where($_GET,$p));$Lg=(isset($_GET["select"])?$_POST["edit"]:$Z);foreach($p -as$B=>$o){if(!isset($o["privileges"][$Lg?"update":"insert"])||$b->fieldName($o)=="")unset($p[$B]);}if($_POST&&!$n&&!isset($_GET["select"])){$_=$_POST["referer"];if($_POST["insert"])$_=($Lg?null:$_SERVER["REQUEST_URI"]);elseif(!ereg('^.+&select=.+$',$_))$_=ME."select=".urlencode($a);$v=indexes($a);$Gg=unique_array($_GET["where"],$v);$af="\nWHERE $Z";if(isset($_POST["delete"])){$G="FROM ".table($a);query_redirect("DELETE".($Gg?" $G$af":limit1($G,$af)),$_,lang(140));}else{$N=array();foreach($p -as$B=>$o){$X=process_input($o);if($X!==false&&$X!==null)$N[idf_escape($B)]=($Lg?"\n".idf_escape($B)." = $X":$X);}if($Lg){if(!$N)redirect($_);$G=table($a)." SET".implode(",",$N);query_redirect("UPDATE".($Gg?" $G$af":limit1($G,$af)),$_,lang(141));}else{$H=insert_into($a,$N);$qd=($H?last_id():0);queries_redirect($_,lang(142,($qd?" $qd":"")),$H);}}}$Yf=$b->tableName(table_status1($a,true));page_header(($Lg?lang(34):lang(143)),$n,array("select"=>array($a,$Yf)),$Yf);$J=null;if($_POST["save"])$J=(array)$_POST["fields"];elseif($Z){$L=array();foreach($p -as$B=>$o){if(isset($o["privileges"]["select"])){$ya=convert_field($o);if($_POST["clone"]&&$o["auto_increment"])$ya="''";if($w=="sql"&&ereg("enum|set",$o["type"]))$ya="1*".idf_escape($B);$L[]=($ya?"$ya AS ":"").idf_escape($B);}}$J=array();if($L){$K=get_rows("SELECT".limit(implode(", ",$L)." FROM ".table($a)," WHERE $Z",(isset($_GET["select"])?2:1)));$J=(isset($_GET["select"])&&count($K)!=1?null:reset($K));}}if($J===false)echo"

".lang(89)."\n";echo' -

-';if(!$p)echo"

".lang(144)."\n";else{echo"\n";foreach($p -as$B=>$o){echo"
".$b->fieldName($o);$vb=$_GET["set"][bracket_escape($B)];if($vb===null){$vb=$o["default"];if($o["type"]=="bit"&&ereg("^b'([01]*)'\$",$vb,$jf))$vb=$jf[1];}$Y=($J!==null?($J[$B]!=""&&$w=="sql"&&ereg("enum|set",$o["type"])?(is_array($J[$B])?array_sum($J[$B]):+$J[$B]):$J[$B]):(!$Lg&&$o["auto_increment"]?"":(isset($_GET["select"])?false:$vb)));if(!$_POST["save"]&&is_string($Y))$Y=$b->editVal($Y,$o);$r=($_POST["save"]?(string)$_POST["function"][$B]:($Lg&&$o["on_update"]=="CURRENT_TIMESTAMP"?"now":($Y===false?null:($Y!==null?'':'NULL'))));if(ereg("time",$o["type"])&&$Y=="CURRENT_TIMESTAMP"){$Y="";$r="now";}input($o,$Y,$r);echo"\n";}echo"
\n";}echo'

-';if($p){echo"\n";if(!isset($_GET["select"]))echo"\n";}echo($Lg?"\n":($_POST||!$p?"":"\n"));if(isset($_GET["select"]))hidden_fields(array("check"=>(array)$_POST["check"],"clone"=>$_POST["clone"],"all"=>$_POST["all"]));echo' - - -

-';}elseif(isset($_GET["create"])){$a=$_GET["create"];$Ce=array('HASH','LINEAR HASH','KEY','LINEAR KEY','RANGE','LIST');$ff=referencable_primary($a);$vc=array();foreach($ff -as$Yf=>$o)$vc[str_replace("`","``",$Yf)."`".str_replace("`","``",$o["field"])]=$Yf;$ve=array();$Q=array();if($a!=""){$ve=fields($a);$Q=table_status($a);if(!$Q)$n=lang(7);}$J=$_POST;$J["fields"]=(array)$J["fields"];if($J["auto_increment_col"])$J["fields"][$J["auto_increment_col"]]["auto_increment"]=true;if($_POST&&!process_fields($J["fields"])&&!$n){if($_POST["drop"])query_redirect("DROP TABLE ".table($a),substr(ME,0,-1),lang(149));else{$p=array();$wa=array();$Ng=false;$tc=array();ksort($J["fields"]);$ue=reset($ve);$ua=" FIRST";foreach($J["fields"]as$x=>$o){$q=$vc[$o["type"]];$Cg=($q!==null?$ff[$q]:$o);if($o["field"]!=""){if(!$o["has_default"])$o["default"]=null;if($x==$J["auto_increment_col"])$o["auto_increment"]=true;$Xe=process_field($o,$Cg);$wa[]=array($o["orig"],$Xe,$ua);if($Xe!=process_field($ue,$ue)){$p[]=array($o["orig"],$Xe,$ua);if($o["orig"]!=""||$ua)$Ng=true;}if($q!==null)$tc[idf_escape($o["field"])]=($a!=""&&$w!="sqlite"?"ADD":" ")." FOREIGN KEY (".idf_escape($o["field"]).") REFERENCES ".table($vc[$o["type"]])." (".idf_escape($Cg["field"]).")".(ereg("^($he)\$",$o["on_delete"])?" ON DELETE $o[on_delete]":"");$ua=" AFTER ".idf_escape($o["field"]);}elseif($o["orig"]!=""){$Ng=true;$p[]=array($o["orig"]);}if($o["orig"]!=""){$ue=next($ve);if(!$ue)$ua="";}}$Ee="";if(in_array($J["partition_by"],$Ce)){$Fe=array();if($J["partition_by"]=='RANGE'||$J["partition_by"]=='LIST'){foreach(array_filter($J["partition_names"])as$x=>$X){$Y=$J["partition_values"][$x];$Fe[]="\n PARTITION ".idf_escape($X)." VALUES ".($J["partition_by"]=='RANGE'?"LESS THAN":"IN").($Y!=""?" ($Y)":" MAXVALUE");}}$Ee.="\nPARTITION BY $J[partition_by]($J[partition])".($Fe?" (".implode(",",$Fe)."\n)":($J["partitions"]?" PARTITIONS ".(+$J["partitions"]):""));}elseif(support("partitioning")&&ereg("partitioned",$Q["Create_options"]))$Ee.="\nREMOVE PARTITIONING";$Jd=lang(150);if($a==""){cookie("adminer_engine",$J["Engine"]);$Jd=lang(151);}$B=trim($J["name"]);queries_redirect(ME."table=".urlencode($B),$Jd,alter_table($a,$B,($w=="sqlite"&&($Ng||$tc)?$wa:$p),$tc,$J["Comment"],($J["Engine"]&&$J["Engine"]!=$Q["Engine"]?$J["Engine"]:""),($J["Collation"]&&$J["Collation"]!=$Q["Collation"]?$J["Collation"]:""),($J["Auto_increment"]!=""?+$J["Auto_increment"]:""),$Ee));}}page_header(($a!=""?lang(31):lang(152)),$n,array("table"=>$a),$a);if(!$_POST){$J=array("Engine"=>$_COOKIE["adminer_engine"],"fields"=>array(array("field"=>"","type"=>(isset($U["int"])?"int":(isset($U["integer"])?"integer":"")))),"partition_names"=>array(""),);if($a!=""){$J=$Q;$J["name"]=$a;$J["fields"]=array();if(!$_GET["auto_increment"])$J["Auto_increment"]="";foreach($ve -as$o){$o["has_default"]=isset($o["default"]);$J["fields"][]=$o;}if(support("partitioning")){$_c="FROM information_schema.PARTITIONS WHERE TABLE_SCHEMA = ".q(DB)." AND TABLE_NAME = ".q($a);$H=$i->query("SELECT PARTITION_METHOD, PARTITION_ORDINAL_POSITION, PARTITION_EXPRESSION $_c ORDER BY PARTITION_ORDINAL_POSITION DESC LIMIT 1");list($J["partition_by"],$J["partitions"],$J["partition"])=$H->fetch_row();$Fe=get_key_vals("SELECT PARTITION_NAME, PARTITION_DESCRIPTION $_c AND PARTITION_NAME != '' ORDER BY PARTITION_ORDINAL_POSITION");$Fe[""]="";$J["partition_names"]=array_keys($Fe);$J["partition_values"]=array_values($Fe);}}}$Xa=collations();$Ub=engines();foreach($Ub -as$Tb){if(!strcasecmp($Tb,$J["Engine"])){$J["Engine"]=$Tb;break;}}echo' +';$tc="";if(!isset($_GET["import"])){$Hf=$_GET["sql"];if($_POST)$Hf=$_POST["query"];elseif($_GET["history"]=="all")$Hf=$cd;elseif($_GET["history"]!="")$Hf=$cd[$_GET["history"]][0];echo"

";textarea("query",$Hf,20);echo($_POST?"":"\n"),"

$tc\n";}else{echo"

".lang(141)."
",(ini_bool("file_uploads")?' (< '.ini_get("upload_max_filesize").'B)':lang(142)),"\n$tc","
\n","
".lang(143)."
",lang(144,"adminer.sql".(extension_loaded("zlib")?"[.gz]":"").""),' ',"
\n","

";}echo +checkbox("error_stops",1,($_POST?$_POST["error_stops"]:isset($_GET["import"])),lang(146))."\n",checkbox("only_errors",1,($_POST?$_POST["only_errors"]:isset($_GET["import"])),lang(147))."\n","\n";if(!isset($_GET["import"])&&$cd){print_fieldset("history",lang(148),$_GET["history"]!="");for($X=end($cd);$X;$X=prev($cd)){$x=key($cd);list($Hf,$eh,$ec)=$X;echo''.lang(10).""." ".@date("H:i:s",$eh).""." ".shorten_utf8(ltrim(str_replace("\n"," ",str_replace("\r","",preg_replace('~^(#|-- ).*~m','',$Hf)))),80,"").($ec?" ($ec)":"")."
\n";}echo"\n","".lang(150)."\n","\n";}echo' +';}elseif(isset($_GET["edit"])){$a=$_GET["edit"];$o=fields($a);$Z=(isset($_GET["select"])?(count($_POST["check"])==1?where_check($_POST["check"][0],$o):""):where($_GET,$o));$Fh=(isset($_GET["select"])?$_POST["edit"]:$Z);foreach($o +as$C=>$n){if(!isset($n["privileges"][$Fh?"update":"insert"])||$b->fieldName($n)=="")unset($o[$C]);}if($_POST&&!$m&&!isset($_GET["select"])){$A=$_POST["referer"];if($_POST["insert"])$A=($Fh?null:$_SERVER["REQUEST_URI"]);elseif(!preg_match('~^.+&select=.+$~',$A))$A=ME."select=".urlencode($a);$v=indexes($a);$Ah=unique_array($_GET["where"],$v);$Kf="\nWHERE $Z";if(isset($_POST["delete"]))queries_redirect($A,lang(151),$l->delete($a,$Kf,!$Ah));else{$O=array();foreach($o +as$C=>$n){$X=process_input($n);if($X!==false&&$X!==null)$O[idf_escape($C)]=$X;}if($Fh){if(!$O)redirect($A);queries_redirect($A,lang(152),$l->update($a,$O,$Kf,!$Ah));if(is_ajax()){page_headers();page_messages($m);exit;}}else{$I=$l->insert($a,$O);$Od=($I?last_id():0);queries_redirect($A,lang(153,($Od?" $Od":"")),$I);}}}$K=null;if($_POST["save"])$K=(array)$_POST["fields"];elseif($Z){$M=array();foreach($o +as$C=>$n){if(isset($n["privileges"]["select"])){$Fa=convert_field($n);if($_POST["clone"]&&$n["auto_increment"])$Fa="''";if($w=="sql"&&preg_match("~enum|set~",$n["type"]))$Fa="1*".idf_escape($C);$M[]=($Fa?"$Fa AS ":"").idf_escape($C);}}$K=array();if(!support("table"))$M=array("*");if($M){$I=$l->select($a,$M,array($Z),$M,array(),(isset($_GET["select"])?2:1));$K=$I->fetch_assoc();if(!$K)$K=false;if(isset($_GET["select"])&&(!$K||$I->fetch_assoc()))$K=null;}}if(!support("table")&&!$o){if(!$Z){$I=$l->select($a,array("*"),$Z,array("*"));$K=($I?$I->fetch_assoc():false);if(!$K)$K=array($l->primary=>"");}if($K){foreach($K +as$x=>$X){if(!$Z)$K[$x]=null;$o[$x]=array("field"=>$x,"null"=>($x!=$l->primary),"auto_increment"=>($x==$l->primary));}}}edit_form($a,$o,$K,$Fh);}elseif(isset($_GET["create"])){$a=$_GET["create"];$if=array();foreach(array('HASH','LINEAR HASH','KEY','LINEAR KEY','RANGE','LIST')as$x)$if[$x]=$x;$Rf=referencable_primary($a);$Lc=array();foreach($Rf +as$Pg=>$n)$Lc[str_replace("`","``",$Pg)."`".str_replace("`","``",$n["field"])]=$Pg;$Ze=array();$R=array();if($a!=""){$Ze=fields($a);$R=table_status($a);if(!$R)$m=lang(9);}$K=$_POST;$K["fields"]=(array)$K["fields"];if($K["auto_increment_col"])$K["fields"][$K["auto_increment_col"]]["auto_increment"]=true;if($_POST&&!process_fields($K["fields"])&&!$m){if($_POST["drop"])queries_redirect(substr(ME,0,-1),lang(154),drop_tables(array($a)));else{$o=array();$Ca=array();$Ih=false;$Jc=array();ksort($K["fields"]);$Ye=reset($Ze);$_a=" FIRST";foreach($K["fields"]as$x=>$n){$p=$Lc[$n["type"]];$wh=($p!==null?$Rf[$p]:$n);if($n["field"]!=""){if(!$n["has_default"])$n["default"]=null;if($x==$K["auto_increment_col"])$n["auto_increment"]=true;$Ff=process_field($n,$wh);$Ca[]=array($n["orig"],$Ff,$_a);if($Ff!=process_field($Ye,$Ye)){$o[]=array($n["orig"],$Ff,$_a);if($n["orig"]!=""||$_a)$Ih=true;}if($p!==null)$Jc[idf_escape($n["field"])]=($a!=""&&$w!="sqlite"?"ADD":" ").format_foreign_key(array('table'=>$Lc[$n["type"]],'source'=>array($n["field"]),'target'=>array($wh["field"]),'on_delete'=>$n["on_delete"],));$_a=" AFTER ".idf_escape($n["field"]);}elseif($n["orig"]!=""){$Ih=true;$o[]=array($n["orig"]);}if($n["orig"]!=""){$Ye=next($Ze);if(!$Ye)$_a="";}}$kf="";if($if[$K["partition_by"]]){$lf=array();if($K["partition_by"]=='RANGE'||$K["partition_by"]=='LIST'){foreach(array_filter($K["partition_names"])as$x=>$X){$Y=$K["partition_values"][$x];$lf[]="\n PARTITION ".idf_escape($X)." VALUES ".($K["partition_by"]=='RANGE'?"LESS THAN":"IN").($Y!=""?" ($Y)":" MAXVALUE");}}$kf.="\nPARTITION BY $K[partition_by]($K[partition])".($lf?" (".implode(",",$lf)."\n)":($K["partitions"]?" PARTITIONS ".(+$K["partitions"]):""));}elseif(support("partitioning")&&preg_match("~partitioned~",$R["Create_options"]))$kf.="\nREMOVE PARTITIONING";$je=lang(155);if($a==""){cookie("adminer_engine",$K["Engine"]);$je=lang(156);}$C=trim($K["name"]);queries_redirect(ME.(support("table")?"table=":"select=").urlencode($C),$je,alter_table($a,$C,($w=="sqlite"&&($Ih||$Jc)?$Ca:$o),$Jc,$K["Comment"],($K["Engine"]&&$K["Engine"]!=$R["Engine"]?$K["Engine"]:""),($K["Collation"]&&$K["Collation"]!=$R["Collation"]?$K["Collation"]:""),($K["Auto_increment"]!=""?+$K["Auto_increment"]:""),$kf));}}page_header(($a!=""?lang(41):lang(66)),$m,array("table"=>$a),h($a));if(!$_POST){$K=array("Engine"=>$_COOKIE["adminer_engine"],"fields"=>array(array("field"=>"","type"=>(isset($yh["int"])?"int":(isset($yh["integer"])?"integer":"")))),"partition_names"=>array(""),);if($a!=""){$K=$R;$K["name"]=$a;$K["fields"]=array();if(!$_GET["auto_increment"])$K["Auto_increment"]="";foreach($Ze +as$n){$n["has_default"]=isset($n["default"]);$K["fields"][]=$n;}if(support("partitioning")){$Qc="FROM information_schema.PARTITIONS WHERE TABLE_SCHEMA = ".q(DB)." AND TABLE_NAME = ".q($a);$I=$h->query("SELECT PARTITION_METHOD, PARTITION_ORDINAL_POSITION, PARTITION_EXPRESSION $Qc ORDER BY PARTITION_ORDINAL_POSITION DESC LIMIT 1");list($K["partition_by"],$K["partitions"],$K["partition"])=$I->fetch_row();$lf=get_key_vals("SELECT PARTITION_NAME, PARTITION_DESCRIPTION $Qc AND PARTITION_NAME != '' ORDER BY PARTITION_ORDINAL_POSITION");$lf[""]="";$K["partition_names"]=array_keys($lf);$K["partition_values"]=array_values($lf);}}}$kb=collations();$lc=engines();foreach($lc +as$kc){if(!strcasecmp($kc,$K["Engine"])){$K["Engine"]=$kc;break;}}echo'

-',lang(153),': -';if($a==""&&!$_POST){?>"(".lang(154).")")+$Ub,$J["Engine"]):""),' ',($Xa&&!ereg("sqlite|mssql",$w)?adminer_html_select("Collation",array(""=>"(".lang(91).")")+$Xa,$J["Collation"]):""),' - -';$cb=($_POST?$_POST["comments"]:$J["Comment"]!="");if(!$_POST&&!$cb){foreach($J["fields"]as$o){if($o["comment"]!=""){$cb=true;break;}}}edit_fields($J["fields"],$Xa,"TABLE",$vc,$cb);echo'
+';if(support("columns")||$a==""){echo +lang(157),': +';if($a==""&&!$_POST){?>".optionlist(array(""=>"(".lang(158).")")+$lc,$K["Engine"])."":""),' ',($kb&&!preg_match("~sqlite|mssql~",$w)?adminer_html_select("Collation",array(""=>"(".lang(85).")")+$kb,$K["Collation"]):""),' +';}echo' +';if(support("columns")){echo' +';$pb=($_POST?$_POST["comments"]:$K["Comment"]!="");if(!$_POST&&!$pb){foreach($K["fields"]as$n){if($n["comment"]!=""){$pb=true;break;}}}edit_fields($K["fields"],$kb,"TABLE",$Lc,$pb);echo'

-',lang(99),': -',checkbox("defaults",1,true,lang(100),"columnShow(this.checked, 5)","jsonly");if(!$_POST["defaults"]){echo'';}echo(support("comment")?"".' ':''),'

- -';if($_GET["create"]!=""){echo'';}if(support("partitioning")){$De=ereg('RANGE|LIST',$J["partition_by"]);print_fieldset("partition",lang(155),$J["partition_by"]);echo'

-',adminer_html_select("partition_by",array(-1=>"")+$Ce,$J["partition_by"],"partitionByChange(this);"),'() -',lang(156),': - - -';foreach($J["partition_names"]as$x=>$X){echo'',' +',lang(56),': +',checkbox("defaults",1,true,lang(93),"columnShow(this.checked, 5)","jsonly");if(!$_POST["defaults"]){echo'';}echo(support("comment")?"".' ':''),'

+ +';}echo' +';if($a!=""){echo'';}if(support("partitioning")){$jf=preg_match('~RANGE|LIST~',$K["partition_by"]);print_fieldset("partition",lang(159),$K["partition_by"]);echo'

+',"",'() +',lang(160),': + + +';foreach($K["partition_names"]as$x=>$X){echo'',' -';}echo' +';}echo'

-';}elseif(isset($_GET["indexes"])){$a=$_GET["indexes"];$Tc=array("PRIMARY","UNIQUE","INDEX");$Q=table_status($a,true);if(eregi("MyISAM|M?aria".($i->server_info>=5.6?"|InnoDB":""),$Q["Engine"]))$Tc[]="FULLTEXT";$v=indexes($a);if($w=="sqlite"){unset($Tc[0]);unset($v[""]);}$J=$_POST;if($_POST&&!$n&&!$_POST["add"]){$c=array();foreach($J["indexes"]as$u){$B=$u["name"];if(in_array($u["type"],$Tc)){$g=array();$wd=array();$yb=array();$N=array();ksort($u["columns"]);foreach($u["columns"]as$x=>$f){if($f!=""){$vd=$u["lengths"][$x];$xb=$u["descs"][$x];$N[]=idf_escape($f).($vd?"(".(+$vd).")":"").($xb?" DESC":"");$g[]=$f;$wd[]=($vd?$vd:null);$yb[]=$xb;}}if($g){$ec=$v[$B];if($ec){ksort($ec["columns"]);ksort($ec["lengths"]);ksort($ec["descs"]);if($u["type"]==$ec["type"]&&array_values($ec["columns"])===$g&&(!$ec["lengths"]||array_values($ec["lengths"])===$wd)&&array_values($ec["descs"])===$yb){unset($v[$B]);continue;}}$c[]=array($u["type"],$B,"(".implode(", ",$N).")");}}}foreach($v -as$B=>$ec)$c[]=array($ec["type"],$B,"DROP");if(!$c)redirect(ME."table=".urlencode($a));queries_redirect(ME."table=".urlencode($a),lang(159),alter_indexes($a,$c));}page_header(lang(109),$n,array("table"=>$a),$a);$p=array_keys(fields($a));if($_POST["add"]){foreach($J["indexes"]as$x=>$u){if($u["columns"][count($u["columns"])]!="")$J["indexes"][$x]["columns"][]="";}$u=end($J["indexes"]);if($u["type"]||array_filter($u["columns"],'strlen')||array_filter($u["lengths"],'strlen')||array_filter($u["descs"]))$J["indexes"][]=array("columns"=>array(1=>""));}if(!$J){foreach($v -as$x=>$u){$v[$x]["name"]=$x;$v[$x]["columns"][]="";}$v[]=array("columns"=>array(1=>""));$J["indexes"]=$v;}echo' +';}elseif(isset($_GET["indexes"])){$a=$_GET["indexes"];$md=array("PRIMARY","UNIQUE","INDEX");$R=table_status($a,true);if(preg_match('~MyISAM|M?aria'.($h->server_info>=5.6?'|InnoDB':'').'~i',$R["Engine"]))$md[]="FULLTEXT";$v=indexes($a);$zf=array();if($w=="mongo"){$zf=$v["_id_"];unset($md[0]);unset($v["_id_"]);}$K=$_POST;if($_POST&&!$m&&!$_POST["add"]&&!$_POST["drop_col"]){$c=array();foreach($K["indexes"]as$u){$C=$u["name"];if(in_array($u["type"],$md)){$f=array();$Td=array();$Ob=array();$O=array();ksort($u["columns"]);foreach($u["columns"]as$x=>$e){if($e!=""){$y=$u["lengths"][$x];$Nb=$u["descs"][$x];$O[]=idf_escape($e).($y?"(".(+$y).")":"").($Nb?" DESC":"");$f[]=$e;$Td[]=($y?$y:null);$Ob[]=$Nb;}}if($f){$uc=$v[$C];if($uc){ksort($uc["columns"]);ksort($uc["lengths"]);ksort($uc["descs"]);if($u["type"]==$uc["type"]&&array_values($uc["columns"])===$f&&(!$uc["lengths"]||array_values($uc["lengths"])===$Td)&&array_values($uc["descs"])===$Ob){unset($v[$C]);continue;}}$c[]=array($u["type"],$C,$O);}}}foreach($v +as$C=>$uc)$c[]=array($uc["type"],$C,"DROP");if(!$c)redirect(ME."table=".urlencode($a));queries_redirect(ME."table=".urlencode($a),lang(163),alter_indexes($a,$c));}page_header(lang(119),$m,array("table"=>$a),h($a));$o=array_keys(fields($a));if($_POST["add"]){foreach($K["indexes"]as$x=>$u){if($u["columns"][count($u["columns"])]!="")$K["indexes"][$x]["columns"][]="";}$u=end($K["indexes"]);if($u["type"]||array_filter($u["columns"],'strlen'))$K["indexes"][]=array("columns"=>array(1=>""));}if(!$K){foreach($v +as$x=>$u){$v[$x]["name"]=$x;$v[$x]["columns"][]="";}$v[]=array("columns"=>array(1=>""));$K["indexes"]=$v;}echo'
- -';$gd=1;foreach($J["indexes"]as$u){echo"
',lang(160),'',lang(161),'',lang(162),'
".adminer_html_select("indexes[$gd][type]",array(-1=>"")+$Tc,$u["type"],($gd==count($J["indexes"])?"indexesAddRow(this);":1))."";ksort($u["columns"]);$s=1;foreach($u["columns"]as$x=>$f){echo"".adminer_html_select("indexes[$gd][columns][$s]",array(-1=>"")+$p,$f,($s==count($u["columns"])?"indexesAddColumn":"indexesChangeColumn")."(this, '".js_escape($w=="sql"?"":$_GET["indexes"]."_")."');"),($w=="sql"||$w=="mssql"?"":""),($w!="sql"?checkbox("indexes[$gd][descs][$s]",1,$u["descs"][$x],lang(42)):"")," ";$s++;}echo"\n";$gd++;}echo'
+ +',lang(164),'',lang(165),'',lang(166);?> +  + +';if($zf){echo"PRIMARY";foreach($zf["columns"]as$x=>$e){echo +select_input(" disabled",$o,$e)," ";}echo"\n";}$Cd=1;foreach($K["indexes"]as$u){if(!$_POST["drop_col"]||$Cd!=key($_POST["drop_col"])){echo"".adminer_html_select("indexes[$Cd][type]",array(-1=>"")+$md,$u["type"],($Cd==count($K["indexes"])?"indexesAddRow(this);":1)),"";ksort($u["columns"]);$r=1;foreach($u["columns"]as$x=>$e){echo"".select_input(" name='indexes[$Cd][columns][$r]' onchange=\"".($r==count($u["columns"])?"indexesAddColumn":"indexesChangeColumn")."(this, '".js_escape($w=="sql"?"":$_GET["indexes"]."_")."');\"",($o?array_combine($o,$o):$o),$e),($w=="sql"||$w=="mssql"?"":""),($w!="sql"?checkbox("indexes[$Cd][descs][$r]",1,$u["descs"][$x],lang(50)):"")," ";$r++;}echo"\n","\n";}$Cd++;}echo'

- -

- + +

-';}elseif(isset($_GET["database"])){$J=$_POST;if($_POST&&!$n&&!isset($_POST["add_x"])){restart_session();$B=trim($J["name"]);if($_POST["drop"]){$_GET["db"]="";queries_redirect(remove_from_uri("db|database"),lang(163),drop_databases(array(DB)));}elseif(DB!==$B){if(DB!=""){$_GET["db"]=$B;queries_redirect(preg_replace('~db=[^&]*&~','',ME)."db=".urlencode($B),lang(164),rename_database($B,$J["collation"]));}else{$l=explode("\n",str_replace("\r","",$B));$Sf=true;$pd="";foreach($l -as$m){if(count($l)==1||$m!=""){if(!create_database($m,$J["collation"]))$Sf=false;$pd=$m;}}queries_redirect(ME."db=".urlencode($pd),lang(165),$Sf);}}else{if(!$J["collation"])redirect(substr(ME,0,-1));query_redirect("ALTER DATABASE ".idf_escape($B).(eregi('^[a-z0-9_]+$',$J["collation"])?" COLLATE $J[collation]":""),substr(ME,0,-1),lang(166));}}page_header(DB!=""?lang(50):lang(167),$n,array(),DB);$Xa=collations();$B=DB;if($_POST)$B=$J["name"];elseif(DB!="")$J["collation"]=db_collation(DB,$Xa);elseif($w=="sql"){foreach(get_vals("SHOW GRANTS")as$Dc){if(preg_match('~ ON (`(([^\\\\`]|``|\\\\.)*)%`\\.\\*)?~',$Dc,$A)&&$A[1]){$B=stripcslashes(idf_unescape("`$A[2]`"));break;}}}echo' +';}elseif(isset($_GET["database"])){$K=$_POST;if($_POST&&!$m&&!isset($_POST["add_x"])){restart_session();$C=trim($K["name"]);if($_POST["drop"]){$_GET["db"]="";queries_redirect(remove_from_uri("db|database"),lang(167),drop_databases(array(DB)));}elseif(DB!==$C){if(DB!=""){$_GET["db"]=$C;queries_redirect(preg_replace('~\bdb=[^&]*&~','',ME)."db=".urlencode($C),lang(168),rename_database($C,$K["collation"]));}else{$j=explode("\n",str_replace("\r","",$C));$Jg=true;$Nd="";foreach($j +as$k){if(count($j)==1||$k!=""){if(!create_database($k,$K["collation"]))$Jg=false;$Nd=$k;}}queries_redirect(ME."db=".urlencode($Nd),lang(169),$Jg);}}else{if(!$K["collation"])redirect(substr(ME,0,-1));query_redirect("ALTER DATABASE ".idf_escape($C).(preg_match('~^[a-z0-9_]+$~i',$K["collation"])?" COLLATE $K[collation]":""),substr(ME,0,-1),lang(170));}}page_header(DB!=""?lang(59):lang(171),$m,array(),h(DB));$kb=collations();$C=DB;if($_POST)$C=$K["name"];elseif(DB!="")$K["collation"]=db_collation(DB,$kb);elseif($w=="sql"){foreach(get_vals("SHOW GRANTS")as$Tc){if(preg_match('~ ON (`(([^\\\\`]|``|\\\\.)*)%`\\.\\*)?~',$Tc,$B)&&$B[1]){$C=stripcslashes(idf_unescape("`$B[2]`"));break;}}}echo'

-',($_POST["add_x"]||strpos($B,"\n")?'
':'')."\n".($Xa?adminer_html_select("collation",array(""=>"(".lang(91).")")+$Xa,$J["collation"]):"");?> +',($_POST["add_x"]||strpos($C,"\n")?'
':'')."\n".($kb?adminer_html_select("collation",array(""=>"(".lang(85).")")+$kb,$K["collation"]).doc_link(array('sql'=>"charset-charsets.html",'mssql'=>"ms187963.aspx",)):"");?> -';if(DB!="")echo"\n";elseif(!$_POST["add_x"]&&$_GET["db"]=="")echo"\n";echo' +lang(14),'"> +';if(DB!="")echo"\n";elseif(!$_POST["add_x"]&&$_GET["db"]=="")echo"\n";echo'

-';}elseif(isset($_GET["scheme"])){$J=$_POST;if($_POST&&!$n){$z=preg_replace('~ns=[^&]*&~','',ME)."ns=";if($_POST["drop"])query_redirect("DROP SCHEMA ".idf_escape($_GET["ns"]),$z,lang(168));else{$B=trim($J["name"]);$z.=urlencode($B);if($_GET["ns"]=="")query_redirect("CREATE SCHEMA ".idf_escape($B),$z,lang(169));elseif($_GET["ns"]!=$B)query_redirect("ALTER SCHEMA ".idf_escape($_GET["ns"])." RENAME TO ".idf_escape($B),$z,lang(170));else -redirect($z);}}page_header($_GET["ns"]!=""?lang(51):lang(52),$n);if(!$J)$J["name"]=$_GET["ns"];echo' +';}elseif(isset($_GET["scheme"])){$K=$_POST;if($_POST&&!$m){$_=preg_replace('~ns=[^&]*&~','',ME)."ns=";if($_POST["drop"])query_redirect("DROP SCHEMA ".idf_escape($_GET["ns"]),$_,lang(172));else{$C=trim($K["name"]);$_.=urlencode($C);if($_GET["ns"]=="")query_redirect("CREATE SCHEMA ".idf_escape($C),$_,lang(173));elseif($_GET["ns"]!=$C)query_redirect("ALTER SCHEMA ".idf_escape($_GET["ns"])." RENAME TO ".idf_escape($C),$_,lang(174));else +redirect($_);}}page_header($_GET["ns"]!=""?lang(60):lang(61),$m);if(!$K)$K["name"]=$_GET["ns"];echo'
-

" autocapitalize="off"> +

" autocapitalize="off"> -';if($_GET["ns"]!="")echo"\n";echo' +lang(14),'"> +';if($_GET["ns"]!="")echo"\n";echo'

-';}elseif(isset($_GET["call"])){$da=$_GET["call"];page_header(lang(171).": ".h($da),$n);$sf=routine($da,(isset($_GET["callf"])?"FUNCTION":"PROCEDURE"));$Rc=array();$xe=array();foreach($sf["fields"]as$s=>$o){if(substr($o["inout"],-3)=="OUT")$xe[$s]="@".idf_escape($o["field"])." AS ".idf_escape($o["field"]);if(!$o["inout"]||substr($o["inout"],0,2)=="IN")$Rc[]=$s;}if(!$n&&$_POST){$Ma=array();foreach($sf["fields"]as$x=>$o){if(in_array($x,$Rc)){$X=process_input($o);if($X===false)$X="''";if(isset($xe[$x]))$i->query("SET @".idf_escape($o["field"])." = $X");}$Ma[]=(isset($xe[$x])?"@".idf_escape($o["field"]):$X);}$G=(isset($_GET["callf"])?"SELECT":"CALL")." ".idf_escape($da)."(".implode(", ",$Ma).")";echo"

".h($G)." ".lang(34)."\n";if(!$i->multi_query($G))echo"

".error()."\n";else{$j=connect();if(is_object($j))$j->select_db(DB);do{$H=$i->store_result();if(is_object($H))select($H,$j);else -echo"

".lang(172,$i->affected_rows)."\n";}while($i->next_result());if($xe)select($i->query("SELECT ".implode(", ",$xe)));}}echo' +';}elseif(isset($_GET["call"])){$da=$_GET["call"];page_header(lang(175).": ".h($da),$m);$eg=routine($da,(isset($_GET["callf"])?"FUNCTION":"PROCEDURE"));$kd=array();$cf=array();foreach($eg["fields"]as$r=>$n){if(substr($n["inout"],-3)=="OUT")$cf[$r]="@".idf_escape($n["field"])." AS ".idf_escape($n["field"]);if(!$n["inout"]||substr($n["inout"],0,2)=="IN")$kd[]=$r;}if(!$m&&$_POST){$Xa=array();foreach($eg["fields"]as$x=>$n){if(in_array($x,$kd)){$X=process_input($n);if($X===false)$X="''";if(isset($cf[$x]))$h->query("SET @".idf_escape($n["field"])." = $X");}$Xa[]=(isset($cf[$x])?"@".idf_escape($n["field"]):$X);}$H=(isset($_GET["callf"])?"SELECT":"CALL")." ".idf_escape($da)."(".implode(", ",$Xa).")";echo"

".h($H)." ".lang(10)."\n";if(!$h->multi_query($H))echo"

".error()."\n";else{$i=connect();if(is_object($i))$i->select_db(DB);do{$I=$h->store_result();if(is_object($I))select($I,$i);else +echo"

".lang(176,$h->affected_rows)."\n";}while($h->next_result());if($cf)select($h->query("SELECT ".implode(", ",$cf)));}}echo'

-';if($Rc){echo"\n";foreach($Rc -as$x){$o=$sf["fields"][$x];$B=$o["field"];echo"
".$b->fieldName($o);$Y=$_POST["fields"][$B];if($Y!=""){if($o["type"]=="enum")$Y=+$Y;if($o["type"]=="set")$Y=array_sum($Y);}input($o,$Y,(string)$_POST["function"][$B]);echo"\n";}echo"
\n";}echo'

- - +';if($kd){echo"\n";foreach($kd +as$x){$n=$eg["fields"][$x];$C=$n["field"];echo"
".$b->fieldName($n);$Y=$_POST["fields"][$C];if($Y!=""){if($n["type"]=="enum")$Y=+$Y;if($n["type"]=="set")$Y=array_sum($Y);}input($n,$Y,(string)$_POST["function"][$C]);echo"\n";}echo"
\n";}echo'

+ +

-';}elseif(isset($_GET["foreign"])){$a=$_GET["foreign"];$B=$_GET["name"];$J=$_POST;if($_POST&&!$n&&!$_POST["add"]&&!$_POST["change"]&&!$_POST["change-js"]){if($_POST["drop"])query_redirect("ALTER TABLE ".table($a)."\nDROP ".($w=="sql"?"FOREIGN KEY ":"CONSTRAINT ").idf_escape($B),ME."table=".urlencode($a),lang(173));else{$If=array_filter($J["source"],'strlen');ksort($If);$fg=array();foreach($If -as$x=>$X)$fg[$x]=$J["target"][$x];query_redirect("ALTER TABLE ".table($a).($B!=""?"\nDROP ".($w=="sql"?"FOREIGN KEY ":"CONSTRAINT ").idf_escape($B).",":"")."\nADD FOREIGN KEY (".implode(", ",array_map('idf_escape',$If)).") REFERENCES ".table($J["table"])." (".implode(", ",array_map('idf_escape',$fg)).")".(ereg("^($he)\$",$J["on_delete"])?" ON DELETE $J[on_delete]":"").(ereg("^($he)\$",$J["on_update"])?" ON UPDATE $J[on_update]":""),ME."table=".urlencode($a),($B!=""?lang(174):lang(175)));$n=lang(176)."
$n";}}page_header(lang(177),$n,array("table"=>$a),$a);if($_POST){ksort($J["source"]);if($_POST["add"])$J["source"][]="";elseif($_POST["change"]||$_POST["change-js"])$J["target"]=array();}elseif($B!=""){$vc=foreign_keys($a);$J=$vc[$B];$J["source"][]="";}else{$J["table"]=$a;$J["source"]=array("");}$If=array_keys(fields($a));$fg=($a===$J["table"]?$If:array_keys(fields($J["table"])));$ef=array_keys(array_filter(table_status('',true),'fk_support'));echo' +';}elseif(isset($_GET["foreign"])){$a=$_GET["foreign"];$C=$_GET["name"];$K=$_POST;if($_POST&&!$m&&!$_POST["add"]&&!$_POST["change"]&&!$_POST["change-js"]){$je=($_POST["drop"]?lang(177):($C!=""?lang(178):lang(179)));$A=ME."table=".urlencode($a);$K["source"]=array_filter($K["source"],'strlen');ksort($K["source"]);$Xg=array();foreach($K["source"]as$x=>$X)$Xg[$x]=$K["target"][$x];$K["target"]=$Xg;if($w=="sqlite")queries_redirect($A,$je,recreate_table($a,$a,array(),array(),array(" $C"=>($_POST["drop"]?"":" ".format_foreign_key($K)))));else{$c="ALTER TABLE ".table($a);$Vb="\nDROP ".($w=="sql"?"FOREIGN KEY ":"CONSTRAINT ").idf_escape($C);if($_POST["drop"])query_redirect($c.$Vb,$A,$je);else{query_redirect($c.($C!=""?"$Vb,":"")."\nADD".format_foreign_key($K),$A,$je);$m=lang(180)."
$m";}}}page_header(lang(181),$m,array("table"=>$a),h($a));if($_POST){ksort($K["source"]);if($_POST["add"])$K["source"][]="";elseif($_POST["change"]||$_POST["change-js"])$K["target"]=array();}elseif($C!=""){$Lc=foreign_keys($a);$K=$Lc[$C];$K["source"][]="";}else{$K["table"]=$a;$K["source"]=array("");}$_g=array_keys(fields($a));$Xg=($a===$K["table"]?$_g:array_keys(fields($K["table"])));$Qf=array_keys(array_filter(table_status('',true),'fk_support'));echo'

-';if($J["db"]==""&&$J["ns"]==""){echo -lang(178),': -',adminer_html_select("table",$ef,$J["table"],"this.form['change-js'].value = '1'; this.form.submit();"),' -

+';if($K["db"]==""&&$K["ns"]==""){echo +lang(182),': +',adminer_html_select("table",$Qf,$K["table"],"this.form['change-js'].value = '1'; this.form.submit();"),' +

- -';$gd=0;foreach($J["source"]as$x=>$X){echo"","
',lang(111),'',lang(112),'
".adminer_html_select("source[".(+$x)."]",array(-1=>"")+$If,$X,($gd==count($J["source"])-1?"foreignAddRow(this);":1)),"".adminer_html_select("target[".(+$x)."]",$fg,$J["target"][$x]);$gd++;}echo'
+',lang(121),'',lang(122),' +';$Cd=0;foreach($K["source"]as$x=>$X){echo"","".adminer_html_select("source[".(+$x)."]",array(-1=>"")+$_g,$X,($Cd==count($K["source"])-1?"foreignAddRow(this);":1)),"".adminer_html_select("target[".(+$x)."]",$Xg,$K["target"][$x]);$Cd++;}echo'

-',lang(93),': ',adminer_html_select("on_delete",array(-1=>"")+explode("|",$he),$J["on_delete"]),' ',lang(92),': ',adminer_html_select("on_update",array(-1=>"")+explode("|",$he),$J["on_update"]),'

- -

-';}if($B!=""){echo'';}echo' +',lang(87),': ',adminer_html_select("on_delete",array(-1=>"")+explode("|",$Ke),$K["on_delete"]),' ',lang(86),': ',adminer_html_select("on_update",array(-1=>"")+explode("|",$Ke),$K["on_update"]),doc_link(array('sql'=>"innodb-foreign-key-constraints.html",'pgsql'=>"sql-createtable.html#SQL-CREATETABLE-REFERENCES",'mssql'=>"ms174979.aspx",'oracle'=>"clauses002.htm#sthref2903",)),'

+ +

+';}if($C!=""){echo'';}echo'

-';}elseif(isset($_GET["view"])){$a=$_GET["view"];$J=$_POST;if($_POST&&!$n){$B=trim($J["name"]);$ya=" AS\n$J[select]";$_=ME."table=".urlencode($B);$Jd=lang(181);if(!$_POST["drop"]&&$a==$B&&$w!="sqlite")query_redirect(($w=="mssql"?"ALTER":"CREATE OR REPLACE")." VIEW ".table($B).$ya,$_,$Jd);else{$hg=$B."_adminer_".uniqid();drop_create("DROP VIEW ".table($a),"CREATE VIEW ".table($B).$ya,"DROP VIEW ".table($B),"CREATE VIEW ".table($hg).$ya,"DROP VIEW ".table($hg),($_POST["drop"]?substr(ME,0,-1):$_),lang(182),$Jd,lang(183),$a,$B);}}if(!$_POST&&$a!=""){$J=view($a);$J["name"]=$a;if(!$n)$n=$i->error;}page_header(($a!=""?lang(30):lang(184)),$n,array("table"=>$a),$a);echo' +';}elseif(isset($_GET["view"])){$a=$_GET["view"];$K=$_POST;if($_POST&&!$m){$C=trim($K["name"]);$Fa=" AS\n$K[select]";$A=ME."table=".urlencode($C);$je=lang(185);if(!$_POST["drop"]&&$a==$C&&$w!="sqlite")query_redirect(($w=="mssql"?"ALTER":"CREATE OR REPLACE")." VIEW ".table($C).$Fa,$A,$je);else{$Zg=$C."_adminer_".uniqid();drop_create("DROP VIEW ".table($a),"CREATE VIEW ".table($C).$Fa,"DROP VIEW ".table($C),"CREATE VIEW ".table($Zg).$Fa,"DROP VIEW ".table($Zg),($_POST["drop"]?substr(ME,0,-1):$A),lang(186),$je,lang(187),$a,$C);}}if(!$_POST&&$a!=""){$K=view($a);$K["name"]=$a;if(!$m)$m=$h->error;}page_header(($a!=""?lang(40):lang(188)),$m,array("table"=>$a),h($a));echo'
-

',lang(162),': -

';textarea("select",$J["select"]);echo'

- -';if($_GET["view"]!=""){echo'';}echo' +

',lang(166),': +

';textarea("select",$K["select"]);echo'

+ +';if($_GET["view"]!=""){echo'';}echo'

-';}elseif(isset($_GET["event"])){$aa=$_GET["event"];$bd=array("YEAR","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND");$Of=array("ENABLED"=>"ENABLE","DISABLED"=>"DISABLE","SLAVESIDE_DISABLED"=>"DISABLE ON SLAVE");$J=$_POST;if($_POST&&!$n){if($_POST["drop"])query_redirect("DROP EVENT ".idf_escape($aa),substr(ME,0,-1),lang(185));elseif(in_array($J["INTERVAL_FIELD"],$bd)&&isset($Of[$J["STATUS"]])){$xf="\nON SCHEDULE ".($J["INTERVAL_VALUE"]?"EVERY ".q($J["INTERVAL_VALUE"])." $J[INTERVAL_FIELD]".($J["STARTS"]?" STARTS ".q($J["STARTS"]):"").($J["ENDS"]?" ENDS ".q($J["ENDS"]):""):"AT ".q($J["STARTS"]))." ON COMPLETION".($J["ON_COMPLETION"]?"":" NOT")." PRESERVE";queries_redirect(substr(ME,0,-1),($aa!=""?lang(186):lang(187)),queries(($aa!=""?"ALTER EVENT ".idf_escape($aa).$xf.($aa!=$J["EVENT_NAME"]?"\nRENAME TO ".idf_escape($J["EVENT_NAME"]):""):"CREATE EVENT ".idf_escape($J["EVENT_NAME"]).$xf)."\n".$Of[$J["STATUS"]]." COMMENT ".q($J["EVENT_COMMENT"]).rtrim(" DO\n$J[EVENT_DEFINITION]",";").";"));}}page_header(($aa!=""?lang(188).": ".h($aa):lang(189)),$n);if(!$J&&$aa!=""){$K=get_rows("SELECT * FROM information_schema.EVENTS WHERE EVENT_SCHEMA = ".q(DB)." AND EVENT_NAME = ".q($aa));$J=reset($K);}echo' +';}elseif(isset($_GET["event"])){$aa=$_GET["event"];$ud=array("YEAR","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND");$Fg=array("ENABLED"=>"ENABLE","DISABLED"=>"DISABLE","SLAVESIDE_DISABLED"=>"DISABLE ON SLAVE");$K=$_POST;if($_POST&&!$m){if($_POST["drop"])query_redirect("DROP EVENT ".idf_escape($aa),substr(ME,0,-1),lang(189));elseif(in_array($K["INTERVAL_FIELD"],$ud)&&isset($Fg[$K["STATUS"]])){$jg="\nON SCHEDULE ".($K["INTERVAL_VALUE"]?"EVERY ".q($K["INTERVAL_VALUE"])." $K[INTERVAL_FIELD]".($K["STARTS"]?" STARTS ".q($K["STARTS"]):"").($K["ENDS"]?" ENDS ".q($K["ENDS"]):""):"AT ".q($K["STARTS"]))." ON COMPLETION".($K["ON_COMPLETION"]?"":" NOT")." PRESERVE";queries_redirect(substr(ME,0,-1),($aa!=""?lang(190):lang(191)),queries(($aa!=""?"ALTER EVENT ".idf_escape($aa).$jg.($aa!=$K["EVENT_NAME"]?"\nRENAME TO ".idf_escape($K["EVENT_NAME"]):""):"CREATE EVENT ".idf_escape($K["EVENT_NAME"]).$jg)."\n".$Fg[$K["STATUS"]]." COMMENT ".q($K["EVENT_COMMENT"]).rtrim(" DO\n$K[EVENT_DEFINITION]",";").";"));}}page_header(($aa!=""?lang(192).": ".h($aa):lang(193)),$m);if(!$K&&$aa!=""){$L=get_rows("SELECT * FROM information_schema.EVENTS WHERE EVENT_SCHEMA = ".q(DB)." AND EVENT_NAME = ".q($aa));$K=reset($L);}echo'
-
',lang(162),' -
',lang(190),' -
',lang(191),' -
',lang(192),' ',adminer_html_select("INTERVAL_FIELD",$bd,$J["INTERVAL_FIELD"]),'
',lang(80),'',adminer_html_select("STATUS",$Of,$J["STATUS"]),'
',lang(101),' -
 ',checkbox("ON_COMPLETION","PRESERVE",$J["ON_COMPLETION"]=="PRESERVE",lang(193)),'
-

';textarea("EVENT_DEFINITION",$J["EVENT_DEFINITION"]);echo'

- -';if($aa!=""){echo'';}echo' +',lang(166),' +',lang(194),' +',lang(195),' +',lang(196),' ',adminer_html_select("INTERVAL_FIELD",$ud,$K["INTERVAL_FIELD"]),'',lang(105),'',adminer_html_select("STATUS",$Fg,$K["STATUS"]),'',lang(94),' + ',checkbox("ON_COMPLETION","PRESERVE",$K["ON_COMPLETION"]=="PRESERVE",lang(197)),' +

';textarea("EVENT_DEFINITION",$K["EVENT_DEFINITION"]);echo'

+ +';if($aa!=""){echo'';}echo'

-';}elseif(isset($_GET["procedure"])){$da=$_GET["procedure"];$sf=(isset($_GET["function"])?"FUNCTION":"PROCEDURE");$J=$_POST;$J["fields"]=(array)$J["fields"];if($_POST&&!process_fields($J["fields"])&&!$n){$hg="$J[name]_adminer_".uniqid();drop_create("DROP $sf ".idf_escape($da),create_routine($sf,$J),"DROP $sf ".idf_escape($J["name"]),create_routine($sf,array("name"=>$hg)+$J),"DROP $sf ".idf_escape($hg),substr(ME,0,-1),lang(194),lang(195),lang(196),$da,$J["name"]);}page_header(($da!=""?(isset($_GET["function"])?lang(197):lang(198)).": ".h($da):(isset($_GET["function"])?lang(199):lang(200))),$n);if(!$_POST&&$da!=""){$J=routine($da,$sf);$J["name"]=$da;}$Xa=get_vals("SHOW CHARACTER SET");sort($Xa);$tf=routine_languages();echo' +';}elseif(isset($_GET["procedure"])){$da=$_GET["procedure"];$eg=(isset($_GET["function"])?"FUNCTION":"PROCEDURE");$K=$_POST;$K["fields"]=(array)$K["fields"];if($_POST&&!process_fields($K["fields"])&&!$m){$Zg="$K[name]_adminer_".uniqid();drop_create("DROP $eg ".idf_escape($da),create_routine($eg,$K),"DROP $eg ".idf_escape($K["name"]),create_routine($eg,array("name"=>$Zg)+$K),"DROP $eg ".idf_escape($Zg),substr(ME,0,-1),lang(198),lang(199),lang(200),$da,$K["name"]);}page_header(($da!=""?(isset($_GET["function"])?lang(201):lang(202)).": ".h($da):(isset($_GET["function"])?lang(203):lang(204))),$m);if(!$_POST&&$da!=""){$K=routine($da,$eg);$K["name"]=$da;}$kb=get_vals("SHOW CHARACTER SET");sort($kb);$fg=routine_languages();echo'
-

',lang(162),': -',($tf?lang(9).": ".adminer_html_select("language",$tf,$J["language"]):""),' -';edit_fields($J["fields"],$Xa,$sf);if(isset($_GET["function"])){echo"
".lang(201);edit_type("returns",$J["returns"],$Xa);}echo'
-

';textarea("definition",$J["definition"]);echo'

- -';if($da!=""){echo'';}echo' +

',lang(166),': +',($fg?lang(19).": ".adminer_html_select("language",$fg,$K["language"]):""),' + +';edit_fields($K["fields"],$kb,$eg);if(isset($_GET["function"])){echo"
".lang(205);edit_type("returns",$K["returns"],$kb);}echo'
+

';textarea("definition",$K["definition"]);echo'

+ +';if($da!=""){echo'';}echo'

-';}elseif(isset($_GET["sequence"])){$fa=$_GET["sequence"];$J=$_POST;if($_POST&&!$n){$z=substr(ME,0,-1);$B=trim($J["name"]);if($_POST["drop"])query_redirect("DROP SEQUENCE ".idf_escape($fa),$z,lang(202));elseif($fa=="")query_redirect("CREATE SEQUENCE ".idf_escape($B),$z,lang(203));elseif($fa!=$B)query_redirect("ALTER SEQUENCE ".idf_escape($fa)." RENAME TO ".idf_escape($B),$z,lang(204));else -redirect($z);}page_header($fa!=""?lang(205).": ".h($fa):lang(206),$n);if(!$J)$J["name"]=$fa;echo' +';}elseif(isset($_GET["sequence"])){$fa=$_GET["sequence"];$K=$_POST;if($_POST&&!$m){$_=substr(ME,0,-1);$C=trim($K["name"]);if($_POST["drop"])query_redirect("DROP SEQUENCE ".idf_escape($fa),$_,lang(206));elseif($fa=="")query_redirect("CREATE SEQUENCE ".idf_escape($C),$_,lang(207));elseif($fa!=$C)query_redirect("ALTER SEQUENCE ".idf_escape($fa)." RENAME TO ".idf_escape($C),$_,lang(208));else +redirect($_);}page_header($fa!=""?lang(209).": ".h($fa):lang(210),$m);if(!$K)$K["name"]=$fa;echo'
-

- -';if($fa!="")echo"\n";echo' +

+ +';if($fa!="")echo"\n";echo'

-';}elseif(isset($_GET["type"])){$ga=$_GET["type"];$J=$_POST;if($_POST&&!$n){$z=substr(ME,0,-1);if($_POST["drop"])query_redirect("DROP TYPE ".idf_escape($ga),$z,lang(207));else -query_redirect("CREATE TYPE ".idf_escape(trim($J["name"]))." $J[as]",$z,lang(208));}page_header($ga!=""?lang(209).": ".h($ga):lang(210),$n);if(!$J)$J["as"]="AS ";echo' +';}elseif(isset($_GET["type"])){$ga=$_GET["type"];$K=$_POST;if($_POST&&!$m){$_=substr(ME,0,-1);if($_POST["drop"])query_redirect("DROP TYPE ".idf_escape($ga),$_,lang(211));else +query_redirect("CREATE TYPE ".idf_escape(trim($K["name"]))." $K[as]",$_,lang(212));}page_header($ga!=""?lang(213).": ".h($ga):lang(214),$m);if(!$K)$K["as"]="AS ";echo'

-';if($ga!="")echo"\n";else{echo"\n";textarea("as",$J["as"]);echo"

\n";}echo' +';if($ga!="")echo"\n";else{echo"\n";textarea("as",$K["as"]);echo"

\n";}echo'

-';}elseif(isset($_GET["trigger"])){$a=$_GET["trigger"];$B=$_GET["name"];$Ag=trigger_options();$zg=array("INSERT","UPDATE","DELETE");$J=(array)trigger($B)+array("Trigger"=>$a."_bi");if($_POST){if(!$n&&in_array($_POST["Timing"],$Ag["Timing"])&&in_array($_POST["Event"],$zg)&&in_array($_POST["Type"],$Ag["Type"])){$ge=" ON ".table($a);$Fb="DROP TRIGGER ".idf_escape($B).($w=="pgsql"?$ge:"");$_=ME."table=".urlencode($a);if($_POST["drop"])query_redirect($Fb,$_,lang(211));else{if($B!="")queries($Fb);queries_redirect($_,($B!=""?lang(212):lang(213)),queries(create_trigger($ge,$_POST)));if($B!="")queries(create_trigger($ge,$J+array("Type"=>reset($Ag["Type"]))));}}$J=$_POST;}page_header(($B!=""?lang(214).": ".h($B):lang(215)),$n,array("table"=>$a));echo' +';}elseif(isset($_GET["trigger"])){$a=$_GET["trigger"];$C=$_GET["name"];$uh=trigger_options();$K=(array)trigger($C)+array("Trigger"=>$a."_bi");if($_POST){if(!$m&&in_array($_POST["Timing"],$uh["Timing"])&&in_array($_POST["Event"],$uh["Event"])&&in_array($_POST["Type"],$uh["Type"])){$Je=" ON ".table($a);$Vb="DROP TRIGGER ".idf_escape($C).($w=="pgsql"?$Je:"");$A=ME."table=".urlencode($a);if($_POST["drop"])query_redirect($Vb,$A,lang(215));else{if($C!="")queries($Vb);queries_redirect($A,($C!=""?lang(216):lang(217)),queries(create_trigger($Je,$_POST)));if($C!="")queries(create_trigger($Je,$K+array("Type"=>reset($uh["Type"]))));}}$K=$_POST;}page_header(($C!=""?lang(218).": ".h($C):lang(219)),$m,array("table"=>$a));echo'
-
',lang(216),'',adminer_html_select("Timing",$Ag["Timing"],$J["Timing"],"if (/^".preg_quote($a,"/")."_[ba][iud]$/.test(this.form['Trigger'].value)) this.form['Trigger'].value = '".js_escape($a)."_' + selectValue(this).charAt(0).toLowerCase() + selectValue(this.form['Event']).charAt(0).toLowerCase();"),'
',lang(217),'',adminer_html_select("Event",$zg,$J["Event"],"this.form['Timing'].onchange();"),'
',lang(96),'',adminer_html_select("Type",$Ag["Type"],$J["Type"]),'
-

',lang(162),': -

';textarea("Statement",$J["Statement"]);echo'

- -';if($B!=""){echo'';}echo' +',lang(220),'',adminer_html_select("Timing",$uh["Timing"],$K["Timing"],"triggerChange(/^".preg_quote($a,"/")."_[ba][iud]$/, '".js_escape($a)."', this.form);"),'',lang(221),'',adminer_html_select("Event",$uh["Event"],$K["Event"],"this.form['Timing'].onchange();"),(in_array("UPDATE OF",$uh["Event"])?" ":""),'',lang(90),'',adminer_html_select("Type",$uh["Type"],$K["Type"]),' +

',lang(166),': " maxlength="64" autocapitalize="off"> + +

+ +';if($C!=""){echo'';}echo'

-';}elseif(isset($_GET["user"])){$ha=$_GET["user"];$Ve=array(""=>array("All privileges"=>""));foreach(get_rows("SHOW PRIVILEGES")as$J){foreach(explode(",",($J["Privilege"]=="Grant option"?"":$J["Context"]))as$hb)$Ve[$hb][$J["Privilege"]]=$J["Comment"];}$Ve["Server Admin"]+=$Ve["File access on server"];$Ve["Databases"]["Create routine"]=$Ve["Procedures"]["Create routine"];unset($Ve["Procedures"]["Create routine"]);$Ve["Columns"]=array();foreach(array("Select","Insert","Update","References")as$X)$Ve["Columns"][$X]=$Ve["Tables"][$X];unset($Ve["Server Admin"]["Usage"]);foreach($Ve["Tables"]as$x=>$X)unset($Ve["Databases"][$x]);$Vd=array();if($_POST){foreach($_POST["objects"]as$x=>$X)$Vd[$X]=(array)$Vd[$X]+(array)$_POST["grants"][$x];}$Ec=array();$ee="";if(isset($_GET["host"])&&($H=$i->query("SHOW GRANTS FOR ".q($ha)."@".q($_GET["host"])))){while($J=$H->fetch_row()){if(preg_match('~GRANT (.*) ON (.*) TO ~',$J[0],$A)&&preg_match_all('~ *([^(,]*[^ ,(])( *\\([^)]+\\))?~',$A[1],$Bd,PREG_SET_ORDER)){foreach($Bd -as$X){if($X[1]!="USAGE")$Ec["$A[2]$X[2]"][$X[1]]=true;if(ereg(' WITH GRANT OPTION',$J[0]))$Ec["$A[2]$X[2]"]["GRANT OPTION"]=true;}}if(preg_match("~ IDENTIFIED BY PASSWORD '([^']+)~",$J[0],$A))$ee=$A[1];}}if($_POST&&!$n){$fe=(isset($_GET["host"])?q($ha)."@".q($_GET["host"]):"''");if($_POST["drop"])query_redirect("DROP USER $fe",ME."privileges=",lang(218));else{$Xd=q($_POST["user"])."@".q($_POST["host"]);$Ge=$_POST["pass"];if($Ge!=''&&!$_POST["hashed"]){$Ge=$i->result("SELECT PASSWORD(".q($Ge).")");$n=!$Ge;}$lb=false;if(!$n){if($fe!=$Xd){$lb=queries(($i->server_info<5?"GRANT USAGE ON *.* TO":"CREATE USER")." $Xd IDENTIFIED BY PASSWORD ".q($Ge));$n=!$lb;}elseif($Ge!=$ee)queries("SET PASSWORD FOR $Xd = ".q($Ge));}if(!$n){$pf=array();foreach($Vd -as$ae=>$Dc){if(isset($_GET["grant"]))$Dc=array_filter($Dc);$Dc=array_keys($Dc);if(isset($_GET["grant"]))$pf=array_diff(array_keys(array_filter($Vd[$ae],'strlen')),$Dc);elseif($fe==$Xd){$ce=array_keys((array)$Ec[$ae]);$pf=array_diff($ce,$Dc);$Dc=array_diff($Dc,$ce);unset($Ec[$ae]);}if(preg_match('~^(.+)\\s*(\\(.*\\))?$~U',$ae,$A)&&(!grant("REVOKE",$pf,$A[2]," ON $A[1] FROM $Xd")||!grant("GRANT",$Dc,$A[2]," ON $A[1] TO $Xd"))){$n=true;break;}}}if(!$n&&isset($_GET["host"])){if($fe!=$Xd)queries("DROP USER $fe");elseif(!isset($_GET["grant"])){foreach($Ec -as$ae=>$pf){if(preg_match('~^(.+)(\\(.*\\))?$~U',$ae,$A))grant("REVOKE",array_keys($pf),$A[2]," ON $A[1] FROM $Xd");}}}queries_redirect(ME."privileges=",(isset($_GET["host"])?lang(219):lang(220)),!$n);if($lb)$i->query("DROP USER $Xd");}}page_header((isset($_GET["host"])?lang(23).": ".h("$ha@$_GET[host]"):lang(124)),$n,array("privileges"=>array('',lang(54))));if($_POST){$J=$_POST;$Ec=$Vd;}else{$J=$_GET+array("host"=>$i->result("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', -1)"));$J["pass"]=$ee;if($ee!="")$J["hashed"]=true;$Ec[(DB==""||$Ec?"":idf_escape(addcslashes(DB,"%_\\"))).".*"]=array();}echo'
+';}elseif(isset($_GET["user"])){$ha=$_GET["user"];$Df=array(""=>array("All privileges"=>""));foreach(get_rows("SHOW PRIVILEGES")as$K){foreach(explode(",",($K["Privilege"]=="Grant option"?"":$K["Context"]))as$vb)$Df[$vb][$K["Privilege"]]=$K["Comment"];}$Df["Server Admin"]+=$Df["File access on server"];$Df["Databases"]["Create routine"]=$Df["Procedures"]["Create routine"];unset($Df["Procedures"]["Create routine"]);$Df["Columns"]=array();foreach(array("Select","Insert","Update","References")as$X)$Df["Columns"][$X]=$Df["Tables"][$X];unset($Df["Server Admin"]["Usage"]);foreach($Df["Tables"]as$x=>$X)unset($Df["Databases"][$x]);$we=array();if($_POST){foreach($_POST["objects"]as$x=>$X)$we[$X]=(array)$we[$X]+(array)$_POST["grants"][$x];}$Uc=array();$He="";if(isset($_GET["host"])&&($I=$h->query("SHOW GRANTS FOR ".q($ha)."@".q($_GET["host"])))){while($K=$I->fetch_row()){if(preg_match('~GRANT (.*) ON (.*) TO ~',$K[0],$B)&&preg_match_all('~ *([^(,]*[^ ,(])( *\\([^)]+\\))?~',$B[1],$be,PREG_SET_ORDER)){foreach($be +as$X){if($X[1]!="USAGE")$Uc["$B[2]$X[2]"][$X[1]]=true;if(preg_match('~ WITH GRANT OPTION~',$K[0]))$Uc["$B[2]$X[2]"]["GRANT OPTION"]=true;}}if(preg_match("~ IDENTIFIED BY PASSWORD '([^']+)~",$K[0],$B))$He=$B[1];}}if($_POST&&!$m){$Ie=(isset($_GET["host"])?q($ha)."@".q($_GET["host"]):"''");if($_POST["drop"])query_redirect("DROP USER $Ie",ME."privileges=",lang(222));else{$ye=q($_POST["user"])."@".q($_POST["host"]);$mf=$_POST["pass"];if($mf!=''&&!$_POST["hashed"]){$mf=$h->result("SELECT PASSWORD(".q($mf).")");$m=!$mf;}$Ab=false;if(!$m){if($Ie!=$ye){$Ab=queries(($h->server_info<5?"GRANT USAGE ON *.* TO":"CREATE USER")." $ye IDENTIFIED BY PASSWORD ".q($mf));$m=!$Ab;}elseif($mf!=$He)queries("SET PASSWORD FOR $ye = ".q($mf));}if(!$m){$bg=array();foreach($we +as$Ce=>$Tc){if(isset($_GET["grant"]))$Tc=array_filter($Tc);$Tc=array_keys($Tc);if(isset($_GET["grant"]))$bg=array_diff(array_keys(array_filter($we[$Ce],'strlen')),$Tc);elseif($Ie==$ye){$Fe=array_keys((array)$Uc[$Ce]);$bg=array_diff($Fe,$Tc);$Tc=array_diff($Tc,$Fe);unset($Uc[$Ce]);}if(preg_match('~^(.+)\\s*(\\(.*\\))?$~U',$Ce,$B)&&(!grant("REVOKE",$bg,$B[2]," ON $B[1] FROM $ye")||!grant("GRANT",$Tc,$B[2]," ON $B[1] TO $ye"))){$m=true;break;}}}if(!$m&&isset($_GET["host"])){if($Ie!=$ye)queries("DROP USER $Ie");elseif(!isset($_GET["grant"])){foreach($Uc +as$Ce=>$bg){if(preg_match('~^(.+)(\\(.*\\))?$~U',$Ce,$B))grant("REVOKE",array_keys($bg),$B[2]," ON $B[1] FROM $ye");}}}queries_redirect(ME."privileges=",(isset($_GET["host"])?lang(223):lang(224)),!$m);if($Ab)$h->query("DROP USER $ye");}}page_header((isset($_GET["host"])?lang(33).": ".h("$ha@$_GET[host]"):lang(134)),$m,array("privileges"=>array('',lang(63))));if($_POST){$K=$_POST;$Uc=$we;}else{$K=$_GET+array("host"=>$h->result("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', -1)"));$K["pass"]=$He;if($He!="")$K["hashed"]=true;$Uc[(DB==""||$Uc?"":idf_escape(addcslashes(DB,"%_\\"))).".*"]=array();}echo' -
',lang(22),' -
',lang(23),' -
',lang(24),' -';if(!$J["hashed"]){echo'';}echo -checkbox("hashed",1,$J["hashed"],lang(221),"typePassword(this.form['pass'], this.checked);"),'
+',lang(32),' +',lang(33),' +',lang(34),' +';if(!$K["hashed"]){echo'';}echo +checkbox("hashed",1,$K["hashed"],lang(225),"typePassword(this.form['pass'], this.checked);"),' -';echo"\n","\n";foreach(array(""=>"","Server Admin"=>lang(22),"Databases"=>lang(25),"Tables"=>lang(107),"Columns"=>lang(108),"Procedures"=>lang(222),)as$hb=>$xb){foreach((array)$Ve[$hb]as$Ue=>$bb){echo"$xb'.h($Ue);$s=0;foreach($Ec -as$ae=>$Dc){$B="'grants[$s][".h(strtoupper($Ue))."]'";$Y=$Dc[strtoupper($Ue)];if($hb=="Server Admin"&&$ae!=(isset($Ec["*.*"])?"*.*":".*"))echo"
".lang(54)."";$s=0;foreach($Ec -as$ae=>$Dc){echo''.($ae!="*.*"?"":"*.*");$s++;}echo"
 ";elseif(isset($_GET["grant"]))echo"";else -echo"";$s++;}}}echo"
\n",'

- -';if(isset($_GET["host"])){echo'';}echo' +';echo"\n","\n";foreach(array(""=>"","Server Admin"=>lang(32),"Databases"=>lang(35),"Tables"=>lang(117),"Columns"=>lang(118),"Procedures"=>lang(226),)as$vb=>$Nb){foreach((array)$Df[$vb]as$Cf=>$ob){echo"$Nb'.h($Cf);$r=0;foreach($Uc +as$Ce=>$Tc){$C="'grants[$r][".h(strtoupper($Cf))."]'";$Y=$Tc[strtoupper($Cf)];if($vb=="Server Admin"&&$Ce!=(isset($Uc["*.*"])?"*.*":".*"))echo"
".lang(63).doc_link(array('sql'=>"grant.html#priv_level"));$r=0;foreach($Uc +as$Ce=>$Tc){echo''.($Ce!="*.*"?"":"*.*");$r++;}echo"
 ";elseif(isset($_GET["grant"]))echo"";else +echo"";$r++;}}}echo"
\n",'

+ +';if(isset($_GET["host"])){echo'';}echo'

-';}elseif(isset($_GET["processlist"])){if(support("kill")&&$_POST&&!$n){$ld=0;foreach((array)$_POST["kill"]as$X){if(queries("KILL ".(+$X)))$ld++;}queries_redirect(ME."processlist=",lang(225,$ld),$ld||!$_POST["kill"]);}page_header(lang(78),$n);echo' +';}elseif(isset($_GET["processlist"])){if(support("kill")&&$_POST&&!$m){$Jd=0;foreach((array)$_POST["kill"]as$X){if(queries("KILL ".(+$X)))$Jd++;}queries_redirect(ME."processlist=",lang(229,$Jd),$Jd||!$_POST["kill"]);}page_header(lang(103),$m);echo'
-';$s=-1;foreach(process_list()as$s=>$J){if(!$s){echo"".(support("kill")?"\n";}echo"".(support("kill")?"
 ":"");foreach($J -as$x=>$X)echo"".($w=="sql"?"$x":$x);echo"
".checkbox("kill[]",$J["Id"],0):"");foreach($J -as$x=>$X)echo"".(($w=="sql"&&$x=="Info"&&ereg("Query|Killed",$J["Command"])&&$X!="")||($w=="pgsql"&&$x=="current_query"&&$X!="")||($w=="oracle"&&$x=="sql_text"&&$X!="")?"".shorten_utf8($X,100,"").' '.lang(226).'':nbsp($X));echo"\n";}echo'
+';$r=-1;foreach(process_list()as$r=>$K){if(!$r){echo"".(support("kill")?" ":"");foreach($K +as$x=>$X)echo"$x".doc_link(array('sql'=>"show-processlist.html#processlist_".strtolower($x),'pgsql'=>"monitoring-stats.html#PG-STAT-ACTIVITY-VIEW",'oracle'=>"../b14237/dynviews_2088.htm",));echo"\n";}echo"".(support("kill")?"".checkbox("kill[]",$K["Id"],0):"");foreach($K +as$x=>$X)echo"".(($w=="sql"&&$x=="Info"&&preg_match("~Query|Killed~",$K["Command"])&&$X!="")||($w=="pgsql"&&$x=="current_query"&&$X!="")||($w=="oracle"&&$x=="sql_text"&&$X!="")?"".shorten_utf8($X,100,"").' '.lang(230).'':nbsp($X));echo"\n";}echo'

-';if(support("kill")){echo($s+1)."/".lang(227,$i->result("SELECT @@max_connections")),"

\n";}echo' +';if(support("kill")){echo($r+1)."/".lang(231,$h->result("SELECT @@max_connections")),"

\n";}echo'

-';}elseif(isset($_GET["select"])){$a=$_GET["select"];$Q=table_status1($a);$v=indexes($a);$p=fields($a);$vc=column_foreign_keys($a);$be="";if($Q["Oid"]){$be=($w=="sqlite"?"rowid":"oid");$v[]=array("type"=>"PRIMARY","columns"=>array($be));}parse_str($_COOKIE["adminer_import"],$ra);$qf=array();$g=array();$kg=null;foreach($p -as$x=>$o){$B=$b->fieldName($o);if(isset($o["privileges"]["select"])&&$B!=""){$g[$x]=html_entity_decode(strip_tags($B),ENT_QUOTES);if(is_shortable($o))$kg=$b->selectLengthProcess();}$qf+=$o["privileges"];}list($L,$Fc)=$b->selectColumnsProcess($g,$v);$cd=count($Fc)selectSearchProcess($p,$v);$pe=$b->selectOrderProcess($p,$v);$y=$b->selectLimitProcess();$_c=($L?implode(", ",$L):"*".($be?", $be":"")).convert_fields($g,$p,$L)."\nFROM ".table($a);$Gc=($Fc&&$cd?"\nGROUP BY ".implode(", ",$Fc):"").($pe?"\nORDER BY ".implode(", ",$pe):"");if($_GET["val"]&&is_ajax()){header("Content-Type: text/plain; charset=utf-8");foreach($_GET["val"]as$Hg=>$J){$ya=convert_field($p[key($J)]);echo$i->result("SELECT".limit($ya?$ya:idf_escape(key($J))." FROM ".table($a)," WHERE ".where_check($Hg,$p).($Z?" AND ".implode(" AND ",$Z):"").($pe?" ORDER BY ".implode(", ",$pe):""),1));}exit;}if($_POST&&!$n){$ah=$Z;if(is_array($_POST["check"]))$ah[]="((".implode(") OR (",array_map('where_check',$_POST["check"]))."))";$ah=($ah?"\nWHERE ".implode(" AND ",$ah):"");$Qe=$Jg=null;foreach($v -as$u){if($u["type"]=="PRIMARY"){$Qe=array_flip($u["columns"]);$Jg=($L?$Qe:array());break;}}foreach((array)$Jg -as$x=>$X){if(in_array(idf_escape($x),$L))unset($Jg[$x]);}if($_POST["export"]){cookie("adminer_import","output=".urlencode($_POST["output"])."&format=".urlencode($_POST["format"]));dump_headers($a);$b->dumpTable($a,"");if(!is_array($_POST["check"])||$Jg===array())$G="SELECT $_c$ah$Gc";else{$Fg=array();foreach($_POST["check"]as$X)$Fg[]="(SELECT".limit($_c,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$p).$Gc,1).")";$G=implode(" UNION ALL ",$Fg);}$b->dumpData($a,"table",$G);exit;}if(!$b->selectEmailProcess($Z,$vc)){if($_POST["save"]||$_POST["delete"]){$H=true;$sa=0;$G=table($a);$N=array();if(!$_POST["delete"]){foreach($g -as$B=>$X){$X=process_input($p[$B]);if($X!==null){if($_POST["clone"])$N[idf_escape($B)]=($X!==false?$X:idf_escape($B));elseif($X!==false)$N[]=idf_escape($B)." = $X";}}$G.=($_POST["clone"]?" (".implode(", ",array_keys($N)).")\nSELECT ".implode(", ",$N)."\nFROM ".table($a):" SET\n".implode(",\n",$N));}if($_POST["delete"]||$N){$Za="UPDATE";if($_POST["delete"]){$Za="DELETE";$G="FROM $G";}if($_POST["clone"]){$Za="INSERT";$G="INTO $G";}if($_POST["all"]||($Jg===array()&&is_array($_POST["check"]))||$cd){$H=queries("$Za $G$ah");$sa=$i->affected_rows;}else{foreach((array)$_POST["check"]as$X){$H=queries($Za.limit1($G,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$p)));if(!$H)break;$sa+=$i->affected_rows;}}}$Jd=lang(229,$sa);if($_POST["clone"]&&$H&&$sa==1){$qd=last_id();if($qd)$Jd=lang(142," $qd");}queries_redirect(remove_from_uri($_POST["all"]&&$_POST["delete"]?"page":""),$Jd,$H);}elseif(!$_POST["import"]){if(!$_POST["val"])$n=lang(230);else{$H=true;$sa=0;foreach($_POST["val"]as$Hg=>$J){$N=array();foreach($J -as$x=>$X){$x=bracket_escape($x,1);$N[]=idf_escape($x)." = ".(ereg('char|text',$p[$x]["type"])||$X!=""?$b->processInput($p[$x],$X):"NULL");}$G=table($a)." SET ".implode(", ",$N);$Zg=" WHERE ".where_check($Hg,$p).($Z?" AND ".implode(" AND ",$Z):"");$H=queries("UPDATE".($cd||$Jg===array()?" $G$Zg":limit1($G,$Zg)));if(!$H)break;$sa+=$i->affected_rows;}queries_redirect(remove_from_uri(),lang(229,$sa),$H);}}elseif(!is_string($oc=get_file("csv_file",true)))$n=upload_error($oc);elseif(!preg_match('~~u',$oc))$n=lang(231);else{cookie("adminer_import","output=".urlencode($ra["output"])."&format=".urlencode($_POST["separator"]));$H=true;$Ya=array_keys($p);preg_match_all('~(?>"[^"]*"|[^"\\r\\n]+)+~',$oc,$Bd);$sa=count($Bd[0]);begin();$Cf=($_POST["separator"]=="csv"?",":($_POST["separator"]=="tsv"?"\t":";"));foreach($Bd[0]as$x=>$X){preg_match_all("~((?>\"[^\"]*\")+|[^$Cf]*)$Cf~",$X.$Cf,$Cd);if(!$x&&!array_diff($Cd[1],$Ya)){$Ya=$Cd[1];$sa--;}else{$N=array();foreach($Cd[1]as$s=>$Va)$N[idf_escape($Ya[$s])]=($Va==""&&$p[$Ya[$s]]["null"]?"NULL":q(str_replace('""','"',preg_replace('~^"|"$~','',$Va))));$H=insert_update($a,$N,$Qe);if(!$H)break;}}if($H)queries("COMMIT");queries_redirect(remove_from_uri("page"),lang(232,$sa),$H);queries("ROLLBACK");}}}$Yf=$b->tableName($Q);if(is_ajax())ob_start();page_header(lang(36).": $Yf",$n);$N=null;if(isset($qf["insert"])){$N="";foreach((array)$_GET["where"]as$X){if(count($vc[$X["col"]])==1&&($X["op"]=="="||(!$X["op"]&&!ereg('[_%]',$X["val"]))))$N.="&set".urlencode("[".bracket_escape($X["col"])."]")."=".urlencode($X["val"]);}}$b->selectLinks($Q,$N);if(!$g)echo"

".lang(233).($p?".":": ".error())."\n";else{echo"

\n","
";hidden_fields_get();echo(DB!=""?''.(isset($_GET["ns"])?'':""):"");echo'',"
\n";$b->selectColumnsPrint($L,$g);$b->selectSearchPrint($Z,$g,$v);$b->selectOrderPrint($pe,$g,$v);$b->selectLimitPrint($y);$b->selectLengthPrint($kg);$b->selectActionPrint($v);echo"
\n";$D=$_GET["page"];if($D=="last"){$yc=$i->result("SELECT COUNT(*) FROM ".table($a).($Z?" WHERE ".implode(" AND ",$Z):""));$D=floor(max(0,$yc-1)/$y);}$G=$b->selectQueryBuild($L,$Z,$Fc,$pe,$y,$D);if(!$G)$G="SELECT".limit((+$y&&$Fc&&$cd&&$w=="sql"?"SQL_CALC_FOUND_ROWS ":"").$_c,($Z?"\nWHERE ".implode(" AND ",$Z):"").$Gc,($y!=""?+$y:null),($D?$y*$D:0),"\n");echo$b->selectQuery($G);$H=$i->query($G);if(!$H)echo"

".error()."\n";else{if($w=="mssql"&&$D)$H->seek($y*$D);$Qb=array();echo"

\n";$K=array();while($J=$H->fetch_assoc()){if($D&&$w=="oracle")unset($J["RNUM"]);$K[]=$J;}if($_GET["page"]!="last")$yc=(+$y&&$Fc&&$cd?($w=="sql"?$i->result(" SELECT FOUND_ROWS()"):$i->result("SELECT COUNT(*) FROM ($G) x")):count($K));if(!$K)echo"

".lang(89)."\n";else{$Ea=$b->backwardKeys($a,$Yf);echo"\n","".(!$Fc&&$L?"":"\n";if(is_ajax()){if($y%2==1&&$D%2==1)odd();ob_end_clean();}foreach($b->rowDescriptions($K,$vc)as$Td=>$J){$Gg=unique_array($K[$Td],$v);if(!$Gg){$Gg=array();foreach($K[$Td]as$x=>$X){if(!preg_match('~^(COUNT\\((\\*|(DISTINCT )?`(?:[^`]|``)+`)\\)|(AVG|GROUP_CONCAT|MAX|MIN|SUM)\\(`(?:[^`]|``)+`\\))$~',$x))$Gg[$x]=$X;}}$Hg="";foreach($Gg -as$x=>$X){if(strlen($X)>64){$x="MD5(".(strpos($x,'(')?$x:idf_escape($x)).")";$X=md5($X);}$Hg.="&".($X!==null?urlencode("where[".bracket_escape($x)."]")."=".urlencode($X):"null%5B%5D=".urlencode($x));}echo"".(!$Fc&&$L?"":"\n";}if(is_ajax())exit;echo"
".lang(234)."");$Ud=array();$Cc=array();reset($L);$bf=1;foreach($K[0]as$x=>$X){if($x!=$be){$X=$_GET["columns"][key($L)];$o=$p[$L?($X?$X["col"]:current($L)):$x];$B=($o?$b->fieldName($o,$bf):"*");if($B!=""){$bf++;$Ud[$x]=$B;$f=idf_escape($x);$Nc=remove_from_uri('(order|desc)[^=]*|page').'&order%5B0%5D='.urlencode($x);$xb="&desc%5B0%5D=1";echo'','';echo(!$L||$X?apply_sql_function($X["fun"],$B):h(current($L)))."";echo"";}$Cc[$x]=$X["fun"];next($L);}}$wd=array();if($_GET["modify"]){foreach($K -as$J){foreach($J -as$x=>$X)$wd[$x]=max($wd[$x],min(40,strlen(utf8_decode($X))));}}echo($Ea?"".lang(235):"")."
".checkbox("check[]",substr($Hg,1),in_array(substr($Hg,1),(array)$_POST["check"]),"","this.form['all'].checked = false; formUncheck('all-page');").($cd||information_schema(DB)?"":" ".lang(234).""));foreach($J -as$x=>$X){if(isset($Ud[$x])){$o=$p[$x];if($X!=""&&(!isset($Qb[$x])||$Qb[$x]!=""))$Qb[$x]=(is_mail($X)?$Ud[$x]:"");$z="";$X=$b->editVal($X,$o);if($X!==null){if(ereg('blob|bytea|raw|file',$o["type"])&&$X!="")$z=ME.'download='.urlencode($a).'&field='.urlencode($x).$Hg;if($X==="")$X=" ";elseif($kg!=""&&is_shortable($o))$X=shorten_utf8($X,max(0,+$kg));else$X=h($X);if(!$z){foreach((array)$vc[$x]as$q){if(count($vc[$x])==1||end($q["source"])==$x){$z="";foreach($q["source"]as$s=>$If)$z.=where_link($s,$q["target"][$s],$K[$Td][$If]);$z=($q["db"]!=""?preg_replace('~([?&]db=)[^&]+~','\\1'.urlencode($q["db"]),ME):ME).'select='.urlencode($q["table"]).$z;if(count($q["source"])==1)break;}}}if($x=="COUNT(*)"){$z=ME."select=".urlencode($a);$s=0;foreach((array)$_GET["where"]as$W){if(!array_key_exists($W["col"],$Gg))$z.=where_link($s++,$W["col"],$W["val"],$W["op"]);}foreach($Gg -as$hd=>$W)$z.=where_link($s++,$hd,$W);}}if(!$z&&($z=$b->selectLink($J[$x],$o))===null){if(is_mail($J[$x]))$z="mailto:$J[$x]";if($Ye=is_url($J[$x]))$z=($Ye=="http"&&$ba?$J[$x]:"$Ye://www.adminer.org/redirect/?url=".urlencode($J[$x]));}$Oc=h("val[$Hg][".bracket_escape($x)."]");$Y=$_POST["val"][$Hg][bracket_escape($x)];$Ic=h($Y!==null?$Y:$J[$x]);$_d=strpos($X,"...");$Mb=is_utf8($X)&&$K[$Td][$x]==$J[$x]&&!$Cc[$x];$jg=ereg('text|lob',$o["type"]);echo(($_GET["modify"]&&$Mb)||$Y!==null?"".($jg?"":""):"".$b->selectVal($X,$z,$o));}}if($Ea)echo"";$b->backwardKeysPrint($Ea,$K[$Td]);echo"
\n",(!$Fc&&$L?"":"\n");}if(($K||$D)&&!is_ajax()){$ac=true;if($_GET["page"]!="last"&&+$y&&!$cd&&($yc>=$y||$D)){$yc=found_rows($Q,$Z);if($yc$y||$D)){echo"

";$Ed=($yc===false?$D+(count($K)>=$y?2:1):floor(($yc-1)/$y));echo'".lang(237).":",pagination(0,$D).($D>5?" ...":"");for($s=max(1,$D-4);$s0){echo($D+5<$Ed?" ...":""),($ac&&$yc!==false?pagination($Ed,$D):" ".lang(238)."");}echo(($yc===false?count($K)+1:$yc-$D*$y)>$y?' '.lang(240).'':'');}echo"

\n",($yc!==false?"(".($ac?"":"~ ").lang(126,$yc).") ":""),checkbox("all",1,0,lang(241))."\n";if($b->selectCommandPrint()){echo'

',lang(34),'
- - - - +';}elseif(isset($_GET["select"])){$a=$_GET["select"];$R=table_status1($a);$v=indexes($a);$o=fields($a);$Lc=column_foreign_keys($a);$Ee="";if($R["Oid"]){$Ee=($w=="sqlite"?"rowid":"oid");$v[]=array("type"=>"PRIMARY","columns"=>array($Ee));}parse_str($_COOKIE["adminer_import"],$xa);$cg=array();$f=array();$dh=null;foreach($o +as$x=>$n){$C=$b->fieldName($n);if(isset($n["privileges"]["select"])&&$C!=""){$f[$x]=html_entity_decode(strip_tags($C),ENT_QUOTES);if(is_shortable($n))$dh=$b->selectLengthProcess();}$cg+=$n["privileges"];}list($M,$Vc)=$b->selectColumnsProcess($f,$v);$yd=count($Vc)selectSearchProcess($o,$v);$Te=$b->selectOrderProcess($o,$v);$z=$b->selectLimitProcess();$Qc=($M?implode(", ",$M):"*".($Ee?", $Ee":"")).convert_fields($f,$o,$M)."\nFROM ".table($a);$Wc=($Vc&&$yd?"\nGROUP BY ".implode(", ",$Vc):"").($Te?"\nORDER BY ".implode(", ",$Te):"");if($_GET["val"]&&is_ajax()){header("Content-Type: text/plain; charset=utf-8");foreach($_GET["val"]as$Bh=>$K){$Fa=convert_field($o[key($K)]);$M=array($Fa?$Fa:idf_escape(key($K)));$Z[]=where_check($Bh,$o);$J=$l->select($a,$M,$Z,$M);if($J)echo +reset($J->fetch_row());}exit;}if($_POST&&!$m){$Xh=$Z;if(!$_POST["all"]&&is_array($_POST["check"])){$bb=array();foreach($_POST["check"]as$Za)$bb[]=where_check($Za,$o);$Xh[]="((".implode(") OR (",$bb)."))";}$Xh=($Xh?"\nWHERE ".implode(" AND ",$Xh):"");$zf=$Dh=null;foreach($v +as$u){if($u["type"]=="PRIMARY"){$zf=array_flip($u["columns"]);$Dh=($M?$zf:array());break;}}foreach((array)$Dh +as$x=>$X){if(in_array(idf_escape($x),$M))unset($Dh[$x]);}if($_POST["export"]){cookie("adminer_import","output=".urlencode($_POST["output"])."&format=".urlencode($_POST["format"]));dump_headers($a);$b->dumpTable($a,"");if(!is_array($_POST["check"])||$Dh===array())$H="SELECT $Qc$Xh$Wc";else{$_h=array();foreach($_POST["check"]as$X)$_h[]="(SELECT".limit($Qc,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$o).$Wc,1).")";$H=implode(" UNION ALL ",$_h);}$b->dumpData($a,"table",$H);exit;}if(!$b->selectEmailProcess($Z,$Lc)){if($_POST["save"]||$_POST["delete"]){$I=true;$ya=0;$O=array();if(!$_POST["delete"]){foreach($f +as$C=>$X){$X=process_input($o[$C]);if($X!==null&&($_POST["clone"]||$X!==false))$O[idf_escape($C)]=($X!==false?$X:idf_escape($C));}}if($_POST["delete"]||$O){if($_POST["clone"])$H="INTO ".table($a)." (".implode(", ",array_keys($O)).")\nSELECT ".implode(", ",$O)."\nFROM ".table($a);if($_POST["all"]||($Dh===array()&&is_array($_POST["check"]))||$yd){$I=($_POST["delete"]?$l->delete($a,$Xh):($_POST["clone"]?queries("INSERT $H$Xh"):$l->update($a,$O,$Xh)));$ya=$h->affected_rows;}else{foreach((array)$_POST["check"]as$X){$Wh="\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$o);$I=($_POST["delete"]?$l->delete($a,$Wh,1):($_POST["clone"]?queries("INSERT".limit1($H,$Wh)):$l->update($a,$O,$Wh)));if(!$I)break;$ya+=$h->affected_rows;}}}$je=lang(233,$ya);if($_POST["clone"]&&$I&&$ya==1){$Od=last_id();if($Od)$je=lang(153," $Od");}queries_redirect(remove_from_uri($_POST["all"]&&$_POST["delete"]?"page":""),$je,$I);if(!$_POST["delete"]){edit_form($a,$o,(array)$_POST["fields"],!$_POST["clone"]);page_footer();exit;}}elseif(!$_POST["import"]){if(!$_POST["val"])$m=lang(234);else{$I=true;$ya=0;foreach($_POST["val"]as$Bh=>$K){$O=array();foreach($K +as$x=>$X){$x=bracket_escape($x,1);$O[idf_escape($x)]=(preg_match('~char|text~',$o[$x]["type"])||$X!=""?$b->processInput($o[$x],$X):"NULL");}$I=$l->update($a,$O," WHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($Bh,$o),!($yd||$Dh===array())," ");if(!$I)break;$ya+=$h->affected_rows;}queries_redirect(remove_from_uri(),lang(233,$ya),$I);}}elseif(!is_string($Ec=get_file("csv_file",true)))$m=upload_error($Ec);elseif(!preg_match('~~u',$Ec))$m=lang(235);else{cookie("adminer_import","output=".urlencode($xa["output"])."&format=".urlencode($_POST["separator"]));$I=true;$lb=array_keys($o);preg_match_all('~(?>"[^"]*"|[^"\\r\\n]+)+~',$Ec,$be);$ya=count($be[0]);$l->begin();$rg=($_POST["separator"]=="csv"?",":($_POST["separator"]=="tsv"?"\t":";"));$L=array();foreach($be[0]as$x=>$X){preg_match_all("~((?>\"[^\"]*\")+|[^$rg]*)$rg~",$X.$rg,$ce);if(!$x&&!array_diff($ce[1],$lb)){$lb=$ce[1];$ya--;}else{$O=array();foreach($ce[1]as$r=>$ib)$O[idf_escape($lb[$r])]=($ib==""&&$o[$lb[$r]]["null"]?"NULL":q(str_replace('""','"',preg_replace('~^"|"$~','',$ib))));$L[]=$O;}}$I=(!$L||$l->insertUpdate($a,$L,$zf));if($I)$l->commit();queries_redirect(remove_from_uri("page"),lang(236,$ya),$I);$l->rollback();}}}$Pg=$b->tableName($R);if(is_ajax()){page_headers();ob_start();}else +page_header(lang(44).": $Pg",$m);$O=null;if(isset($cg["insert"])||!support("table")){$O="";foreach((array)$_GET["where"]as$X){if(count($Lc[$X["col"]])==1&&($X["op"]=="="||(!$X["op"]&&!preg_match('~[_%]~',$X["val"]))))$O.="&set".urlencode("[".bracket_escape($X["col"])."]")."=".urlencode($X["val"]);}}$b->selectLinks($R,$O);if(!$f&&support("table"))echo"

".lang(237).($o?".":": ".error())."\n";else{echo"\n","

";hidden_fields_get();echo(DB!=""?''.(isset($_GET["ns"])?'':""):"");echo'',"
\n";$b->selectColumnsPrint($M,$f);$b->selectSearchPrint($Z,$f,$v);$b->selectOrderPrint($Te,$f,$v);$b->selectLimitPrint($z);$b->selectLengthPrint($dh);$b->selectActionPrint($v);echo"\n";$E=$_GET["page"];if($E=="last"){$Oc=$h->result(count_rows($a,$Z,$yd,$Vc));$E=floor(max(0,$Oc-1)/$z);}$og=$M;if(!$og){$og[]="*";if($Ee)$og[]=$Ee;}$wb=convert_fields($f,$o,$M);if($wb)$og[]=substr($wb,2);$I=$l->select($a,$og,$Z,$Vc,$Te,$z,$E,true);if(!$I)echo"

".error()."\n";else{if($w=="mssql"&&$E)$I->seek($z*$E);$ic=array();echo"

\n";$L=array();while($K=$I->fetch_assoc()){if($E&&$w=="oracle")unset($K["RNUM"]);$L[]=$K;}if($_GET["page"]!="last"&&+$z&&$Vc&&$yd&&$w=="sql")$Oc=$h->result(" SELECT FOUND_ROWS()");if(!$L)echo"

".lang(12)."\n";else{$Oa=$b->backwardKeys($a,$Pg);echo"\n","".(!$Vc&&$M?"":"\n";if(is_ajax()){if($z%2==1&&$E%2==1)odd();ob_end_clean();}foreach($b->rowDescriptions($L,$Lc)as$ue=>$K){$Ah=unique_array($L[$ue],$v);if(!$Ah){$Ah=array();foreach($L[$ue]as$x=>$X){if(!preg_match('~^(COUNT\\((\\*|(DISTINCT )?`(?:[^`]|``)+`)\\)|(AVG|GROUP_CONCAT|MAX|MIN|SUM)\\(`(?:[^`]|``)+`\\))$~',$x))$Ah[$x]=$X;}}$Bh="";foreach($Ah +as$x=>$X){if(($w=="sql"||$w=="pgsql")&&strlen($X)>64){$x="MD5(".(strpos($x,'(')?$x:idf_escape($x)).")";$X=md5($X);}$Bh.="&".($X!==null?urlencode("where[".bracket_escape($x)."]")."=".urlencode($X):"null%5B%5D=".urlencode($x));}echo"".(!$Vc&&$M?"":"\n";}if(is_ajax())exit;echo"
".lang(238)."");$ve=array();$Sc=array();reset($M);$Mf=1;foreach($L[0]as$x=>$X){if($x!=$Ee){$X=$_GET["columns"][key($M)];$n=$o[$M?($X?$X["col"]:current($M)):$x];$C=($n?$b->fieldName($n,$Mf):($X["fun"]?"*":$x));if($C!=""){$Mf++;$ve[$x]=$C;$e=idf_escape($x);$gd=remove_from_uri('(order|desc)[^=]*|page').'&order%5B0%5D='.urlencode($x);$Nb="&desc%5B0%5D=1";echo'','';echo +apply_sql_function($X["fun"],$C)."";echo"";}$Sc[$x]=$X["fun"];next($M);}}$Td=array();if($_GET["modify"]){foreach($L +as$K){foreach($K +as$x=>$X)$Td[$x]=max($Td[$x],min(40,strlen(utf8_decode($X))));}}echo($Oa?"".lang(239):"")."
".checkbox("check[]",substr($Bh,1),in_array(substr($Bh,1),(array)$_POST["check"]),"","this.form['all'].checked = false; formUncheck('all-page');").($yd||information_schema(DB)?"":" ".lang(240).""));foreach($K +as$x=>$X){if(isset($ve[$x])){$n=$o[$x];if($X!=""&&(!isset($ic[$x])||$ic[$x]!=""))$ic[$x]=(is_mail($X)?$ve[$x]:"");$_="";if(preg_match('~blob|bytea|raw|file~',$n["type"])&&$X!="")$_=ME.'download='.urlencode($a).'&field='.urlencode($x).$Bh;if(!$_&&$X!==null){foreach((array)$Lc[$x]as$p){if(count($Lc[$x])==1||end($p["source"])==$x){$_="";foreach($p["source"]as$r=>$_g)$_.=where_link($r,$p["target"][$r],$L[$ue][$_g]);$_=($p["db"]!=""?preg_replace('~([?&]db=)[^&]+~','\\1'.urlencode($p["db"]),ME):ME).'select='.urlencode($p["table"]).$_;if(count($p["source"])==1)break;}}}if($x=="COUNT(*)"){$_=ME."select=".urlencode($a);$r=0;foreach((array)$_GET["where"]as$W){if(!array_key_exists($W["col"],$Ah))$_.=where_link($r++,$W["col"],$W["val"],$W["op"]);}foreach($Ah +as$Dd=>$W)$_.=where_link($r++,$Dd,$W);}$X=select_value($X,$_,$n,$dh);$s=h("val[$Bh][".bracket_escape($x)."]");$Y=$_POST["val"][$Bh][bracket_escape($x)];$dc=!is_array($K[$x])&&is_utf8($X)&&$L[$ue][$x]==$K[$x]&&!$Sc[$x];$ch=preg_match('~text|lob~',$n["type"]);if(($_GET["modify"]&&$dc)||$Y!==null){$Yc=h($Y!==null?$Y:$K[$x]);echo"".($ch?"":"");}else{$Yd=strpos($X,"...");echo"$X";}}}if($Oa)echo"";$b->backwardKeysPrint($Oa,$L[$ue]);echo"
\n";}if(($L||$E)&&!is_ajax()){$sc=true;if($_GET["page"]!="last"){if(!+$z)$Oc=count($L);elseif($w!="sql"||!$yd){$Oc=($yd?false:found_rows($R,$Z));if($Oc$z||$E)){echo"

";$ee=($Oc===false?$E+(count($L)>=$z?2:1):floor(($Oc-1)/$z));if($w!="simpledb"){echo'".lang(242).":",pagination(0,$E).($E>5?" ...":"");for($r=max(1,$E-4);$r0){echo($E+5<$ee?" ...":""),($sc&&$Oc!==false?pagination($ee,$E):" ".lang(243)."");}echo(($Oc===false?count($L)+1:$Oc-$E*$z)>$z?' '.lang(245).'':'');}else{echo +lang(242).":",pagination(0,$E).($E>1?" ...":""),($E?pagination($E,$E):""),($ee>$E?pagination($E+1,$E).($ee>$E+1?" ...":""):"");}}echo"

\n",($Oc!==false?"(".($sc?"":"~ ").lang(136,$Oc).") ":"");$Sb=($sc?"":"~ ").$Oc;echo +checkbox("all",1,0,lang(246),"var checked = formChecked(this, /check/); selectCount('selected', this.checked ? '$Sb' : checked); selectCount('selected2', this.checked || !checked ? '$Sb' : checked);")."\n";if($b->selectCommandPrint()){echo'',lang(238),'

+
-';}$wc=$b->dumpFormat();foreach((array)$_GET["columns"]as$f){if($f["fun"]){unset($wc['sql']);break;}}if($wc){print_fieldset("export",lang(118));$ye=$b->dumpOutput();echo($ye?adminer_html_select("output",$ye,$ra["output"])." ":""),adminer_html_select("format",$wc,$ra["format"])," \n","\n";}}if($b->selectImportPrint()){print_fieldset("import",lang(55),!$K);echo" ",adminer_html_select("separator",array("csv"=>"CSV,","csv;"=>"CSV;","tsv"=>"TSV"),$ra["format"],1);echo" ","\n";}$b->selectEmailPrint(array_filter($Qb,'strlen'),$g);echo"

\n","\n";}}if(is_ajax()){ob_end_clean();exit;}}elseif(isset($_GET["variables"])){$Nf=isset($_GET["status"]);page_header($Nf?lang(80):lang(79));$Tg=($Nf?show_status():show_variables());if(!$Tg)echo"

".lang(89)."\n";else{echo"\n";foreach($Tg -as$x=>$X){echo"","
".h($x)."","".nbsp($X);}echo"
\n";}}elseif(isset($_GET["script"])){header("Content-Type: text/javascript; charset=utf-8");if($_GET["script"]=="db"){$Vf=array("Data_length"=>0,"Index_length"=>0,"Data_free"=>0);foreach(table_status()as$B=>$Q){$Oc=js_escape($B);json_row("Comment-$Oc",nbsp($Q["Comment"]));if(!is_view($Q)){foreach(array("Engine","Collation")as$x)json_row("$x-$Oc",nbsp($Q[$x]));foreach($Vf+array("Auto_increment"=>0,"Rows"=>0)as$x=>$X){if($Q[$x]!=""){$X=number_format($Q[$x],0,'.',lang(8));json_row("$x-$Oc",($x=="Rows"&&$X&&$Q["Engine"]==($Kf=="pgsql"?"table":"InnoDB")?"~ $X":$X));if(isset($Vf[$x]))$Vf[$x]+=($Q["Engine"]!="InnoDB"||$x!="Data_free"?$Q[$x]:0);}elseif(array_key_exists($x,$Q))json_row("$x-$Oc");}}}foreach($Vf -as$x=>$X)json_row("sum-$x",number_format($X,0,'.',lang(8)));json_row("");}elseif($_GET["script"]=="kill")$i->query("KILL ".(+$_POST["kill"]));else{foreach(count_tables($b->databases())as$m=>$X)json_row("tables-".js_escape($m),$X);json_row("");}exit;}else{$eg=array_merge((array)$_POST["tables"],(array)$_POST["views"]);if($eg&&!$n&&!$_POST["search"]){$H=true;$Jd="";if($w=="sql"&&count($_POST["tables"])>1&&($_POST["drop"]||$_POST["truncate"]||$_POST["copy"]))queries("SET foreign_key_checks = 0");if($_POST["truncate"]){if($_POST["tables"])$H=truncate_tables($_POST["tables"]);$Jd=lang(242);}elseif($_POST["move"]){$H=move_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$Jd=lang(243);}elseif($_POST["copy"]){$H=copy_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$Jd=lang(244);}elseif($_POST["drop"]){if($_POST["views"])$H=drop_views($_POST["views"]);if($H&&$_POST["tables"])$H=drop_tables($_POST["tables"]);$Jd=lang(245);}elseif($w!="sql"){$H=($w=="sqlite"?queries("VACUUM"):apply_queries("VACUUM".($_POST["optimize"]?"":" ANALYZE"),$_POST["tables"]));$Jd=lang(246);}elseif(!$_POST["tables"])$Jd=lang(7);elseif($H=queries(($_POST["optimize"]?"OPTIMIZE":($_POST["check"]?"CHECK":($_POST["repair"]?"REPAIR":"ANALYZE")))." TABLE ".implode(", ",array_map('idf_escape',$_POST["tables"])))){while($J=$H->fetch_assoc())$Jd.="".h($J["Table"]).": ".h($J["Msg_text"])."
";}queries_redirect(substr(ME,0,-1),$Jd,$H);}page_header(($_GET["ns"]==""?lang(25).": ".h(DB):lang(87).": ".h($_GET["ns"])),$n,true);if($b->homepage()){if($_GET["ns"]!==""){echo"

".lang(247)."

\n";$dg=tables_list();if(!$dg)echo"

".lang(7)."\n";else{echo"

\n","

".lang(248).": \n";if($_POST["search"]&&$_POST["query"]!="")search_tables();echo"\n",'\n";foreach($dg -as$B=>$T){$Vg=($T!==null&&!eregi("table",$T));echo'
',''.lang(107),''.lang(249),''.lang(84),''.lang(250),''.lang(251),''.lang(252),''.lang(99),''.lang(253),(support("comment")?''.lang(101):''),"
'.checkbox(($Vg?"views[]":"tables[]"),$B,in_array($B,$eg,true),"","formUncheck('check-all');"),''.h($B).'';if($Vg){echo''.lang(106).'','?';}else{foreach(array("Engine"=>array(),"Collation"=>array(),"Data_length"=>array("create",lang(31)),"Index_length"=>array("indexes",lang(110)),"Data_free"=>array("edit",lang(32)),"Auto_increment"=>array("auto_increment=1&create",lang(31)),"Rows"=>array("select",lang(28)),)as$x=>$z)echo($z?"?":" ");}echo(support("comment")?" ":"");}echo"
 ".lang(227,count($dg)),"".nbsp($w=="sql"?$i->result("SELECT @@storage_engine"):""),"".nbsp(db_collation(DB,collations()));foreach(array("Data_length","Index_length","Data_free")as$x)echo" ";echo"
\n","\n";if(!information_schema(DB)){echo"

".(ereg('^(sql|sqlite|pgsql)$',$w)?($w!="sqlite"?" ":"")." ":"").($w=="sql"?" ":"")." \n";$l=(support("scheme")?schemas():$b->databases());if(count($l)!=1&&$w!="sqlite"){$m=(isset($_POST["target"])?$_POST["target"]:(support("scheme")?$_GET["ns"]:DB));echo"

".lang(259).": ",($l?adminer_html_select("target",$l,$m):'')," ",(support("copy")?" ":""),"\n";}echo"\n";}echo"

\n";}echo'

'.lang(152)."\n";if(support("view"))echo''.lang(184)."\n";if(support("routine")){echo"

".lang(121)."

\n";$uf=routines();if($uf){echo"\n",'\n";odd('');foreach($uf -as$J){echo'','
'.lang(162).''.lang(96).''.lang(201)." 
'.h($J["ROUTINE_NAME"]).'',''.h($J["ROUTINE_TYPE"]),''.h($J["DTD_IDENTIFIER"]),''.lang(113)."";}echo"
\n";}echo'

'.(support("procedure")?''.lang(200).' ':'').''.lang(199)."\n";}if(support("sequence")){echo"

".lang(262)."

\n";$Df=get_vals("SELECT sequence_name FROM information_schema.sequences WHERE sequence_schema = current_schema()");if($Df){echo"\n","\n";odd('');foreach($Df -as$X)echo"
".lang(162)."
".h($X)."\n";echo"
\n";}echo"

".lang(206)."\n";}if(support("type")){echo"

".lang(13)."

\n";$Pg=types();if($Pg){echo"\n","\n";odd('');foreach($Pg -as$X)echo"
".lang(162)."
".h($X)."\n";echo"
\n";}echo"

".lang(210)."\n";}if(support("event")){echo"

".lang(122)."

\n";$K=get_rows("SHOW EVENTS");if($K){echo"\n","\n";foreach($K -as$J){echo"","
".lang(162)."".lang(263)."".lang(190)."".lang(191)."
".h($J["Name"]),"".($J["Execute at"]?lang(264)."".$J["Execute at"]:lang(192)." ".$J["Interval value"]." ".$J["Interval field"]."$J[Starts]"),"$J[Ends]",''.lang(113).'';}echo"
\n";$Zb=$i->result("SELECT @@event_scheduler");if($Zb&&$Zb!="ON")echo"

event_scheduler: ".h($Zb)."\n";}echo'

'.lang(189)."\n";}if($dg)echo"\n";}}}page_footer(); \ No newline at end of file +

',lang(113),'
+ + + +
+';}$Mc=$b->dumpFormat();foreach((array)$_GET["columns"]as$e){if($e["fun"]){unset($Mc['sql']);break;}}if($Mc){print_fieldset("export",lang(128)." ");$df=$b->dumpOutput();echo($df?adminer_html_select("output",$df,$xa["output"])." ":""),adminer_html_select("format",$Mc,$xa["format"])," \n","\n";}echo(!$Vc&&$M?"":"\n");}if($b->selectImportPrint()){print_fieldset("import",lang(64),!$L);echo" ",adminer_html_select("separator",array("csv"=>"CSV,","csv;"=>"CSV;","tsv"=>"TSV"),$xa["format"],1);echo" ","\n";}$b->selectEmailPrint(array_filter($ic,'strlen'),$f);echo"

\n","\n";}}if(is_ajax()){ob_end_clean();exit;}}elseif(isset($_GET["variables"])){$Eg=isset($_GET["status"]);page_header($Eg?lang(105):lang(104));$Ph=($Eg?show_status():show_variables());if(!$Ph)echo"

".lang(12)."\n";else{echo"\n";foreach($Ph +as$x=>$X){echo"","
".h($x)."","".nbsp($X);}echo"
\n";}}elseif(isset($_GET["script"])){header("Content-Type: text/javascript; charset=utf-8");if($_GET["script"]=="db"){$Mg=array("Data_length"=>0,"Index_length"=>0,"Data_free"=>0);foreach(table_status()as$C=>$R){$s=js_escape($C);json_row("Comment-$s",nbsp($R["Comment"]));if(!is_view($R)){foreach(array("Engine","Collation")as$x)json_row("$x-$s",nbsp($R[$x]));foreach($Mg+array("Auto_increment"=>0,"Rows"=>0)as$x=>$X){if($R[$x]!=""){$X=format_number($R[$x]);json_row("$x-$s",($x=="Rows"&&$X&&$R["Engine"]==($Bg=="pgsql"?"table":"InnoDB")?"~ $X":$X));if(isset($Mg[$x]))$Mg[$x]+=($R["Engine"]!="InnoDB"||$x!="Data_free"?$R[$x]:0);}elseif(array_key_exists($x,$R))json_row("$x-$s");}}}foreach($Mg +as$x=>$X)json_row("sum-$x",format_number($X));json_row("");}elseif($_GET["script"]=="kill")$h->query("KILL ".(+$_POST["kill"]));else{foreach(count_tables($b->databases())as$k=>$X){json_row("tables-$k",$X);json_row("size-$k",db_size($k));}json_row("");}exit;}else{$Vg=array_merge((array)$_POST["tables"],(array)$_POST["views"]);if($Vg&&!$m&&!$_POST["search"]){$I=true;$je="";if($w=="sql"&&count($_POST["tables"])>1&&($_POST["drop"]||$_POST["truncate"]||$_POST["copy"]))queries("SET foreign_key_checks = 0");if($_POST["truncate"]){if($_POST["tables"])$I=truncate_tables($_POST["tables"]);$je=lang(247);}elseif($_POST["move"]){$I=move_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$je=lang(248);}elseif($_POST["copy"]){$I=copy_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$je=lang(249);}elseif($_POST["drop"]){if($_POST["views"])$I=drop_views($_POST["views"]);if($I&&$_POST["tables"])$I=drop_tables($_POST["tables"]);$je=lang(250);}elseif($w!="sql"){$I=($w=="sqlite"?queries("VACUUM"):apply_queries("VACUUM".($_POST["optimize"]?"":" ANALYZE"),$_POST["tables"]));$je=lang(251);}elseif(!$_POST["tables"])$je=lang(9);elseif($I=queries(($_POST["optimize"]?"OPTIMIZE":($_POST["check"]?"CHECK":($_POST["repair"]?"REPAIR":"ANALYZE")))." TABLE ".implode(", ",array_map('idf_escape',$_POST["tables"])))){while($K=$I->fetch_assoc())$je.="".h($K["Table"]).": ".h($K["Msg_text"])."
";}queries_redirect(substr(ME,0,-1),$je,$I);}page_header(($_GET["ns"]==""?lang(35).": ".h(DB):lang(68).": ".h($_GET["ns"])),$m,true);if($b->homepage()){if($_GET["ns"]!==""){echo"

".lang(252)."

\n";$Ug=tables_list();if(!$Ug)echo"

".lang(9)."\n";else{echo"

\n";if(support("table")){echo"
".lang(253)."
"," \n","
\n";if($_POST["search"]&&$_POST["query"]!="")search_tables();}echo"\n",'\n";$S=0;foreach($Ug +as$C=>$U){$Sh=($U!==null&&!preg_match('~table~i',$U));echo'
',''.lang(117),''.lang(254),''.lang(109),''.lang(255),''.lang(256),''.lang(257),''.lang(56),''.lang(258),(support("comment")?''.lang(94):''),"
'.checkbox(($Sh?"views[]":"tables[]"),$C,in_array($C,$Vg,true),"","formUncheck('check-all');"),''.(support("table")||support("indexes")?''.h($C).'':h($C));if($Sh){echo''.lang(116).'','?';}else{foreach(array("Engine"=>array(),"Collation"=>array(),"Data_length"=>array("create",lang(41)),"Index_length"=>array("indexes",lang(120)),"Data_free"=>array("edit",lang(42)),"Auto_increment"=>array("auto_increment=1&create",lang(41)),"Rows"=>array("select",lang(38)),)as$x=>$_){$s=" id='$x-".h($C)."'";echo($_?"".(support("table")||$x=="Rows"||(support("indexes")&&$x!="Data_length")?"?":"?"):" ");}$S++;}echo(support("comment")?" ":"");}echo"
 ".lang(231,count($Ug)),"".nbsp($w=="sql"?$h->result("SELECT @@storage_engine"):""),"".nbsp(db_collation(DB,collations()));foreach(array("Data_length","Index_length","Data_free")as$x)echo" ";echo"
\n";if(!information_schema(DB)){$Mh=" ";$Pe=" ";echo"
".lang(113)."
".($w=="sqlite"?$Mh:($w=="pgsql"?$Mh.$Pe:($w=="sql"?" ".$Pe." "." ":"")))." "."\n";$j=(support("scheme")?$b->schemas():$b->databases());if(count($j)!=1&&$w!="sqlite"){$k=(isset($_POST["target"])?$_POST["target"]:(support("scheme")?$_GET["ns"]:DB));echo"

".lang(265).": ",($j?adminer_html_select("target",$j,$k):'')," ",(support("copy")?" ":""),"\n";}echo"\n";echo"\n","

\n";}echo"
\n","\n";}echo'

".lang(131)."

\n";$gg=routines();if($gg){echo"\n",'\n";odd('');foreach($gg +as$K){echo'','
'.lang(166).''.lang(90).''.lang(205)." 
'.h($K["ROUTINE_NAME"]).'',''.h($K["ROUTINE_TYPE"]),''.h($K["DTD_IDENTIFIER"]),''.lang(123)."";}echo"
\n";}echo'

".lang(268)."

\n";$sg=get_vals("SELECT sequence_name FROM information_schema.sequences WHERE sequence_schema = current_schema()");if($sg){echo"\n","\n";odd('');foreach($sg +as$X)echo"
".lang(166)."
".h($X)."\n";echo"
\n";}echo"

".lang(23)."

\n";$Kh=types();if($Kh){echo"\n","\n";odd('');foreach($Kh +as$X)echo"
".lang(166)."
".h($X)."\n";echo"
\n";}echo"

".lang(132)."

\n";$L=get_rows("SHOW EVENTS");if($L){echo"\n","\n";foreach($L +as$K){echo"","
".lang(166)."".lang(269)."".lang(194)."".lang(195)."
".h($K["Name"]),"".($K["Execute at"]?lang(270)."".$K["Execute at"]:lang(196)." ".$K["Interval value"]." ".$K["Interval field"]."$K[Starts]"),"$K[Ends]",''.lang(123).'';}echo"
\n";$qc=$h->result("SELECT @@event_scheduler");if($qc&&$qc!="ON")echo"

event_scheduler: ".h($qc)."\n";}echo'