diff --git a/main/css/academica/scorm.css b/main/css/academica/scorm.css
index fdac8042b1..09fac10c47 100755
--- a/main/css/academica/scorm.css
+++ b/main/css/academica/scorm.css
@@ -35,23 +35,6 @@
text-decoration: none;
}
-.inner_lp_toc .scorm_item_section {
- border:1px solid #222;
- background:#333;
- font-weight:bold;
- color:#fff;
- text-shadow:0 -1px 1px #000;
- background-image:-webkit-gradient(linear,left top,left bottom,from(#555),to(#333));
- background-image:-webkit-linear-gradient(top,#555,#333);
- background-image:-moz-linear-gradient(top,#555,#333);
- background-image:-ms-linear-gradient(top,#555,#333);
- background-image:-o-linear-gradient(top,#555,#333);
- background-image:linear-gradient(top,#555,#333);
- margin-right: 1px;
- padding: 10px 0px 10px 0px;
- text-decoration: none;
-}
-
.inner_lp_toc .scorm_item_section .scorm_item:before
{
content : url('../lp_section.png'); /* from main/newscorm/lp_controller.php file */
@@ -150,15 +133,8 @@
background: -ms-linear-gradient(top, #505f6b 0%,#3e4f5c 100%); /* IE10+ */
background: linear-gradient(to bottom, #505f6b 0%,#3e4f5c 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#505f6b', endColorstr='#3e4f5c',GradientType=0 ); /* IE6-9 */
- margin-right: 1px;
padding: 10px 0px 10px 0px;
text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
}
.inner_lp_toc .scorm_item {
@@ -352,7 +328,6 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -363,10 +338,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
@@ -379,7 +353,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/css/baby_orange/scorm.css b/main/css/baby_orange/scorm.css
index b5763db360..f065ddd3b1 100755
--- a/main/css/baby_orange/scorm.css
+++ b/main/css/baby_orange/scorm.css
@@ -136,31 +136,6 @@
height: 210px;
/*padding: 10px;*/
}
-.inner_lp_toc .scorm_item_section {
- border:none;
- background:#333;
- font-weight:normal;
- color:#fff;
- text-shadow:none;
- background: #fff; /* Old browsers */
- background: -moz-linear-gradient(top, #fff 0%, #e5e5e5 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fff), color-stop(100%,#e5e5e5)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #fff 0%,#e5e5e5 100%); /* Chrome10+,Safari5.1+ */
- background: -o-linear-gradient(top, #fff 0%,#e5e5e5 100%); /* Opera 11.10+ */
- background: -ms-linear-gradient(top, #fff 0%,#e5e5e5 100%); /* IE10+ */
- background: linear-gradient(to bottom, #fff 0%,#e5e5e5 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff', endColorstr='#e5e5e5',GradientType=0 ); /* IE6-9 */
- margin-right: 1px;
- padding: 10px 0px 10px 0px;
- text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
-}
-
.inner_lp_toc .scorm_item {
font-size: 13px;
margin-left: 10px;
@@ -351,7 +326,6 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -362,10 +336,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
@@ -378,7 +351,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/css/base.css b/main/css/base.css
index fd5cfcbeb0..ef8730b5e7 100755
--- a/main/css/base.css
+++ b/main/css/base.css
@@ -30,7 +30,7 @@ legend {
}
#header_right #notifications {
- padding:40px 0px 0px 0px;
+ padding:0;
}
#header_right #notifications li {
diff --git a/main/css/base_chamilo.css b/main/css/base_chamilo.css
index dafee3d606..58c37ac75f 100755
--- a/main/css/base_chamilo.css
+++ b/main/css/base_chamilo.css
@@ -1393,14 +1393,26 @@ a.read {
/* INVITATIONS */
-.invitation_confirm {
- padding-bottom: 10px;
- border-bottom: 1px solid #D8DFEA;
+.invitation-clear{
+ padding-bottom: 1em;
+ padding-top: 1em;
}
-.invitation_image {
- width:110px;
+.invitation-clear .title-profile, .invitation-clear .title-group {
+ font-size: 15px;
+ font-weight: bold;
+ padding-bottom: 0.2em;
+}
+.invitation-clear .title-profile a, .invitation-clear .title-group a{
+ color: #333;
+}
+.invitation-clear .title-profile a:hover, .invitation-clear .title-group a:hover{
+ color: #666;
+}
+.invitation-clear .content-invitation, .invitation-clear .description-group {
+ color: #666;
+ font-size: 13px;
+ padding-bottom: 0.3em;
}
-
/* DASHBOARD */
/* Head section */
diff --git a/main/css/blue_lagoon/scorm.css b/main/css/blue_lagoon/scorm.css
index ba68093be0..f33b5fe066 100755
--- a/main/css/blue_lagoon/scorm.css
+++ b/main/css/blue_lagoon/scorm.css
@@ -21,8 +21,6 @@
margin-right: 10px;
}
.inner_lp_toc .scorm_item_highlight {
- font-weight:bold;
- border:1px solid #abaaa7;
background-color: #abaaa7;
background-image:none;
margin-right: 0px;
@@ -35,23 +33,6 @@
text-decoration: none;
}
-.inner_lp_toc .scorm_item_section {
- border:1px solid #222;
- background:#333;
- font-weight:bold;
- color:#fff;
- text-shadow:0 -1px 1px #000;
- background-image:-webkit-gradient(linear,left top,left bottom,from(#555),to(#333));
- background-image:-webkit-linear-gradient(top,#555,#333);
- background-image:-moz-linear-gradient(top,#555,#333);
- background-image:-ms-linear-gradient(top,#555,#333);
- background-image:-o-linear-gradient(top,#555,#333);
- background-image:linear-gradient(top,#555,#333);
- margin-right: 1px;
- padding: 10px 0px 10px 0px;
- text-decoration: none;
-}
-
.inner_lp_toc .scorm_item_section .scorm_item:before
{
content : url('../lp_section.png'); /* from main/newscorm/lp_controller.php file */
@@ -152,13 +133,7 @@
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2e75a3', endColorstr='#2e75a3',GradientType=0 ); /* IE6-9 */
margin-right: 1px;
padding: 10px 0px 10px 0px;
- text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+ text-decoration: none;s
}
.inner_lp_toc .scorm_item {
@@ -351,7 +326,6 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -362,10 +336,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
@@ -378,7 +351,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/css/chamilo/default.css b/main/css/chamilo/default.css
index da23f58f98..5c2a21cd34 100755
--- a/main/css/chamilo/default.css
+++ b/main/css/chamilo/default.css
@@ -118,7 +118,6 @@ a.thumbnail:hover{
}
.breadcrumb a{
- line-height: 30px;
text-transform: none;
}
@@ -441,7 +440,6 @@ a.thumbnail:hover{
}
.breadcrumb a{
padding-top: 0;
- line-height: 30px;
text-transform: none;
}
diff --git a/main/css/chamilo/scorm.css b/main/css/chamilo/scorm.css
index 47aaa9de79..181120be16 100755
--- a/main/css/chamilo/scorm.css
+++ b/main/css/chamilo/scorm.css
@@ -22,7 +22,6 @@
}
.inner_lp_toc .scorm_item_highlight {
font-weight:bold;
- border:1px solid #00aad4;
background-color: #00aad4;
background-image:none;
margin-right: 0px;
@@ -144,23 +143,9 @@
font-weight:normal;
color:#fff;
text-shadow:none;
- background: #05abe0; /* Old browsers */
- background: -moz-linear-gradient(top, #05abe0 0%, #2e75a3 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#05abe0), color-stop(100%,#2e75a3)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* Chrome10+,Safari5.1+ */
- background: -o-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* Opera 11.10+ */
- background: -ms-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* IE10+ */
- background: linear-gradient(to bottom, #05abe0 0%,#2e75a3 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#05abe0', endColorstr='#2e75a3',GradientType=0 ); /* IE6-9 */
margin-right: 1px;
padding: 10px 0px 10px 0px;
text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
}
.inner_lp_toc .scorm_item {
@@ -352,7 +337,8 @@
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
+ text-shadow: none;
+ font-weight: normal;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -363,10 +349,9 @@
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
@@ -377,9 +362,9 @@
padding: 10px 0px 10px 0px;
}
.scorm_item_2 {
- border-bottom: 1px solid #CCCCCC;
+ border-bottom: 1px solid #00AAD4;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
+ text-shadow: none;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
@@ -406,10 +391,7 @@
}
.scorm_item_section.scorm_item_normal.scorm_not_attempted {
- background-image: none;
- background-position: 270px center !important;
- background-repeat: no-repeat;
- background-color: #808080;
+ background-color: #333;
}
#learning_path_main #control {
diff --git a/main/css/chamilo_electric_blue/scorm.css b/main/css/chamilo_electric_blue/scorm.css
index 485d97abb0..9771bd3b00 100755
--- a/main/css/chamilo_electric_blue/scorm.css
+++ b/main/css/chamilo_electric_blue/scorm.css
@@ -142,23 +142,8 @@
font-weight:normal;
color:#fff;
text-shadow:none;
- background: #175ae2; /* Old browsers */
- background: -moz-linear-gradient(top, #175ae2 0%, #133aac 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#175ae2), color-stop(100%,#133aac)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #175ae2 0%,#133aac 100%); /* Chrome10+,Safari5.1+ */
- background: -o-linear-gradient(top, #175ae2 0%,#133aac 100%); /* Opera 11.10+ */
- background: -ms-linear-gradient(top, #175ae2 0%,#133aac 100%); /* IE10+ */
- background: linear-gradient(to bottom, #175ae2 0%,#133aac 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#175ae2', endColorstr='#133aac',GradientType=0 ); /* IE6-9 */
- margin-right: 1px;
padding: 10px 0px 10px 0px;
text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
}
.inner_lp_toc .scorm_item {
@@ -362,7 +347,7 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
border-color: rgba(255, 255, 255, 0.3);
@@ -376,7 +361,6 @@ opacity: 0.7;
padding: 10px 0px 10px 0px;
}
.scorm_item_2 {
- border-bottom: 1px solid #CCCCCC;
color: #444444;
text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
diff --git a/main/css/chamilo_green/scorm.css b/main/css/chamilo_green/scorm.css
index c4578bdd47..17221788a8 100755
--- a/main/css/chamilo_green/scorm.css
+++ b/main/css/chamilo_green/scorm.css
@@ -142,23 +142,8 @@
font-weight:normal;
color:#fff;
text-shadow:none;
- background: #a0c400; /* Old browsers */
- background: -moz-linear-gradient(top, #a0c400 0%, #73a000 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a0c400), color-stop(100%,#73a000)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #a0c400 0%,#73a000 100%); /* Chrome10+,Safari5.1+ */
- background: -o-linear-gradient(top, #a0c400 0%,#73a000 100%); /* Opera 11.10+ */
- background: -ms-linear-gradient(top, #a0c400 0%,#73a000 100%); /* IE10+ */
- background: linear-gradient(to bottom, #a0c400 0%,#73a000 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a0c400', endColorstr='#73a000',GradientType=0 ); /* IE6-9 */
- margin-right: 1px;
padding: 10px 0px 10px 0px;
text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
}
.inner_lp_toc .scorm_item {
@@ -362,7 +347,7 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
border-color: rgba(255, 255, 255, 0.3);
@@ -370,7 +355,6 @@ opacity: 0.7;
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
color:#444;
- text-shadow:0 1px 1px #f6f6f6;
background: none;
margin-right: 1px;
padding: 10px 0px 10px 0px;
@@ -378,7 +362,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/css/chamilo_orange/scorm.css b/main/css/chamilo_orange/scorm.css
index 232075d449..a9bf764478 100755
--- a/main/css/chamilo_orange/scorm.css
+++ b/main/css/chamilo_orange/scorm.css
@@ -29,6 +29,9 @@
padding: 10px 0px 10px 0px;
text-decoration: none;
}
+.inner_lp_toc .scorm_item_highlight a {
+ color: #ffffff;
+}
.inner_lp_toc .scorm_item_highlight a {
color:#fff;
margin-right: 1px;
@@ -152,13 +155,6 @@
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff7400', endColorstr='#df3a01',GradientType=0 ); /* IE6-9 */
margin-right: 1px;
padding: 10px 0px 10px 0px;
- text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
}
.inner_lp_toc .scorm_item {
@@ -351,7 +347,6 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -362,15 +357,13 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
color:#444;
- text-shadow:0 1px 1px #f6f6f6;
background: none;
margin-right: 1px;
padding: 10px 0px 10px 0px;
@@ -378,7 +371,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/css/chamilo_red/scorm.css b/main/css/chamilo_red/scorm.css
index bef44030d8..8fb20e3c22 100755
--- a/main/css/chamilo_red/scorm.css
+++ b/main/css/chamilo_red/scorm.css
@@ -22,7 +22,6 @@
}
.inner_lp_toc .scorm_item_highlight {
font-weight:bold;
- border:1px solid #cf0404;
background-color: #cf0404;
background-image:none;
margin-right: 0px;
@@ -142,23 +141,6 @@
font-weight:normal;
color:#fff;
text-shadow:none;
- background: #ff3019; /* Old browsers */
- background: -moz-linear-gradient(top, #ff3019 0%, #cf0404 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff3019), color-stop(100%,#cf0404)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #ff3019 0%,#cf0404 100%); /* Chrome10+,Safari5.1+ */
- background: -o-linear-gradient(top, #ff3019 0%,#cf0404 100%); /* Opera 11.10+ */
- background: -ms-linear-gradient(top, #ff3019 0%,#cf0404 100%); /* IE10+ */
- background: linear-gradient(to bottom, #ff3019 0%,#cf0404 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff3019', endColorstr='#cf0404',GradientType=0 ); /* IE6-9 */
- margin-right: 1px;
- padding: 10px 0px 10px 0px;
- text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
}
.inner_lp_toc .scorm_item {
@@ -351,7 +333,6 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -362,10 +343,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
@@ -378,7 +358,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/css/chamilo_sport_red/scorm.css b/main/css/chamilo_sport_red/scorm.css
index 9574a43568..2db2e9901e 100755
--- a/main/css/chamilo_sport_red/scorm.css
+++ b/main/css/chamilo_sport_red/scorm.css
@@ -136,30 +136,6 @@
height: 210px;
/*padding: 10px;*/
}
-.inner_lp_toc .scorm_item_section {
- border:none;
- background:#333;
- font-weight:normal;
- color:#fff;
- text-shadow:none;
- background: #05abe0; /* Old browsers */
- background: -moz-linear-gradient(top, #05abe0 0%, #2e75a3 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#05abe0), color-stop(100%,#2e75a3)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* Chrome10+,Safari5.1+ */
- background: -o-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* Opera 11.10+ */
- background: -ms-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* IE10+ */
- background: linear-gradient(to bottom, #05abe0 0%,#2e75a3 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#05abe0', endColorstr='#2e75a3',GradientType=0 ); /* IE6-9 */
- margin-right: 1px;
- padding: 10px 0px 10px 0px;
- text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
-}
.inner_lp_toc .scorm_item {
font-size: 13px;
@@ -353,7 +329,6 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -364,10 +339,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
@@ -380,7 +354,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/css/cool_blue/scorm.css b/main/css/cool_blue/scorm.css
index 53672655fa..8073a81e46 100755
--- a/main/css/cool_blue/scorm.css
+++ b/main/css/cool_blue/scorm.css
@@ -22,8 +22,7 @@
}
.inner_lp_toc .scorm_item_highlight {
font-weight:bold;
- border:1px solid #333;
- background-color: #333;
+ background-color: #04698E;
background-image:none;
margin-right: 0px;
padding: 10px 0px 10px 0px;
@@ -136,30 +135,6 @@
height: 210px;
/*padding: 10px;*/
}
-.inner_lp_toc .scorm_item_section {
- border:none;
- background:#333;
- font-weight:normal;
- color:#fff;
- text-shadow:none;
- background: #05abe0; /* Old browsers */
- background: -moz-linear-gradient(top, #05abe0 0%, #2e75a3 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#05abe0), color-stop(100%,#2e75a3)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* Chrome10+,Safari5.1+ */
- background: -o-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* Opera 11.10+ */
- background: -ms-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* IE10+ */
- background: linear-gradient(to bottom, #05abe0 0%,#2e75a3 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#05abe0', endColorstr='#2e75a3',GradientType=0 ); /* IE6-9 */
- margin-right: 1px;
- padding: 10px 0px 10px 0px;
- text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
-}
.inner_lp_toc .scorm_item {
font-size: 13px;
@@ -344,7 +319,7 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
+ text-shadow: none;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -355,10 +330,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
diff --git a/main/css/corporate/scorm.css b/main/css/corporate/scorm.css
index 09d3fdb504..31f53978b5 100755
--- a/main/css/corporate/scorm.css
+++ b/main/css/corporate/scorm.css
@@ -21,7 +21,6 @@
margin-right: 10px;
}
.inner_lp_toc .scorm_item_highlight {
- font-weight:bold;
border:1px solid #fe9a2e;
background-color: #fe9a2e;
background-image:none;
@@ -153,12 +152,6 @@
margin-right: 1px;
padding: 10px 0px 10px 0px;
text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
}
.inner_lp_toc .scorm_item {
@@ -362,10 +355,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
@@ -378,7 +370,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/css/cosmic_campus/scorm.css b/main/css/cosmic_campus/scorm.css
index fd90420899..9e65d58eb2 100755
--- a/main/css/cosmic_campus/scorm.css
+++ b/main/css/cosmic_campus/scorm.css
@@ -153,12 +153,6 @@
margin-right: 1px;
padding: 10px 0px 10px 0px;
text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
}
.inner_lp_toc .scorm_item {
@@ -166,8 +160,6 @@
margin-left: 10px;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
-
}
.inner_lp_toc .scorm_item.scorm_item_level_1{
background: url(../img/archive.png) no-repeat;
@@ -351,7 +343,7 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
+ text-shadow: none;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -362,10 +354,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
@@ -378,7 +369,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/css/journal/scorm.css b/main/css/journal/scorm.css
index 0b1f923f26..557998d38f 100755
--- a/main/css/journal/scorm.css
+++ b/main/css/journal/scorm.css
@@ -143,23 +143,6 @@
font-weight:normal;
color:#fff;
text-shadow:none;
- background: #fcfcfc; /* Old browsers */
- background: -moz-linear-gradient(top, #fcfcfc 0%, #e4e4e4 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fcfcfc), color-stop(100%,#e4e4e4)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #fcfcfc 0%,#e4e4e4 100%); /* Chrome10+,Safari5.1+ */
- background: -o-linear-gradient(top, #fcfcfc 0%,#e4e4e4 100%); /* Opera 11.10+ */
- background: -ms-linear-gradient(top, #fcfcfc 0%,#e4e4e4 100%); /* IE10+ */
- background: linear-gradient(to bottom, #fcfcfc 0%,#e4e4e4 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcfcfc', endColorstr='#e4e4e4',GradientType=0 ); /* IE6-9 */
- margin-right: 1px;
- padding: 10px 0px 10px 0px;
- text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
}
.inner_lp_toc .scorm_item {
@@ -352,7 +335,7 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
+ text-shadow: none;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -363,10 +346,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
diff --git a/main/css/kiddy/scorm.css b/main/css/kiddy/scorm.css
index a5d4fd7f1e..9353c42d5c 100755
--- a/main/css/kiddy/scorm.css
+++ b/main/css/kiddy/scorm.css
@@ -136,30 +136,6 @@
height: 210px;
/*padding: 10px;*/
}
-.inner_lp_toc .scorm_item_section {
- border:none;
- background:#333;
- font-weight:normal;
- color:#fff;
- text-shadow:none;
- background: #05abe0; /* Old browsers */
- background: -moz-linear-gradient(top, #05abe0 0%, #2e75a3 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#05abe0), color-stop(100%,#2e75a3)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* Chrome10+,Safari5.1+ */
- background: -o-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* Opera 11.10+ */
- background: -ms-linear-gradient(top, #05abe0 0%,#2e75a3 100%); /* IE10+ */
- background: linear-gradient(to bottom, #05abe0 0%,#2e75a3 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#05abe0', endColorstr='#2e75a3',GradientType=0 ); /* IE6-9 */
- margin-right: 1px;
- padding: 10px 0px 10px 0px;
- text-decoration: none;
- -webkit-border-top-left-radius: 10px;
- -webkit-border-top-right-radius: 10px;
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-topright: 10px;
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
-}
.inner_lp_toc .scorm_item {
font-size: 13px;
@@ -351,7 +327,6 @@ opacity: 0.7;
margin-right: 1px;
padding-bottom: 2px;
text-decoration: none;
- color: #2F3E46;
}
.inner_lp_toc .scorm_item a.chapter_module {
@@ -362,10 +337,9 @@ opacity: 0.7;
.scorm_item_1,
.scorm_item_2 {
font-size: 16px;
- margin-left: 10px;
+ margin-left: 0;
margin-right:10px;
text-decoration: none;
- border-color: rgba(255, 255, 255, 0.3);
}
.scorm_item_1 {
border-bottom: 1px solid #CCCCCC;
@@ -378,7 +352,6 @@ opacity: 0.7;
.scorm_item_2 {
border-bottom: 1px solid #CCCCCC;
color: #444444;
- text-shadow: 0 1px 1px #F6F6F6;
margin-right: 1px;
padding: 10px 0px 10px 0px;
background-image:none;
diff --git a/main/exercice/calculated_answer.class.php b/main/exercice/calculated_answer.class.php
index ef230ed05a..a2c9c3559c 100644
--- a/main/exercice/calculated_answer.class.php
+++ b/main/exercice/calculated_answer.class.php
@@ -133,7 +133,23 @@ class CalculatedAnswer extends Question
$form->addElement('label', null, get_lang('IfYouWantOnlyIntegerValuesWriteBothLimitsWithoutDecimals'));
$form->addElement('html', '
');
- $form->addElement('label', null, get_lang('FormulaExample').': √ x ÷ y × e (ln(pi)) = sqrt([x]/[y])*(e^(ln(pi)))');
+ $notationListButton = Display::url(
+ get_lang('NotationList'),
+ api_get_path(WEB_PATH).'main/exercice/evalmathnotation.php',
+ array(
+ 'class' => 'btn ajax',
+ '_target' => '_blank'
+ )
+ );
+ $form->addElement(
+ 'html',
+ '
+
+
'.$notationListButton.'
+
');
+
+ $form->addElement('label', null, get_lang('FormulaExample'));
+
$form->addElement('text', 'formula', get_lang('Formula'), array('id' => 'formula', 'class' => 'span4'));
$form->addRule('formula', get_lang('GiveFormula'), 'required');
@@ -163,50 +179,62 @@ class CalculatedAnswer extends Question
*/
function processAnswersCreation($form)
{
- global $charset;
- $answer = $form->getSubmitValue('answer');
- $formula = $form->getSubmitValue('formula');
- $lowestValues = $form->getSubmitValue('lowestValue');
- $highestValues = $form->getSubmitValue('highestValue');
- $answerVariations = $form->getSubmitValue('answerVariations');
- $this->weighting = $form->getSubmitValue('weighting');
- //Remove previous answers
- Database::delete("c_quiz_answer", array('question_id = ?' => $this->id));
- // Create as many answers as $answerVariations
- for ($j=0 ; $j < $answerVariations; $j++) {
- $auxAnswer = $answer;
- $auxFormula = $formula;
- $nb = preg_match_all('/\[[^\]]*\]/', $auxAnswer, $blanks);
- if ($nb > 0) {
- for ($i=0 ; $i < $nb; ++$i) {
- $blankItem = $blanks[0][$i];
- $replace = array("[", "]");
- $newBlankItem = str_replace($replace, "", $blankItem);
- $newBlankItem = "[".trim($newBlankItem)."]";
- $randomValue = mt_rand($lowestValues[$i],$highestValues[$i]);
- //$randomValue = mt_rand($lowestValues[$i]*100,$highestValues[$i]*100)/100;
- $auxAnswer = str_replace($blankItem, $randomValue, $auxAnswer);
- $auxFormula = str_replace($blankItem, $randomValue, $auxFormula);
- }
- require_once(api_get_path(LIBRARY_PATH).'evalmath.class.php');
- $math = new EvalMath();
- $result = $math->evaluate($auxFormula);
- $result = number_format($result, 2, ".", "");
- // Remove decimal trailing zeros
- $result = rtrim($result, "0");
- // If it is an integer (ends in .00) remove the decimal point
- if (mb_substr($result, -1) === ".") {
- $result = str_replace(".", "", $result);
+ if (!self::isAnswered()) {
+ $table = Database::get_course_table(TABLE_QUIZ_ANSWER);
+ Database::delete(
+ $table,
+ array(
+ 'c_id = ? AND question_id = ?' => array(
+ $this->course['real_id'],
+ $this->id
+ )
+ )
+ );
+ $answer = $form->getSubmitValue('answer');
+ $formula = $form->getSubmitValue('formula');
+ $lowestValues = $form->getSubmitValue('lowestValue');
+ $highestValues = $form->getSubmitValue('highestValue');
+ $answerVariations = $form->getSubmitValue('answerVariations');
+ $this->weighting = $form->getSubmitValue('weighting');
+ // Create as many answers as $answerVariations
+ for ($j=0 ; $j < $answerVariations; $j++) {
+ $auxAnswer = $answer;
+ $auxFormula = $formula;
+ $nb = preg_match_all('/\[[^\]]*\]/', $auxAnswer, $blanks);
+ if ($nb > 0) {
+ for ($i=0 ; $i < $nb; ++$i) {
+ $blankItem = $blanks[0][$i];
+ $replace = array("[", "]");
+ $newBlankItem = str_replace($replace, "", $blankItem);
+ $newBlankItem = "[".trim($newBlankItem)."]";
+ // take random float values when one or both edge values have a decimal point
+ $randomValue =
+ (strpos($lowestValues[$i],'.') !== false ||
+ strpos($highestValues[$i],'.') !== false) ?
+ mt_rand($lowestValues[$i]*100,$highestValues[$i]*100)/100 :
+ mt_rand($lowestValues[$i],$highestValues[$i]);
+ $auxAnswer = str_replace($blankItem, $randomValue, $auxAnswer);
+ $auxFormula = str_replace($blankItem, $randomValue, $auxFormula);
+ }
+ require_once(api_get_path(LIBRARY_PATH).'evalmath.class.php');
+ $math = new EvalMath();
+ $result = $math->evaluate($auxFormula);
+ $result = number_format($result, 2, ".", "");
+ // Remove decimal trailing zeros
+ $result = rtrim($result, "0");
+ // If it is an integer (ends in .00) remove the decimal point
+ if (mb_substr($result, -1) === ".") {
+ $result = str_replace(".", "", $result);
+ }
+ // Attach formula
+ $auxAnswer .= " [".$result."]@@".$formula;
}
- // Attach formula
- $auxAnswer .= " [".$result."]@@".$formula;
+ $this->save();
+ $objAnswer = new answer($this->id);
+ $objAnswer->createAnswer($auxAnswer, 1, '', $this->weighting, null);
+ $objAnswer->position = array();
+ $objAnswer->save();
}
- $this->save();
- $objAnswer = new answer($this->id);
- $objAnswer->createAnswer($auxAnswer, 1, '', $this->weighting, array());
- $objAnswer->position = array();
- $objAnswer->save();
-
}
}
@@ -225,4 +253,26 @@ class CalculatedAnswer extends Question
';
return $header;
}
+
+ /**
+ * Returns true if the current question has been attempted to be answered
+ * @return boolean
+ */
+ public function isAnswered()
+ {
+ $table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ATTEMPT);
+ $result = Database::select(
+ 'question_id',
+ $table,
+ array(
+ 'where' => array(
+ 'question_id = ? AND course_code = ?' => array(
+ $this->id,
+ $this->course['code']
+ )
+ )
+ )
+ );
+ return empty($result) ? false : true;
+ }
}
diff --git a/main/exercice/evalmathnotation.php b/main/exercice/evalmathnotation.php
new file mode 100644
index 0000000000..b483c0d6ac
--- /dev/null
+++ b/main/exercice/evalmathnotation.php
@@ -0,0 +1,38 @@
+".
+get_lang('SummationPlus')."\n".
+get_lang('SubstractionMinus')."\n".
+get_lang('MultiplicationStar')."\n".
+get_lang('DivisionSlash')."\n".
+get_lang('ExponentiationCircumflex')."\n".
+"\n".
+get_lang('SquareRootSqrt')."\n".
+get_lang('AbsoluteValueAbs')."\n".
+get_lang('NaturalLogarithmLn')."\n".
+get_lang('LogarithmLog')."\n".
+get_lang('ENumberE')."\n".
+get_lang('PiNumberPi')."\n".
+"\n".
+get_lang('SineSin')."\n".
+get_lang('HyperbolicSineSinh')."\n".
+get_lang('ArcsineArcsin')."\n".
+get_lang('InverseSineAsin')."\n".
+get_lang('HyperbolicArcsineArcsinh')."\n".
+get_lang('InverseHyperbolicSineAsinh')."\n".
+"\n".
+get_lang('CosineCos')."\n".
+get_lang('HyperbolicCosineCosh')."\n".
+get_lang('ArccosineArccos')."\n".
+get_lang('InverseCosineAcos')."\n".
+get_lang('HyperbolicArccosineArccosh')."\n".
+get_lang('InverseHyperbolicCosineAcosh')."\n".
+"\n".
+get_lang('TangentTan')."\n".
+get_lang('HyperbolicTangentTanh')."\n".
+get_lang('ArctangentArctan')."\n".
+get_lang('InverseTangentAtan')."\n".
+get_lang('HyperbolicArctangentArctanh')."\n".
+get_lang('InverseHyperbolicTangentAtanh').
+"";
diff --git a/main/exercice/question_list_admin.inc.php b/main/exercice/question_list_admin.inc.php
index 7ec0fc6384..d0aba1d317 100755
--- a/main/exercice/question_list_admin.inc.php
+++ b/main/exercice/question_list_admin.inc.php
@@ -170,7 +170,27 @@ if (!$inATest) {
$question_class = get_class($objQuestionTmp);
$clone_link = ''.Display::return_icon('cd.gif',get_lang('Copy'), array(), ICON_SIZE_SMALL).'';
- $edit_link = ''.Display::return_icon('edit.png',get_lang('Modify'), array(), ICON_SIZE_SMALL).'';
+ /*$edit_link = ''.Display::return_icon('edit.png',get_lang('Modify'), array(), ICON_SIZE_SMALL).'';
+
+ if ($objQuestionTmp->type == CALCULATED_ANSWER && $objQuestionTmp->isAnswered()) {
+ $edit_link = ''.Display::return_icon('edit_na.png',get_lang('Modify'), array(), ICON_SIZE_SMALL).'';
+ }*/
+
+ $edit_link = ($objQuestionTmp->type == CALCULATED_ANSWER && $objQuestionTmp->isAnswered()) ?
+ ''.Display::return_icon(
+ 'edit_na.png',
+ get_lang('QuestionEditionNotAvailableBecauseItIsAlreadyAnsweredHoweverYouCanCopyItAndModifyTheCopy'),
+ array(),
+ ICON_SIZE_SMALL
+ ).'' :
+ ''.
+ Display::return_icon(
+ 'edit.png',
+ get_lang('Modify'),
+ array(),
+ ICON_SIZE_SMALL
+ ).'';
if ($objExercise->edit_exercise_in_lp == true) {
$delete_link = ''.Display::return_icon('delete.png',get_lang('RemoveFromTest'), array(), ICON_SIZE_SMALL).'';
diff --git a/main/inc/lib/autoload.class.php b/main/inc/lib/autoload.class.php
index 60f5ec53d6..f426855fa0 100755
--- a/main/inc/lib/autoload.class.php
+++ b/main/inc/lib/autoload.class.php
@@ -929,6 +929,8 @@ class Autoload
$result['Utf8'] = '/main/inc/lib/system/text/utf8.class.php';
$result['Utf8Decoder'] = '/main/inc/lib/system/text/utf8_decoder.class.php';
$result['Utf8Encoder'] = '/main/inc/lib/system/text/utf8_encoder.class.php';
+ $result['WebService'] = '/main/inc/lib/webservices/WebService.class.php';
+ $result['MessagesWebService'] = '/main/inc/lib/webservices/MessagesWebService.class.php';
$result['Wiki'] = '/main/coursecopy/classes/wiki.class.php';
$result['Work\Access'] = '/main/work/access.class.php';
$result['Work\AjaxController'] = '/main/work/ajax_controller.class.php';
diff --git a/main/inc/lib/display.lib.php b/main/inc/lib/display.lib.php
index 58e6b2a914..e0b08e0782 100755
--- a/main/inc/lib/display.lib.php
+++ b/main/inc/lib/display.lib.php
@@ -1661,7 +1661,7 @@ class Display
$second_title = Security::remove_XSS($second_title);
$title .= " $second_title";
}
- return '';
+ return ''.Security::remove_XSS($title).'
';
}
public static function page_subheader2($title, $second_title = null)
diff --git a/main/inc/lib/main_api.lib.php b/main/inc/lib/main_api.lib.php
index b3fbf5a241..499bf1abc9 100755
--- a/main/inc/lib/main_api.lib.php
+++ b/main/inc/lib/main_api.lib.php
@@ -7140,7 +7140,7 @@ function api_get_password_checker_js($usernameInputId, $passwordInputid)
var verdicts = ['".implode("','", $verdicts)."'];
var errorMessages = {
password_to_short : '".get_lang('PasswordIsTooShort')."',
- same_as_username : '".get_lang('YourPasswordCannotBeTheSameAsYourUsername')."',
+ same_as_username : '".get_lang('YourPasswordCannotBeTheSameAsYourUsername')."'
};
$(document).ready(function() {
@@ -7154,7 +7154,7 @@ function api_get_password_checker_js($usernameInputId, $passwordInputid)
},
errorMessages : errorMessages,
viewports: {
- progress: '#password_progress',
+ progress: '#password_progress'
//verdict: undefined,
//errors: undefined
},
diff --git a/main/inc/lib/message.lib.php b/main/inc/lib/message.lib.php
index 7baf61a1d4..039104da5c 100755
--- a/main/inc/lib/message.lib.php
+++ b/main/inc/lib/message.lib.php
@@ -1508,4 +1508,112 @@ class MessageManager
$html .= $table->return_table();
return $html;
}
+
+ /**
+ * Get the count of the last received messages for a user
+ * @param int $userId The user id
+ * @param int $lastId The id of the last received message
+ * @return int The count of new messages
+ */
+ public static function countMessagesFromLastReceivedMessage($userId, $lastId = 0)
+ {
+ $userId = intval($userId);
+ $lastId = intval($lastId);
+
+ if (empty($userId)) {
+ return 0;
+ }
+
+ $messagesTable = Database::get_main_table(TABLE_MESSAGE);
+
+ $conditions = array(
+ 'where' => array(
+ 'user_receiver_id = ?' => $userId,
+ 'AND msg_status = ?' => MESSAGE_STATUS_UNREAD,
+ 'AND id > ?' => $lastId
+ )
+ );
+
+ $result = Database::select('COUNT(1) AS qty', $messagesTable, $conditions);
+
+ if (!empty($result)) {
+ $row = current($result);
+
+ return $row['qty'];
+ }
+
+ return 0;
+ }
+
+ /**
+ * Get the data of the last received messages for a user
+ * @param int $userId The user id
+ * @param int $lastId The id of the last received message
+ * @return int The count of new messages
+ */
+ public static function getMessagesFromLastReceivedMessage($userId, $lastId = 0)
+ {
+ $userId = intval($userId);
+ $lastId = intval($lastId);
+
+ if (empty($userId)) {
+ return 0;
+ }
+
+ $messagesTable = Database::get_main_table(TABLE_MESSAGE);
+ $userTable = Database::get_main_table(TABLE_MAIN_USER);
+
+ $messages = array();
+
+ $sql = "SELECT m.*, u.user_id, u.lastname, u.firstname "
+ . "FROM $messagesTable as m "
+ . "INNER JOIN $userTable as u "
+ . "ON m.user_receiver_id = u.user_id "
+ . "WHERE u.user_id = $userId "
+ . "AND m.msg_status = " . MESSAGE_STATUS_UNREAD . " "
+ . "AND m.id > $lastId";
+
+ $result = Database::query($sql);
+
+ if ($result !== false) {
+ while ($row = Database::fetch_assoc($result)) {
+ $messages[] = $row;
+ }
+ }
+
+ return $messages;
+ }
+
+ /**
+ * Check whether a message has attachments
+ * @param int $messageId The message id
+ * @return boolean Whether the message has attachments return true. Otherwise return false
+ */
+ public static function hasAttachments($messageId)
+ {
+ $messageId = intval($messageId);
+
+ if (empty($messageId)) {
+ return false;
+ }
+
+ $messageAttachmentTable = Database::get_main_table(TABLE_MESSAGE_ATTACHMENT);
+
+ $conditions = array(
+ 'where' => array(
+ 'message_id = ?' => $messageId
+ )
+ );
+
+ $result = Database::select('COUNT(1) AS qty', $messageAttachmentTable, $conditions, 'first');
+
+ if (!empty($result)) {
+ if ($result['qty'] > 0) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
}
diff --git a/main/inc/lib/webservices/MessagesWebService.class.php b/main/inc/lib/webservices/MessagesWebService.class.php
new file mode 100644
index 0000000000..40d262e2ec
--- /dev/null
+++ b/main/inc/lib/webservices/MessagesWebService.class.php
@@ -0,0 +1,128 @@
+
+ * @package chamilo.webservices.messages
+ */
+class MessagesWebService extends WebService
+{
+
+ const SERVICE_NAME = 'MsgREST';
+
+ /**
+ * Generate the api key for a user
+ * @param int $userId The user id
+ * @return string The api key
+ */
+ public function generateApiKey($userId)
+ {
+ $apiKey = UserManager::get_api_keys($userId, self::SERVICE_NAME);
+
+ if (empty($apiKey)) {
+ UserManager::add_api_key($userId, self::SERVICE_NAME);
+
+ $apiKey = UserManager::get_api_keys($userId, self::SERVICE_NAME);
+ }
+
+ return current($apiKey);
+ }
+
+ /**
+ * Get the user api key
+ * @param string $username The user name
+ * @return string The api key
+ */
+ public function getApiKey($username)
+ {
+ $userInfo = api_get_user_info_from_username($username);
+ $userId = $userInfo['user_id'];
+
+ if ($this->apiKey !== null) {
+ return $this->apiKey;
+ } else {
+ $this->apiKey = $this->generateApiKey($userId);
+
+ return $this->apiKey;
+ }
+ }
+
+ /**
+ * Check if the api is valid for a user
+ * @param string $username The username
+ * @param string $apiKeyToValidate The api key
+ * @return boolean Whether the api belongs to the user return true. Otherwise return false
+ */
+ public static function isValidApiKey($username, $apiKeyToValidate)
+ {
+ $userInfo = api_get_user_info_from_username($username);
+ $userId = $userInfo['user_id'];
+
+ $apiKeys = UserManager::get_api_keys($userId, self::SERVICE_NAME);
+
+ if (!empty($apiKeys)) {
+ $apiKey = current($apiKeys);
+
+ if ($apiKey == $apiKeyToValidate) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ /**
+ * Get the count of new messages for a user
+ * @param string $username The username
+ * @param int $lastId The id of the last received message
+ * @return int The count fo new messages
+ */
+ public function countNewMessages($username, $lastId = 0)
+ {
+ $userInfo = api_get_user_info_from_username($username);
+ $userId = $userInfo['user_id'];
+
+ return MessageManager::countMessagesFromLastReceivedMessage($userId, $lastId);
+ }
+
+ /**
+ * Get the list of new messages for a user
+ * @param string $username The username
+ * @param int $lastId The id of the last received message
+ * @return array the new message list
+ */
+ public function getNewMessages($username, $lastId = 0)
+ {
+ $messages = array();
+
+ $userInfo = api_get_user_info_from_username($username);
+ $userId = $userInfo['user_id'];
+
+ $lastMessages = MessageManager::getMessagesFromLastReceivedMessage($userId, $lastId);
+
+ foreach ($lastMessages as $message) {
+ $hasAttachments = MessageManager::hasAttachments($message['id']);
+
+ $messages[] = array(
+ 'id' => $message['id'],
+ 'title' => $message['title'],
+ 'sender' => array(
+ 'id' => $message['user_id'],
+ 'lastname' => $message['lastname'],
+ 'firstname' => $message['firstname'],
+ 'completeName' => api_get_person_name($message['firstname'], $message['lastname']),
+ ),
+ 'content' => $message['content'],
+ 'hasAttachments' => $hasAttachments,
+ 'platform' => array(
+ 'website' => api_get_path(WEB_PATH),
+ 'messagingTool' => api_get_path(WEB_PATH) . 'main/messages/inbox.php'
+ )
+ );
+ }
+
+ return $messages;
+ }
+
+}
diff --git a/main/inc/lib/webservices/WebService.class.php b/main/inc/lib/webservices/WebService.class.php
new file mode 100644
index 0000000000..114b2e69df
--- /dev/null
+++ b/main/inc/lib/webservices/WebService.class.php
@@ -0,0 +1,72 @@
+
+ * @package chamilo.webservices
+ */
+abstract class WebService
+{
+
+ protected $apiKey;
+
+ /**
+ * Class constructor
+ */
+ public function __construct()
+ {
+ $this->apiKey = null;
+ }
+
+ /**
+ * Set the api key
+ * @param string $apiKey The api key
+ */
+ public function setApiKey($apiKey)
+ {
+ $this->apiKey = $apiKey;
+ }
+
+ /**
+ * @abstract
+ */
+ abstract public function getApiKey($username);
+
+ /**
+ * Check whether the username and password are valid
+ * @param string $username The username
+ * @param string $password the password
+ * @return boolean Whether the password belongs to the username return true. Otherwise return false
+ */
+ public static function isValidUser($username, $password)
+ {
+ if (empty($username) || empty($password)) {
+ return false;
+ }
+
+ $userTable = Database::get_main_table(TABLE_MAIN_USER);
+
+ $whereConditions = array(
+ "username = '?' " => $username,
+ "AND password = '?'" => sha1($password)
+ );
+
+ $conditions = array(
+ 'where' => $whereConditions
+ );
+
+ $table = Database::select('count(1) as qty', $userTable, $conditions);
+
+ if ($table != false) {
+ $row = current($table);
+
+ if ($row['qty'] > 0) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+}
diff --git a/main/lang/english/exercice.inc.php b/main/lang/english/exercice.inc.php
index 402e89722a..6288bc7a24 100644
--- a/main/lang/english/exercice.inc.php
+++ b/main/lang/english/exercice.inc.php
@@ -2,6 +2,7 @@
/*
for more information: see languages.txt in the lang folder.
*/
+$QuestionEditionNotAvailableBecauseItIsAlreadyAnsweredHoweverYouCanCopyItAndModifyTheCopy = "Question edition is not available because the question has been already answered. However, you can copy and modify it.";
$SelectADateOnTheCalendar = "Select a date from the calendar";
$AreYouSureDeleteTestResultBeforeDateD = "Are you sure you want to clean results for this test before the selected date ?";
$CleanStudentsResultsBeforeDate = "Clean all results before a selected date";
diff --git a/main/lang/english/tracking.inc.php b/main/lang/english/tracking.inc.php
index 349755d1b0..274013dddb 100644
--- a/main/lang/english/tracking.inc.php
+++ b/main/lang/english/tracking.inc.php
@@ -2,6 +2,7 @@
/*
for more information: see languages.txt in the lang folder.
*/
+$AssignedCourses = "Assigned courses";
$SleepingStudents = "Students with no activity during the last few days";
$SleepingTeachers = "Teachers with no activity in the last few days";
$InactiveUsers = "Users who's account has been disabled";
diff --git a/main/lang/english/trad4all.inc.php b/main/lang/english/trad4all.inc.php
index 72aeb06a9b..8e454878f0 100755
--- a/main/lang/english/trad4all.inc.php
+++ b/main/lang/english/trad4all.inc.php
@@ -2,6 +2,38 @@
/*
for more information: see languages.txt in the lang folder.
*/
+$ActivateAudioRecorder = "Activate audio recorder";
+$StartSpeaking = "Start speaking";
+$InverseHyperbolicTangentAtanh = "Inverse hyperbolic tangent:\tatanh(x)";
+$HyperbolicArctangentArctanh = "Hyperbolic arctangent:\t\tarctanh(x)";
+$InverseTangentAtan = "Inverse tangent:\t\tatan(x)";
+$ArctangentArctan = "Arctangent:\t\t\tarctan(x)";
+$HyperbolicTangentTanh = "Hyperbolic tangent:\t\ttanh(x)";
+$TangentTan = "Tangent:\t\t\ttan(x)";
+$InverseHyperbolicCosineAcosh = "Inverse hyperbolic cosine:\tacosh(x)";
+$HyperbolicArccosineArccosh = "Hyperbolic arccosine:\t\tarccosh(x)";
+$InverseCosineAcos = "Inverse cosine:\t\t\tacos(x)";
+$ArccosineArccos = "Arccosine:\t\t\tarccos(x)";
+$HyperbolicCosineCosh = "Hyperbolic cosine:\t\tcosh(x)";
+$CosineCos = "Cosine:\t\t\t\tcos(x)";
+$InverseHyperbolicSineAsinh = "Inverse hyperbolic sine:\tasinh(x)";
+$HyperbolicArcsineArcsinh = "Hyperbolic arcsine:\t\tarcsinh(x)";
+$InverseSineAsin = "Inverse sine:\t\t\tasin(x)";
+$ArcsineArcsin = "Arcsine:\t\t\tarcsin(x)";
+$HyperbolicSineSinh = "Hyperbolic sine:\t\tsinh(x)";
+$SineSin = "Sine:\t\t\t\tsin(x)";
+$PiNumberPi = "Pi number:\t\t\tpi";
+$ENumberE = "E number:\t\t\te";
+$LogarithmLog = "Logarithm:\t\t\tlog(x)";
+$NaturalLogarithmLn = "Natural logarithm:\t\tln(x)";
+$AbsoluteValueAbs = "Absolute value:\t\t\tabs(x)";
+$SquareRootSqrt = "Square root:\t\t\tsqrt(x)";
+$ExponentiationCircumflex = "Exponentiation:\t\t\t^";
+$DivisionSlash = "Division:\t\t\t/";
+$MultiplicationStar = "Multiplication:\t\t\t*";
+$SubstractionMinus = "Substraction:\t\t\t-";
+$SummationPlus = "Summation:\t\t\t+";
+$NotationList = "Formula notation";
$SubscribeToSessionRequest = "Request for subscription to a session";
$PleaseSubscribeMeToSession = "Please consider subscribing me to session";
$SearchActiveSessions = "Search active sessions";
@@ -11,7 +43,7 @@ $GiveAnswerVariations = "Please, write how many question variations you want";
$AnswerVariations = "Question variations";
$GiveFormula = "Please, write the formula";
$Formula = "Formula";
-$FormulaExample = "Formula sample";
+$FormulaExample = "Formula sample: sqrt( [x] / [y] ) * ( e ^ ( ln(pi) ) )";
$VariableRanges = "Variable ranges";
$ExampleValue = "Range value";
$CalculatedAnswer = "Calculated question";
@@ -1643,4 +1675,4 @@ $DataTableSearch = "Search";
$HideColumn = "Hide column";
$DisplayColumn = "Show column";
$LegalAgreementAccepted = "Legal agreement accepted";
-?>
\ No newline at end of file
+?>
diff --git a/main/lang/french/exercice.inc.php b/main/lang/french/exercice.inc.php
index f059a12e7d..31fdc0cddb 100755
--- a/main/lang/french/exercice.inc.php
+++ b/main/lang/french/exercice.inc.php
@@ -2,6 +2,7 @@
/*
for more information: see languages.txt in the lang folder.
*/
+$QuestionEditionNotAvailableBecauseItIsAlreadyAnsweredHoweverYouCanCopyItAndModifyTheCopy = "L'édition de cette question est désactivée parce qu'elle a déjà été utilisée par au moins un étudiant dans un test. Cependant, vous pouvez la copier et modifier la copie.";
$SelectADateOnTheCalendar = "Sélectionnez une date";
$AreYouSureDeleteTestResultBeforeDateD = "Êtes vous sur de vouloir supprimer toutes les tentatives antérieures à la date sélectionnée ?";
$CleanStudentsResultsBeforeDate = "Supprimer les tentatives antérieures à une date donnée";
diff --git a/main/lang/french/tracking.inc.php b/main/lang/french/tracking.inc.php
index a60e3738cb..19cb040d2f 100755
--- a/main/lang/french/tracking.inc.php
+++ b/main/lang/french/tracking.inc.php
@@ -2,6 +2,7 @@
/*
for more information: see languages.txt in the lang folder.
*/
+$AssignedCourses = "Cours assignés";
$SleepingStudents = "Apprenants sans activité durant les derniers jours";
$SleepingTeachers = "Enseignants sans activité durant les derniers jours";
$InactiveUsers = "Utilisateurs au compte désactivé";
diff --git a/main/lang/french/trad4all.inc.php b/main/lang/french/trad4all.inc.php
index b6ca3a649f..74bd0a3dcc 100755
--- a/main/lang/french/trad4all.inc.php
+++ b/main/lang/french/trad4all.inc.php
@@ -2,6 +2,40 @@
/*
for more information: see languages.txt in the lang folder.
*/
+$ActivateAudioRecorder = "Activer l'enregistreur audio";
+$StartSpeaking = "Parlez maintenant";
+$InverseHyperbolicTangentAtanh = "Tangente hyperbolique inverse:\tatanh(x)";
+$HyperbolicArctangentArctanh = "Arctangente hyperbolique:\t\tarctanh(x)";
+$InverseTangentAtan = "Tangente inverse:\t\tatan(x)";
+$ArctangentArctan = "Arctangente:\t\t\tarctan(x)";
+$HyperbolicTangentTanh = "Tangente hyperbolique:\t\ttanh(x)";
+$TangentTan = "Tangente:\t\t\ttan(x)";
+$InverseHyperbolicCosineAcosh = "Cosinus hyperbolique inverse:\tacosh(x)";
+$HyperbolicArccosineArccosh = "Arcosinus hyperbolique:\t\tarccosh(x)";
+$InverseCosineAcos = "Cosinus inverse:\t\t\tacos(x)";
+$ArccosineArccos = "Arccosinus:\t\t\tarccos(x)";
+$HyperbolicCosineCosh = "Cosinus hyperbolique:\t\tcosh(x)";
+$CosineCos = "Cosinus:\t\t\t\tcos(x)";
+$InverseHyperbolicSineAsinh = "Sinus hyperbolique inverse:\tasinh(x)";
+$HyperbolicArcsineArcsinh = "Arcsinus hyperbolique:\t\tarcsinh(x)";
+$InverseSineAsin = "Sinus inverse:\t\t\tasin(x)";
+$ArcsineArcsin = "Arcsinus:\t\t\tarcsin(x)";
+$HyperbolicSineSinh = "Sinus hyperbolique:\tsinh(x)";
+$SineSin = "Sinus:\t\t\t\tsin(x)";
+$PiNumberPi = "Nombre Pi:\t\t\tpi";
+$ENumberE = "Nombre e:\t\t\te";
+$LogarithmLog = "Logarithme:\t\t\tlog(x)";
+$NaturalLogarithmLn = "Logarithme naturel:\t\tln(x)";
+$AbsoluteValueAbs = "Valeur absolue:\t\t\tabs(x)";
+$SquareRootSqrt = "Racine carrée:\t\t\tsqrt(x)";
+$ExponentiationCircumflex = "Exponentiation:\t\t\t^";
+$DivisionSlash = "Division:\t\t\t/";
+$MultiplicationStar = "Multiplication:\t\t\t*";
+$SubstractionMinus = "Soustraction:\t\t\t-";
+$SummationPlus = "Somme:\t\t\t\t+";
+$NotationList = "Syntaxe de formules";
+$SubscribeToSessionRequest = "Requête d'inscription à une session";
+$PleaseSubscribeMeToSession = "Merci de bien vouloir considérer mon inscription à la session";
$SearchActiveSessions = "Recherche sessions actives";
$UserNameHasDash = "Le nom d'utilisateur ne peut pas contenir de tirets (-)";
$IfYouWantOnlyIntegerValuesWriteBothLimitsWithoutDecimals = "Si vous souhaitez seulement des nombres entiers, indiquez les deux limites sans décimales";
diff --git a/main/lang/spanish/exercice.inc.php b/main/lang/spanish/exercice.inc.php
index d44130c4e0..d317afaa15 100644
--- a/main/lang/spanish/exercice.inc.php
+++ b/main/lang/spanish/exercice.inc.php
@@ -2,6 +2,7 @@
/*
for more information: see languages.txt in the lang folder.
*/
+$QuestionEditionNotAvailableBecauseItIsAlreadyAnsweredHoweverYouCanCopyItAndModifyTheCopy = "No puede editar la pregunta porque alguien ya la respondió. Sin embargo, puede copiarla y modificar dicha copia.";
$SelectADateOnTheCalendar = "Seleccione una fecha del calendario";
$AreYouSureDeleteTestResultBeforeDateD = "¿Está seguro que desea eliminar los resultados de este ejercicio antes de la fecha seleccionada?";
$CleanStudentsResultsBeforeDate = "Eliminar todos los resultados antes de la fecha selecionada";
diff --git a/main/lang/spanish/tracking.inc.php b/main/lang/spanish/tracking.inc.php
index 11f7d83753..717c9cf921 100644
--- a/main/lang/spanish/tracking.inc.php
+++ b/main/lang/spanish/tracking.inc.php
@@ -2,6 +2,7 @@
/*
for more information: see languages.txt in the lang folder.
*/
+$AssignedCourses = "Cursos asignados";
$SleepingStudents = "Alumnos inactivos desde unos días";
$SleepingTeachers = "Docentes inactivos desde algunos días";
$InactiveUsers = "Usuarios desactivados";
diff --git a/main/lang/spanish/trad4all.inc.php b/main/lang/spanish/trad4all.inc.php
index ceaf9b0623..a769b34659 100644
--- a/main/lang/spanish/trad4all.inc.php
+++ b/main/lang/spanish/trad4all.inc.php
@@ -2,6 +2,40 @@
/*
for more information: see languages.txt in the lang folder.
*/
+$ActivateAudioRecorder = "Activar la grabación de voz";
+$StartSpeaking = "Hable ahora";
+$InverseHyperbolicTangentAtanh = "Tangente hiperbólica inversa:\tatanh(x)";
+$HyperbolicArctangentArctanh = "Arcotangente hiperbólica:\tarctanh(x)";
+$InverseTangentAtan = "Tangente inversa:\t\tatan(x)";
+$ArctangentArctan = "Arcotangente:\t\t\tarctan(x)";
+$HyperbolicTangentTanh = "Tangente hiperbólica:\t\ttanh(x)";
+$TangentTan = "Tangente:\t\t\ttan(x)";
+$InverseHyperbolicCosineAcosh = "Coseno hiperbólico inverso:\tacosh(x)";
+$HyperbolicArccosineArccosh = "Arcocoseno hiperbólico:\t\tarccosh(x)";
+$InverseCosineAcos = "Coseno inverso:\t\t\tacos(x)";
+$ArccosineArccos = "Arcocoseno:\t\t\tarccos(x)";
+$HyperbolicCosineCosh = "Coseno hiperbólico:\t\tcosh(x)";
+$CosineCos = "Coseno:\t\t\t\tcos(x)";
+$InverseHyperbolicSineAsinh = "Seno hiperbólico inverso:\tasinh(x)";
+$HyperbolicArcsineArcsinh = "Arcoseno hiperbólico:\t\tarcsinh(x)";
+$InverseSineAsin = "Seno inverso:\t\t\tasin(x)";
+$ArcsineArcsin = "Arcoseno:\t\t\tarcsin(x)";
+$HyperbolicSineSinh = "Seno hiperbólico:\t\tsinh(x)";
+$SineSin = "Seno:\t\t\t\tsin(x)";
+$PiNumberPi = "Número pi:\t\t\tpi";
+$ENumberE = "Número e:\t\t\te";
+$LogarithmLog = "Logaritmo:\t\t\tlog(x)";
+$NaturalLogarithmLn = "Logaritmo natural:\t\tln(x)";
+$AbsoluteValueAbs = "Valor absoluto:\t\t\tabs(x)";
+$SquareRootSqrt = "Raíz cuadrada:\t\t\tsqrt(x)";
+$ExponentiationCircumflex = "Potencia:\t\t\t^";
+$DivisionSlash = "División:\t\t\t/";
+$MultiplicationStar = "Multiplicación:\t\t\t*";
+$SubstractionMinus = "Resta:\t\t\t\t-";
+$SummationPlus = "Suma:\t\t\t\t+";
+$NotationList = "Notación para fórmula";
+$SubscribeToSessionRequest = "Solicitud de inscripción a una sesión";
+$PleaseSubscribeMeToSession = "Por favor suscribirme a la sesión";
$SearchActiveSessions = "Buscar sesiones activas";
$UserNameHasDash = "El nombre de usuario no puede contener el caracter '-'";
$IfYouWantOnlyIntegerValuesWriteBothLimitsWithoutDecimals = "Si desea sólo números enteros escriba ambos límites sin decimales";
@@ -9,7 +43,7 @@ $GiveAnswerVariations = "Por favor, escriba cuántos problemas desea generar";
$AnswerVariations = "Problemas a generar";
$GiveFormula = "Por favor, escriba la fórmula";
$Formula = "Fórmula";
-$FormulaExample = "Ejemplo de fórmula";
+$FormulaExample = "Ejemplo de fórmula: sqrt( [x] / [y] ) * ( e ^ ( ln(pi) ) )";
$VariableRanges = "Rangos de las variables";
$ExampleValue = "Valor del rango";
$CalculatedAnswer = "Pregunta calculada";
@@ -1545,7 +1579,7 @@ $HottestCourses = "Cursos más populares";
$SentAtX = "Enviado el: %s";
$dateTimeFormatShort = "%d %b %Y a las %I:%M %p";
$dateTimeFormatShortTimeFirst = "%I:%M %p, %d %b %Y";
-$LoginToVote = "Para votar hay que estar indentificado";
+$LoginToVote = "Debe estar conectado para poder votar";
$DoNotShow = "No mostrar";
$ShowToAdminsOnly = "Mostrar solo a los administradores";
$ShowToAdminsAndTeachers = "Mostrar a los administradores y profesores";
@@ -1646,4 +1680,4 @@ $DataTableSearch = "Buscar";
$HideColumn = "Ocultar columna";
$DisplayColumn = "Mostrar columna";
$LegalAgreementAccepted = "Condiciones legales aceptadas";
-?>
\ No newline at end of file
+?>
diff --git a/main/lang/spanish/userInfo.inc.php b/main/lang/spanish/userInfo.inc.php
index 44a5863f92..2c4b7db07b 100644
--- a/main/lang/spanish/userInfo.inc.php
+++ b/main/lang/spanish/userInfo.inc.php
@@ -159,7 +159,7 @@ $GroupInvitationWasDeny = "Invitación de grupo fue rechazada";
$UserIsSubscribedToThisGroup = "Ahora ya forma parte del grupo";
$DeleteFromGroup = "Dar de baja en el grupo";
$GroupMembers = "Miembros del grupo";
-$Subscribe = "Quiero formar parte de este grupo";
+$Subscribe = "Inscribirme";
$YouAreInvitedToGroupContent = "Queda invitado/a a acceder al contenido del grupo";
$YouAreInvitedToGroup = "Invitación para unirse al grupo";
$ToSubscribeClickInTheLinkBelow = "Para unirse haga clic en el siguiente enlace";
diff --git a/main/newscorm/lp_view.php b/main/newscorm/lp_view.php
index 724edbd80a..d040206461 100755
--- a/main/newscorm/lp_view.php
+++ b/main/newscorm/lp_view.php
@@ -439,6 +439,7 @@ if ($is_allowed_to_edit) {
mode == 'fullscreen') {
diff --git a/main/social/invitations.php b/main/social/invitations.php
index 0029992228..aeac780361 100755
--- a/main/social/invitations.php
+++ b/main/social/invitations.php
@@ -94,7 +94,9 @@ if (is_array($_GET) && count($_GET)>0) {
$social_avatar_block = SocialManager::show_social_avatar_block('invitations');
$social_menu_block = SocialManager::show_social_menu('invitations');
-$social_right_content = '
';
+$social_right_content = '
';
$user_id = api_get_user_id();
$list_get_invitation = SocialManager::get_list_invitation_of_friends_by_user_id($user_id);
@@ -105,15 +107,15 @@ $number_loop = count($list_get_invitation);
$total_invitations = $number_loop + count($list_get_invitation_sent) + count($pending_invitations);
if ($total_invitations == 0 && count($_GET) <= 0) {
- $social_right_content .= '';
+ $social_right_content .= '';
}
if ($number_loop != 0) {
- $social_right_content .= ''.Display::page_subheader(get_lang('InvitationReceived')).'
';
+ $social_right_content .= ''.Display::page_subheader(get_lang('InvitationReceived')).'
';
foreach ($list_get_invitation as $invitation) {
$sender_user_id = $invitation['user_sender_id'];
- $social_right_content .= '';
+ $social_right_content .= '
';
$picture = UserManager::get_user_picture_path_by_id($sender_user_id, 'web', false, true);
$friends_profile = SocialManager::get_picture_user($sender_user_id, $picture['file'], 92);
@@ -123,20 +125,20 @@ if ($number_loop != 0) {
$date = api_convert_and_format_date($invitation['send_date'], DATE_TIME_FORMAT_LONG);
$social_right_content .= '
-
- 
-
-
';
@@ -144,11 +146,11 @@ if ($number_loop != 0) {
}
if (count($list_get_invitation_sent) > 0) {
- $social_right_content .= '
'.Display::page_subheader(get_lang('InvitationSent')).'
';
+ $social_right_content .= '
'.Display::page_subheader(get_lang('InvitationSent')).'
';
foreach ($list_get_invitation_sent as $invitation) {
$sender_user_id = $invitation['user_receiver_id'];
- $social_right_content .= '
';
+ $social_right_content .= '
';
$picture = UserManager::get_user_picture_path_by_id($sender_user_id, 'web', false, true);
$friends_profile = SocialManager::get_picture_user($sender_user_id, $picture['file'], 92);
@@ -162,7 +164,7 @@ if (count($list_get_invitation_sent) > 0) {
-
+
'.api_get_person_name($user_info['firstName'], $user_info['lastName']).'
'. $title.' : '.$content.'
@@ -176,21 +178,28 @@ if (count($list_get_invitation_sent) > 0) {
}
if (count($pending_invitations) > 0) {
- $social_right_content .= Display::page_subheader(get_lang('GroupsWaitingApproval'));
+ $social_right_content .= '
'.Display::page_subheader(get_lang('GroupsWaitingApproval')).'
';
$new_invitation = array();
foreach ($pending_invitations as $invitation) {
$picture = GroupPortalManager::get_picture_group($invitation['id'], $invitation['picture_uri'],80);
- $img = '

';
+ $img = '

';
$invitation['picture_uri'] = '
'.$img.'';
- $invitation['name'] = '
'.cut($invitation['name'],120,true).'';
- $invitation['join'] = '
'.
- Display::return_icon('accept_invitation.png', get_lang('AcceptInvitation')).' '.get_lang('AcceptInvitation').'';
- $invitation['deny'] = '
'.
- Display::return_icon('denied_invitation.png', get_lang('DenyInvitation')).' '.get_lang('DenyInvitation').'';
+ $invitation['name'] = '
';
+ $invitation['join'] = '
'.get_lang('AcceptInvitation').'';
+ $invitation['deny'] = '
'.get_lang('DenyInvitation').'';
$invitation['description'] = cut($invitation['description'],220,true);
$new_invitation[]=$invitation;
+
+ $social_right_content .= '
+
'.$invitation['picture_uri'].'
+
'
+ .$invitation['name'].'
'.$invitation['description'].'
+
'.$invitation['join'].' '.$invitation['deny'].'
+
+
+ ';
}
- $social_right_content .= Display::return_sortable_grid(
+ /*$social_right_content .= Display::return_sortable_grid(
'waiting_user',
array(),
$new_invitation,
@@ -198,7 +207,7 @@ if (count($pending_invitations) > 0) {
array(),
false,
array(true, true, true, false, false, true, true, true, true)
- );
+ );*/
}
$tpl = new Template(null);
diff --git a/main/template/default/layout/main_header.tpl b/main/template/default/layout/main_header.tpl
index 5d82915e7e..e6d00cdec1 100755
--- a/main/template/default/layout/main_header.tpl
+++ b/main/template/default/layout/main_header.tpl
@@ -59,16 +59,17 @@
{% if plugin_header_main %}
diff --git a/main/template/default/layout/social_layout.tpl b/main/template/default/layout/social_layout.tpl
index e9c5781c4d..e4cc9ec44a 100755
--- a/main/template/default/layout/social_layout.tpl
+++ b/main/template/default/layout/social_layout.tpl
@@ -10,8 +10,13 @@
+
{{ social_right_content}}
+
diff --git a/plugin/tour/config/tour.json b/plugin/tour/config/tour.json
index 5dc00f15ff..4925cffef5 100644
--- a/plugin/tour/config/tour.json
+++ b/plugin/tour/config/tour.json
@@ -10,10 +10,6 @@
"elementSelector": ".navbar",
"message": "TheNavbarStep"
},
- {
- "elementSelector": "div.span3:nth-child(1)",
- "message": "TheRightPanelStep"
- },
{
"elementSelector": "#user_image_block",
"message": "TheUserImageBlock"
@@ -118,4 +114,4 @@
}
]
}
-]
\ No newline at end of file
+]
diff --git a/plugin/tour/intro.js/introjs.min.css b/plugin/tour/intro.js/introjs.min.css
index 0e43a37066..382a339ace 100644
--- a/plugin/tour/intro.js/introjs.min.css
+++ b/plugin/tour/intro.js/introjs.min.css
@@ -1 +1,349 @@
-.introjs-overlay{position:absolute;z-index:999999;background-color:#000;opacity:0;background:-moz-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);background:-webkit-gradient(radial,center center,0px,center center,100%,color-stop(0%,rgba(0,0,0,0.4)),color-stop(100%,rgba(0,0,0,0.9)));background:-webkit-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);background:-o-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);background:-ms-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);background:radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#66000000',endColorstr='#e6000000',GradientType=1);-ms-filter:"alpha(opacity=50)";filter:alpha(opacity=50);-webkit-transition:all .3s ease-out;-moz-transition:all .3s ease-out;-ms-transition:all .3s ease-out;-o-transition:all .3s ease-out;transition:all .3s ease-out}.introjs-fixParent{z-index:auto !important;opacity:1.0 !important}.introjs-showElement,tr.introjs-showElement>td,tr.introjs-showElement>th{z-index:9999999 !important}.introjs-relativePosition,tr.introjs-showElement>td,tr.introjs-showElement>th{position:relative}.introjs-helperLayer{position:absolute;z-index:9999998;background-color:#FFF;background-color:rgba(255,255,255,.9);border:1px solid #777;border:1px solid rgba(0,0,0,.5);border-radius:4px;box-shadow:0 2px 15px rgba(0,0,0,.4);-webkit-transition:all .3s ease-out;-moz-transition:all .3s ease-out;-ms-transition:all .3s ease-out;-o-transition:all .3s ease-out;transition:all .3s ease-out}.introjs-helperNumberLayer{position:absolute;top:-16px;left:-16px;z-index:9999999999 !important;padding:2px;font-family:Arial,verdana,tahoma;font-size:13px;font-weight:bold;color:white;text-align:center;text-shadow:1px 1px 1px rgba(0,0,0,.3);background:#ff3019;background:-webkit-linear-gradient(top,#ff3019 0,#cf0404 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ff3019),color-stop(100%,#cf0404));background:-moz-linear-gradient(top,#ff3019 0,#cf0404 100%);background:-ms-linear-gradient(top,#ff3019 0,#cf0404 100%);background:-o-linear-gradient(top,#ff3019 0,#cf0404 100%);background:linear-gradient(to bottom,#ff3019 0,#cf0404 100%);width:20px;height:20px;line-height:20px;border:3px solid white;border-radius:50%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3019',endColorstr='#cf0404',GradientType=0);filter:progid:DXImageTransform.Microsoft.Shadow(direction=135,strength=2,color=ff0000);box-shadow:0 2px 5px rgba(0,0,0,.4)}.introjs-arrow{border:5px solid white;content:'';position:absolute}.introjs-arrow.top{top:-10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:white;border-left-color:transparent}.introjs-arrow.top-right{top:-10px;right:10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:white;border-left-color:transparent}.introjs-arrow.top-middle{top:-10px;left:50%;margin-left:-5px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:white;border-left-color:transparent}.introjs-arrow.right{right:-10px;top:10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent;border-left-color:white}.introjs-arrow.bottom{bottom:-10px;border-top-color:white;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.introjs-arrow.left{left:-10px;top:10px;border-top-color:transparent;border-right-color:white;border-bottom-color:transparent;border-left-color:transparent}.introjs-tooltip{position:absolute;padding:10px;background-color:white;min-width:200px;max-width:300px;border-radius:3px;box-shadow:0 1px 10px rgba(0,0,0,.4);-webkit-transition:opacity .1s ease-out;-moz-transition:opacity .1s ease-out;-ms-transition:opacity .1s ease-out;-o-transition:opacity .1s ease-out;transition:opacity .1s ease-out}.introjs-tooltipbuttons{text-align:right}.introjs-button{position:relative;overflow:visible;display:inline-block;padding:.3em .8em;border:1px solid #d4d4d4;margin:0;text-decoration:none;text-shadow:1px 1px 0 #fff;font:11px/normal sans-serif;color:#333;white-space:nowrap;cursor:pointer;outline:0;background-color:#ececec;background-image:-webkit-gradient(linear,0 0,0 100%,from(#f4f4f4),to(#ececec));background-image:-moz-linear-gradient(#f4f4f4,#ececec);background-image:-o-linear-gradient(#f4f4f4,#ececec);background-image:linear-gradient(#f4f4f4,#ececec);-webkit-background-clip:padding;-moz-background-clip:padding;-o-background-clip:padding-box;-webkit-border-radius:.2em;-moz-border-radius:.2em;border-radius:.2em;zoom:1;*display:inline;margin-top:10px}.introjs-button:hover{border-color:#bcbcbc;text-decoration:none;box-shadow:0 1px 1px #e3e3e3}.introjs-button:focus,.introjs-button:active{background-image:-webkit-gradient(linear,0 0,0 100%,from(#ececec),to(#f4f4f4));background-image:-moz-linear-gradient(#ececec,#f4f4f4);background-image:-o-linear-gradient(#ececec,#f4f4f4);background-image:linear-gradient(#ececec,#f4f4f4)}.introjs-button::-moz-focus-inner{padding:0;border:0}.introjs-skipbutton{margin-right:5px;color:#7a7a7a}.introjs-prevbutton{-webkit-border-radius:.2em 0 0 .2em;-moz-border-radius:.2em 0 0 .2em;border-radius:.2em 0 0 .2em;border-right:0}.introjs-nextbutton{-webkit-border-radius:0 .2em .2em 0;-moz-border-radius:0 .2em .2em 0;border-radius:0 .2em .2em 0}.introjs-disabled,.introjs-disabled:hover,.introjs-disabled:focus{color:#9a9a9a;border-color:#d4d4d4;box-shadow:none;cursor:default;background-color:#f4f4f4;background-image:none;text-decoration:none}.introjs-bullets{text-align:center}.introjs-bullets ul{clear:both;margin:15px auto 0;padding:0;display:inline-block}.introjs-bullets ul li{list-style:none;float:left;margin:0 2px}.introjs-bullets ul li a{display:block;width:6px;height:6px;background:#ccc;border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px;text-decoration:none}.introjs-bullets ul li a:hover{background:#999}.introjs-bullets ul li a.active{background:#999}.introjsFloatingElement{position:absolute;height:0;width:0;left:50%;top:50%}
\ No newline at end of file
+.introjs-overlay{
+ position:absolute;
+ z-index:999999;
+ background-color:#000;
+ opacity:0;
+ background:-moz-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);
+ background:-webkit-gradient(radial,center center,0px,center center,100%,color-stop(0%,rgba(0,0,0,0.4)),color-stop(100%,rgba(0,0,0,0.9)));
+ background:-webkit-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);background:-o-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);background:-ms-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);background:radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);
+ filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#66000000',endColorstr='#e6000000',GradientType=1);-ms-filter:"alpha(opacity=50)";
+ filter:alpha(opacity=50);-webkit-transition:all .3s ease-out;-moz-transition:all .3s ease-out;-ms-transition:all .3s ease-out;-o-transition:all .3s ease-out;transition:all .3s ease-out
+}
+.introjs-fixParent {
+ z-index: auto !important;
+ opacity: 1.0 !important;
+}
+.introjs-showElement, tr.introjs-showElement>td, tr.introjs-showElement>th {
+ z-index: 9999999 !important;
+}
+.introjs-relativePosition, tr.introjs-showElement>td, tr.introjs-showElement>th {
+ position: relative;
+}
+.introjs-helperLayer {
+ position: absolute;
+ z-index: 9999998;
+ background-color: #FFF;
+ background-color: rgba(255, 255, 255, .9);
+ border: 1px solid #777;
+ border: 1px solid rgba(0, 0, 0, .5);
+ border-radius: 4px;
+ box-shadow: 0 2px 15px rgba(0, 0, 0, .4);
+ -webkit-transition: all .3s ease-out;
+ -moz-transition: all .3s ease-out;
+ -ms-transition: all .3s ease-out;
+ -o-transition: all .3s ease-out;
+ transition: all .3s ease-out;
+}
+.introjs-helperNumberLayer {
+ position: absolute;
+ top: -16px;
+ left: -16px;
+ z-index: 9999999999 !important;
+ padding: 2px;
+ font-family: Arial, verdana, tahoma;
+ font-size: 13px;
+ font-weight: bold;
+ color: white;
+ text-align: center;
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, .3);
+ background: #ff3019;
+ background: -webkit-linear-gradient(top, #ff3019 0, #cf0404 100%);
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ff3019), color-stop(100%, #cf0404));
+ background: -moz-linear-gradient(top, #ff3019 0, #cf0404 100%);
+ background: -ms-linear-gradient(top, #ff3019 0, #cf0404 100%);
+ background: -o-linear-gradient(top, #ff3019 0, #cf0404 100%);
+ background: linear-gradient(to bottom, #ff3019 0, #cf0404 100%);
+ width: 20px;
+ height: 20px;
+ line-height: 20px;
+ border: 3px solid white;
+ border-radius: 50%;
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3019', endColorstr='#cf0404', GradientType=0);
+ filter: progid:DXImageTransform.Microsoft.Shadow(direction=135, strength=2, color=ff0000);
+ box-shadow: 0 2px 5px rgba(0, 0, 0, .4);
+}
+.introjs-arrow {
+ border: 5px solid white;
+ content: '';
+ position: absolute;
+}
+.introjs-arrow.top {
+ top: -10px;
+ border-top-color: transparent;
+ border-right-color: transparent;
+ border-bottom-color: white;
+ border-left-color: transparent;
+}
+.introjs-arrow.top-right {
+ top: -10px;
+ right: 10px;
+ border-top-color: transparent;
+ border-right-color: transparent;
+ border-bottom-color: white;
+ border-left-color: transparent;
+}
+.introjs-arrow.top-middle {
+ top: -10px;
+ left: 50%;
+ margin-left: -5px;
+ border-top-color: transparent;
+ border-right-color: transparent;
+ border-bottom-color: white;
+ border-left-color: transparent;
+}
+.introjs-arrow.right {
+ right: -10px;
+ top: 10px;
+ border-top-color: transparent;
+ border-right-color: transparent;
+ border-bottom-color: transparent;
+ border-left-color: white;
+}
+.introjs-arrow.bottom {
+ bottom: -10px;
+ border-top-color: white;
+ border-right-color: transparent;
+ border-bottom-color: transparent;
+ border-left-color: transparent;
+}
+.introjs-arrow.left {
+ left: -10px;
+ top: 10px;
+ border-top-color: transparent;
+ border-right-color: white;
+ border-bottom-color: transparent;
+ border-left-color: transparent;
+}
+.introjs-tooltip {
+ position: absolute;
+ padding: 10px;
+ background-color: white;
+ min-width: 200px;
+ max-width: 300px;
+ border-radius: 3px;
+ box-shadow: 0 1px 10px rgba(0, 0, 0, .4);
+ -webkit-transition: opacity .1s ease-out;
+ -moz-transition: opacity .1s ease-out;
+ -ms-transition: opacity .1s ease-out;
+ -o-transition: opacity .1s ease-out;
+ transition: opacity .1s ease-out;
+}
+.introjs-tooltipbuttons {
+ text-align: right;
+}
+.introjs-button {
+ position: relative;
+ overflow: visible;
+ display: inline-block;
+ padding: .3em .8em;
+ border: 1px solid #d4d4d4;
+ margin: 0;
+ text-decoration: none;
+ text-shadow: 1px 1px 0 #fff;
+ font: 11px/normal sans-serif;
+ color: #333;
+ white-space: nowrap;
+ cursor: pointer;
+ outline: 0;
+ background-color: #ececec;
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f4f4f4), to(#ececec));
+ background-image: -moz-linear-gradient(#f4f4f4, #ececec);
+ background-image: -o-linear-gradient(#f4f4f4, #ececec);
+ background-image: linear-gradient(#f4f4f4, #ececec);
+ -webkit-background-clip: padding;
+ -moz-background-clip: padding;
+ -o-background-clip: padding-box;
+ -webkit-border-radius: .2em;
+ -moz-border-radius: .2em;
+ border-radius: .2em;
+ zoom: 1;
+ *display: inline;
+ margin-top: 10px;
+}
+.introjs-button:hover {
+ border-color: #bcbcbc;
+ text-decoration: none;
+ box-shadow: 0 1px 1px #e3e3e3;
+}
+.introjs-button:focus, .introjs-button:active {
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ececec), to(#f4f4f4));
+ background-image: -moz-linear-gradient(#ececec, #f4f4f4);
+ background-image: -o-linear-gradient(#ececec, #f4f4f4);
+ background-image: linear-gradient(#ececec, #f4f4f4);
+}
+.introjs-button::-moz-focus-inner {
+ padding: 0;
+ border: 0;
+}
+.introjs-skipbutton {
+ margin-right: 5px;
+ color: #7a7a7a;
+}
+.introjs-prevbutton {
+ -webkit-border-radius: .2em 0 0 .2em;
+ -moz-border-radius: .2em 0 0 .2em;
+ border-radius: .2em 0 0 .2em;
+ border-right: 0;
+}
+.introjs-nextbutton {
+ -webkit-border-radius: 0 .2em .2em 0;
+ -moz-border-radius: 0 .2em .2em 0;
+ border-radius: 0 .2em .2em 0;
+}
+.introjs-disabled, .introjs-disabled:hover, .introjs-disabled:focus {
+ color: #9a9a9a;
+ border-color: #d4d4d4;
+ box-shadow: none;
+ cursor: default;
+ background-color: #f4f4f4;
+ background-image: none;
+ text-decoration: none;
+}
+.introjs-bullets {
+ text-align: center;
+}
+.introjs-bullets ul {
+ clear: both;
+ margin: 15px auto 0;
+ padding: 0;
+ display: inline-block;
+}
+.introjs-bullets ul li {
+ list-style: none;
+ float: left;
+ margin: 0 2px;
+}
+.introjs-bullets ul li a {
+ display: block;
+ width: 6px;
+ height: 6px;
+ background: #ccc;
+ border-radius: 10px;
+ -moz-border-radius: 10px;
+ -webkit-border-radius: 10px;
+ text-decoration: none;
+}
+.introjs-bullets ul li a:hover {
+ background: #999;
+}
+.introjs-bullets ul li a.active {
+ background: #999;
+}
+.introjsFloatingElement {
+ position: absolute;
+ height: 0;
+ width: 0;
+ left: 50%;
+ top: 50%
+}
+@font-face {
+ font-family: 'Lato';
+ font-style: normal;
+ font-weight: 900;
+
+ src: url('../fonts/lato-black.eot');
+ src: url('../fonts/lato-black.eot?#iefix') format('embedded-opentype'), url('../fonts/lato/lato-black.woff') format('woff'), url('../fonts/lato/lato-black.ttf') format('truetype'), url('../fonts/lato/lato-black.svg#latoblack') format('svg');
+}
+@font-face {
+ font-family: 'Lato';
+ font-style: normal;
+ font-weight: bold;
+
+ src: url('../fonts/lato-bold.eot');
+ src: url('../fonts/lato-bold.eot?#iefix') format('embedded-opentype'), url('../fonts/lato/lato-bold.woff') format('woff'), url('../fonts/lato/lato-bold.ttf') format('truetype'), url('../fonts/lato/lato-bold.svg#latobold') format('svg');
+}
+@font-face {
+ font-family: 'Lato';
+ font-style: italic;
+ font-weight: bold;
+
+ src: url('../fonts/lato-bolditalic.eot');
+ src: url('../fonts/lato-bolditalic.eot?#iefix') format('embedded-opentype'), url('../fonts/lato/lato-bolditalic.woff') format('woff'), url('../fonts/lato/lato-bolditalic.ttf') format('truetype'), url('../fonts/lato/lato-bolditalic.svg#latobold-italic') format('svg');
+}
+@font-face {
+ font-family: 'Lato';
+ font-style: italic;
+ font-weight: normal;
+
+ src: url('../fonts/lato-italic.eot');
+ src: url('../fonts/lato-italic.eot?#iefix') format('embedded-opentype'), url('../fonts/lato/lato-italic.woff') format('woff'), url('../fonts/lato/lato-italic.ttf') format('truetype'), url('../fonts/lato/lato-italic.svg#latoitalic') format('svg');
+}
+@font-face {
+ font-family: 'Lato';
+ font-style: normal;
+ font-weight: 300;
+
+ src: url('../fonts/lato-light.eot');
+ src: url('../fonts/lato-light.eot?#iefix') format('embedded-opentype'), url('../fonts/lato/lato-light.woff') format('woff'), url('../fonts/lato/lato-light.ttf') format('truetype'), url('../fonts/lato/lato-light.svg#latolight') format('svg');
+}
+@font-face {
+ font-family: 'Lato';
+ font-style: normal;
+ font-weight: normal;
+
+ src: url('../fonts/lato-regular.eot');
+ src: url('../fonts/lato-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/lato/lato-regular.woff') format('woff'), url('../fonts/lato/lato-regular.ttf') format('truetype'), url('../fonts/lato/lato-regular.svg#latoregular') format('svg');
+}
+
+.tour-warning {
+ color: #fff;
+ font-weight: 400;
+ background-color: #E95D4E;
+ border: none;
+ -webkit-border-radius: 10px;
+ -moz-border-radius: 10px;
+ border-radius: 10px;
+ font-size: 18px;
+ line-height: 1.72222;
+ padding-left: 1em;
+ padding-right: 1em;
+ border-bottom: 2px solid #C0392B;
+ border-right: 2px solid #C0392B;
+ font-family: "Lato",Helvetica,Arial,sans-serif;
+}
+.tour-warning img{
+ padding-right: .5em;
+}
+.tour-warning:hover,
+.tour-warning.hover,
+.tour-warning:focus,
+.tour-warning:active,
+.tour-warning.active,
+.open > .dropdown-toggle.btn-warning {
+ color: #fff;
+ background-color: #EC7063;
+ border-bottom: 2px solid #C0392B;
+ border-right: 2px solid #C0392B;
+}
+.tour-warning:active,
+.tour-warning.active,
+.open > .dropdown-toggle.tour-warning {
+ background: #EC7063;
+ border-bottom: 2px solid #C0392B;
+ border-right: 2px solid #C0392B;
+}
+.tour-warning.disabled,
+.tour-warning[disabled],
+fieldset[disabled] .tour-warning,
+.tour-warning.disabled:hover,
+.tour-warning[disabled]:hover,
+fieldset[disabled] .tour-warning:hover,
+.tour-warning.disabled.hover,
+.tour-warning[disabled].hover,
+fieldset[disabled] .tour-warning.hover,
+.tour-warning.disabled:focus,
+.tour-warning[disabled]:focus,
+fieldset[disabled] .tour-warning:focus,
+.tour-warning.disabled:active,
+.tour-warning[disabled]:active,
+fieldset[disabled] .tour-warning:active,
+.tour-warning.disabled.active,
+.tour-warning[disabled].active,
+fieldset[disabled] .tour-warning.active {
+ background-color: #bdc3c7;
+ border-color: #f1c40f;
+}
+.tour-warning .badge {
+ color: #f1c40f;
+ background-color: #fff;
+}
\ No newline at end of file
diff --git a/plugin/tour/resources/fonts/lato-black.eot b/plugin/tour/resources/fonts/lato-black.eot
new file mode 100644
index 0000000000..a571b9a5b5
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-black.eot differ
diff --git a/plugin/tour/resources/fonts/lato-black.svg b/plugin/tour/resources/fonts/lato-black.svg
new file mode 100644
index 0000000000..cab16d398f
--- /dev/null
+++ b/plugin/tour/resources/fonts/lato-black.svg
@@ -0,0 +1,4691 @@
+
+
+
\ No newline at end of file
diff --git a/plugin/tour/resources/fonts/lato-black.ttf b/plugin/tour/resources/fonts/lato-black.ttf
new file mode 100644
index 0000000000..d52a2e44f5
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-black.ttf differ
diff --git a/plugin/tour/resources/fonts/lato-black.woff b/plugin/tour/resources/fonts/lato-black.woff
new file mode 100644
index 0000000000..dc1cc18391
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-black.woff differ
diff --git a/plugin/tour/resources/fonts/lato-bold.eot b/plugin/tour/resources/fonts/lato-bold.eot
new file mode 100644
index 0000000000..0028ce70d2
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-bold.eot differ
diff --git a/plugin/tour/resources/fonts/lato-bold.svg b/plugin/tour/resources/fonts/lato-bold.svg
new file mode 100644
index 0000000000..468cd2d772
--- /dev/null
+++ b/plugin/tour/resources/fonts/lato-bold.svg
@@ -0,0 +1,5085 @@
+
+
+
\ No newline at end of file
diff --git a/plugin/tour/resources/fonts/lato-bold.ttf b/plugin/tour/resources/fonts/lato-bold.ttf
new file mode 100644
index 0000000000..9367582015
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-bold.ttf differ
diff --git a/plugin/tour/resources/fonts/lato-bold.woff b/plugin/tour/resources/fonts/lato-bold.woff
new file mode 100644
index 0000000000..239b427e42
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-bold.woff differ
diff --git a/plugin/tour/resources/fonts/lato-bolditalic.eot b/plugin/tour/resources/fonts/lato-bolditalic.eot
new file mode 100644
index 0000000000..389bb123ce
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-bolditalic.eot differ
diff --git a/plugin/tour/resources/fonts/lato-bolditalic.svg b/plugin/tour/resources/fonts/lato-bolditalic.svg
new file mode 100644
index 0000000000..406f521a49
--- /dev/null
+++ b/plugin/tour/resources/fonts/lato-bolditalic.svg
@@ -0,0 +1,4514 @@
+
+
+
\ No newline at end of file
diff --git a/plugin/tour/resources/fonts/lato-bolditalic.ttf b/plugin/tour/resources/fonts/lato-bolditalic.ttf
new file mode 100644
index 0000000000..e686a10591
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-bolditalic.ttf differ
diff --git a/plugin/tour/resources/fonts/lato-bolditalic.woff b/plugin/tour/resources/fonts/lato-bolditalic.woff
new file mode 100644
index 0000000000..52c1d895e2
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-bolditalic.woff differ
diff --git a/plugin/tour/resources/fonts/lato-italic.eot b/plugin/tour/resources/fonts/lato-italic.eot
new file mode 100644
index 0000000000..b1d7eeffd8
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-italic.eot differ
diff --git a/plugin/tour/resources/fonts/lato-italic.svg b/plugin/tour/resources/fonts/lato-italic.svg
new file mode 100644
index 0000000000..18846f3e3d
--- /dev/null
+++ b/plugin/tour/resources/fonts/lato-italic.svg
@@ -0,0 +1,4514 @@
+
+
+
\ No newline at end of file
diff --git a/plugin/tour/resources/fonts/lato-italic.ttf b/plugin/tour/resources/fonts/lato-italic.ttf
new file mode 100644
index 0000000000..b8beadbf2c
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-italic.ttf differ
diff --git a/plugin/tour/resources/fonts/lato-italic.woff b/plugin/tour/resources/fonts/lato-italic.woff
new file mode 100644
index 0000000000..e8476f9175
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-italic.woff differ
diff --git a/plugin/tour/resources/fonts/lato-light.eot b/plugin/tour/resources/fonts/lato-light.eot
new file mode 100644
index 0000000000..31d0660818
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-light.eot differ
diff --git a/plugin/tour/resources/fonts/lato-light.svg b/plugin/tour/resources/fonts/lato-light.svg
new file mode 100644
index 0000000000..47df1215a4
--- /dev/null
+++ b/plugin/tour/resources/fonts/lato-light.svg
@@ -0,0 +1,4691 @@
+
+
+
\ No newline at end of file
diff --git a/plugin/tour/resources/fonts/lato-light.ttf b/plugin/tour/resources/fonts/lato-light.ttf
new file mode 100644
index 0000000000..3e0bf3e74b
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-light.ttf differ
diff --git a/plugin/tour/resources/fonts/lato-light.woff b/plugin/tour/resources/fonts/lato-light.woff
new file mode 100644
index 0000000000..1b23b5ecc3
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-light.woff differ
diff --git a/plugin/tour/resources/fonts/lato-regular.eot b/plugin/tour/resources/fonts/lato-regular.eot
new file mode 100644
index 0000000000..519ae5d8ab
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-regular.eot differ
diff --git a/plugin/tour/resources/fonts/lato-regular.svg b/plugin/tour/resources/fonts/lato-regular.svg
new file mode 100644
index 0000000000..7a51d423d6
--- /dev/null
+++ b/plugin/tour/resources/fonts/lato-regular.svg
@@ -0,0 +1,4691 @@
+
+
+
\ No newline at end of file
diff --git a/plugin/tour/resources/fonts/lato-regular.ttf b/plugin/tour/resources/fonts/lato-regular.ttf
new file mode 100644
index 0000000000..83866f790d
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-regular.ttf differ
diff --git a/plugin/tour/resources/fonts/lato-regular.woff b/plugin/tour/resources/fonts/lato-regular.woff
new file mode 100644
index 0000000000..5ab1771f2d
Binary files /dev/null and b/plugin/tour/resources/fonts/lato-regular.woff differ
diff --git a/plugin/tour/resources/tour-chamilo.png b/plugin/tour/resources/tour-chamilo.png
new file mode 100644
index 0000000000..08f21201e0
Binary files /dev/null and b/plugin/tour/resources/tour-chamilo.png differ
diff --git a/plugin/tour/views/script.tpl b/plugin/tour/views/script.tpl
index bf3511773a..e7bd328b3e 100644
--- a/plugin/tour/views/script.tpl
+++ b/plugin/tour/views/script.tpl
@@ -44,8 +44,8 @@
});
$btnStart = $('