From 12e2d09881fd6ac03229d7b4e6703418402a1872 Mon Sep 17 00:00:00 2001 From: aragonc Date: Tue, 1 Sep 2015 18:18:06 -0500 Subject: [PATCH] add boostrap select fix actions toolbar CT#7539 --- app/Resources/public/css/base.css | 36 +- main/admin/dashboard_add_users_to_user.php | 128 ++-- main/exercice/unique_answer.class.php | 2 +- main/img/icons/128/course-add.png | Bin 0 -> 10020 bytes main/img/icons/128/session-add.png | Bin 0 -> 9783 bytes main/img/icons/22/course-add.png | Bin 0 -> 1101 bytes main/img/icons/22/session-add.png | Bin 0 -> 1279 bytes main/img/icons/32/course-add.png | Bin 0 -> 1974 bytes main/img/icons/32/session-add.png | Bin 0 -> 1974 bytes main/img/icons/48/course-add.png | Bin 0 -> 3194 bytes main/img/icons/48/session-add.png | Bin 0 -> 3173 bytes main/img/icons/64/course-add.png | Bin 0 -> 4205 bytes main/img/icons/64/session-add.png | Bin 0 -> 4261 bytes main/img/icons/svg/course-add.svg | 794 ++++++++++++++++++++ main/img/icons/svg/session-add.svg | 794 ++++++++++++++++++++ main/inc/lib/pear/HTML/QuickForm/select.php | 2 +- main/inc/lib/template.lib.php | 5 +- main/mySpace/course.php | 15 +- main/mySpace/session.php | 18 +- main/tracking/exams.php | 31 +- 20 files changed, 1712 insertions(+), 113 deletions(-) create mode 100644 main/img/icons/128/course-add.png create mode 100644 main/img/icons/128/session-add.png create mode 100644 main/img/icons/22/course-add.png create mode 100644 main/img/icons/22/session-add.png create mode 100644 main/img/icons/32/course-add.png create mode 100644 main/img/icons/32/session-add.png create mode 100644 main/img/icons/48/course-add.png create mode 100644 main/img/icons/48/session-add.png create mode 100644 main/img/icons/64/course-add.png create mode 100644 main/img/icons/64/session-add.png create mode 100644 main/img/icons/svg/course-add.svg create mode 100644 main/img/icons/svg/session-add.svg diff --git a/app/Resources/public/css/base.css b/app/Resources/public/css/base.css index b2c69d54d8..bab3618ce3 100644 --- a/app/Resources/public/css/base.css +++ b/app/Resources/public/css/base.css @@ -347,32 +347,32 @@ ul#navigation .report a { } /* .actions a img{ margin-right: 5px; -}*/ +} .actions a{ border: 1px solid #ddd; border-radius: 5px; display: inline-block; margin-left: 5px; padding: 5px; - background: #ffffff; /* Old browsers */ - background: -moz-linear-gradient(top, #ffffff 0%, #e5e5e5 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#e5e5e5)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #ffffff 0%,#e5e5e5 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, #ffffff 0%,#e5e5e5 100%); /* Opera 11.10+ */ - background: -ms-linear-gradient(top, #ffffff 0%,#e5e5e5 100%); /* IE10+ */ - background: linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%); /* W3C */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e5e5e5',GradientType=0 ); /* IE6-9 */ + background: #ffffff; + background: -moz-linear-gradient(top, #ffffff 0%, #e5e5e5 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#e5e5e5)); + background: -webkit-linear-gradient(top, #ffffff 0%,#e5e5e5 100%); + background: -o-linear-gradient(top, #ffffff 0%,#e5e5e5 100%); + background: -ms-linear-gradient(top, #ffffff 0%,#e5e5e5 100%); + background: linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e5e5e5',GradientType=0 ); } .actions a:hover{ - background: #f4f4f4; /* Old browsers */ - background: -moz-linear-gradient(top, #f4f4f4 0%, #dddddd 71%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f4f4f4), color-stop(71%,#dddddd)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #f4f4f4 0%,#dddddd 71%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, #f4f4f4 0%,#dddddd 71%); /* Opera 11.10+ */ - background: -ms-linear-gradient(top, #f4f4f4 0%,#dddddd 71%); /* IE10+ */ - background: linear-gradient(to bottom, #f4f4f4 0%,#dddddd 71%); /* W3C */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#dddddd',GradientType=0 ); /* IE6-9 */ -} + background: #f4f4f4; + background: -moz-linear-gradient(top, #f4f4f4 0%, #dddddd 71%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f4f4f4), color-stop(71%,#dddddd)); + background: -webkit-linear-gradient(top, #f4f4f4 0%,#dddddd 71%); + background: -o-linear-gradient(top, #f4f4f4 0%,#dddddd 71%); + background: -ms-linear-gradient(top, #f4f4f4 0%,#dddddd 71%); + background: linear-gradient(to bottom, #f4f4f4 0%,#dddddd 71%); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#dddddd',GradientType=0 ); +}*/ .actions .btn-toolbar { margin : 0px; } diff --git a/main/admin/dashboard_add_users_to_user.php b/main/admin/dashboard_add_users_to_user.php index 522dc6310b..60933d7785 100755 --- a/main/admin/dashboard_add_users_to_user.php +++ b/main/admin/dashboard_add_users_to_user.php @@ -303,37 +303,29 @@ if (isset($_POST['formSent']) && intval($_POST['formSent']) == 1) { Display::display_header($tool_name); // actions -echo '
'; if ($userStatus != STUDENT_BOSS) { - $actions = Display::url( - Display::return_icon('course_add.gif', get_lang('AssignCourses'), - array( - 'style' => 'vertical-align:middle' - )) . get_lang('AssignCourses'), "dashboard_add_courses_to_user.php?user=$user_id" + $actionsLeft = Display::url( + Display::return_icon('course-add.png', get_lang('AssignCourses'), null, ICON_SIZE_MEDIUM ), "dashboard_add_courses_to_user.php?user=$user_id" ); - $actions .= Display::url( - Display::return_icon('view_more_stats.gif', get_lang('AssignSessions'), - array( - 'style' => 'vertical-align:middle' - )) . get_lang('AssignSessions'), "dashboard_add_sessions_to_user.php?user=$user_id" + $actionsLeft .= Display::url( + Display::return_icon('session-add.png', get_lang('AssignSessions'), null, ICON_SIZE_MEDIUM ) , "dashboard_add_sessions_to_user.php?user=$user_id" ); - - echo Display::span($actions, array( - 'style' => 'float: right; margin: 0; paddingg: 0;' - )); } -echo Display::url(get_lang('AdvancedSearch'), '#', array('class' => 'advanced_options', 'id' => 'advanced_search')); -echo '
'; +$actionsRight = Display::url(' ' . get_lang('AdvancedSearch'), '#', array('class' => 'btn btn-default advanced_options', 'id' => 'advanced_search')); + +$toolbar = Display::toolbarAction('toolbar-dashboard', $content = array( 0 => $actionsLeft, 1 => $actionsRight )); +echo $toolbar; echo ''; echo Display::page_header( - sprintf(get_lang('AssignUsersToX'), api_get_person_name($user_info['firstname'], $user_info['lastname'])) + sprintf(get_lang('AssignUsersToX'), api_get_person_name($user_info['firstname'], $user_info['lastname'])), + null, $size = 'h3' ); switch ($userStatus) { @@ -396,64 +388,72 @@ if (api_is_multiple_url_enabled()) { } $result = Database::query($sql); ?> -
> +> - - - - - - - - - - - + ?> + + + +
 
