mirror of
https://github.com/acanas/swad-core.git
synced 2024-06-26 10:25:45 +02:00
Version 14.59.2
This commit is contained in:
parent
6ddb1ad800
commit
66eb5f830d
|
@ -39,11 +39,12 @@
|
||||||
/****************************** Public constants *****************************/
|
/****************************** Public constants *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Log_PLATFORM_VERSION "SWAD 14.59.1 (2015/01/19)"
|
#define Log_PLATFORM_VERSION "SWAD 14.59.2 (2015/01/19)"
|
||||||
|
|
||||||
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
// 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 | tail -1
|
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h | tail -1
|
||||||
/*
|
/*
|
||||||
|
Version 14.59.2: Jan 19, 2015 See/admin documents of degree, centre and institution (not finished). (174864 lines)
|
||||||
Version 14.59.1: Jan 19, 2015 See/admin documents of degree, centre and institution (not finished). (174711 lines)
|
Version 14.59.1: Jan 19, 2015 See/admin documents of degree, centre and institution (not finished). (174711 lines)
|
||||||
Version 14.59: Jan 19, 2015 See/admin documents of degree, centre and institution (not finished). (174559 lines)
|
Version 14.59: Jan 19, 2015 See/admin documents of degree, centre and institution (not finished). (174559 lines)
|
||||||
Version 14.58.1: Jan 18, 2015 Fixed minor bugs in layout. (174178 lines)
|
Version 14.58.1: Jan 18, 2015 Fixed minor bugs in layout. (174178 lines)
|
||||||
|
|
|
@ -3087,6 +3087,12 @@ static void Brw_UpdateGrpLastAccZone (const char *FieldNameDB,long GrpCod)
|
||||||
|
|
||||||
static void Brw_WriteSubtitleOfFileBrowser (void)
|
static void Brw_WriteSubtitleOfFileBrowser (void)
|
||||||
{
|
{
|
||||||
|
extern const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_institution;
|
||||||
|
extern const char *Txt_accessible_for_reading_and_writing_by_administrators_of_the_institution;
|
||||||
|
extern const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_centre;
|
||||||
|
extern const char *Txt_accessible_for_reading_and_writing_by_administrators_of_the_centre;
|
||||||
|
extern const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_degree;
|
||||||
|
extern const char *Txt_accessible_for_reading_and_writing_by_administrators_of_the_degree;
|
||||||
extern const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_course;
|
extern const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_course;
|
||||||
extern const char *Txt_accessible_only_for_reading_by_students_of_the_group_and_teachers_of_the_course;
|
extern const char *Txt_accessible_only_for_reading_by_students_of_the_group_and_teachers_of_the_course;
|
||||||
extern const char *Txt_accessible_for_reading_and_writing_by_teachers_of_the_course;
|
extern const char *Txt_accessible_for_reading_and_writing_by_teachers_of_the_course;
|
||||||
|
@ -3120,14 +3126,29 @@ static void Brw_WriteSubtitleOfFileBrowser (void)
|
||||||
/***** Write subtitle *****/
|
/***** Write subtitle *****/
|
||||||
switch (Gbl.FileBrowser.Type)
|
switch (Gbl.FileBrowser.Type)
|
||||||
{
|
{
|
||||||
case Brw_FILE_BRW_SEE_DOCUMENTS_DEG:
|
|
||||||
case Brw_FILE_BRW_ADMIN_DOCUMENTS_DEG:
|
|
||||||
case Brw_FILE_BRW_SEE_DOCUMENTS_CTR:
|
|
||||||
case Brw_FILE_BRW_ADMIN_DOCUMENTS_CTR:
|
|
||||||
case Brw_FILE_BRW_SEE_DOCUMENTS_INS:
|
case Brw_FILE_BRW_SEE_DOCUMENTS_INS:
|
||||||
|
sprintf (Subtitle,"(%s)",
|
||||||
|
Txt_accessible_only_for_reading_by_students_and_teachers_of_the_institution);
|
||||||
|
break;
|
||||||
case Brw_FILE_BRW_ADMIN_DOCUMENTS_INS:
|
case Brw_FILE_BRW_ADMIN_DOCUMENTS_INS:
|
||||||
sprintf (Subtitle,"(%s)",
|
sprintf (Subtitle,"(%s)",
|
||||||
"option in development");
|
Txt_accessible_for_reading_and_writing_by_administrators_of_the_institution);
|
||||||
|
break;
|
||||||
|
case Brw_FILE_BRW_SEE_DOCUMENTS_CTR:
|
||||||
|
sprintf (Subtitle,"(%s)",
|
||||||
|
Txt_accessible_only_for_reading_by_students_and_teachers_of_the_centre);
|
||||||
|
break;
|
||||||
|
case Brw_FILE_BRW_ADMIN_DOCUMENTS_CTR:
|
||||||
|
sprintf (Subtitle,"(%s)",
|
||||||
|
Txt_accessible_for_reading_and_writing_by_administrators_of_the_centre);
|
||||||
|
break;
|
||||||
|
case Brw_FILE_BRW_SEE_DOCUMENTS_DEG:
|
||||||
|
sprintf (Subtitle,"(%s)",
|
||||||
|
Txt_accessible_only_for_reading_by_students_and_teachers_of_the_degree);
|
||||||
|
break;
|
||||||
|
case Brw_FILE_BRW_ADMIN_DOCUMENTS_DEG:
|
||||||
|
sprintf (Subtitle,"(%s)",
|
||||||
|
Txt_accessible_for_reading_and_writing_by_administrators_of_the_degree);
|
||||||
break;
|
break;
|
||||||
case Brw_FILE_BRW_SEE_DOCUMENTS_CRS:
|
case Brw_FILE_BRW_SEE_DOCUMENTS_CRS:
|
||||||
sprintf (Subtitle,"(%s)",
|
sprintf (Subtitle,"(%s)",
|
||||||
|
|
|
@ -185,7 +185,10 @@ void Lay_WriteStartOfPage (void)
|
||||||
// css/dropzone.css
|
// css/dropzone.css
|
||||||
// images/spritemap@2x.png
|
// images/spritemap@2x.png
|
||||||
// images/spritemap.png
|
// images/spritemap.png
|
||||||
if (Gbl.CurrentAct == ActFrmCreDocCrs || // Brw_FILE_BRW_ADMIN_DOCUMENTS_CRS
|
if (Gbl.CurrentAct == ActFrmCreDocIns || // Brw_FILE_BRW_ADMIN_DOCUMENTS_INS
|
||||||
|
Gbl.CurrentAct == ActFrmCreDocCtr || // Brw_FILE_BRW_ADMIN_DOCUMENTS_CTR
|
||||||
|
Gbl.CurrentAct == ActFrmCreDocDeg || // Brw_FILE_BRW_ADMIN_DOCUMENTS_DEG
|
||||||
|
Gbl.CurrentAct == ActFrmCreDocCrs || // Brw_FILE_BRW_ADMIN_DOCUMENTS_CRS
|
||||||
Gbl.CurrentAct == ActFrmCreDocGrp || // Brw_FILE_BRW_ADMIN_DOCUMENTS_GRP
|
Gbl.CurrentAct == ActFrmCreDocGrp || // Brw_FILE_BRW_ADMIN_DOCUMENTS_GRP
|
||||||
Gbl.CurrentAct == ActFrmCreComCrs || // Brw_FILE_BRW_COMMON_CRS
|
Gbl.CurrentAct == ActFrmCreComCrs || // Brw_FILE_BRW_COMMON_CRS
|
||||||
Gbl.CurrentAct == ActFrmCreComGrp || // Brw_FILE_BRW_COMMON_GRP
|
Gbl.CurrentAct == ActFrmCreComGrp || // Brw_FILE_BRW_COMMON_GRP
|
||||||
|
@ -196,7 +199,9 @@ void Lay_WriteStartOfPage (void)
|
||||||
Gbl.CurrentAct == ActFrmCreMrkCrs || // Brw_FILE_BRW_ADMIN_MARKS_CRS
|
Gbl.CurrentAct == ActFrmCreMrkCrs || // Brw_FILE_BRW_ADMIN_MARKS_CRS
|
||||||
Gbl.CurrentAct == ActFrmCreMrkGrp || // Brw_FILE_BRW_ADMIN_MARKS_GRP
|
Gbl.CurrentAct == ActFrmCreMrkGrp || // Brw_FILE_BRW_ADMIN_MARKS_GRP
|
||||||
Gbl.CurrentAct == ActFrmCreBrf) // Brw_FILE_BRW_BRIEFCASE_USR
|
Gbl.CurrentAct == ActFrmCreBrf) // Brw_FILE_BRW_BRIEFCASE_USR
|
||||||
fprintf (Gbl.F.Out,"<link rel=\"StyleSheet\" href=\"%s/dropzone/css/dropzone.css\" type=\"text/css\" />\n",
|
fprintf (Gbl.F.Out,"<link rel=\"StyleSheet\""
|
||||||
|
" href=\"%s/dropzone/css/dropzone.css\""
|
||||||
|
" type=\"text/css\" />\n",
|
||||||
Cfg_HTTPS_URL_SWAD_PUBLIC);
|
Cfg_HTTPS_URL_SWAD_PUBLIC);
|
||||||
|
|
||||||
/* Redirect to correct language */
|
/* Redirect to correct language */
|
||||||
|
@ -429,7 +434,10 @@ static void Lay_WriteScripts (void)
|
||||||
// css/dropzone.css
|
// css/dropzone.css
|
||||||
// images/spritemap@2x.png
|
// images/spritemap@2x.png
|
||||||
// images/spritemap.png
|
// images/spritemap.png
|
||||||
if (Gbl.CurrentAct == ActFrmCreDocCrs || // Brw_FILE_BRW_ADMIN_DOCUMENTS_CRS
|
if (Gbl.CurrentAct == ActFrmCreDocIns || // Brw_FILE_BRW_ADMIN_DOCUMENTS_INS
|
||||||
|
Gbl.CurrentAct == ActFrmCreDocCtr || // Brw_FILE_BRW_ADMIN_DOCUMENTS_CTR
|
||||||
|
Gbl.CurrentAct == ActFrmCreDocDeg || // Brw_FILE_BRW_ADMIN_DOCUMENTS_DEG
|
||||||
|
Gbl.CurrentAct == ActFrmCreDocCrs || // Brw_FILE_BRW_ADMIN_DOCUMENTS_CRS
|
||||||
Gbl.CurrentAct == ActFrmCreDocGrp || // Brw_FILE_BRW_ADMIN_DOCUMENTS_GRP
|
Gbl.CurrentAct == ActFrmCreDocGrp || // Brw_FILE_BRW_ADMIN_DOCUMENTS_GRP
|
||||||
Gbl.CurrentAct == ActFrmCreComCrs || // Brw_FILE_BRW_COMMON_CRS
|
Gbl.CurrentAct == ActFrmCreComCrs || // Brw_FILE_BRW_COMMON_CRS
|
||||||
Gbl.CurrentAct == ActFrmCreComGrp || // Brw_FILE_BRW_COMMON_GRP
|
Gbl.CurrentAct == ActFrmCreComGrp || // Brw_FILE_BRW_COMMON_GRP
|
||||||
|
@ -442,7 +450,8 @@ static void Lay_WriteScripts (void)
|
||||||
Gbl.CurrentAct == ActFrmCreBrf) // Brw_FILE_BRW_BRIEFCASE_USR
|
Gbl.CurrentAct == ActFrmCreBrf) // Brw_FILE_BRW_BRIEFCASE_USR
|
||||||
{
|
{
|
||||||
// Use charset="windows-1252" to force error messages in windows-1252 (default is UTF-8)
|
// Use charset="windows-1252" to force error messages in windows-1252 (default is UTF-8)
|
||||||
fprintf (Gbl.F.Out,"<script type=\"text/javascript\" src=\"%s/dropzone/dropzone.js\""
|
fprintf (Gbl.F.Out,"<script type=\"text/javascript\""
|
||||||
|
" src=\"%s/dropzone/dropzone.js\""
|
||||||
" charset=\"windows-1252\">"
|
" charset=\"windows-1252\">"
|
||||||
"</script>\n",
|
"</script>\n",
|
||||||
Cfg_HTTPS_URL_SWAD_PUBLIC);
|
Cfg_HTTPS_URL_SWAD_PUBLIC);
|
||||||
|
|
|
@ -186,7 +186,7 @@ void Sta_GetRemoteAddr (void)
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********* If this click is made from the same IP too fast, abort ************/
|
/********* If this click is made from the same IP too fast, abort ************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
/*
|
||||||
void Sta_ExitIfTooFast (void)
|
void Sta_ExitIfTooFast (void)
|
||||||
{
|
{
|
||||||
extern const char *Txt_STR_LANG_ID[Txt_NUM_LANGUAGES];
|
extern const char *Txt_STR_LANG_ID[Txt_NUM_LANGUAGES];
|
||||||
|
@ -195,35 +195,35 @@ void Sta_ExitIfTooFast (void)
|
||||||
char Query[512];
|
char Query[512];
|
||||||
unsigned NumClicks; // Very recent clicks from this IP (0 or 1)
|
unsigned NumClicks; // Very recent clicks from this IP (0 or 1)
|
||||||
|
|
||||||
/***** Some actions can be made fast *****/
|
***** Some actions can be made fast *****
|
||||||
if (Gbl.CurrentAct == ActRefCon || // Refresh connected
|
if (Gbl.CurrentAct == ActRefCon || // Refresh connected
|
||||||
Gbl.CurrentAct == ActRefLstClk || // Refresh last clicks
|
Gbl.CurrentAct == ActRefLstClk || // Refresh last clicks
|
||||||
Gbl.CurrentAct == ActAutUsrChgLan) // Change my language automatically just after log in
|
Gbl.CurrentAct == ActAutUsrChgLan) // Change my language automatically just after log in
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/***** Get if a click/refresh is made from the same IP very recently *****/
|
***** Get if a click/refresh is made from the same IP very recently *****
|
||||||
sprintf (Query,"SELECT COUNT(*) FROM IP_last"
|
sprintf (Query,"SELECT COUNT(*) FROM IP_last"
|
||||||
" WHERE IP='%s' AND UNIX_TIMESTAMP(LastClick)>UNIX_TIMESTAMP()-%u",
|
" WHERE IP='%s' AND UNIX_TIMESTAMP(LastClick)>UNIX_TIMESTAMP()-%u",
|
||||||
Gbl.IP,Cfg_MIN_TIME_BETWEEN_2_CLICKS_FROM_THE_SAME_IP);
|
Gbl.IP,Cfg_MIN_TIME_BETWEEN_2_CLICKS_FROM_THE_SAME_IP);
|
||||||
NumClicks = (unsigned) DB_QueryCOUNT (Query,"can not get the number of very recent clicks");
|
NumClicks = (unsigned) DB_QueryCOUNT (Query,"can not get the number of very recent clicks");
|
||||||
|
|
||||||
/***** Remove old clicks/refreshes *****/
|
***** Remove old clicks/refreshes *****
|
||||||
sprintf (Query,"DELETE FROM IP_last"
|
sprintf (Query,"DELETE FROM IP_last"
|
||||||
" WHERE UNIX_TIMESTAMP(LastClick)<=UNIX_TIMESTAMP()-%u",
|
" WHERE UNIX_TIMESTAMP(LastClick)<=UNIX_TIMESTAMP()-%u",
|
||||||
Cfg_MIN_TIME_BETWEEN_2_CLICKS_FROM_THE_SAME_IP);
|
Cfg_MIN_TIME_BETWEEN_2_CLICKS_FROM_THE_SAME_IP);
|
||||||
DB_QueryDELETE (Query,"can not remove old last IP");
|
DB_QueryDELETE (Query,"can not remove old last IP");
|
||||||
|
|
||||||
/***** Replace last click/refresh from this IP *****/
|
***** Replace last click/refresh from this IP *****
|
||||||
sprintf (Query,"REPLACE INTO IP_last"
|
sprintf (Query,"REPLACE INTO IP_last"
|
||||||
" (IP,LastClick)"
|
" (IP,LastClick)"
|
||||||
" VALUES ('%s',NOW())",
|
" VALUES ('%s',NOW())",
|
||||||
Gbl.IP);
|
Gbl.IP);
|
||||||
DB_QueryREPLACE (Query,"can not update last IP");
|
DB_QueryREPLACE (Query,"can not update last IP");
|
||||||
|
|
||||||
/***** If too fast, write warning and exit *****/
|
***** If too fast, write warning and exit *****
|
||||||
if (NumClicks) // Too fast
|
if (NumClicks) // Too fast
|
||||||
{
|
{
|
||||||
/***** Write header to standard output to avoid timeout *****/
|
***** Write header to standard output to avoid timeout *****
|
||||||
// Two \r\n are necessary
|
// Two \r\n are necessary
|
||||||
fprintf (stdout,"Content-type: text/html; charset=windows-1252\r\n\r\n"
|
fprintf (stdout,"Content-type: text/html; charset=windows-1252\r\n\r\n"
|
||||||
"<!DOCTYPE html>\n"
|
"<!DOCTYPE html>\n"
|
||||||
|
@ -246,7 +246,7 @@ void Sta_ExitIfTooFast (void)
|
||||||
// sleep (Cfg_MIN_TIME_BETWEEN_2_CLICKS_FROM_THE_SAME_IP); // Sleep those seconds
|
// sleep (Cfg_MIN_TIME_BETWEEN_2_CLICKS_FROM_THE_SAME_IP); // Sleep those seconds
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** Log access in database *************************/
|
/**************************** Log access in database *************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
136
swad_text.c
136
swad_text.c
|
@ -1474,6 +1474,69 @@ const char *Txt_Absents =
|
||||||
"Assentes";
|
"Assentes";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
const char *Txt_accessible_for_reading_and_writing_by_administrators_of_the_centre =
|
||||||
|
#if L==0
|
||||||
|
"accessible per a lectura i escriptura per administradors del centre";
|
||||||
|
#elif L==1
|
||||||
|
"zum Schreiben zugänglich für Administratoren der Lehrinstitut";
|
||||||
|
#elif L==2
|
||||||
|
"accessible for reading and writing by administrators of the centre";
|
||||||
|
#elif L==3
|
||||||
|
"accesible para lectura y escritura por administradores del centro";
|
||||||
|
#elif L==4
|
||||||
|
"accessible en lecture et en écriture par les administrateurs du centre";
|
||||||
|
#elif L==5
|
||||||
|
"accesible para lectura y escritura por administradores del centro"; // Okoteve traducción
|
||||||
|
#elif L==6
|
||||||
|
"accessibile per la lettura e la scrittura da parte dei amministratori del centro";
|
||||||
|
#elif L==7
|
||||||
|
"dostep do odczytu i zapisu przez administratorzy centrum";
|
||||||
|
#elif L==8
|
||||||
|
"acessível para leitura e escrita pelos administradores do centro";
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const char *Txt_accessible_for_reading_and_writing_by_administrators_of_the_degree =
|
||||||
|
#if L==0
|
||||||
|
"accessible per a lectura i escriptura per administradors de la titulació";
|
||||||
|
#elif L==1
|
||||||
|
"zum Schreiben zugänglich für Administratoren der Studiengang";
|
||||||
|
#elif L==2
|
||||||
|
"accessible for reading and writing by administrators of the degree";
|
||||||
|
#elif L==3
|
||||||
|
"accesible para lectura y escritura por administradores de la titulación";
|
||||||
|
#elif L==4
|
||||||
|
"accessible en lecture et en écriture par les administrateurs de l'étude";
|
||||||
|
#elif L==5
|
||||||
|
"accesible para lectura y escritura por administradores de la titulación"; // Okoteve traducción
|
||||||
|
#elif L==6
|
||||||
|
"accessibile per la lettura e la scrittura da parte dei amministratori della laurea";
|
||||||
|
#elif L==7
|
||||||
|
"dostep do odczytu i zapisu przez administratorzy stopnia";
|
||||||
|
#elif L==8
|
||||||
|
"acessível para leitura e escrita pelos administradores da titulação";
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const char *Txt_accessible_for_reading_and_writing_by_administrators_of_the_institution =
|
||||||
|
#if L==0
|
||||||
|
"accessible per a lectura i escriptura per administradors de l'institució";
|
||||||
|
#elif L==1
|
||||||
|
"zum Schreiben zugänglich für Administratoren der Hochschule";
|
||||||
|
#elif L==2
|
||||||
|
"accessible for reading and writing by administrators of the institution";
|
||||||
|
#elif L==3
|
||||||
|
"accesible para lectura y escritura por administradores de la institución";
|
||||||
|
#elif L==4
|
||||||
|
"accessible en lecture et en écriture par les administrateurs de l'établissement";
|
||||||
|
#elif L==5
|
||||||
|
"accesible para lectura y escritura por administradores de la institución"; // Okoteve traducción
|
||||||
|
#elif L==6
|
||||||
|
"accessibile per la lettura e la scrittura da parte dei amministratori della istituzione";
|
||||||
|
#elif L==7
|
||||||
|
"dostep do odczytu i zapisu przez administratorzy instytucji";
|
||||||
|
#elif L==8
|
||||||
|
"acessível para leitura e escrita pelos administradores da instituição";
|
||||||
|
#endif
|
||||||
|
|
||||||
const char *Txt_accessible_for_reading_and_writing_by_students_and_teachers_of_the_course =
|
const char *Txt_accessible_for_reading_and_writing_by_students_and_teachers_of_the_course =
|
||||||
#if L==0
|
#if L==0
|
||||||
"accessible per a lectura i escriptura per estudiants i professors de l'assignatura";
|
"accessible per a lectura i escriptura per estudiants i professors de l'assignatura";
|
||||||
|
@ -1574,11 +1637,32 @@ const char *Txt_accessible_only_for_reading_by_you_and_the_teachers_of_the_cours
|
||||||
#elif L==6
|
#elif L==6
|
||||||
"accessibile solo per la lettura per te e i professori del corso";
|
"accessibile solo per la lettura per te e i professori del corso";
|
||||||
#elif L==7
|
#elif L==7
|
||||||
"dostepne tylko do czytania przez Ciebie i nauczycieli prowadzacych ten kurs";
|
"dostępne tylko do czytania przez Ciebie i nauczycieli prowadzacych ten kurs";
|
||||||
#elif L==8
|
#elif L==8
|
||||||
"acessível apenas para leitura por você e os professores da disciplina";
|
"acessível apenas para leitura por você e os professores da disciplina";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_centre =
|
||||||
|
#if L==0
|
||||||
|
"accessible només per a lectura per estudiants i professors del centre";
|
||||||
|
#elif L==1
|
||||||
|
"zum Lesen zugänglich für Studenten und Lehrkräfte der Lehrinstitut";
|
||||||
|
#elif L==2
|
||||||
|
"accessible only for reading by students and teachers of the centre";
|
||||||
|
#elif L==3
|
||||||
|
"accesible sólo para lectura por estudiantes y profesores del centro";
|
||||||
|
#elif L==4
|
||||||
|
"accessible uniquement pour la lecture par les étudiants et les enseignants du centre";
|
||||||
|
#elif L==5
|
||||||
|
"accesible sólo para lectura por estudiantes y profesores del centro"; // Okoteve traducción
|
||||||
|
#elif L==6
|
||||||
|
"accessibile solo per la lettura da parte degli studenti e dei professori del centro";
|
||||||
|
#elif L==7
|
||||||
|
"dostępne tylko do czytania przez uczniów i nauczycieli centrum";
|
||||||
|
#elif L==8
|
||||||
|
"acessível apenas para leitura pelos alunos e professores do centro";
|
||||||
|
#endif
|
||||||
|
|
||||||
const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_course =
|
const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_course =
|
||||||
#if L==0
|
#if L==0
|
||||||
"accessible només per a lectura per estudiants i professors de l'assignatura";
|
"accessible només per a lectura per estudiants i professors de l'assignatura";
|
||||||
|
@ -1595,11 +1679,53 @@ const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_cour
|
||||||
#elif L==6
|
#elif L==6
|
||||||
"accessibile solo per la lettura da parte degli studenti e dei professori del corso";
|
"accessibile solo per la lettura da parte degli studenti e dei professori del corso";
|
||||||
#elif L==7
|
#elif L==7
|
||||||
"dostepne tylko do czytania przez uczniów i nauczycieli zajec";
|
"dostępne tylko do czytania przez uczniów i nauczycieli zajec";
|
||||||
#elif L==8
|
#elif L==8
|
||||||
"acessível apenas para leitura pelos alunos e professores da disciplina";
|
"acessível apenas para leitura pelos alunos e professores da disciplina";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_degree =
|
||||||
|
#if L==0
|
||||||
|
"accessible només per a lectura per estudiants i professors de la titulació";
|
||||||
|
#elif L==1
|
||||||
|
"zum Lesen zugänglich für Studenten und Lehrkräfte der Studiengang";
|
||||||
|
#elif L==2
|
||||||
|
"accessible only for reading by students and teachers of the degree";
|
||||||
|
#elif L==3
|
||||||
|
"accesible sólo para lectura por estudiantes y profesores de la titulación";
|
||||||
|
#elif L==4
|
||||||
|
"accessible uniquement pour la lecture par les étudiants et les enseignants de l'étude";
|
||||||
|
#elif L==5
|
||||||
|
"accesible sólo para lectura por estudiantes y profesores de la titulación"; // Okoteve traducción
|
||||||
|
#elif L==6
|
||||||
|
"accessibile solo per la lettura da parte degli studenti e dei professori della laurea";
|
||||||
|
#elif L==7
|
||||||
|
"dostępne tylko do czytania przez uczniów i nauczycieli stopnia";
|
||||||
|
#elif L==8
|
||||||
|
"acessível apenas para leitura pelos alunos e professores da titulação";
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const char *Txt_accessible_only_for_reading_by_students_and_teachers_of_the_institution =
|
||||||
|
#if L==0
|
||||||
|
"accessible només per a lectura per estudiants i professors de l'institució";
|
||||||
|
#elif L==1
|
||||||
|
"zum Lesen zugänglich für Studenten und Lehrkräfte der Hochschule";
|
||||||
|
#elif L==2
|
||||||
|
"accessible only for reading by students and teachers of the institution";
|
||||||
|
#elif L==3
|
||||||
|
"accesible sólo para lectura por estudiantes y profesores de la institución";
|
||||||
|
#elif L==4
|
||||||
|
"accessible uniquement pour la lecture par les étudiants et les enseignants de l'établissement";
|
||||||
|
#elif L==5
|
||||||
|
"accesible sólo para lectura por estudiantes y profesores de la institución"; // Okoteve traducción
|
||||||
|
#elif L==6
|
||||||
|
"accessibile solo per la lettura da parte degli studenti e dei professori della istituzione";
|
||||||
|
#elif L==7
|
||||||
|
"dostępne tylko do czytania przez uczniów i nauczycieli instytucji";
|
||||||
|
#elif L==8
|
||||||
|
"acessível apenas para leitura pelos alunos e professores da instituição";
|
||||||
|
#endif
|
||||||
|
|
||||||
const char *Txt_accessible_only_for_reading_by_students_of_the_group_and_teachers_of_the_course =
|
const char *Txt_accessible_only_for_reading_by_students_of_the_group_and_teachers_of_the_course =
|
||||||
#if L==0
|
#if L==0
|
||||||
"accesible només per a lectura per estudiants del grup i professors de l'assignatura";
|
"accesible només per a lectura per estudiants del grup i professors de l'assignatura";
|
||||||
|
@ -1616,7 +1742,7 @@ const char *Txt_accessible_only_for_reading_by_students_of_the_group_and_teacher
|
||||||
#elif L==6
|
#elif L==6
|
||||||
"accessibile solo per la lettura da parte degli studenti del gruppo e dei professori del corso";
|
"accessibile solo per la lettura da parte degli studenti del gruppo e dei professori del corso";
|
||||||
#elif L==7
|
#elif L==7
|
||||||
"dostepne tylko do czytania przez uczniów i nauczycieli grupy kursu";
|
"dostępne tylko do czytania przez uczniów i nauczycieli grupy kursu";
|
||||||
#elif L==8
|
#elif L==8
|
||||||
"acessível apenas para leitura pelos alunos do grupo e professores da disciplina";
|
"acessível apenas para leitura pelos alunos do grupo e professores da disciplina";
|
||||||
#endif
|
#endif
|
||||||
|
@ -10893,7 +11019,7 @@ const char *Txt_File_zones_of_the_group_X_are_now_enabled = // Warning: it is ve
|
||||||
#elif L==6
|
#elif L==6
|
||||||
"Le aree file del gruppo %s sono ora abilitate.";
|
"Le aree file del gruppo %s sono ora abilitate.";
|
||||||
#elif L==7
|
#elif L==7
|
||||||
"Plik strefy grupa %s sa obecnie dostepne.";
|
"Plik strefy grupa %s sa obecnie dostępne.";
|
||||||
#elif L==8
|
#elif L==8
|
||||||
"File zones of the group %s are now enabled."; // Necessita de tradução
|
"File zones of the group %s are now enabled."; // Necessita de tradução
|
||||||
#endif
|
#endif
|
||||||
|
@ -18759,7 +18885,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
|
||||||
" a les quals podeu consultar"
|
" a les quals podeu consultar"
|
||||||
" per crear assignatures o altres gestions"
|
" per crear assignatures o altres gestions"
|
||||||
#elif L==1
|
#elif L==1
|
||||||
"Liste der Verwalter"
|
"Liste der Administratoren"
|
||||||
#elif L==2
|
#elif L==2
|
||||||
"Administrators"
|
"Administrators"
|
||||||
#elif L==3
|
#elif L==3
|
||||||
|
|
Loading…
Reference in New Issue
Block a user