diff --git a/css/swad16.94.1.css b/css/swad16.94.1.css
index adc766495..622f8bf71 100644
--- a/css/swad16.94.1.css
+++ b/css/swad16.94.1.css
@@ -369,14 +369,8 @@ a:hover /* Default ==> underlined */
}
}
-.BC_SEMIOFF
- {
- opacity:0.5;
- }
-.BC_OFF
- {
- opacity:0.25;
- }
+.BC_SEMIOFF {opacity:0.67;}
+.BC_OFF {opacity:0.33;}
.BC_WHITE {color:#707070;}
.BC_GREY {color:#FFB42E;}
diff --git a/swad_changelog.h b/swad_changelog.h
index 9dd0ec8d4..e018272a4 100644
--- a/swad_changelog.h
+++ b/swad_changelog.h
@@ -185,13 +185,15 @@
/****************************** Public constants *****************************/
/*****************************************************************************/
-#define Log_PLATFORM_VERSION "SWAD 16.94.1 (2016-12-10)"
+#define Log_PLATFORM_VERSION "SWAD 16.94.2 (2016-12-11)"
#define CSS_FILE "swad16.94.1.css"
#define JS_FILE "swad16.90.2.js"
// Number of lines (includes comments but not blank lines) has been got with the following command:
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*?.h sql/swad*.sql | tail -1
/*
+ Version 16.94.2: Dec 11, 2016 Contextual help on calendar.
+ Changes in exam announcements. (210421 lines)
Version 16.94.1: Dec 10, 2016 Fixed bug in layout of breadcrumb. (210417 lines)
Version 16.94: Dec 10, 2016 Changes in layout for responsive design. (210421 lines)
Version 16.93: Dec 10, 2016 Changes in layout of heading rows and tabs. (210308 lines)
diff --git a/swad_exam.c b/swad_exam.c
index c2b93e76e..091d4ed42 100644
--- a/swad_exam.c
+++ b/swad_exam.c
@@ -449,8 +449,9 @@ void Exa_GetDateToHighlight (void)
static void Exa_ListExamAnnouncements (Exa_TypeViewExamAnnouncement_t TypeViewExamAnnouncement)
{
- extern const char *Txt_All_announcements_of_exam;
- extern const char *Txt_Announcements_of_exam;
+ extern const char *Hlp_ASSESSMENT_Announcements;
+ extern const char *Txt_All_announcements_of_exams;
+ extern const char *Txt_Announcements_of_exams;
extern const char *Txt_No_announcements_of_exams_of_X;
char Query[512];
MYSQL_RES *mysql_res;
@@ -551,11 +552,11 @@ static void Exa_ListExamAnnouncements (Exa_TypeViewExamAnnouncement_t TypeViewEx
/***** Start frame *****/
Lay_StartRoundFrame (NULL,
(Gbl.ExamAnnouncements.HighlightExaCod > 0 ||
- Gbl.ExamAnnouncements.HighlightDate[0]) ? Txt_All_announcements_of_exam :
- Txt_Announcements_of_exam,
+ Gbl.ExamAnnouncements.HighlightDate[0]) ? Txt_All_announcements_of_exams :
+ Txt_Announcements_of_exams,
ICanEdit ? Exa_PutIconToCreateNewExamAnnouncement :
NULL,
- NULL);
+ Hlp_ASSESSMENT_Announcements);
/***** The result of the query may be empty *****/
if (!NumExaAnns)
@@ -882,11 +883,13 @@ static void Exa_GetDataExamAnnouncementFromDB (long ExaCod)
static void Exa_ShowExamAnnouncement (long ExaCod,Exa_TypeViewExamAnnouncement_t TypeViewExamAnnouncement)
{
+ extern const char *Hlp_ASSESSMENT_Announcements_new_announcement;
+ extern const char *Hlp_ASSESSMENT_Announcements_edit_announcement;
extern const char *Txt_YEAR_OF_DEGREE[1+Deg_MAX_YEARS_PER_DEGREE];
extern const char *The_ClassForm[The_NUM_THEMES];
extern const char *Txt_EXAM_ANNOUNCEMENT;
extern const char *Txt_EXAM_ANNOUNCEMENT_Course;
- extern const char *Txt_EXAM_ANNOUNCEMENT_Year;
+ extern const char *Txt_EXAM_ANNOUNCEMENT_Year_or_semester;
extern const char *Txt_EXAM_ANNOUNCEMENT_Session;
extern const char *Txt_EXAM_ANNOUNCEMENT_Exam_date;
extern const char *Txt_EXAM_ANNOUNCEMENT_Start_time;
@@ -934,7 +937,9 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_TypeViewExamAnnouncement_t
Lay_StartRoundFrame ("625px",NULL,
TypeViewExamAnnouncement == Exa_NORMAL_VIEW ? Exa_PutIconsExamAnnouncement :
NULL,
- NULL);
+ TypeViewExamAnnouncement == Exa_FORM_VIEW ? ((ExaCod > 0) ? Hlp_ASSESSMENT_Announcements_edit_announcement :
+ Hlp_ASSESSMENT_Announcements_new_announcement) :
+ NULL);
if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{
@@ -994,10 +999,10 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_TypeViewExamAnnouncement_t
/***** Name of the course *****/
fprintf (Gbl.F.Out,"
" \
- ""
+ " | "
"%s:"
" | " \
- "",
+ " | ",
StyleForm,
Txt_EXAM_ANNOUNCEMENT_Course,
StyleNormal);
@@ -1012,14 +1017,14 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_TypeViewExamAnnouncement_t
fprintf (Gbl.F.Out," | " \
"
");
- /***** Year (N.A., 1º, 2º, 3º, 4º, 5º...) *****/
+ /***** Year/semester (N.A., 1º, 2º, 3º, 4º, 5º...) *****/
fprintf (Gbl.F.Out,"" \
- ""
+ " | "
"%s:"
" | " \
- "",
+ " | ",
StyleForm,
- Txt_EXAM_ANNOUNCEMENT_Year,
+ Txt_EXAM_ANNOUNCEMENT_Year_or_semester,
StyleNormal);
if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{
@@ -1042,10 +1047,10 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_TypeViewExamAnnouncement_t
/***** Exam session *****/
fprintf (Gbl.F.Out," |
" \
- ""
+ " | "
"%s:"
" | " \
- "",
+ " | ",
StyleForm,
Txt_EXAM_ANNOUNCEMENT_Session,
StyleNormal);
@@ -1060,14 +1065,14 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_TypeViewExamAnnouncement_t
/***** Date of the exam *****/
fprintf (Gbl.F.Out," |
" \
- ""
+ " | "
"%s:"
" | ",
StyleForm,
Txt_EXAM_ANNOUNCEMENT_Exam_date);
if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{
- fprintf (Gbl.F.Out,"");
+ fprintf (Gbl.F.Out," | ");
Dat_WriteFormDate (Gbl.ExamAnnouncements.ExaDat.ExamDate.Year < Gbl.Now.Date.Year ? Gbl.ExamAnnouncements.ExaDat.ExamDate.Year :
Gbl.Now.Date.Year,
Gbl.Now.Date.Year + 1,"Exam",
@@ -1078,7 +1083,7 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_TypeViewExamAnnouncement_t
else
{
Dat_ConvDateToDateStr (&Gbl.ExamAnnouncements.ExaDat.ExamDate,StrExamDate);
- fprintf (Gbl.F.Out," | "
+ fprintf (Gbl.F.Out," | "
"%s"
" | ",
StyleNormal,StrExamDate);
@@ -1087,10 +1092,10 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_TypeViewExamAnnouncement_t
/***** Start time *****/
fprintf (Gbl.F.Out,"
" \
- ""
+ " | "
"%s:"
" | " \
- "",
+ " | ",
StyleForm,
Txt_EXAM_ANNOUNCEMENT_Start_time,
StyleNormal);
@@ -1132,10 +1137,10 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_TypeViewExamAnnouncement_t
/***** Approximate duration of the exam *****/
fprintf (Gbl.F.Out," |
" \
- ""
+ " | "
"%s:"
" | " \
- "",
+ " | ",
StyleForm,
Txt_EXAM_ANNOUNCEMENT_Approximate_duration,
StyleNormal);
@@ -1468,7 +1473,7 @@ static void Exa_GetNotifContentExamAnnouncement (char **ContentStr)
extern const char *Txt_Degree;
extern const char *Txt_YEAR_OF_DEGREE[1+Deg_MAX_YEARS_PER_DEGREE];
extern const char *Txt_EXAM_ANNOUNCEMENT_Course;
- extern const char *Txt_EXAM_ANNOUNCEMENT_Year;
+ extern const char *Txt_EXAM_ANNOUNCEMENT_Year_or_semester;
extern const char *Txt_EXAM_ANNOUNCEMENT_Session;
extern const char *Txt_EXAM_ANNOUNCEMENT_Exam_date;
extern const char *Txt_EXAM_ANNOUNCEMENT_Start_time;
@@ -1523,7 +1528,7 @@ static void Exa_GetNotifContentExamAnnouncement (char **ContentStr)
Txt_Institution,Ins.FullName,
Txt_Degree,Deg.FullName,
Txt_EXAM_ANNOUNCEMENT_Course,Gbl.ExamAnnouncements.ExaDat.CrsFullName,
- Txt_EXAM_ANNOUNCEMENT_Year,Txt_YEAR_OF_DEGREE[Gbl.ExamAnnouncements.ExaDat.Year],
+ Txt_EXAM_ANNOUNCEMENT_Year_or_semester,Txt_YEAR_OF_DEGREE[Gbl.ExamAnnouncements.ExaDat.Year],
Txt_EXAM_ANNOUNCEMENT_Session,Gbl.ExamAnnouncements.ExaDat.Session,
Txt_EXAM_ANNOUNCEMENT_Exam_date,StrExamDate,
Txt_EXAM_ANNOUNCEMENT_Start_time,Gbl.ExamAnnouncements.ExaDat.StartTime.Hour,
diff --git a/swad_help.c b/swad_help.c
index f0945a8d4..9a6581b19 100644
--- a/swad_help.c
+++ b/swad_help.c
@@ -123,6 +123,10 @@ const char *Hlp_ASSESSMENT_Tests_test_results = WIKI "ASSESSMENT.Tests#test-resu
const char *Hlp_ASSESSMENT_Calendar = WIKI "ASSESSMENT.Calendar";
+const char *Hlp_ASSESSMENT_Announcements = WIKI "ASSESSMENT.Announcements";
+const char *Hlp_ASSESSMENT_Announcements_new_announcement = WIKI "ASSESSMENT.Announcements#new-announcement";
+const char *Hlp_ASSESSMENT_Announcements_edit_announcement = WIKI "ASSESSMENT.Announcements#edit-announcement";
+
const char *Hlp_ASSESSMENT_Marks = WIKI "ASSESSMENT.Marks";
/***** USERS tab *****/
diff --git a/swad_text.c b/swad_text.c
index 3a61944fd..1ad839156 100644
--- a/swad_text.c
+++ b/swad_text.c
@@ -2111,25 +2111,25 @@ const char *Txt_all =
"tudo";
#endif
-const char *Txt_All_announcements_of_exam =
+const char *Txt_All_announcements_of_exams =
#if L==1
- "Totes les convocatòries d'examen";
+ "Totes les convocatòries d'exàmens";
#elif L==2
"Alle Aufrufe für Prüfung";
#elif L==3
- "All announcements of exam";
+ "All announcements of exams";
#elif L==4
- "Todas las convocatorias de examen";
+ "Todas las convocatorias de exámenes";
#elif L==5
- "Tous les convocations à un examen";
+ "Tous les convocations à examens";
#elif L==6
- "Todas las convocatorias de examen"; // Okoteve traducción
+ "Todas las convocatorias de exámenes"; // Okoteve traducción
#elif L==7
"Tutti i appelli d'esame";
#elif L==8
- "Wszystkie anonse egzamin";
+ "Wszystkie ogloszenia egzaminów";
#elif L==9
- "Todas as chamadas para exame";
+ "Todas as chamadas para exames";
#endif
const char *Txt_all_degrees =
@@ -2489,25 +2489,25 @@ const char *Txt_Announcement_of_exam_removed =
"Chamada para exame removida.";
#endif
-const char *Txt_Announcements_of_exam =
+const char *Txt_Announcements_of_exams =
#if L==1
- "Convocatòries d'examen";
+ "Convocatòries d'exàmens";
#elif L==2
"Aufrufe für Prüfung";
#elif L==3
- "Announcements of exam";
+ "Announcements of exams";
#elif L==4
- "Convocatorias de examen";
+ "Convocatorias de exámenes";
#elif L==5
- "Convocations à un examen";
+ "Convocations à examens";
#elif L==6
- "Convocatorias de examen"; // Okoteve traducción
+ "Convocatorias de exámenes"; // Okoteve traducción
#elif L==7
"Appelli d'esame";
#elif L==8
- "Anonse egzamin";
+ "Ogloszenia egzaminów";
#elif L==9
- "Chamadas para exame";
+ "Chamadas para exames";
#endif
const char *Txt_Another_centre =
@@ -11331,25 +11331,25 @@ const char *Txt_EXAM_ANNOUNCEMENT_Structure_of_the_exam =
"Estrutura do exame";
#endif
-const char *Txt_EXAM_ANNOUNCEMENT_Year = // 1, 2, 3..., not 1984, 2010...
+const char *Txt_EXAM_ANNOUNCEMENT_Year_or_semester = // 1, 2, 3..., not 1984, 2038...
#if L==1
- "Curs";
+ "Any o semestre";
#elif L==2
- "Jahr";
+ "Jahr oder Semester";
#elif L==3
- "Year";
+ "Year or semester";
#elif L==4
- "Curso";
+ "Año o semestre";
#elif L==5
- "Année";
+ "Année ou semestre";
#elif L==6
- "Curso"; // Okoteve traducción
+ "Año o semestre"; // Okoteve traducción
#elif L==7
- "Anno";
+ "Anno o semestre";
#elif L==8
- "Rok";
+ "Rok lub semestr";
#elif L==9
- "Ano";
+ "Ano ou semestre";
#endif
const char *Txt_Exam_of_X = // Warning: it is very important to include %s in the following sentences
@@ -20580,7 +20580,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
,
// ActSeeAllExaAnn
#if L==1
- "Llistat de convocatòries d'exàmens d'aquesta assignatura"
+ "Llistat de convocatòries d'exàmens d'aquesta assignatura"
#elif L==2
"Prüfungsaufruf"
#elif L==3
|