:  - +
+ + +
+ +
+ +
+
+ +
+ +
+
+ + + +
+ +
+ +
+
+ +
+
+ - :
- - - -
- : - - -
-
 
-
-
+
diff --git a/main/exercice/unique_answer.class.php b/main/exercice/unique_answer.class.php index 35d185d8d5..849eccbf5a 100755 --- a/main/exercice/unique_answer.class.php +++ b/main/exercice/unique_answer.class.php @@ -38,7 +38,7 @@ class UniqueAnswer extends Question $obj_ex = $_SESSION['objExercise']; $editor_config = array( - 'ToolbarSet' => 'TestProposedAnswer', + 'ToolbarSet' => 'zTestProposedAnswer', 'Width' => '100%', 'Height' => '125' ); diff --git a/main/img/icons/128/course-add.png b/main/img/icons/128/course-add.png new file mode 100644 index 0000000000000000000000000000000000000000..ccfd2fe700d962f997508d3e4a2f71e47065a3de GIT binary patch literal 10020 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 literal 0 HcmV?d00001 diff --git a/main/img/icons/128/session-add.png b/main/img/icons/128/session-add.png new file mode 100644 index 0000000000000000000000000000000000000000..08f31cacc009a20da55b0a3adbd8df1b3dc2dba8 GIT binary patch literal 9783 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 literal 0 HcmV?d00001 diff --git a/main/img/icons/32/course-add.png b/main/img/icons/32/course-add.png new file mode 100644 index 0000000000000000000000000000000000000000..573cf03291f1c8350524aff1a76a56f444d10288 GIT binary patch literal 1974 zcmV;n2TAyeP)4ce91#8rjK5(=hYaMllj`FYyPE{PHrO+zaQKVHt2B&qD@}`AWglNMffGCd;AZZdH zuz76vaql_DKX#MsCfQj2(cjE(&pqd!d%oZE{r%4G?uGxeiTKW_ip&Ezo-#~qz{GwG zXcITl0BF!M+Q!X~J`x)+qJLa#W1Nurtm6+HkH@s)J9)WdJ{kU6Nj6#&bp={ulm??g zspyz8U{tKHL1~OppkmLc7%3&At|hVwZtiP;$bsYpQl+Fha5Zirh0!_=NDTn!0Rm>o zxCZTs5s0?=IvYHA2Zul=UMn-OdmROjbD<4eANeIi=9pN&uhnvh3jvle=_3)aK$~RX zXhoLoV@`4P0Js@ECk|Zofs0tKNNkTtOG=;sY#~fPfdyrAsekM(PJML`U!S@Vv_=B1 zcEM;0yrYK!hsk3rd39Poi9L{x$5vC~-dz;YICU(8+klen*N zCL8L1g9I{Ce4PCD-zd$wgDd_P=Ks2uGi|3q!##K0%kF32=EJTw#%GV`rJb*`^3Bzt zB}Pc3(8(1DWnv4VjnSHiC(L0}<2DX7A0pz0@rV4NHLe>$3c+``FDGN!7}g(pjhE-I zj^>Av{Nl^6@anr8C|^E{O(VGsh#h?JxRY&8&q6k!o|!=N>tfgAWNFKA6T z62u?sV#k?XXyvl0{&nsynhsj>z@2j_%r0d0&b6Q=m#((baG|k31jb0Dz)l(h%V0s2 zz@Daqtb1@Jqii45MfXtP9gPQp<2qnw{tN^H|Sy?jBpox87dDl>A9ZKxsuzdN!}s{+y1kb{?JnC4RhP6=+HG zwJTH>R#1{x!o`j&l;jmtl2^<-jfZ0dz#~j@0@B7ZXw!F=>svmc{!%??&CyE@m{@^% z?k`Iij?|J9=5l|BCk=Q1& z@FftyV8_>iWCdyc`x{~vuuoo3bcb5-#D-_6sd$jG{1WQV9;e~lsev4j5;0N;QVe!P z_SFHEv>GO>bbY?(*gmqYOoaB3Yo~*d1RV#X1U4fmkYZse!LSMtmw0HR$4U(XR{|8& zOs;0-qd&kSJTYYjO>LK0ymkc^dI*93V`yn?AxV^eNR1zE_hR7MRXj55^Z2sT+1Ig$ z{nz$#GIX5U*`LFgo`y$APf`WaEUb?_F$GM#^aJ5Y+;yA^25@6RIVt);#_qcB)O& zjV8|ZoaIEviGJW-rG&v9PJvq^2I11JtsYf z!cm1tk0fM5_+38$wzRn|*9*GcQBtAoJS#{aV&(AHrxu&kvtazw2xO8^e=J@;L zpBn$tfink8ylrmWY%+e9VX|J#GF88;O1P)BHq)M%bB$;Y46RJ@wsdCElR24uv8pO9 zySE2(xFygM2}fRkZpOH|eRD3Kb`CwW_UQ$=-kjWU5w>4lYRWW8V@*m?Sm!^MNghb8dz^l@HanzLojy(z^+Lew8sei_l-k+yJqGQv@d1tPqoYKokYD#N1rf(f3#s1L3>-Z_6{aG;iq!+(0^ z?Dm6i71&ZpG&qjboxxC#|HIBLAB(`^Nm=VFC#b18UMDrs1t(6)3$1Obb^jF{U>m(> zIWw-hxMkI>O3zc}r8?J9$ajy5&dW{qPd5(pNc?vJwVA1(C>_g!;=Ev%4uv^(O0*t3 zAA0t;9UXy>MIdHH%{|M`UvSR^{EnM$!pxfF6phIZZXRxKf&yKRh_qjIoA&nDt;QfO zwg$Jo>5sg3E8qYtK-V<))=H87N1xYD69RFgJJN8g>-U$^ZZW literal 0 HcmV?d00001 diff --git a/main/img/icons/32/session-add.png b/main/img/icons/32/session-add.png new file mode 100644 index 0000000000000000000000000000000000000000..4f35d8d6384b2ef68106ee9a1735f2a5633f07a3 GIT binary patch literal 1974 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 literal 0 HcmV?d00001 diff --git a/main/img/icons/48/session-add.png b/main/img/icons/48/session-add.png new file mode 100644 index 0000000000000000000000000000000000000000..9a751bd5fb196b40b9360586e1a3cd8b67763b15 GIT binary patch literal 3173 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 DZ>F-r literal 0 HcmV?d00001 diff --git a/main/img/icons/64/session-add.png b/main/img/icons/64/session-add.png new file mode 100644 index 0000000000000000000000000000000000000000..5465a68e75cd3925c2f705d500821a9aa1c1f6ba GIT binary patch literal 4261 zcmV;W5L)kvP)}>y2Kp=}i^^X+db>078PY2s+}f z;DXDb-hPcgOL}Nj}a!@7Ar`U)}Hbt##`H{Ehy)iDkG~3E(;a{{N%3{3WR! zz)Jwa*(R##Zg6klJ?`<2QUV1sF-W!vlr&(!cFaqjV|7w^$;^M7?U^<*qNf!y^f40h zzLc9ulpX*P9WvsY1pyZ8Xla6=(5^8pzer3h+i$#pz^OXcIj1LV}aOJ9-%=L!_o zPXH7mC1H-47EP8(X8|fBi0ODFyA*6KaqYAMDGaEbL+PglFwTg}bQaJH4c{{DT>SXP z3;Sjz_Gc!Wd&2CUpa>zs6%GdK7XT`^*5|s|gw`@Q4&Z0E&cI!lO#n*+W(prSATpVL z(ilO4K>_cN1ylkWXYpsJG5xF!s46Kyby*=!hoT^n8q{3*H~>Lr;ZuN+kd_5-1}zr= zT(dwJ&^Q1Ima?eynuq&103)8l((y^>7Ir_+68+;K5D_@%;OGYc0YHs0i!V~OG_%#BWY{xs>4mjqi%q%pei}oD?rvo)5-)FIcc%QMHgPOgom!5iUn6r!jOt$ z06=Fjf=qhF6#2?s?xq`G9;}|L}`F0nq}$>rwEVCvLVhFR}XL-H65vj2u#q+OsM#|MDr= zu%#Z0UtNo2D_{T=>PHOFEcX?*pj1_qkLk5Fh#3NpEZqPSJwB`{3IHG!jyWvAFnWsd z9S556==1Ml<;LBBB>es4v+;+Y%*Wi>by%@}Cth0dsYCk@-aZo-P8bO(3HLm)6pNO= z4}hR3zULbZ-0VC zOV=fY6NbPuFRa3K_bf!?(H1zegcURyW8k2^1E7#u2MAjXh{R$5fS4{)0#^I!2mm0@ zt2t6wG^T@y5Ddo<3`J6+{PJ}>0RZF9u7X{Qw_G^^X@jl{ z6a>81&Wt&CO5IrifcH1oN{x5CE`! zZS#zwC@JtGY?=C; zNoS+L>p@p{7?1=#X2386cuIOS+ih1&0sw5;(clnFQ_Y~--5o{xsxOl}m=-{Kb_;L? zfGNW+<)U#y!y`PXm0I9O?eR>xOF;iyJ{jrkr@7a*#?K8%_mM_+^A}d8 t++8d} z!n6R$>=xjfXk^%t1qjCIT{w!QJ<2*dM=uNEs zXnT?+NDM7j5cu+cAOwc)ji9mj7T{6`IN#Qg64BjWa-uOEyAB+OVF;)y!?#A&pkiPV zhzQ&EG~wwN)?nGnPf|3y=#}>||ME$ws~wDmkKTf7XHUTPy^YWm1v4g(!N{Q%0D#^5 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 + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/main/img/icons/svg/session-add.svg b/main/img/icons/svg/session-add.svg new file mode 100644 index 0000000000..2197ac829a --- /dev/null +++ b/main/img/icons/svg/session-add.svg @@ -0,0 +1,794 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/main/inc/lib/pear/HTML/QuickForm/select.php b/main/inc/lib/pear/HTML/QuickForm/select.php index 4a7c76a768..68a6af101f 100755 --- a/main/inc/lib/pear/HTML/QuickForm/select.php +++ b/main/inc/lib/pear/HTML/QuickForm/select.php @@ -550,7 +550,7 @@ class HTML_QuickForm_select extends HTML_QuickForm_element $this->setName($myName); } - $strHtml .= $tabs . '\n"; $strValues = is_array($this->_values)? array_map('strval', $this->_values): array(); diff --git a/main/inc/lib/template.lib.php b/main/inc/lib/template.lib.php index 93cd23884b..f71389e894 100755 --- a/main/inc/lib/template.lib.php +++ b/main/inc/lib/template.lib.php @@ -531,7 +531,7 @@ class Template foreach ($bowerCSSFiles as $file) { $css[] = api_get_path(WEB_PATH).'web/assets/'.$file; } - + $css[] = api_get_path(WEB_CSS_PATH) . 'bootstrap-select.css'; $css[] = api_get_path(WEB_LIBRARY_PATH) . 'javascript/chosen/chosen.css'; $css[] = api_get_path(WEB_LIBRARY_PATH) . 'javascript/tag/style.css'; @@ -674,7 +674,8 @@ class Template foreach ($bowerJsFiles as $file) { $js_file_to_string .= ''."\n"; } - + $js_file_to_string .= ''."\n"; + foreach ($js_files as $file) { $js_file_to_string .= api_get_js($file); } diff --git a/main/mySpace/course.php b/main/mySpace/course.php index ebb0e35100..92fa96a709 100755 --- a/main/mySpace/course.php +++ b/main/mySpace/course.php @@ -108,24 +108,27 @@ if (api_is_drh() || api_is_session_admin() || api_is_platform_admin()) { } } - echo '

