Merge pull request #832 from aragonc/bootstrap

Cambios Bootstrap 19 and For label
1.10.x
Yannick Warnier 10 years ago
commit 9da98dce02
  1. 100
      app/Resources/public/css/base.css
  2. 16
      app/Resources/public/css/frames.css
  3. 171
      app/Resources/public/css/themes/empire_green/default.css
  4. BIN
      app/Resources/public/css/themes/empire_green/images/header-logo.png
  5. 178
      app/Resources/public/css/themes/royal_purple/default.css
  6. BIN
      app/Resources/public/css/themes/royal_purple/images/header-logo.png
  7. 2
      main/admin/dashboard_add_courses_to_user.php
  8. 2
      main/admin/dashboard_add_sessions_to_user.php
  9. BIN
      main/img/icons/128/camera-webrtc.png
  10. 102
      main/img/icons/svg/camera-webrtc.svg
  11. 2
      main/inc/lib/api.lib.php
  12. 43
      main/inc/lib/course.lib.php
  13. 27
      main/inc/lib/display.lib.php
  14. 2
      main/inc/lib/formvalidator/Element/SelectAjax.php
  15. 4
      main/inc/lib/pear/HTML/QuickForm/Renderer/Default.php
  16. 12
      main/inc/lib/pear/HTML/QuickForm/advmultiselect.php
  17. 4
      main/inc/lib/pear/HTML/QuickForm/text.php
  18. 5
      main/inc/lib/template.lib.php
  19. 56
      main/session/add_courses_to_session.php
  20. 44
      main/session/add_users_to_session.php
  21. 4
      main/template/default/chat/video.tpl
  22. 96
      main/tracking/courseLog.php

@ -85,6 +85,9 @@ a.thumbnail:hover{
margin-top: 10px;
margin-bottom: 10px;
}
#formLogin label{
display: none;
}
#login_block #formLogin .form-group{
display: none;
}
@ -374,7 +377,7 @@ ul#navigation .report a {
}
.actions a{
text-decoration: none;
margin-right: 5px;
margin-right: 10px;
}
.actions a:hover{
text-decoration: none;
@ -412,6 +415,17 @@ ul#navigation .report a {
.actions fieldset {
margin-top:0px;
}
.separate-action{
padding-top: 10px;
padding-bottom: 10px;
}
.control-course{
padding-top: 10px;
padding-bottom: 10px;
}
.select-list-ajax{
padding: 10px;
}
/*****************************************************
* AGENDA *
*****************************************************/
@ -3445,82 +3459,6 @@ div#no-data-view div.controls {
padding-top: 1px;
}
/* styles for the star rater
.star-rating{
list-style:none;
margin: 0px;
padding:0px;
width: 125px;
height: 25px;
position: relative;
overflow:hidden;
background: url(../../main/img/alt_star.png) top left repeat-x;
}
.star-rating li{
padding:0px;
margin:0px;
width:25px;
height:25px;
float: left;
}
.star-rating li a{
display:block;
width:25px;
height: 25px;
line-height:25px;
text-decoration: none;
text-indent: -9000px;
z-index: 20;
position: absolute;
padding: 0px;
overflow:hidden;
}
.star-rating li a:hover{
background: url(../../main/img/alt_star.png) left bottom;
z-index: 2;
left: 0px;
border:none;
}
.star-rating a.one-star{
left: 0px;
}
.star-rating a.one-star:hover{
width:25px;
}
.star-rating a.two-stars{
left:25px;
}
.star-rating a.two-stars:hover{
width: 50px;
}
.star-rating a.three-stars{
left: 50px;
}
.star-rating a.three-stars:hover{
width: 75px;
}
.star-rating a.four-stars{
left: 75px;
}
.star-rating a.four-stars:hover{
width: 100px;
}
.star-rating a.five-stars{
left: 100px;
}
.star-rating a.five-stars:hover{
width: 125px;
}
.star-rating li.current-rating{
background: url(../../main/img/alt_star.png) left center;
position: absolute;
height: 25px;
display: block;
text-indent: -9000px;
z-index: 1;
}
remove halo effect in firefox */
/* styles for the star rater */
.star-rating{
list-style:none;
@ -6308,6 +6246,14 @@ a.sessionView {
font-size: 20px;
border-bottom: 1px solid #E5E5E5;
}
#chat-video-panel #chat-remote-video.user-video{
background: url(../../main/img/icons/128/camera-webrtc.png) no-repeat center center #ECF0F1;
min-height: 560px;
}
#chat-video-panel #chat-local-video.user-video{
background: url(../../main/img/icons/128/camera-webrtc.png) no-repeat center center #ECF0F1;
min-height: 250px;
}
#listFriends .list-group-item{
border: none;
padding: 6px;

