Version19.97.4

This commit is contained in:
Antonio Cañas Vargas 2019-12-20 00:30:54 +01:00
parent 8d93f832b1
commit 6c075b4e49
22 changed files with 100 additions and 791 deletions

View File

@ -479,3 +479,25 @@ void Ale_ShowAlertUserNotFoundOrYouDoNotHavePermission (void)
Ale_ShowAlert (Ale_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
}
/*****************************************************************************/
/**************** Create alert when a form field is empty ********************/
/*****************************************************************************/
void Ale_CreateAlertYouCanNotLeaveFieldEmpty (void)
{
extern const char *Txt_You_can_not_leave_the_field_empty;
Ale_CreateAlert (Ale_WARNING,NULL,Txt_You_can_not_leave_the_field_empty);
}
/*****************************************************************************/
/**************** Create alert when a form field is empty ********************/
/*****************************************************************************/
void Ale_ShowAlertYouCanNotLeaveFieldEmpty (void)
{
extern const char *Txt_You_can_not_leave_the_field_empty;
Ale_ShowAlert (Ale_WARNING,NULL,Txt_You_can_not_leave_the_field_empty);
}

View File

@ -84,5 +84,7 @@ void Ale_ShowAlertAndButton2 (Act_Action_t NextAction,const char *Anchor,const c
void Ale_CreateAlertUserNotFoundOrYouDoNotHavePermission (void);
void Ale_ShowAlertUserNotFoundOrYouDoNotHavePermission (void);
void Ale_CreateAlertYouCanNotLeaveFieldEmpty (void);
void Ale_ShowAlertYouCanNotLeaveFieldEmpty (void);
#endif

View File

@ -621,7 +621,6 @@ void Ban_RenameBannerFull (void)
static void Ban_RenameBanner (Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_banner_X_empty;
extern const char *Txt_The_banner_X_already_exists;
extern const char *Txt_The_banner_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_banner_X_has_not_changed;
@ -660,9 +659,7 @@ static void Ban_RenameBanner (Cns_ShrtOrFullName_t ShrtOrFullName)
/***** Check if new name is empty *****/
if (!NewBanName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_banner_X_empty,
CurrentBanName);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
else
{
/***** Check if old and new names are the same
@ -776,7 +773,6 @@ void Ban_ChangeBannerImg (void)
void Ban_ChangeBannerWWW (void)
{
extern const char *Txt_The_new_web_address_is_X;
extern const char *Txt_You_can_not_leave_the_web_address_empty;
char NewWWW[Cns_MAX_BYTES_WWW + 1];
/***** Banner constructor *****/
@ -807,8 +803,7 @@ void Ban_ChangeBannerWWW (void)
NewWWW);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_web_address_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update web *****/
Str_Copy (Ban_EditingBan->WWW,NewWWW,

View File

@ -2332,7 +2332,6 @@ void Ctr_RenameCentreFullInConfig (void)
static void Ctr_RenameCentre (struct Centre *Ctr,Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_centre_X_empty;
extern const char *Txt_The_centre_X_already_exists;
extern const char *Txt_The_centre_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_centre_X_has_not_changed;
@ -2367,9 +2366,7 @@ static void Ctr_RenameCentre (struct Centre *Ctr,Cns_ShrtOrFullName_t ShrtOrFull
/***** Check if new name is empty *****/
if (!NewCtrName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_centre_X_empty,
CurrentCtrName);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
else
{
/***** Check if old and new names are the same
@ -2537,7 +2534,6 @@ static void Ctr_UpdateCtrCoordinateDB (long CtrCod,const char *CoordField,double
void Ctr_ChangeCtrWWW (void)
{
extern const char *Txt_The_new_web_address_is_X;
extern const char *Txt_You_can_not_leave_the_web_address_empty;
char NewWWW[Cns_MAX_BYTES_WWW + 1];
/***** Centre constructor *****/
@ -2567,14 +2563,12 @@ void Ctr_ChangeCtrWWW (void)
NewWWW);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_web_address_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
}
void Ctr_ChangeCtrWWWInConfig (void)
{
extern const char *Txt_The_new_web_address_is_X;
extern const char *Txt_You_can_not_leave_the_web_address_empty;
char NewWWW[Cns_MAX_BYTES_WWW + 1];
/***** Get parameters from form *****/
@ -2594,7 +2588,7 @@ void Ctr_ChangeCtrWWWInConfig (void)
NewWWW);
}
else
Ale_ShowAlert (Ale_WARNING,Txt_You_can_not_leave_the_web_address_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Show the form again *****/
Ctr_ShowConfiguration ();

View File

@ -492,14 +492,17 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 19.97.3 (2019-12-19)"
#define Log_PLATFORM_VERSION "SWAD 19.97.4 (2019-12-20)"
#define CSS_FILE "swad19.97.css"
#define JS_FILE "swad19.91.1.js"
/*
// TODO: Hacer un nuevo rol en los TFG: tutor externo (profesor de áreas no vinculadas con el centro, profesionales de empresas, etc.)
// TODO: Impedir la creación y edición de proyectos si no son editables.
// TODO: No se puede entrar con DNI '1' suponiendo que no tenga password ¿por qué?
// TODO: Sin identificar, pulsando en CENTRO > Información > Lugares/sedes NO deberíamos ir a Países.
// TODO: Icono de eliminar escudo de un centro --> ponerlo sólo en la esquina, contextual. Comprobar lo mismo con icono de titulación y de institución.
Version 19.97.4: Dec 20, 2019 Optimization on alerts related with empty form fields. (249171 lines)
Version 19.97.3: Dec 19, 2019 In list of centres, show link to map. (249847 lines)
Version 19.97.2: Dec 19, 2019 Don't show centre map when coordinates are 0.
Fixed bug in database installation, reported by José Luis Amador Moreno. (249809 lines)

View File

@ -640,7 +640,6 @@ void Cla_RenameClassroomFull (void)
static void Cla_RenameClassroom (Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_classroom_X_empty;
extern const char *Txt_The_classroom_X_already_exists;
extern const char *Txt_The_classroom_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_classroom_X_has_not_changed;
@ -678,11 +677,7 @@ static void Cla_RenameClassroom (Cns_ShrtOrFullName_t ShrtOrFullName)
Cla_GetDataOfClassroomByCod (Cla_EditingCla);
/***** Check if new name is empty *****/
if (!NewClaName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_classroom_X_empty,
CurrentClaName);
else
if (NewClaName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -709,6 +704,8 @@ static void Cla_RenameClassroom (Cns_ShrtOrFullName_t ShrtOrFullName)
Txt_The_name_of_the_classroom_X_has_not_changed,
CurrentClaName);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update classroom name *****/
Str_Copy (CurrentClaName,NewClaName,

View File

@ -28,8 +28,8 @@
/** Uncomment one of the following installations of SWAD or create your own **/
/*****************************************************************************/
#define LOCALHOST_UBUNTU // Comment this line if not applicable
//#define OPENSWAD_ORG // Comment this line if not applicable
//#define LOCALHOST_UBUNTU // Comment this line if not applicable
#define OPENSWAD_ORG // Comment this line if not applicable
//#define SWAD_UGR_ES // Comment this line if not applicable
//#define SWADBERRY_UGR_ES // Comment this line if not applicable

View File

@ -1779,7 +1779,6 @@ void Cty_RemoveCountry (void)
void Cty_RenameCountry (void)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_country_X_empty;
extern const char *Txt_The_country_X_already_exists;
extern const char *Txt_The_country_X_has_been_renamed_as_Y;
extern const char *Lan_STR_LANG_ID[1 + Lan_NUM_LANGUAGES];
@ -1804,11 +1803,7 @@ void Cty_RenameCountry (void)
Cty_GetDataOfCountryByCod (Cty_EditingCty,Cty_GET_EXTRA_DATA);
/***** Check if new name is empty *****/
if (!NewCtyName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_country_X_empty,
Cty_EditingCty->Name[Language]);
else
if (NewCtyName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -1842,6 +1837,8 @@ void Cty_RenameCountry (void)
Txt_The_name_of_the_country_X_has_not_changed,
Cty_EditingCty->Name[Language]);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
}
/*****************************************************************************/

View File

@ -2594,7 +2594,6 @@ void Crs_RenameCourseFullInConfig (void)
static void Crs_RenameCourse (struct Course *Crs,Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_course_X_empty;
extern const char *Txt_The_course_X_already_exists;
extern const char *Txt_The_name_of_the_course_X_has_changed_to_Y;
extern const char *Txt_The_name_of_the_course_X_has_not_changed;
@ -2630,11 +2629,7 @@ static void Crs_RenameCourse (struct Course *Crs,Cns_ShrtOrFullName_t ShrtOrFull
if (Crs_CheckIfICanEdit (Crs))
{
/***** Check if new name is empty *****/
if (!NewCrsName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_course_X_empty,
CurrentCrsName);
else
if (NewCrsName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -2666,6 +2661,8 @@ static void Crs_RenameCourse (struct Course *Crs,Cns_ShrtOrFullName_t ShrtOrFull
Txt_The_name_of_the_course_X_has_not_changed,
CurrentCrsName);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
}
else
Lay_NoPermissionExit ();

View File

@ -1910,7 +1910,6 @@ void Deg_RenameDegreeFullInConfig (void)
static void Deg_RenameDegree (struct Degree *Deg,Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_degree_X_empty;
extern const char *Txt_The_degree_X_already_exists;
extern const char *Txt_The_name_of_the_degree_X_has_changed_to_Y;
extern const char *Txt_The_name_of_the_degree_X_has_not_changed;
@ -1944,11 +1943,7 @@ static void Deg_RenameDegree (struct Degree *Deg,Cns_ShrtOrFullName_t ShrtOrFull
Deg_GetDataOfDegreeByCod (Deg,Deg_GET_BASIC_DATA);
/***** Check if new name is empty *****/
if (!NewDegName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_degree_X_empty,
CurrentDegName);
else
if (NewDegName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -1979,6 +1974,8 @@ static void Deg_RenameDegree (struct Degree *Deg,Cns_ShrtOrFullName_t ShrtOrFull
Txt_The_name_of_the_degree_X_has_not_changed,
CurrentDegName);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
}
/*****************************************************************************/
@ -2122,7 +2119,6 @@ void Deg_ChangeDegreeType (void)
void Deg_ChangeDegWWW (void)
{
extern const char *Txt_The_new_web_address_is_X;
extern const char *Txt_You_can_not_leave_the_web_address_empty;
char NewWWW[Cns_MAX_BYTES_WWW + 1];
/***** Degree constructor *****/
@ -2153,14 +2149,12 @@ void Deg_ChangeDegWWW (void)
NewWWW);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_web_address_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
}
void Deg_ChangeDegWWWInConfig (void)
{
extern const char *Txt_The_new_web_address_is_X;
extern const char *Txt_You_can_not_leave_the_web_address_empty;
char NewWWW[Cns_MAX_BYTES_WWW + 1];
/***** Get parameters from form *****/
@ -2180,7 +2174,7 @@ void Deg_ChangeDegWWWInConfig (void)
NewWWW);
}
else
Ale_ShowAlert (Ale_WARNING,Txt_You_can_not_leave_the_web_address_empty);
Ale_ShowAlertYouCanNotLeaveFieldEmpty ();
/***** Show the form again *****/
Deg_ShowConfiguration ();

View File

@ -923,7 +923,6 @@ static void DT_RemoveDegreeTypeCompletely (long DegTypCod)
void DT_RenameDegreeType (void)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_type_of_degree_X_empty;
extern const char *Txt_The_type_of_degree_X_already_exists;
extern const char *Txt_The_type_of_degree_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_type_of_degree_X_has_not_changed;
@ -944,11 +943,7 @@ void DT_RenameDegreeType (void)
Lay_ShowErrorAndExit ("Code of type of degree not found.");
/***** Check if new name is empty *****/
if (!NewNameDegTyp[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_type_of_degree_X_empty,
DT_EditingDegTyp->DegTypName);
else
if (NewNameDegTyp[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -980,6 +975,8 @@ void DT_RenameDegreeType (void)
Txt_The_name_of_the_type_of_degree_X_has_not_changed,
NewNameDegTyp);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Set degree type name *****/
Str_Copy (DT_EditingDegTyp->DegTypName,NewNameDegTyp,

View File

@ -715,7 +715,6 @@ void Dpt_RenameDepartFull (void)
static void Dpt_RenameDepartment (Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_department_X_empty;
extern const char *Txt_The_department_X_already_exists;
extern const char *Txt_The_department_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_department_X_has_not_changed;
@ -752,11 +751,7 @@ static void Dpt_RenameDepartment (Cns_ShrtOrFullName_t ShrtOrFullName)
Dpt_GetDataOfDepartmentByCod (Dpt_EditingDpt);
/***** Check if new name is empty *****/
if (!NewDptName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_department_X_empty,
CurrentDptName);
else
if (NewDptName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -783,6 +778,8 @@ static void Dpt_RenameDepartment (Cns_ShrtOrFullName_t ShrtOrFullName)
Txt_The_name_of_the_department_X_has_not_changed,
CurrentDptName);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update name *****/
Str_Copy (CurrentDptName,NewDptName,
@ -822,7 +819,6 @@ static void Dpt_UpdateDegNameDB (long DptCod,const char *FieldName,const char *N
void Dpt_ChangeDptWWW (void)
{
extern const char *Txt_The_new_web_address_is_X;
extern const char *Txt_You_can_not_leave_the_web_address_empty;
char NewWWW[Cns_MAX_BYTES_WWW + 1];
/***** Department constructor *****/
@ -852,8 +848,7 @@ void Dpt_ChangeDptWWW (void)
NewWWW);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_web_address_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update web *****/
Str_Copy (Dpt_EditingDpt->WWW,NewWWW,

View File

@ -4644,7 +4644,7 @@ unsigned Grp_ConvertToNumMaxStdsGrp (const char *StrMaxStudents)
void Grp_RenameGroupType (void)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_type_of_group_X_empty;
extern const char *Txt_You_can_not_leave_the_field_empty;
extern const char *Txt_The_type_of_group_X_already_exists;
extern const char *Txt_The_type_of_group_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_type_of_group_X_has_not_changed;
@ -4664,14 +4664,7 @@ void Grp_RenameGroupType (void)
Grp_GetDataOfGroupTypeByCod (&Gbl.Crs.Grps.GrpTyp);
/***** Check if new name is empty *****/
if (!NewNameGrpTyp[0])
{
AlertType = Ale_WARNING;
snprintf (AlertTxt,sizeof (AlertTxt),
Txt_You_can_not_leave_the_name_of_the_type_of_group_X_empty,
Gbl.Crs.Grps.GrpTyp.GrpTypName);
}
else
if (NewNameGrpTyp[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -4709,6 +4702,12 @@ void Grp_RenameGroupType (void)
NewNameGrpTyp);
}
}
else
{
AlertType = Ale_WARNING;
Str_Copy (AlertTxt,Txt_You_can_not_leave_the_field_empty,
sizeof (AlertTxt) - 1);
}
/***** Show the form again *****/
Str_Copy (Gbl.Crs.Grps.GrpTyp.GrpTypName,NewNameGrpTyp,
@ -4723,7 +4722,7 @@ void Grp_RenameGroupType (void)
void Grp_RenameGroup (void)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_group_X_empty;
extern const char *Txt_You_can_not_leave_the_field_empty;
extern const char *Txt_The_group_X_already_exists;
extern const char *Txt_The_group_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_group_X_has_not_changed;
@ -4748,9 +4747,8 @@ void Grp_RenameGroup (void)
if (!NewNameGrp[0])
{
AlertType = Ale_WARNING;
snprintf (AlertTxt,sizeof (AlertTxt),
Txt_You_can_not_leave_the_name_of_the_group_X_empty,
GrpDat.GrpName);
Str_Copy (AlertTxt,Txt_You_can_not_leave_the_field_empty,
sizeof (AlertTxt) - 1);
}
else
{

View File

@ -875,7 +875,6 @@ static void Hld_ChangeDate (Hld_StartOrEndDate_t StartOrEndDate)
void Hld_RenameHoliday (void)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_holiday_X_empty;
extern const char *Txt_The_name_of_the_holiday_X_has_changed_to_Y;
extern const char *Txt_The_name_of_the_holiday_X_has_not_changed;
char NewHldName[Hld_MAX_BYTES_HOLIDAY_NAME + 1];
@ -895,11 +894,7 @@ void Hld_RenameHoliday (void)
Hld_GetDataOfHolidayByCod (Hld_EditingHld);
/***** Check if new name is empty *****/
if (!NewHldName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_holiday_X_empty,
Hld_EditingHld->Name);
else
if (NewHldName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -923,6 +918,8 @@ void Hld_RenameHoliday (void)
Txt_The_name_of_the_holiday_X_has_not_changed,
Hld_EditingHld->Name);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
}
/*****************************************************************************/

View File

@ -1786,7 +1786,6 @@ void Ins_RenameInsFullInConfig (void)
static void Ins_RenameInstitution (struct Instit *Ins,Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_institution_X_empty;
extern const char *Txt_The_institution_X_already_exists;
extern const char *Txt_The_institution_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_institution_X_has_not_changed;
@ -1819,11 +1818,7 @@ static void Ins_RenameInstitution (struct Instit *Ins,Cns_ShrtOrFullName_t ShrtO
Ins_GetDataOfInstitutionByCod (Ins,Ins_GET_BASIC_DATA);
/***** Check if new name is empty *****/
if (!NewInsName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_institution_X_empty,
CurrentInsName);
else
if (NewInsName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -1855,6 +1850,8 @@ static void Ins_RenameInstitution (struct Instit *Ins,Cns_ShrtOrFullName_t ShrtO
Txt_The_name_of_the_institution_X_has_not_changed,
CurrentInsName);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
}
/*****************************************************************************/
@ -1968,7 +1965,6 @@ static void Ins_UpdateInsCtyDB (long InsCod,long CtyCod)
void Ins_ChangeInsWWW (void)
{
extern const char *Txt_The_new_web_address_is_X;
extern const char *Txt_You_can_not_leave_the_web_address_empty;
char NewWWW[Cns_MAX_BYTES_WWW + 1];
/***** Institution constructor *****/
@ -1999,14 +1995,12 @@ void Ins_ChangeInsWWW (void)
NewWWW);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_web_address_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
}
void Ins_ChangeInsWWWInConfig (void)
{
extern const char *Txt_The_new_web_address_is_X;
extern const char *Txt_You_can_not_leave_the_web_address_empty;
char NewWWW[Cns_MAX_BYTES_WWW + 1];
/***** Get parameters from form *****/
@ -2026,7 +2020,7 @@ void Ins_ChangeInsWWWInConfig (void)
NewWWW);
}
else
Ale_ShowAlert (Ale_WARNING,Txt_You_can_not_leave_the_web_address_empty);
Ale_ShowAlertYouCanNotLeaveFieldEmpty ();
/***** Show the form again *****/
Ins_ShowConfiguration ();

View File

@ -550,7 +550,6 @@ void Lnk_RenameLinkFull (void)
static void Lnk_RenameLink (Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_link_X_empty;
extern const char *Txt_The_link_X_already_exists;
extern const char *Txt_The_link_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_link_X_has_not_changed;
@ -588,11 +587,7 @@ static void Lnk_RenameLink (Cns_ShrtOrFullName_t ShrtOrFullName)
Lnk_GetDataOfLinkByCod (Lnk_EditingLnk);
/***** Check if new name is empty *****/
if (!NewLnkName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_link_X_empty,
CurrentLnkName);
else
if (NewLnkName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -619,6 +614,8 @@ static void Lnk_RenameLink (Cns_ShrtOrFullName_t ShrtOrFullName)
Txt_The_name_of_the_link_X_has_not_changed,
CurrentLnkName);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update name *****/
Str_Copy (CurrentLnkName,NewLnkName,
@ -658,7 +655,6 @@ static void Lnk_UpdateLnkNameDB (long LnkCod,const char *FieldName,const char *N
void Lnk_ChangeLinkWWW (void)
{
extern const char *Txt_The_new_web_address_is_X;
extern const char *Txt_You_can_not_leave_the_web_address_empty;
char NewWWW[Cns_MAX_BYTES_WWW + 1];
/***** Link constructor *****/
@ -689,8 +685,7 @@ void Lnk_ChangeLinkWWW (void)
NewWWW);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_web_address_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update web *****/
Str_Copy (Lnk_EditingLnk->WWW,NewWWW,

View File

@ -612,7 +612,6 @@ void Mai_RenameMailDomainFull (void)
static void Mai_RenameMailDomain (Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_email_domain_X_empty;
extern const char *Txt_The_email_domain_X_already_exists;
extern const char *Txt_The_email_domain_X_has_been_renamed_as_Y;
extern const char *Txt_The_email_domain_X_has_not_changed;
@ -650,11 +649,7 @@ static void Mai_RenameMailDomain (Cns_ShrtOrFullName_t ShrtOrFullName)
Mai_GetDataOfMailDomainByCod (Mai_EditingMai);
/***** Check if new name is empty *****/
if (!NewMaiName[0])
Ale_CreateAlert (Ale_WARNING,Mai_EMAIL_SECTION_ID,
Txt_You_can_not_leave_the_name_of_the_email_domain_X_empty,
CurrentMaiName);
else
if (NewMaiName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -681,6 +676,8 @@ static void Mai_RenameMailDomain (Cns_ShrtOrFullName_t ShrtOrFullName)
Txt_The_email_domain_X_has_not_changed,
CurrentMaiName);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update name *****/
Str_Copy (CurrentMaiName,NewMaiName,

View File

@ -666,7 +666,6 @@ void Plc_RenamePlaceFull (void)
static void Plc_RenamePlace (Cns_ShrtOrFullName_t ShrtOrFullName)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_place_X_empty;
extern const char *Txt_The_place_X_already_exists;
extern const char *Txt_The_place_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_place_X_has_not_changed;
@ -704,11 +703,7 @@ static void Plc_RenamePlace (Cns_ShrtOrFullName_t ShrtOrFullName)
Plc_GetDataOfPlaceByCod (Plc_EditingPlc);
/***** Check if new name is empty *****/
if (!NewPlcName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_place_X_empty,
CurrentPlcName);
else
if (NewPlcName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -735,6 +730,8 @@ static void Plc_RenamePlace (Cns_ShrtOrFullName_t ShrtOrFullName)
Txt_The_name_of_the_place_X_has_not_changed,
CurrentPlcName);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update place name *****/
Str_Copy (CurrentPlcName,NewPlcName,

View File

@ -536,7 +536,6 @@ void Plg_RemovePlugin (void)
void Plg_RenamePlugin (void)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_plugin_X_empty;
extern const char *Txt_The_plugin_X_already_exists;
extern const char *Txt_The_plugin_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_plugin_X_has_not_changed;
@ -557,11 +556,7 @@ void Plg_RenamePlugin (void)
Plg_GetDataOfPluginByCod (Plg_EditingPlg);
/***** Check if new name is empty *****/
if (!NewPlgName[0])
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_name_of_the_plugin_X_empty,
Plg_EditingPlg->Name);
else
if (NewPlgName[0])
{
/***** Check if old and new names are the same
(this happens when return is pressed without changes) *****/
@ -590,6 +585,8 @@ void Plg_RenamePlugin (void)
Txt_The_name_of_the_plugin_X_has_not_changed,
Plg_EditingPlg->Name);
}
else
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update name *****/
Str_Copy (Plg_EditingPlg->Name,NewPlgName,
@ -617,7 +614,6 @@ static bool Plg_CheckIfPluginNameExists (const char *Name,long PlgCod)
void Plg_ChangePlgDescription (void)
{
extern const char *Txt_The_new_description_is_X;
extern const char *Txt_You_can_not_leave_the_description_empty;
char NewDescription[Plg_MAX_BYTES_PLUGIN_DESCRIPTION + 1];
/***** Plugin constructor *****/
@ -648,8 +644,7 @@ void Plg_ChangePlgDescription (void)
NewDescription);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_description_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update description *****/
Str_Copy (Plg_EditingPlg->Description,NewDescription,
@ -663,7 +658,6 @@ void Plg_ChangePlgDescription (void)
void Plg_ChangePlgLogo (void)
{
extern const char *Txt_The_new_logo_is_X;
extern const char *Txt_You_can_not_leave_the_logo_empty;
char NewLogo[Plg_MAX_BYTES_PLUGIN_LOGO + 1];
/***** Plugin constructor *****/
@ -694,8 +688,7 @@ void Plg_ChangePlgLogo (void)
NewLogo);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_logo_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update logo *****/
Str_Copy (Plg_EditingPlg->Logo,NewLogo,
@ -709,7 +702,6 @@ void Plg_ChangePlgLogo (void)
void Plg_ChangePlgAppKey (void)
{
extern const char *Txt_The_new_logo_is_X; // TODO: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
extern const char *Txt_You_can_not_leave_the_logo_empty; // TODO: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
char NewAppKey[Plg_MAX_BYTES_PLUGIN_APP_KEY + 1];
/***** Plugin constructor *****/
@ -740,8 +732,7 @@ void Plg_ChangePlgAppKey (void)
NewAppKey);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_logo_empty); // TODO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update app key *****/
Str_Copy (Plg_EditingPlg->AppKey,NewAppKey,
@ -755,7 +746,6 @@ void Plg_ChangePlgAppKey (void)
void Plg_ChangePlgURL (void)
{
extern const char *Txt_The_new_URL_is_X;
extern const char *Txt_You_can_not_leave_the_URL_empty;
char NewURL[Cns_MAX_BYTES_WWW + 1];
/***** Plugin constructor *****/
@ -786,8 +776,7 @@ void Plg_ChangePlgURL (void)
NewURL);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_URL_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update URL *****/
Str_Copy (Plg_EditingPlg->URL,NewURL,
@ -801,7 +790,6 @@ void Plg_ChangePlgURL (void)
void Plg_ChangePlgIP (void)
{
extern const char *Txt_The_new_IP_address_is_X;
extern const char *Txt_You_can_not_leave_the_IP_address_empty;
char NewIP[Cns_MAX_BYTES_IP + 1];
/***** Plugin constructor *****/
@ -832,8 +820,7 @@ void Plg_ChangePlgIP (void)
NewIP);
}
else
Ale_CreateAlert (Ale_WARNING,NULL,
Txt_You_can_not_leave_the_IP_address_empty);
Ale_CreateAlertYouCanNotLeaveFieldEmpty ();
/***** Update IP *****/
Str_Copy (Plg_EditingPlg->IP,NewIP,

View File

@ -754,7 +754,6 @@ void Rec_RemoveField (void)
void Rec_RenameField (void)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_field_X_empty;
extern const char *Txt_The_record_field_X_already_exists;
extern const char *Txt_The_record_field_X_has_been_renamed_as_Y;
extern const char *Txt_The_name_of_the_field_X_has_not_changed;
@ -775,10 +774,7 @@ void Rec_RenameField (void)
&Gbl.Crs.Records.Field.Visibility);
/***** Check if new name is empty *****/
if (!NewFieldName[0])
Ale_ShowAlert (Ale_ERROR,Txt_You_can_not_leave_the_name_of_the_field_X_empty,
Gbl.Crs.Records.Field.Name);
else
if (NewFieldName[0])
{
/***** Check if the name of the olde field match the new one
(this happens when return is pressed without changes) *****/
@ -805,6 +801,8 @@ void Rec_RenameField (void)
Ale_ShowAlert (Ale_INFO,Txt_The_name_of_the_field_X_has_not_changed,
NewFieldName);
}
else
Ale_ShowAlertYouCanNotLeaveFieldEmpty ();
/***** Show the form again *****/
Str_Copy (Gbl.Crs.Records.Field.Name,NewFieldName,

View File

@ -1505,7 +1505,6 @@ static long Tst_GetParamTagCode (void)
void Tst_RenameTag (void)
{
extern const char *Txt_You_can_not_leave_the_name_of_the_tag_X_empty;
extern const char *Txt_The_tag_X_has_been_renamed_as_Y;
extern const char *Txt_The_tag_X_has_not_changed;
char OldTagTxt[Tst_MAX_BYTES_TAG + 1];
@ -1519,10 +1518,7 @@ void Tst_RenameTag (void)
Par_GetParToText ("NewTagTxt",NewTagTxt,Tst_MAX_BYTES_TAG);
/***** Check that the new tag is not empty *****/
if (!NewTagTxt[0]) // New tag empty
Ale_ShowAlert (Ale_WARNING,Txt_You_can_not_leave_the_name_of_the_tag_X_empty,
OldTagTxt);
else // New tag not empty
if (NewTagTxt[0]) // New tag not empty
{
/***** Check if the old tag is equal to the new one *****/
if (!strcmp (OldTagTxt,NewTagTxt)) // The old and the new tag
@ -1613,6 +1609,8 @@ void Tst_RenameTag (void)
OldTagTxt,NewTagTxt);
}
}
else // New tag empty
Ale_ShowAlertYouCanNotLeaveFieldEmpty ();
/***** Show again the form to configure test *****/
Tst_ShowFormConfig ();

View File

@ -55075,27 +55075,6 @@ const char *Txt_You_can_not_leave_empty_intermediate_answers =
"Você não pode deixar respostas intermediárias vazias.";
#endif
const char *Txt_You_can_not_leave_the_description_empty =
#if L==1 // ca
"No puede dejar la descripción vacía."; // Necessita traduccio
#elif L==2 // de
"You can not leave the description empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the description empty.";
#elif L==4 // es
"No puede dejar la descripción vacía.";
#elif L==5 // fr
"You can not leave the description empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar la descripción vacía."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare vuota la descrizione.";
#elif L==8 // pl
"You can not leave the description empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Você não pode deixar a descrição vazia.";
#endif
/*
const char *Txt_You_can_not_leave_the_field_empty =
#if L==1 // ca
"No podeu deixar el camp buit.";
@ -55116,7 +55095,7 @@ const char *Txt_You_can_not_leave_the_field_empty =
#elif L==9 // pt
"Você não pode deixar o campo vazio.";
#endif
*/
const char *Txt_You_can_not_leave_the_image_empty =
#if L==1 // ca
"No puede dejar la imagen vacía."; // Necessita traduccio
@ -55138,630 +55117,6 @@ const char *Txt_You_can_not_leave_the_image_empty =
"Você não pode deixar a imagem vazia.";
#endif
const char *Txt_You_can_not_leave_the_IP_address_empty =
#if L==1 // ca
"No puede dejar la dirección IP vacía."; // Necessita traduccio
#elif L==2 // de
"You can not leave the IP address empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the IP address empty.";
#elif L==4 // es
"No puede dejar la dirección IP vacía.";
#elif L==5 // fr
"You can not leave the IP address empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar la dirección IP vacía."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare vuoto l'indirizzo IP.";
#elif L==8 // pl
"You can not leave the IP address empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Você não pode deixar o endereço IP vazio.";
#endif
const char *Txt_You_can_not_leave_the_logo_empty =
#if L==1 // ca
"No puede dejar el logo vacío."; // Necessita traduccio
#elif L==2 // de
"You can not leave the logo empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the logo empty.";
#elif L==4 // es
"No puede dejar el logo vacío.";
#elif L==5 // fr
"You can not leave the logo empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el logo vacío."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare vuoto il logo.";
#elif L==8 // pl
"You can not leave the logo empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Você não pode deixar o logotipo vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_banner_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del banner <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the banner <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the banner <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del banner <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the banner <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del banner <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del banner <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the banner <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do banner <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_centre_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del centro <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the centre <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the centre <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del centro <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the centre <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del centro <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del centro <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the centre <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do centro <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_classroom_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No pot deixar el nom"
" de l'aula <strong>%s</strong> buit.";
#elif L==2 // de
"Sie k&ouml;nnen den Namen"
" des Klassenzimmer <strong>%s</strong> nicht leer lassen.";
#elif L==3 // en
"You can not leave the name"
" of the classroom <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del aula <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"Vous ne pouvez pas laisser le nom"
" de la salle de classe <strong>%s</strong> vide.";
#elif L==6 // gn
"No puede dejar el nombre"
" del aula <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" della aula <strong>%s</strong> vuoto.";
#elif L==8 // pl
"Nie mo&zdot;esz zostawi&cacute;"
" pustego imienia w klasie <strong>%s</strong>.";
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" da sala de clase <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_course_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" de la asignatura <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the course <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the course <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" de la asignatura <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the course <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" de la asignatura <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del corso <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the course <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" da disciplina <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_country_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del pa%iacute;s <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the country <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the country <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del pa%iacute;s <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the country <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del pa%iacute;s <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del paese <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the country <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do pa&iacute;s <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_degree_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" de la titulaci&oacute;n <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the degree <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the degree <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" de la titulaci&oacute;n <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the degree <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" de la titulaci&oacute;n <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" della laurea <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the degree <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do grau <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_department_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del departamento <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the department <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the department <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del departamento <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the department <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del departamento <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del dipartimento <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the department <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do departamento <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_email_domain_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre "
"del dominio de correo <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the email domain <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the email domain <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del dominio de correo <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the email domain <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del dominio de correo <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del campo mail <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the email domain <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do dom&iacute;nio de email <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_field_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del campo <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the field <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the field <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del campo <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the field <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del campo <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del campo <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the field <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do campo <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_group_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del grupo <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the group <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the group <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del grupo <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the group <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del grupo <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del gruppo <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the group <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do grupo <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_holiday_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" de la festividad <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the holiday <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the holiday <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" de la festividad <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the holiday <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" de la festividad <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" della festivit&agrave; <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the holiday <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do feriado <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_institution_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" de la instituci&oacute;n <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the institution <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the institution <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" de la instituci&oacute;n <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the institution <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" de la instituci&oacute;n <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" dell'istituzione <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the institution <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" da institui&ccedil;&atilde;o <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_link_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del enlace <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the link <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the link <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del enlace <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the link <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del enlace <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del link <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the link <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do link <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_place_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No pot deixar el nom"
" del lloc <strong>%s</strong> buit.";
#elif L==2 // de
"Sie k&ouml;nnen den Namen"
" des Standorte <strong>%s</strong> nicht leer lassen.";
#elif L==3 // en
"You can not leave the name"
" of the place <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del lugar <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"Vous ne pouvez pas laisser le nom"
" du emplacement <strong>%s</strong> vide.";
#elif L==6 // gn
"No puede dejar el nombre"
" del lugar <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del luogo <strong>%s</strong> vuoto.";
#elif L==8 // pl
"Nie mo&zdot;esz zostawi&cacute; nazwy"
" miejsca <strong>%s</strong> pustego.";
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" da localiza&ccedil;&atilde;o <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_plugin_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del complemento <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the plugin <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the plugin <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del complemento <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the plugin <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del complemento <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del plugin <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the plugin <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do plugin <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_tag_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del descriptor <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the tag <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the tag <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del descriptor <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the tag <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del descriptor <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" dell'etichetta <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the tag <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do descritor <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_type_of_degree_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del tipo de titulaci&oacute;n <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the type of degree <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the type of degree <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del tipo de titulaci&oacute;n <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the type of degree <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del tipo de titulaci&oacute;n <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del tipo di laurea <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the type of degree <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do tipo de grau <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_name_of_the_type_of_group_X_empty = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"No puede dejar el nombre"
" del tipo de grupo <strong>%s</strong> vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the name"
" of the type of group <strong>%s</strong> empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the name"
" of the type of group <strong>%s</strong> empty.";
#elif L==4 // es
"No puede dejar el nombre"
" del tipo de grupo <strong>%s</strong> vac&iacute;o.";
#elif L==5 // fr
"You can not leave the name"
" of the type of group <strong>%s</strong> empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el nombre"
" del tipo de grupo <strong>%s</strong> vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare il nome"
" del tipo di gruppo <strong>%s</strong> vuoto.";
#elif L==8 // pl
"You can not leave the name"
" of the type of group <strong>%s</strong> empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o nome"
" do tipo de grupo <strong>%s</strong> vazio.";
#endif
const char *Txt_You_can_not_leave_the_URL_empty =
#if L==1 // ca
"No puede dejar el URL vac&iacute;o."; // Necessita traduccio
#elif L==2 // de
"You can not leave the URL empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the URL empty.";
#elif L==4 // es
"No puede dejar el URL vac&iacute;o.";
#elif L==5 // fr
"You can not leave the URL empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar el URL vac&iacute;o."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare l'URL vuoto.";
#elif L==8 // pl
"You can not leave the URL empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o URL vazio.";
#endif
const char *Txt_You_can_not_leave_the_web_address_empty =
#if L==1 // ca
"No puede dejar la direcci&oacute;n web vac&iacute;a."; // Necessita traduccio
#elif L==2 // de
"You can not leave the web address empty."; // Need Übersetzung
#elif L==3 // en
"You can not leave the web address empty.";
#elif L==4 // es
"No puede dejar la direcci&oacute;n web vac&iacute;a.";
#elif L==5 // fr
"You can not leave the web address empty."; // Besoin de traduction
#elif L==6 // gn
"No puede dejar la direcci&oacute;n web vac&iacute;a."; // Okoteve traducción
#elif L==7 // it
"Non puoi lasciare l'indirizzo web vuoto.";
#elif L==8 // pl
"You can not leave the web address empty."; // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Voc&ecirc; n&atilde;o pode deixar o endere&ccedil;o web vazio.";
#endif
const char *Txt_You_can_not_paste_file_or_folder_here =
#if L==1 // ca
"No puede pegar un archivo o carpeta aqu&iacute;."; // Necessita traduccio