mirror of
https://github.com/acanas/swad-core.git
synced 2024-06-18 06:25:42 +02:00
Version 23.80: May 09, 2024 Code refactoring in HTML related to disabled field in forms.
This commit is contained in:
parent
bb910d6ee2
commit
94b368f9b7
341
swad_HTML.c
341
swad_HTML.c
|
@ -35,20 +35,16 @@
|
|||
#include "swad_global.h"
|
||||
#include "swad_HTML.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/***************************** Public constants ******************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
const char *HTM_DisabledTxt[Cns_NUM_DISABLED] =
|
||||
{
|
||||
[Cns_DISABLED] = " disabled=\"disabled\"",
|
||||
[Cns_ENABLED ] = "",
|
||||
};
|
||||
|
||||
/*****************************************************************************/
|
||||
/**************************** Private constants ******************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
static const char *HTM_DisabledTxt[HTM_NUM_DISABLED] =
|
||||
{
|
||||
[HTM_DISABLED] = " disabled=\"disabled\"",
|
||||
[HTM_ENABLED ] = "",
|
||||
};
|
||||
|
||||
static const char *ClassAlign[HTM_NUM_HEAD_ALIGN] =
|
||||
{
|
||||
[HTM_HEAD_LEFT ] = "LT",
|
||||
|
@ -84,35 +80,6 @@ static unsigned HTM_STRONG_NestingLevel = 0;
|
|||
static unsigned HTM_EM_NestingLevel = 0;
|
||||
static unsigned HTM_U_NestingLevel = 0;
|
||||
|
||||
/*****************************************************************************/
|
||||
/***************************** Private prototypes ****************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
static void HTM_TABLE_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_TBODY_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_TR_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_TD_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_DIV_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_SPAN_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_UL_BeginWithoutAttr (void);
|
||||
static void HTM_LI_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_A_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_FIELDSET_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_LABEL_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_TEXTAREA_BeginWithoutAttr (void);
|
||||
|
||||
static void HTM_SELECT_BeginWithoutAttr (void);
|
||||
|
||||
/*****************************************************************************/
|
||||
/******************************* Begin/end title *****************************/
|
||||
/*****************************************************************************/
|
||||
|
@ -137,8 +104,9 @@ void HTM_TABLE_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Class;
|
||||
|
||||
HTM_Txt ("<table");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -148,35 +116,25 @@ void HTM_TABLE_Begin (const char *fmt,...)
|
|||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<table class=\"%s\">",Class);
|
||||
|
||||
HTM_TABLE_NestingLevel++;
|
||||
HTM_TxtF (" class=\"%s\"",Class);
|
||||
|
||||
free (Class);
|
||||
}
|
||||
else
|
||||
HTM_TABLE_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_TABLE_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_TABLE_NestingLevel++;
|
||||
}
|
||||
|
||||
void HTM_TABLE_BeginPadding (unsigned CellPadding)
|
||||
{
|
||||
HTM_Txt ("<table");
|
||||
|
||||
if (CellPadding)
|
||||
{
|
||||
HTM_TxtF ("<table class=\"CELLS_PAD_%u\">",
|
||||
HTM_TxtF (" class=\"CELLS_PAD_%u\">",
|
||||
CellPadding); // CellPadding must be 0, 1, 2, 5 or 10
|
||||
|
||||
HTM_TABLE_NestingLevel++;
|
||||
}
|
||||
else
|
||||
HTM_TABLE_BeginWithoutAttr ();
|
||||
}
|
||||
|
||||
static void HTM_TABLE_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<table>");
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_TABLE_NestingLevel++;
|
||||
}
|
||||
|
@ -253,8 +211,9 @@ void HTM_TBODY_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<tbody");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -263,21 +222,13 @@ void HTM_TBODY_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<tbody %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_TBODY_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_TBODY_BeginWithoutAttr ();
|
||||
}
|
||||
|
||||
static void HTM_TBODY_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<tbody>");
|
||||
HTM_Txt (">");
|
||||
}
|
||||
|
||||
void HTM_TBODY_End (void)
|
||||
|
@ -295,8 +246,9 @@ void HTM_TR_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<tr");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -305,25 +257,17 @@ void HTM_TR_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<tr %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_TR_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_TR_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_TR_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_TR_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<tr>");
|
||||
}
|
||||
|
||||
void HTM_TR_End (void)
|
||||
{
|
||||
if (HTM_TR_NestingLevel == 0) // No TR open
|
||||
|
@ -515,8 +459,9 @@ void HTM_TD_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<td");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -525,25 +470,17 @@ void HTM_TD_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<td %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_TD_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_TD_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_TD_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_TD_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<td>");
|
||||
}
|
||||
|
||||
void HTM_TD_End (void)
|
||||
{
|
||||
if (HTM_TD_NestingLevel == 0) // No TD open
|
||||
|
@ -590,8 +527,9 @@ void HTM_DIV_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<div");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -600,25 +538,17 @@ void HTM_DIV_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<div %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_DIV_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_DIV_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_DIV_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_DIV_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<div>");
|
||||
}
|
||||
|
||||
void HTM_DIV_End (void)
|
||||
{
|
||||
if (HTM_DIV_NestingLevel == 0) // No DIV open
|
||||
|
@ -681,8 +611,9 @@ void HTM_SPAN_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<span");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -691,25 +622,17 @@ void HTM_SPAN_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<span %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_SPAN_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_SPAN_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_SPAN_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_SPAN_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<span>");
|
||||
}
|
||||
|
||||
void HTM_SPAN_End (void)
|
||||
{
|
||||
if (HTM_SPAN_NestingLevel == 0) // No SPAN open
|
||||
|
@ -747,8 +670,9 @@ void HTM_UL_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<ul");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -757,25 +681,17 @@ void HTM_UL_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<ul %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_UL_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_UL_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_UL_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_UL_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<ul>");
|
||||
}
|
||||
|
||||
void HTM_UL_End (void)
|
||||
{
|
||||
if (HTM_UL_NestingLevel == 0) // No UL open
|
||||
|
@ -796,8 +712,9 @@ void HTM_LI_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<li");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -806,25 +723,17 @@ void HTM_LI_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<li %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_LI_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_LI_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_LI_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_LI_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<li>");
|
||||
}
|
||||
|
||||
void HTM_LI_End (void)
|
||||
{
|
||||
if (HTM_LI_NestingLevel == 0) // No LI open
|
||||
|
@ -900,8 +809,9 @@ void HTM_A_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<a");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -910,25 +820,17 @@ void HTM_A_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<a %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_A_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_A_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_A_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_A_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<a>");
|
||||
}
|
||||
|
||||
void HTM_A_End (void)
|
||||
{
|
||||
if (HTM_A_NestingLevel == 0) // No A open
|
||||
|
@ -1004,8 +906,9 @@ void HTM_FIELDSET_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<fieldset");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -1014,25 +917,17 @@ void HTM_FIELDSET_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<fieldset %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_FIELDSET_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_FIELDSET_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_FIELDSET_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_FIELDSET_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<fieldset>");
|
||||
}
|
||||
|
||||
void HTM_FIELDSET_End (void)
|
||||
{
|
||||
if (HTM_FIELDSET_NestingLevel == 0) // No FIELDSET open
|
||||
|
@ -1060,8 +955,9 @@ void HTM_LABEL_Begin (const char *fmt,...)
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<label");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -1070,25 +966,17 @@ void HTM_LABEL_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<label %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_LABEL_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_LABEL_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (">");
|
||||
|
||||
HTM_LABEL_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_LABEL_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<label>");
|
||||
}
|
||||
|
||||
void HTM_LABEL_End (void)
|
||||
{
|
||||
if (HTM_LABEL_NestingLevel == 0) // No LABEL open
|
||||
|
@ -1104,6 +992,7 @@ void HTM_LABEL_End (void)
|
|||
/*****************************************************************************/
|
||||
|
||||
void HTM_INPUT_TEXT (const char *Name,unsigned MaxLength,const char *Value,
|
||||
HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
const char *fmt,...)
|
||||
{
|
||||
|
@ -1114,6 +1003,8 @@ void HTM_INPUT_TEXT (const char *Name,unsigned MaxLength,const char *Value,
|
|||
HTM_TxtF ("<input type=\"text\" name=\"%s\" maxlength=\"%u\" value=\"%s\"",
|
||||
Name,MaxLength,Value);
|
||||
|
||||
HTM_Txt (HTM_DisabledTxt[Disabled]);
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
|
@ -1382,18 +1273,19 @@ void HTM_INPUT_PASSWORD (const char *Name,const char *PlaceHolder,
|
|||
}
|
||||
|
||||
void HTM_INPUT_LONG (const char *Name,long Min,long Max,long Value,
|
||||
HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
Cns_Disabled_t Disabled,
|
||||
const char *fmt,...)
|
||||
{
|
||||
va_list ap;
|
||||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_TxtF ("<input type=\"number\" name=\"%s\" min=\"%ld\" max=\"%ld\" value=\"%ld\"",
|
||||
HTM_TxtF ("<input type=\"number\" name=\"%s\""
|
||||
" min=\"%ld\" max=\"%ld\" value=\"%ld\"",
|
||||
Name,Min,Max,Value);
|
||||
if (Disabled == Cns_DISABLED)
|
||||
HTM_Txt (" disabled=\"disabled\"");
|
||||
|
||||
HTM_Txt (HTM_DisabledTxt[Disabled]);
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
|
@ -1422,7 +1314,6 @@ void HTM_INPUT_FLOAT (const char *Name,double Min,double Max,
|
|||
double Step, // Use 0 for "any"
|
||||
double Value,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
Cns_Disabled_t Disabled,
|
||||
const char *fmt,...)
|
||||
{
|
||||
va_list ap;
|
||||
|
@ -1432,16 +1323,13 @@ void HTM_INPUT_FLOAT (const char *Name,double Min,double Max,
|
|||
Str_SetDecimalPointToUS (); // To print the floating point as a dot
|
||||
HTM_TxtF ("<input type=\"number\" name=\"%s\""
|
||||
" min=\"%.15lg\" max=\"%.15lg\"",
|
||||
Name,
|
||||
Min,Max);
|
||||
Name,Min,Max);
|
||||
if (Step == 0.0)
|
||||
HTM_Txt (" step=\"any\"");
|
||||
else
|
||||
HTM_TxtF (" step=\"%.15lg\"",Step);
|
||||
HTM_TxtF (" value=\"%.15lg\"",Value);
|
||||
Str_SetDecimalPointToLocal (); // Return to local system
|
||||
if (Disabled == Cns_DISABLED)
|
||||
HTM_Txt (" disabled=\"disabled\"");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
|
@ -1467,7 +1355,7 @@ void HTM_INPUT_FLOAT (const char *Name,double Min,double Max,
|
|||
}
|
||||
|
||||
void HTM_INPUT_RADIO (const char *Name,
|
||||
Cns_Checked_t Checked,
|
||||
Cns_Checked_t Checked,HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnClick_t SubmitOnClick,
|
||||
const char *fmt,...)
|
||||
{
|
||||
|
@ -1497,6 +1385,8 @@ void HTM_INPUT_RADIO (const char *Name,
|
|||
if (Checked == Cns_CHECKED)
|
||||
HTM_Txt (" checked=\"checked\"");
|
||||
|
||||
HTM_Txt (HTM_DisabledTxt[Disabled]);
|
||||
|
||||
if (SubmitOnClick == HTM_SUBMIT_ON_CLICK)
|
||||
HTM_Txt (" onchange=\"this.form.submit();return false;\"");
|
||||
|
||||
|
@ -1504,7 +1394,7 @@ void HTM_INPUT_RADIO (const char *Name,
|
|||
}
|
||||
|
||||
void HTM_INPUT_CHECKBOX (const char *Name,
|
||||
Cns_Checked_t Checked,
|
||||
Cns_Checked_t Checked,HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
const char *fmt,...)
|
||||
{
|
||||
|
@ -1534,6 +1424,8 @@ void HTM_INPUT_CHECKBOX (const char *Name,
|
|||
if (Checked == Cns_CHECKED)
|
||||
HTM_Txt (" checked=\"checked\"");
|
||||
|
||||
HTM_Txt (HTM_DisabledTxt[Disabled]);
|
||||
|
||||
if (SubmitOnChange == HTM_SUBMIT_ON_CHANGE)
|
||||
HTM_Txt (" onchange=\"this.form.submit();return false;\"");
|
||||
|
||||
|
@ -1623,14 +1515,15 @@ void HTM_BUTTON_End (void)
|
|||
/********************************* Text areas ********************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void HTM_TEXTAREA_Begin (const char *fmt,...)
|
||||
void HTM_TEXTAREA_Begin (HTM_Disabled_t Disabled,const char *fmt,...)
|
||||
{
|
||||
va_list ap;
|
||||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<textarea");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -1639,25 +1532,18 @@ void HTM_TEXTAREA_Begin (const char *fmt,...)
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<textarea %s>",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_TEXTAREA_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_TEXTAREA_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (HTM_DisabledTxt[Disabled]);
|
||||
|
||||
HTM_Txt (">");
|
||||
HTM_TEXTAREA_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_TEXTAREA_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<textarea>");
|
||||
}
|
||||
|
||||
void HTM_TEXTAREA_End (void)
|
||||
{
|
||||
if (HTM_TEXTAREA_NestingLevel == 0) // No TEXTAREA open
|
||||
|
@ -1672,7 +1558,8 @@ void HTM_TEXTAREA_End (void)
|
|||
/********************************** Selectors ********************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void HTM_SELECT_Begin (HTM_SubmitOnChange_t SubmitOnChange,
|
||||
void HTM_SELECT_Begin (HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
const char *FuncsOnChange, // if not null ==> must include ending ";"
|
||||
const char *fmt,...)
|
||||
{
|
||||
|
@ -1680,8 +1567,9 @@ void HTM_SELECT_Begin (HTM_SubmitOnChange_t SubmitOnChange,
|
|||
int NumBytesPrinted;
|
||||
char *Attr;
|
||||
|
||||
HTM_Txt ("<select");
|
||||
|
||||
if (fmt)
|
||||
{
|
||||
if (fmt[0])
|
||||
{
|
||||
va_start (ap,fmt);
|
||||
|
@ -1690,16 +1578,13 @@ void HTM_SELECT_Begin (HTM_SubmitOnChange_t SubmitOnChange,
|
|||
if (NumBytesPrinted < 0) // -1 if no memory or any other error
|
||||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Print HTML *****/
|
||||
HTM_TxtF ("<select %s",Attr);
|
||||
/***** Print attributes *****/
|
||||
HTM_SPTxt (Attr);
|
||||
|
||||
free (Attr);
|
||||
}
|
||||
else
|
||||
HTM_SELECT_BeginWithoutAttr ();
|
||||
}
|
||||
else
|
||||
HTM_SELECT_BeginWithoutAttr ();
|
||||
|
||||
HTM_Txt (HTM_DisabledTxt[Disabled]);
|
||||
|
||||
if (SubmitOnChange == HTM_SUBMIT_ON_CHANGE || FuncsOnChange)
|
||||
{
|
||||
|
@ -1714,15 +1599,10 @@ void HTM_SELECT_Begin (HTM_SubmitOnChange_t SubmitOnChange,
|
|||
HTM_Txt ("return false;\"");
|
||||
}
|
||||
|
||||
HTM_Txt (" />");
|
||||
HTM_Txt (">");
|
||||
HTM_SELECT_NestingLevel++;
|
||||
}
|
||||
|
||||
static void HTM_SELECT_BeginWithoutAttr (void)
|
||||
{
|
||||
HTM_Txt ("<select");
|
||||
}
|
||||
|
||||
void HTM_SELECT_End (void)
|
||||
{
|
||||
if (HTM_SELECT_NestingLevel == 0) // No SELECT open
|
||||
|
@ -1751,7 +1631,7 @@ void HTM_OPTGROUP_End (void)
|
|||
}
|
||||
|
||||
void HTM_OPTION (HTM_Type_t Type,const void *ValuePtr,
|
||||
HTM_OptionSelected_t Selected,HTM_OptionDisabled_t Disabled,
|
||||
HTM_OptionSelected_t Selected,HTM_Disabled_t Disabled,
|
||||
const char *fmt,...)
|
||||
{
|
||||
va_list ap;
|
||||
|
@ -1774,8 +1654,7 @@ void HTM_OPTION (HTM_Type_t Type,const void *ValuePtr,
|
|||
HTM_Txt ("\"");
|
||||
if (Selected == HTM_OPTION_SELECTED)
|
||||
HTM_Txt (" selected=\"selected\"");
|
||||
if (Disabled == HTM_OPTION_DISABLED)
|
||||
HTM_Txt (" disabled=\"disabled\"");
|
||||
HTM_Txt (HTM_DisabledTxt[Disabled]);
|
||||
HTM_Txt (">");
|
||||
|
||||
if (fmt)
|
||||
|
|
22
swad_HTML.h
22
swad_HTML.h
|
@ -67,11 +67,12 @@ typedef enum
|
|||
HTM_OPTION_SELECTED,
|
||||
} HTM_OptionSelected_t;
|
||||
|
||||
#define HTM_NUM_DISABLED 2
|
||||
typedef enum
|
||||
{
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_OPTION_DISABLED,
|
||||
} HTM_OptionDisabled_t;
|
||||
HTM_ENABLED,
|
||||
HTM_DISABLED,
|
||||
} HTM_Disabled_t;
|
||||
|
||||
#define HTM_NUM_HEAD_ALIGN 3
|
||||
typedef enum
|
||||
|
@ -165,6 +166,7 @@ void HTM_LABEL_Begin (const char *fmt,...);
|
|||
void HTM_LABEL_End (void);
|
||||
|
||||
void HTM_INPUT_TEXT (const char *Name,unsigned MaxLength,const char *Value,
|
||||
HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
const char *fmt,...);
|
||||
void HTM_INPUT_SEARCH (const char *Name,unsigned MaxLength,const char *Value,
|
||||
|
@ -187,21 +189,20 @@ void HTM_INPUT_PASSWORD (const char *Name,const char *PlaceHolder,
|
|||
const char *AutoComplete,HTM_Required_t Required,
|
||||
const char *fmt,...);
|
||||
void HTM_INPUT_LONG (const char *Name,long Min,long Max,long Value,
|
||||
HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
Cns_Disabled_t Disabled,
|
||||
const char *fmt,...);
|
||||
void HTM_INPUT_FLOAT (const char *Name,double Min,double Max,
|
||||
double Step, // Use 0 for "any"
|
||||
double Value,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
Cns_Disabled_t Disabled,
|
||||
const char *fmt,...);
|
||||
void HTM_INPUT_RADIO (const char *Name,
|
||||
Cns_Checked_t Checked,
|
||||
Cns_Checked_t Checked,HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnClick_t SubmitOnClick,
|
||||
const char *fmt,...);
|
||||
void HTM_INPUT_CHECKBOX (const char *Name,
|
||||
Cns_Checked_t Checked,
|
||||
Cns_Checked_t Checked,HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
const char *fmt,...);
|
||||
|
||||
|
@ -209,17 +210,18 @@ void HTM_BUTTON_Submit_Begin (const char *Title,const char *fmt,...);
|
|||
void HTM_BUTTON_Begin (const char *Title,const char *fmt,...);
|
||||
void HTM_BUTTON_End (void);
|
||||
|
||||
void HTM_TEXTAREA_Begin (const char *fmt,...);
|
||||
void HTM_TEXTAREA_Begin (HTM_Disabled_t Disabled,const char *fmt,...);
|
||||
void HTM_TEXTAREA_End (void);
|
||||
|
||||
void HTM_SELECT_Begin (HTM_SubmitOnChange_t SubmitOnChange,
|
||||
void HTM_SELECT_Begin (HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
const char *FuncsOnChange,
|
||||
const char *fmt,...);
|
||||
void HTM_SELECT_End (void);
|
||||
void HTM_OPTGROUP_Begin (const char *Label);
|
||||
void HTM_OPTGROUP_End (void);
|
||||
void HTM_OPTION (HTM_Type_t Type,const void *ValuePtr,
|
||||
HTM_OptionSelected_t Selected,HTM_OptionDisabled_t Disabled,
|
||||
HTM_OptionSelected_t Selected,HTM_Disabled_t Disabled,
|
||||
const char *fmt,...);
|
||||
|
||||
void HTM_IMG (const char *URL,const char *Icon,const char *Title,
|
||||
|
|
|
@ -643,7 +643,7 @@ static void ID_ShowFormChangeUsrID (Usr_MeOrOther_t MeOrOther,bool IShouldFillIn
|
|||
HTM_INPUT_TEXT ("NewID",ID_MAX_BYTES_USR_ID,
|
||||
UsrDat[MeOrOther]->IDs.Num ? UsrDat[MeOrOther]->IDs.List[UsrDat[MeOrOther]->IDs.Num - 1].ID :
|
||||
"", // Show the most recent ID
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"NewID\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" size=\"16\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -80,7 +80,7 @@ static void MAC_PutFormToEditMACAddress (Act_Action_t NextAction,const char *Anc
|
|||
Frm_BeginFormAnchor (NextAction,Anchor);
|
||||
FuncPars (Args);
|
||||
HTM_INPUT_TEXT ("NewMAC",MAC_LENGTH_MAC_ADDRESS,((struct MAC_Pars *) Args)->MACstr,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
|
|
@ -166,7 +166,7 @@ static void Acc_ShowFormCheckIfIHaveAccount (const char *Title)
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtColonNBSP (Txt_ID);
|
||||
HTM_INPUT_TEXT ("ID",ID_MAX_CHARS_USR_ID,"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"16\" placeholder=\"%s\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
Txt_ID_identity_number,The_GetSuffix ());
|
||||
|
|
|
@ -1408,7 +1408,7 @@ void Agd_ReqCreatOrEditEvent (void)
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_INPUT_TEXT ("Event",Agd_MAX_CHARS_EVENT,AgdEvent.Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Event\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1427,7 +1427,7 @@ void Agd_ReqCreatOrEditEvent (void)
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_INPUT_TEXT ("Location",Agd_MAX_CHARS_LOCATION,AgdEvent.Location,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Location\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1450,7 +1450,8 @@ void Agd_ReqCreatOrEditEvent (void)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
if (!ItsANewEvent)
|
||||
|
|
|
@ -356,7 +356,7 @@ void Ann_ShowFormAnnouncement (void)
|
|||
1 << Rol_STD |
|
||||
1 << Rol_NET |
|
||||
1 << Rol_TCH,
|
||||
Cns_DISABLED,
|
||||
HTM_DISABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE);
|
||||
HTM_TD_End ();
|
||||
HTM_TR_End ();
|
||||
|
@ -383,10 +383,10 @@ static void Ann_PutSubjectMessage (const char *Field,const char *Label,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"%s\" name=\"%s\" cols=\"75\" rows=\"%u\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"%s\" name=\"%s\" cols=\"75\" rows=\"%u\""
|
||||
" class=\"INPUT_%s\"",
|
||||
Field,Field,Rows,
|
||||
The_GetSuffix ());
|
||||
Field,Field,Rows,The_GetSuffix ());
|
||||
HTM_TEXTAREA_End ();
|
||||
HTM_TD_End ();
|
||||
|
||||
|
|
|
@ -1228,9 +1228,8 @@ void Asg_ReqCreatOrEditAsg (void)
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LM\"");
|
||||
HTM_INPUT_TEXT ("Title",Asg_MAX_CHARS_ASSIGNMENT_TITLE,Assignments.Asg.Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
HTM_ENABLED, HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
@ -1253,9 +1252,8 @@ void Asg_ReqCreatOrEditAsg (void)
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LM\"");
|
||||
HTM_LABEL_Begin ("class=\"DAT_%s\"",The_GetSuffix ());
|
||||
HTM_INPUT_TEXT ("Folder",Brw_MAX_CHARS_FOLDER,Assignments.Asg.Folder,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Folder\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Folder\" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_LABEL_End ();
|
||||
HTM_TD_End ();
|
||||
|
@ -1270,7 +1268,8 @@ void Asg_ReqCreatOrEditAsg (void)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"10\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Txt\" name=\"Txt\" rows=\"10\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
if (!ItsANewAssignment)
|
||||
|
@ -1331,7 +1330,7 @@ static void Asg_ShowLstGrpsToEditAssignment (long AsgCod)
|
|||
"AsgCod",
|
||||
AsgCod) ? Cns_UNCHECKED :
|
||||
Cns_CHECKED;
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"WholeCrs\" value=\"Y\""
|
||||
" onclick=\"uncheckChildren(this,'GrpCods')\"");
|
||||
|
|
|
@ -992,7 +992,7 @@ void Att_ReqCreatOrEditEvent (void)
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_INPUT_TEXT ("Title",Att_MAX_CHARS_ATTENDANCE_EVENT_TITLE,Events.Event.Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1013,19 +1013,19 @@ void Att_ReqCreatOrEditEvent (void)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"ComTchVisible\" name=\"ComTchVisible\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"N",
|
||||
Events.Event.CommentTchVisible ? HTM_OPTION_UNSELECTED :
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Hidden_MALE_PLURAL);
|
||||
HTM_OPTION (HTM_Type_STRING,"Y",
|
||||
Events.Event.CommentTchVisible ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Visible_MALE_PLURAL);
|
||||
HTM_SELECT_End ();
|
||||
HTM_TD_End ();
|
||||
|
@ -1040,7 +1040,8 @@ void Att_ReqCreatOrEditEvent (void)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
if (!ItsANewAttEvent)
|
||||
|
@ -1102,7 +1103,7 @@ static void Att_ShowLstGrpsToEditEvent (long AttCod)
|
|||
"AttCod",
|
||||
AttCod) ? Cns_UNCHECKED :
|
||||
Cns_CHECKED;
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"WholeCrs\" value=\"Y\""
|
||||
" onclick=\"uncheckChildren(this,'GrpCods')\"");
|
||||
|
@ -1658,6 +1659,7 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
|
|||
};
|
||||
bool Present;
|
||||
Cns_Checked_t Checked;
|
||||
HTM_Disabled_t Disabled;
|
||||
char CommentStd[Cns_MAX_BYTES_TEXT + 1];
|
||||
char CommentTch[Cns_MAX_BYTES_TEXT + 1];
|
||||
Usr_Can_t ICanChangeStdAttendance;
|
||||
|
@ -1696,7 +1698,7 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
|
|||
/***** Check if this student is already present in the current event *****/
|
||||
Present = Att_CheckIfUsrIsPresentInEventAndGetComments (Event->AttCod,UsrDat->UsrCod,CommentStd,CommentTch);
|
||||
Checked = Present ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
Cns_UNCHECKED;
|
||||
|
||||
/***** Begin table row *****/
|
||||
HTM_TR_Begin (NULL);
|
||||
|
@ -1710,11 +1712,12 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
|
|||
|
||||
/***** Checkbox to select user *****/
|
||||
HTM_TD_Begin ("class=\"CT %s\"",The_GetColorRows ());
|
||||
HTM_INPUT_CHECKBOX ("UsrCodStd",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Std%u\" value=\"%s\"%s",
|
||||
NumUsr,UsrDat->EnUsrCod,
|
||||
(ICanChangeStdAttendance == Usr_CAN) ? "" :
|
||||
" disabled=\"disabled\"");
|
||||
Disabled = (ICanChangeStdAttendance == Usr_CAN) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_CHECKBOX ("UsrCodStd",Checked,Disabled,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Std%u\" value=\"%s\"",
|
||||
NumUsr,UsrDat->EnUsrCod);
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Write number of student in the list *****/
|
||||
|
@ -1765,10 +1768,10 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
|
|||
switch (ICanEditStdComment)
|
||||
{
|
||||
case Usr_CAN: // Show with form
|
||||
HTM_TEXTAREA_Begin ("name=\"CommentStd%s\" cols=\"40\" rows=\"3\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"CommentStd%s\" cols=\"40\" rows=\"3\""
|
||||
" class=\"INPUT_%s\"",
|
||||
UsrDat->EnUsrCod,
|
||||
The_GetSuffix ());
|
||||
UsrDat->EnUsrCod,The_GetSuffix ());
|
||||
HTM_Txt (CommentStd);
|
||||
HTM_TEXTAREA_End ();
|
||||
break;
|
||||
|
@ -1790,10 +1793,10 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
|
|||
switch (ICanEditTchComment)
|
||||
{
|
||||
case Usr_CAN: // Show with form
|
||||
HTM_TEXTAREA_Begin ("name=\"CommentTch%s\" cols=\"40\" rows=\"3\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"CommentTch%s\" cols=\"40\" rows=\"3\""
|
||||
" class=\"INPUT_%s\"",
|
||||
UsrDat->EnUsrCod,
|
||||
The_GetSuffix ());
|
||||
UsrDat->EnUsrCod,The_GetSuffix ());
|
||||
HTM_Txt (CommentTch);
|
||||
HTM_TEXTAREA_End ();
|
||||
break;
|
||||
|
@ -2667,7 +2670,8 @@ static void Att_ListEventsToSelect (struct Att_Events *Events,
|
|||
HTM_TD_Begin ("class=\"CT DAT_%s %s\"",
|
||||
The_GetSuffix (),
|
||||
The_GetColorRows ());
|
||||
HTM_INPUT_CHECKBOX ("AttCods",Events->Lst[NumAttEvent].Checked,
|
||||
HTM_INPUT_CHECKBOX ("AttCods",
|
||||
Events->Lst[NumAttEvent].Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Event%u\" value=\"%ld\"",
|
||||
NumAttEvent,Events->Event.AttCod);
|
||||
|
|
|
@ -450,7 +450,7 @@ static void Ban_ListBannersForEdition (struct Ban_Banners *Banners)
|
|||
Frm_BeginForm (ActChgBanImg);
|
||||
ParCod_PutPar (ParCod_Ban,Banners->BanCodToEdit);
|
||||
HTM_INPUT_TEXT ("Img",Ban_MAX_CHARS_IMAGE,Ban->Img,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"12\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -797,7 +797,7 @@ static void Ban_PutFormToCreateBanner (const struct Ban_Banner *Ban)
|
|||
/* Banner image */
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("Img",Ban_MAX_CHARS_IMAGE,Ban->Img,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"12\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -2907,9 +2907,9 @@ static void Brw_FormToChangeCrsGrpZone (void)
|
|||
"BROWSER_TITLE_LIGHT");
|
||||
HTM_LABEL_Begin (NULL);
|
||||
Checked = Brw_TypeIsCrsBrw[Gbl.FileBrowser.Type] ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO (Par_CodeStr[ParCod_Grp],Checked,
|
||||
HTM_SUBMIT_ON_CLICK,
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO (Par_CodeStr[ParCod_Grp],
|
||||
Checked,HTM_ENABLED,HTM_SUBMIT_ON_CLICK,
|
||||
"value=\"-1\"");
|
||||
HTM_Txt (Gbl.Hierarchy.Node[Hie_CRS].FullName);
|
||||
HTM_LABEL_End ();
|
||||
|
@ -2940,8 +2940,8 @@ static void Brw_FormToChangeCrsGrpZone (void)
|
|||
Checked = (Brw_TypeIsGrpBrw[Gbl.FileBrowser.Type] &&
|
||||
GrpDat.GrpCod == Gbl.Crs.Grps.GrpCod) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO (Par_CodeStr[ParCod_Grp],Checked,
|
||||
HTM_SUBMIT_ON_CLICK,
|
||||
HTM_INPUT_RADIO (Par_CodeStr[ParCod_Grp],
|
||||
Checked,HTM_ENABLED,HTM_SUBMIT_ON_CLICK,
|
||||
"value=\"%ld\"",GrpDat.GrpCod);
|
||||
HTM_TxtF ("%s %s",GrpDat.GrpTypName,GrpDat.GrpName);
|
||||
HTM_LABEL_End ();
|
||||
|
@ -4727,7 +4727,7 @@ static void Brw_WriteFileName (unsigned Level,bool IsPublic,
|
|||
Brw_PutImplicitParsFileBrowser (&Gbl.FileBrowser.FilFolLnk);
|
||||
HTM_INPUT_TEXT ("NewFolderName",Brw_MAX_CHARS_FOLDER,
|
||||
Gbl.FileBrowser.FilFolLnk.Name,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"LST_EDIT %s_%s %s\"",
|
||||
InputStyle,
|
||||
The_GetSuffix (),
|
||||
|
@ -6281,7 +6281,7 @@ static void Brw_PutFormToCreateAFolder (const char FileNameToShow[NAME_MAX + 1])
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtColonNBSP (Txt_Folder);
|
||||
HTM_INPUT_TEXT ("NewFolderName",Brw_MAX_CHARS_FOLDER,"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"30\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -6474,7 +6474,7 @@ static void Brw_PutFormToCreateALink (const char *FileNameToShow)
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("NewLinkName",Brw_MAX_CHARS_FOLDER,"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"NewLinkName\" size=\"30\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -7534,17 +7534,18 @@ void Brw_ShowFileMetadata (void)
|
|||
The_GetSuffix ());
|
||||
if (ICanChangePublic == Usr_CAN) // I can change file to public
|
||||
{
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"PublicFile\" name=\"PublicFile\" class=\"PUBLIC_FILE\"");
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"PublicFile\" name=\"PublicFile\""
|
||||
" class=\"PUBLIC_FILE\"");
|
||||
HTM_OPTION (HTM_Type_STRING,"N",
|
||||
FileMetadata.IsPublic ? HTM_OPTION_UNSELECTED :
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Private_available_to_certain_users_identified);
|
||||
HTM_OPTION (HTM_Type_STRING,"Y",
|
||||
FileMetadata.IsPublic ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Public_open_educational_resource_OER_for_everyone);
|
||||
HTM_SELECT_End ();
|
||||
}
|
||||
|
@ -7568,8 +7569,9 @@ void Brw_ShowFileMetadata (void)
|
|||
The_GetSuffix ());
|
||||
if (ICanEdit == Usr_CAN) // I can edit file properties
|
||||
{
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"License\" name=\"License\" class=\"LICENSE\"");
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"License\" name=\"License\""
|
||||
" class=\"LICENSE\"");
|
||||
for (License = (Brw_License_t) 0;
|
||||
License <= (Brw_License_t) (Brw_NUM_LICENSES - 1);
|
||||
License++)
|
||||
|
@ -7578,7 +7580,7 @@ void Brw_ShowFileMetadata (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&LicenseUnsigned,
|
||||
License == FileMetadata.License ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_LICENSES[License]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -9519,7 +9521,7 @@ void Brw_AskRemoveOldFilesBriefcase (void)
|
|||
/***** Form to request number of months (to remove files older) *****/
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtF ("%s ",Txt_Remove_files_older_than_PART_1_OF_2);
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Months\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
for (Months = Brw_MIN_MONTHS_TO_REMOVE_OLD_FILES;
|
||||
|
@ -9528,7 +9530,7 @@ void Brw_AskRemoveOldFilesBriefcase (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Months,
|
||||
Months == Brw_DEF_MONTHS_TO_REMOVE_OLD_FILES ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",Months);
|
||||
HTM_SELECT_End ();
|
||||
HTM_NBSP ();
|
||||
|
|
|
@ -441,7 +441,7 @@ static void Bld_ListBuildingsForEdition (const struct Bld_Buildings *Buildings)
|
|||
Frm_BeginFormAnchor (ActRenBldLoc,Anchor);
|
||||
ParCod_PutPar (ParCod_Bld,Building->BldCod);
|
||||
HTM_INPUT_TEXT ("Location",Bld_MAX_CHARS_LOCATION,Building->Location,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"15\" class=\"INPUT_FULL_NAME INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -676,7 +676,7 @@ static void Bld_PutFormToCreateBuilding (void)
|
|||
/***** Building location *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("Location",Bld_MAX_CHARS_LOCATION,Bld_EditingBuilding->Location,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"15\" class=\"INPUT_FULL_NAME INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
|
|
@ -993,7 +993,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
if (ViewType == Vie_EDIT)
|
||||
HTM_INPUT_TEXT ("CrsName",Nam_MaxChars[Nam_FULL_NAME],
|
||||
CallsForExams->CallForExam.CrsFullName,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"CrsName\" size=\"30\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1020,7 +1020,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"Year\" name=\"Year\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1030,7 +1030,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Year,
|
||||
Year == CallsForExams->CallForExam.Year ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_YEAR_OF_DEGREE[Year]);
|
||||
HTM_SELECT_End ();
|
||||
}
|
||||
|
@ -1053,7 +1053,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
HTM_INPUT_TEXT ("ExamSession",Cfe_MAX_CHARS_SESSION,CallsForExams->CallForExam.Session,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"ExamSession\" size=\"30\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1107,14 +1107,14 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"ExamHour\" name=\"ExamHour\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
CallsForExams->CallForExam.StartTime.Hour == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"-");
|
||||
for (Hour = 7;
|
||||
Hour <= 22;
|
||||
|
@ -1122,13 +1122,12 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Hour,
|
||||
Hour == CallsForExams->CallForExam.StartTime.Hour ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%02u %s",Hour,Txt_hours_ABBREVIATION);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"ExamMinute\""
|
||||
" class=\"INPUT_%s\"",
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"ExamMinute\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
for (Minute = 0;
|
||||
Minute <= 59;
|
||||
|
@ -1136,7 +1135,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Minute,
|
||||
Minute == CallsForExams->CallForExam.StartTime.Minute ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%02u ′",Minute);
|
||||
HTM_SELECT_End ();
|
||||
}
|
||||
|
@ -1160,7 +1159,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"DurationHour\" name=\"DurationHour\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1170,11 +1169,11 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Hour,
|
||||
Hour == CallsForExams->CallForExam.Duration.Hour ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%02u %s",Hour,Txt_hours_ABBREVIATION);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"DurationMinute\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1184,7 +1183,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Minute,
|
||||
Minute == CallsForExams->CallForExam.Duration.Minute ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%02u ′",Minute);
|
||||
HTM_SELECT_End ();
|
||||
}
|
||||
|
@ -1226,8 +1225,8 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_TEXTAREA_Begin ("id=\"Place\" name=\"Place\""
|
||||
" rows=\"4\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Place\" name=\"Place\" rows=\"4\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_Txt (CallsForExams->CallForExam.Place);
|
||||
|
@ -1257,8 +1256,8 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_TEXTAREA_Begin ("id=\"ExamMode\" name=\"ExamMode\""
|
||||
" rows=\"2\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"ExamMode\" name=\"ExamMode\" rows=\"2\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_Txt (CallsForExams->CallForExam.Mode);
|
||||
|
@ -1288,7 +1287,8 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_TEXTAREA_Begin ("id=\"Structure\" name=\"Structure\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Structure\" name=\"Structure\""
|
||||
" rows=\"8\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1319,7 +1319,8 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_TEXTAREA_Begin ("id=\"DocRequired\" name=\"DocRequired\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"DocRequired\" name=\"DocRequired\""
|
||||
" rows=\"2\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1350,7 +1351,8 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_TEXTAREA_Begin ("id=\"MatRequired\" name=\"MatRequired\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"MatRequired\" name=\"MatRequired\""
|
||||
" rows=\"4\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1381,7 +1383,8 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_TEXTAREA_Begin ("id=\"MatAllowed\" name=\"MatAllowed\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"MatAllowed\" name=\"MatAllowed\""
|
||||
" rows=\"4\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1412,7 +1415,8 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
HTM_TD_Begin ("class=\"Frm_C2 LB DAT_STRONG_%s\"",The_GetSuffix ());
|
||||
if (ViewType == Vie_EDIT)
|
||||
{
|
||||
HTM_TEXTAREA_Begin ("id=\"OtherInfo\" name=\"OtherInfo\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"OtherInfo\" name=\"OtherInfo\""
|
||||
" rows=\"5\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -662,54 +662,54 @@ void Ctr_WriteSelectorOfCenter (void)
|
|||
unsigned NumCtrs;
|
||||
unsigned NumCtr;
|
||||
long CtrCod;
|
||||
HTM_Disabled_t Disabled = (Gbl.Hierarchy.Node[Hie_INS].HieCod > 0) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_SubmitOnChange_t SubmitOnChange = (Gbl.Hierarchy.Node[Hie_INS].HieCod > 0) ? HTM_SUBMIT_ON_CHANGE :
|
||||
HTM_DONT_SUBMIT_ON_CHANGE;
|
||||
|
||||
/***** Begin form *****/
|
||||
Frm_BeginFormGoTo (ActSeeDeg);
|
||||
|
||||
/***** Begin selector *****/
|
||||
if (Gbl.Hierarchy.Node[Hie_INS].HieCod > 0)
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"ctr\" name=\"ctr\" class=\"HIE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
else
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"ctr\" name=\"ctr\" class=\"HIE_SEL INPUT_%s\""
|
||||
" disabled=\"disabled\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Gbl.Hierarchy.Node[Hie_CTR].HieCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
"[%s]",Txt_HIERARCHY_SINGUL_Abc[Hie_CTR]);
|
||||
HTM_SELECT_Begin (Disabled,SubmitOnChange,NULL,
|
||||
"id=\"ctr\" name=\"ctr\" class=\"HIE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
if (Gbl.Hierarchy.Node[Hie_INS].HieCod > 0)
|
||||
{
|
||||
/***** Get centers in current institution from database *****/
|
||||
NumCtrs = Ctr_DB_GetListOfCtrsInCurrentIns (&mysql_res);
|
||||
for (NumCtr = 0;
|
||||
NumCtr < NumCtrs;
|
||||
NumCtr++)
|
||||
/***** Initial disabled option *****/
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Gbl.Hierarchy.Node[Hie_CTR].HieCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_DISABLED,
|
||||
"[%s]",Txt_HIERARCHY_SINGUL_Abc[Hie_CTR]);
|
||||
|
||||
if (Gbl.Hierarchy.Node[Hie_INS].HieCod > 0)
|
||||
{
|
||||
/* Get next center */
|
||||
row = mysql_fetch_row (mysql_res);
|
||||
/***** Get centers in current institution from database *****/
|
||||
NumCtrs = Ctr_DB_GetListOfCtrsInCurrentIns (&mysql_res);
|
||||
for (NumCtr = 0;
|
||||
NumCtr < NumCtrs;
|
||||
NumCtr++)
|
||||
{
|
||||
/* Get next center */
|
||||
row = mysql_fetch_row (mysql_res);
|
||||
|
||||
/* Get center code (row[0]) */
|
||||
if ((CtrCod = Str_ConvertStrCodToLongCod (row[0])) < 0)
|
||||
Err_WrongCenterExit ();
|
||||
/* Get center code (row[0]) */
|
||||
if ((CtrCod = Str_ConvertStrCodToLongCod (row[0])) < 0)
|
||||
Err_WrongCenterExit ();
|
||||
|
||||
/* Write option */
|
||||
HTM_OPTION (HTM_Type_LONG,&CtrCod,
|
||||
Gbl.Hierarchy.Node[Hie_CTR].HieCod > 0 &&
|
||||
CtrCod == Gbl.Hierarchy.Node[Hie_CTR].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
"%s",row[1]);
|
||||
/* Write option */
|
||||
HTM_OPTION (HTM_Type_LONG,&CtrCod,
|
||||
Gbl.Hierarchy.Node[Hie_CTR].HieCod > 0 &&
|
||||
CtrCod == Gbl.Hierarchy.Node[Hie_CTR].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_ENABLED,
|
||||
"%s",row[1]);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
}
|
||||
|
||||
/***** End selector *****/
|
||||
HTM_SELECT_End ();
|
||||
|
||||
|
@ -799,14 +799,14 @@ static void Ctr_ListCentersForEdition (const struct Plc_Places *Places)
|
|||
case Usr_CAN:
|
||||
Frm_BeginForm (ActChgCtrPlc);
|
||||
ParCod_PutPar (ParCod_OthHie,Ctr->HieCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"PlcCod\""
|
||||
" class=\"PLC_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Ctr->Specific.PlcCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_place);
|
||||
for (NumPlc = 0;
|
||||
NumPlc < Places->Num;
|
||||
|
@ -816,7 +816,7 @@ static void Ctr_ListCentersForEdition (const struct Plc_Places *Places)
|
|||
HTM_OPTION (HTM_Type_LONG,&Plc->PlcCod,
|
||||
Plc->PlcCod == Ctr->Specific.PlcCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Plc->ShrtName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -887,7 +887,7 @@ static void Ctr_ListCentersForEdition (const struct Plc_Places *Places)
|
|||
Usr_DONT_GET_ROLE_IN_CRS);
|
||||
HTM_TD_Begin ("class=\"DAT_%s INPUT_REQUESTER LT\"",
|
||||
The_GetSuffix ());
|
||||
Usr_WriteAuthor (&UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (&UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Center status */
|
||||
|
@ -1270,13 +1270,13 @@ static void Ctr_PutFormToCreateCenter (const struct Plc_Places *Places)
|
|||
|
||||
/***** Place *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"PlcCod\" class=\"PLC_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Ctr_EditingCtr->Specific.PlcCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_place);
|
||||
for (NumPlc = 0;
|
||||
NumPlc < Places->Num;
|
||||
|
@ -1286,7 +1286,7 @@ static void Ctr_PutFormToCreateCenter (const struct Plc_Places *Places)
|
|||
HTM_OPTION (HTM_Type_LONG,&Plc->PlcCod,
|
||||
Plc->PlcCod == Ctr_EditingCtr->Specific.PlcCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Plc->ShrtName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -1315,7 +1315,7 @@ static void Ctr_PutFormToCreateCenter (const struct Plc_Places *Places)
|
|||
/***** Center requester *****/
|
||||
HTM_TD_Begin ("class=\"DAT_%s INPUT_REQUESTER LT\"",
|
||||
The_GetSuffix ());
|
||||
Usr_WriteAuthor (&Gbl.Usrs.Me.UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (&Gbl.Usrs.Me.UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Center status *****/
|
||||
|
|
|
@ -355,7 +355,7 @@ static void CtrCfg_Latitude (double Latitude)
|
|||
90.0, // North Pole
|
||||
0.0, // step="any"
|
||||
Latitude,
|
||||
HTM_SUBMIT_ON_CHANGE,false,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -383,7 +383,7 @@ static void CtrCfg_Longitude (double Longitude)
|
|||
180.0, // East
|
||||
0.0, // step="any"
|
||||
Longitude,
|
||||
HTM_SUBMIT_ON_CHANGE,false,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -411,7 +411,7 @@ static void CtrCfg_Altitude (double Altitude)
|
|||
8848.0, // Mount Everest
|
||||
0.0, // step="any"
|
||||
Altitude,
|
||||
HTM_SUBMIT_ON_CHANGE,false,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -478,7 +478,9 @@ static void CtrCfg_Photo (Vie_ViewType_t ViewType,
|
|||
case Frm_PUT_FORM:
|
||||
HTM_DIV_Begin ("class=\"CM\"");
|
||||
Frm_BeginForm (ActChgCtrPhoAtt);
|
||||
HTM_TEXTAREA_Begin ("id=\"AttributionArea\" name=\"Attribution\" rows=\"3\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"AttributionArea\" name=\"Attribution\""
|
||||
" rows=\"3\""
|
||||
" onchange=\"this.form.submit();return false;\"");
|
||||
if (PhotoAttribution)
|
||||
HTM_Txt (PhotoAttribution);
|
||||
|
@ -591,7 +593,7 @@ static void CtrCfg_Institution (Vie_ViewType_t ViewType,Frm_PutForm_t PutForm)
|
|||
|
||||
/* Put form to select institution */
|
||||
Frm_BeginForm (ActChgCtrInsCfg);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"OthInsCod\" name=\"OthInsCod\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -603,7 +605,7 @@ static void CtrCfg_Institution (Vie_ViewType_t ViewType,Frm_PutForm_t PutForm)
|
|||
HTM_OPTION (HTM_Type_LONG,&Ins->HieCod,
|
||||
Ins->HieCod == Gbl.Hierarchy.Node[Hie_INS].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Ins->ShrtName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -663,14 +665,14 @@ static void CtrCfg_Place (Frm_PutForm_t PutForm)
|
|||
|
||||
/* Put form to select place */
|
||||
Frm_BeginForm (ActChgCtrPlcCfg);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"PlcCod\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Gbl.Hierarchy.Node[Hie_CTR].Specific.PlcCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_place);
|
||||
for (NumPlc = 0;
|
||||
NumPlc < Places.Num;
|
||||
|
@ -678,7 +680,7 @@ static void CtrCfg_Place (Frm_PutForm_t PutForm)
|
|||
HTM_OPTION (HTM_Type_LONG,&Places.Lst[NumPlc].PlcCod,
|
||||
Places.Lst[NumPlc].PlcCod == Gbl.Hierarchy.Node[Hie_CTR].Specific.PlcCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Places.Lst[NumPlc].ShrtName);
|
||||
HTM_SELECT_End ();
|
||||
Frm_EndForm ();
|
||||
|
|
|
@ -633,10 +633,11 @@ Me sale este error, no s
|
|||
"can npt create received message (duplicated entry '243218-2160773' for key 'UsrCod_MsgCod')
|
||||
*/
|
||||
|
||||
#define Log_PLATFORM_VERSION "SWAD 23.79.8 (2024-04-30)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 23.80 (2024-05-09)"
|
||||
#define CSS_FILE "swad23.67.2.css"
|
||||
#define JS_FILE "swad23.79.js"
|
||||
/*
|
||||
Version 23.80: May 09, 2024 Code refactoring in HTML related to disabled field in forms. (335713 lines)
|
||||
Version 23.79.8: Apr 30, 2024 Code refactoring in HTML related to checked field in forms. (335817 lines)
|
||||
Version 23.79.7: Apr 29, 2024 Code refactoring in HTML related to checked field in forms. (335855 lines)
|
||||
Version 23.79.6: Apr 26, 2024 Code refactoring in HTML related to checked field in forms. (335848 lines)
|
||||
|
|
|
@ -109,11 +109,4 @@ typedef enum
|
|||
Cns_CHECKED,
|
||||
} Cns_Checked_t;
|
||||
|
||||
#define Cns_NUM_DISABLED 2
|
||||
typedef enum
|
||||
{
|
||||
Cns_DISABLED,
|
||||
Cns_ENABLED,
|
||||
} Cns_Disabled_t;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -95,7 +95,8 @@ void Coo_EditMyPrefsOnCookies (void)
|
|||
HTM_LABEL_Begin (NULL);
|
||||
Checked = (Gbl.Usrs.Me.UsrDat.Prefs.RefuseAcceptCookies == Coo_ACCEPT) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("cookies",Checked,HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("cookies",
|
||||
Checked,HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_Txt (Txt_Accept_third_party_cookies_to_view_multimedia_content_from_other_websites);
|
||||
HTM_LABEL_End ();
|
||||
|
|
|
@ -823,7 +823,7 @@ void Cty_WriteSelectorOfCountry (void)
|
|||
Frm_BeginFormGoTo (ActSeeIns);
|
||||
|
||||
/***** Begin selector of country *****/
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"cty\" name=\"cty\" class=\"HIE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
|
@ -831,7 +831,7 @@ void Cty_WriteSelectorOfCountry (void)
|
|||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Gbl.Hierarchy.Node[Hie_CTY].HieCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
HTM_DISABLED,
|
||||
"[%s]",Txt_HIERARCHY_SINGUL_Abc[Hie_CTY]);
|
||||
|
||||
/***** List countries *****/
|
||||
|
@ -843,7 +843,7 @@ void Cty_WriteSelectorOfCountry (void)
|
|||
HTM_OPTION (HTM_Type_LONG,&Cty->HieCod,
|
||||
Cty->HieCod == Gbl.Hierarchy.Node[Hie_CTY].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Cty->FullName);
|
||||
}
|
||||
|
||||
|
@ -1118,7 +1118,7 @@ static void Cty_ListCountriesForEdition (void)
|
|||
ParCod_PutPar (ParCod_OthCty,Cty->HieCod);
|
||||
Par_PutParUnsigned (NULL,"Lan",(unsigned) Lan);
|
||||
HTM_INPUT_TEXT ("Name",Cty_MAX_CHARS_NAME,NameInSeveralLanguages[Lan],
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"15\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -1407,17 +1407,17 @@ static void Cty_PutFormToCreateCountry (void)
|
|||
snprintf (StrCtyCod,sizeof (StrCtyCod),"%03ld",Cty_EditingCty->HieCod);
|
||||
else
|
||||
StrCtyCod[0] = '\0';
|
||||
HTM_INPUT_TEXT (Par_CodeStr[ParCod_OthCty],3,StrCtyCod,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"3\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_INPUT_TEXT (Par_CodeStr[ParCod_OthCty],3,StrCtyCod,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"3\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Alphabetic country code with 2 letters (ISO 3166-1) *****/
|
||||
HTM_TD_Begin ("rowspan=\"%u\" class=\"RT\"",1 + Lan_NUM_LANGUAGES);
|
||||
HTM_INPUT_TEXT ("Alpha2",2,Cty_EditingCty->ShrtName,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"2\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_INPUT_TEXT ("Alpha2",2,Cty_EditingCty->ShrtName,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"2\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -1453,9 +1453,8 @@ static void Cty_PutFormToCreateCountry (void)
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
snprintf (StrName,sizeof (StrName),"Name_%s",Lan_STR_LANG_ID[Lan]);
|
||||
HTM_INPUT_TEXT (StrName,Cty_MAX_CHARS_NAME,"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"15\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"15\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -1463,8 +1462,7 @@ static void Cty_PutFormToCreateCountry (void)
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
snprintf (StrName,sizeof (StrName),"WWW_%s",Lan_STR_LANG_ID[Lan]);
|
||||
HTM_INPUT_URL (StrName,"",HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"class=\"INPUT_WWW INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
"class=\"INPUT_WWW INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
|
|
@ -345,7 +345,8 @@ static void CtyCfg_MapImage (Vie_ViewType_t ViewType,Hie_PutLink_t PutLink)
|
|||
{
|
||||
HTM_DIV_Begin ("class=\"CM\"");
|
||||
Frm_BeginForm (ActChgCtyMapAtt);
|
||||
HTM_TEXTAREA_Begin ("id=\"AttributionArea\" name=\"Attribution\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"AttributionArea\" name=\"Attribution\""
|
||||
" rows=\"3\""
|
||||
" onchange=\"this.form.submit();return false;\"");
|
||||
if (MapAttribution)
|
||||
|
|
103
swad_course.c
103
swad_course.c
|
@ -178,56 +178,54 @@ void Crs_WriteSelectorOfCourse (void)
|
|||
unsigned NumCrss;
|
||||
unsigned NumCrs;
|
||||
long CrsCod;
|
||||
HTM_Disabled_t Disabled = (Gbl.Hierarchy.Node[Hie_DEG].HieCod > 0) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_SubmitOnChange_t SubmitOnChange = (Gbl.Hierarchy.Node[Hie_DEG].HieCod > 0) ? HTM_SUBMIT_ON_CHANGE :
|
||||
HTM_DONT_SUBMIT_ON_CHANGE;
|
||||
|
||||
/***** Begin form *****/
|
||||
Frm_BeginFormGoTo (ActSeeCrsInf);
|
||||
|
||||
/***** Begin selector of course *****/
|
||||
if (Gbl.Hierarchy.Node[Hie_DEG].HieCod > 0)
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"crs\" name=\"crs\" class=\"HIE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
else
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"crs\" name=\"crs\" class=\"HIE_SEL INPUT_%s\""
|
||||
" disabled=\"disabled\"",
|
||||
The_GetSuffix ());
|
||||
HTM_SELECT_Begin (Disabled,SubmitOnChange,NULL,
|
||||
"id=\"crs\" name=\"crs\" class=\"HIE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
/***** Initial disabled option *****/
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Gbl.Hierarchy.Node[Hie_CRS].HieCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
"[%s]",Txt_HIERARCHY_SINGUL_Abc[Hie_CRS]);
|
||||
/***** Initial disabled option *****/
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Gbl.Hierarchy.Node[Hie_CRS].HieCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_DISABLED,
|
||||
"[%s]",Txt_HIERARCHY_SINGUL_Abc[Hie_CRS]);
|
||||
|
||||
if (Gbl.Hierarchy.Node[Hie_DEG].HieCod > 0)
|
||||
{
|
||||
/***** Get courses belonging to the current degree from database *****/
|
||||
NumCrss = Crs_DB_GetCrssInCurrentDegBasic (&mysql_res);
|
||||
for (NumCrs = 0;
|
||||
NumCrs < NumCrss;
|
||||
NumCrs++)
|
||||
if (Gbl.Hierarchy.Node[Hie_DEG].HieCod > 0)
|
||||
{
|
||||
/* Get next course */
|
||||
row = mysql_fetch_row (mysql_res);
|
||||
/***** Get courses belonging to the current degree from database *****/
|
||||
NumCrss = Crs_DB_GetCrssInCurrentDegBasic (&mysql_res);
|
||||
for (NumCrs = 0;
|
||||
NumCrs < NumCrss;
|
||||
NumCrs++)
|
||||
{
|
||||
/* Get next course */
|
||||
row = mysql_fetch_row (mysql_res);
|
||||
|
||||
/* Get course code (row[0]) */
|
||||
if ((CrsCod = Str_ConvertStrCodToLongCod (row[0])) <= 0)
|
||||
Err_WrongCourseExit ();
|
||||
/* Get course code (row[0]) */
|
||||
if ((CrsCod = Str_ConvertStrCodToLongCod (row[0])) <= 0)
|
||||
Err_WrongCourseExit ();
|
||||
|
||||
/* Write option */
|
||||
HTM_OPTION (HTM_Type_LONG,&CrsCod,
|
||||
Gbl.Hierarchy.Level == Hie_CRS && // Course selected
|
||||
CrsCod == Gbl.Hierarchy.Node[Hie_CRS].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
"%s",row[1]); // Short name (row[1])
|
||||
/* Write option */
|
||||
HTM_OPTION (HTM_Type_LONG,&CrsCod,
|
||||
Gbl.Hierarchy.Level == Hie_CRS && // Course selected
|
||||
CrsCod == Gbl.Hierarchy.Node[Hie_CRS].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_ENABLED,
|
||||
"%s",row[1]); // Short name (row[1])
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
}
|
||||
|
||||
/***** End selector of course *****/
|
||||
HTM_SELECT_End ();
|
||||
|
||||
|
@ -313,7 +311,7 @@ void Crs_WriteSelectorMyCoursesInBreadcrumb (void)
|
|||
ActReqSch);
|
||||
|
||||
/***** Begin selector of courses *****/
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"my_courses\" name=\"crs\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
|
@ -321,7 +319,7 @@ void Crs_WriteSelectorMyCoursesInBreadcrumb (void)
|
|||
if (Gbl.Hierarchy.Node[Hie_CRS].HieCod <= 0) // No course selected
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
HTM_DISABLED,
|
||||
"%s",Txt_HIERARCHY_SINGUL_Abc[Hie_CRS]);
|
||||
|
||||
if (Gbl.Usrs.Me.Hierarchy[Hie_CRS].Num)
|
||||
|
@ -347,7 +345,7 @@ void Crs_WriteSelectorMyCoursesInBreadcrumb (void)
|
|||
HTM_OPTION (HTM_Type_LONG,&CrsCod,
|
||||
CrsCod == Gbl.Hierarchy.Node[Hie_CRS].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",CrsShortName);
|
||||
}
|
||||
|
||||
|
@ -361,7 +359,7 @@ void Crs_WriteSelectorMyCoursesInBreadcrumb (void)
|
|||
Gbl.Usrs.Me.IBelongToCurrent[Hie_CRS] == Usr_DONT_BELONG) // I do not belong to it
|
||||
HTM_OPTION (HTM_Type_LONG,&Gbl.Hierarchy.Node[Hie_CRS].HieCod,
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
HTM_DISABLED,
|
||||
"%s",Gbl.Hierarchy.Node[Hie_CRS].ShrtName);
|
||||
|
||||
/***** End selector of courses *****/
|
||||
|
@ -710,7 +708,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
|
|||
case Usr_CAN:
|
||||
Frm_BeginForm (ActChgCrsYea);
|
||||
ParCod_PutPar (ParCod_OthHie,Crs->HieCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"OthCrsYear\""
|
||||
" class=\"HIE_SEL_NARROW INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -722,7 +720,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&YearAux,
|
||||
YearAux == Crs->Specific.Year ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_YEAR_OF_DEGREE[YearAux]);
|
||||
HTM_SELECT_End ();
|
||||
Frm_EndForm ();
|
||||
|
@ -742,7 +740,8 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
|
|||
Frm_BeginForm (ActChgInsCrsCod);
|
||||
ParCod_PutPar (ParCod_OthHie,Crs->HieCod);
|
||||
HTM_INPUT_TEXT ("InsCrsCod",Hie_MAX_CHARS_INSTITUTIONAL_COD,
|
||||
Crs->InstitutionalCod,HTM_SUBMIT_ON_CHANGE,
|
||||
Crs->InstitutionalCod,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"INPUT_INS_CODE INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -777,7 +776,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
|
|||
Usr_DONT_GET_ROLE_IN_CRS);
|
||||
HTM_TD_Begin ("class=\"LT DAT_%s INPUT_REQUESTER\"",
|
||||
The_GetSuffix ());
|
||||
Usr_WriteAuthor (&UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (&UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Course status */
|
||||
|
@ -843,7 +842,7 @@ static void Crs_PutFormToCreateCourse (void)
|
|||
|
||||
/***** Year *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"OthCrsYear\""
|
||||
" class=\"HIE_SEL_NARROW INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -853,7 +852,7 @@ static void Crs_PutFormToCreateCourse (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Year,
|
||||
Year == Crs_EditingCrs->Specific.Year ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_YEAR_OF_DEGREE[Year]);
|
||||
HTM_SELECT_End ();
|
||||
HTM_TD_End ();
|
||||
|
@ -862,7 +861,7 @@ static void Crs_PutFormToCreateCourse (void)
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("InsCrsCod",Hie_MAX_CHARS_INSTITUTIONAL_COD,
|
||||
Crs_EditingCrs->InstitutionalCod,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"class=\"INPUT_INS_CODE INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
@ -878,7 +877,7 @@ static void Crs_PutFormToCreateCourse (void)
|
|||
|
||||
/***** Course requester *****/
|
||||
HTM_TD_Begin ("class=\"LT DAT_%s INPUT_REQUESTER\"",The_GetSuffix ());
|
||||
Usr_WriteAuthor (&Gbl.Usrs.Me.UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (&Gbl.Usrs.Me.UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Course status *****/
|
||||
|
@ -1940,7 +1939,7 @@ void Crs_AskRemoveOldCrss (void)
|
|||
/***** Form to request number of months without clicks *****/
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtF ("%s ",Txt_Eliminate_all_courses_whithout_users_PART_1_OF_2);
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Months\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
for (i = Crs_MIN_MONTHS_WITHOUT_ACCESS_TO_REMOVE_OLD_CRSS;
|
||||
|
@ -1949,7 +1948,7 @@ void Crs_AskRemoveOldCrss (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&i,
|
||||
i == MonthsWithoutAccess ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",i);
|
||||
HTM_SELECT_End ();
|
||||
HTM_NBSP ();
|
||||
|
|
|
@ -245,7 +245,7 @@ static void CrsCfg_Degree (Vie_ViewType_t ViewType,Frm_PutForm_t PutForm)
|
|||
|
||||
/* Put form to select degree */
|
||||
Frm_BeginForm (ActChgCrsDegCfg);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"OthDegCod\" name=\"OthDegCod\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -257,7 +257,7 @@ static void CrsCfg_Degree (Vie_ViewType_t ViewType,Frm_PutForm_t PutForm)
|
|||
HTM_OPTION (HTM_Type_LONG,&Deg->HieCod,
|
||||
Deg->HieCod == Gbl.Hierarchy.Node[Hie_DEG].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Deg->ShrtName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -304,7 +304,7 @@ static void CrsCfg_Year (Frm_PutForm_t PutForm)
|
|||
break;
|
||||
case Frm_PUT_FORM:
|
||||
Frm_BeginForm (ActChgCrsYeaCfg);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"OthCrsYear\" name=\"OthCrsYear\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -314,7 +314,7 @@ static void CrsCfg_Year (Frm_PutForm_t PutForm)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Year,
|
||||
Year == Gbl.Hierarchy.Node[Hie_CRS].Specific.Year ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_YEAR_OF_DEGREE[Year]);
|
||||
HTM_SELECT_End ();
|
||||
Frm_EndForm ();
|
||||
|
@ -355,7 +355,7 @@ static void CrsCfg_InstitutionalCode (Frm_PutForm_t PutForm)
|
|||
Frm_BeginForm (ActChgInsCrsCodCfg);
|
||||
HTM_INPUT_TEXT ("InsCrsCod",Hie_MAX_CHARS_INSTITUTIONAL_COD,
|
||||
Gbl.Hierarchy.Node[Hie_CRS].InstitutionalCod,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"id=\"InsCrsCod\" maxlength=\"%u\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
Hie_MAX_CHARS_INSTITUTIONAL_COD,
|
||||
|
|
93
swad_date.c
93
swad_date.c
|
@ -314,7 +314,8 @@ void Dat_PutBoxToSelectDateFormat (void)
|
|||
HTM_LABEL_Begin (NULL);
|
||||
Checked = (Format == Gbl.Prefs.DateFormat) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("DateFormat",Checked,HTM_SUBMIT_ON_CLICK,
|
||||
HTM_INPUT_RADIO ("DateFormat",
|
||||
Checked,HTM_ENABLED,HTM_SUBMIT_ON_CLICK,
|
||||
" value=\"%u\"",(unsigned) Format);
|
||||
Dat_PutSpanDateFormat (Format);
|
||||
Dat_PutScriptDateFormat (Format);
|
||||
|
@ -757,47 +758,42 @@ void Dat_WriteFormClientLocalDateTimeFromTimeUTC (const char *Id,
|
|||
HTM_DIV_Begin ("class=\"DATE_FORM_YMD\"");
|
||||
|
||||
/* Year */
|
||||
HTM_SELECT_Begin (SubmitOnChange,FuncsYearMonth,
|
||||
"id=\"%sYear\" name=\"%sYear\""
|
||||
" class=\"INPUT_%s\"",
|
||||
Id,Dat_ParName[StartEndTime],
|
||||
The_GetSuffix ());
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,FuncsYearMonth,
|
||||
"id=\"%sYear\" name=\"%sYear\" class=\"INPUT_%s\"",
|
||||
Id,Dat_ParName[StartEndTime],The_GetSuffix ());
|
||||
for (Year = FirstYear;
|
||||
Year <= LastYear;
|
||||
Year++)
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&Year,
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",Year);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
/* Month */
|
||||
HTM_SELECT_Begin (SubmitOnChange,FuncsYearMonth,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,FuncsYearMonth,
|
||||
"id=\"%sMonth\" name=\"%sMonth\""
|
||||
" class=\"DATE_FORM_MONTH INPUT_%s\"",
|
||||
Id,Dat_ParName[StartEndTime],
|
||||
The_GetSuffix ());
|
||||
Id,Dat_ParName[StartEndTime],The_GetSuffix ());
|
||||
for (Month = 1;
|
||||
Month <= 12;
|
||||
Month++)
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&Month,
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_MONTHS_SMALL[Month - 1]);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
/* Day */
|
||||
HTM_SELECT_Begin (SubmitOnChange,FuncDayHMS,
|
||||
"id=\"%sDay\" name=\"%sDay\""
|
||||
" class=\"INPUT_%s\"",
|
||||
Id,Dat_ParName[StartEndTime],
|
||||
The_GetSuffix ());
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,FuncDayHMS,
|
||||
"id=\"%sDay\" name=\"%sDay\" class=\"INPUT_%s\"",
|
||||
Id,Dat_ParName[StartEndTime],The_GetSuffix ());
|
||||
for (Day = 1;
|
||||
Day <= 31;
|
||||
Day++)
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&Day,
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",Day);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
|
@ -807,49 +803,45 @@ void Dat_WriteFormClientLocalDateTimeFromTimeUTC (const char *Id,
|
|||
HTM_DIV_Begin ("class=\"DATE_FORM_HMS\"");
|
||||
|
||||
/* Hour */
|
||||
HTM_SELECT_Begin (SubmitOnChange,FuncDayHMS,
|
||||
"id=\"%sHour\" name=\"%sHour\""
|
||||
" class=\"INPUT_%s\"",
|
||||
Id,Dat_ParName[StartEndTime],
|
||||
The_GetSuffix ());
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,FuncDayHMS,
|
||||
"id=\"%sHour\" name=\"%sHour\" class=\"INPUT_%s\"",
|
||||
Id,Dat_ParName[StartEndTime],The_GetSuffix ());
|
||||
for (Hour = 0;
|
||||
Hour <= 23;
|
||||
Hour++)
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&Hour,
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%02u h",Hour);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
/* Minute */
|
||||
HTM_SELECT_Begin (SubmitOnChange,FuncDayHMS,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,FuncDayHMS,
|
||||
"id=\"%sMinute\" name=\"%sMinute\""
|
||||
" class=\"INPUT_%s\"",
|
||||
Id,Dat_ParName[StartEndTime],
|
||||
The_GetSuffix ());
|
||||
Id,Dat_ParName[StartEndTime],The_GetSuffix ());
|
||||
for (Minute = 0;
|
||||
Minute < 60;
|
||||
Minute += MinutesIInterval[FormSeconds])
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&Minute,
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%02u ′",Minute);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
/* Second */
|
||||
if (FormSeconds == Dat_FORM_SECONDS_ON)
|
||||
{
|
||||
HTM_SELECT_Begin (SubmitOnChange,FuncDayHMS,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,FuncDayHMS,
|
||||
"id=\"%sSecond\" name=\"%sSecond\""
|
||||
" class=\"INPUT_%s\"",
|
||||
Id,Dat_ParName[StartEndTime],
|
||||
The_GetSuffix ());
|
||||
Id,Dat_ParName[StartEndTime],The_GetSuffix ());
|
||||
for (Second = 0;
|
||||
Second <= 59;
|
||||
Second++)
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&Second,
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%02u ″",Second);
|
||||
HTM_SELECT_End ();
|
||||
}
|
||||
|
@ -987,9 +979,8 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
|||
const char *Id,
|
||||
struct Dat_Date *DateSelected,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
Cns_Disabled_t Disabled)
|
||||
HTM_Disabled_t Disabled)
|
||||
{
|
||||
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED];
|
||||
extern const char *Txt_MONTHS_SMALL[12];
|
||||
char *FuncOnChange;
|
||||
unsigned Year;
|
||||
|
@ -1001,14 +992,12 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
|||
Err_NotEnoughMemoryExit ();
|
||||
|
||||
/***** Year *****/
|
||||
HTM_SELECT_Begin (SubmitOnChange,FuncOnChange,
|
||||
"id=\"%sYear\" name=\"%sYear\""
|
||||
" class=\"INPUT_%s\"%s",
|
||||
Id,Id,The_GetSuffix (),
|
||||
HTM_DisabledTxt[Disabled]);
|
||||
HTM_SELECT_Begin (Disabled,SubmitOnChange,FuncOnChange,
|
||||
"id=\"%sYear\" name=\"%sYear\" class=\"INPUT_%s\"",
|
||||
Id,Id,The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"-");
|
||||
for (Year = FirstYear;
|
||||
Year <= LastYear;
|
||||
|
@ -1016,19 +1005,17 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Year,
|
||||
(Year == DateSelected->Year) ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",Year);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
/***** Month *****/
|
||||
HTM_SELECT_Begin (SubmitOnChange,FuncOnChange,
|
||||
"id=\"%sMonth\" name=\"%sMonth\""
|
||||
" class=\"INPUT_%s\"%s",
|
||||
Id,Id,The_GetSuffix (),
|
||||
HTM_DisabledTxt[Disabled]);
|
||||
HTM_SELECT_Begin (Disabled,SubmitOnChange,FuncOnChange,
|
||||
"id=\"%sMonth\" name=\"%sMonth\" class=\"INPUT_%s\"",
|
||||
Id,Id,The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"-");
|
||||
for (Month = 1;
|
||||
Month <= 12;
|
||||
|
@ -1036,21 +1023,19 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Month,
|
||||
(Month == DateSelected->Month) ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_MONTHS_SMALL[Month - 1]);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
free (FuncOnChange);
|
||||
|
||||
/***** Day *****/
|
||||
HTM_SELECT_Begin (SubmitOnChange,NULL,
|
||||
"id=\"%sDay\" name=\"%sDay\""
|
||||
" class=\"INPUT_%s\"%s",
|
||||
Id,Id,The_GetSuffix (),
|
||||
HTM_DisabledTxt[Disabled]);
|
||||
HTM_SELECT_Begin (Disabled,SubmitOnChange,NULL,
|
||||
"id=\"%sDay\" name=\"%sDay\" class=\"INPUT_%s\"",
|
||||
Id,Id,The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"-");
|
||||
NumDaysSelectedMonth = (DateSelected->Month == 0) ? 31 :
|
||||
((DateSelected->Month == 2) ? Dat_GetNumDaysFebruary (DateSelected->Year) :
|
||||
|
@ -1061,7 +1046,7 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Day,
|
||||
(Day == DateSelected->Day) ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",Day);
|
||||
HTM_SELECT_End ();
|
||||
}
|
||||
|
|
|
@ -195,7 +195,7 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
|||
const char *Id,
|
||||
struct Dat_Date *DateSelected,
|
||||
HTM_SubmitOnChange_t SubmitOnChange,
|
||||
Cns_Disabled_t Disabled);
|
||||
HTM_Disabled_t Disabled);
|
||||
void Dat_GetDateFromForm (const char *ParNameDay,const char *ParNameMonth,const char *ParNameYear,
|
||||
unsigned *Day,unsigned *Month,unsigned *Year);
|
||||
|
||||
|
|
|
@ -225,56 +225,56 @@ void Deg_WriteSelectorOfDegree (void)
|
|||
unsigned NumDegs;
|
||||
unsigned NumDeg;
|
||||
long DegCod;
|
||||
HTM_Disabled_t Disabled = (Gbl.Hierarchy.Node[Hie_CTR].HieCod > 0) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_SubmitOnChange_t SubmitOnChange = (Gbl.Hierarchy.Node[Hie_CTR].HieCod > 0) ? HTM_SUBMIT_ON_CHANGE :
|
||||
HTM_DONT_SUBMIT_ON_CHANGE;
|
||||
|
||||
/***** Begin form *****/
|
||||
Frm_BeginFormGoTo (ActSeeCrs);
|
||||
|
||||
/***** Begin selector of degree *****/
|
||||
if (Gbl.Hierarchy.Node[Hie_CTR].HieCod > 0)
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"deg\" name=\"deg\" class=\"HIE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
else
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"deg\" name=\"deg\" class=\"HIE_SEL INPUT_%s\""
|
||||
" disabled=\"disabled\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Gbl.Hierarchy.Node[Hie_DEG].HieCod <= 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
"[%s]",Txt_HIERARCHY_SINGUL_Abc[Hie_DEG]);
|
||||
HTM_SELECT_Begin (Disabled,SubmitOnChange,NULL,
|
||||
"id=\"deg\" name=\"deg\" class=\"HIE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
if (Gbl.Hierarchy.Node[Hie_CTR].HieCod > 0)
|
||||
{
|
||||
/***** Get degrees belonging to the current center from database *****/
|
||||
NumDegs = Deg_DB_GetDegsOfCurrentCtrBasic (&mysql_res);
|
||||
/***** Initial disabled option *****/
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Gbl.Hierarchy.Node[Hie_DEG].HieCod <= 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_DISABLED,
|
||||
"[%s]",Txt_HIERARCHY_SINGUL_Abc[Hie_DEG]);
|
||||
|
||||
/***** Get degrees of this center *****/
|
||||
for (NumDeg = 0;
|
||||
NumDeg < NumDegs;
|
||||
NumDeg++)
|
||||
if (Gbl.Hierarchy.Node[Hie_CTR].HieCod > 0)
|
||||
{
|
||||
/* Get next degree */
|
||||
row = mysql_fetch_row (mysql_res);
|
||||
/***** Get degrees belonging to the current center from database *****/
|
||||
NumDegs = Deg_DB_GetDegsOfCurrentCtrBasic (&mysql_res);
|
||||
|
||||
/* Get degree code (row[0]) */
|
||||
if ((DegCod = Str_ConvertStrCodToLongCod (row[0])) <= 0)
|
||||
Err_WrongDegreeExit ();
|
||||
/***** Get degrees of this center *****/
|
||||
for (NumDeg = 0;
|
||||
NumDeg < NumDegs;
|
||||
NumDeg++)
|
||||
{
|
||||
/* Get next degree */
|
||||
row = mysql_fetch_row (mysql_res);
|
||||
|
||||
/* Write option */
|
||||
HTM_OPTION (HTM_Type_LONG,&DegCod,
|
||||
Gbl.Hierarchy.Node[Hie_DEG].HieCod > 0 &&
|
||||
DegCod == Gbl.Hierarchy.Node[Hie_DEG].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
"%s",row[1]);
|
||||
/* Get degree code (row[0]) */
|
||||
if ((DegCod = Str_ConvertStrCodToLongCod (row[0])) <= 0)
|
||||
Err_WrongDegreeExit ();
|
||||
|
||||
/* Write option */
|
||||
HTM_OPTION (HTM_Type_LONG,&DegCod,
|
||||
Gbl.Hierarchy.Node[Hie_DEG].HieCod > 0 &&
|
||||
DegCod == Gbl.Hierarchy.Node[Hie_DEG].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_ENABLED,
|
||||
"%s",row[1]);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
}
|
||||
|
||||
/***** End selector of degree *****/
|
||||
HTM_SELECT_End ();
|
||||
|
||||
|
@ -394,7 +394,7 @@ static void Deg_ListDegreesForEdition (const struct DegTyp_DegTypes *DegTypes)
|
|||
case Usr_CAN:
|
||||
Frm_BeginForm (ActChgDegTyp);
|
||||
ParCod_PutPar (ParCod_OthHie,Deg->HieCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"OthDegTypCod\""
|
||||
" class=\"HIE_SEL_NARROW INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -406,7 +406,7 @@ static void Deg_ListDegreesForEdition (const struct DegTyp_DegTypes *DegTypes)
|
|||
HTM_OPTION (HTM_Type_LONG,&DegTyp->DegTypCod,
|
||||
DegTyp->DegTypCod == Deg->Specific.TypCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",DegTyp->DegTypName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -468,7 +468,7 @@ static void Deg_ListDegreesForEdition (const struct DegTyp_DegTypes *DegTypes)
|
|||
Usr_DONT_GET_ROLE_IN_CRS);
|
||||
HTM_TD_Begin ("class=\"LT DAT_%s INPUT_REQUESTER\"",
|
||||
The_GetSuffix ());
|
||||
Usr_WriteAuthor (&UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (&UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Degree status */
|
||||
|
@ -549,7 +549,7 @@ static void Deg_PutFormToCreateDegree (const struct DegTyp_DegTypes *DegTypes)
|
|||
|
||||
/***** Degree type *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"OthDegTypCod\""
|
||||
" class=\"HIE_SEL_NARROW INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -561,7 +561,7 @@ static void Deg_PutFormToCreateDegree (const struct DegTyp_DegTypes *DegTypes)
|
|||
HTM_OPTION (HTM_Type_LONG,&DegTyp->DegTypCod,
|
||||
DegTyp->DegTypCod == Deg_EditingDeg->Specific.TypCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",DegTyp->DegTypName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -583,7 +583,7 @@ static void Deg_PutFormToCreateDegree (const struct DegTyp_DegTypes *DegTypes)
|
|||
|
||||
/***** Degree requester *****/
|
||||
HTM_TD_Begin ("class=\"LT DAT_%s INPUT_REQUESTER\"",The_GetSuffix ());
|
||||
Usr_WriteAuthor (&Gbl.Usrs.Me.UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (&Gbl.Usrs.Me.UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Degree status *****/
|
||||
|
|
|
@ -238,7 +238,7 @@ static void DegCfg_Center (Vie_ViewType_t ViewType,Frm_PutForm_t PutForm)
|
|||
|
||||
/* Put form to select center */
|
||||
Frm_BeginForm (ActChgDegCtrCfg);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"OthCtrCod\" name=\"OthCtrCod\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -250,7 +250,7 @@ static void DegCfg_Center (Vie_ViewType_t ViewType,Frm_PutForm_t PutForm)
|
|||
HTM_OPTION (HTM_Type_LONG,&Ctr->HieCod,
|
||||
Ctr->HieCod == Gbl.Hierarchy.Node[Hie_CTR].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Ctr->ShrtName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
|
|
@ -112,14 +112,14 @@ void DegTyp_WriteSelectorDegTypes (long SelectedDegTypCod)
|
|||
DegTyp_GetListDegTypes (&DegTypes,Hie_SYS,DegTyp_ORDER_BY_DEG_TYPE);
|
||||
|
||||
/* List degree types */
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"OthDegTypCod\" name=\"OthDegTypCod\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
SelectedDegTypCod <= 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Any_type_of_degree);
|
||||
for (NumDegTyp = 0;
|
||||
NumDegTyp < DegTypes.Num;
|
||||
|
@ -129,7 +129,7 @@ void DegTyp_WriteSelectorDegTypes (long SelectedDegTypCod)
|
|||
HTM_OPTION (HTM_Type_LONG,&DegTyp->DegTypCod,
|
||||
DegTyp->DegTypCod == SelectedDegTypCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",DegTyp->DegTypName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -420,7 +420,7 @@ static void DegTyp_ListDegTypesForEdition (const struct DegTyp_DegTypes *DegType
|
|||
DegTyp_PutParOtherDegTypCod (&DegTypes->Lst[NumDegTyp].DegTypCod);
|
||||
HTM_INPUT_TEXT ("DegTypName",DegTyp_MAX_CHARS_DEGREE_TYPE_NAME,
|
||||
DegTypes->Lst[NumDegTyp].DegTypName,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"25\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -474,9 +474,8 @@ static void DegTyp_PutFormToCreateDegreeType (void)
|
|||
/***** Degree type name *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("DegTypName",DegTyp_MAX_CHARS_DEGREE_TYPE_NAME,DegTyp_EditingDegTyp->DegTypName,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"25\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"25\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
|
|
@ -483,14 +483,14 @@ static void Dpt_ListDepartmentsForEdition (const struct Dpt_Departments *Departm
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
Frm_BeginForm (ActChgDptIns);
|
||||
ParCod_PutPar (ParCod_Dpt,Dpt->DptCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"OthInsCod\""
|
||||
" class=\"HIE_SEL_NARROW INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Dpt->InsCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_institution);
|
||||
for (NumIns = 0;
|
||||
NumIns < Gbl.Hierarchy.List[Hie_CTY].Num;
|
||||
|
@ -500,7 +500,7 @@ static void Dpt_ListDepartmentsForEdition (const struct Dpt_Departments *Departm
|
|||
HTM_OPTION (HTM_Type_LONG,&Ins->HieCod,
|
||||
Ins->HieCod == Dpt->InsCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Ins->ShrtName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -787,14 +787,14 @@ static void Dpt_PutFormToCreateDepartment (void)
|
|||
|
||||
/***** Institution *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"OthInsCod\""
|
||||
" class=\"HIE_SEL_NARROW INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Dpt_EditingDpt->InsCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_institution);
|
||||
for (NumIns = 0;
|
||||
NumIns < Gbl.Hierarchy.List[Hie_CTY].Num;
|
||||
|
@ -804,7 +804,7 @@ static void Dpt_PutFormToCreateDepartment (void)
|
|||
HTM_OPTION (HTM_Type_LONG,&Ins->HieCod,
|
||||
Ins->HieCod == Dpt_EditingDpt->InsCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Ins->ShrtName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -966,7 +966,7 @@ void Dpt_WriteSelectorDepartment (long InsCod,long DptCod,
|
|||
|
||||
/***** Selector to select department *****/
|
||||
/* Begin selector */
|
||||
HTM_SELECT_Begin (SubmitOnChange,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,NULL,
|
||||
"id=\"%s\" name=\"%s\" class=\"%s\"",
|
||||
ParName,ParName,SelectClass);
|
||||
|
||||
|
@ -983,8 +983,8 @@ void Dpt_WriteSelectorDepartment (long InsCod,long DptCod,
|
|||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
DptCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
NoDptSelectable ? HTM_OPTION_ENABLED :
|
||||
HTM_OPTION_DISABLED,
|
||||
NoDptSelectable ? HTM_ENABLED :
|
||||
HTM_DISABLED,
|
||||
"%s",TextWhenNoDptSelected);
|
||||
}
|
||||
|
||||
|
@ -992,7 +992,7 @@ void Dpt_WriteSelectorDepartment (long InsCod,long DptCod,
|
|||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
DptCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_department);
|
||||
}
|
||||
|
||||
|
@ -1005,7 +1005,7 @@ void Dpt_WriteSelectorDepartment (long InsCod,long DptCod,
|
|||
HTM_OPTION (HTM_Type_LONG,&Dpt->DptCod,
|
||||
Dpt->DptCod == DptCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Dpt->FullName);
|
||||
}
|
||||
|
||||
|
|
|
@ -356,10 +356,9 @@ void Enr_WriteFormToReqAnotherUsrID (Act_Action_t NextAction,void (*FuncPars) (v
|
|||
|
||||
/***** Input box to enter user *****/
|
||||
HTM_INPUT_TEXT ("OtherUsrIDNickOrEMail",Cns_MAX_CHARS_EMAIL_ADDRESS,"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"OtherUsrIDNickOrEMail\" size=\"16\""
|
||||
" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
/***** Send button*****/
|
||||
|
@ -677,7 +676,7 @@ void Enr_AskRemoveOldUsrs (void)
|
|||
/***** Form to request number of months without clicks *****/
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtF ("%s ",Txt_Eliminate_all_users_who_are_not_enroled_on_any_courses_PART_1_OF_2);
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Months\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
for (Months = Usr_MIN_MONTHS_WITHOUT_ACCESS_TO_REMOVE_OLD_USRS;
|
||||
|
@ -686,7 +685,7 @@ void Enr_AskRemoveOldUsrs (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Months,
|
||||
Months == Usr_DEF_MONTHS_WITHOUT_ACCESS_TO_REMOVE_OLD_USRS ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",Months);
|
||||
HTM_SELECT_End ();
|
||||
HTM_NBSP ();
|
||||
|
@ -786,9 +785,9 @@ static void Enr_PutAreaToEnterUsrsIDs (void)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"UsrsIDs\" name=\"UsrsIDs\""
|
||||
" cols=\"60\" rows=\"10\""
|
||||
" class=\"INPUT_%s\"",
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"UsrsIDs\" name=\"UsrsIDs\""
|
||||
" cols=\"60\" rows=\"10\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TEXTAREA_End ();
|
||||
HTM_TD_End ();
|
||||
|
@ -817,7 +816,7 @@ static void Enr_PutActionsRegRemSeveralUsrs (void)
|
|||
{
|
||||
HTM_LI_Begin (NULL);
|
||||
HTM_LABEL_Begin (NULL);
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_CHECKED,
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_CHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
" value=\"%u\"",
|
||||
(unsigned) Enr_REGISTER_SPECIFIED_USRS_IN_CRS);
|
||||
|
@ -827,7 +826,7 @@ static void Enr_PutActionsRegRemSeveralUsrs (void)
|
|||
|
||||
HTM_LI_Begin (NULL);
|
||||
HTM_LABEL_Begin (NULL);
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
" value=\"%u\"",
|
||||
(unsigned) Enr_REMOVE_SPECIFIED_USRS_FROM_CRS);
|
||||
|
@ -837,7 +836,7 @@ static void Enr_PutActionsRegRemSeveralUsrs (void)
|
|||
|
||||
HTM_LI_Begin (NULL);
|
||||
HTM_LABEL_Begin (NULL);
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
" value=\"%u\"",
|
||||
(unsigned) Enr_REMOVE_NOT_SPECIFIED_USRS_FROM_CRS);
|
||||
|
@ -847,7 +846,7 @@ static void Enr_PutActionsRegRemSeveralUsrs (void)
|
|||
|
||||
HTM_LI_Begin (NULL);
|
||||
HTM_LABEL_Begin (NULL);
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
" value=\"%u\"",
|
||||
(unsigned) Enr_UPDATE_USRS_IN_CRS);
|
||||
|
@ -861,7 +860,7 @@ static void Enr_PutActionsRegRemSeveralUsrs (void)
|
|||
{
|
||||
HTM_LI_Begin (NULL);
|
||||
HTM_LABEL_Begin (NULL);
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,
|
||||
HTM_INPUT_RADIO ("RegRemAction",Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
" value=\"%u\"",
|
||||
(unsigned) Enr_ELIMINATE_USRS_FROM_PLATFORM);
|
||||
|
@ -1632,7 +1631,8 @@ static void Enr_RegRemOneUsrActionBegin (Enr_RegRemOneUsrAction_t RegRemOneUsrAc
|
|||
|
||||
HTM_LI_Begin (NULL);
|
||||
HTM_LABEL_Begin (NULL);
|
||||
HTM_INPUT_RADIO ("RegRemAction",ThisChecked,HTM_DONT_SUBMIT_ON_CLICK,
|
||||
HTM_INPUT_RADIO ("RegRemAction",ThisChecked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"",(unsigned) RegRemOneUsrAction);
|
||||
|
||||
*Checked = Cns_CHECKED;
|
||||
|
@ -2181,7 +2181,7 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
|
|||
1 << Rol_NET |
|
||||
1 << Rol_TCH,
|
||||
RolesSelected,
|
||||
Cns_DISABLED,
|
||||
HTM_DISABLED,
|
||||
HTM_SUBMIT_ON_CHANGE);
|
||||
HTM_TD_End ();
|
||||
|
||||
|
|
10
swad_exam.c
10
swad_exam.c
|
@ -1351,9 +1351,8 @@ static void Exa_PutFormEditionExam (struct Exa_Exams *Exams,
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LM\"");
|
||||
HTM_INPUT_TEXT ("Title",Exa_MAX_CHARS_TITLE,Exams->Exam.Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
@ -1369,7 +1368,7 @@ static void Exa_PutFormEditionExam (struct Exa_Exams *Exams,
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LM\"");
|
||||
HTM_INPUT_FLOAT ("MaxGrade",0.0,DBL_MAX,0.01,Exams->Exam.MaxGrade,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,false,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1398,7 +1397,8 @@ static void Exa_PutFormEditionExam (struct Exa_Exams *Exams,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_Txt (Txt);
|
||||
|
|
|
@ -817,17 +817,17 @@ static void ExaPrn_WriteTF_AnsToFill (const struct ExaPrn_Print *Print,
|
|||
HTM_OPTION (HTM_Type_STRING,"" ,
|
||||
Print->PrintedQuestions[QstInd].StrAnswers[0] == '\0' ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
" ");
|
||||
HTM_OPTION (HTM_Type_STRING,"T",
|
||||
Print->PrintedQuestions[QstInd].StrAnswers[0] == 'T' ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_TF_QST[0]);
|
||||
HTM_OPTION (HTM_Type_STRING,"F",
|
||||
Print->PrintedQuestions[QstInd].StrAnswers[0] == 'F' ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_TF_QST[1]);
|
||||
HTM_Txt ("</select>");
|
||||
}
|
||||
|
|
|
@ -598,7 +598,7 @@ static void ExaRes_ListExamsToSelect (struct Exa_Exams *Exams)
|
|||
The_GetSuffix (),
|
||||
The_GetColorRows ());
|
||||
HTM_INPUT_CHECKBOX (Par_CodeStr[ParCod_Exa],
|
||||
Exams->Lst[NumExam].Checked,
|
||||
Exams->Lst[NumExam].Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Gam%u\" value=\"%ld\"",
|
||||
NumExam,Exams->Lst[NumExam].ExaCod);
|
||||
|
|
|
@ -947,7 +947,7 @@ static void ExaSes_PutFormSession (struct ExaSes_Session *Session)
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_INPUT_TEXT ("Title",ExaSes_MAX_CHARS_TITLE,Session->Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1012,7 +1012,7 @@ static void ExaSes_ShowLstGrpsToCreateSession (long SesCod)
|
|||
"SesCod",
|
||||
SesCod) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"WholeCrs\" value=\"Y\""
|
||||
" onclick=\"uncheckChildren(this,'GrpCods')\"");
|
||||
|
|
|
@ -203,9 +203,8 @@ static void ExaSet_PutFormNewSet (struct Exa_Exams *Exams,
|
|||
/***** Title *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("Title",ExaSet_MAX_CHARS_TITLE,Set->Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
@ -218,7 +217,7 @@ static void ExaSet_PutFormNewSet (struct Exa_Exams *Exams,
|
|||
/***** Number of questions to appear in the exam *****/
|
||||
HTM_TD_Begin ("class=\"RM\"");
|
||||
HTM_INPUT_LONG ("NumQstsToPrint",0,UINT_MAX,(long) Set->NumQstsToPrint,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,false,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"class=\"INPUT_LONG INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -634,7 +633,7 @@ static void ExaSet_ListOneOrMoreSetsForEdition (struct Exa_Exams *Exams,
|
|||
Frm_BeginFormAnchor (ActChgTitExaSet,Anchor);
|
||||
ExaSet_PutParsOneSet (Exams);
|
||||
HTM_INPUT_TEXT ("Title",ExaSet_MAX_CHARS_TITLE,Set.Title,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -664,7 +663,7 @@ static void ExaSet_ListOneOrMoreSetsForEdition (struct Exa_Exams *Exams,
|
|||
Frm_BeginFormAnchor (ActChgNumQstExaSet,Anchor);
|
||||
ExaSet_PutParsOneSet (Exams);
|
||||
HTM_INPUT_LONG ("NumQstsToPrint",0,UINT_MAX,(long) Set.NumQstsToPrint,
|
||||
HTM_SUBMIT_ON_CHANGE,false,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"INPUT_LONG INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -128,7 +128,7 @@ static void Fig_ReqShowFigure (Fig_FigureType_t SelectedFigureType)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LM DAT_%s\"",The_GetSuffix ());
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"FigureType\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -140,7 +140,7 @@ static void Fig_ReqShowFigure (Fig_FigureType_t SelectedFigureType)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&FigureTypeUnsigned,
|
||||
FigType == SelectedFigureType ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_FIGURE_TYPES[FigType]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
/*****************************************************************************/
|
||||
|
||||
#include "swad_notification.h"
|
||||
#include "swad_user.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/******************************** Public types *******************************/
|
||||
|
|
56
swad_forum.c
56
swad_forum.c
|
@ -910,20 +910,20 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
|
|||
extern const char *Txt_FORUM_Post_banned;
|
||||
extern const char *Txt_FORUM_Post_X_banned;
|
||||
extern const char *Txt_This_post_has_been_banned_probably_for_not_satisfy_the_rules_of_the_forums;
|
||||
static const char *Icon[Cns_NUM_DISABLED] =
|
||||
static const char *Icon[For_NUM_DISABLED] =
|
||||
{
|
||||
[Cns_DISABLED] = "eye-slash.svg",
|
||||
[Cns_ENABLED ] = "eye.svg",
|
||||
[For_DISABLED] = "eye-slash.svg",
|
||||
[For_ENABLED ] = "eye.svg",
|
||||
};
|
||||
static Ico_Color_t Color[Cns_NUM_DISABLED] =
|
||||
static Ico_Color_t Color[For_NUM_DISABLED] =
|
||||
{
|
||||
[Cns_DISABLED] = Ico_RED,
|
||||
[Cns_ENABLED ] = Ico_GREEN,
|
||||
[For_DISABLED] = Ico_RED,
|
||||
[For_ENABLED ] = Ico_GREEN,
|
||||
};
|
||||
static const char **TxtAllowedBanned[Cns_NUM_DISABLED] =
|
||||
static const char **TxtAllowedBanned[For_NUM_DISABLED] =
|
||||
{
|
||||
[Cns_DISABLED] = &Txt_FORUM_Post_X_banned,
|
||||
[Cns_ENABLED ] = &Txt_FORUM_Post_X_allowed,
|
||||
[For_DISABLED] = &Txt_FORUM_Post_X_banned,
|
||||
[For_ENABLED ] = &Txt_FORUM_Post_X_allowed,
|
||||
};
|
||||
struct Usr_Data UsrDat;
|
||||
time_t CreatTimeUTC; // Creation time of a post
|
||||
|
@ -931,7 +931,7 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
|
|||
char Subject[Cns_MAX_BYTES_SUBJECT + 1];
|
||||
char Content[Cns_MAX_BYTES_LONG_TEXT + 1];
|
||||
struct Med_Media Media;
|
||||
Cns_Disabled_t Disabled;
|
||||
For_Disabled_t Disabled;
|
||||
char *Title;
|
||||
Act_Action_t NextAction;
|
||||
|
||||
|
@ -942,13 +942,13 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
|
|||
Med_MediaConstructor (&Media);
|
||||
|
||||
/***** Check if post is enabled *****/
|
||||
Disabled = For_DB_GetIfPstIsDisabledOrEnabled (Forums->PstCod);
|
||||
Disabled = For_DB_GetIfPstIsDisabled (Forums->PstCod);
|
||||
|
||||
/***** Get data of post *****/
|
||||
For_GetPstData (Forums->PstCod,&UsrDat.UsrCod,&CreatTimeUTC,
|
||||
Subject,OriginalContent,&Media);
|
||||
|
||||
if (Disabled == Cns_ENABLED)
|
||||
if (Disabled == For_ENABLED)
|
||||
/* Return this subject as last subject */
|
||||
Str_Copy (LastSubject,Subject,Cns_MAX_BYTES_SUBJECT);
|
||||
|
||||
|
@ -986,10 +986,10 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
|
|||
The_GetSuffix ());
|
||||
switch (Disabled)
|
||||
{
|
||||
case Cns_DISABLED:
|
||||
case For_DISABLED:
|
||||
HTM_TxtF ("[%s]",Txt_FORUM_Post_banned);
|
||||
break;
|
||||
case Cns_ENABLED:
|
||||
case For_ENABLED:
|
||||
default:
|
||||
if (Subject[0])
|
||||
HTM_Txt (Subject);
|
||||
|
@ -1008,8 +1008,8 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
|
|||
switch (ICanModerateForum)
|
||||
{
|
||||
case Usr_CAN:
|
||||
NextAction = Disabled == Cns_ENABLED ? For_ActionsDisPstFor[Forums->Forum.Type] :
|
||||
For_ActionsEnbPstFor[Forums->Forum.Type];
|
||||
NextAction = (Disabled == For_ENABLED) ? For_ActionsDisPstFor[Forums->Forum.Type] :
|
||||
For_ActionsEnbPstFor[Forums->Forum.Type];
|
||||
Frm_BeginFormAnchor (NextAction,For_FORUM_POSTS_SECTION_ID);
|
||||
For_PutParsForum (Forums);
|
||||
Ico_PutIconLink (Icon[Disabled],Color[Disabled],NextAction);
|
||||
|
@ -1043,7 +1043,7 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
|
|||
Usr_DONT_GET_PREFS,
|
||||
Usr_DONT_GET_ROLE_IN_CRS);
|
||||
Usr_WriteAuthor (&UsrDat,Disabled);
|
||||
if (Disabled == Cns_ENABLED)
|
||||
if (Disabled == For_ENABLED)
|
||||
/* Write number of posts from this user */
|
||||
For_WriteNumberOfPosts (Forums,UsrDat.UsrCod);
|
||||
HTM_TD_End ();
|
||||
|
@ -1052,10 +1052,10 @@ static void For_ShowAForumPost (struct For_Forums *Forums,
|
|||
HTM_TD_Begin ("class=\"LT MSG_TXT_%s\"",The_GetSuffix ());
|
||||
switch (Disabled)
|
||||
{
|
||||
case Cns_DISABLED:
|
||||
case For_DISABLED:
|
||||
HTM_Txt (Txt_This_post_has_been_banned_probably_for_not_satisfy_the_rules_of_the_forums);
|
||||
break;
|
||||
case Cns_ENABLED:
|
||||
case For_ENABLED:
|
||||
Str_Copy (Content,OriginalContent,sizeof (Content) - 1);
|
||||
Msg_WriteMsgContent (Content,true,false);
|
||||
Med_ShowMedia (&Media,"FOR_IMG_CONT","FOR_IMG");
|
||||
|
@ -1452,7 +1452,8 @@ static void For_PutFormWhichForums (const struct For_Forums *Forums)
|
|||
HTM_LABEL_Begin (NULL);
|
||||
Checked = (ForumSet == Forums->ForumSet) ? Cns_UNCHECKED :
|
||||
Cns_CHECKED;
|
||||
HTM_INPUT_RADIO ("ForumSet",Checked,HTM_SUBMIT_ON_CLICK,
|
||||
HTM_INPUT_RADIO ("ForumSet",Checked,HTM_ENABLED,
|
||||
HTM_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"",(unsigned) ForumSet);
|
||||
HTM_Txt (Txt_FORUM_WHICH_FORUM[ForumSet]);
|
||||
HTM_LABEL_End ();
|
||||
|
@ -2342,7 +2343,7 @@ static void For_ListForumThrs (struct For_Forums *Forums,
|
|||
Pag_WriteLinksToPages (Pag_POSTS_FORUM,
|
||||
&PaginationPsts,
|
||||
Forums,Thr.ThrCod,
|
||||
Thr.Enabled[Dat_STR_TIME],
|
||||
Thr.Disabled[Dat_STR_TIME],
|
||||
Thr.Subject,
|
||||
Thr.NumUnreadPosts ? "BOLD PAG_TXT" :
|
||||
"PAG_TXT",
|
||||
|
@ -2363,7 +2364,7 @@ static void For_ListForumThrs (struct For_Forums *Forums,
|
|||
Usr_DONT_GET_ROLE_IN_CRS);
|
||||
HTM_TD_Begin ("class=\"LT %s_%s %s\"",
|
||||
Class,The_GetSuffix (),BgColor);
|
||||
Usr_WriteAuthor (&UsrDat,Thr.Enabled[Order]);
|
||||
Usr_WriteAuthor (&UsrDat,Thr.Disabled[Order]);
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Write the date of first or last message (it's in YYYYMMDDHHMMSS format) */
|
||||
|
@ -2470,7 +2471,7 @@ void For_GetThreadData (struct For_Thread *Thr)
|
|||
for (Order = (Dat_StartEndTime_t) 0;
|
||||
Order <= (Dat_StartEndTime_t) (Dat_NUM_START_END_TIME - 1);
|
||||
Order++)
|
||||
Thr->Enabled[Order] = For_DB_GetIfPstIsDisabledOrEnabled (Thr->PstCod[Order]);
|
||||
Thr->Disabled[Order] = For_DB_GetIfPstIsDisabled (Thr->PstCod[Order]);
|
||||
|
||||
/***** Get number of posts in this thread *****/
|
||||
Thr->NumPosts = For_DB_GetNumPstsInThr (Thr->ThrCod);
|
||||
|
@ -2841,7 +2842,7 @@ static void For_WriteFormForumPst (struct For_Forums *Forums,
|
|||
HTM_INPUT_TEXT ("Subject",Cns_MAX_CHARS_SUBJECT,
|
||||
IsReply ? Subject :
|
||||
"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Subject\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -2858,9 +2859,10 @@ static void For_WriteFormForumPst (struct For_Forums *Forums,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Content\" name=\"Content\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" rows=\"10\"",
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Content\" name=\"Content\""
|
||||
" rows=\"10\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TEXTAREA_End ();
|
||||
HTM_TD_End ();
|
||||
|
|
16
swad_forum.h
16
swad_forum.h
|
@ -28,17 +28,21 @@
|
|||
/*****************************************************************************/
|
||||
|
||||
#include "swad_alert.h"
|
||||
#include "swad_center.h"
|
||||
#include "swad_degree.h"
|
||||
#include "swad_institution.h"
|
||||
#include "swad_date.h"
|
||||
#include "swad_language.h"
|
||||
#include "swad_notification.h"
|
||||
#include "swad_scope.h"
|
||||
#include "swad_string.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/************************ Public constants and types *************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#define For_NUM_DISABLED 2
|
||||
typedef enum
|
||||
{
|
||||
For_DISABLED,
|
||||
For_ENABLED,
|
||||
} For_Disabled_t;
|
||||
|
||||
#define For_NUM_FORUM_SETS 2
|
||||
typedef enum
|
||||
{
|
||||
|
@ -77,7 +81,7 @@ struct For_Thread
|
|||
long PstCod[Dat_NUM_START_END_TIME];
|
||||
long UsrCod[Dat_NUM_START_END_TIME];
|
||||
time_t WriteTime[Dat_NUM_START_END_TIME];
|
||||
Cns_Disabled_t Enabled[Dat_NUM_START_END_TIME];
|
||||
For_Disabled_t Disabled[Dat_NUM_START_END_TIME];
|
||||
char Subject[Cns_MAX_BYTES_SUBJECT + 1];
|
||||
unsigned NumPosts;
|
||||
unsigned NumUnreadPosts; // Number of my unread posts in thread
|
||||
|
|
|
@ -969,11 +969,11 @@ void For_DB_InsertPstIntoDisabled (long PstCod)
|
|||
/*********************** Get if a forum post is disabled *********************/
|
||||
/*****************************************************************************/
|
||||
|
||||
Cns_Disabled_t For_DB_GetIfPstIsDisabledOrEnabled (long PstCod)
|
||||
For_Disabled_t For_DB_GetIfPstIsDisabled (long PstCod)
|
||||
{
|
||||
/***** Trivial check: post code should be > 0 *****/
|
||||
if (PstCod <= 0)
|
||||
return Cns_DISABLED;
|
||||
return For_DISABLED;
|
||||
|
||||
/***** Get if post is disabled from database *****/
|
||||
return
|
||||
|
@ -982,8 +982,8 @@ Cns_Disabled_t For_DB_GetIfPstIsDisabledOrEnabled (long PstCod)
|
|||
"(SELECT *"
|
||||
" FROM for_disabled"
|
||||
" WHERE PstCod=%ld)",
|
||||
PstCod) ? Cns_DISABLED :
|
||||
Cns_ENABLED; // Post is enabled if it does not appear in table of disabled posts
|
||||
PstCod) ? For_DISABLED :
|
||||
For_ENABLED; // Post is enabled if it does not appear in table of disabled posts
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
|
@ -27,6 +27,8 @@
|
|||
/********************************* Headers ***********************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#include <mysql/mysql.h> // To access MySQL databases
|
||||
|
||||
#include "swad_forum.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -98,7 +100,7 @@ void For_DB_RemoveExpiredClipboards (void);
|
|||
|
||||
//--------------------------- Disabled posts ----------------------------------
|
||||
void For_DB_InsertPstIntoDisabled (long PstCod);
|
||||
Cns_Disabled_t For_DB_GetIfPstIsDisabledOrEnabled (long PstCod);
|
||||
For_Disabled_t For_DB_GetIfPstIsDisabled (long PstCod);
|
||||
void For_DB_RemovePstFromDisabled (long PstCod);
|
||||
void For_DB_RemoveDisabledPstsInThread (long ThrCod);
|
||||
|
||||
|
|
13
swad_game.c
13
swad_game.c
|
@ -1359,9 +1359,8 @@ static void Gam_PutFormEditionGame (struct Gam_Games *Games,
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_INPUT_TEXT ("Title",Gam_MAX_CHARS_TITLE,Games->Game.Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
@ -1377,8 +1376,9 @@ static void Gam_PutFormEditionGame (struct Gam_Games *Games,
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LM\"");
|
||||
HTM_INPUT_FLOAT ("MaxGrade",0.0,DBL_MAX,0.01,Games->Game.MaxGrade,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,false,
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\" required=\"required\"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -1405,7 +1405,8 @@ static void Gam_PutFormEditionGame (struct Gam_Games *Games,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_Txt (Txt);
|
||||
|
|
149
swad_group.c
149
swad_group.c
|
@ -412,6 +412,7 @@ static void Grp_PutCheckboxAllGrps (void)
|
|||
extern const char *Txt_All_groups;
|
||||
Usr_Can_t ICanSelUnselGroup;
|
||||
Cns_Checked_t Checked;
|
||||
HTM_Disabled_t Disabled;
|
||||
|
||||
switch (Gbl.Usrs.Me.Role.Logged)
|
||||
{
|
||||
|
@ -432,10 +433,13 @@ static void Grp_PutCheckboxAllGrps (void)
|
|||
Checked = (ICanSelUnselGroup == Usr_CAN &&
|
||||
Gbl.Crs.Grps.AllGrps) ? Cns_UNCHECKED :
|
||||
Cns_CHECKED;
|
||||
HTM_INPUT_CHECKBOX ("AllGroups",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
Disabled = (ICanSelUnselGroup == Usr_CAN) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_CHECKBOX ("AllGroups",
|
||||
Checked,Disabled,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"%s",
|
||||
(ICanSelUnselGroup == Usr_CAN) ? " onclick=\"togglecheckChildren(this,'GrpCods')\"" :
|
||||
" disabled=\"disabled\"");
|
||||
"");
|
||||
HTM_NBSPTxt (Txt_All_groups);
|
||||
HTM_LABEL_End ();
|
||||
HTM_DIV_End ();
|
||||
|
@ -1242,7 +1246,7 @@ static void Grp_ListGroupTypesForEdition (void)
|
|||
ParCod_PutPar (ParCod_GrpTyp,Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
|
||||
HTM_INPUT_TEXT ("GrpTypName",Grp_MAX_CHARS_GROUP_TYPE_NAME,
|
||||
Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypName,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"12\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -1252,19 +1256,19 @@ static void Grp_ListGroupTypesForEdition (void)
|
|||
HTM_TD_Begin ("class=\"CM\"");
|
||||
Frm_BeginFormAnchor (ActChgMdtGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
|
||||
ParCod_PutPar (ParCod_GrpTyp,Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"MandatoryEnrolment\""
|
||||
" class=\"INPUT_%s\" style=\"width:150px;\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"N",
|
||||
Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].MandatoryEnrolment ? HTM_OPTION_UNSELECTED :
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_It_is_optional_to_choose_a_group);
|
||||
HTM_OPTION (HTM_Type_STRING,"Y",
|
||||
Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].MandatoryEnrolment ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_It_is_mandatory_to_choose_a_group);
|
||||
HTM_SELECT_End ();
|
||||
Frm_EndForm ();
|
||||
|
@ -1274,19 +1278,19 @@ static void Grp_ListGroupTypesForEdition (void)
|
|||
HTM_TD_Begin ("class=\"CM\"");
|
||||
Frm_BeginFormAnchor (ActChgMulGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
|
||||
ParCod_PutPar (ParCod_GrpTyp,Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"MultipleEnrolment\""
|
||||
" class=\"INPUT_%s\" style=\"width:150px;\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"N",
|
||||
Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].MultipleEnrolment ? HTM_OPTION_UNSELECTED :
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_A_student_can_only_belong_to_one_group);
|
||||
HTM_OPTION (HTM_Type_STRING,"Y",
|
||||
Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].MultipleEnrolment ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_A_student_can_belong_to_several_groups);
|
||||
HTM_SELECT_End ();
|
||||
Frm_EndForm ();
|
||||
|
@ -1474,7 +1478,7 @@ static void Grp_ListGroupsForEdition (const struct Roo_Rooms *Rooms)
|
|||
HTM_TD_Begin ("class=\"CM\"");
|
||||
Frm_BeginFormAnchor (ActChgGrpTyp,Grp_GROUPS_SECTION_ID);
|
||||
ParCod_PutPar (ParCod_Grp,Grp->GrpCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"GrpTypCod\""
|
||||
" class=\"INPUT_%s\" style=\"width:100px;\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1488,7 +1492,7 @@ static void Grp_ListGroupsForEdition (const struct Roo_Rooms *Rooms)
|
|||
HTM_OPTION (HTM_Type_LONG,&GrpTyp2->GrpTypCod,
|
||||
GrpTyp2->GrpTypCod == GrpTyp1->GrpTypCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",GrpTyp2->GrpTypName);
|
||||
}
|
||||
|
||||
|
@ -1502,7 +1506,7 @@ static void Grp_ListGroupsForEdition (const struct Roo_Rooms *Rooms)
|
|||
Frm_BeginFormAnchor (ActRenGrp,Grp_GROUPS_SECTION_ID);
|
||||
ParCod_PutPar (ParCod_Grp,Grp->GrpCod);
|
||||
HTM_INPUT_TEXT ("GrpName",Grp_MAX_CHARS_GROUP_NAME,Grp->GrpName,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"20\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -1513,7 +1517,7 @@ static void Grp_ListGroupsForEdition (const struct Roo_Rooms *Rooms)
|
|||
HTM_TD_Begin ("class=\"CM\"");
|
||||
Frm_BeginFormAnchor (ActChgGrpRoo,Grp_GROUPS_SECTION_ID);
|
||||
ParCod_PutPar (ParCod_Grp,Grp->GrpCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"RooCod\""
|
||||
" class=\"INPUT_%s\" style=\"width:100px;\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1522,14 +1526,14 @@ static void Grp_ListGroupsForEdition (const struct Roo_Rooms *Rooms)
|
|||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
Grp->Room.RooCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_No_assigned_room);
|
||||
|
||||
/* Option for another room */
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Grp->Room.RooCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_room);
|
||||
|
||||
/* Options for rooms */
|
||||
|
@ -1541,7 +1545,7 @@ static void Grp_ListGroupsForEdition (const struct Roo_Rooms *Rooms)
|
|||
HTM_OPTION (HTM_Type_LONG,&Roo->RooCod,
|
||||
Roo->RooCod == Grp->Room.RooCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Roo->ShrtName);
|
||||
}
|
||||
|
||||
|
@ -1566,7 +1570,7 @@ static void Grp_ListGroupsForEdition (const struct Roo_Rooms *Rooms)
|
|||
ParCod_PutPar (ParCod_Grp,Grp->GrpCod);
|
||||
Grp_WriteMaxStds (StrMaxStudents,Grp->MaxStudents);
|
||||
HTM_INPUT_TEXT ("MaxStudents",Cns_MAX_DECIMAL_DIGITS_UINT,StrMaxStudents,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"3\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -1650,6 +1654,7 @@ void Grp_ListGrpsToEditAsgAttSvyEvtMch (struct GroupType *GrpTyp,
|
|||
bool IBelongToThisGroup;
|
||||
struct Group *Grp;
|
||||
Cns_Checked_t Checked;
|
||||
HTM_Disabled_t Disabled;
|
||||
|
||||
/***** Write heading *****/
|
||||
Grp_WriteGrpHead (GrpTyp);
|
||||
|
@ -1678,13 +1683,14 @@ void Grp_ListGrpsToEditAsgAttSvyEvtMch (struct GroupType *GrpTyp,
|
|||
|
||||
HTM_TD_Begin (IBelongToThisGroup ? "class=\"LM BG_HIGHLIGHT\"" :
|
||||
"class=\"LM\"");
|
||||
HTM_INPUT_CHECKBOX ("GrpCods",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Grp%ld\" value=\"%ld\"%s"
|
||||
Disabled = (IBelongToThisGroup ||
|
||||
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_CHECKBOX ("GrpCods",
|
||||
Checked,Disabled,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Grp%ld\" value=\"%ld\""
|
||||
" onclick=\"uncheckParent(this,'WholeCrs')\"",
|
||||
Grp->GrpCod,Grp->GrpCod,
|
||||
(IBelongToThisGroup ||
|
||||
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM) ? "" :
|
||||
" disabled=\"disabled\"");
|
||||
Grp->GrpCod,Grp->GrpCod);
|
||||
HTM_TD_End ();
|
||||
|
||||
Grp_WriteRowGrp (Grp,IBelongToThisGroup ? Lay_HIGHLIGHT :
|
||||
|
@ -1853,6 +1859,7 @@ static Usr_Can_t Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
|
|||
Usr_Can_t ICanChangeMySelectionForThisGrpTyp;
|
||||
Usr_Can_t ICanChangeMySelectionForThisGrp;
|
||||
Cns_Checked_t Checked;
|
||||
HTM_Disabled_t Disabled;
|
||||
char StrGrpCod[32];
|
||||
|
||||
/***** Write heading *****/
|
||||
|
@ -1970,7 +1977,10 @@ static Usr_Can_t Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
|
|||
HTM_TD_Begin (IBelongToThisGroup ? "class=\"LM BG_HIGHLIGHT\"" :
|
||||
"class=\"LM\"");
|
||||
Checked = IBelongToThisGroup ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
Cns_UNCHECKED;
|
||||
Disabled = (ICanChangeMySelectionForThisGrp == Usr_CAN ||
|
||||
IBelongToThisGroup) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
snprintf (StrGrpCod,sizeof (StrGrpCod),"GrpCod%ld",GrpTyp->GrpTypCod);
|
||||
if (Gbl.Usrs.Me.Role.Logged == Rol_STD && // If I am a student
|
||||
!GrpTyp->MultipleEnrolment && // ...and the enrolment is single
|
||||
|
@ -1978,30 +1988,33 @@ static Usr_Can_t Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
|
|||
{
|
||||
/* Put a radio item */
|
||||
if (GrpTyp->MandatoryEnrolment)
|
||||
HTM_INPUT_RADIO (StrGrpCod,Checked,HTM_DONT_SUBMIT_ON_CLICK,
|
||||
HTM_INPUT_RADIO (StrGrpCod,Checked,Disabled,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"id=\"Grp%ld\" value=\"%ld\"%s",
|
||||
Grp->GrpCod,Grp->GrpCod,
|
||||
ICanChangeMySelectionForThisGrp == Usr_CAN ? "" :
|
||||
IBelongToThisGroup ? " readonly" : // I can not unregister (disabled does not work because the value is not submitted)
|
||||
" disabled=\"disabled\""); // I can not register
|
||||
(ICanChangeMySelectionForThisGrp == Usr_CAN_NOT &&
|
||||
IBelongToThisGroup) ? " readonly" : // I can not unregister (disabled does not work because the value is not submitted)
|
||||
"");
|
||||
else // If the enrolment is not mandatory, I can select no groups
|
||||
HTM_INPUT_RADIO (StrGrpCod,Checked,HTM_DONT_SUBMIT_ON_CLICK,
|
||||
HTM_INPUT_RADIO (StrGrpCod,Checked,Disabled,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"id=\"Grp%ld\" value=\"%ld\"%s"
|
||||
" onclick=\"selectUnselectRadio(this,this.form.GrpCod%ld,%u)\"",
|
||||
Grp->GrpCod,Grp->GrpCod,
|
||||
ICanChangeMySelectionForThisGrp == Usr_CAN ? "" :
|
||||
IBelongToThisGroup ? " readonly" : // I can not unregister (disabled does not work because the value is not submitted)
|
||||
" disabled=\"disabled\"", // I can not register
|
||||
(ICanChangeMySelectionForThisGrp == Usr_CAN_NOT &&
|
||||
IBelongToThisGroup) ? " readonly" : // I can not unregister (disabled does not work because the value is not submitted)
|
||||
"",
|
||||
GrpTyp->GrpTypCod,GrpTyp->NumGrps);
|
||||
}
|
||||
else
|
||||
/* Put a checkbox item */
|
||||
HTM_INPUT_CHECKBOX (StrGrpCod,Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX (StrGrpCod,
|
||||
Checked,Disabled,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Grp%ld\" value=\"%ld\"%s",
|
||||
Grp->GrpCod,Grp->GrpCod,
|
||||
ICanChangeMySelectionForThisGrp == Usr_CAN ? "" :
|
||||
IBelongToThisGroup ? " readonly" : // I can not unregister (disabled does not work because the value is not submitted)
|
||||
" disabled=\"disabled\""); // I can not register
|
||||
(ICanChangeMySelectionForThisGrp == Usr_CAN_NOT &&
|
||||
IBelongToThisGroup) ? " readonly" : // I can not unregister (disabled does not work because the value is not submitted)
|
||||
"");
|
||||
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -2095,7 +2108,8 @@ static void Grp_ListGrpsToAddOrRemUsrs (struct GroupType *GrpTyp,long UsrCod)
|
|||
snprintf (StrGrpCod,sizeof (StrGrpCod),"GrpCod%ld",GrpTyp->GrpTypCod);
|
||||
Checked = UsrBelongsToThisGroup ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX (StrGrpCod,Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX (StrGrpCod,
|
||||
Checked,HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Grp%ld\" value=\"%ld\"",
|
||||
Grp->GrpCod,Grp->GrpCod);
|
||||
|
||||
|
@ -2121,7 +2135,6 @@ static void Grp_ListGrpsToAddOrRemUsrs (struct GroupType *GrpTyp,long UsrCod)
|
|||
|
||||
static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp)
|
||||
{
|
||||
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED];
|
||||
extern const char *Txt_users_with_no_group;
|
||||
unsigned NumGrpThisType;
|
||||
unsigned NumGrpSel;
|
||||
|
@ -2129,7 +2142,7 @@ static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp)
|
|||
bool IBelongToThisGroup;
|
||||
Usr_Can_t ICanSelUnselGroup;
|
||||
Cns_Checked_t Checked;
|
||||
Cns_Disabled_t Disabled;
|
||||
HTM_Disabled_t Disabled;
|
||||
struct Group *Grp;
|
||||
Rol_Role_t Role;
|
||||
|
||||
|
@ -2192,11 +2205,14 @@ static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp)
|
|||
|
||||
HTM_TD_Begin (IBelongToThisGroup ? "class=\"LM BG_HIGHLIGHT\"" :
|
||||
"class=\"LM\"");
|
||||
HTM_INPUT_CHECKBOX ("GrpCods",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
Disabled = (ICanSelUnselGroup == Usr_CAN) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_CHECKBOX ("GrpCods",
|
||||
Checked,Disabled,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Grp%ld\" value=\"%ld\"%s",
|
||||
Grp->GrpCod,Grp->GrpCod,
|
||||
ICanSelUnselGroup == Usr_CAN ? " onclick=\"checkParent(this,'AllGroups')\"" :
|
||||
HTM_DisabledTxt[Cns_DISABLED]);
|
||||
(ICanSelUnselGroup == Usr_CAN) ? " onclick=\"checkParent(this,'AllGroups')\"" :
|
||||
"");
|
||||
HTM_TD_End ();
|
||||
|
||||
Grp_WriteRowGrp (Grp,IBelongToThisGroup ? Lay_HIGHLIGHT :
|
||||
|
@ -2237,13 +2253,13 @@ static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp)
|
|||
HTM_TR_Begin (NULL);
|
||||
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
Disabled = (ICanSelUnselGroup == Usr_CAN_NOT) ? Cns_DISABLED :
|
||||
Cns_ENABLED;
|
||||
HTM_INPUT_CHECKBOX ("GrpCods",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Grp%ld\" value=\"%ld\"%s"
|
||||
Disabled = (ICanSelUnselGroup == Usr_CAN_NOT) ? HTM_DISABLED :
|
||||
HTM_ENABLED;
|
||||
HTM_INPUT_CHECKBOX ("GrpCods",
|
||||
Checked,Disabled,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Grp%ld\" value=\"%ld\""
|
||||
" onclick=\"checkParent(this,'AllGroups')\"",
|
||||
-GrpTyp->GrpTypCod,-GrpTyp->GrpTypCod,
|
||||
HTM_DisabledTxt[Disabled]);
|
||||
-GrpTyp->GrpTypCod,-GrpTyp->GrpTypCod);
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Column closed/open */
|
||||
|
@ -2455,46 +2471,46 @@ static void Grp_PutFormToCreateGroupType (void)
|
|||
/***** Name of group type *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_INPUT_TEXT ("GrpTypName",Grp_MAX_CHARS_GROUP_TYPE_NAME,
|
||||
Gbl.Crs.Grps.GrpTyp.GrpTypName,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"12\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
Gbl.Crs.Grps.GrpTyp.GrpTypName,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"12\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Is it mandatory to register in any groups of this type? *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"MandatoryEnrolment\""
|
||||
" class=\"INPUT_%s\" style=\"width:150px;\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"N",
|
||||
Gbl.Crs.Grps.GrpTyp.MandatoryEnrolment ? HTM_OPTION_UNSELECTED :
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_It_is_optional_to_choose_a_group);
|
||||
HTM_OPTION (HTM_Type_STRING,"Y",
|
||||
Gbl.Crs.Grps.GrpTyp.MandatoryEnrolment ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_It_is_mandatory_to_choose_a_group);
|
||||
HTM_SELECT_End ();
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Is it possible to register in multiple groups of this type? *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"MultipleEnrolment\""
|
||||
" class=\"INPUT_%s\" style=\"width:150px;\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"N",
|
||||
Gbl.Crs.Grps.GrpTyp.MultipleEnrolment ? HTM_OPTION_UNSELECTED :
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_A_student_can_only_belong_to_one_group);
|
||||
HTM_OPTION (HTM_Type_STRING,"Y",
|
||||
Gbl.Crs.Grps.GrpTyp.MultipleEnrolment ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_A_student_can_belong_to_several_groups);
|
||||
HTM_SELECT_End ();
|
||||
HTM_TD_End ();
|
||||
|
@ -2590,7 +2606,7 @@ static void Grp_PutFormToCreateGroup (const struct Roo_Rooms *Rooms)
|
|||
/***** Group type *****/
|
||||
/* Begin selector */
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"GrpTypCod\""
|
||||
" class=\"INPUT_%s\" style=\"width:100px;\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -2604,7 +2620,7 @@ static void Grp_PutFormToCreateGroup (const struct Roo_Rooms *Rooms)
|
|||
HTM_OPTION (HTM_Type_LONG,&GrpTyp->GrpTypCod,
|
||||
GrpTyp->GrpTypCod == Gbl.Crs.Grps.GrpTyp.GrpTypCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",GrpTyp->GrpTypName);
|
||||
}
|
||||
|
||||
|
@ -2615,16 +2631,15 @@ static void Grp_PutFormToCreateGroup (const struct Roo_Rooms *Rooms)
|
|||
/***** Group name *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_INPUT_TEXT ("GrpName",Grp_MAX_CHARS_GROUP_NAME,Gbl.Crs.Grps.GrpName,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"20\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"20\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Room *****/
|
||||
/* Begin selector */
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"RooCod\""
|
||||
" class=\"INPUT_%s\" style=\"width:100px;\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -2633,14 +2648,14 @@ static void Grp_PutFormToCreateGroup (const struct Roo_Rooms *Rooms)
|
|||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
Gbl.Crs.Grps.RooCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_No_assigned_room);
|
||||
|
||||
/* Option for another room */
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Gbl.Crs.Grps.RooCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_room);
|
||||
|
||||
/* Options for rooms */
|
||||
|
@ -2652,7 +2667,7 @@ static void Grp_PutFormToCreateGroup (const struct Roo_Rooms *Rooms)
|
|||
HTM_OPTION (HTM_Type_LONG,&Roo->RooCod,
|
||||
Roo->RooCod == Gbl.Crs.Grps.RooCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Roo->ShrtName);
|
||||
}
|
||||
|
||||
|
@ -2675,7 +2690,7 @@ static void Grp_PutFormToCreateGroup (const struct Roo_Rooms *Rooms)
|
|||
HTM_TD_Begin ("class=\"CM\"");
|
||||
Grp_WriteMaxStds (StrMaxStudents,Gbl.Crs.Grps.MaxStudents);
|
||||
HTM_INPUT_TEXT ("MaxStudents",Cns_MAX_DECIMAL_DIGITS_UINT,StrMaxStudents,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"3\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
|
|
@ -761,19 +761,19 @@ void Hie_WriteStatusCellEditable (Usr_Can_t ICanEdit,Hie_Status_t Status,
|
|||
ParCod_PutPar (ParCod_OthHie,HieCod);
|
||||
|
||||
/* Selector */
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Status\" class=\"INPUT_STATUS\"");
|
||||
|
||||
StatusUnsigned = (unsigned) Hie_GetStatusBitsFromStatusTxt (Hie_STATUS_PENDING);
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&StatusUnsigned,
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt[Hie_STATUS_PENDING]);
|
||||
|
||||
StatusUnsigned = (unsigned) Hie_GetStatusBitsFromStatusTxt (Hie_STATUS_ACTIVE);
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&StatusUnsigned,
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt[Hie_STATUS_ACTIVE]);
|
||||
|
||||
HTM_SELECT_End ();
|
||||
|
|
|
@ -134,7 +134,7 @@ void HieCfg_Name (Frm_PutForm_t PutForm,Hie_Level_t Level,
|
|||
HTM_INPUT_TEXT (Nam_Params[ShrtOrFull],
|
||||
Nam_MaxChars[ShrtOrFull],
|
||||
Name[ShrtOrFull],
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"id=\"%s\""
|
||||
" class=\"%s INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
|
|
@ -531,13 +531,13 @@ static void Hld_ListHolidaysForEdition (const struct Hld_Holidays *Holidays,
|
|||
HTM_TD_Begin ("class=\"CM\"");
|
||||
Frm_BeginForm (ActChgHldPlc);
|
||||
ParCod_PutPar (ParCod_Hld,Hld->HldCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"PlcCod\" class=\"PLC_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
Hld->PlcCod <= 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_All_places);
|
||||
for (NumPlc = 0;
|
||||
NumPlc < Places->Num;
|
||||
|
@ -547,7 +547,7 @@ static void Hld_ListHolidaysForEdition (const struct Hld_Holidays *Holidays,
|
|||
HTM_OPTION (HTM_Type_LONG,&Plc->PlcCod,
|
||||
Plc->PlcCod == Hld->PlcCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Plc->ShrtName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -558,7 +558,7 @@ static void Hld_ListHolidaysForEdition (const struct Hld_Holidays *Holidays,
|
|||
HTM_TD_Begin ("class=\"CM\"");
|
||||
Frm_BeginForm (ActChgHldTyp);
|
||||
ParCod_PutPar (ParCod_Hld,Hld->HldCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"HldTyp\" class=\"INPUT_%s\""
|
||||
" style=\"width:62px;\"", // TODO: Use a CSS class
|
||||
The_GetSuffix ());
|
||||
|
@ -570,7 +570,7 @@ static void Hld_ListHolidaysForEdition (const struct Hld_Holidays *Holidays,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&HolidayTypeUnsigned,
|
||||
HolidayType == Hld->HldTyp ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_HOLIDAY_TYPES[HolidayType]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -608,7 +608,7 @@ static void Hld_ListHolidaysForEdition (const struct Hld_Holidays *Holidays,
|
|||
Frm_BeginForm (ActRenHld);
|
||||
ParCod_PutPar (ParCod_Hld,Hld->HldCod);
|
||||
HTM_INPUT_TEXT ("Name",Hld_MAX_CHARS_HOLIDAY_NAME,Hld->Name,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"20\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -906,13 +906,13 @@ static void Hld_PutFormToCreateHoliday (const struct Plc_Places *Places)
|
|||
|
||||
/***** Holiday place *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"PlcCod\" class=\"PLC_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
Hld_EditingHld->PlcCod <= 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_All_places);
|
||||
for (NumPlc = 0;
|
||||
NumPlc < Places->Num;
|
||||
|
@ -922,7 +922,7 @@ static void Hld_PutFormToCreateHoliday (const struct Plc_Places *Places)
|
|||
HTM_OPTION (HTM_Type_LONG,&Plc->PlcCod,
|
||||
Plc->PlcCod == Hld_EditingHld->PlcCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Plc->ShrtName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -930,7 +930,7 @@ static void Hld_PutFormToCreateHoliday (const struct Plc_Places *Places)
|
|||
|
||||
/***** Holiday type *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"HldTyp\" class=\"INPUT_%s\""
|
||||
" style=\"width:62px;\"", // TODO: Use a CSS class
|
||||
The_GetSuffix ());
|
||||
|
@ -942,7 +942,7 @@ static void Hld_PutFormToCreateHoliday (const struct Plc_Places *Places)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&HolidayTypeUnsigned,
|
||||
HolidayType == Hld_EditingHld->HldTyp ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_HOLIDAY_TYPES[HolidayType]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -971,7 +971,7 @@ static void Hld_PutFormToCreateHoliday (const struct Plc_Places *Places)
|
|||
/***** Holiday name *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_INPUT_TEXT ("Name",Hld_MAX_CHARS_HOLIDAY_NAME,Hld_EditingHld->Name,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"20\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -473,8 +473,9 @@ static void Ind_ShowNumCoursesWithIndicators (const struct Ind_Indicators *Indic
|
|||
if (PutForm == Frm_PUT_FORM)
|
||||
{
|
||||
HTM_TD_Begin ("class=\"%s\"",Class);
|
||||
HTM_INPUT_CHECKBOX ("Indicators",Indicators->IndicatorsSelected[Ind],
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("Indicators",
|
||||
Indicators->IndicatorsSelected[Ind],
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"id=\"Indicators%u\" value=\"%u\"",
|
||||
Ind,Ind);
|
||||
HTM_TD_End ();
|
||||
|
|
29
swad_info.c
29
swad_info.c
|
@ -133,7 +133,7 @@ static Act_Action_t Inf_ActionsInfo[Inf_NUM_SOURCES][Inf_NUM_TYPES] =
|
|||
|
||||
static void Inf_PutIconToViewInfo (void *Type);
|
||||
static void Inf_PutCheckboxForceStdsToReadInfo (bool MustBeRead,
|
||||
Cns_Disabled_t Disabled);
|
||||
HTM_Disabled_t Disabled);
|
||||
static void Inf_PutCheckboxConfirmIHaveReadInfo (void);
|
||||
static bool Inf_GetMustBeReadFromForm (void);
|
||||
static bool Inf_GetIfIHaveReadFromForm (void);
|
||||
|
@ -235,8 +235,8 @@ void Inf_ShowInfo (void)
|
|||
// Checkbox to force students to read this couse info
|
||||
Mnu_ContextMenuBegin ();
|
||||
Inf_PutCheckboxForceStdsToReadInfo (FromDB.MustBeRead,
|
||||
(Gbl.Usrs.Me.Role.Logged == Rol_NET) ? Cns_DISABLED :
|
||||
Cns_ENABLED); // Non-editing teachers can not change the status of checkbox);
|
||||
(Gbl.Usrs.Me.Role.Logged == Rol_NET) ? HTM_DISABLED :
|
||||
HTM_ENABLED); // Non-editing teachers can not change the status of checkbox);
|
||||
Mnu_ContextMenuEnd ();
|
||||
}
|
||||
break;
|
||||
|
@ -348,7 +348,7 @@ void Inf_PutIconToEditInfo (void *Type)
|
|||
/*****************************************************************************/
|
||||
|
||||
static void Inf_PutCheckboxForceStdsToReadInfo (bool MustBeRead,
|
||||
Cns_Disabled_t Disabled)
|
||||
HTM_Disabled_t Disabled)
|
||||
{
|
||||
extern Syl_WhichSyllabus_t Syl_WhichSyllabus[Syl_NUM_WHICH_SYLLABUS];
|
||||
extern const char *Txt_Force_students_to_read_this_information;
|
||||
|
@ -823,6 +823,7 @@ void Inf_FormsToSelSendInfo (void)
|
|||
Inf_Src_t InfoSrc;
|
||||
bool InfoAvailable[Inf_NUM_SOURCES];
|
||||
Cns_Checked_t Checked;
|
||||
HTM_Disabled_t Disabled;
|
||||
static Act_Action_t Inf_ActionsSelecInfoSrc[Inf_NUM_TYPES] =
|
||||
{
|
||||
[Inf_INFORMATION ] = ActSelInfSrcCrsInf,
|
||||
|
@ -904,17 +905,17 @@ void Inf_FormsToSelSendInfo (void)
|
|||
Frm_BeginForm (Inf_ActionsSelecInfoSrc[Gbl.Crs.Info.Type]);
|
||||
Syl_PutParWhichSyllabus (&Syllabus.WhichSyllabus);
|
||||
Checked = (InfoSrc == FromDB.Src) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("InfoSrc",Checked,
|
||||
Cns_UNCHECKED;
|
||||
Disabled = (InfoSrc == Inf_NONE ||
|
||||
InfoAvailable[InfoSrc]) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_RADIO ("InfoSrc",Checked,Disabled,
|
||||
(InfoSrc != FromDB.Src &&
|
||||
(InfoSrc == Inf_NONE ||
|
||||
InfoAvailable[InfoSrc])) ? HTM_SUBMIT_ON_CLICK :
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"id=\"InfoSrc%u\" value=\"%u\"%s",
|
||||
(unsigned) InfoSrc,(unsigned) InfoSrc,
|
||||
(InfoSrc == Inf_NONE ||
|
||||
InfoAvailable[InfoSrc]) ? "" : // Info available for this source
|
||||
" disabled=\"disabled\"");
|
||||
"id=\"InfoSrc%u\" value=\"%u\"",
|
||||
(unsigned) InfoSrc,(unsigned) InfoSrc);
|
||||
Frm_EndForm ();
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -1567,7 +1568,8 @@ void Inf_EditPlainTxtInfo (void)
|
|||
/***** Edition area *****/
|
||||
HTM_DIV_Begin ("class=\"CM\"");
|
||||
Lay_HelpPlainEditor ();
|
||||
HTM_TEXTAREA_Begin ("name=\"Txt\" cols=\"80\" rows=\"20\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"Txt\" cols=\"80\" rows=\"20\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_Txt (TxtHTML);
|
||||
|
@ -1650,7 +1652,8 @@ void Inf_EditRichTxtInfo (void)
|
|||
/***** Edition area *****/
|
||||
HTM_DIV_Begin ("class=\"CM\"");
|
||||
Lay_HelpRichEditor ();
|
||||
HTM_TEXTAREA_Begin ("name=\"Txt\" cols=\"80\" rows=\"20\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"Txt\" cols=\"80\" rows=\"20\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_Txt (TxtHTML);
|
||||
|
|
|
@ -808,57 +808,56 @@ void Ins_WriteSelectorOfInstitution (void)
|
|||
unsigned NumInss;
|
||||
unsigned NumIns;
|
||||
long InsCod;
|
||||
HTM_Disabled_t Disabled = (Gbl.Hierarchy.Node[Hie_CTY].HieCod > 0) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_SubmitOnChange_t SubmitOnChange = (Gbl.Hierarchy.Node[Hie_CTY].HieCod > 0) ? HTM_SUBMIT_ON_CHANGE :
|
||||
HTM_DONT_SUBMIT_ON_CHANGE;
|
||||
|
||||
/***** Begin form *****/
|
||||
Frm_BeginFormGoTo (ActSeeCtr);
|
||||
|
||||
/***** Begin selector *****/
|
||||
if (Gbl.Hierarchy.Node[Hie_CTY].HieCod > 0)
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"ins\" name=\"ins\" class=\"HIE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
else
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"ins\" name=\"ins\" class=\"HIE_SEL INPUT_%s\""
|
||||
" disabled=\"disabled\"",
|
||||
The_GetSuffix ());
|
||||
HTM_SELECT_Begin (Disabled,SubmitOnChange,NULL,
|
||||
"id=\"ins\" name=\"ins\" class=\"HIE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Gbl.Hierarchy.Node[Hie_INS].HieCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
"[%s]",Txt_HIERARCHY_SINGUL_Abc[Hie_INS]);
|
||||
/***** Initial disabled option *****/
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Gbl.Hierarchy.Node[Hie_INS].HieCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_DISABLED,
|
||||
"[%s]",Txt_HIERARCHY_SINGUL_Abc[Hie_INS]);
|
||||
|
||||
if (Gbl.Hierarchy.Node[Hie_CTY].HieCod > 0)
|
||||
{
|
||||
/***** Get institutions of current country *****/
|
||||
NumInss = Ins_DB_GetInssInCtyOrderedByShrtName (&mysql_res,Gbl.Hierarchy.Node[Hie_CTY].HieCod);
|
||||
|
||||
/***** List institutions *****/
|
||||
for (NumIns = 0;
|
||||
NumIns < NumInss;
|
||||
NumIns++)
|
||||
if (Gbl.Hierarchy.Node[Hie_CTY].HieCod > 0)
|
||||
{
|
||||
/* Get next institution */
|
||||
row = mysql_fetch_row (mysql_res);
|
||||
/***** Get institutions of current country *****/
|
||||
NumInss = Ins_DB_GetInssInCtyOrderedByShrtName (&mysql_res,Gbl.Hierarchy.Node[Hie_CTY].HieCod);
|
||||
|
||||
/* Get institution code (row[0]) */
|
||||
if ((InsCod = Str_ConvertStrCodToLongCod (row[0])) <= 0)
|
||||
Err_WrongInstitExit ();
|
||||
/***** List institutions *****/
|
||||
for (NumIns = 0;
|
||||
NumIns < NumInss;
|
||||
NumIns++)
|
||||
{
|
||||
/* Get next institution */
|
||||
row = mysql_fetch_row (mysql_res);
|
||||
|
||||
/* Write option */
|
||||
HTM_OPTION (HTM_Type_LONG,&InsCod,
|
||||
Gbl.Hierarchy.Node[Hie_INS].HieCod > 0 &&
|
||||
InsCod == Gbl.Hierarchy.Node[Hie_INS].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
"%s",row[1]);
|
||||
/* Get institution code (row[0]) */
|
||||
if ((InsCod = Str_ConvertStrCodToLongCod (row[0])) <= 0)
|
||||
Err_WrongInstitExit ();
|
||||
|
||||
/* Write option */
|
||||
HTM_OPTION (HTM_Type_LONG,&InsCod,
|
||||
Gbl.Hierarchy.Node[Hie_INS].HieCod > 0 &&
|
||||
InsCod == Gbl.Hierarchy.Node[Hie_INS].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_ENABLED,
|
||||
"%s",row[1]);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
}
|
||||
|
||||
/***** End selector *****/
|
||||
HTM_SELECT_End ();
|
||||
|
||||
|
@ -993,7 +992,7 @@ static void Ins_ListInstitutionsForEdition (void)
|
|||
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat,
|
||||
Usr_DONT_GET_PREFS,
|
||||
Usr_DONT_GET_ROLE_IN_CRS);
|
||||
Usr_WriteAuthor (&UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (&UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Institution status */
|
||||
|
@ -1384,7 +1383,7 @@ static void Ins_PutFormToCreateInstitution (void)
|
|||
|
||||
/***** Institution requester *****/
|
||||
HTM_TD_Begin ("class=\"LT DAT_%s INPUT_REQUESTER\"",The_GetSuffix ());
|
||||
Usr_WriteAuthor (&Gbl.Usrs.Me.UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (&Gbl.Usrs.Me.UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Institution status *****/
|
||||
|
|
|
@ -343,7 +343,7 @@ static void InsCfg_Country (Vie_ViewType_t ViewType,Frm_PutForm_t PutForm)
|
|||
case Frm_PUT_FORM:
|
||||
/* Put form to select country */
|
||||
Frm_BeginForm (ActChgInsCtyCfg);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"OthCtyCod\" name=\"OthCtyCod\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -355,7 +355,7 @@ static void InsCfg_Country (Vie_ViewType_t ViewType,Frm_PutForm_t PutForm)
|
|||
HTM_OPTION (HTM_Type_LONG,&Cty->HieCod,
|
||||
Cty->HieCod == Gbl.Hierarchy.Node[Hie_CTY].HieCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Cty->FullName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
|
|
@ -126,7 +126,7 @@ void Lan_PutSelectorToSelectLanguage (void)
|
|||
unsigned LanUnsigned;
|
||||
|
||||
Frm_BeginForm (ActReqChgLan);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Lan\" class=\"INPUT_%s\""
|
||||
" style=\"width:112px; margin:0;\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -138,7 +138,7 @@ void Lan_PutSelectorToSelectLanguage (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&LanUnsigned,
|
||||
Lan == Gbl.Prefs.Language ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_STR_LANG_NAME[Lan]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
|
|
@ -1267,10 +1267,9 @@ void Lay_PutContextualCheckbox (Act_Action_t NextAction,
|
|||
void (*FuncPars) (void *Args),void *Args,
|
||||
const char *CheckboxName,
|
||||
Cns_Checked_t Checked,
|
||||
Cns_Disabled_t Disabled,
|
||||
HTM_Disabled_t Disabled,
|
||||
const char *Title,const char *Text)
|
||||
{
|
||||
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED];
|
||||
static const char *Class[Cns_NUM_CHECKED] =
|
||||
{
|
||||
[Cns_UNCHECKED] = "CHECKBOX_UNCHECKED",
|
||||
|
@ -1295,9 +1294,9 @@ void Lay_PutContextualCheckbox (Act_Action_t NextAction,
|
|||
HTM_LABEL_Begin (NULL);
|
||||
|
||||
/****** Checkbox *****/
|
||||
HTM_INPUT_CHECKBOX (CheckboxName,Checked,HTM_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"%s",
|
||||
HTM_DisabledTxt[Disabled]);
|
||||
HTM_INPUT_CHECKBOX (CheckboxName,
|
||||
Checked,Disabled,HTM_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
|
||||
/***** Text *****/
|
||||
if (Text)
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
/*****************************************************************************/
|
||||
|
||||
#include "swad_action.h"
|
||||
#include "swad_HTML.h"
|
||||
#include "swad_icon.h"
|
||||
#include "swad_view.h"
|
||||
|
||||
|
@ -82,7 +83,7 @@ void Lay_PutContextualCheckbox (Act_Action_t NextAction,
|
|||
void (*FuncPars) (void *Args),void *Args,
|
||||
const char *CheckboxName,
|
||||
Cns_Checked_t Checked,
|
||||
Cns_Disabled_t Disabled,
|
||||
HTM_Disabled_t Disabled,
|
||||
const char *Title,const char *Text);
|
||||
|
||||
void Lay_WriteAboutZone (void);
|
||||
|
|
14
swad_mail.c
14
swad_mail.c
|
@ -474,7 +474,7 @@ static void Mai_ListMailDomainsForEdition (const struct Mai_Mails *Mails)
|
|||
Frm_BeginForm (ActRenMaiSho);
|
||||
ParCod_PutPar (ParCod_Mai,Mai->MaiCod);
|
||||
HTM_INPUT_TEXT ("Domain",Cns_MAX_CHARS_EMAIL_ADDRESS,Mai->Domain,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"15\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -485,7 +485,7 @@ static void Mai_ListMailDomainsForEdition (const struct Mai_Mails *Mails)
|
|||
Frm_BeginForm (ActRenMaiFul);
|
||||
ParCod_PutPar (ParCod_Mai,Mai->MaiCod);
|
||||
HTM_INPUT_TEXT ("Info",Mai_MAX_CHARS_MAIL_INFO,Mai->Info,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"40\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -686,18 +686,16 @@ static void Mai_PutFormToCreateMailDomain (void)
|
|||
/* Mail domain */
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("Domain",Cns_MAX_CHARS_EMAIL_ADDRESS,Mai_EditingMai->Domain,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"15\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"15\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Mail domain info */
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("Info",Mai_MAX_CHARS_MAIL_INFO,Mai_EditingMai->Info,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"40\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"40\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
|
|
@ -110,7 +110,7 @@ void Mrk_GetAndWriteNumRowsHeaderAndFooter (void)
|
|||
HTM_TxtColon (Txt_TABLE_Header);
|
||||
snprintf (StrHeadOrFoot,sizeof (StrHeadOrFoot),"%u",Marks.Header);
|
||||
HTM_INPUT_TEXT (Mrk_HeadOrFootStr[Brw_HEADER],Cns_MAX_DECIMAL_DIGITS_UINT,StrHeadOrFoot,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"1\" class=\"LST_EDIT_ROWS LST_EDIT_%s %s\"",
|
||||
The_GetSuffix (),The_GetColorRows ());
|
||||
HTM_LABEL_End ();
|
||||
|
@ -129,7 +129,7 @@ void Mrk_GetAndWriteNumRowsHeaderAndFooter (void)
|
|||
HTM_TxtColon (Txt_TABLE_Footer);
|
||||
snprintf (StrHeadOrFoot,sizeof (StrHeadOrFoot),"%u",Marks.Footer);
|
||||
HTM_INPUT_TEXT (Mrk_HeadOrFootStr[Brw_FOOTER],Cns_MAX_DECIMAL_DIGITS_UINT,StrHeadOrFoot,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"1\" class=\"LST_EDIT_ROWS LST_EDIT_%s %s\"",
|
||||
The_GetSuffix (),The_GetColorRows ());
|
||||
HTM_LABEL_End ();
|
||||
|
|
|
@ -1210,7 +1210,7 @@ static void Mch_PutFormMatch (struct Mch_Match *Match)
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_INPUT_TEXT ("Title",Mch_MAX_CHARS_TITLE,Match->Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1268,7 +1268,7 @@ static void Mch_ShowLstGrpsToEditMatch (long MchCod)
|
|||
"MchCod",
|
||||
MchCod) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"WholeCrs\" value=\"Y\""
|
||||
" onclick=\"uncheckChildren(this,'GrpCods')\"");
|
||||
|
|
|
@ -562,7 +562,7 @@ static void MchRes_ListGamesToSelect (struct Gam_Games *Games)
|
|||
The_GetSuffix (),The_GetColorRows ());
|
||||
HTM_INPUT_CHECKBOX (Par_CodeStr[ParCod_Gam],
|
||||
Games->Lst[NumGame].Checked,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Gam%u\" value=\"%ld\"",
|
||||
NumGame,Games->Lst[NumGame].GamCod);
|
||||
HTM_TD_End ();
|
||||
|
|
|
@ -489,7 +489,7 @@ void Med_PutMediaUploader (int NumMedia,const char *ClassInput)
|
|||
|
||||
/* Media title */
|
||||
HTM_INPUT_TEXT (ParUpload.Title,Med_MAX_CHARS_TITLE,"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"%s_tit\" class=\"%s\"" // <id>_tit
|
||||
" placeholder=\"%s\""
|
||||
" disabled=\"disabled\" style=\"display:none;\"",
|
||||
|
|
|
@ -546,7 +546,8 @@ static void Msg_WriteFormUsrsIDsOrNicksOtherRecipients (void)
|
|||
/***** Textarea with users' @nicknames, emails or IDs *****/
|
||||
HTM_TR_Begin (NULL);
|
||||
HTM_TD_Begin ("colspan=\"%u\" class=\"LM\"",ColSpan);
|
||||
HTM_TEXTAREA_Begin ("id=\"OtherRecipients\" name=\"OtherRecipients\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"OtherRecipients\" name=\"OtherRecipients\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\" rows=\"2\""
|
||||
" placeholder=\"%s\"",
|
||||
The_GetSuffix (),
|
||||
|
@ -592,7 +593,8 @@ static void Msg_WriteFormSubjectAndContentMsgToUsrs (struct Msg_Messages *Messag
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"MsgSubject\" name=\"Subject\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"MsgSubject\" name=\"Subject\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\" rows=\"2\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
|
@ -632,7 +634,8 @@ static void Msg_WriteFormSubjectAndContentMsgToUsrs (struct Msg_Messages *Messag
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"MsgContent\" name=\"Content\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"MsgContent\" name=\"Content\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" rows=\"20\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -668,7 +671,8 @@ static void Msg_WriteFormSubjectAndContentMsgToUsrs (struct Msg_Messages *Messag
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"MsgContent\" name=\"Content\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"MsgContent\" name=\"Content\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" rows=\"20\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1811,7 +1815,7 @@ static void Msg_ShowFormSelectCourseSentOrRecMsgs (const struct Msg_Messages *Me
|
|||
/***** Course selection *****/
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtF ("%s ",*TxtSelector[Messages->TypeOfMessages]);
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"FilterCrsCod\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
|
@ -1819,7 +1823,7 @@ static void Msg_ShowFormSelectCourseSentOrRecMsgs (const struct Msg_Messages *Me
|
|||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
Messages->FilterCrsCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_any_course);
|
||||
|
||||
/* Write an option for each origin course */
|
||||
|
@ -1834,7 +1838,7 @@ static void Msg_ShowFormSelectCourseSentOrRecMsgs (const struct Msg_Messages *Me
|
|||
HTM_OPTION (HTM_Type_LONG,&CrsCod,
|
||||
CrsCod == Messages->FilterCrsCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",row[1]); // Course short name
|
||||
}
|
||||
|
||||
|
@ -1907,7 +1911,8 @@ static void Msg_ShowFormToShowOnlyUnreadMessages (const struct Msg_Messages *Mes
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
Checked = Messages->ShowOnlyUnreadMsgs ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("OnlyUnreadMsgs",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("OnlyUnreadMsgs",
|
||||
Checked,HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_Txt (Txt_only_unread_messages);
|
||||
HTM_LABEL_End ();
|
||||
|
@ -2107,7 +2112,7 @@ static void Msg_ShowASentOrReceivedMessage (struct Msg_Messages *Messages,
|
|||
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat,
|
||||
Usr_DONT_GET_PREFS,
|
||||
Usr_DONT_GET_ROLE_IN_CRS);
|
||||
Usr_WriteAuthor (&UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (&UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Subject *****/
|
||||
|
|
|
@ -96,7 +96,7 @@ void Nam_NewShortAndFullNames (const char *Names[Nam_NUM_SHRT_FULL_NAMES])
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT (Nam_Params[ShrtOrFull],Nam_MaxChars[ShrtOrFull],
|
||||
Names[ShrtOrFull],
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"class=\"%s INPUT_%s\" required=\"required\"",
|
||||
Nam_Classes[ShrtOrFull],The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
@ -125,7 +125,7 @@ void Nam_ExistingShortAndFullNames (Act_Action_t ActionRename[Nam_NUM_SHRT_FULL_
|
|||
ParCod_PutPar (ParCod,Cod);
|
||||
HTM_INPUT_TEXT (Nam_Params[ShrtOrFull],Nam_MaxChars[ShrtOrFull],
|
||||
Names[ShrtOrFull],
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"%s INPUT_%s\" required=\"required\"",
|
||||
Nam_Classes[ShrtOrFull],The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
|
|
@ -148,7 +148,8 @@ void Nck_PutFormToGetNewNickname (const char *NewNickWithoutArr)
|
|||
else
|
||||
NewNickWithArr[0] = '\0';
|
||||
HTM_INPUT_TEXT ("NewNick",1 + Nck_MAX_CHARS_NICK_WITHOUT_ARROBA,
|
||||
NewNickWithArr,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
NewNickWithArr,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"NewNick\" size=\"16\" placeholder=\"%s\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -345,7 +346,8 @@ static void Nck_ShowFormChangeUsrNickname (Usr_MeOrOther_t MeOrOther,
|
|||
snprintf (NickWithArr,sizeof (NickWithArr),"@%s",
|
||||
UsrDat[MeOrOther]->Nickname);
|
||||
HTM_INPUT_TEXT ("NewNick",1 + Nck_MAX_CHARS_NICK_WITHOUT_ARROBA,
|
||||
NickWithArr,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
NickWithArr,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"NewNick\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" size=\"16\"",
|
||||
|
|
|
@ -114,7 +114,8 @@ void Not_ShowFormNotice (void)
|
|||
Hlp_COMMUNICATION_Notices,Box_NOT_CLOSABLE);
|
||||
|
||||
/***** Message body *****/
|
||||
HTM_TEXTAREA_Begin ("name=\"Content\" cols=\"30\" rows=\"10\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"Content\" cols=\"30\" rows=\"10\""
|
||||
" class=\"INPUT_%s\""
|
||||
" autofocus=\"autofocus\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -631,7 +631,7 @@ static void Ntf_WriteNotif (Ntf_NotifyEvent_t NotifyEvent,
|
|||
HTM_TD_Begin ("class=\"LT %s_%s %s_%s\"",
|
||||
Class.Author,The_GetSuffix (),
|
||||
Class.Bg,The_GetSuffix ());
|
||||
Usr_WriteAuthor (UsrDat,Cns_ENABLED);
|
||||
Usr_WriteAuthor (UsrDat,For_ENABLED);
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Write location */
|
||||
|
@ -1664,7 +1664,8 @@ void Ntf_PutFormChangeNotifSentByEMail (void)
|
|||
(1 << NotifyEvent)) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX (Ntf_ParNotifMeAboutNotifyEvents[NotifyEvent],
|
||||
Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -1673,7 +1674,8 @@ void Ntf_PutFormChangeNotifSentByEMail (void)
|
|||
(1 << NotifyEvent)) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX (Ntf_ParEmailMeAboutNotifyEvents[NotifyEvent],
|
||||
Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_TD_End ();
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
/********************************** Headers **********************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#include "swad_user.h"
|
||||
#include "swad_string.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/****************************** Public constants *****************************/
|
||||
|
|
|
@ -146,7 +146,7 @@ void Pag_WriteLinksToPagesCentered (Pag_WhatPaginate_t WhatPaginate,
|
|||
{
|
||||
HTM_DIV_Begin ("class=\"CM\"");
|
||||
Pag_WriteLinksToPages (WhatPaginate,Pagination,Context,Cod,
|
||||
Cns_ENABLED,NULL,"PAG_TXT",false); // !!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
For_ENABLED,NULL,"PAG_TXT",false); // !!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
HTM_DIV_End ();
|
||||
}
|
||||
}
|
||||
|
@ -158,7 +158,7 @@ void Pag_WriteLinksToPagesCentered (Pag_WhatPaginate_t WhatPaginate,
|
|||
void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
|
||||
struct Pag_Pagination *Pagination,
|
||||
const void *Context,long Cod,
|
||||
Cns_Disabled_t FirstMsgDisabledOrEnabled,
|
||||
For_Disabled_t FirstMsgDisabled,
|
||||
const char *Subject,const char *ClassTxt,
|
||||
bool LinkToPagCurrent)
|
||||
{
|
||||
|
@ -281,12 +281,12 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
|
|||
}
|
||||
else
|
||||
HTM_SPAN_Begin ("class=\"%s_%s\"",ClassTxt,The_GetSuffix ());
|
||||
switch (FirstMsgDisabledOrEnabled)
|
||||
switch (FirstMsgDisabled)
|
||||
{
|
||||
case Cns_DISABLED:
|
||||
case For_DISABLED:
|
||||
HTM_TxtF ("[%s]",Txt_FORUM_Post_banned);
|
||||
break;
|
||||
case Cns_ENABLED:
|
||||
case For_ENABLED:
|
||||
HTM_Txt (Subject);
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -84,7 +84,7 @@ void Pag_WriteLinksToPagesCentered (Pag_WhatPaginate_t WhatPaginate,
|
|||
void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
|
||||
struct Pag_Pagination *Pagination,
|
||||
const void *Context,long Cod,
|
||||
Cns_Disabled_t FirstMsgEnabled,
|
||||
For_Disabled_t FirstMsgDisabled,
|
||||
const char *Subject,const char *ClassTxt,
|
||||
bool LinkToPagCurrent);
|
||||
void Pag_PutParPagNum (Pag_WhatPaginate_t WhatPaginate,unsigned NumPage);
|
||||
|
|
|
@ -276,7 +276,7 @@ void Pwd_ShowFormSendNewPwd (void)
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtColonNBSP (Txt_nick_email_or_ID);
|
||||
HTM_INPUT_TEXT ("UsrId",Cns_MAX_CHARS_EMAIL_ADDRESS,Gbl.Usrs.Me.UsrIdLogin,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_LABEL_End ();
|
||||
|
@ -788,7 +788,8 @@ void Pwd_AskForConfirmationOnDangerousAction (void)
|
|||
|
||||
/***** Checkbox *****/
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_INPUT_CHECKBOX ("Consent",Cns_UNCHECKED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("Consent",Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_Txt (Txt_I_understand_that_this_action_can_not_be_undone);
|
||||
HTM_LABEL_End ();
|
||||
|
|
22
swad_photo.c
22
swad_photo.c
|
@ -1793,7 +1793,7 @@ static void Pho_PutSelectorForTypeOfAvg (const struct Pho_DegPhotos *DegPhotos)
|
|||
Pho_PutParPhotoSize (DegPhotos->HowComputePhotoSize);
|
||||
Pho_PutParOrderDegrees (DegPhotos->HowOrderDegrees);
|
||||
Set_PutParsPrefsAboutUsrList ();
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"AvgType\" name=\"AvgType\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1805,7 +1805,7 @@ static void Pho_PutSelectorForTypeOfAvg (const struct Pho_DegPhotos *DegPhotos)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&TypeOfAvgUnsigned,
|
||||
TypeOfAvg == DegPhotos->TypeOfAverage ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_AVERAGE_PHOTO_TYPES[TypeOfAvg]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -1860,7 +1860,7 @@ static void Pho_PutSelectorForHowComputePhotoSize (const struct Pho_DegPhotos *D
|
|||
Pho_PutParTypeOfAvg (DegPhotos->TypeOfAverage);
|
||||
Pho_PutParOrderDegrees (DegPhotos->HowOrderDegrees);
|
||||
Set_PutParsPrefsAboutUsrList ();
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"PhotoSize\" name=\"PhotoSize\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1872,7 +1872,7 @@ static void Pho_PutSelectorForHowComputePhotoSize (const struct Pho_DegPhotos *D
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&PhoSiUnsigned,
|
||||
PhoSi == DegPhotos->HowComputePhotoSize ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_STAT_DEGREE_PHOTO_SIZE[PhoSi]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -1927,7 +1927,7 @@ static void Pho_PutSelectorForHowOrderDegrees (const struct Pho_DegPhotos *DegPh
|
|||
Pho_PutParTypeOfAvg (DegPhotos->TypeOfAverage);
|
||||
Pho_PutParPhotoSize (DegPhotos->HowComputePhotoSize);
|
||||
Set_PutParsPrefsAboutUsrList ();
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"Order\" name=\"Order\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1939,7 +1939,7 @@ static void Pho_PutSelectorForHowOrderDegrees (const struct Pho_DegPhotos *DegPh
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&OrderUnsigned,
|
||||
Order == DegPhotos->HowOrderDegrees ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_STAT_DEGREE_PHOTO_ORDER[Order]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -2005,7 +2005,7 @@ static void Pho_PutLinkToCalculateDegreeStats (const struct Pho_DegPhotos *DegPh
|
|||
long EstimatedTimeToComputeAvgPhotoInMicroseconds;
|
||||
char StrEstimatedTimeToComputeAvgPhoto[Dat_MAX_BYTES_TIME + 1];
|
||||
HTM_OptionSelected_t Selected;
|
||||
HTM_OptionDisabled_t Disabled;
|
||||
HTM_Disabled_t Disabled;
|
||||
|
||||
if ((Deg.HieCod = Pho_GetDegWithAvgPhotoLeastRecentlyUpdated ()) > 0)
|
||||
{
|
||||
|
@ -2033,7 +2033,7 @@ static void Pho_PutLinkToCalculateDegreeStats (const struct Pho_DegPhotos *DegPh
|
|||
HTM_BUTTON_End ();
|
||||
|
||||
/* Selector with all degrees with students */
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"OthDegCod\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -2053,12 +2053,12 @@ static void Pho_PutLinkToCalculateDegreeStats (const struct Pho_DegPhotos *DegPh
|
|||
Selected = (Degs.Lst[NumDeg].HieCod == Deg.HieCod) ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED;
|
||||
if (Selected == HTM_OPTION_SELECTED)
|
||||
Disabled = HTM_OPTION_ENABLED;
|
||||
Disabled = HTM_ENABLED;
|
||||
else
|
||||
// Too recently computed ?
|
||||
Disabled = Pho_GetTimeAvgPhotoWasComputed (Degs.Lst[NumDeg].HieCod) >=
|
||||
Dat_GetStartExecutionTimeUTC () - Cfg_MIN_TIME_TO_RECOMPUTE_AVG_PHOTO ? HTM_OPTION_DISABLED :
|
||||
HTM_OPTION_ENABLED;
|
||||
Dat_GetStartExecutionTimeUTC () - Cfg_MIN_TIME_TO_RECOMPUTE_AVG_PHOTO ? HTM_DISABLED :
|
||||
HTM_ENABLED;
|
||||
HTM_OPTION (HTM_Type_LONG,&Degs.Lst[NumDeg].HieCod,
|
||||
Selected,
|
||||
Disabled,
|
||||
|
|
|
@ -398,7 +398,7 @@ static void Plg_ListPluginsForEdition (struct Plg_Plugins *Plugins)
|
|||
Frm_BeginForm (ActRenPlg);
|
||||
ParCod_PutPar (ParCod_Plg,Plg->PlgCod);
|
||||
HTM_INPUT_TEXT ("Name",Plg_MAX_CHARS_PLUGIN_NAME,Plg->Name,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -409,7 +409,7 @@ static void Plg_ListPluginsForEdition (struct Plg_Plugins *Plugins)
|
|||
Frm_BeginForm (ActChgPlgDes);
|
||||
ParCod_PutPar (ParCod_Plg,Plg->PlgCod);
|
||||
HTM_INPUT_TEXT ("Description",Plg_MAX_CHARS_PLUGIN_DESCRIPTION,Plg->Description,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"16\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -420,7 +420,7 @@ static void Plg_ListPluginsForEdition (struct Plg_Plugins *Plugins)
|
|||
Frm_BeginForm (ActChgPlgLog);
|
||||
ParCod_PutPar (ParCod_Plg,Plg->PlgCod);
|
||||
HTM_INPUT_TEXT ("Logo",Plg_MAX_CHARS_PLUGIN_LOGO,Plg->Logo,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"4\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -431,7 +431,7 @@ static void Plg_ListPluginsForEdition (struct Plg_Plugins *Plugins)
|
|||
Frm_BeginForm (ActChgPlgAppKey);
|
||||
ParCod_PutPar (ParCod_Plg,Plg->PlgCod);
|
||||
HTM_INPUT_TEXT ("AppKey",Plg_MAX_CHARS_PLUGIN_APP_KEY,Plg->AppKey,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -451,7 +451,8 @@ static void Plg_ListPluginsForEdition (struct Plg_Plugins *Plugins)
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
Frm_BeginForm (ActChgPlgIP);
|
||||
ParCod_PutPar (ParCod_Plg,Plg->PlgCod);
|
||||
HTM_INPUT_TEXT ("IP",Cns_MAX_CHARS_IP,Plg->IP,HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_TEXT ("IP",Cns_MAX_CHARS_IP,Plg->IP,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -810,9 +811,8 @@ static void Plg_PutFormToCreatePlugin (void)
|
|||
/***** Plugin name *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("Name",Plg_MAX_CHARS_PLUGIN_NAME,Plg_EditingPlg->Name,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -820,27 +820,24 @@ static void Plg_PutFormToCreatePlugin (void)
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("Description",Plg_MAX_CHARS_PLUGIN_DESCRIPTION,
|
||||
Plg_EditingPlg->Description,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"16\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"16\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Plugin logo *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("Logo",Plg_MAX_CHARS_PLUGIN_LOGO,Plg_EditingPlg->Logo,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"4\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"4\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Plugin application key *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("AppKey",Plg_MAX_CHARS_PLUGIN_APP_KEY,Plg_EditingPlg->AppKey,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -855,9 +852,8 @@ static void Plg_PutFormToCreatePlugin (void)
|
|||
/***** Plugin IP address *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("IP",Cns_MAX_CHARS_IP,Plg_EditingPlg->IP,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
|
|
@ -166,6 +166,7 @@ static void Pri_PutFormVisibility (const char *TxtLabel,
|
|||
extern const char *Txt_PRIVACY_OPTIONS[Pri_NUM_OPTIONS_PRIVACY];
|
||||
Pri_Visibility_t Visibility;
|
||||
Cns_Checked_t Checked;
|
||||
HTM_Disabled_t Disabled;
|
||||
|
||||
HTM_TR_Begin (NULL);
|
||||
|
||||
|
@ -191,13 +192,13 @@ static void Pri_PutFormVisibility (const char *TxtLabel,
|
|||
The_GetSuffix ());
|
||||
HTM_LABEL_Begin (NULL);
|
||||
Checked = (Visibility == CurrentVisibilityInDB) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO (ParName,Checked,
|
||||
Cns_UNCHECKED;
|
||||
Disabled = (Action == ActUnk) ? HTM_DISABLED :
|
||||
HTM_ENABLED;
|
||||
HTM_INPUT_RADIO (ParName,Checked,Disabled,
|
||||
(Action == ActUnk) ? HTM_DONT_SUBMIT_ON_CLICK :
|
||||
HTM_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"%s",(unsigned) Visibility,
|
||||
(Action == ActUnk) ? " disabled=\"disabled\"" :
|
||||
"");
|
||||
"value=\"%u\"",(unsigned) Visibility);
|
||||
HTM_Txt (Txt_PRIVACY_OPTIONS[Visibility]);
|
||||
HTM_LABEL_End ();
|
||||
HTM_LI_End ();
|
||||
|
|
|
@ -206,9 +206,8 @@ void Prf_ReqUserProfile (void)
|
|||
snprintf (NickWithArr,sizeof (NickWithArr),"@%s",
|
||||
Gbl.Usrs.Me.UsrDat.Nickname);
|
||||
HTM_INPUT_TEXT ("usr",sizeof (NickWithArr) - 1,NickWithArr,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"16\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"16\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_LABEL_End ();
|
||||
|
||||
|
|
|
@ -1965,7 +1965,7 @@ static void Prg_ShowFormItem (const struct Prg_Item *Item,
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_TEXT ("Title",Prg_MAX_CHARS_PROGRAM_ITEM_TITLE,Item->Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"PRG_TITLE_DESCRIPTION_WIDTH INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -1987,7 +1987,8 @@ static void Prg_ShowFormItem (const struct Prg_Item *Item,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"10\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Txt\" name=\"Txt\" rows=\"10\""
|
||||
" class=\"PRG_TITLE_DESCRIPTION_WIDTH INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
if (Txt)
|
||||
|
|
|
@ -440,7 +440,7 @@ static void PrgRsc_WriteRowEditResource (unsigned NumRsc,unsigned NumResources,
|
|||
Frm_BeginFormAnchor (ActRenPrgRsc,PrgRsc_RESOURCE_SECTION_ID);
|
||||
ParCod_PutPar (ParCod_Rsc,Item->Resource.Hierarchy.RscCod);
|
||||
HTM_INPUT_TEXT ("Title",Rsc_MAX_CHARS_RESOURCE_TITLE,Item->Resource.Title,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"PRG_RSC_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -503,7 +503,7 @@ static void PrgRsc_WriteRowNewResource (unsigned NumResources,
|
|||
Frm_BeginFormAnchor (ActNewPrgRsc,PrgRsc_RESOURCE_SECTION_ID);
|
||||
ParCod_PutPar (ParCod_Itm,Item->Hierarchy.ItmCod);
|
||||
HTM_INPUT_TEXT ("Title",Rsc_MAX_CHARS_RESOURCE_TITLE,"",
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"placeholder=\"%s\""
|
||||
" class=\"PRG_RSC_INPUT INPUT_%s\"",
|
||||
Txt_New_resource,
|
||||
|
|
|
@ -1825,7 +1825,8 @@ static void Prj_ShowReviewStatus (struct Prj_Projects *Projects,
|
|||
case Frm_PUT_FORM:
|
||||
/* Show text form */
|
||||
HTM_BR ();
|
||||
HTM_TEXTAREA_Begin ("name=\"ReviewTxt\" rows=\"2\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"ReviewTxt\" rows=\"2\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" placeholder=\"%s…\""
|
||||
" onchange=\"unhideElement('prj_rev_%ld');return false;\"",
|
||||
|
@ -1865,7 +1866,7 @@ static void Prj_PutSelectorReviewStatus (struct Prj_Projects *Projects)
|
|||
/* Selector for review status */
|
||||
if (asprintf (&FuncOnChange,"unhideElement('prj_rev_%ld');",Projects->Prj.PrjCod) < 0)
|
||||
Err_NotEnoughMemoryExit ();
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,FuncOnChange,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,FuncOnChange,
|
||||
"id=\"ReviewStatus\" name=\"ReviewStatus\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -1878,7 +1879,7 @@ static void Prj_PutSelectorReviewStatus (struct Prj_Projects *Projects)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&ReviewStatusUnsigned,
|
||||
ReviewStatus == Projects->Prj.Review.Status ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_PROJECT_REVIEW_SINGUL[ReviewStatus]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -3795,7 +3796,7 @@ static void Prj_PutFormProject (struct Prj_Projects *Projects,
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_INPUT_TEXT ("Title",Prj_MAX_CHARS_TITLE,Projects->Prj.Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -3835,19 +3836,19 @@ static void Prj_PutFormProject (struct Prj_Projects *Projects,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Assigned\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"Y",
|
||||
Projects->Prj.Assigned == Prj_ASSIGNED ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Yes);
|
||||
HTM_OPTION (HTM_Type_STRING,"N",
|
||||
Projects->Prj.Assigned == Prj_NONASSIG ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_No);
|
||||
HTM_SELECT_End ();
|
||||
HTM_TD_End ();
|
||||
|
@ -3863,7 +3864,7 @@ static void Prj_PutFormProject (struct Prj_Projects *Projects,
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LM\"");
|
||||
HTM_INPUT_LONG ("NumStds",(long) 0,(long) UINT_MAX,(long) Projects->Prj.NumStds,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,false,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
@ -3878,7 +3879,7 @@ static void Prj_PutFormProject (struct Prj_Projects *Projects,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Proposal\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -3890,7 +3891,7 @@ static void Prj_PutFormProject (struct Prj_Projects *Projects,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&ProposalUnsigned,
|
||||
Projects->Prj.Proposal == Proposal ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_PROJECT_STATUS[Proposal]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -3968,7 +3969,8 @@ static void Prj_EditOneProjectTxtArea (const char *Id,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"%s\" name=\"%s\" rows=\"%u\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"%s\" name=\"%s\" rows=\"%u\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"%s",
|
||||
Id,Id,NumRows,
|
||||
The_GetSuffix (),RequiredTxt[Required]);
|
||||
|
|
|
@ -201,13 +201,13 @@ static void PrjCfg_ShowFormsRubricsOfType (const struct Rub_Rubrics *Rubrics,
|
|||
{
|
||||
RubCodThisType = DB_GetNextCode (mysql_res);
|
||||
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"%s\" class=\"PrjCfg_RUBRIC_SEL\"",
|
||||
Par_CodeStr[ParCod_Rub]);
|
||||
/* First option to indicate that no rubric is selected */
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"[%s]",Txt_no_rubric);
|
||||
|
||||
/* One option for each rubric in this course */
|
||||
|
@ -219,7 +219,7 @@ static void PrjCfg_ShowFormsRubricsOfType (const struct Rub_Rubrics *Rubrics,
|
|||
HTM_OPTION (HTM_Type_LONG,&Rubrics->Lst[NumRubThisCrs],
|
||||
Rubrics->Lst[NumRubThisCrs] == RubCodThisType ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Title);
|
||||
}
|
||||
|
||||
|
@ -231,14 +231,14 @@ static void PrjCfg_ShowFormsRubricsOfType (const struct Rub_Rubrics *Rubrics,
|
|||
only if not all available rubrics are selected */
|
||||
if (NumRubricsThisType < Rubrics->Num)
|
||||
{
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"%s\" class=\"PrjCfg_RUBRIC_SEL\"",
|
||||
Par_CodeStr[ParCod_Rub]);
|
||||
|
||||
/* First option to indicate that no rubric is selected */
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
HTM_DISABLED,
|
||||
"[%s]",Txt_add_rubric);
|
||||
|
||||
/* One option for each rubric in this course */
|
||||
|
@ -249,7 +249,7 @@ static void PrjCfg_ShowFormsRubricsOfType (const struct Rub_Rubrics *Rubrics,
|
|||
Rub_DB_GetRubricTitle (Rubrics->Lst[NumRubThisCrs],Title,Rub_MAX_BYTES_TITLE);
|
||||
HTM_OPTION (HTM_Type_LONG,&Rubrics->Lst[NumRubThisCrs],
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Title);
|
||||
}
|
||||
|
||||
|
@ -313,7 +313,8 @@ static void PrjCfg_ShowFormNETCanCreate (const struct PrjCfg_Config *Config)
|
|||
HTM_LABEL_Begin ("class=\"LT DAT_%s\"",The_GetSuffix ());
|
||||
Checked = Config->NETCanCreate ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("NETCanCreate",Checked,HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("NETCanCreate",Checked,HTM_ENABLED,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
"id=\"NETCanCreate\" value=\"Y\"");
|
||||
HTM_Txt (Txt_Non_editing_teachers_can_create_new_projects);
|
||||
HTM_LABEL_End ();
|
||||
|
|
175
swad_question.c
175
swad_question.c
|
@ -84,6 +84,9 @@ extern struct Globals Gbl;
|
|||
/***************************** Private prototypes ****************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
static void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia,
|
||||
HTM_Disabled_t Disabled);
|
||||
|
||||
static void Qst_WriteIntAns (struct Qst_Question *Question,
|
||||
const char *ClassTxt,
|
||||
__attribute__((unused)) const char *ClassFeedback);
|
||||
|
@ -233,8 +236,8 @@ void Qst_ShowFormAnswerTypes (const struct Qst_AnswerTypes *AnswerTypes)
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",
|
||||
The_GetSuffix ());
|
||||
Checked = AnswerTypes->All ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("AllAnsTypes",Checked,
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("AllAnsTypes",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\""
|
||||
" onclick=\"togglecheckChildren(this,'AnswerType');\"");
|
||||
|
@ -264,7 +267,7 @@ void Qst_ShowFormAnswerTypes (const struct Qst_AnswerTypes *AnswerTypes)
|
|||
}
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_LABEL_Begin ("class=\"DAT_%s\"",The_GetSuffix ());
|
||||
HTM_INPUT_CHECKBOX ("AnswerType",Checked,
|
||||
HTM_INPUT_CHECKBOX ("AnswerType",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"%u\""
|
||||
" onclick=\"checkParent(this,'AllAnsTypes');\"",
|
||||
|
@ -600,8 +603,8 @@ void Qst_WriteQstStem (const char *Stem,const char *ClassStem,bool Visible)
|
|||
/************* Put form to upload a new image for a test question ************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia,
|
||||
bool OptionsDisabled)
|
||||
static void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia,
|
||||
HTM_Disabled_t Disabled)
|
||||
{
|
||||
extern const char *Txt_No_image_video;
|
||||
extern const char *Txt_Current_image_video;
|
||||
|
@ -620,22 +623,18 @@ void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia,
|
|||
|
||||
/***** Choice 1: No media *****/
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_INPUT_RADIO (ParUploadMedia.Action,Cns_UNCHECKED,
|
||||
HTM_INPUT_RADIO (ParUploadMedia.Action,Cns_UNCHECKED,Disabled,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"%s",(unsigned) Med_ACTION_NO_MEDIA,
|
||||
OptionsDisabled ? " disabled=\"disabled\"" :
|
||||
"");
|
||||
"value=\"%u\"",(unsigned) Med_ACTION_NO_MEDIA);
|
||||
HTM_Txt (Txt_No_image_video);
|
||||
HTM_LABEL_End ();
|
||||
HTM_BR ();
|
||||
|
||||
/***** Choice 2: Current media *****/
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_INPUT_RADIO (ParUploadMedia.Action,Cns_CHECKED,
|
||||
HTM_INPUT_RADIO (ParUploadMedia.Action,Cns_CHECKED,Disabled,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"%s",(unsigned) Med_ACTION_KEEP_MEDIA,
|
||||
OptionsDisabled ? " disabled=\"disabled\"" :
|
||||
"");
|
||||
"value=\"%u\"",(unsigned) Med_ACTION_KEEP_MEDIA);
|
||||
HTM_Txt (Txt_Current_image_video);
|
||||
HTM_LABEL_End ();
|
||||
Med_ShowMedia (Media,
|
||||
|
@ -645,12 +644,10 @@ void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia,
|
|||
/***** Choice 3: Change media *****/
|
||||
UniqueId++;
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_INPUT_RADIO (ParUploadMedia.Action,Cns_UNCHECKED,
|
||||
HTM_INPUT_RADIO (ParUploadMedia.Action,Cns_UNCHECKED,Disabled,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"id=\"chg_img_%u\" value=\"%u\"%s",
|
||||
UniqueId,(unsigned) Med_ACTION_NEW_MEDIA,
|
||||
OptionsDisabled ? " disabled=\"disabled\"" :
|
||||
"");
|
||||
"id=\"chg_img_%u\" value=\"%u\"",
|
||||
UniqueId,(unsigned) Med_ACTION_NEW_MEDIA);
|
||||
HTM_TxtColonNBSP (Txt_Change_image_video);
|
||||
HTM_LABEL_End ();
|
||||
if (asprintf (&ClassInput,"Tst_MED_INPUT INPUT_%s",
|
||||
|
@ -988,7 +985,8 @@ void Qst_WriteQuestionListing (struct Qst_Questions *Questions,unsigned QstInd)
|
|||
Par_PutParUnsigned (NULL,"Order",(unsigned) Questions->SelectedOrder);
|
||||
Checked = Questions->Question.Answer.Shuffle ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("Shuffle",Checked,HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("Shuffle",Checked,HTM_ENABLED,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
Frm_EndForm ();
|
||||
}
|
||||
|
@ -1221,7 +1219,8 @@ void Qst_PutCheckboxToSelectAllQuestions (void)
|
|||
extern const char *Txt_All_questions;
|
||||
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_INPUT_CHECKBOX ("AllQsts",Cns_UNCHECKED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("AllQsts",Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\""
|
||||
" onclick=\"togglecheckChildren(this,'QstCods');\"");
|
||||
HTM_NBSPTxt (Txt_All_questions);
|
||||
|
@ -1248,7 +1247,7 @@ void Qst_WriteQuestionRowForSelection (unsigned QstInd,
|
|||
|
||||
/* Write checkbox to select the question */
|
||||
HTM_TD_Begin ("class=\"BT %s\"",The_GetColorRows ());
|
||||
HTM_INPUT_CHECKBOX ("QstCods",Cns_UNCHECKED,
|
||||
HTM_INPUT_CHECKBOX ("QstCods",Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"%ld\""
|
||||
" onclick=\"checkParent(this,'AllQsts');\"",
|
||||
|
@ -1298,13 +1297,14 @@ void Qst_WriteQuestionRowForSelection (unsigned QstInd,
|
|||
HTM_TxtF ("%s ",Txt_TST_STR_ANSWER_TYPES[Question->Answer.Type]);
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Write if shuffle is enabled */
|
||||
/* Write if shuffle is allowed */
|
||||
HTM_TD_Begin ("class=\"CT DAT_SMALL_%s %s\"",
|
||||
The_GetSuffix (),The_GetColorRows ());
|
||||
Checked = Question->Answer.Shuffle ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("Shuffle",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\" disabled=\"disabled\"");
|
||||
HTM_INPUT_CHECKBOX ("Shuffle",Checked,HTM_DISABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_TD_End ();
|
||||
|
||||
/* Write stem */
|
||||
|
@ -1839,7 +1839,6 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
Qst_AnswerType_t AnsType;
|
||||
bool IsThisTag;
|
||||
bool TagFound;
|
||||
bool OptionsDisabled;
|
||||
bool AnswerHasContent;
|
||||
bool DisplayRightColumn;
|
||||
char StrTagTxt[6 + Cns_MAX_DECIMAL_DIGITS_UINT + 1];
|
||||
|
@ -1848,6 +1847,8 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
char *FuncOnChange;
|
||||
bool NewQuestion = (Question->QstCod > 0);
|
||||
Cns_Checked_t Checked;
|
||||
HTM_Disabled_t Disabled;
|
||||
HTM_Disabled_t MediaDisabled;
|
||||
|
||||
/***** Begin box *****/
|
||||
if (NewQuestion) // The question already has assigned a code
|
||||
|
@ -1901,15 +1902,14 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
HTM_TD_Begin ("class=\"Qst_TAG_CELL LM\"");
|
||||
if (asprintf (&FuncOnChange,"changeTxtTag('%u');",IndTag) < 0)
|
||||
Err_NotEnoughMemoryExit ();
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,FuncOnChange,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,FuncOnChange,
|
||||
"id=\"SelTag%u\" name=\"SelTag%u\""
|
||||
" class=\"Qst_TAG_SEL INPUT_%s\"",
|
||||
IndTag,IndTag,
|
||||
The_GetSuffix ());
|
||||
IndTag,IndTag,The_GetSuffix ());
|
||||
free (FuncOnChange);
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
" ");
|
||||
mysql_data_seek (mysql_res,0);
|
||||
TagFound = false;
|
||||
|
@ -1932,18 +1932,18 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
HTM_OPTION (HTM_Type_STRING,row[1],
|
||||
IsThisTag ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",row[1]);
|
||||
}
|
||||
/* If it's a new tag received from the form */
|
||||
if (!TagFound && Question->Tags.Txt[IndTag][0])
|
||||
HTM_OPTION (HTM_Type_STRING,Question->Tags.Txt[IndTag],
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Question->Tags.Txt[IndTag]);
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"[%s]",Txt_new_tag);
|
||||
HTM_SELECT_End ();
|
||||
HTM_TD_End ();
|
||||
|
@ -1953,13 +1953,11 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
snprintf (StrTagTxt,sizeof (StrTagTxt),"TagTxt%u",IndTag);
|
||||
HTM_INPUT_TEXT (StrTagTxt,Tag_MAX_CHARS_TAG,
|
||||
Question->Tags.Txt[IndTag],
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"%s\""
|
||||
" class=\"Qst_TAG_TXT INPUT_%s\""
|
||||
" onchange=\"changeSelTag('%u')\"",
|
||||
StrTagTxt,
|
||||
The_GetSuffix (),
|
||||
IndTag);
|
||||
StrTagTxt,The_GetSuffix (),IndTag);
|
||||
HTM_TD_End ();
|
||||
|
||||
HTM_TR_End ();
|
||||
|
@ -1980,22 +1978,23 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Stem\" name=\"Stem\" rows=\"5\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Stem\" name=\"Stem\" rows=\"5\""
|
||||
" class=\"Qst_STEM_TXT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_Txt (Question->Stem);
|
||||
HTM_TEXTAREA_End ();
|
||||
HTM_BR ();
|
||||
Qst_PutFormToEditQstMedia (&Question->Media,-1,
|
||||
false);
|
||||
Qst_PutFormToEditQstMedia (&Question->Media,-1,HTM_ENABLED);
|
||||
|
||||
/***** Feedback *****/
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TxtF ("%s (%s):",Txt_Feedback,Txt_optional);
|
||||
HTM_BR ();
|
||||
HTM_TEXTAREA_Begin ("name=\"Feedback\" rows=\"2\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"Feedback\" rows=\"2\""
|
||||
" class=\"Qst_STEM_TXT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
if (Question->Feedback[0])
|
||||
|
@ -2021,7 +2020,7 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
HTM_LABEL_Begin (NULL);
|
||||
Checked = (AnsType == Question->Answer.Type) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("AnswerType",Checked,
|
||||
HTM_INPUT_RADIO ("AnswerType",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\""
|
||||
" onclick=\"enableDisableAns(this.form);\"",
|
||||
|
@ -2045,13 +2044,13 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtColonNBSP (Txt_Integer_number);
|
||||
snprintf (StrInteger,sizeof (StrInteger),"%ld",Question->Answer.Integer);
|
||||
Disabled = (Question->Answer.Type == Qst_ANS_INT) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_TEXT ("AnsInt",Cns_MAX_DECIMAL_DIGITS_LONG,StrInteger,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
Disabled,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"11\" class=\"INPUT_%s\""
|
||||
" required=\"required\"%s",
|
||||
The_GetSuffix (),
|
||||
Question->Answer.Type == Qst_ANS_INT ? "" :
|
||||
" disabled=\"disabled\"");
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_LABEL_End ();
|
||||
HTM_TD_End ();
|
||||
HTM_TR_End ();
|
||||
|
@ -2083,11 +2082,12 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
Checked = Question->Answer.Shuffle ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("Shuffle",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"%s",
|
||||
(Question->Answer.Type != Qst_ANS_UNIQUE_CHOICE &&
|
||||
Question->Answer.Type != Qst_ANS_MULTIPLE_CHOICE) ? " disabled=\"disabled\"" :
|
||||
"");
|
||||
Disabled = (Question->Answer.Type != Qst_ANS_UNIQUE_CHOICE &&
|
||||
Question->Answer.Type != Qst_ANS_MULTIPLE_CHOICE) ? HTM_DISABLED :
|
||||
HTM_ENABLED;
|
||||
HTM_INPUT_CHECKBOX ("Shuffle",Checked,Disabled,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_Txt (Txt_Shuffle);
|
||||
HTM_LABEL_End ();
|
||||
HTM_TD_End ();
|
||||
|
@ -2099,9 +2099,10 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
HTM_TD_Begin ("class=\"LT\"");
|
||||
HTM_TABLE_BeginWidePadding (2); // Table with choice answers
|
||||
|
||||
OptionsDisabled = Question->Answer.Type != Qst_ANS_UNIQUE_CHOICE &&
|
||||
Question->Answer.Type != Qst_ANS_MULTIPLE_CHOICE &&
|
||||
Question->Answer.Type != Qst_ANS_TEXT;
|
||||
MediaDisabled = (Question->Answer.Type != Qst_ANS_UNIQUE_CHOICE &&
|
||||
Question->Answer.Type != Qst_ANS_MULTIPLE_CHOICE &&
|
||||
Question->Answer.Type != Qst_ANS_TEXT) ? HTM_DISABLED :
|
||||
HTM_ENABLED;
|
||||
for (NumOpt = 0, The_ResetRowColor ();
|
||||
NumOpt < Qst_MAX_OPTIONS_PER_QUESTION;
|
||||
NumOpt++, The_ChangeRowColor ())
|
||||
|
@ -2123,23 +2124,22 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
Cns_UNCHECKED;
|
||||
|
||||
/* Radio selector for unique choice answers */
|
||||
HTM_INPUT_RADIO ("AnsUni",Checked,
|
||||
Disabled = (Question->Answer.Type == Qst_ANS_UNIQUE_CHOICE) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_RADIO ("AnsUni",Checked,Disabled,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"%s"
|
||||
" onclick=\"enableDisableAns(this.form);\"",
|
||||
NumOpt,
|
||||
NumOpt < 2 ? " required=\"required\"" : // First or second options required
|
||||
"",
|
||||
(Question->Answer.Type == Qst_ANS_UNIQUE_CHOICE) ? "" :
|
||||
" disabled=\"disabled\"");
|
||||
(NumOpt < 2) ? " required=\"required\"" : // First or second options required
|
||||
"");
|
||||
|
||||
/* Checkbox for multiple choice answers */
|
||||
HTM_INPUT_CHECKBOX ("AnsMulti",Checked,
|
||||
Disabled = (Question->Answer.Type == Qst_ANS_MULTIPLE_CHOICE) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_CHECKBOX ("AnsMulti",Checked,Disabled,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"%u\"%s",
|
||||
NumOpt,
|
||||
(Question->Answer.Type == Qst_ANS_MULTIPLE_CHOICE) ? "" :
|
||||
" disabled=\"disabled\"");
|
||||
"value=\"%u\"",NumOpt);
|
||||
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -2186,34 +2186,27 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
|
|||
" style=\"display:none;\""); // Answer does not have content ==> Hide column
|
||||
|
||||
/* Answer text */
|
||||
HTM_TEXTAREA_Begin ("name=\"AnsStr%u\" rows=\"5\""
|
||||
" class=\"Qst_ANS_TXT INPUT_%s\""
|
||||
"%s",
|
||||
NumOpt,
|
||||
The_GetSuffix (),
|
||||
OptionsDisabled ? " disabled=\"disabled\"" :
|
||||
"");
|
||||
HTM_TEXTAREA_Begin (Disabled,
|
||||
"name=\"AnsStr%u\" rows=\"5\""
|
||||
" class=\"Qst_ANS_TXT INPUT_%s\"",
|
||||
NumOpt,The_GetSuffix ());
|
||||
if (AnswerHasContent)
|
||||
HTM_Txt (Question->Answer.Options[NumOpt].Text);
|
||||
HTM_TEXTAREA_End ();
|
||||
|
||||
/* Media */
|
||||
Qst_PutFormToEditQstMedia (&Question->Answer.Options[NumOpt].Media,
|
||||
(int) NumOpt,
|
||||
OptionsDisabled);
|
||||
(int) NumOpt,MediaDisabled);
|
||||
|
||||
/* Feedback */
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TxtF ("%s (%s):",Txt_Feedback,Txt_optional);
|
||||
HTM_BR ();
|
||||
HTM_TEXTAREA_Begin ("name=\"FbStr%u\" rows=\"2\""
|
||||
" class=\"Qst_ANS_TXT INPUT_%s\""
|
||||
"%s",
|
||||
NumOpt,
|
||||
The_GetSuffix (),
|
||||
OptionsDisabled ? " disabled=\"disabled\"" :
|
||||
"");
|
||||
HTM_TEXTAREA_Begin (Disabled,
|
||||
"name=\"FbStr%u\" rows=\"2\""
|
||||
" class=\"Qst_ANS_TXT INPUT_%s\"",
|
||||
NumOpt,The_GetSuffix ());
|
||||
if (Question->Answer.Options[NumOpt].Feedback)
|
||||
if (Question->Answer.Options[NumOpt].Feedback[0])
|
||||
HTM_Txt (Question->Answer.Options[NumOpt].Feedback);
|
||||
|
@ -2255,17 +2248,18 @@ void Qst_PutFloatInputField (const char *Label,const char *Field,
|
|||
unsigned Index)
|
||||
{
|
||||
char StrDouble[32];
|
||||
HTM_Disabled_t Disabled;
|
||||
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtF ("%s ",Label);
|
||||
snprintf (StrDouble,sizeof (StrDouble),"%.15lg",
|
||||
Question->Answer.FloatingPoint[Index]);
|
||||
Disabled = (Question->Answer.Type == Qst_ANS_FLOAT) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_TEXT (Field,Qst_MAX_BYTES_FLOAT_ANSWER,StrDouble,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"11\" class=\"INPUT_%s\" required=\"required\"%s",
|
||||
The_GetSuffix (),
|
||||
Question->Answer.Type == Qst_ANS_FLOAT ? "" :
|
||||
" disabled=\"disabled\"");
|
||||
Disabled,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"11\" class=\"INPUT_%s\" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_LABEL_End ();
|
||||
}
|
||||
|
||||
|
@ -2277,15 +2271,16 @@ void Qst_PutTFInputField (const struct Qst_Question *Question,
|
|||
const char *Label,char Value)
|
||||
{
|
||||
Cns_Checked_t Checked;
|
||||
HTM_Disabled_t Disabled;
|
||||
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
Checked = (Question->Answer.TF == Value) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("AnsTF",Checked,HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%c\"%s required=\"required\"",
|
||||
Value,
|
||||
(Question->Answer.Type == Qst_ANS_TRUE_FALSE) ? "" :
|
||||
" disabled=\"disabled\"");
|
||||
Disabled = (Question->Answer.Type == Qst_ANS_TRUE_FALSE) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_INPUT_RADIO ("AnsTF",Checked,Disabled,HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%c\" required=\"required\"",
|
||||
Value);
|
||||
HTM_Txt (Label);
|
||||
HTM_LABEL_End ();
|
||||
}
|
||||
|
|
|
@ -149,8 +149,6 @@ void Qst_ListQuestionForEdition (struct Qst_Question *Question,
|
|||
const char *Anchor);
|
||||
void Qst_WriteAnswerType (Qst_AnswerType_t AnswerType,const char *Class);
|
||||
void Qst_WriteQstStem (const char *Stem,const char *ClassStem,bool Visible);
|
||||
void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia,
|
||||
bool OptionsDisabled);
|
||||
void Qst_WriteQstFeedback (const char *Feedback,const char *ClassFeedback);
|
||||
|
||||
void Qst_ListQuestionsToEdit (void);
|
||||
|
|
|
@ -481,7 +481,8 @@ static void QstImp_ImportQuestionsFromXMLBuffer (const char *XMLBuffer)
|
|||
|
||||
/***** Print XML tree *****/
|
||||
HTM_DIV_Begin ("class=\"Tst_FILE_CONTENT\"");
|
||||
HTM_TEXTAREA_Begin ("title=\"%s\" cols=\"60\" rows=\"5\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"title=\"%s\" cols=\"60\" rows=\"5\""
|
||||
" spellcheck=\"false\" readonly",
|
||||
Txt_XML_file_content);
|
||||
XML_PrintTree (RootElem);
|
||||
|
|
|
@ -305,7 +305,7 @@ static void Rec_ListFieldsRecordsForEdition (void)
|
|||
ParCod_PutPar (ParCod_Fld,Fld->FieldCod);
|
||||
HTM_INPUT_TEXT ("FieldName",Rec_MAX_CHARS_NAME_FIELD,
|
||||
Gbl.Crs.Records.LstFields.Lst[NumField].Name,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"REC_FIELDNAME INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -316,7 +316,7 @@ static void Rec_ListFieldsRecordsForEdition (void)
|
|||
Frm_BeginForm (ActChgRowFie);
|
||||
ParCod_PutPar (ParCod_Fld,Fld->FieldCod);
|
||||
HTM_INPUT_LONG ("NumLines",1,UINT_MAX,(long) Fld->NumLines,
|
||||
HTM_SUBMIT_ON_CHANGE,false,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"INPUT_LONG INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -327,7 +327,7 @@ static void Rec_ListFieldsRecordsForEdition (void)
|
|||
HTM_TD_Begin ("class=\"CM\"");
|
||||
Frm_BeginForm (ActChgVisFie);
|
||||
ParCod_PutPar (ParCod_Fld,Fld->FieldCod);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Visibility\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
for (Vis = (Rec_VisibilityRecordFields_t) 0;
|
||||
|
@ -338,7 +338,7 @@ static void Rec_ListFieldsRecordsForEdition (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&VisUnsigned,
|
||||
Vis == Fld->Visibility ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_RECORD_FIELD_VISIBILITY_MENU[Vis]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -379,7 +379,7 @@ void Rec_ShowFormCreateRecordField (void)
|
|||
/***** Field name *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_INPUT_TEXT ("FieldName",Rec_MAX_CHARS_NAME_FIELD,Gbl.Crs.Records.Field.Name,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"class=\"REC_FIELDNAME INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -389,7 +389,7 @@ void Rec_ShowFormCreateRecordField (void)
|
|||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_INPUT_LONG ("NumLines",1,UINT_MAX,
|
||||
(long) Gbl.Crs.Records.Field.NumLines,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,false,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"class=\"INPUT_LONG INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -397,7 +397,7 @@ void Rec_ShowFormCreateRecordField (void)
|
|||
|
||||
/***** Visibility to students *****/
|
||||
HTM_TD_Begin ("class=\"CM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Visibility\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
for (Vis = (Rec_VisibilityRecordFields_t) 0;
|
||||
|
@ -408,7 +408,7 @@ void Rec_ShowFormCreateRecordField (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&VisUnsigned,
|
||||
Vis == Gbl.Crs.Records.Field.Visibility ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_RECORD_FIELD_VISIBILITY_MENU[Vis]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -1401,7 +1401,7 @@ static void Rec_ShowLinkToPrintPreviewOfRecords (void)
|
|||
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_Txt ("(");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"RecsPerPag\"");
|
||||
for (i = Rec_MIN_RECORDS_PER_PAGE;
|
||||
i <= Rec_MAX_RECORDS_PER_PAGE;
|
||||
|
@ -1409,7 +1409,7 @@ static void Rec_ShowLinkToPrintPreviewOfRecords (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&i,
|
||||
i == Gbl.Usrs.Listing.RecsPerPag ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",i);
|
||||
HTM_SELECT_End ();
|
||||
HTM_TxtF (" %s)",Txt_record_cards_per_page);
|
||||
|
@ -1736,7 +1736,8 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
|
|||
switch (ICanEditThisField)
|
||||
{
|
||||
case Usr_CAN: // Show with form
|
||||
HTM_TEXTAREA_Begin ("name=\"Field%ld\" rows=\"%u\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"Field%ld\" rows=\"%u\""
|
||||
" class=\"REC_C2_BOT_INPUT INPUT_%s\"",
|
||||
Gbl.Crs.Records.LstFields.Lst[NumField].FieldCod,
|
||||
Gbl.Crs.Records.LstFields.Lst[NumField].NumLines,
|
||||
|
@ -2773,7 +2774,7 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
|
|||
DefaultRoleInForm = Rol_STD; // Request sign up as a student
|
||||
|
||||
/***** Selector of role *****/
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"Role\" name=\"Role\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -2785,7 +2786,7 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&RoleUnsigned,
|
||||
Role == DefaultRoleInForm ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_ROLES_SINGUL_Abc[Role][UsrDat->Sex]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -2839,7 +2840,7 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
|
|||
}
|
||||
|
||||
/***** Selector of role *****/
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"Role\" name=\"Role\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -2852,7 +2853,7 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
|
|||
RoleUnsigned = (unsigned) Gbl.Usrs.Me.Role.Logged;
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&RoleUnsigned,
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
HTM_DISABLED,
|
||||
"%s",Txt_ROLES_SINGUL_Abc[Gbl.Usrs.Me.Role.Logged][UsrDat->Sex]);
|
||||
break;
|
||||
case Rol_TCH:
|
||||
|
@ -2868,7 +2869,7 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&RoleUnsigned,
|
||||
Role == DefaultRoleInForm ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_ROLES_SINGUL_Abc[Role][UsrDat->Sex]);
|
||||
}
|
||||
break;
|
||||
|
@ -2886,14 +2887,14 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
|
|||
Rol_GST; // If user don't belong to any course
|
||||
|
||||
/***** Selector of role *****/
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"Role\" name=\"Role\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
RoleUnsigned = (unsigned) DefaultRoleInForm;
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&RoleUnsigned,
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
HTM_DISABLED,
|
||||
"%s",Txt_ROLES_SINGUL_Abc[DefaultRoleInForm][UsrDat->Sex]);
|
||||
HTM_SELECT_End ();
|
||||
}
|
||||
|
@ -2925,7 +2926,7 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
|
|||
}
|
||||
|
||||
/***** Selector of role *****/
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"Role\" name=\"Role\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -2937,7 +2938,7 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&RoleUnsigned,
|
||||
Role == DefaultRoleInForm ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_ROLES_SINGUL_Abc[Role][Usr_SEX_UNKNOWN]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -2950,14 +2951,14 @@ static void Rec_ShowRole (struct Usr_Data *UsrDat,
|
|||
{
|
||||
case Rol_SYS_ADM:
|
||||
/***** Selector of role *****/
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"Role\" name=\"Role\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
RoleUnsigned = (unsigned) Rol_GST;
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&RoleUnsigned,
|
||||
HTM_OPTION_SELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_ROLES_SINGUL_Abc[Rol_GST][Usr_SEX_UNKNOWN]);
|
||||
HTM_SELECT_End ();
|
||||
break;
|
||||
|
@ -3016,7 +3017,7 @@ static void Rec_ShowFormSex (struct Usr_Data *UsrDat,Usr_Sex_t Sex)
|
|||
The_GetSuffix ());
|
||||
Checked = (Sex == UsrDat->Sex) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("Sex",Checked,HTM_DONT_SUBMIT_ON_CLICK,
|
||||
HTM_INPUT_RADIO ("Sex",Checked,HTM_ENABLED,HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\" required=\"required\"",(unsigned) Sex);
|
||||
HTM_TxtF ("%s %s",Usr_StringsSexIcons[Sex],Txt_SEX_SINGULAR_Abc[Sex]);
|
||||
HTM_LABEL_End ();
|
||||
|
@ -3065,7 +3066,7 @@ static void Rec_ShowSurname1 (struct Usr_Data *UsrDat,Vie_ViewType_t ViewType)
|
|||
break;
|
||||
case Vie_EDIT:
|
||||
HTM_INPUT_TEXT ("Surname1",Usr_MAX_CHARS_FIRSTNAME_OR_SURNAME,UsrDat->Surname1,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Surname1\" class=\"REC_C2_BOT_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -3110,7 +3111,7 @@ static void Rec_ShowSurname2 (struct Usr_Data *UsrDat,Vie_ViewType_t ViewType)
|
|||
case Vie_EDIT:
|
||||
HTM_INPUT_TEXT ("Surname2",Usr_MAX_CHARS_FIRSTNAME_OR_SURNAME,
|
||||
UsrDat->Surname2,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Surname2\""
|
||||
" class=\"REC_C2_BOT_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -3168,7 +3169,7 @@ static void Rec_ShowFirstName (struct Usr_Data *UsrDat,Vie_ViewType_t ViewType)
|
|||
case Vie_EDIT:
|
||||
HTM_INPUT_TEXT ("FirstName",Usr_MAX_CHARS_FIRSTNAME_OR_SURNAME,
|
||||
UsrDat->FrstName,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"FirstName\""
|
||||
" class=\"REC_C2_BOT_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -3221,19 +3222,19 @@ static void Rec_ShowCountry (struct Usr_Data *UsrDat,Vie_ViewType_t ViewType)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("colspan=\"2\" class=\"REC_C2_BOT LM\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"OthCtyCod\" name=\"OthCtyCod\""
|
||||
" class=\"REC_C2_BOT_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"",
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_HIERARCHY_SINGUL_Abc[Hie_CTY]);
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
UsrDat->CtyCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_country);
|
||||
for (NumCty = 0;
|
||||
NumCty < Gbl.Hierarchy.List[Hie_SYS].Num;
|
||||
|
@ -3243,7 +3244,7 @@ static void Rec_ShowCountry (struct Usr_Data *UsrDat,Vie_ViewType_t ViewType)
|
|||
HTM_OPTION (HTM_Type_LONG,&Cty->HieCod,
|
||||
Cty->HieCod == UsrDat->CtyCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Cty->FullName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -3396,7 +3397,8 @@ static void Rec_ShowComments (struct Usr_Data *UsrDat,bool ShowData,
|
|||
}
|
||||
break;
|
||||
case Vie_EDIT:
|
||||
HTM_TEXTAREA_Begin ("id=\"Comments\" name=\"Comments\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Comments\" name=\"Comments\""
|
||||
" rows=\"4\""
|
||||
" class=\"REC_C2_BOT_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -3900,14 +3902,14 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
|
||||
/* Begin form to select the country of my institution */
|
||||
Frm_BeginFormAnchor (ActChgCtyMyIns,Rec_MY_INS_CTR_DPT_ID);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"InsCtyCod\" name=\"OthCtyCod\""
|
||||
" class=\"REC_C2_BOT_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
Gbl.Usrs.Me.UsrDat.InsCtyCod <= 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
HTM_DISABLED,
|
||||
NULL);
|
||||
for (NumCty = 0;
|
||||
NumCty < Gbl.Hierarchy.List[Hie_SYS].Num;
|
||||
|
@ -3917,7 +3919,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
HTM_OPTION (HTM_Type_LONG,&Cty->HieCod,
|
||||
Cty->HieCod == Gbl.Usrs.Me.UsrDat.InsCtyCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Cty->FullName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -3946,19 +3948,19 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
|
||||
/* Begin form to select institution */
|
||||
Frm_BeginFormAnchor (ActChgMyIns,Rec_MY_INS_CTR_DPT_ID);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"OthInsCod\" name=\"OthInsCod\""
|
||||
" class=\"REC_C2_BOT_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
Gbl.Usrs.Me.UsrDat.InsCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
HTM_DISABLED,
|
||||
NULL);
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Gbl.Usrs.Me.UsrDat.InsCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_institution);
|
||||
for (NumIns = 0;
|
||||
NumIns < Gbl.Hierarchy.List[Hie_CTY].Num;
|
||||
|
@ -3968,7 +3970,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
HTM_OPTION (HTM_Type_LONG,&Ins->HieCod,
|
||||
Ins->HieCod == Gbl.Usrs.Me.UsrDat.InsCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Ins->FullName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -3998,19 +4000,19 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
|
||||
/* Begin form to select center */
|
||||
Frm_BeginFormAnchor (ActChgMyCtr,Rec_MY_INS_CTR_DPT_ID);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"OthCtrCod\" name=\"OthCtrCod\""
|
||||
" class=\"REC_C2_BOT_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
Gbl.Usrs.Me.UsrDat.Tch.CtrCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_DISABLED,
|
||||
HTM_DISABLED,
|
||||
NULL);
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Gbl.Usrs.Me.UsrDat.Tch.CtrCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
Txt_Another_center);
|
||||
for (NumCtr = 0;
|
||||
NumCtr < Gbl.Hierarchy.List[Hie_SYS].Num;
|
||||
|
@ -4020,7 +4022,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
HTM_OPTION (HTM_Type_LONG,&Ctr->HieCod,
|
||||
Ctr->HieCod == Gbl.Usrs.Me.UsrDat.Tch.CtrCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
Ctr->FullName);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -4067,7 +4069,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
HTM_TD_Begin ("class=\"REC_C2_BOT LM\"");
|
||||
Frm_BeginFormAnchor (ActChgMyOff,Rec_MY_INS_CTR_DPT_ID);
|
||||
HTM_INPUT_TEXT ("Office",Usr_MAX_CHARS_ADDRESS,Gbl.Usrs.Me.UsrDat.Tch.Office,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"id=\"Office\""
|
||||
" class=\"REC_C2_BOT_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -207,7 +207,7 @@ void Rsc_WriteRowClipboard (const struct Rsc_Link *Link,
|
|||
HTM_LABEL_Begin (NULL);
|
||||
|
||||
/***** Radio selector *****/
|
||||
HTM_INPUT_RADIO ("Link",Checked,SubmitOnClick,
|
||||
HTM_INPUT_RADIO ("Link",Checked,HTM_ENABLED,SubmitOnClick,
|
||||
"value=\"%s_%ld\"",
|
||||
Rsc_ResourceTypesDB[Link->Type],Link->Cod);
|
||||
|
||||
|
|
16
swad_role.c
16
swad_role.c
|
@ -447,10 +447,10 @@ void Rol_PutFormToChangeMyRole (const char *ClassSelect)
|
|||
if (ClassSelect[0])
|
||||
PutClassSelect = true;
|
||||
if (PutClassSelect)
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"MyRole\" class=\"%s\"",ClassSelect);
|
||||
else
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"MyRole\"");
|
||||
for (Role = (Rol_Role_t) 1;
|
||||
Role <= (Rol_Role_t) (Rol_NUM_ROLES - 1);
|
||||
|
@ -461,7 +461,7 @@ void Rol_PutFormToChangeMyRole (const char *ClassSelect)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&RoleUnsigned,
|
||||
Role == Gbl.Usrs.Me.Role.Logged ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_ROLES_SINGUL_Abc[Role][Gbl.Usrs.Me.UsrDat.Sex]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -512,10 +512,9 @@ void Rol_ChangeMyRole (void)
|
|||
/*****************************************************************************/
|
||||
|
||||
void Rol_WriteSelectorRoles (unsigned RolesAllowed,unsigned RolesSelected,
|
||||
Cns_Disabled_t Disabled,
|
||||
HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange)
|
||||
{
|
||||
extern const char *HTM_DisabledTxt[Cns_NUM_DISABLED];
|
||||
extern const char *Txt_ROLES_PLURAL_abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
|
||||
Rol_Role_t Role;
|
||||
Cns_Checked_t Checked;
|
||||
|
@ -527,10 +526,9 @@ void Rol_WriteSelectorRoles (unsigned RolesAllowed,unsigned RolesSelected,
|
|||
{
|
||||
HTM_LABEL_Begin (NULL);
|
||||
Checked = (RolesSelected & (1 << Role));
|
||||
HTM_INPUT_CHECKBOX ("Role",Checked,SubmitOnChange,
|
||||
"id=\"Role\" value=\"%u\" class=\"INPUT_%s\"%s",
|
||||
(unsigned) Role,The_GetSuffix (),
|
||||
HTM_DisabledTxt[Disabled]);
|
||||
HTM_INPUT_CHECKBOX ("Role",Checked,Disabled,SubmitOnChange,
|
||||
"id=\"Role\" value=\"%u\" class=\"INPUT_%s\"",
|
||||
(unsigned) Role,The_GetSuffix ());
|
||||
HTM_Txt (Txt_ROLES_PLURAL_abc[Role][Usr_SEX_UNKNOWN]);
|
||||
HTM_LABEL_End ();
|
||||
HTM_BR ();
|
||||
|
|
|
@ -53,7 +53,7 @@ void Rol_PutFormToChangeMyRole (const char *ClassSelect);
|
|||
void Rol_ChangeMyRole (void);
|
||||
|
||||
void Rol_WriteSelectorRoles (unsigned RolesAllowed,unsigned RolesSelected,
|
||||
Cns_Disabled_t Disabled,
|
||||
HTM_Disabled_t Disabled,
|
||||
HTM_SubmitOnChange_t SubmitOnChange);
|
||||
void Rol_PutParRoles (unsigned Roles);
|
||||
unsigned Rol_GetSelectedRoles (void);
|
||||
|
|
28
swad_room.c
28
swad_room.c
|
@ -680,7 +680,7 @@ static void Roo_ListRoomsForEdition (const struct Bld_Buildings *Buildings,
|
|||
Frm_BeginFormAnchor (ActChgRooFlo,Anchor);
|
||||
ParCod_PutPar (ParCod_Roo,Room->RooCod);
|
||||
HTM_INPUT_LONG ("Floor",(long) INT_MIN,(long) INT_MAX,(long) Room->Floor,
|
||||
HTM_SUBMIT_ON_CHANGE,false,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"class=\"INPUT_LONG INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -690,8 +690,7 @@ static void Roo_ListRoomsForEdition (const struct Bld_Buildings *Buildings,
|
|||
HTM_TD_Begin ("class=\"CT\"");
|
||||
Frm_BeginFormAnchor (ActChgRooTyp,Anchor);
|
||||
ParCod_PutPar (ParCod_Roo,Room->RooCod);
|
||||
Roo_PutSelectorType (Room->Type,
|
||||
HTM_SUBMIT_ON_CHANGE);
|
||||
Roo_PutSelectorType (Room->Type,HTM_SUBMIT_ON_CHANGE);
|
||||
Frm_EndForm ();
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -709,7 +708,7 @@ static void Roo_ListRoomsForEdition (const struct Bld_Buildings *Buildings,
|
|||
ParCod_PutPar (ParCod_Roo,Room->RooCod);
|
||||
Roo_WriteCapacity (StrCapacity,Room->Capacity);
|
||||
HTM_INPUT_TEXT ("Capacity",Cns_MAX_DECIMAL_DIGITS_UINT,StrCapacity,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"3\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
Frm_EndForm ();
|
||||
|
@ -752,7 +751,7 @@ static void Roo_PutSelectorBuilding (long BldCod,
|
|||
const struct Bld_Building *Bld;
|
||||
|
||||
/***** Begin selector *****/
|
||||
HTM_SELECT_Begin (SubmitOnChange,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,NULL,
|
||||
"name=\"BldCod\" class=\"BLD_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
|
@ -760,14 +759,14 @@ static void Roo_PutSelectorBuilding (long BldCod,
|
|||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
BldCod < 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_No_assigned_building);
|
||||
|
||||
/***** Option for another room *****/
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
BldCod == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Another_building);
|
||||
|
||||
/***** Options for buildings *****/
|
||||
|
@ -779,7 +778,7 @@ static void Roo_PutSelectorBuilding (long BldCod,
|
|||
HTM_OPTION (HTM_Type_LONG,&Bld->BldCod,
|
||||
BldCod == Bld->BldCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Bld->ShrtName);
|
||||
}
|
||||
|
||||
|
@ -798,7 +797,7 @@ static void Roo_PutSelectorType (Roo_RoomType_t RoomType,
|
|||
Roo_RoomType_t Type;
|
||||
|
||||
/***** Begin selector *****/
|
||||
HTM_SELECT_Begin (SubmitOnChange,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,NULL,
|
||||
"name=\"Type\" class=\"ROOM_TYPE_SEL INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
|
@ -809,7 +808,7 @@ static void Roo_PutSelectorType (Roo_RoomType_t RoomType,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Type,
|
||||
Type == RoomType ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_ROOM_TYPES[Type]);
|
||||
|
||||
/***** End selector *****/
|
||||
|
@ -1220,9 +1219,8 @@ static void Roo_PutFormToCreateRoom (const struct Bld_Buildings *Buildings)
|
|||
/***** Floor *****/
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
HTM_INPUT_LONG ("Floor",(long) INT_MIN,(long) INT_MAX,(long) Roo_EditingRoom->Floor,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,false,
|
||||
"class=\"INPUT_LONG INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"class=\"INPUT_LONG INPUT_%s\"",The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
/***** Room type *****/
|
||||
|
@ -1240,7 +1238,7 @@ static void Roo_PutFormToCreateRoom (const struct Bld_Buildings *Buildings)
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
Roo_WriteCapacity (StrCapacity,Roo_EditingRoom->Capacity);
|
||||
HTM_INPUT_TEXT ("Capacity",Cns_MAX_DECIMAL_DIGITS_UINT,StrCapacity,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"3\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
@ -1249,7 +1247,7 @@ static void Roo_PutFormToCreateRoom (const struct Bld_Buildings *Buildings)
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
MAC_MACnumToMACstr (Roo_EditingRoom->MACnum,MACstr);
|
||||
HTM_INPUT_TEXT ("MAC",MAC_LENGTH_MAC_ADDRESS,MACstr,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"8\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
|
|
@ -859,9 +859,8 @@ static void Rub_PutFormEditionRubric (struct Rub_Rubrics *Rubrics,
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_INPUT_TEXT ("Title",Rub_MAX_CHARS_TITLE,Rubrics->Rubric.Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
@ -876,7 +875,8 @@ static void Rub_PutFormEditionRubric (struct Rub_Rubrics *Rubrics,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_Txt (Rubrics->Rubric.Txt);
|
||||
|
|
|
@ -192,7 +192,7 @@ static void RubCri_PutFormNewCriterion (struct Rub_Rubrics *Rubrics,
|
|||
/***** Title *****/
|
||||
HTM_TD_Begin ("class=\"LT\"");
|
||||
HTM_INPUT_TEXT ("Title",RubCri_MAX_CHARS_TITLE,Rubrics->Criterion.Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"INPUT_FULL_NAME INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -213,8 +213,9 @@ static void RubCri_PutFormNewCriterion (struct Rub_Rubrics *Rubrics,
|
|||
HTM_INPUT_FLOAT (RubCri_ParValues[ValueRange],
|
||||
0.0,DBL_MAX,RubCri_SCORE_STEP,
|
||||
Rubrics->Criterion.Values[ValueRange],
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,false,
|
||||
" class=\"INPUT_FLOAT INPUT_%s\" required=\"required\"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
" class=\"INPUT_FLOAT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
}
|
||||
|
@ -226,8 +227,9 @@ static void RubCri_PutFormNewCriterion (struct Rub_Rubrics *Rubrics,
|
|||
RubCri_WEIGHT_MAX,
|
||||
RubCri_WEIGHT_STEP,
|
||||
Rubrics->Criterion.Weight,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,false,
|
||||
" class=\"INPUT_FLOAT INPUT_%s\" required=\"required\"",
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
" class=\"INPUT_FLOAT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -722,7 +724,7 @@ static void RubCri_ListOneOrMoreCriteriaForEdition (struct Rub_Rubrics *Rubrics,
|
|||
Frm_BeginFormAnchor (ActChgTitRubCri,Anchor);
|
||||
RubCri_PutParsOneCriterion (Rubrics);
|
||||
HTM_INPUT_TEXT ("Title",RubCri_MAX_CHARS_TITLE,Rubrics->Criterion.Title,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"INPUT_FULL_NAME INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -749,7 +751,7 @@ static void RubCri_ListOneOrMoreCriteriaForEdition (struct Rub_Rubrics *Rubrics,
|
|||
HTM_INPUT_FLOAT (RubCri_ParValues[ValueRange],
|
||||
0.0,DBL_MAX,RubCri_SCORE_STEP,
|
||||
Rubrics->Criterion.Values[ValueRange],
|
||||
HTM_SUBMIT_ON_CHANGE,false,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
" class=\"INPUT_FLOAT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -766,7 +768,7 @@ static void RubCri_ListOneOrMoreCriteriaForEdition (struct Rub_Rubrics *Rubrics,
|
|||
RubCri_WEIGHT_MAX,
|
||||
RubCri_WEIGHT_STEP,
|
||||
Rubrics->Criterion.Weight,
|
||||
HTM_SUBMIT_ON_CHANGE,false,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
" class=\"INPUT_FLOAT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -856,7 +858,7 @@ static void RubCri_ListOneOrMoreCriteriaInProject (struct Prj_Projects *Projects
|
|||
Criterion.Values[RubCri_MAX],
|
||||
RubCri_SCORE_STEP,
|
||||
CriterionScore,
|
||||
HTM_SUBMIT_ON_CHANGE,false,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
" class=\"INPUT_FLOAT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -51,7 +51,7 @@ void Sco_PutSelectorScope (const char *ParName,HTM_SubmitOnChange_t SubmitOnChan
|
|||
unsigned ScopeUnsigned;
|
||||
bool WriteScope;
|
||||
|
||||
HTM_SELECT_Begin (SubmitOnChange,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,SubmitOnChange,NULL,
|
||||
"id=\"%s\" name=\"%s\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
ParName,ParName,The_GetSuffix ());
|
||||
|
@ -87,7 +87,7 @@ void Sco_PutSelectorScope (const char *ParName,HTM_SubmitOnChange_t SubmitOnChan
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&ScopeUnsigned,
|
||||
Level == Gbl.Scope.Current ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s: %s",
|
||||
Txt_HIERARCHY_SINGUL_Abc[Level],
|
||||
Gbl.Hierarchy.Node[Level].ShrtName);
|
||||
|
|
|
@ -183,7 +183,7 @@ static void Sch_PutFormToSearchWithWhatToSearchAndScope (Hie_Level_t DefaultScop
|
|||
/***** What to search? *****/
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtF (" %s ",Txt_SEARCH_X_in_Y);
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"WhatToSearch\""
|
||||
" class=\"WHAT_TO_SEARCH INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -196,7 +196,7 @@ static void Sch_PutFormToSearchWithWhatToSearchAndScope (Hie_Level_t DefaultScop
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&WTS,
|
||||
WhatToSearch == Search->WhatToSearch ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",*Titles[WhatToSearch]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
|
|
@ -243,6 +243,7 @@ static void Sta_PutFormCrsHits (struct Sta_Stats *Stats)
|
|||
unsigned ClicksGroupedByUnsigned;
|
||||
size_t i;
|
||||
Cns_Checked_t Checked;
|
||||
HTM_Disabled_t Disabled;
|
||||
|
||||
/***** Contextual menu *****/
|
||||
Mnu_ContextMenuBegin ();
|
||||
|
@ -349,7 +350,8 @@ static void Sta_PutFormCrsHits (struct Sta_Stats *Stats)
|
|||
The_GetSuffix ());
|
||||
Checked = (Stats->ClicksGroupedBy == Sta_CLICKS_CRS_DETAILED_LIST) ? Cns_UNCHECKED :
|
||||
Cns_CHECKED;
|
||||
HTM_INPUT_RADIO ("GroupedOrDetailed",Checked,
|
||||
HTM_INPUT_RADIO ("GroupedOrDetailed",
|
||||
Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\""
|
||||
" onclick=\"disableDetailedClicks();\"",
|
||||
|
@ -367,7 +369,7 @@ static void Sta_PutFormCrsHits (struct Sta_Stats *Stats)
|
|||
The_GetSuffix ());
|
||||
HTM_Txt (Txt_distributed_by);
|
||||
HTM_NBSP ();
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"GroupedBy\" name=\"GroupedBy\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -379,7 +381,7 @@ static void Sta_PutFormCrsHits (struct Sta_Stats *Stats)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&ClicksGroupedByUnsigned,
|
||||
ClicksGroupedBy == Stats->ClicksGroupedBy ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_STAT_CLICKS_GROUPED_BY[ClicksGroupedBy]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -393,7 +395,8 @@ static void Sta_PutFormCrsHits (struct Sta_Stats *Stats)
|
|||
The_GetSuffix ());
|
||||
Checked = (Stats->ClicksGroupedBy == Sta_CLICKS_CRS_DETAILED_LIST) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("GroupedOrDetailed",Checked,
|
||||
HTM_INPUT_RADIO ("GroupedOrDetailed",
|
||||
Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\" onclick=\"enableDetailedClicks();\"",
|
||||
(unsigned) Sta_CLICKS_DETAILED);
|
||||
|
@ -406,19 +409,19 @@ static void Sta_PutFormCrsHits (struct Sta_Stats *Stats)
|
|||
/* Number of rows per page */
|
||||
// To use getElementById in Firefox, it's necessary to have the id attribute
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
Disabled = (Stats->ClicksGroupedBy == Sta_CLICKS_CRS_DETAILED_LIST) ? HTM_ENABLED :
|
||||
HTM_DISABLED;
|
||||
HTM_TxtF ("(%s: ",Txt_results_per_page);
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"RowsPage\" name=\"RowsPage\"%s",
|
||||
Stats->ClicksGroupedBy == Sta_CLICKS_CRS_DETAILED_LIST ? "" :
|
||||
" disabled=\"disabled\"");
|
||||
HTM_SELECT_Begin (Disabled,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"RowsPage\" name=\"RowsPage\"");
|
||||
for (i = 0;
|
||||
i < NUM_OPTIONS_ROWS_PER_PAGE;
|
||||
i++)
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&RowsPerPage[i],
|
||||
RowsPerPage[i] == Stats->RowsPerPage ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",RowsPerPage[i]);
|
||||
HTM_SELECT_End ();
|
||||
HTM_Txt (")");
|
||||
|
@ -534,7 +537,7 @@ static void Sta_PutFormGblHits (struct Sta_Stats *Stats)
|
|||
Stats->ClicksGroupedBy > Sta_CLICKS_GBL_PER_COURSE)
|
||||
Stats->ClicksGroupedBy = Sta_CLICKS_GBL_PER_DAY;
|
||||
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"GroupedBy\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -546,7 +549,7 @@ static void Sta_PutFormGblHits (struct Sta_Stats *Stats)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&ClicksGroupedByUnsigned,
|
||||
ClicksGroupedBy == Stats->ClicksGroupedBy ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_STAT_CLICKS_GROUPED_BY[ClicksGroupedBy]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -624,7 +627,7 @@ static void Sta_WriteSelectorRoles (const struct Sta_Stats *Stats)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"Role\" name=\"Role\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -636,7 +639,7 @@ static void Sta_WriteSelectorRoles (const struct Sta_Stats *Stats)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&RoleStatUnsigned,
|
||||
RoleStat == Stats->Role ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_ROLE_STATS[RoleStat]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -664,14 +667,14 @@ static void Sta_WriteSelectorAction (const struct Sta_Stats *Stats)
|
|||
Frm_LabelColumn ("Frm_C1 RT","StatAct",Txt_Action);
|
||||
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"StatAct\" name=\"StatAct\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"0",
|
||||
Stats->NumAction == 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_Any_action);
|
||||
for (Action = (Act_Action_t) 1;
|
||||
Action <= (Act_Action_t) (ActLst_NUM_ACTIONS - 1);
|
||||
|
@ -683,14 +686,14 @@ static void Sta_WriteSelectorAction (const struct Sta_Stats *Stats)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&ActionUnsigned,
|
||||
Action == Stats->NumAction ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%04u: %s",
|
||||
(unsigned) Action,Act_GetActionText (Action));
|
||||
else
|
||||
HTM_OPTION (HTM_Type_UNSIGNED,&ActionUnsigned,
|
||||
Action == Stats->NumAction ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%04u: %s > %s > %s",
|
||||
(unsigned) Action,Tab_GetTxt (Tab),
|
||||
Act_GetTitleAction (Action),
|
||||
|
@ -741,7 +744,7 @@ static void Sta_WriteSelectorCountType (const struct Sta_Stats *Stats)
|
|||
unsigned StatCountTypeUnsigned;
|
||||
|
||||
/**** Count type *****/
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"CountType\" name=\"CountType\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -753,7 +756,7 @@ static void Sta_WriteSelectorCountType (const struct Sta_Stats *Stats)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&StatCountTypeUnsigned,
|
||||
StatCountType == Stats->CountType ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_STAT_TYPE_COUNT_SMALL[StatCountType]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
@ -1658,7 +1661,7 @@ static void Sta_ShowDistrAccessesPerDayAndHour (const struct Sta_Stats *Stats,
|
|||
|
||||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
HTM_TxtColonNBSP (Txt_Color_of_the_graphic);
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"ColorType\"");
|
||||
for (ColorType = (Sta_ColorType_t) 0;
|
||||
ColorType <= (Sta_ColorType_t) (Sta_NUM_COLOR_TYPES - 1);
|
||||
|
@ -1668,7 +1671,7 @@ static void Sta_ShowDistrAccessesPerDayAndHour (const struct Sta_Stats *Stats,
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&ColorTypeUnsigned,
|
||||
ColorType == SelectedColorType ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_STAT_COLOR_TYPES[ColorType]);
|
||||
}
|
||||
HTM_SELECT_End ();
|
||||
|
|
|
@ -615,7 +615,7 @@ static void Svy_ShowOneSurvey (struct Svy_Surveys *Surveys,
|
|||
1 << Rol_NET |
|
||||
1 << Rol_TCH,
|
||||
Surveys->Svy.Roles,
|
||||
Cns_ENABLED,
|
||||
HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE);
|
||||
HTM_DIV_End ();
|
||||
|
||||
|
@ -1659,7 +1659,7 @@ void Svy_ReqCreatOrEditSvy (void)
|
|||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_INPUT_TEXT ("Title",Svy_MAX_CHARS_SURVEY_TITLE,Surveys.Svy.Title,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Title\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -1681,7 +1681,8 @@ void Svy_ReqCreatOrEditSvy (void)
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"Frm_C2 LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Txt\" name=\"Txt\" rows=\"5\""
|
||||
" class=\"Frm_C2_INPUT INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
if (!ItsANewSurvey)
|
||||
|
@ -1703,7 +1704,7 @@ void Svy_ReqCreatOrEditSvy (void)
|
|||
1 << Rol_NET |
|
||||
1 << Rol_TCH,
|
||||
Surveys.Svy.Roles,
|
||||
Cns_DISABLED,
|
||||
HTM_DISABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE);
|
||||
HTM_TD_End ();
|
||||
HTM_TR_End ();
|
||||
|
@ -1840,7 +1841,7 @@ static void Svy_ShowLstGrpsToEditSurvey (long SvyCod)
|
|||
"SvyCod",
|
||||
SvyCod) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,
|
||||
HTM_INPUT_CHECKBOX ("WholeCrs",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"WholeCrs\" value=\"Y\""
|
||||
" onclick=\"uncheckChildren(this,'GrpCods')\"");
|
||||
|
@ -2267,7 +2268,8 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
|
|||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"LT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"Txt\" name=\"Txt\""
|
||||
" cols=\"60\" rows=\"4\""
|
||||
" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
@ -2288,7 +2290,7 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
|
|||
HTM_LABEL_Begin (NULL);
|
||||
Checked = (AnsType == SvyQst->AnswerType) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("AnswerType",Checked,
|
||||
HTM_INPUT_RADIO ("AnswerType",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"",(unsigned) AnsType);
|
||||
HTM_Txt (Txt_SURVEY_STR_ANSWER_TYPES[AnsType]);
|
||||
|
@ -2321,7 +2323,9 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
|
|||
|
||||
/* Answer text */
|
||||
HTM_TD_Begin ("class=\"RT\"");
|
||||
HTM_TEXTAREA_Begin ("id=\"AnsStr%u\" name=\"AnsStr%u\" cols=\"50\" rows=\"1\"",
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"id=\"AnsStr%u\" name=\"AnsStr%u\""
|
||||
" cols=\"50\" rows=\"1\"",
|
||||
NumAns,NumAns);
|
||||
if (SvyQst->AnsChoice[NumAns].Text)
|
||||
HTM_Txt (SvyQst->AnsChoice[NumAns].Text);
|
||||
|
@ -2342,7 +2346,7 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
|
|||
HTM_LABEL_Begin (NULL);
|
||||
Checked = SvyQst->CommentsAllowed ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("Comment",Checked,
|
||||
HTM_INPUT_CHECKBOX ("Comment",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_Txt (Txt_Comments_allowed);
|
||||
|
@ -2859,7 +2863,7 @@ static void Svy_WriteAnswersOfAQst (struct Svy_Survey *Svy,
|
|||
switch (SvyQst->AnswerType)
|
||||
{
|
||||
case Svy_ANS_UNIQUE_CHOICE:
|
||||
HTM_INPUT_RADIO (StrAns,Cns_UNCHECKED,
|
||||
HTM_INPUT_RADIO (StrAns,Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"id=\"Ans%010u_%u\" value=\"%u\""
|
||||
" onclick=\"selectUnselectRadio(this,this.form.Ans%010u,%u)\"",
|
||||
|
@ -2868,7 +2872,7 @@ static void Svy_WriteAnswersOfAQst (struct Svy_Survey *Svy,
|
|||
(unsigned) SvyQst->QstCod,NumAnswers);
|
||||
break;
|
||||
case Svy_ANS_MULTIPLE_CHOICE:
|
||||
HTM_INPUT_CHECKBOX (StrAns,Cns_UNCHECKED,
|
||||
HTM_INPUT_CHECKBOX (StrAns,Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"Ans%010u_%u\" value=\"%u\"",
|
||||
(unsigned) SvyQst->QstCod,NumAns,
|
||||
|
@ -2976,12 +2980,12 @@ static void Svy_WriteCommentsOfAQst (struct Svy_Survey *Svy,
|
|||
}
|
||||
break;
|
||||
case Frm_PUT_FORM:
|
||||
HTM_TEXTAREA_Begin ("name=\"Com%010u\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"Com%010u\""
|
||||
" cols=\"60\" rows=\"4\""
|
||||
" class=\"INPUT_%s\""
|
||||
" placeholder=\"%s…\"",
|
||||
(unsigned) SvyQst->QstCod,
|
||||
The_GetSuffix (),
|
||||
(unsigned) SvyQst->QstCod,The_GetSuffix (),
|
||||
Txt_Comments);
|
||||
HTM_TEXTAREA_End ();
|
||||
break;
|
||||
|
|
|
@ -207,7 +207,8 @@ void Syl_PutFormWhichSyllabus (Syl_WhichSyllabus_t WhichSyllabus)
|
|||
HTM_LABEL_Begin (NULL);
|
||||
Checked = (WhichSyl == WhichSyllabus) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("WhichSyllabus",Checked,HTM_SUBMIT_ON_CLICK,
|
||||
HTM_INPUT_RADIO ("WhichSyllabus",Checked,HTM_ENABLED,
|
||||
HTM_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"",(unsigned) WhichSyl);
|
||||
HTM_Txt (Txt_SYLLABUS_WHICH_SYLLABUS[WhichSyl]);
|
||||
HTM_LABEL_End ();
|
||||
|
@ -819,7 +820,7 @@ static void Syl_PutFormItemSyllabus (struct Syl_Syllabus *Syllabus,
|
|||
Syllabus->ParNumItem = NumItem;
|
||||
Syl_PutParsSyllabus (Syllabus);
|
||||
HTM_INPUT_TEXT ("Txt",Syl_MAX_CHARS_TEXT_ITEM,Text,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"60\" class=\"INPUT_%s\" placeholder=\"%s\"%s",
|
||||
The_GetSuffix (),
|
||||
Txt_Enter_a_new_item_here,
|
||||
|
|
|
@ -310,7 +310,7 @@ void Tag_ShowFormSelTags (const struct Tag_Tags *Tags,
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
Checked = Tags->All ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("AllTags",Checked,
|
||||
HTM_INPUT_CHECKBOX ("AllTags",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\""
|
||||
" onclick=\"togglecheckChildren(this,'ChkTag');\"");
|
||||
|
@ -357,7 +357,7 @@ void Tag_ShowFormSelTags (const struct Tag_Tags *Tags,
|
|||
HTM_TD_Begin ("class=\"LT\"");
|
||||
HTM_LABEL_Begin ("class=\"DAT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_INPUT_CHECKBOX ("ChkTag",Checked,
|
||||
HTM_INPUT_CHECKBOX ("ChkTag",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"%s\""
|
||||
" onclick=\"checkParent(this,'AllTags');\"",
|
||||
|
@ -424,7 +424,7 @@ void Tag_ShowFormEditTags (void)
|
|||
Frm_BeginForm (ActRenTag);
|
||||
Par_PutParString (NULL,"OldTagTxt",row[1]);
|
||||
HTM_INPUT_TEXT ("NewTagTxt",Tag_MAX_CHARS_TAG,row[1],
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"size=\"36\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -187,8 +187,9 @@ static void Tst_ShowFormNumQsts (void)
|
|||
(long) TstCfg_GetConfigMin (),
|
||||
(long) TstCfg_GetConfigMax (),
|
||||
(long) TstCfg_GetConfigDef (),
|
||||
(TstCfg_GetConfigMin () == TstCfg_GetConfigMax ()) ? HTM_DISABLED :
|
||||
HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
TstCfg_GetConfigMin () == TstCfg_GetConfigMax (),
|
||||
"id=\"NumQst\" class=\"Frm_C2_INPUT INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
The_GetSuffix ());
|
||||
|
|
|
@ -183,7 +183,7 @@ static void TstCfg_ShowFormConfig (void)
|
|||
HTM_LABEL_Begin ("class=\"DAT_%s\"",The_GetSuffix ());
|
||||
Checked = (Pluggable == TstCfg_GetConfigPluggable ()) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("Pluggable",Checked,
|
||||
HTM_INPUT_RADIO ("Pluggable",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"%s",(unsigned) Pluggable);
|
||||
HTM_Txt (Txt_TST_PLUGGABLE[Pluggable]);
|
||||
|
@ -220,7 +220,7 @@ static void TstCfg_ShowFormConfig (void)
|
|||
snprintf (StrMinTimeNxtTstPerQst,sizeof (StrMinTimeNxtTstPerQst),"%lu",
|
||||
TstCfg_GetConfigMinTimeNxtTstPerQst ());
|
||||
HTM_INPUT_TEXT ("MinTimeNxtTstPerQst",Cns_MAX_DECIMAL_DIGITS_ULONG,StrMinTimeNxtTstPerQst,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"MinTimeNxtTstPerQst\" size=\"7\""
|
||||
" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
|
@ -273,7 +273,7 @@ static void TstCfg_PutInputFieldNumQsts (const char *Field,const char *Label,
|
|||
HTM_TD_Begin ("class=\"LM\"");
|
||||
snprintf (StrValue,sizeof (StrValue),"%u",Value);
|
||||
HTM_INPUT_TEXT (Field,Cns_MAX_DECIMAL_DIGITS_UINT,StrValue,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"%s\" size=\"3\" class=\"INPUT_%s\""
|
||||
" required=\"required\"",
|
||||
Field,The_GetSuffix ());
|
||||
|
|
|
@ -352,9 +352,8 @@ static void TstPrn_WriteIntAnsToFill (const struct TstPrn_PrintedQuestion *Print
|
|||
/***** Write input field for the answer *****/
|
||||
snprintf (StrAns,sizeof (StrAns),"Ans%010u",QstInd);
|
||||
HTM_INPUT_TEXT (StrAns,11,PrintedQuestion->StrAnswers,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"11\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"11\" class=\"INPUT_%s\"",The_GetSuffix ());
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -370,9 +369,8 @@ static void TstPrn_WriteFltAnsToFill (const struct TstPrn_PrintedQuestion *Print
|
|||
/***** Write input field for the answer *****/
|
||||
snprintf (StrAns,sizeof (StrAns),"Ans%010u",QstInd);
|
||||
HTM_INPUT_TEXT (StrAns,Qst_MAX_BYTES_FLOAT_ANSWER,PrintedQuestion->StrAnswers,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"11\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"11\" class=\"INPUT_%s\"",The_GetSuffix ());
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -389,23 +387,23 @@ static void TstPrn_WriteTF_AnsToFill (const struct TstPrn_PrintedQuestion *Print
|
|||
/* Initially user has not answered the question ==> initially all answers will be blank.
|
||||
If the user does not confirm the submission of their exam ==>
|
||||
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"Ans%010u\" class=\"INPUT_%s\"",
|
||||
QstInd,The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"" ,
|
||||
PrintedQuestion->StrAnswers[0] == '\0' ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
" ");
|
||||
HTM_OPTION (HTM_Type_STRING,"T",
|
||||
PrintedQuestion->StrAnswers[0] == 'T' ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_TF_QST[0]);
|
||||
HTM_OPTION (HTM_Type_STRING,"F",
|
||||
PrintedQuestion->StrAnswers[0] == 'F' ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_TF_QST[1]);
|
||||
HTM_SELECT_End ();
|
||||
}
|
||||
|
@ -455,7 +453,8 @@ static void TstPrn_WriteChoAnsToFill (const struct TstPrn_PrintedQuestion *Print
|
|||
switch (Question->Answer.Type)
|
||||
{
|
||||
case Qst_ANS_UNIQUE_CHOICE:
|
||||
HTM_INPUT_RADIO (StrAns,UsrAnswers[Indexes[NumOpt]],
|
||||
HTM_INPUT_RADIO (StrAns,
|
||||
UsrAnswers[Indexes[NumOpt]],HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"id=\"%s\" value=\"%u\""
|
||||
" onclick=\"selectUnselectRadio(this,this.form.Ans%010u,%u);\"",
|
||||
|
@ -463,7 +462,8 @@ static void TstPrn_WriteChoAnsToFill (const struct TstPrn_PrintedQuestion *Print
|
|||
QstInd,Question->Answer.NumOptions);
|
||||
break;
|
||||
case Qst_ANS_MULTIPLE_CHOICE:
|
||||
HTM_INPUT_CHECKBOX (StrAns,UsrAnswers[Indexes[NumOpt]],
|
||||
HTM_INPUT_CHECKBOX (StrAns,
|
||||
UsrAnswers[Indexes[NumOpt]],HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"%s\" value=\"%u\"",
|
||||
Id,Indexes[NumOpt]);
|
||||
|
@ -513,9 +513,8 @@ static void TstPrn_WriteTxtAnsToFill (const struct TstPrn_PrintedQuestion *Print
|
|||
/***** Write input field for the answer *****/
|
||||
snprintf (StrAns,sizeof (StrAns),"Ans%010u",QstInd);
|
||||
HTM_INPUT_TEXT (StrAns,Qst_MAX_CHARS_ANSWERS_ONE_QST,PrintedQuestion->StrAnswers,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"40\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"size=\"40\" class=\"INPUT_%s\"",The_GetSuffix ());
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -532,7 +531,8 @@ static void TstPrn_PutCheckBoxAllowTeachers (bool AllowTeachers)
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
Checked = AllowTeachers ? Cns_CHECKED : // Teachers can see test exam
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("AllowTchs",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("AllowTchs",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_NBSPTxt (Txt_Allow_teachers_to_consult_this_test);
|
||||
HTM_LABEL_End ();
|
||||
|
|
|
@ -113,7 +113,8 @@ void TstVis_PutVisibilityCheckboxes (unsigned SelectedVisibility)
|
|||
/* Checkbox with icon and text */
|
||||
Checked = ((SelectedVisibility & (1 << Visibility)) != 0) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("Visibility",Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("Visibility",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"%u\"",(unsigned) Visibility);
|
||||
Ico_PutIconOn (Icons[Visibility],Ico_BLACK,
|
||||
Txt_TST_STR_VISIBILITY[Visibility]);
|
||||
|
|
|
@ -226,11 +226,11 @@ void TmlPst_PutTextarea (const char *Placeholder,const char *ClassTextArea)
|
|||
Frm_SetUniqueId (IdDivImgButton);
|
||||
|
||||
/***** Textarea to write the content *****/
|
||||
HTM_TEXTAREA_Begin ("name=\"Txt\" rows=\"1\" maxlength=\"%u\""
|
||||
HTM_TEXTAREA_Begin (HTM_ENABLED,
|
||||
"name=\"Txt\" rows=\"1\" maxlength=\"%u\""
|
||||
" placeholder=\"%s…\" class=\"%s\""
|
||||
" onfocus=\"expandTextarea(this,'%s','6');\"",
|
||||
TmlPst_MAX_CHARS_IN_POST,
|
||||
Placeholder,ClassTextArea,
|
||||
TmlPst_MAX_CHARS_IN_POST,Placeholder,ClassTextArea,
|
||||
IdDivImgButton);
|
||||
HTM_TEXTAREA_End ();
|
||||
|
||||
|
|
|
@ -1519,7 +1519,7 @@ static void Tmt_TimeTableDrawCellEdit (const struct Tmt_Timetable *Timetable,
|
|||
Par_PutParUnsigned (NULL,"TTCol",WhichCell->Column );
|
||||
|
||||
/***** Class type *****/
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"TTTyp\" class=\"Tmt_TYP INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
for (CT = (Tmt_ClassType_t) 0;
|
||||
|
@ -1531,7 +1531,7 @@ static void Tmt_TimeTableDrawCellEdit (const struct Tmt_Timetable *Timetable,
|
|||
HTM_OPTION (HTM_Type_STRING,Tmt_DB_ClassType[CT],
|
||||
CT == ClassType ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_TIMETABLE_CLASS_TYPES[CT]);
|
||||
HTM_SELECT_End ();
|
||||
|
||||
|
@ -1556,7 +1556,7 @@ static void Tmt_TimeTableDrawCellEdit (const struct Tmt_Timetable *Timetable,
|
|||
else
|
||||
{
|
||||
/***** Class duration *****/
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"TTDur\" class=\"Tmt_DUR INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
for (i = WhichCell->Interval +
|
||||
|
@ -1580,7 +1580,7 @@ static void Tmt_TimeTableDrawCellEdit (const struct Tmt_Timetable *Timetable,
|
|||
HTM_OPTION (HTM_Type_STRING,TTDur,
|
||||
Dur == DurationNumIntervals ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",TTDur);
|
||||
free (TTDur);
|
||||
}
|
||||
|
@ -1600,15 +1600,14 @@ static void Tmt_TimeTableDrawCellEdit (const struct Tmt_Timetable *Timetable,
|
|||
HTM_LABEL_Begin ("for=\"TTGrp%s\"",CellStr);
|
||||
HTM_Txt (Txt_Group);
|
||||
HTM_LABEL_End ();
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"id=\"TTGrp%s\" name=\"%s\""
|
||||
" class=\"Tmt_GRP INPUT_%s\"",
|
||||
CellStr,Par_CodeStr[ParCod_Grp],
|
||||
The_GetSuffix ());
|
||||
CellStr,Par_CodeStr[ParCod_Grp],The_GetSuffix ());
|
||||
HTM_OPTION (HTM_Type_STRING,"-1",
|
||||
GrpCod <= 0 ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s",Txt_All_groups);
|
||||
for (NumGrpTyp = 0;
|
||||
NumGrpTyp < Gbl.Crs.Grps.GrpTypes.NumGrpTypes;
|
||||
|
@ -1634,7 +1633,7 @@ static void Tmt_TimeTableDrawCellEdit (const struct Tmt_Timetable *Timetable,
|
|||
HTM_OPTION (HTM_Type_LONG,&Grp->GrpCod,
|
||||
GrpCod == Grp->GrpCod ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%s %s%s",
|
||||
GrpTyp->GrpTypName,Grp->GrpName,Room);
|
||||
free (Room);
|
||||
|
@ -1649,7 +1648,7 @@ static void Tmt_TimeTableDrawCellEdit (const struct Tmt_Timetable *Timetable,
|
|||
HTM_LABEL_End ();
|
||||
HTM_INPUT_TEXT ("TTInf",Tmt_MAX_CHARS_INFO,Info ? Info :
|
||||
"",
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"id=\"TTInf%s\" size=\"1\""
|
||||
" class=\"Tmt_INF INPUT_%s\"",
|
||||
CellStr,The_GetSuffix ());
|
||||
|
@ -1664,7 +1663,7 @@ static void Tmt_TimeTableDrawCellEdit (const struct Tmt_Timetable *Timetable,
|
|||
HTM_Txt (Txt_Info);
|
||||
HTM_LABEL_End ();
|
||||
HTM_INPUT_TEXT ("TTInf",Tmt_MAX_CHARS_INFO,Info,
|
||||
HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"id=\"TTInf%s\" size=\"12\""
|
||||
" class=\"Tmt_INF INPUT_%s\"",
|
||||
CellStr,The_GetSuffix ());
|
||||
|
|
30
swad_user.c
30
swad_user.c
|
@ -1165,12 +1165,11 @@ void Usr_WriteFormLogin (Act_Action_t NextAction,void (*FuncPars) (void))
|
|||
Txt_User[Usr_SEX_UNKNOWN],"CONTEXT_ICO16x16");
|
||||
HTM_LABEL_End ();
|
||||
HTM_INPUT_TEXT ("UsrId",Cns_MAX_CHARS_EMAIL_ADDRESS,Gbl.Usrs.Me.UsrIdLogin,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"id=\"UsrId\" size=\"16\" placeholder=\"%s\""
|
||||
" class=\"INPUT_%s\" autofocus=\"autofocus\""
|
||||
" required=\"required\"",
|
||||
Txt_nick_email_or_ID,
|
||||
The_GetSuffix ());
|
||||
Txt_nick_email_or_ID,The_GetSuffix ());
|
||||
HTM_DIV_End ();
|
||||
|
||||
/***** User's password *****/
|
||||
|
@ -3918,7 +3917,8 @@ static void Usr_PutCheckboxToSelectAllUsers (struct Usr_SelectedUsrs *SelectedUs
|
|||
if (Usr_NameSelUnsel[Role] && Usr_ParUsrCod[Role])
|
||||
{
|
||||
Usr_BuildParName (&ParName,Usr_ParUsrCod[Role],SelectedUsrs->ParSuffix);
|
||||
HTM_INPUT_CHECKBOX (Usr_NameSelUnsel[Role],Cns_UNCHECKED,
|
||||
HTM_INPUT_CHECKBOX (Usr_NameSelUnsel[Role],
|
||||
Cns_UNCHECKED,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"\""
|
||||
" onclick=\"togglecheckChildren(this,'%s')\"",
|
||||
|
@ -3998,7 +3998,7 @@ static void Usr_PutCheckboxToSelectUser (Rol_Role_t Role,
|
|||
|
||||
/***** Check box *****/
|
||||
Usr_BuildParName (&ParName,Usr_ParUsrCod[Role],SelectedUsrs->ParSuffix);
|
||||
HTM_INPUT_CHECKBOX (ParName,Checked,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX (ParName,Checked,HTM_ENABLED,HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
"value=\"%s\" onclick=\"checkParent(this,'%s')\"",
|
||||
EncryptedUsrCod,Usr_NameSelUnsel[Role]);
|
||||
free (ParName);
|
||||
|
@ -4022,7 +4022,7 @@ static void Usr_PutCheckboxListWithPhotos (void)
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
Checked = Gbl.Usrs.Listing.WithPhotos ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_CHECKBOX ("WithPhotos",Checked,HTM_SUBMIT_ON_CHANGE,
|
||||
HTM_INPUT_CHECKBOX ("WithPhotos",Checked,HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,
|
||||
"value=\"Y\"");
|
||||
HTM_Txt (Txt_Display_photos);
|
||||
HTM_LABEL_End ();
|
||||
|
@ -5608,7 +5608,8 @@ static void Usr_ShowOneListUsrsOption (Usr_ListUsrsOption_t ListUsrsAction,
|
|||
HTM_LABEL_Begin (NULL);
|
||||
Checked = (ListUsrsAction == Gbl.Usrs.Selected.Option) ? Cns_CHECKED :
|
||||
Cns_UNCHECKED;
|
||||
HTM_INPUT_RADIO ("ListUsrsAction",Checked,HTM_DONT_SUBMIT_ON_CLICK,
|
||||
HTM_INPUT_RADIO ("ListUsrsAction",Checked,HTM_ENABLED,
|
||||
HTM_DONT_SUBMIT_ON_CLICK,
|
||||
"value=\"%u\"",(unsigned) ListUsrsAction);
|
||||
HTM_Txt (Label);
|
||||
HTM_LABEL_End ();
|
||||
|
@ -6189,7 +6190,7 @@ void Usr_PutSelectorNumColsClassPhoto (void)
|
|||
HTM_LABEL_Begin ("class=\"FORM_IN_%s\"",The_GetSuffix ());
|
||||
|
||||
/***** Begin selector *****/
|
||||
HTM_SELECT_Begin (HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
HTM_SELECT_Begin (HTM_ENABLED,HTM_SUBMIT_ON_CHANGE,NULL,
|
||||
"name=\"ColsClassPhoto\" class=\"INPUT_%s\"",
|
||||
The_GetSuffix ());
|
||||
|
||||
|
@ -6200,7 +6201,7 @@ void Usr_PutSelectorNumColsClassPhoto (void)
|
|||
HTM_OPTION (HTM_Type_UNSIGNED,&Cols,
|
||||
Cols == Gbl.Usrs.ClassPhoto.Cols ? HTM_OPTION_SELECTED :
|
||||
HTM_OPTION_UNSELECTED,
|
||||
HTM_OPTION_ENABLED,
|
||||
HTM_ENABLED,
|
||||
"%u",Cols);
|
||||
|
||||
/***** End selector *****/
|
||||
|
@ -6310,8 +6311,7 @@ unsigned Usr_GetTotalNumberOfUsers (void)
|
|||
/*****************************************************************************/
|
||||
// Input: UsrDat must hold user's data
|
||||
|
||||
void Usr_WriteAuthor (struct Usr_Data *UsrDat,
|
||||
Cns_Disabled_t Disabled)
|
||||
void Usr_WriteAuthor (struct Usr_Data *UsrDat,For_Disabled_t Disabled)
|
||||
{
|
||||
extern const char *Txt_Unknown_or_without_photo;
|
||||
static const char *ClassPhoto[PhoSha_NUM_SHAPES] =
|
||||
|
@ -6321,13 +6321,7 @@ void Usr_WriteAuthor (struct Usr_Data *UsrDat,
|
|||
[PhoSha_SHAPE_OVAL ] = "PHOTOO30x40",
|
||||
[PhoSha_SHAPE_RECTANGLE] = "PHOTOR30x40",
|
||||
};
|
||||
bool WriteAuthor;
|
||||
|
||||
/***** Write author name or don't write it? *****/
|
||||
WriteAuthor = false;
|
||||
if (Disabled == Cns_ENABLED)
|
||||
if (UsrDat->UsrCod > 0)
|
||||
WriteAuthor = true;
|
||||
bool WriteAuthor = (Disabled == For_ENABLED && UsrDat->UsrCod > 0);
|
||||
|
||||
/***** Begin table and row *****/
|
||||
HTM_TABLE_BeginPadding (2);
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
#include "swad_cryptography.h"
|
||||
#include "swad_date.h"
|
||||
#include "swad_degree.h"
|
||||
#include "swad_forum.h"
|
||||
#include "swad_icon.h"
|
||||
#include "swad_language.h"
|
||||
#include "swad_layout.h"
|
||||
|
@ -334,8 +335,7 @@ void Usr_ShowWarningNoUsersFound (Rol_Role_t Role);
|
|||
|
||||
unsigned Usr_GetTotalNumberOfUsers (void);
|
||||
|
||||
void Usr_WriteAuthor (struct Usr_Data *UsrDat,
|
||||
Cns_Disabled_t Disabled);
|
||||
void Usr_WriteAuthor (struct Usr_Data *UsrDat,For_Disabled_t Disabled);
|
||||
void Usr_WriteAuthor1Line (long UsrCod,HidVis_HiddenOrVisible_t HiddenOrVisible);
|
||||
|
||||
void Usr_ShowTableCellWithUsrData (struct Usr_Data *UsrDat,unsigned NumRows);
|
||||
|
|
Loading…
Reference in New Issue
Block a user