From d8e16ee98d8e5e59758cba3bebf005fb508566bd Mon Sep 17 00:00:00 2001 From: rylon Date: Mon, 30 Sep 2013 15:02:22 +0200 Subject: [PATCH] saimod locale strings rdy - now with add and delete and edit! Texts for login mod are now all alike --- dbd/tbl/locale_string.php | 3 +- sai/modules/saimod_sys_locale/1.jpg | Bin 64655 -> 0 bytes sai/modules/saimod_sys_locale/add.tpl | 15 +++ sai/modules/saimod_sys_locale/edit.tpl | 20 ++++ sai/modules/saimod_sys_locale/edit_entry.tpl | 7 ++ sai/modules/saimod_sys_locale/list.tpl | 8 ++ sai/modules/saimod_sys_locale/list_entry.tpl | 9 ++ .../saimod_sys_locale/saimod_sys_locale.js | 64 ++++++++++ .../saimod_sys_locale/saimod_sys_locale.php | 109 +++++++----------- .../saimod_sys_locale_submit.js | 55 --------- sai/modules/saimod_sys_login/login.tpl | 18 +-- sai/modules/saimod_sys_login/logout.tpl | 14 +-- .../saimod_sys_login/saimod_sys_login.php | 1 + sai/page/default_page/default_page.php | 1 + 14 files changed, 183 insertions(+), 141 deletions(-) delete mode 100644 sai/modules/saimod_sys_locale/1.jpg create mode 100644 sai/modules/saimod_sys_locale/add.tpl create mode 100644 sai/modules/saimod_sys_locale/edit.tpl create mode 100644 sai/modules/saimod_sys_locale/edit_entry.tpl create mode 100644 sai/modules/saimod_sys_locale/list.tpl create mode 100644 sai/modules/saimod_sys_locale/list_entry.tpl create mode 100644 sai/modules/saimod_sys_locale/saimod_sys_locale.js delete mode 100644 sai/modules/saimod_sys_locale/saimod_sys_locale_submit.js diff --git a/dbd/tbl/locale_string.php b/dbd/tbl/locale_string.php index 13425d8..dcab86c 100644 --- a/dbd/tbl/locale_string.php +++ b/dbd/tbl/locale_string.php @@ -16,7 +16,8 @@ class locale_string { const VALUE_CATEGORY_SYSTEM = 10; const VALUE_CATEGORY_SYSTEM_ERROR = 11; - const VALUE_CATEGORY_SYSTEM_SAI = 12; + const VALUE_CATEGORY_SYSTEM_SAI = 42; + const VALUE_CATEGORY_SYSTEM_SAI_ERROR = 43; const VALUE_CATEGORY_SYSTEM_ENDCAT = 99; } \ No newline at end of file diff --git a/sai/modules/saimod_sys_locale/1.jpg b/sai/modules/saimod_sys_locale/1.jpg deleted file mode 100644 index 2ce29f6b50960f91b625c96180f376027da7f314..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64655 zcmb4q^;;B9^zOng%YwwRbaxBV4bt5yOAAOzw}^B~cXut_DbgTFr_voOjWpud&%O8i z2i!CB+xyJS`%FDE?>Xo1kH4D$sIt70JOBj+06_Uy0DqqWAU43?6@Ux?3_=5=fxuui zFgiLIf(gaM#K6ELz`@0W5)+V+5EBp)kx?>IlabR?5E0S5q@ibGW@Td~rRLz`VBun9 zVP*NR6BKlGbW8{)J|-qU3mFj^%m26i?FHaLP$_`DKomLvDjo_D59RM5fC2zOMFsvx z`hN`t6#)Fl7aj5sg+l=-Kp-j*hz-u*Yfb|dhM+Oh@8gT3r zn_b7s9~cgm%3YMhbS{<8rjp_SXc)hY6{lY<@!|B=A{QqZe_unAO3!v!Cyp0F&Muk4 zQ(M$7jyEM|!-v_4FOCr@*n)7RTW0??ubw zbr(Iab0hE?w_p0T`>%D+!6jXbH6<9{T3FZdU%mJXNVvd`KMiDveQZxfa@97MY(W`~ zCE37%WizJCp4Kzvm6A?4FRBQfP?kfBqgHUOhAM_Pn}WpXWzMqA zLPZJJk<$5+m6fGThA9%wbJ`=_g$_SMGJ=IF!S5& z|6%J)a##aS3@2^Lm|w z|JGri-zmKM6%Up79qan+p&vZQcYRag57pJ`Mzmd>GH1$*Qs0r2j^5Yvrq3!8mjNpd zqd)(g-d>X4rt%*ajM*9oBZA}a<)*Y|Q`OK3|4 z?Wd^Sa!V!R45ZVN0%7^hHt`*59wWS`hSQzO(ER3d@;?x=l)k8&vM>|??Q7d1ejQ{M zTNq!eg(sJS-ys{Z4z=i^8lg1Q+URA}Jaj?h;%n%PE&(Lfs_7zF1o12s+k})-f`+n3 z+3dvI)IG2NX3FXFv+*HMMBWw@o^TaF>lh zus~?d=}{m0vdE_%X(*l5r-lnm2ie)onlW2SS%20nqYQeAa{9#}88?@dExyS?pUmDr z{?8b=HQnBO3w)@OXsjMrvTcq{(}m^lsojDoyp>g%IE1f<{jC{IcZ|0g1j}^fV?zyg zoKSu^#KdbF6}i4p>a`VHsxjQ*?$~dWEA1*!5T|uf(G)JHsa#%qkHU!7*{Th-7KGw5 zIz@QM>B?)T+F7tt%!2hD)Sbs328}ce<{tOdoTvbtc127?b7N#>b+8JWAsW_r_#(Qj zCHv^Taa*3aM(oJ10nNB0cAQfEue&p6=zQuc)k`E6RO}S>WF_(T``eETPRUSh;X%b& z_0$A(m!Qsy4{vQS*xtBs!w#hm7|7m+ zKSR9CGi-nI{shApzZrGJOuTX1R*s{s5xS5}AZ1=HoPFay`Z3$GU8S@bmXqON!^ke_ z4k1m*2!4Yz=&4`4LCZ%IQ|G%yB&bHkCLI~cRl>?f6GF=c;bYR3r6nXv@Q-wpRu-F< z!?BRV19Jt7rNmXnYNYaf%-ZgCzEtihFc`DWMDe#CFrrI{LTs}MhVO?Vl329qBp z`MSQbPl0WFgXwA{C)k^vZibiiS(q#gG-?2}!f&rlO(=}GlcEPUB84M3(O0lhg9eV8F< z(XoBQ9IcIm&F2JciFQH@>D&f}9te4Cn*&7&<8@-SaX75m`bo7;-6IN1xOOpw9p&>H zzWZP|aDRQRb@70ALjrGgh3lPF7_Eqjo==u*m7tpQAQ)_*`|csrc%Y2{pA`oY1A<%) z8RV>mUpN`neyc{MmsCCJoxCQ=K2hHK^JU9WlNy=sieY#KC^zedukS!4>cV*fn76ltp&^e2I|6`u1g-J91|(6hsR?G31K0}@b;)U&Y_#x4hq*Luiz>a zmV%@-pfmCnxbZ|4>1t9{!eUBTia;X_U|k@20gnZtq#S4rjZRYoLZc>}3Q0Ln!>i%^ zPNY?+nO9vlHngxK{-n5Bn3|IbQEm%L(_bH2PB2)%8PeY>q@{leII}B zS07y-gyY3MhKs$~{F)Mi8Stuv`a=Z8m^B1RtG@7gkn^j8rK@|v7p)RxX~AwF#%oCx z`TJB8rSjPdlY&O$C4fnSr9_mz=`zpdWOs{+Nv@YjcC&e(9azM?a>ar;fW?2}L;N@1 za+(BR6nxaT0y-^Zw|s|smiD5YG!Q!)m?ZuQ{W@ZsIIany&~Bo%w>8bMRl1=majYyz zbko*`&D8W60sa!M8+3%U6N@~(%uQWNi|HVER1oe|;+Q=YM(fe9Ys7DeJY|-nS!@+exOwOJ!q4U*? zg%31;w=4{V96<62om5sgZ$*l!MnnyhmcYS+&-AjHLKmz*DtibVNc`CNjrTj2vt*(2 z4dhqHljl6Jwy4Hp^(_8aHIxT)3Ot&#=Iswv2qUAf-Tu~b)enCPqXt6YfIKVkE`=&W zCt^k5bHv*NJXx)To$9&!0-?;&WG3DTQIck#Zo$?}PqvahrH4B~$Q!_1ZoBbV{UWT`JtPvXA*p(ERtp|*?2uJ5WcZ7HmNVYg_RC7Q4_5A`dv;jmmovRkV!W)B(Y z_^sMg;`o_j^wDe7e>+c}Ft{}GcPvAB!uM+)A7HGfFNv`_E})QZ8$A@1eBw}uelMa# z7U!$9QZ(odMQm8sOb9l~tj->XC#*h*t3=eq8HrREn`UR~8xNC;Zbs5f?tC(V&6V1@ zOSO=y=PG;JwQ*XZjxu)j?c?}XHERv#JiKgkr+}}oXPbI_n>_%>nX+Tn3}g>wj2NTC z^+-4(9k!R20Rsdrg}{}3vhPArYFHo8RPCdJ&b*rwI8DT=GyHM^Y1Z%V_?$&53> zy34O&36u0rODh@H60@0pYZaexUNDec_#DL?6RD}Jz&**;u9ufX!&^%5MPn@OaBd=X z2%`p_*rxpvMPzXMwE4kr(}&cl5pam<|_ zdg)S8nJ%BRf*U4Z^?d?)yniI(ZEyK(ds9}A6*o;1E6pG}*!v)|1#UOp=)Q@oQPm+^ zT}q+=m)U|KIn@1q+%$r=%Il2&m)^Sm0=j%hjm680b_eo|QVqUnFYOlYr@{+nPnJCbA%WX&A3uHd(P>B>WR)n#>L^>H znxAop@1IiQu@mL$cSW|=eh#0Y=iti)<#K{{TtM=dUQ$m+^__LfrDT&cKg0Qh3J24P zP8G=`r?eIf%|2_FQTVaN)97-*cnkMx$)6<>DZa1dZWaz7iT}3kjFoS0tcD&)`q1`+ zHgm3`ViyQcohx0&y!lw4$%^?~V(`~zDsd1&Li(#0@?2b)QvIb)gTx}}XEkL~gNmFZ zfx?Dqgt@LZ>ZS5to>&oFnZa0i@dU?~uJZc+83N0Ji?fFt8VK|73p$nWNJ@TLK^ge$ zfYQ&{3(XU;w5KTEOk^mt{min!;~o}5uh!0=ZsZqsI8oX#FeYYU3gM`lb0u0;B=EqM zhMB=KgHCeIvZ*0#KyfMARz^58b#G>^{W$s^DRAn?9{sLVkgIQT{hVqoeTq5u0=#Kz z@U+wUurx2%MP2x@WsfrdIDl$fz+A@GShs9L(>1=*zv`o3%+=AXFY%uEbq{6n<>$_8 zJ5i8Cp(yEtm+2FwFj)RCK>FS&Z1MgzthIJ)tz4_t!yWcDchi&7Aaq&yIsF~k&V0