@ -12,7 +12,6 @@ body{
font-family: 'Open Sans', sans-serif;
padding: 20px;
line-height: 30px;
background: #E8F5FC;
}
a{
text-decoration: none;
@ -21,21 +20,6 @@ a{
a:hover{
text-decoration: underline;
}
h1{
border-radius: 5px;
border: 1px solid #ccc;
padding-top: 10px;
padding-bottom: 10px;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,e5e5e5+100;White+3D */
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 */
}
img{
border: 1px solid #ccc;
border-radius: 5px;

@ -0,0 +1,171 @@
/*!
* CSS Empire Green - v. 2.0
* 2015 - Alex Aragón (aragonc@beeznest.com)
* Licensed GPL
* Based on Bootstrap
*/
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 300;
src: local('Open Sans Light'), local('OpenSans-Light'), url(../chamilo/fonts/OpenSans-Light.woff2) format('woff2'), url(../chamilo/fonts/OpenSans-Light.woff) format('woff');
}
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
src: local('Open Sans'), local('OpenSans'), url(../chamilo/fonts/OpenSans.woff2) format('woff2'), url(../chamilo/fonts/OpenSans.woff) format('woff');
}
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 600;
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(../chamilo/fonts/OpenSans-Semibold.woff2) format('woff2'), url(../chamilo/fonts/OpenSans-Semibold.woff) format('woff');
}
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 700;
src: local('Open Sans Bold'), local('OpenSans-Bold'), url(../chamilo/fonts/OpenSans-Bold.woff2) format('woff2'), url(../chamilo/fonts/OpenSans-Bold.woff) format('woff');
}
html {
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
body {
margin: 0;
font-family: 'Open Sans', sans-serif;
line-height: 1.72222;
}
a{
color: #666666;
}
a:hover{
color: #7FA638;
text-decoration: none;
}
.navbar-default {
background: #c4d82e; /* Old browsers */
background: -moz-linear-gradient(top, #c4d82e 0%, #5b8b3e 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#c4d82e), color-stop(100%,#5b8b3e)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #c4d82e 0%,#5b8b3e 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #c4d82e 0%,#5b8b3e 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #c4d82e 0%,#5b8b3e 100%); /* IE10+ */
background: linear-gradient(to bottom, #c4d82e 0%,#5b8b3e 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c4d82e', endColorstr='#5b8b3e',GradientType=0 ); /* IE6-9 */
border-bottom: 2px solid #BFD42E;
}
.navbar-default .navbar-brand {
color: #ffffff;
}
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
color: #ededed;
}
.navbar-default .navbar-text {
color: #ffffff;
}
.navbar-default .navbar-nav > li > a {
color: #ffffff;
}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
color: #FFFFFF;
background: #7b8392; /* Old browsers */
background: -moz-linear-gradient(top, #7b8392 0%, #4b5363 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#7b8392), color-stop(100%,#4b5363)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #7b8392 0%,#4b5363 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #7b8392 0%,#4b5363 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #7b8392 0%,#4b5363 100%); /* IE10+ */
background: linear-gradient(to bottom, #7b8392 0%,#4b5363 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7b8392', endColorstr='#4b5363',GradientType=0 ); /* IE6-9 */
}
.navbar-default .navbar-nav > li > .dropdown-menu {
background-color: #A5C132;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > a {
color: #ffffff;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > a:hover,
.navbar-default .navbar-nav > li > .dropdown-menu > li > a:focus {
color: #ededed;
background-color: #374955;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > .divider {
background-color: #0099c0;
}
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
color: #FFFFFF;
background: #7b8392; /* Old browsers */
background: -moz-linear-gradient(top, #7b8392 0%, #4b5363 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#7b8392), color-stop(100%,#4b5363)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #7b8392 0%,#4b5363 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #7b8392 0%,#4b5363 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #7b8392 0%,#4b5363 100%); /* IE10+ */
background: linear-gradient(to bottom, #7b8392 0%,#4b5363 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7b8392', endColorstr='#4b5363',GradientType=0 ); /* IE6-9 */
}
.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
color: #FFFFFF;
background: #7b8392; /* Old browsers */
background: -moz-linear-gradient(top, #7b8392 0%, #4b5363 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#7b8392), color-stop(100%,#4b5363)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #7b8392 0%,#4b5363 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #7b8392 0%,#4b5363 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #7b8392 0%,#4b5363 100%); /* IE10+ */
background: linear-gradient(to bottom, #7b8392 0%,#4b5363 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7b8392', endColorstr='#4b5363',GradientType=0 ); /* IE6-9 */
}
.navbar-default .navbar-toggle {
border-color: #0099c0;
}
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
background-color: #0099c0;
}
.navbar-default .navbar-toggle .icon-bar {
background-color: #ffffff;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
border-color: #ffffff;
}
.navbar-default .navbar-link {
color: #ffffff;
}
.navbar-default .navbar-link:hover {
color: #ededed;
}
@media (max-width: 767px) {
.navbar-default .navbar-nav .open .dropdown-menu > li > a {
color: #ffffff;
}
.navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
color: #ededed;
}
.navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
color: #ededed;
background-color: #0099c0;
}
}
.breadcrumb{
background: #F9F9F9;
color: #006A84;
}
.nav li a:hover{
background: transparent;
}
.panel-default .panel-heading{
background-color: #F9F9F9;
}
footer{
background: #444444;
color: #9DD0F1;
border-top: 4px solid #C2DF44;
}
footer a{
color: #ffffff;
}
footer a:hover{
color: #CCC;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

@ -0,0 +1,178 @@
/*!
* CSS Royal Purple - v. 2.0
* 2015 - Alex Aragón (aragonc@beeznest.com)
* Licensed GPL
* Based on Bootstrap
*/
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 300;
src: local('Open Sans Light'), local('OpenSans-Light'), url(../chamilo/fonts/OpenSans-Light.woff2) format('woff2'), url(../chamilo/fonts/OpenSans-Light.woff) format('woff');
}
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
src: local('Open Sans'), local('OpenSans'), url(../chamilo/fonts/OpenSans.woff2) format('woff2'), url(../chamilo/fonts/OpenSans.woff) format('woff');
}
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 600;
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(../chamilo/fonts/OpenSans-Semibold.woff2) format('woff2'), url(../chamilo/fonts/OpenSans-Semibold.woff) format('woff');
}
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 700;
src: local('Open Sans Bold'), local('OpenSans-Bold'), url(../chamilo/fonts/OpenSans-Bold.woff2) format('woff2'), url(../chamilo/fonts/OpenSans-Bold.woff) format('woff');
}
html {
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
body {
margin: 0;
font-family: 'Open Sans', sans-serif;
line-height: 1.72222;
}
a{
color: #666666;
}
a:hover{
color: #62366F;
text-decoration: none;
}
.navbar-default {
background: #663872; /* Old browsers */
background: -moz-linear-gradient(top, #663872 0%, #36254f 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#663872), color-stop(100%,#36254f)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #663872 0%,#36254f 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #663872 0%,#36254f 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #663872 0%,#36254f 100%); /* IE10+ */
background: linear-gradient(to bottom, #663872 0%,#36254f 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#663872', endColorstr='#36254f',GradientType=0 ); /* IE6-9 */
border-bottom: 2px solid #FE7400;
}
.navbar-default .navbar-brand {
color: #ffffff;
}
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
color: #ededed;
}
.navbar-default .navbar-text {
color: #ffffff;
}
.navbar-default .navbar-nav > li > a {
color: #ffffff;
}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
color: #FFFFFF;
background: #f7a400; /* Old browsers */
background: -moz-linear-gradient(top, #f7a400 0%, #ff7400 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7a400), color-stop(100%,#ff7400)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #f7a400 0%,#ff7400 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #f7a400 0%,#ff7400 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #f7a400 0%,#ff7400 100%); /* IE10+ */
background: linear-gradient(to bottom, #f7a400 0%,#ff7400 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7a400', endColorstr='#ff7400',GradientType=0 ); /* IE6-9 */
}
.navbar-default .navbar-nav > li > .dropdown-menu {
background-color: #FB8B00;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > a {
color: #ffffff;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > a:hover,
.navbar-default .navbar-nav > li > .dropdown-menu > li > a:focus {
color: #ededed;
background-color: #5B336A;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > .divider {
background-color: #0099c0;
}
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
color: #FFFFFF;
background: #f7a400; /* Old browsers */
background: -moz-linear-gradient(top, #f7a400 0%, #ff7400 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7a400), color-stop(100%,#ff7400)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #f7a400 0%,#ff7400 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #f7a400 0%,#ff7400 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #f7a400 0%,#ff7400 100%); /* IE10+ */
background: linear-gradient(to bottom, #f7a400 0%,#ff7400 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7a400', endColorstr='#ff7400',GradientType=0 ); /* IE6-9 */
}
.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
color: #FFFFFF;
background: #f7a400; /* Old browsers */
background: -moz-linear-gradient(top, #f7a400 0%, #ff7400 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7a400), color-stop(100%,#ff7400)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #f7a400 0%,#ff7400 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #f7a400 0%,#ff7400 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #f7a400 0%,#ff7400 100%); /* IE10+ */
background: linear-gradient(to bottom, #f7a400 0%,#ff7400 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7a400', endColorstr='#ff7400',GradientType=0 ); /* IE6-9 */
}
.navbar-default .navbar-toggle {
border-color: #0099c0;
}
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
background-color: #0099c0;
}
.navbar-default .navbar-toggle .icon-bar {
background-color: #ffffff;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
border-color: #ffffff;
}
.navbar-default .navbar-link {
color: #ffffff;
}
.navbar-default .navbar-link:hover {
color: #ededed;
}
@media (max-width: 767px) {
.navbar-default .navbar-nav .open .dropdown-menu > li > a {
color: #ffffff;
}
.navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
color: #ededed;
}
.navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
color: #ededed;
background-color: #0099c0;
}
}
.breadcrumb{
background: #F9F9F9;
color: #006A84;
}
.nav li a:hover{
background: transparent;
}
.panel-default .panel-heading{
background-color: #F9F9F9;
}
footer{
background: #663872; /* Old browsers */
background: -moz-linear-gradient(top, #663872 0%, #36254f 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#663872), color-stop(100%,#36254f)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #663872 0%,#36254f 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #663872 0%,#36254f 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #663872 0%,#36254f 100%); /* IE10+ */
background: linear-gradient(to bottom, #663872 0%,#36254f 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#663872', endColorstr='#36254f',GradientType=0 ); /* IE6-9 */
color: #FFFFFF;
border-top: 4px solid #FE7400;
}
footer a{
color: #F79F00;
}
footer a:hover{
color: #CCC;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

@ -90,7 +90,7 @@ function search_courses($needle, $type)
$rs = Database::query($sql);
$return .= '<select id="origin" name="NoAssignedCoursesList[]" multiple="multiple" size="20" style="width:340px;">';
$return .= '<select id="origin" name="NoAssignedCoursesList[]" multiple="multiple" size="20" >';
while($course = Database :: fetch_array($rs)) {
$return .= '<option value="'.$course['code'].'" title="'.htmlspecialchars($course['title'],ENT_QUOTES).'">'.$course['title'].' ('.$course['code'].')</option>';
}

@ -79,7 +79,7 @@ function search_sessions($needle, $type)
WHERE s.name LIKE '$needle%' $without_assigned_sessions ";
}
$rs = Database::query($sql);
$return .= '<select id="origin" name="NoAssignedSessionsList[]" multiple="multiple" size="20" style="width:340px;">';
$return .= '<select class="form-control" id="origin" name="NoAssignedSessionsList[]" multiple="multiple" size="20">';
while($session = Database :: fetch_array($rs)) {
$return .= '<option value="'.$session['id'].'" title="'.htmlspecialchars($session['name'],ENT_QUOTES).'">'.$session['name'].'</option>';
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="128"
height="128"
viewBox="0 0 128 128"
id="svg2"
version="1.1"
inkscape:version="0.91 r"
sodipodi:docname="camera-webrtc.svg">
<defs
id="defs4" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="3.34"
inkscape:cx="71.277375"
inkscape:cy="46.929983"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
units="px"
inkscape:window-width="1920"
inkscape:window-height="1051"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1" />
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Capa 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-924.36219)">
<g
id="g4234"
transform="translate(-112.20557,63.089168)"
inkscape:export-filename="/var/www/chamilo/main/img/icons/128/camera-webrtc.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<rect
id="rect4194"
width="128"
height="128"
x="112.12727"
y="860.96838"
style="opacity:0;fill:#ececec" />
<path
style="fill:#cccccc;fill-opacity:1"
id="path4196"
d="m 188.75575,957.04006 c -0.37376,-4.12672 -0.2304,-7.00672 -0.2304,-10.7776 1.8688,-0.98048 5.21728,-7.232 5.78304,-12.51328 1.46944,-0.12032 3.78624,-1.55392 4.46464,-7.21408 0.36608,-3.03872 -1.088,-4.7488 -1.97376,-5.2864 2.39104,-7.19104 7.35744,-29.43744 -9.18528,-31.73632 -1.7024,-2.99008 -6.06208,-4.50304 -11.72736,-4.50304 -22.66624,0.41728 -25.40032,17.11616 -20.43136,36.23936 -0.8832,0.5376 -2.33728,2.24768 -1.97376,5.2864 0.68096,5.66016 2.9952,7.09376 4.46464,7.21408 0.5632,5.27872 4.0448,11.5328 5.91872,12.51328 0,3.77088 0.1408,6.65088 -0.23296,10.7776 -4.48512,12.0576 -34.74688,8.67328 -36.14464,31.92832 l 97.28,0 c -1.3952,-23.25504 -31.5264,-19.87072 -36.01152,-31.92832 z"
inkscape:connector-curvature="0" />
<g
id="g4228">
<path
id="path4184"
d="m 223.12796,888.0134 0,0.0104 -3.44217,-3.44154 0,2.18122 c 0,0.69079 -0.56015,1.25032 -1.25033,1.25032 l -0.93775,0 -6.56425,0 -0.62517,0 c -0.6902,0 -1.25033,-0.55953 -1.25033,-1.25032 l 0,-0.62518 0,0 0,-7.502 0,0 0,-0.62517 c 0,-0.69017 0.56013,-1.24969 1.25033,-1.24969 l 0.62517,0 0,0 6.56425,0 0,0 0.93775,0 c 0.69018,0 1.25033,0.55952 1.25033,1.24969 l 0,2.19808 3.43842,-3.43841 0,-0.009 c 0.51764,0 0.93775,0.41949 0.93775,0.93713 l 0,9.3775 c 0,0.51701 -0.41824,0.93525 -0.934,0.93775 z"
inkscape:connector-curvature="0"
style="clip-rule:evenodd;fill:#cccccc;fill-rule:evenodd" />
<g
id="g4224"
transform="matrix(-0.48974003,-0.20580269,-0.20580269,0.48974003,542.75157,492.20674)">
<rect
transform="matrix(0.53765091,0.84316754,-0.84316754,0.53765091,0,0)"
y="229.60669"
x="920.55743"
height="49.963234"
width="4.6575894"
id="rect4222"
style="opacity:1;fill:#cccccc;fill-opacity:1;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path4216"
d="m 281.52904,889.4287 a 25.598803,25.598803 0 0 0 -25.59766,25.59766 25.598803,25.598803 0 0 0 25.59766,25.59961 25.598803,25.598803 0 0 0 25.59961,-25.59961 25.598803,25.598803 0 0 0 -25.59961,-25.59766 z m 0,4 a 21.598803,21.598803 0 0 1 21.59961,21.59766 21.598803,21.598803 0 0 1 -21.59961,21.59961 21.598803,21.598803 0 0 1 -21.59766,-21.59961 21.598803,21.598803 0 0 1 21.59766,-21.59766 z"
style="opacity:1;fill:#cccccc;fill-opacity:1;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.8 KiB

@ -4209,7 +4209,7 @@ function api_display_language_form($hide_if_no_choice = false)
</script>';
$html .= '<form id="lang_form" name="lang_form" method="post" action="'.api_get_self().'">';
$html .= '<label style="display: none;" for="language_list">' . get_lang('Language') . '</label>';
$html .= '<select id="language_list" class="chzn-select" name="language_list" onchange="javascript: jumpMenu(\'parent\',this,0);">';
$html .= '<select id="language_list" class="selectpicker show-tick form-control" name="language_list" onchange="javascript: jumpMenu(\'parent\',this,0);">';
foreach ($original_languages as $key => $value) {
if ($folder[$key] == $user_selected_language) {

@ -1828,11 +1828,12 @@ class CourseManager
public static function get_teacher_list_from_course_code_to_string(
$course_code,
$separator = self::USER_SEPARATOR,
$add_link_to_profile = false
) {
$add_link_to_profile = false,
$orderList = false
) {
$teacher_list = self::get_teacher_list_from_course_code($course_code);
$teacher_string = '';
$html = '';
$list = array();
if (!empty($teacher_list)) {
foreach ($teacher_list as $teacher) {
@ -1853,11 +1854,21 @@ class CourseManager
}
$list[] = $teacher_name;
}
if (!empty($list)) {
$teacher_string = array_to_string($list, $separator);
if ($orderList === true){
$html .= '<ul class="user-teacher">';
foreach ($list as $teacher){
$html .= Display::tag('li', Display::return_icon('teacher.png', $teacher, null, ICON_SIZE_TINY) . ' ' . $teacher);
}
$html .= '</ul>';
}else{
$html .= array_to_string($list, $separator);
}
}
}
return $teacher_string;
return $html;
}
/**
@ -1919,11 +1930,12 @@ class CourseManager
$session_id = 0,
$courseId = null,
$separator = self::USER_SEPARATOR,
$add_link_to_profile = false
$add_link_to_profile = false,
$orderList = false
) {
$coachs_course = self::get_coachs_from_course($session_id, $courseId);
$course_coachs = array();
$html = '';
if (is_array($coachs_course)) {
foreach ($coachs_course as $coach_course) {
$coach_name = api_get_person_name($coach_course['firstname'], $coach_course['lastname']);
@ -1942,10 +1954,21 @@ class CourseManager
}
}
$coaches_to_string = null;
if (is_array($course_coachs) && count($course_coachs) > 0) {
$coaches_to_string = array_to_string($course_coachs, $separator);
if (!empty($course_coachs)) {
if ($orderList === true){
$html .= '<ul class="user-coachs">';
foreach ($course_coachs as $coachs){
$html .= Display::tag('li', Display::return_icon('teacher.png', $coachs, null, ICON_SIZE_TINY) . ' ' . $coachs);
}
$html .= '</ul>';
} else {
$coaches_to_string = array_to_string($course_coachs, $separator);
}
}
return $coaches_to_string;
return $html;
}
/**

@ -2208,5 +2208,32 @@ class Display
return "$icon ";
}
public static function panelCollapse($title, $content, $id = null, $params = null, $idAccordion = null, $idCollpase = null)
{
if (!empty($idAccordion)) {
$html = null;
$html .= '<div class="panel-group" id="'.$idAccordion.'" role="tablist" aria-multiselectable="true">' . PHP_EOL;
$html .= '<div class="panel panel-default" id="'.$id.'">' . PHP_EOL;
$html .= '<div class="panel-heading" role="tab"><h4 class="panel-title">' . PHP_EOL;
$html .= '<a role="button" data-toggle="collapse" data-parent="#'.$idAccordion.'" href="#'.$idCollpase.'" aria-expanded="true" aria-controls="'.$idCollpase.'">'.$title.'</a>' . PHP_EOL;
$html .= '</h4></div>' . PHP_EOL;
$html .= '<div id="'.$idCollpase.'" class="panel-collapse collapse in" role="tabpanel">' . PHP_EOL;
$html .= '<div class="panel-body">'.$content.'</div>' . PHP_EOL;
$html .= '</div></div></div>' . PHP_EOL;
} else {
if (!empty($id)) {
$params['id'] = $id;
}
$params['class'] = 'panel panel-default';
$html = null;
if (!empty($title)) {
$html .= '<div class="panel-heading">'.$title.'</div>' . PHP_EOL;
}
$html.= '<div class="panel-body">'.$content.'</div>' . PHP_EOL;
$html = Display::div($html, $params);
}
return $html;
}
}

@ -46,7 +46,7 @@ class SelectAjax extends HTML_QuickForm_select
$defaultValues = empty($defaultValues) ? [] : $defaultValues;
$width = 'element';
$givenWidth = '300';
$givenWidth = '100%';
if (!empty($givenWidth)) {
$width = $givenWidth;
}

@ -280,7 +280,7 @@ class HTML_QuickForm_Renderer_Default extends HTML_QuickForm_Renderer
{
$name = $element->getName();
$label = $element->getLabel();
$labelForId = $element->getLabelFor();
$labelForId = $element->getAttribute('id');
$icon = $element->getIconToHtml();
if (is_array($label)) {
@ -289,7 +289,7 @@ class HTML_QuickForm_Renderer_Default extends HTML_QuickForm_Renderer
$nameLabel = $label;
}
$labelFor = !empty($labelForId) ? 'for="' . $labelForId . '"' : '';
$labelFor = !empty($labelForId) ? 'for="' . $labelForId . '"' : 'for="' . $element->getName() . '"';
if (isset($this->_templates[$name])) {
// Custom template

@ -296,18 +296,18 @@ class HTML_QuickForm_advmultiselect extends HTML_QuickForm_select
// default size is ten item on each select box (left and right)
$this->updateAttributes(array('size' => 10));
}
if (is_null($this->getAttribute('style'))) {
if (is_null($this->getAttribute('class'))) {
// default width of each select box
$this->updateAttributes(array('style' => 'min-width:180px;'));
$this->updateAttributes(array('class' => 'form-control'));
}
$this->_tableAttributes = $this->getAttribute('class');
/* $this->_tableAttributes = $this->getAttribute('class');
$attr = null;
if (is_null($this->_tableAttributes)) {
$this->updateAttributes(array('class' => 'col-md-4'));
} else {
$attr = array('class' => $this->_tableAttributes);
$this->_removeAttr('class', $this->_attributes);
}
}*/
$this->_tableAttributes = $this->_getAttrString($attr);
@ -798,7 +798,7 @@ class HTML_QuickForm_advmultiselect extends HTML_QuickForm_select
}
$strHtmlUnselected .= '</select>';
$strHtmlUnselected = '<input placeholder="'.get_lang('Search').'" id="'.$selectId.'-f-filter" type="text" class="search-query select_class_filter"><br /><br />'.$strHtmlUnselected;
$strHtmlUnselected = '<input placeholder="'.get_lang('Search').'" id="'.$selectId.'-f-filter" type="text" class="form-control search-query select_class_filter"><br />'.$strHtmlUnselected;
// The 'selected' multi-select which appears on the right
$selected_count = count($arrHtmlSelected);
@ -830,7 +830,7 @@ class HTML_QuickForm_advmultiselect extends HTML_QuickForm_select
}
$strHtmlSelected .= '</select>';
$strHtmlSelected = '<input placeholder="'.get_lang('Search').'" id="'.$selectId.'-t-filter" type="text" class="search-query select_class_filter"><br /><br />'.$strHtmlSelected;
$strHtmlSelected = '<input placeholder="'.get_lang('Search').'" id="'.$selectId.'-t-filter" type="text" class="form-control search-query select_class_filter"><br />'.$strHtmlSelected;
// The 'hidden' multi-select
$strHtmlHidden = "<select$attrHidden>". PHP_EOL;

@ -164,7 +164,9 @@ class HTML_QuickForm_text extends HTML_QuickForm_input
break;
case FormValidator::LAYOUT_BOX_NO_LABEL:
return '
<label {label-for}>{label}</label>
<div class="input-group">
{icon}
{element}
</div>';
@ -236,7 +238,7 @@ class HTML_QuickForm_text extends HTML_QuickForm_input
if ($this->_flagFrozen) {
return $this->getFrozenHtml();
} else {
return '<input' . $this->_getAttrString($this->_attributes) . ' />';
return '<input ' . $this->_getAttrString($this->_attributes) . ' />';
}
}
}

@ -1217,14 +1217,13 @@ class Template
'login',
get_lang('UserName'),
true,
array('id' => 'login', 'autofocus' => 'autofocus', 'icon' => 'user')
);
array('id' => 'login', 'autofocus' => 'autofocus', 'icon' => 'user fa-fw', 'placeholder' => get_lang('UserName')));
$form->addElement(
'password',
'password',
get_lang('Pass'),
array('id' => 'password', 'icon' => 'lock')
array('id' => 'password', 'icon' => 'lock fa-fw', 'placeholder' => get_lang('Pass'))
);
// Captcha

