From d8c8bf644ebfb2e273bd9fac21949daef92c1015 Mon Sep 17 00:00:00 2001 From: Yannick Warnier Date: Thu, 26 Nov 2020 13:03:04 +0100 Subject: [PATCH] Plugin: Positioning: Add icons/img + improve display + register plugin as official - refs #3644 --- main/img/icons/64/positioning.png | Bin 0 -> 5907 bytes main/img/icons/64/positioning_na.png | Bin 0 -> 10788 bytes main/img/icons/svg/positioning.svg | 1893 ++++++++++++++++++ main/img/icons/svg/positioning_na.svg | 1905 +++++++++++++++++++ main/inc/lib/plugin.lib.php | 1 + plugin/positioning/img/positioning-line.png | Bin 0 -> 15291 bytes plugin/positioning/img/positioning-line.svg | 786 ++++++++ plugin/positioning/lang/english.php | 2 +- plugin/positioning/lang/french.php | 16 +- plugin/positioning/lang/spanish.php | 16 +- plugin/positioning/src/Positioning.php | 2 +- plugin/positioning/view/start_student.tpl | 38 +- 12 files changed, 4641 insertions(+), 18 deletions(-) create mode 100644 main/img/icons/64/positioning.png create mode 100644 main/img/icons/64/positioning_na.png create mode 100644 main/img/icons/svg/positioning.svg create mode 100644 main/img/icons/svg/positioning_na.svg create mode 100644 plugin/positioning/img/positioning-line.png create mode 100644 plugin/positioning/img/positioning-line.svg diff --git a/main/img/icons/64/positioning.png b/main/img/icons/64/positioning.png new file mode 100644 index 0000000000000000000000000000000000000000..d7207fb1ead987fd745111b87f95ee84a22092a5 GIT binary patch literal 5907 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 literal 0 HcmV?d00001 diff --git a/main/img/icons/64/positioning_na.png b/main/img/icons/64/positioning_na.png new file mode 100644 index 0000000000000000000000000000000000000000..aad581550b430d209da61dc7408eacc78d7989d5 GIT binary patch literal 10788 zcmV+ zaB^>EX>4U6ba`-PAZ2)IW&i+q+O4~3a_l$~toxsQjB=mvW!~s(p9&W8dw+ z=Y5NR|9buUdc*Tl;Ac4h%pR|9<@{?>oM{H+tXr+%V|Lo?qtAMe@2o zue*08S6%0qR7?K3)b7vE@mX^D{@+Kt_3ie%2>yNjeBsGhY3i!r{R%GJ_Pv}Hg!6yn z6~}iU64yC?HeS6iemr)mI|li+z0c44{%N3JM*jSE{b~KL-~KSZZ}02j4_l_!M*Q-( zZ@BpP#y1oHcyRbyk^lY1>~8*LJMaH{&$9PAyK7IvqUnvO`}$Z%pW(ue$%B0?@s;^M z@_V+g%2&DDJ#hKF$KClFt~!rb_T?ToU31$l`#IcTiH~1C^V9p`gS}Ql_SKIdKRx<# z+viZj3kHsZ@9vfr{hxZxS3r2AHS}Ddh>tzy7nG2k-N*6tyq^= zm zCL9q%3K`$j&~VoCMB*nug&1lv#3#m>VvgmCHMSJelVVCKCxKkcAwN0hlyfe*=2k*^ zN-U}5Qc5kY`WnE%SX0fl)LL8fSK~pAdo`|aywZIS{pqo%o_p!Fw?X)fXT*_49%a`%dE34cP)@&Ju9xX@+zyYwu!YJ_Os(oJMXgVZeLz|z5180|G{hS^_n+N z>AL*oHD0}P{@lU|PNIB<$Nb~)c$NnUXfL1L#XXOg=j5}ydXge~78&K6YdU!h7e34R zxZRiUzCHJ^{C36iul(l!o98aM?*9+ZUAXSAe)}7*P1U(!9y?hmo8E!!WnIUJbC5j#VPd_P;Jry$>YvcREr8D)J z`_K*u4SUGsN5UbVTEhyXZEoC|9ptuinXG6L0oGx#fmf z7mi;Ljhk?t0nf7K)NO0sp2>|@+HvA+N>f-kan;yE!hBqs>sZ+>?(y{2cd301x6Jf} zQmy^kSvG%;JBj2ro6SF?rHQVfj(wFyG?*P^Gd4KLbh(?A)nGxdkpBdHWZ8UpjL;Rt zComMo*J20Dvx{PWvk)8l_)Kjm{3sM_-i9I(I}eL6_gXsl7~LOn^bbE*!Fhc-{6_8Q zvf`?Jr?gKBpa;^$UWt`C7jdR2kFp$I4|Cl@%DDSk>?bhybAho> z#{6UBJsfvG*a|3}W=yh`7^@ksYw@;STN^a4v8-KrCLaQ4QySNrWy}_gC7y~k^`{|yZjC=iT4_w*flZMHdRoLH#97)V&7 zfg^WTgwz+$u>lAGJ~`CUUdhb^r`h1NxmJ;<0zZOh`i%|V%-Ri0kje$bl8O4A$0XM_ zwV!0#mMuVI^S!wWuz+T19$=ZXzPIs1!Li^6e-~}nA1~~rJ8q~eF+k{r18!~yE4&BX zvcS!NE)}KP4N6@GZ{O(lFR+bRgC6r7436`_PvT3=AGFC|;ihc$b7nrR2#Zh7&J+24 zWa0_lM7rVe)I+JJ!vUDG-N>kH5NK;h8}?|e86cpY9JR$JX!F{=6NSG-uqD%t*{2dCukQZ*MCLqg!SDMng&av5;piEujPxX z@DN*=1MBWbwFHuiq~s0OigJZ(0FdxA@DWFJ5-UGo#iKOAP<7TGKuFy~{_i!hX}~Mq z2dYFLx%0D~(K`i+z0+bueJHYts{pnVZna$rURqVf*b=XBeb^(|&7CbT_vCicj{DTJ zzu%TSeS(_r5;xhe2&D9}1?6c3#X!f7Jrfol3caMFx)NpESf2=qAg0N@-YQ&)S2RyW z?6yZurz)%tJ`nKb&x$KDN7kYF-w8p|Wj<`4qkSyXgI{d17pR?HlT8XtjT#)%Bm@ z3a*e=mtz8Ka)exTkxHgHg!J!Q9x)ZrFaD8wM_fIYS*{Ms6H$l{mt03gtsbcQW05KV zcBo#z!@GbD)DH9nBLHkexR{M6vZD{Y2wm6;Yyu;FFw6Y|W?fBki|4bJ`1g1eNB@UX zmopre>!3B>;x}n!DIan>C`Vi5P}FvbHWI5Ro|h1Xa4zKYis`9g?2)mNSa?ON4L*)> z^=TLcn$AvWxs}N0yWE5#fx@YBJu&0x&JPL&ewGb8c!q5cCsH!vR z6(EGbasoLkHHfjPgBg~MEMKXQ8*Y%^yW!i(&iHaj9TR%!vI3tMH0XO zj0hcdnV;Lu{$%@_*y45g8PS}cTgQfzT!HqY+Jy*@55 zSXZfFlkcYpee(TB$n54!W<|#f#Cm|3WK=iOCT2nt;Rh>EK}>xvUHQNq9*QwZ&?(hI z$!5V-mp{752_jxyq+5zNgbCD=;bmruKZa88AW(`va`{Kzh&7-SYRZPokN`zSEhpD!UES_3(4AoGhB0WZe$A+##AZ|&xV~cjDbt5!;!;2x9oEep&OaCOj96(SfsJ|Y(`qLHJZ6Y^Kp6bW5+52 zY6%-`W$M5v-){I(-Ngl#jukdxCvE*Q{o6v@EY`T?beLli#s)W89h50`Awr&T|41zx z6qpm$?IImn!Kf||cQCS2kKhCDke=2sTS*WTiR36IDfc%;J@5AUK%H_qAje(po@(O3 zb(ANo+ItXE!+2be1}BrITyVO6)kLEt%n~}+Nf_YvTm0OulU*o`fp@G3B$ZHAKqY(| z4r06Kb#9>^2hsHKDeR7!@(OAiyQPHZ{s>#iDraRt$<38B#PeDH-LBIeoFaDp^c7z< zTO7R7S`OGJ^tV~XzIjp*NBZ@;yFh0coiwp}UgI!I5uADI`y;Xsl@JKjt}cZzloYM9N(qW6y#88^->gQJ);dbb7AAUU zJ%p{^wwKLeZyicTv`QMtCc(Jgg2N0F*5gw&0O|oo+VAO zPhXpu8YJSbhpCqN_NpZ2jCew~f}38(q=1t^redsftfZ|kO>N5f$%-ZornHDRUp09Z$yb?fuoLh1ZB5O@6r^B$2^s@~RG1;4ArvsQQLo>^V;*%fSI@%HqE z%C6nInd@zjQy*OBr)trmEN*`)(Shn<3=`R-)2OOjQiLekRd}$hgAT>!n{J?Gc~S)? zPo;`&HXlM9DU}%ZTdKTP)?qt=+g{ySBEzbwOX?6(8{_GPa{oiUn}K@Nndn;}AMr3L zpQLVqLhZTz)oGCF$c1c`CaVgk2SCMZ zE>hc;hbK#BDiW@I*lRlMRTOC`2vk{dh{1K~Y-H12}ZW!h27ZnD9C;%XW zI+}zFDxd`$9L=}}c35@U3Wqs`TwOO87T%S_|uDV zk`RaNjFO}q?xeUsl9X%Yh-fW@5j|;7613X`8tI613gqbFk@UZ&WYMse+?(hKk|$Q{ zed!b@1)cjfQ@Y!QNtSi%{|BQs`=vxzj9bT*q>!+|OB^XaV?G?Vw=Dc1bDMkKewX2o zv1L8u5ak8b8WO=RBDtiN;g1rIoQ^%7zNtD7=uQ!UwZC;*oWQv&4Ve|jqfW(?npL|? zM-QuV_h!pf)iPGCEQ)_$-kU2|kB2)=!N!<1_}C!N1}QWy1=FQK2(p8`%+g$Y{z6IOf{kG_T-!yO__sYh5rT3Ru# zwfd0@XTv(>i-ec8X$*>u7l6e&d%0S9s6p;z6={ANafU$MH#LJ!bEp00m5+`LrCmV! zLq?NP*nsnR2qmVezelWEcT+Z{G^kn*_4jn*d)R!j13PYPvWBQe)b!`zBdW&EGSm>g zSx*<)xWzZ74^}=NDbT|n$}6JsJ_L9Ft0N!#IUlTJnhOU|3B`A-psZLKy~K@KUCq|R z(V`Kjf}$==!e7%k+91@b^3P^$vS8%y|Qs+|B_4IYQ7|#rAhPiVTjeu$DgSa6f zRCJ_D(rbh1uB_Ml10~ew3hy8mB_7*&&62ClH($ zzf;Fx95p$?@R zHzk;-mRlZua`Cccd`ft>0qqaHvtuTWlK_S|e}pAfCOF(B>o{kq+^U+iav@XzcSlvp zKOdUy$mLH+t#GkwBOjKKD1=*z#$ldIUGSf6C6^I`I)&xMQwUmA=c=EvfpbncA>5hBCv{dl#{_KaQv>o=#Qq}pu7GgR5zV1@|wv!h1Q>O(0uc;e#rN^mrIuX3=w5$kQ<0NS`M1q1porzky zo$(c&TD}Ju_}oza6CIDnIa3MOX_y4{VkiJFKZ51D``lA4TZa#)PHE(cl0GLfCl;S= zEv5@3RZQEqDDuP$(OBCI#F?0@yrAyk3ciRLbO#L;cdn8p-`&dV-;J?N97lz%b6Pc( zBsk|->cLQtM!vQJHyIOXNrM?`@@t|>0v>MH&Uxw`c+cAG>Z7kmt?JRwk*bCQw~jM5 zPQJB9o6AzIojQ@TT5F>D5D%_-U{vUxPj{q{VX~1 zX`ZUZ2V<+6P!aFFKjN0uhAIpr@qisSdAZGWx|45zlg?LDo5oV&QA(sXsB!b_NI{>A zcXrB7geOui9C`k&&TVL>TCNQzhH=2|L7R_i{bhAOC|)~0YDoT-)<5;8ioL0Doo0Z$ zxpRGwFn_Su?lX!@G)a0`SdcjN+%!tXa4o zPM~JI$z5y4tL?i_+m|J}OIc)N8X*@1fqM34fntgXHpd5|CUPEsRG#2qR6=ZPZciaL zh`|ihI)#_^De{?AZE68@HLEFVtvXNH)Kn3!6>})IR<&qcWPN3bwO?B2v}SC7Cn+dx z(NTeN>E4T+;nSc){Bwm4w*E#eUw={0Ew*Q=_QM0zPWx1-uS1NtGZvDy)y2`|f&pIA;lVp4MV4E=QoHMO`Uy#5 z->8pI9n{iP1ba%oIzmnLQUXX#mR$c#^V`5+ws9s&fM`U`)B&Khp3MTDiHxdNz1qd) zf>Vg-kyC35=F>TFdS}(P4y<4^q;gg*T;ls;dOC@#>Ll}?G+MnVv1$M+xfRP0@aM4C z&r$v7a70HV1fB|nCL`=r<#VVqeZ$ywW{D+@|2*p4SZi2ufYk8gyIoippr`2tr3$jN zpy#1}^Bi+tI<^!HtOEVDJh9H|wglbw&`8{%ozL}QrHl~tOiOE_jQvo@xm%eo(pmRkHm-!Xp zQ(MYM^n<#^gK@aVKXn$*9b-WpXdDty(Wzpe*Q>hJ`q3n}j!o38(@8w;e-j?NM^Xhi zSQ^OFgHd1_IeBL}ZynSB<8bzmpRUh^pfl!zP_zTbslP_RS~~HorkPkA88_Nngb$C- z<)*Zn=aqlzEU9gH?*pXMPEk)M8Lz2737Y2i_>zk%gUJYu*e#(no_ zT~c>a*%1ab|yT!^vBLY$SB|7L&o9F_jcd< zt5JuP%Au)2Qm%JgQI$2>pqN11Cyd%s>U6`d^owKYnzr0lm^>9x_4s{|ZJwpS_ zkIit{Ul+XTq(8G#8{y1udGms(bfJXW=oi?_jlY^^O}#`^E}#Zk(%EXULDD0sjJ#rHzpn+M zx6ZCk0IZ5+o1(Bm;ku{;|MeCjVR)V^1jHrv!$nb#SWbYFin5jA)TqA5?`IcA&WR}DGInluNJ z&Sc`S`9bJuRnyn0OAy5vaD4b0(F2-4`K(9wGn4-H$jfPTby#Em?Uh@re2TFE_3!AC4V=`^zzLhwk=NP( z+j_VZqJ656PTaD5csJR9Z&DU18rT#tWcM}mu9Ng61%1H@0gorh%zNtZ=?-|je^&9G zv;Ren|D#+Nk_*EM1!|T3#vdkv<;4oJoHHJU{jK5CDX_9nDmJ3x1Ic#~dY^ttYYp{O zH8P^VSX<9$%j{UnBMqHq89~DJfB3;`s#~*s)}Z?SD=`A{S$gbU$M+!l^{*Jse`GqE zpn)3yKez`7JNQadvj6}ABWXiJP)S2WAaHVTW@&6?004NLoshjs#6T2fp2^6e7H(FRYjRS}Kak=-L znE^UssZ6uD2N>(>IPGVb*;TmwhBb64U?W#e)lZUBc+cl60;w-O@$%38d6sn1DAqY; zRaHA6I3PzeR|!+tx*euRoSawrWPSua6+-AM77w6Kab`awP10)DB z!W0vfaOkmGc8(EYpEX8}9QSCTSW6V_%{b$5Lu%+0=L z05Bu@s*?Z!3oS`RK~!ko-Pvi7T-9|4@Zan1>Dd>}j7GC)UqDDkkpvhB0^1bCU>g}s zJ|qs54X#RgNeom-?AWo3qAD(MQn4Kn#&#Tt4FnPgI|PRyV#yW;1PBWdXh+-ZJ!{X5 zW_o}5pw=K^K+`}zB==Tz-+q1GJ^!=ZbI(1O|3fWUv+&G{_j=OE%t_yO;pGRLhA;Tx z`KP~^0AeN3mYrsMW#jdQ>n}f$`rG_HTT(NB_3zF*{10KIe$$+<{K?om*1+*rY0l!s zcg-FA_+7uZc&6{{{mBI@FFm8?3!6v2{3F4;1aM4o&DG03w|M{hznTg4?N_bqXc1WI zy2#YEf4WoIy9U6Np5E>+WxqWW+5>le4yAuWBI8~>2GfO@0rox zepN?%wK@Y*veM@39ubv)M*wn0`_p%Y8=fAT`8%)O`7sS5aw_H28XUdvm&e(c3}EcL z&wjqNH@~&9Y(@W zR1{h{If|WH{wvhVON$6a>>YXhzLVvjkp@0pUih$@jND(O#DoGltpG^DcXNU-r+p7bD#F3X z<)l^EJN)>M-zfhn0bFzG+5c4+89K>QYh!ias=V=|z2Uq_OIQ{N1paz&>2F zx2>;gCvM!7w49&6sr+wY)4z$0wgm0kv>o~8`ub|Gh=}Po%WKXN6|>WTn^db55t?ws z%aV!k%C9|he2&j_-O^E|px>0ND&HQy_cG6)A|JT9BJu@STQbxfjl@-{He|#ZMd0nC z))pzx^q_q%Kqyr049je8IrNJ!UwGRK@Qw8~9Yl;cDl2E>TgZQs25zqKM8~>wwWxJG z^Xl|~i;X)VCOX|?qW0VFPFV#7IXR&w|Dm&UY{_@BT;Fv|N2RQ8Q!?sp7`pc|+fI=Y zg*UXUyH0?9M`RUb6pZMxL`L5mP{;MyBd$zLT$uxMKH%YbiLbil8|!O3GAa!_DkJAn zo%eb5&Alvod~j=U^#1ee7a;Volo}OkHCSY`I@RhC5fN7=D(_J%ecn7B+O%lW>IDl7 zOTDk^JDH8w)zwJrk&@A9)6h@nB6ik}3&@O8nX`XXKZ+jF8lQMYZZR9@zK;a|RMop;{Sn4rZ5phGte8wFf6Bh_g znG$IBY3Jhbbe2%5+A5F9XfbqCcQ7h6C@s{Ycjy;CHg!q>*>j^phnyj_0J}9xtMVK3 zT;XDU$~3FdpiXdt@4i0DJJ%+w9c(MNM7Mgi@*Z~Zp0}3&1OStLN6}@uP+-0t{y<)< zP3DQY1(ZOWp?mV*Mv(+{AqMC(f*{a!6 zwVLg-MxA=)MTU?yV$hhRq@)pXts2y8uuEXlg4#KE?;ALE)(}1M$FkF6XLZP!FBH)w zVYR%NPPHl|B_xd+l{6}&!7O#^)v42<3Z(RzQtd1Qk+Ai}e<|^F9BxSdaaLeVje^ss zjZou7OVykA2IU`f#8DH|Ps+{FBr2-g_!S?X`*>GL8rapp{JQFfMp3hb8a-vUrE1Nw z%WALJCb9;M6qP@wTC=*ME~-UDMWwYl7@ca`@w1Wuuw+5>yoEB_5p~F*wQ@)rmy$GQ z%$Sr$v(y!Pe0pIH7&a;?DXZ0>#ES9_M^YsfD1tjiZ%74!an%CLJs~F{qsC#EPKTS< zU6FCg=>&Ur(M^xhe9XRh`yH++Ndvn_mVL6isYOJcP?M*$SgJ~s{o2HY2xTOU7&9iR zOiR%bYfq47L_*pkeJdCJ{Y$BmN;H%I+WFO$#)OD#wapr#&;qY&M<6SrO-xXfG%UtJ zk|v7AXfO{gW<^JT>O&=HfaQA%H!cdw)F>0m*yckLhDE(*t=i%3VdR4_ap52`e( zE&4^;fL)@d=3VmW=H3zj>>Xe7iR#vNff}JEPZo_(XFy!dG~KvCW5$iD(NuKDG9h+* z&JG8RXtd0M$llr)A1Ez^q2B*sl ziwiP!VTpCZ^6!o0Muet>a#q+SEvZY^fVlQzFE8!^;q+e6sZ*DJAJi!(s$3j7jq^V8 z`z4rwJyQ!mS~+)tKqZ>|N~@(R)XJLFShW4ImXR=K+_1P7b!yd!iaThon3!P))f->B z9`u2Zcw>egOz zaY+Cw?n!16NF!sVUD9GgfxMkMb*s>(O`B#Eiv8G%IILTzbvCIGw_Bqot(v}G5`af1 zCZFCpt%I|qY!h?TgyqI{XjgH9yrEE1w=P}c=4v%po4}wl39UFw{kjjXE~!|Z`KLW1 z@(Mx?nmnUSm09NMl{B>|}T=j2qkh#WG` zv{Ob@L7>GEp_GIky)rs1(5`M85;5hfR4Mm}29;t0=cvE5an=l10qoDuyP$m8iekb! z%VupBNXyFDrA*FjHEL9xG*w)MxPH&s=uti5&Q`A=ug3P+=+=SVC6w!PKiqZsRRSSe zHTbo4LZcSht4Z|~X-9sAj7zQ!Om+m7!3kzO?&-e;*q^Si4M!v{kl9 zE7vHr(0;3qT_A`n6FTG-I}D)OT#GF%P8&`~$G!4lPhUv@w&X6__`=o8735`|W23Fk zGlj)M70Q(9wcV=@$%~q8jg?L`b6$43?=#*r*;C?;N&W|~UL7fxwdbm}#f8e1E0gxJ zXYDj4P;I{DmQTx^FBUBF^3#r)*5$}{he`zS;f=o>+Szobh@6xao;BgHZC=rhm{zNt zsjXcV0rbUi}752nE7?X836D(L{1! z`0&W?uwO#Ip0_@touW{g`pF|-{9TbE%Sds{nRG;_UR?&|1;TuKAT=jdK`2_mjNjOh0Jg&F*z`v80k*#4*Mh|3>YiO) iFFU;VEv~}<&-Onz0 + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/main/img/icons/svg/positioning_na.svg b/main/img/icons/svg/positioning_na.svg new file mode 100644 index 0000000000..9fa26b0eed --- /dev/null +++ b/main/img/icons/svg/positioning_na.svg @@ -0,0 +1,1905 @@ + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/main/inc/lib/plugin.lib.php b/main/inc/lib/plugin.lib.php index aac40b1e41..5a789f81d2 100755 --- a/main/inc/lib/plugin.lib.php +++ b/main/inc/lib/plugin.lib.php @@ -256,6 +256,7 @@ class AppPlugin 'openmeetings', 'pausetraining', 'pens', + 'positioning', 'questionoptionsevaluation', 'redirection', 'reports', diff --git a/plugin/positioning/img/positioning-line.png b/plugin/positioning/img/positioning-line.png new file mode 100644 index 0000000000000000000000000000000000000000..27cd8680a16cc8b154cb1869387b6e0a4c2a1bfe GIT binary patch literal 15291 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 literal 0 HcmV?d00001 diff --git a/plugin/positioning/img/positioning-line.svg b/plugin/positioning/img/positioning-line.svg new file mode 100644 index 0000000000..2a8fc79114 --- /dev/null +++ b/plugin/positioning/img/positioning-line.svg @@ -0,0 +1,786 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + 2 + 3 + + + + + diff --git a/plugin/positioning/lang/english.php b/plugin/positioning/lang/english.php index a576d71368..4a4b9c4b46 100644 --- a/plugin/positioning/lang/english.php +++ b/plugin/positioning/lang/english.php @@ -14,6 +14,6 @@ $strings['SelectAsFinalTest'] = 'Select as final test'; $strings['UnselectAsFinalTest'] = 'Unselect as final test'; $strings['InviteToTakePositioningTest'] = 'Please take this positioning test before you start. This will help us measure the quality of this course.'; $strings['InitialTest'] = 'Initial test'; -$strings['YouMustCompleteAThresholdToTakeFinalTest'] = 'You must complete at least %s of progress on average for all learning paths to unlock the final test.'; +$strings['YouMustCompleteAThresholdToTakeFinalTest'] = 'You must complete at least %s%% percent of progress on average for all learning paths to unlock the final test.'; $strings['FinalTest'] = 'Final test'; $strings['Positioning'] = 'Positioning'; diff --git a/plugin/positioning/lang/french.php b/plugin/positioning/lang/french.php index 82ed213860..79288105ab 100644 --- a/plugin/positioning/lang/french.php +++ b/plugin/positioning/lang/french.php @@ -1,5 +1,19 @@ install_course_fields_in_all_courses(); + $this->install_course_fields_in_all_courses(true, 'positioning.png'); } public function uninstall() diff --git a/plugin/positioning/view/start_student.tpl b/plugin/positioning/view/start_student.tpl index ebcc9fc071..7bb1bbb24f 100644 --- a/plugin/positioning/view/start_student.tpl +++ b/plugin/positioning/view/start_student.tpl @@ -1,18 +1,28 @@ -
-
-

{{ "InviteToTakePositioningTest"| get_plugin_lang('Positioning') }}

-

{{ "InitialTest"| get_plugin_lang('Positioning') }}: {{ initial_exercise }}

-
- -
-

{{ "YouMustCompleteAThresholdToTakeFinalTest"| get_plugin_lang('Positioning') | format(average_percentage_to_unlock_final_exercise) }}

-

{{ "Average"| get_lang }}: {{ average }} %

-

{{ lp_url }}

-
+
+
+
+
+
+ -
-

{{ "FinalTest"| get_plugin_lang('Positioning') }}: {{ final_exercise }}

+ + + + + + + + + + +
{{ "InviteToTakePositioningTest"| get_plugin_lang('Positioning') }}{{ "InitialTest"| get_plugin_lang('Positioning') }}:
{{ initial_exercise }}
{{ "YouMustCompleteAThresholdToTakeFinalTest"| get_plugin_lang('Positioning') | format(average_percentage_to_unlock_final_exercise) }}
{{ "Average"| get_lang }}: {{ average }} %
{{ "FinalTest"| get_plugin_lang('Positioning') }}: {{ final_exercise }}
+
+
+ {{ radars }} +
+
+
-{{ radars }} +