'; + $actionsLeft = ''; $nb_menu_items = count($menu_items); if ($nb_menu_items > 1) { foreach ($menu_items as $key => $item) { - echo $item; + $actionsLeft .= $item; } } if (count($a_courses) > 0) { - echo ''; - echo Display::url( + + $actionsRight .= Display::url( Display::return_icon('printer.png', get_lang('Print'), array(), 32), 'javascript: void(0);', array('onclick'=>'javascript: window.print();') ); - echo ''; + } + + $toolbar = Display::toolbarAction('toolbar-course', $content = array( 0 => $actionsLeft, 1 => $actionsRight )); - echo '
'; + echo $toolbar; + echo Display::page_header($title); } diff --git a/main/mySpace/session.php b/main/mySpace/session.php index e39fb8ffbc..234505945c 100755 --- a/main/mySpace/session.php +++ b/main/mySpace/session.php @@ -60,27 +60,31 @@ if (api_is_drh() || api_is_session_admin() || api_is_platform_admin()) { ); } - echo '
'; + $actionsLeft = ''; $nb_menu_items = count($menu_items); if ($nb_menu_items > 1) { foreach ($menu_items as $key => $item) { - echo $item; + $actionsLeft .= $item; } } if (count($a_sessions) > 0) { - echo ''; - echo Display::url( + + $actionsRight = Display::url( Display::return_icon('printer.png', get_lang('Print'), array(), 32), 'javascript: void(0);', array('onclick'=>'javascript: window.print();') ); - echo Display::url( + $actionsRight .= Display::url( Display::return_icon('export_csv.png', get_lang('ExportAsCSV'), array(), 32), api_get_self().'?export=csv' ); - echo ''; + } - echo '
'; + + + $toolbar = Display::toolbarAction('toolbar-session', $content = array( 0 => $actionsLeft, 1 => $actionsRight )); + echo $toolbar; + echo Display::page_header(get_lang('YourSessionsList')); } else { diff --git a/main/tracking/exams.php b/main/tracking/exams.php index fa0f0cc394..910fe3cdee 100755 --- a/main/tracking/exams.php +++ b/main/tracking/exams.php @@ -81,25 +81,25 @@ $form->setDefaults(array('score' => $filter_score)); if (!$exportToXLS) { Display :: display_header(get_lang('Reporting')); - echo '
'; + + + $toolbar = Display::toolbarAction('toolbar-exams', $content = array( 0 => $actionsLeft, 1 => $actionsRight )); + echo $toolbar; $form->display(); echo '