@ -216,7 +216,7 @@ unset($Courses);
}
?>
<div id="multiple-add-session" class="row">
<div class="col-md-5">
<div class="col-md-4">
<label><?php echo get_lang('CourseListInPlatform') ?> :</label>
<?php
if (!($add_type == 'multiple')) {
@ -240,12 +240,12 @@ unset($Courses);
unset($nosessionCourses);
?>
</div>
<div class="col-md-2">
<div class="col-md-4">
<?php if($add_type == 'multiple') { ?>
<div class="code-course">
<?php echo get_lang('FirstLetterCourse'); ?> :
<br /><br />
<select name="firstLetterCourse" onchange = "xajax_search_courses(this.value,'multiple')" class="form-control">
<select name="firstLetterCourse" onchange = "xajax_search_courses(this.value,'multiple')" class="selectpicker show-tick form-control">
<option value="%">--</option>
<?php
echo Display :: get_alphabet_options();
@ -255,46 +255,52 @@ unset($Courses);
</div>
<?php } ?>
<div class="control-course">
<br /><br />
<?php
if ($ajax_search) {
?>
<button class="btn btn-primary" type="button" onclick="remove_item(document.getElementById('destination'))">
<i class="fa fa-chevron-left"></i>
</button>
<br /><br />
<div class="separate-action">
<button class="btn btn-primary" type="button" onclick="remove_item(document.getElementById('destination'))">
<i class="fa fa-chevron-left"></i>
</button>
</div>
<?php
} else {
?>
<button class="btn btn-primary" type="button" onclick="moveItem(document.getElementById('origin'), document.getElementById('destination'))" onclick="moveItem(document.getElementById('origin'), document.getElementById('destination'))">
<i class="fa fa-chevron-right"></i>
</button>
<br /><br />
<button class="btn btn-primary" type="button" onclick="moveItem(document.getElementById('destination'), document.getElementById('origin'))" onclick="moveItem(document.getElementById('destination'), document.getElementById('origin'))">
<i class="fa fa-chevron-left"></i>
</button>
<br /><br />
<div class="separate-action">
<button class="btn btn-primary" type="button" onclick="moveItem(document.getElementById('origin'), document.getElementById('destination'))" onclick="moveItem(document.getElementById('origin'), document.getElementById('destination'))">
<i class="fa fa-chevron-right"></i>
</button>
</div>
<div class="separate-action">
<button class="btn btn-primary" type="button" onclick="moveItem(document.getElementById('destination'), document.getElementById('origin'))" onclick="moveItem(document.getElementById('destination'), document.getElementById('origin'))">
<i class="fa fa-chevron-left"></i>
</button>
</div>
<?php
}
?>
<br />
<label>
<input type="checkbox" name="copy_evaluation">
<?php echo get_lang('ImportGradebookInCourse'); ?>
</label>
<br />
<div class="separate-action">
<label>
<input type="checkbox" name="copy_evaluation">
<?php echo get_lang('ImportGradebookInCourse'); ?>
</label>
</div>
<?php
echo '<div class="separate-action">';
if (isset($_GET['add'])) {
echo '<button class="btn btn-success" type="button" value="" onclick="valide()" >'.get_lang('NextStep').'</button>';
} else {
echo '<button class="btn btn-success" type="button" value="" onclick="valide()" >'.get_lang('SubscribeCoursesToSession').'</button>';
}
echo '</div>';
?>
</div>
</div>
<div class="col-md-5">
<div class="col-md-4">
<label><?php echo get_lang('CourseListInSession') ?> :</label>
<select id='destination' name="SessionCoursesList[]" multiple="multiple" size="20" class="form-control">

@ -539,9 +539,11 @@ $link_add_group = Display::url(
);
$newLinks = Display::url(
Display::return_icon('teacher.png', get_lang('EnrollTrainersFromExistingSessions'), null, ICON_SIZE_TINY).
get_lang('EnrollTrainersFromExistingSessions'), api_get_path(WEB_CODE_PATH).'session/add_teachers_to_session.php?id='.$id_session
);
$newLinks .= Display::url(
Display::return_icon('user.png', get_lang('EnrollTrainersFromExistingSessions'), null, ICON_SIZE_TINY).
get_lang('EnrollStudentsFromExistingSessions'), api_get_path(WEB_CODE_PATH).'session/add_students_to_session.php?id='.$id_session
);
?>
@ -553,7 +555,7 @@ $newLinks .= Display::url(
echo $newLinks;
?>
</div>
<form name="formulaire" method="post" action="<?php echo api_get_self(); ?>?page=<?php echo $page; ?>&id_session=<?php echo $id_session; ?><?php if(!empty($addProcess)) echo '&add=true' ; ?>" style="margin:0px;" <?php if ($ajax_search) { echo ' onsubmit="valide();"';}?>>
<form name="formulaire" method="post" action="<?php echo api_get_self(); ?>?page=<?php echo $page; ?>&id_session=<?php echo $id_session; ?><?php if(!empty($addProcess)) echo '&add=true' ; ?>" <?php if ($ajax_search) { echo ' onsubmit="valide();"';}?>>
<?php echo '<legend>'.$tool_name.' ('.$session_info['name'].') </legend>'; ?>
<?php
if ($add_type=='multiple') {
@ -592,16 +594,14 @@ if (!empty($errorMsg)) {
}
?>
<div id="multiple-add-session" class="row">
<div class="col-md-5">
<div class="multiple_select_header">
<label><?php echo get_lang('UserListInPlatform') ?> :</label>
</div>
<div id="content_source">
<div class="col-md-4">
<div class="form-group">
<label><?php echo get_lang('UserListInPlatform') ?> </label>
<?php
if (!($add_type=='multiple')) {
?>
<input type="text" id="user_to_add" onkeyup="xajax_search_users(this.value,'single')" class="form-control" />
<div id="ajax_list_users_single"></div>
<div id="ajax_list_users_single" class="select-list-ajax"></div>
<?php
} else {
?>
@ -634,7 +634,7 @@ if (!empty($errorMsg)) {
</div>
</div>
<div class="col-md-3">
<div class="col-md-4">
<?php if ($add_type=='multiple') { ?>
<?php echo get_lang('FirstLetterUser'); ?> :
@ -651,33 +651,35 @@ if (!empty($errorMsg)) {
<?php
if ($ajax_search) {
?>
<button class="btn btn-primary" type="button" onclick="remove_item(document.getElementById('destination_users'))" >
<div class="separate-action">
<button class="btn btn-primary" type="button" onclick="remove_item(document.getElementById('destination_users'))" >
<i class="fa fa-chevron-left"></i>
</button>
</button>
</div>
<?php
} else {
?>
<div class="separate-action">
<button class="btn btn-primary" type="button" onclick="moveItem(document.getElementById('origin_users'), document.getElementById('destination_users'))" onclick="moveItem(document.getElementById('origin_users'), document.getElementById('destination_users'))">
<i class="fa fa-chevron-right"></i>
</button>
<br />
<br />
</div>
<div class="separate-action">
<button class="btn btn-primary" type="button" onclick="moveItem(document.getElementById('destination_users'), document.getElementById('origin_users'))" onclick="moveItem(document.getElementById('destination_users'), document.getElementById('origin_users'))">
<i class="fa fa-chevron-left"></i>
</button>
</div>
<?php
}
if (!empty($addProcess)) {
echo '<button class="btn btn-success" type="button" value="" onclick="valide()" >'.get_lang('FinishSessionCreation').'</button>';
} else {
echo '<button class="btn btn-success" type="button" value="" onclick="valide()" >'.get_lang('SubscribeUsersToSession').'</button>';
}
?>
</div>
<br />
<br />
<?php
if (!empty($addProcess)) {
echo '<button class="btn btn-success" type="button" value="" onclick="valide()" >'.get_lang('FinishSessionCreation').'</button>';
} else {
echo '<button class="btn btn-success" type="button" value="" onclick="valide()" >'.get_lang('SubscribeUsersToSession').'</button>';
}
?>
</div>
<div class="col-md-4">

@ -1,7 +1,7 @@
<div id="chat-video-panel">
<div class="row">
<div class="col-md-4">
<div id="chat-local-video"></div>
<div class="user-video" id="chat-local-video"></div>
<div class="username-local">
{% if user_local.user_is_online_in_chat == 1 %}
<img src="{{ 'online.png' | icon(16) }}" />
@ -31,7 +31,7 @@
</div>
</div>
<div class="col-md-8">
<div class="user-from" id="chat-remote-video"></div>
<div class="user-video" id="chat-remote-video"></div>
<div class="chat-user-remote">{{ "ChatWithXUser"|get_lang|format(chat_user.complete_name) }}</div>
</div>
</div>

@ -216,36 +216,34 @@ Display::display_header($nameTools, 'Tracking');
/* MAIN CODE */
echo '<div class="actions">';
echo Display::return_icon('user_na.png', get_lang('StudentsTracking'), array(), ICON_SIZE_MEDIUM);
echo Display::url(
$actionsLeft = Display::return_icon('user_na.png', get_lang('StudentsTracking'), array(), ICON_SIZE_MEDIUM);
$actionsLeft .= Display::url(
Display::return_icon('group.png', get_lang('GroupReporting'), array(), ICON_SIZE_MEDIUM),
'course_log_groups.php?'.api_get_cidreq()
);
echo Display::url(
$actionsLeft .= Display::url(
Display::return_icon('course.png', get_lang('CourseTracking'), array(), ICON_SIZE_MEDIUM),
'course_log_tools.php?'.api_get_cidreq()
);
echo Display::url(
$actionsLeft .= Display::url(
Display::return_icon('tools.png', get_lang('ResourcesTracking'), array(), ICON_SIZE_MEDIUM),
'course_log_resources.php?'.api_get_cidreq()
);
echo Display::url(
$actionsLeft .= Display::url(
Display::return_icon('quiz.png', get_lang('ExamTracking'), array(), ICON_SIZE_MEDIUM),
api_get_path(WEB_CODE_PATH).'tracking/exams.php?'.api_get_cidreq()
);
if (!empty($sessionId)) {
echo Display::url(
$actionsLeft .= Display::url(
Display::return_icon('attendance_list.png', get_lang('Logins'), '', ICON_SIZE_MEDIUM),
api_get_path(WEB_CODE_PATH) . 'attendance/index.php?' . api_get_cidreq() . '&action=calendar_logins'
);
}
echo '<span style="float:right; padding-top:0px;">';
echo '<a href="javascript: void(0);" onclick="javascript: window.print();">'.
$actionsRight = '<div class="pull-right">';
$actionsRight .= '<a href="javascript: void(0);" onclick="javascript: window.print();">'.
Display::return_icon('printer.png', get_lang('Print'),'',ICON_SIZE_MEDIUM).'</a>';
$addional_param = '';
@ -256,14 +254,9 @@ $users_tracking_per_page = '';
if (isset($_GET['users_tracking_per_page'])) {
$users_tracking_per_page= '&users_tracking_per_page='.intval($_GET['users_tracking_per_page']);
}
echo '<a href="'.api_get_self().'?'.api_get_cidreq().'&export=csv&'.$addional_param.$users_tracking_per_page.'">
$actionsRight .= '<a href="'.api_get_self().'?'.api_get_cidreq().'&export=csv&'.$addional_param.$users_tracking_per_page.'">
'.Display::return_icon('export_csv.png', get_lang('ExportAsCSV'), '', ICON_SIZE_MEDIUM).'</a>';
echo '</span>';
echo '</div>';
echo '<div class="actions">';
$actionsRight .= '</div>';
// Create a search-box.
$form_search = new FormValidator(
'search_simple',
@ -280,26 +273,26 @@ $form_search->addElement('hidden', 'session_id', $sessionId);
$form_search->addElement('hidden', 'id_session', $sessionId);
$form_search->addElement('text', 'user_keyword');
$form_search->addButtonSearch(get_lang('SearchUsers'));
$form_search->display();
echo '</div>';
echo Display::toolbarAction('toolbar-courselog', array( 0 => $actionsLeft, 1 => $form_search->returnForm(), 2 => $actionsRight ), 3);
$course_name = get_lang('Course').' '.$courseInfo['name'];
if ($session_id) {
echo Display::page_subheader(
Display::return_icon('session.png', get_lang('Session'), array(), ICON_SIZE_SMALL).' '.api_get_session_name($session_id).' '.
Display::return_icon('course.png', get_lang('Course'), array(), ICON_SIZE_SMALL).' '.$course_name
);
$titleSession = Display::return_icon('session.png', get_lang('Session'), array(), ICON_SIZE_SMALL).' '.api_get_session_name($session_id);
$titleCourse = Display::return_icon('course.png', get_lang('Course'), array(), ICON_SIZE_SMALL).' '.$course_name;
} else {
echo Display::page_subheader(
Display::return_icon('course.png', get_lang('Course'), array(), ICON_SIZE_SMALL).' '.$courseInfo['name']
);
$titleSession = Display::return_icon('course.png', get_lang('Course'), array(), ICON_SIZE_SMALL).' '.$courseInfo['name'];
}
$teacherList = CourseManager::get_teacher_list_from_course_code_to_string(
$courseInfo['code'],
',',
false
false,
true
);
$coaches = null;
@ -308,32 +301,35 @@ if (!empty($session_id)) {
$session_id,
$courseInfo['real_id'],
',',
false
false,
true
);
}
$html = '';
if (!empty($teacherList)) {
echo Display::page_subheader2(get_lang('Teachers'));
echo $teacherList;
$html .= Display::page_subheader2(get_lang('Teachers'));
$html .= $teacherList;
}
if (!empty($coaches)) {
echo Display::page_subheader2(get_lang('Coaches'));
echo $coaches;
$html .= Display::page_subheader2(get_lang('Coaches'));
$html .= $coaches;
}
$sessionList = SessionManager::get_session_by_course($courseInfo['real_id']);
if (!empty($sessionList)) {
echo Display::page_subheader2(get_lang('SessionList'));
$sessionToShow = array();
$html .= Display::page_subheader2(get_lang('SessionList'));
$iconCourse = Display::return_icon('course.png', null, null, ICON_SIZE_TINY);
$html .= '<ul class="session-list">';
foreach ($sessionList as $session) {
$url = api_get_path(WEB_CODE_PATH).'mySpace/course.php?session_id='.$session['id'].'&cidReq='.$courseInfo['code'];
$sessionToShow[] = Display::url($session['name'], $url);
$html .= Display::tag('li', $iconCourse . ' ' . Display::url($session['name'], $url));
}
echo implode(', ', $sessionToShow);
$html .= '</ul>';
}
echo Display::page_subheader2(get_lang('StudentList'));
$html .= Display::page_subheader2(get_lang('StudentList'));
// PERSON_NAME_DATA_EXPORT is buggy
$is_western_name_order = api_is_western_name_order();
@ -355,14 +351,14 @@ if (count($a_students) > 0) {
30 => '30 '.get_lang('Days'),
'never' => get_lang('Never')
);
$el = $form->addElement(
$el = $form->addSelect('since', get_lang('RemindInactivesLearnersSince'), $options);
/* $el = $form->addElement(
'select',
'since',
'<img align="middle" src="'.api_get_path(WEB_IMG_PATH).'messagebox_warning.gif" border="0" />'.
get_lang('RemindInactivesLearnersSince'),
$options
);
); */
$el->setSelected(7);
$form->addElement('hidden', 'action', 'add');
@ -374,10 +370,10 @@ if (count($a_students) > 0) {
$extra_field_select = TrackingCourseLog::display_additional_profile_fields();
if (!empty($extra_field_select)) {
echo $extra_field_select;
$html .= $extra_field_select;
}
$form->display();
$html .= $form->return_form();
if ($export_csv) {
$csv_content = array();
@ -473,10 +469,10 @@ if (count($a_students) > 0) {
}
}
// display buttons to un hide hidden columns
echo "<br/><br/><div id='unhideButtons'>";
$html .= "<div id='unhideButtons'>";
$index = 0;
foreach ($headers as $header) {
echo "<span title='".get_lang('DisplayColumn')." ".$header."' class='unhide_button hide' onclick='foldup($index)'>".
$html .= "<span title='".get_lang('DisplayColumn')." ".$header."' class='unhide_button hide' onclick='foldup($index)'>".
Display :: return_icon(
'move.png',
get_lang('DisplayColumn'),
@ -485,15 +481,15 @@ if (count($a_students) > 0) {
)." ".$header."</span>";
$index++;
}
echo "</div>";
$html .= "</div>";
// Display the table
echo "<div id='reporting_table'>";
$table->display();
echo "</div>";
$html .= "<div id='reporting_table'>";
$html .= $table->return_table();
$html .= "</div>";
} else {
echo Display::display_warning_message(get_lang('NoUsersInCourse'));
$html .= Display::display_warning_message(get_lang('NoUsersInCourse'), true, true);
}
echo Display::panel($html, $titleSession);
// Send the csv file if asked.
if ($export_csv) {
$csv_headers = array();

Loading…
Cancel
Save