gVmRLcn2uLX?{!e^{CTTS_0>misDWiHU7+aa{mYvFRvVdnFVoX08%?*Zi!@KrPgi< zjl~QYV%%QP7V9W7E3RO+iFpO$*N44wBzs|$5+_WH80ALyRFfu0%!P4lH4lJA#=`nl zq>{J8xGS?&b5VrK_${sR&bYTDHLdzVb^e<%2v%!CDOpk#mKYjy%OsvOU0J@OG_BMc zG&urE&HW;=8JL!YuyVnLuGXhDF9Yl+dnc;%uS!m2fV~&LDm%)K-EQj=6=y9y-_+S% zVQu>a5L2>gKjfa9R)E}1HTI!HJ*0L|_6mm|u2bGyKvA>+5ZSk;=gY*M*&b%vp9f?r zI{7FW61)}y@(eyiGIoLN$)V$$NT{B5}?1URrR(#-*T0C`QLWx9O$u>(dnk&_=(SGybObD`P z3>9*VS5*JbrXd^FSNz3t@Hn{5i2ru}^m7i?m{U1mGlD2t?Adm|{`Ah8ti?ocfgQ8t z-x2m^sNbQqi#>2_RTIin0*TMHpI;ZyHtN{PLT!{X)(H~1=RBqDWcfmedZ8FFFUd|& z66k~x1;`RZ%TmCTk|767Q6nVKB9)G`$0*fQhvk$BOLGN+`%+Po@ltG9O(Gy`z>1IYh3H zmH9`w(GPFA*#v<(OcK8vGSyM}ivF}A0edl zK5G3(^OkH`^J+Y|4iQ2kfV7}sUkq`j)JFQj$7#_?|7YOV?}BM#m+w_^)Y1zrlxp(> zpDQC|D#iOIIH}VP-ti>e3|E;M$>D3~C70+{7|WC-Nr_uQctmSV@L;@C0fg}$7+|ygrtBX{IL_B^XVmK<5?A);hq~dB_nG<=xvD^M!)y1uGTD+}9Z)hRMw#?KT z>MKyk(s7P^eo>gPsl+S((Oa_@3i{M@qiG*o>g57ooc{~>RIxONHmII2S7zxlJ@*TL z;_d2B-9o9D8q~=MyQ&^ej`<{{R|pm>{L9It$w%3trgZ+^28 zHv}EOiu>Jh>M^|ADMpJwP^-d*-k4W(3r;u&6Mu)xT9=py`)hV$1uK%Wz$D2F7IaJD z>6q*wyug-oE| zl2218rdRL}Yt7Ed>RW&)xhvut;!DYL2o}o?Q!DFrd>mxn z%!&#eVYxW@wrS=*jv#W2GZ80@Q+e@ACQ>a*hBZ7n`sm>nvoap=Xy~Z+X3`q(&N zlZuXxs31;KW{;^&eJ5LoFas`~y2*7YP!I6bWgVqw}|43AB zmwyeKnS7WCHb>F$oE_tchPKrowm+fyHqmC9Bh?nD{RtV7`>@G%7QlWgv?r-VUnb6&i9n@dxC}#9Q*M4~u5a#< zpI|`!h`D=j7VGuVXpKXv0Kx@60)AHT8Hh5_wQ$7`f-30AEdQ94Bz-ZJ+m+Zt=5?KF zG7wkk2<%kXkW)NeA{530u@Ae<1n0DGtDC$683Nt`C-aCA4Ee2ir&0v62-W#+(y?06@l@~>!Ac736f{-Xly)P1wYfVn z)%AKWOG;!3H4pu?gEjaWfy#^^D>lOKyInV42C11;vCWN6)N5It&nGnAB9*nc zcrli?L_oH=Xw`f#qG`QIn2kGht-xw7WYq#J$4kAH#$3vCuCV?4dF8+d@zv4Mg* zv%_aUSE!x)B4Vyu1^$L?hXy8#uEB!D!O_#b`y~oR&f9kuESi!QccR$R&yG8gGm9}r zxq3UAX@P{7FOTLJc0TR6(PT_=g$OY=8R->XZ`TNFf1GEM36Wa2oF=FFVPqn(39*(J z)yaZyVnNM!VG=2)=AQn{;v2G+6`BO5xBO=!>jw#n_bZqB^R^YVKg8uRF|XB{EPl>| zg>PF`WMM1Oj%e{2co~VYseRQ11Ay=t$Pue;L-Y4643Q{?_Nm3d`e!P>Lp$dk&^Ss< z9%vV*q8Xe{>dIUdt+|Lw$z+4jrC&j$u8mXf8JZNNkt9)UP$Lu?YF!u{x5M;#svUAX z{37Nxjp%_{Jc*(Fg~iSk#T7Jm(%RoLG$|5dw)P0JQc}3)HnX(dQl!vyNm-EnhT0#Y zT%%Gy>FZ>r;*^XxDKKB)5WIlhT(>s+DW_DnE21XfTxcnc8D9H{|MV7y5Y3KOYqGPhRq)}7FYK*@kgIe!6^U$0Z?kq=&LK*j@FqJ$lw z*u}$hhh%~v_jj>z3V&*+Z?yQ0Xb$ZQ-Y5?CBY4{TU3Rys&|dzY2fkJDLhHGXqKlVR zs?7kE7D%un`n-AHenE4jWZaRG@^;vO9T`93i=Ley!~y-w3Fz4{`8T3y8fg9(>GNa;P@16^qRVC@*g zPtirW%$VTJNCR)H9ZKaum8O{f5WihO{L6M$(T|PsM=kz*ijii#_t^35?c6ypI)$G7 z4CVl`W3dA)yp54Sa(Zd3;sq=ePR#g}<|K0Us-A3WW13D~VcnZ4-m>M6r}!`FdxSL4 zJMAMEh(EuHCt;Ho+U#G^PgUamUw=)!MuIb1+Ce)^`DS}G-BaDqrn~qb<+3*SOIo6^mGgE}%0|+m}2QTop}b zaOUglxqGR4E&c^$i8EhJzne1lOeuHD`|{F!Y-`%Sp&XT5HQ4o+kTUCh&T2WqK*d?jKdqUk{k`$OZDoISF}8DW7GXAYt4KlB zd#W5=fa*G_5Zn#`#O^Ulf|Rey)o&yM4}g=_LU5+Gh@jL0q@p|=v+UPtnu zQACa;3=kTYz}Wwx%x*@UKu3TK3s8T?c1VN5DT!Kc_tU1N#%`7EZRYxT z!9J?eqzEC|?9UMTBuxsq%v2Y~wf6j{#FCgw+weK3@L=9whUg@Hn60R6J2PPcp?)3L z1*!zMPp1oubxjQ%E5J{l%7CY^Go=KD-dJh1jyU_UqoW0F8w zoB@mnh?A1e(v&Tcf{aD51+gZ?qhX+cIfnkQ+fS6-EO5FcmSwt#=1K08?HtRc-^5!| zak7GS8Mr!@J)N6JG!O=Z)e}G4&>rCZmxrXZ<9=MeRQJ4_4d|Fv%lefL4J~Zk6CmDc z#^x1{$=81QhKyjpvzitC&vMF6gcz`;U@|`8%MTDceV+X=coyqY$w4A*jSmyU!9qwr zY72A70^?9RA7Wp|P&N(t^J~r#C!JsKUjTPEzRNSIX$16D<>rG&V8sYnij(O}yyB); zk2ZFy%J&aW?)C;{v$H5@Kk=KxbbM+u9daD_3v1o2a!BSlM<&wSB01oVDJavyd$vAU-(webZD0@gOYf*N+ zD=hzICr_;Y7L#7Ad|v8J4|5go<@fk+rMCopY{~0gwP!|#H+*b7qmg^RXdz%G+!jlL zANx-1k5oq2(#}bZ=%043&h9GE_C(vlpW?d7fCpqLqDn`UThz)2Cnv^YDQ%@gEbFEM zTQ&Z0{olXa#YYV3Ag&@$1~Qi-0r8&HXL_G5Yi@LvU=E`9dU;!?j9^?q^H;|KPM;9? zlE`E#(d;`9yss;xA;-X^(JxiTA~ni{kK$;}%amkR&;wDiV%@(0hT}%L-1d;4e3_ZT zEc4B6mBXzqWS)Vp9(uN3s!8tSN&W|w*o;FP&^k?U=iWT2rbrVDI65eFk&Kt(sNVB; zV?%pO%k@bZB5SBg_tJgUdRW|MEiA*be8huH z0==Jl;8j(+J^~(9tQNBbU9$Jf15gW2_pjlvvBcxff2uExrH4qET^6CIe9^Tb_AI9! zaa#~l0%J|-wO>{X-75|4DhZ}$_dM^Ul};N{3vj0zYRm72w8HRs02zi*j6Nm|<@5ei z-(hYRR@*01Jc(vFife9XOcj~Oco>N9y^7K*?g#9iB%nsh6HA+vpT8jaq`~-C z70Jtp2$<^UXe-OK?xndT)L7}#JVd>qqW7d$&Ff%v|AfSH;E}dVc+6Rt@TvcyCo+cO z8%u>r+mMcHX<1HCy1c@L(j#HRHlm&8aG#v_l%CRC(oV9h7oD~tsY+?6ItZ&metjrx(5GgC zN>q7%-Z8f7`Mw7rwct6Y?a5V(K1{y>lmGKXiqTX4QybD{QOw=wgbu@W6WRb}2Q zOV`08-KI*rk7>m}4unvt$d>rhMq->J^X##VPWfF{KE3j^E79I+;hQhpe^=oEM`rFF zNnXG7s}+W~v=MdJS75i{xP%ko4#>c7M^`O+A++z-&mE#u+FRJYo3*xG?ClfmV7()W zG2f`5?x|`Apa9Fk8b?a?R2&9Cr7?uBtCM0sa=e+(Etpx9W^nsiQ@{Mb*C#l}V{qJuy|1_gS7Vh`X zr|48YTl@~fdnrbyvEE$j$!oN|k_;4=DPoCV+qcE2+rD^J=C;Ux8%Bw*v4X$REe-Gt zc+;{(n6docHkZS}SJg@V9U+zK`NI=i-(t(^Sm?Z`>ohE0hhW)Bi z@P`8XRwfhb(bpg%e2B8?OdJC`#)hYejRYo3a)wG31I?KVsWOw29M8p+#6K4&>G?>& zF*JbX$)LWD{%Rl4y`@mYmV8D{*hAfXaI}}R)b5)-|1l3StFU+$e17WE-8BBaJkY>d zA?SD4c6nkP)p{f)#r%9qpfDmV;z#c&if{4e*Fqk@$=Axi%lcfd>v$|%xQ6djM=pCf zdp@5A(eS84=?ARU_Pn%h`SX@N`hMp~PPG`{v^UgmZGWhH&FRo-wpo@}EPPwJ+&`B& z+TT9#Ru88gTyJ+H{dR@!7V@^T{&?B=BzzC94z6>nrkYL80tE|KBUk};Q6w5#fp)pU zd_QCWwCEU7-;~*{c}Cq$;-rY(l44=zNZBK1i6IZ|TQ2$Cd^fNlWb4oOkt;_RS{?fq$xwc*Do;mnL`ke0>KY%wLw( zsk7}Hq9?Dow#8ZtHinCJ10?es{0_(N561tfQJEO}v{w8D{BnCBATtK@t#LS#{`P6k8BNnh`Q4mY_6_m@+Sl zfMl7|5YYLDEBrcD#>!CT3XhkS*UdYo!&NOrAmw$XNaZBlxXOj4zy$k65guUeZfuK^$o zBrFLukoS~vt4V#craS65+uWy;1*i<~6=c3ju*~*>@Y|L;%^`skG}j`X5aDZP2UUt# zg)Hm{fP41vv9T8R5$FeaQ|M@vp;_TRPW1eA?ZddCaD zd%S>(uu15sTQzEPg#*I&LSvu8<__!kiT zuYR+XF$(G78&=;fR^|1$iX~L}fGJC_j6gRSMJ5R(t@^XG1kL}U1~Ef}LkzE|8EgHk zAHR{EJ!81M&eb@pj&P2zpcPljhhw=K9{eF{|HT;csGObM+3bj%cdUvFPnTH-1I|-3 z+;XS^D8Rm3E$$zP%*FYJXzaSt4B86&aJ4t4Bc|v+7Dk z!O19o#0G%Vcd{+2jc;`Es!;nTxkDD}f za`~IQsC$LdS;iuTN&{{OM|YJ_qb{{Q^6&PyuS$?mUV zc_9*ygZ;#)xsjzLVwHhM)q_>((b|(D-!fFwTlnrueJ!@&4xu&DquEJ^{<8A@p$WN) zigN3q)hV)Rok=oVdnmI~bUEv{7)F9$jw;KR2cABN8QJEWS0r)Fs7NGQ;lDHB_wv5$Vpe$81W z+|`Io?@;I*=_Q}aj43xk2rNl1p-9`eWLMH_sdj89cRK1U&iEdU5kCfs;o z>zeFxpSS5G$SWdJloZ*ij%)Q^$eR2^xI=>3n<$Y=d?qpG!~S5nmqE&-ylyq^P_1R2 zOx6|&o%dMJ?s2S0m4f=uzW~C@OP}uBRr?BFN9|wd@2qQSL$q$gI=ygsJ`{`yjMIr4 z<=5eV znc-BA94bz%zKY8(D^^ZsoN)H-O43`nP~FD}3=`wZ9ozzb-23lxW3}*ol`k;i1U;>( zlt_CrsCh_F_Pr$CoZP!}E^fN3x%<=feQwNm>?VNcesf6zRY>9bqUd$K99{k-EEX_*X$$d3&O6C+I$`Jz3vt>koNFdS0~E^eSj+(0DyjM zSVMSv(-$cmTh~+};w_{M2+oaKuL zC_9*+-nS^{2pJv7QrTePtnsM{`&|77nchaoI!D=ngJl8u5-S9K$LwS)!g})%%=|H! zD6WpQ%5}KT#~Hg=z0^oVy3|0AiDFx{`H8u1y2aoVoF_lI)!2S)uC=xLd9s_%Z$1*# zo@0fQuZ2cB@^`@^Lua;vY~d>xEc?4cF~NaT_=-W(qJ)Cdbc)r-*josZJrzlFOxh&m{H z%^!9mEQb`5)U;>UDSH)299|-gI&-_<5Ny!a+2!ZAGZv5NZbQAA z9>%i5c|`ntAERg2Oc(siVKs8wHC>L&%XBFXlNC3}z)c&TZ_ft7y_X7+JO|%C7!avh zW5$%+wCkV(msK+^`fiGLs`lt5O2}-S?RLehVlVy1UYydZcgI70TDBL{308FZW9dqn z6M&&1F=w-|<%>MVN72DM%Ii_bD-(@fPjaPhr0i`j9w>bGAxHQfeM>6%5Q`6(0gdFT zU>J+^R8^F$sEEs*K5Zzo|w0E@m6 ztza9^ckumYqP{y?8igj+Jt!#-vu1cC3E)^HAtpgKkQw%Ah&9mE{I<1M7K64nlSC-v z7o<9y`KYUay20grFq6#-B)awKbL3ZLR+^~}f9W&DN4H{4Fr&J%yR_~L zCa$U))m|6w(!Levo*}pk0~_{9Ve(~{@9W2!yJC22B4vitscpQO>@V~^57r*V_TrL* z+rBnV`wMTUfGM5Z!m1ot&RLjYXK|S)wWYF*ry|v@-F^8-JOg}D+T*d}J&$b}hv&ED zYYKZF9nl*Zh+9p#Usos!`N4XHpzc%wTfPbL6O+9{_#?gA~ z&(`F!b-1F>#7yS?yOba4*3=&7TYj5pkQUOOXWB3-gHMC;i<}L6LiN*j$5W+$Kw8RT z)e}*ZzjeMZUSdPWl&QU}kRslUroAzC&3FLmbh(3T@(*qLVFdM0IkTW|JJwpZ{J@RA|0HquQ$aqKX3vw+{KM)Pqgs6FmbqWisfY6wWXs`UHoR}}@zDn# zXP*aG1d!{^x=d?@&6yR4?-g@JRq<0(Ox)yIXPo~nEUasf`$)^VKEDO6*4&Fm1L5E- zWFq=`--KtoyZhbT@#jO`xt9wSs62v(L2bhG4}iab#@D{6oaOwsD9@uCzF_KOaoD53 zdaa=>l3-15sO}?jacg3^iCv<~PuaO#L?#F}YxN=ZUGBg*S;}j^PnY4jK4v1?;4llQ4Q7Zu0+5|P6+$L4giTidhqL+L>neX$(^M96aI7qKbj=n^ z)=<9ZS$zNU5uqkhI&;~%ku=pA-R{UH6&0pntr>Z*=Ikzkgr`uEXgC`@yha1+or&R? zA4diLAb~cptZXLhS1W~71w2-fN(xkXb(V?Dza}8X?hli83uLK~egCC=D&h28!98o| zp(ptIt+lUnKG8%Qy7xtuzpByJN%qk$S9kV!M;@_>6S$wx*qBiOD0u+>%hU^LG7nGd_<_c;pN*P5wN%Lz8uT=$ zCiLe#nsn438QnK?6p_(|8(&ee2&QN!deJN6fXxh6*fWFXmRU4nxeTD{4NGzS4D#Q4 zk-imk9Pc4C1vf`yfn(6f!0y{%P`~d=5eT(hJvtI2zU`@ z1T@z+88atp@O`Y^T%a)j*qHubR7*h8z1e7Gme4J>*RHY7=(FbCtIEiT#2Hp`I!e4f zHV?g${g6Nog)CYW5P`Km*KrkC3r`Lz`3(puq+$zdyozTLayb1`c^TL3_u`?Mdf@lU z*W4BZpkYy_lVnKZc%7oKCZ8p_BSn3bF*CG$5NUA9*?m$oq>}BOzLw=dv8750>@Kkc zSoW!T+l;Nh8v5n(Yl&Q$nqljAY>PG<)j21a{-R0Z^AoW*6fn%goaV~{aO(B*y?m&T z-aW296=F^^eupf@ygsfwYHbmmEwhK-VAY3@QlUE&#_p!0)%CYiV>N9PP5D)=&R4mr z@*1&5Xt~o~eCME^6eo6)J!_L{`;#&&Jko*Ax@&{hzA0#II@y)4{Y@mZnNy?(ecjc$ zVTw+;+KjH=k!xmH{* z?Nm%;Z?ft=rC#ZBK`@UJZ%mSxNf3UAEDG;bdN6;jS)}i4?X#$J36|j-;>CDNP7;%& ze|w%1XB`w~eSp!0*z3XFp0}G3Xy(Y3y1etrHG)i){^m?~3>EYtftAr=#stbj_Dihg zq#m`X*gP~3tYGeqVXFx-72di^rvPtdH5#BSyk;nEEHJ>5tv37lLi>bnKa-{}V%)p=kB^~-i|yzw2mPJD zeGLa8$-tfQQR1trWvfX`E7Ej>)^VH@HvaJBlH@B@iaggfFRwl|2S2Bqgt4$e;*WC~ zUKu2#Nen(UYEzh=0y>s{bQ9`mYf-%F)L0%u_(yrJUwIlg`jN)madq1H_M!@Q$0g_z z#cZD6a4cP?`oOL|&8TY9=$BN&_;bAvh5Dzo? zY68z8JJ34Tc-K4AK@&8_urtDw)`rRdIpmk1lC4wPEC9kO1a>ioYnagBLl&zkv_Dr+ zjYsH%xF?daecg>pGKNja*~z{7-u}uC9_G&)D7+(62^s}vD~|+V5whLHAqZt;;QL$x zw0#2ybiN20#NYV4+CGr!U76Ar!>x}sW7anjMze{qG_7Y8Wn6HL4ayqrEfZo2vu z<$~Y(6cp?DiBqlR*C8H9vmk+A(Hl_?lOyp@nTL&t^KkA?J7eRPgkCZ}N$g0fxLJ(Y zu8|ZJ%}xE2(w~^OBBGrAo&s{>A|8&dWd4qrWQ_-(rycDbEnYdq9B~=%C&{SD7lweo z zV8@^}Z^e{LuXap24v+!!mYl)33JJfQ@G3&OKQS5sajx+NNhm`EY-9>$h zbw1x{)LzMLhZw)1Mys}P_^e(o1+WLHdnE(eS)Vu;iz$|?-TUk;(lcoSe=z$;^oSNe zk~)?i&uQ|{(YJiGg1Ugu4RB4+4J)suCb`5b#b_)F{M2<+X8NgwA*HfEC;F~q9Xn8eX9 z+T|CTse~KOg0$Pp`eusXqey&Vmn#J)$g#NxiFgB�T?rQwi-Rk$8BW37Sl*9+H%k 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ᇂ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 diff --git a/sai/modules/saimod_sys_locale/add.tpl b/sai/modules/saimod_sys_locale/add.tpl new file mode 100644 index 0000000..4ad9c5a --- /dev/null +++ b/sai/modules/saimod_sys_locale/add.tpl @@ -0,0 +1,15 @@ +

Add new text

+
+ + + + + + + + + +
ID:
Category:
+
+ + \ No newline at end of file diff --git a/sai/modules/saimod_sys_locale/edit.tpl b/sai/modules/saimod_sys_locale/edit.tpl new file mode 100644 index 0000000..e4902b8 --- /dev/null +++ b/sai/modules/saimod_sys_locale/edit.tpl @@ -0,0 +1,20 @@ +

${entry}

+ + ${langhead} + ${content} +
+
+ + \ No newline at end of file diff --git a/sai/modules/saimod_sys_locale/edit_entry.tpl b/sai/modules/saimod_sys_locale/edit_entry.tpl new file mode 100644 index 0000000..7c30302 --- /dev/null +++ b/sai/modules/saimod_sys_locale/edit_entry.tpl @@ -0,0 +1,7 @@ + +
+ +
+ +
+ \ No newline at end of file diff --git a/sai/modules/saimod_sys_locale/list.tpl b/sai/modules/saimod_sys_locale/list.tpl new file mode 100644 index 0000000..8d8be8b --- /dev/null +++ b/sai/modules/saimod_sys_locale/list.tpl @@ -0,0 +1,8 @@ +

Locale String

+
+ + + ${langhead} + +${content} +
IDCategory
\ No newline at end of file diff --git a/sai/modules/saimod_sys_locale/list_entry.tpl b/sai/modules/saimod_sys_locale/list_entry.tpl new file mode 100644 index 0000000..e1d14c3 --- /dev/null +++ b/sai/modules/saimod_sys_locale/list_entry.tpl @@ -0,0 +1,9 @@ + + + ${id}

+ + + +${category} +${content} + \ No newline at end of file diff --git a/sai/modules/saimod_sys_locale/saimod_sys_locale.js b/sai/modules/saimod_sys_locale/saimod_sys_locale.js new file mode 100644 index 0000000..affb1e2 --- /dev/null +++ b/sai/modules/saimod_sys_locale/saimod_sys_locale.js @@ -0,0 +1,64 @@ +function init__SYSTEM_SAI_saimod_sys_locale() { + $('.content_edit').click(function () {saimod_sys_locale_edit($(this).attr('name'));}); + $('.content_delete').click(function(){saimod_sys_locale_delete($(this).attr('name'));}); + $('.content_add').click(function(){saimod_sys_locale_add();}); +} +function saimod_sys_locale_add(){ + $('div#content-wrapper').load(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale&action=addmode',function(){ + $('.localeMain').click(function(){ + loadModuleContent('.SYSTEM.SAI.saimod_sys_locale'); + }); + $('.add').click(function(){ + $.ajax({ url: SAI_ENDPOINT, + data: { sai_mod: '.SYSTEM.SAI.saimod_sys_locale', + action: 'add', + id: $('#content_new_id').val(), + category: $('#content_new_cat').val()}, + type: 'GET', + success: function(data) { + if (data.status == false){ + alert("Addition could not be applied."); + } else { + alert("Addition has been saved.");} + } + }); + }); + }); + // + //window.location = SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale&action=add&id='+$('#new').attr('value')+'&lang=deDE&newtext='+$('#areacontent').val(); + //window.location = SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale'; + //function(data){ + // if (data.status == false){ alert("false"); } else { alert("true");} + //}); + // }); +} + +function saimod_sys_locale_delete(buttonID){ + $.getJSON(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale&action=delete&id='+buttonID, + function(data){if (data.status == false){ alert("false"); } else { alert("true");}}); +} + +function saimod_sys_locale_edit(buttonID){ + $('div#content-wrapper').load(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale&action=editmode&entry='+buttonID, function(){ + $('.localeMain').click(function(){ + loadModuleContent('.SYSTEM.SAI.saimod_sys_locale'); + }); + $('.edit_content').click(function(){ + tinyMCE.triggerSave(); + $.ajax({ url: SAI_ENDPOINT, + data: { sai_mod: '.SYSTEM.SAI.saimod_sys_locale', + action: 'edit', + id: $(this).attr('name'), + lang: $(this).attr('lang'), + newtext: $('#edit_field_'+$(this).attr('name')+'_'+$(this).attr('lang')).val()}, + type: 'POST', + success: function(data) { + if (data.status == false){ + alert("Changes could not be applied."); + } else { + alert("Changes has been saved.");} + } + }); + }); + }); +} diff --git a/sai/modules/saimod_sys_locale/saimod_sys_locale.php b/sai/modules/saimod_sys_locale/saimod_sys_locale.php index a7f2bdf..5ea0efa 100644 --- a/sai/modules/saimod_sys_locale/saimod_sys_locale.php +++ b/sai/modules/saimod_sys_locale/saimod_sys_locale.php @@ -8,36 +8,31 @@ class saimod_sys_locale extends \SYSTEM\SAI\SaiModule { } public static function sai_mod__SYSTEM_SAI_saimod_sys_locale(){ - $result = '

Locale String

'. - // - '
'. - ''.''.''; - - foreach (self::getLanguages() as $lang){ - $result .= ''; - $languages[] = $lang; - } - - $result .= ''; - + $vars = array(); + + $vars['langhead'] = ''; + foreach (self::getLanguages() as $lang){ + $vars['langhead'] .= ''; + $languages[] = $lang; + } + $con = new \SYSTEM\DB\Connection(\SYSTEM\system::getSystemDBInfo()); if(\SYSTEM\system::isSystemDbInfoPG()){ $res = $con->query('SELECT * FROM system.locale_string ORDER BY "category" ASC;'); } else { $res = $con->query('SELECT * FROM system_locale_string ORDER BY category ASC;'); } + $vars['content'] = ''; while($r = $res->next()){ - $result .= ''.''.''; - foreach ($languages as $columns){ - $result .= ''; - } - - $result .= ''; - + $content = ''; + foreach ($languages as $columns){ + $content .= ''; } - $result .= '
'.'ID'.''.'Category'.''.$lang.'
'.$lang.'
'.$r["id"].'

'.''.'
'.$r["category"].''.$r[$columns].'
'.$r[$columns].'
'; + $r['content'] = $content; + $vars['content'] .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_locale/list_entry.tpl'), $r); + } - return $result; + return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_locale/list.tpl'), $vars); } public static function sai_mod__SYSTEM_SAI_saimod_sys_locale_action_edit($id, $lang, $newtext){ @@ -52,25 +47,19 @@ class saimod_sys_locale extends \SYSTEM\SAI\SaiModule { return $res->affectedRows() == 0 ? \SYSTEM\LOG\JsonResult::error(new \SYSTEM\LOG\WARNING("no rows affected")) : \SYSTEM\LOG\JsonResult::ok(); } - public static function sai_mod__SYSTEM_SAI_saimod_sys_locale_action_add($id, $lang, $newtext){ + public static function sai_mod__SYSTEM_SAI_saimod_sys_locale_action_add($id, $category){ $con = new \SYSTEM\DB\Connection(\SYSTEM\system::getSystemDBInfo()); $res = null; if(\SYSTEM\system::isSystemDbInfoPG()){ throw new \SYSTEM\LOG\ERROR("action_edit failed"); } else { - $res = $con->prepare('addText' ,'INSERT INTO system_locale_string (id, '.$lang.', category) VALUES (?, ?, 100);', array($id, $newtext)); + $res = $con->prepare('addText' ,'INSERT INTO system_locale_string (id, category) VALUES (?, ?);', array($id, $category)); } return $res->affectedRows() == 0 ? \SYSTEM\LOG\JsonResult::error(new \SYSTEM\LOG\WARNING("no data added")) : \SYSTEM\LOG\JsonResult::ok(); } - public static function sai_mod__SYSTEM_SAI_saimod_sys_locale_action_addcontent(){ - $result = "

Add new text


"; - $result .= '


'.''; - return $result; + public static function sai_mod__SYSTEM_SAI_saimod_sys_locale_action_addmode(){ + $vars = array(); + return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_locale/add.tpl'), $vars); } public static function sai_mod__SYSTEM_SAI_saimod_sys_locale_action_delete($id){ @@ -85,16 +74,6 @@ class saimod_sys_locale extends \SYSTEM\SAI\SaiModule { } public static function sai_mod__SYSTEM_SAI_saimod_sys_locale_action_editmode($entry){ - $result = '

'.$entry.'

'. - ''. - ''; - - foreach (self::getLanguages() as $lang){ - $result .= ''; - $languages[] = $lang; - } - - $result .= ''; $con = new \SYSTEM\DB\Connection(\SYSTEM\system::getSystemDBInfo()); $res = null; if(\SYSTEM\system::isSystemDbInfoPG()){ @@ -105,33 +84,25 @@ class saimod_sys_locale extends \SYSTEM\SAI\SaiModule { $res = $con->prepare( 'edit', 'SELECT * FROM system_locale_string WHERE id = ? ORDER BY "category" ASC;', array($entry)); - } - while($r = $res->next()){ - $result .= ""; - $fu = 0; - foreach ($languages as $columns){ - $result .= ''; - } - $result .= "
'.$lang.'
-
'. - ''. - '
-
"; } - $result .= '
'.''; - return $result; + if(!$r = $res->next()){ + throw new \SYSTEM\LOG\ERROR("No such Entry found!");} + + $vars = array(); + $vars['entry'] = $entry; + $vars['langhead'] = ''; + + foreach (self::getLanguages() as $lang){ + $vars['langhead'] .= ''.$lang.''; + $languages[] = $lang; + } + $vars['content'] = ''; + foreach ($languages as $lang){ + $r['lang'] = $lang; + $r['value'] = $r[$lang]; + $vars['content'] .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_locale/edit_entry.tpl'), $r);} + + return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_locale/edit.tpl'), $vars); } public static function html_li_menu(){return '
  • DB Text
  • ';} @@ -141,5 +112,5 @@ class saimod_sys_locale extends \SYSTEM\SAI\SaiModule { public static function sai_mod__SYSTEM_SAI_saimod_sys_locale_flag_css(){} public static function sai_mod__SYSTEM_SAI_saimod_sys_locale_flag_js(){ return \SYSTEM\LOG\JsonResult::toString( - array( \SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_locale/saimod_sys_locale_submit.js')));} + array( \SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_locale/saimod_sys_locale.js')));} } \ No newline at end of file diff --git a/sai/modules/saimod_sys_locale/saimod_sys_locale_submit.js b/sai/modules/saimod_sys_locale/saimod_sys_locale_submit.js deleted file mode 100644 index c5978ae..0000000 --- a/sai/modules/saimod_sys_locale/saimod_sys_locale_submit.js +++ /dev/null @@ -1,55 +0,0 @@ -function init__SYSTEM_SAI_saimod_sys_locale() { - // handle navigation link click - $('.btn').click(function () { - loadEntry($(this).attr('name')); - }); - $('.delete_content').click(function(){ - $.getJSON(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale&action=delete&id='+$(this).attr('id'), - function(data){ - if (data.status == false){ alert("false"); } else { alert("true");} - }); - }); - $('.add_form').click(function(){ - $('div#content-wrapper').load(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale&action=addcontent', - function(data){ - if (data.status == false){ alert("false"); } else { alert("true");} - }); - }); -} -function add(){ - //$('.add').click(function(){ - window.location = SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale&action=add&id='+$('#new').attr('value')+'&lang=deDE&newtext='+$('#areacontent').val(); - window.location = SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale'; - //function(data){ - // if (data.status == false){ alert("false"); } else { alert("true");} - //}); - // }); -} -function loadEntry(buttonID) { - - $('div#content-wrapper').load(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_locale&action=editmode&entry='+buttonID, function(){ - init__SYSTEM_SAI_saimod_sys_locale_edit(); - -}); -} - -function init__SYSTEM_SAI_saimod_sys_locale_edit(){ - $('.localeMain').click(function(){ - loadModuleContent('.SYSTEM.SAI.saimod_sys_locale'); - }); - $('.edit_content').click(function(){ - tinyMCE.triggerSave(); - $.ajax({ - url: SAI_ENDPOINT, - data: { sai_mod: '.SYSTEM.SAI.saimod_sys_locale', - action: 'edit', - id: $(this).attr('name'), - lang: $(this).attr('lang'), - newtext: $('#edit_field_'+$(this).attr('name')+'_'+$(this).attr('lang')).val()}, - type: 'POST', - success: function(data) { - if (data.status == false){ alert("Changes could not be changed."); } else { alert("Changes has been saved.");} - } - }); - }); -} diff --git a/sai/modules/saimod_sys_login/login.tpl b/sai/modules/saimod_sys_login/login.tpl index e71f419..8c4f06a 100644 --- a/sai/modules/saimod_sys_login/login.tpl +++ b/sai/modules/saimod_sys_login/login.tpl @@ -9,26 +9,26 @@ size="30" style="margin-bottom: 15px;" id="bt_login_user" - placeholder="${loginUsername}" - minlength="3" data-validation-minlength-message="${login_username_too_short}" - maxlength="16" data-validation-maxlength-message="${login_username_too_long}" - required data-validation-required-message="${login_username_required}"/> + placeholder="${sai_mod_login_username}" + minlength="3" data-validation-minlength-message="${sai_error_mod_login_username_too_short}" + maxlength="16" data-validation-maxlength-message="${sai_error_mod_login_username_too_long}" + required data-validation-required-message="${sai_error_mod_login_username_required}"/>
    + placeholder="${sai_mod_login_password}" + minlength="5" data-validation-minlength-message="${sai_error_mod_login_password_too_short}" + maxlength="16" data-validation-maxlength-message="${sai_error_mod_login_password_too_long}" + required data-validation-required-message="${sai_error_mod_login_password_required}"/>
    + id="login_submit">${sai_mod_login_login} Register an Account
    diff --git a/sai/modules/saimod_sys_login/logout.tpl b/sai/modules/saimod_sys_login/logout.tpl index a63e63a..4c7ad22 100644 --- a/sai/modules/saimod_sys_login/logout.tpl +++ b/sai/modules/saimod_sys_login/logout.tpl @@ -6,11 +6,11 @@ - + - + - + - + - + - + - + diff --git a/sai/modules/saimod_sys_login/saimod_sys_login.php b/sai/modules/saimod_sys_login/saimod_sys_login.php index 2e504cd..b9f0df4 100644 --- a/sai/modules/saimod_sys_login/saimod_sys_login.php +++ b/sai/modules/saimod_sys_login/saimod_sys_login.php @@ -13,6 +13,7 @@ class saimod_sys_login extends \SYSTEM\SAI\SaiModule { $vars['login_password_too_short'] = 'Password to short.'; $vars['isadmin'] = \SYSTEM\SECURITY\Security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI) ? "yes" : "no"; $vars = array_merge($vars, \SYSTEM\locale::getStrings(\SYSTEM\DBD\locale_string::VALUE_CATEGORY_SYSTEM_SAI)); + $vars = array_merge($vars, \SYSTEM\locale::getStrings(\SYSTEM\DBD\locale_string::VALUE_CATEGORY_SYSTEM_SAI_ERROR)); if(\SYSTEM\SECURITY\Security::isLoggedIn()){ return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_login/logout.tpl'), $vars); diff --git a/sai/page/default_page/default_page.php b/sai/page/default_page/default_page.php index d336a0b..cc48302 100644 --- a/sai/page/default_page/default_page.php +++ b/sai/page/default_page/default_page.php @@ -58,6 +58,7 @@ class default_page extends \SYSTEM\PAGE\Page { $vars['title'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_SAI_CONFIG_TITLE); //da_sense | Developer Center $vars['copyright'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_SAI_CONFIG_COPYRIGHT); //© da_sense, TU Darmstadt 2013 + $vars = array_merge($vars,\SYSTEM\locale::getStrings(\SYSTEM\DBD\locale_string::VALUE_CATEGORY_SYSTEM_SAI)); return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'page/default_page/sai.tpl'), $vars); } } \ No newline at end of file
    ${ua_name}${sai_mod_login_username}
    ${ua_email}${sai_mod_login_email}
    ${ua_password}${sai_mod_login_password} ****
    ${ua_last_active}${sai_mod_login_last_active}
    ${ua_joindate}${sai_mod_login_join_date}
    ${ua_locale}${sai_mod_login_locale}
    Admin Rights${sai_mod_login_admin_rights} ${isadmin}