'.sprintf(get_lang('FilteringWithScoreX'), $filter_score).'%

';
'; + $actionsLeft = ''; if ($global) { - echo ''. + $actionsLeft .= ''. Display::return_icon('stats.png', get_lang('MyStats'), '', ICON_SIZE_MEDIUM); - echo ''; + $actionsLeft .= ''; - echo ''; + $courseLink = ''; if (!empty(api_get_course_info())) { $courseLink = api_get_cidreq(); } - echo ''. + $actionsRight .= ''. Display::return_icon('export_excel.png',get_lang('ExportAsXLS'),'',ICON_SIZE_MEDIUM).''; - echo ''. + $actionsRight .= ''. Display::return_icon('printer.png',get_lang('Print'),'',ICON_SIZE_MEDIUM).''; - echo ''; + $menuItems[] = Display::url( Display::return_icon('teacher.png', get_lang('TeacherInterface'), array(), 32), @@ -116,34 +116,37 @@ if (!$exportToXLS) { api_get_path(WEB_CODE_PATH).'mySpace/index.php?view=coach' ); } - $menuItems[] = Display::return_icon('quiz_na.png', get_lang('ExamTracking'), array(), 32); + $menuItems[] = ''.Display::return_icon('quiz_na.png', get_lang('ExamTracking'), array(), 32).''; $nb_menu_items = count($menuItems); if ($nb_menu_items > 1) { foreach ($menuItems as $key=> $item) { - echo $item; + $actionsLeft .= $item; } } } else { - echo Display::url( + $actionsLeft .= Display::url( Display::return_icon('user.png', get_lang('StudentsTracking'), array(), 32), 'courseLog.php?'.api_get_cidreq().'&studentlist=true' ); - echo Display::url( + $actionsLeft .= Display::url( Display::return_icon('course.png', get_lang('CourseTracking'), array(), 32), 'courseLog.php?'.api_get_cidreq().'&studentlist=false' ); - echo Display::url( + $actionsLeft .= Display::url( Display::return_icon('tools.png', get_lang('ResourcesTracking'), array(), 32), 'courseLog.php?'.api_get_cidreq().'&studentlist=resouces' ); - echo Display::url( + $actionsLeft .= Display::url( Display::return_icon('export_excel.png', get_lang('ExportAsXLS'), array(), 32), api_get_self().'?'.api_get_cidreq().'&export=1&score='.$filter_score.'&exercise_id='.$exerciseId ); } - echo '