Version19.10.3

This commit is contained in:
Antonio Cañas Vargas 2019-09-23 20:47:42 +02:00
parent 3406d8be51
commit 1e67b5d3e5
4 changed files with 25 additions and 22 deletions

View File

@ -470,10 +470,11 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 19.10.2 (2019-09-23)"
#define Log_PLATFORM_VERSION "SWAD 19.10.3 (2019-09-23)"
#define CSS_FILE "swad19.3.css"
#define JS_FILE "swad18.130.2.js"
/*
Version 19.10.3: Sep 23, 2019 View matches results. Not finished. (245815 lines)
Version 19.10.2: Sep 23, 2019 View matches results. Not finished. (245812 lines)
Version 19.10.1: Sep 23, 2019 View matches results. Not finished. (245724 lines)
Version 19.10: Sep 23, 2019 View matches results. Not finished. (245709 lines)

View File

@ -3133,6 +3133,7 @@ void Mch_ShowOneMchResult (void)
Usr_MeOrOther_t MeOrOther;
struct UsrData *UsrDat;
time_t TimeUTC[Dat_NUM_START_END_TIME]; // Match result UTC date-time
unsigned NumQsts;
unsigned NumQstsNotBlank;
double TotalScore;
bool ShowPhoto;
@ -3163,7 +3164,7 @@ void Mch_ShowOneMchResult (void)
/***** Get test result data *****/
Mch_GetMatchResultDataByMchCod (MchCod,UsrDat->UsrCod,
TimeUTC,
&Gbl.Test.NumQsts,
&NumQsts,
&NumQstsNotBlank,
&TotalScore);
Gbl.Test.Config.Feedback = Tst_FEEDBACK_FULL_FEEDBACK; // Initialize feedback to maximum
@ -3299,7 +3300,7 @@ void Mch_ShowOneMchResult (void)
"</td>"
"</tr>",
Txt_Questions,
Gbl.Test.NumQsts,NumQstsNotBlank,Txt_non_blank_QUESTIONS);
NumQsts,NumQstsNotBlank,Txt_non_blank_QUESTIONS);
/* Score */
fprintf (Gbl.F.Out,"<tr>"
@ -3311,8 +3312,8 @@ void Mch_ShowOneMchResult (void)
if (ICanViewScore)
fprintf (Gbl.F.Out,"%.2lf (%.2lf",
TotalScore,
Gbl.Test.NumQsts ? TotalScore * Tst_SCORE_MAX / (double) Gbl.Test.NumQsts :
0.0);
NumQsts ? TotalScore * Tst_SCORE_MAX / (double) NumQsts :
0.0);
else
fprintf (Gbl.F.Out,"? (?"); // No feedback
fprintf (Gbl.F.Out," %s %u)</td>"
@ -3320,11 +3321,11 @@ void Mch_ShowOneMchResult (void)
Txt_out_of_PART_OF_A_SCORE,Tst_SCORE_MAX);
/***** Write answers and solutions *****/
// Tst_ShowTestResult (TstTimeUTC); // TODO: Change to matches results
Tst_ShowTestResult (NumQsts,TimeUTC[Dat_START_TIME]);
/***** Write total mark of test *****/
// if (ICanViewScore)
// Tst_ShowTstTotalMark (TotalScore); // TODO: Change to matches results
if (ICanViewScore)
Tst_ShowTstTotalMark (NumQsts,TotalScore);
/***** End table *****/
Tbl_EndTable ();

View File

@ -149,7 +149,6 @@ extern struct Globals Gbl;
static void Tst_PutFormToViewTstResults (Act_Action_t Action);
static void Tst_GetQuestionsAndAnswersFromForm (void);
static void Tst_ShowTstTotalMark (double TotalScore);
static bool Tst_CheckIfNextTstAllowed (void);
static void Tst_SetTstStatus (unsigned NumTst,Tst_Status_t TstStatus);
static Tst_Status_t Tst_GetTstStatus (unsigned NumTst);
@ -297,9 +296,8 @@ static void Tst_ShowTestResultsSummaryRow (bool ItsMe,
unsigned NumTotalQsts,
unsigned NumTotalQstsNotBlank,
double TotalScoreOfAllTests);
static void Tst_ShowTestResult (time_t TstTimeUTC);
static void Tst_GetTestResultDataByTstCod (long TstCod,time_t *TstTimeUTC,
unsigned *NumQsts,unsigned *NumQstsNotBlank,double *Score);
unsigned *NumQstsNotBlank,double *Score);
static void Tst_StoreOneTestResultQstInDB (long TstCod,long QstCod,unsigned NumQst,double Score);
static void Tst_GetTestResultQuestionsFromDB (long TstCod);
@ -575,7 +573,7 @@ void Tst_AssessTest (void)
/***** Write total mark of test *****/
if (Gbl.Test.Config.Feedback != Tst_FEEDBACK_NOTHING)
Tst_ShowTstTotalMark (TotalScore);
Tst_ShowTstTotalMark (Gbl.Test.NumQsts,TotalScore);
/***** End box *****/
Box_EndBox ();
@ -639,11 +637,11 @@ static void Tst_GetQuestionsAndAnswersFromForm (void)
/************************** Show total mark of a test ************************/
/*****************************************************************************/
static void Tst_ShowTstTotalMark (double TotalScore)
void Tst_ShowTstTotalMark (unsigned NumQsts,double TotalScore)
{
extern const char *Txt_Score;
extern const char *Txt_out_of_PART_OF_A_SCORE;
double TotalScoreOverSCORE_MAX = TotalScore * Tst_SCORE_MAX / (double) Gbl.Test.NumQsts;
double TotalScoreOverSCORE_MAX = TotalScore * Tst_SCORE_MAX / (double) NumQsts;
/***** Write total mark ****/
fprintf (Gbl.F.Out,"<div class=\"DAT CENTER_MIDDLE\""
@ -8040,7 +8038,8 @@ void Tst_ShowOneTstResult (void)
Lay_ShowErrorAndExit ("Code of test is missing.");
/***** Get test result data *****/
Tst_GetTestResultDataByTstCod (TstCod,&TstTimeUTC,&Gbl.Test.NumQsts,&NumQstsNotBlank,&TotalScore);
Tst_GetTestResultDataByTstCod (TstCod,&TstTimeUTC,
&NumQstsNotBlank,&TotalScore);
Gbl.Test.Config.Feedback = Tst_FEEDBACK_FULL_FEEDBACK; // Initialize feedback to maximum
/***** Check if I can view this test result *****/
@ -8192,11 +8191,11 @@ void Tst_ShowOneTstResult (void)
"</tr>");
/***** Write answers and solutions *****/
Tst_ShowTestResult (TstTimeUTC);
Tst_ShowTestResult (Gbl.Test.NumQsts,TstTimeUTC);
/***** Write total mark of test *****/
if (ICanViewScore)
Tst_ShowTstTotalMark (TotalScore);
Tst_ShowTstTotalMark (Gbl.Test.NumQsts,TotalScore);
/***** End table *****/
Tbl_EndTable ();
@ -8212,7 +8211,7 @@ void Tst_ShowOneTstResult (void)
/************************* Show the result of a test *************************/
/*****************************************************************************/
static void Tst_ShowTestResult (time_t TstTimeUTC)
void Tst_ShowTestResult (unsigned NumQsts,time_t TstTimeUTC)
{
extern const char *Txt_Question_modified;
extern const char *Txt_Question_removed;
@ -8226,7 +8225,7 @@ static void Tst_ShowTestResult (time_t TstTimeUTC)
time_t EditTimeUTC;
for (NumQst = 0;
NumQst < Gbl.Test.NumQsts;
NumQst < NumQsts;
NumQst++)
{
Gbl.RowEvenOdd = NumQst % 2;
@ -8305,7 +8304,7 @@ static void Tst_ShowTestResult (time_t TstTimeUTC)
/*****************************************************************************/
static void Tst_GetTestResultDataByTstCod (long TstCod,time_t *TstTimeUTC,
unsigned *NumQsts,unsigned *NumQstsNotBlank,double *Score)
unsigned *NumQstsNotBlank,double *Score)
{
MYSQL_RES *mysql_res;
MYSQL_ROW row;
@ -8336,8 +8335,8 @@ static void Tst_GetTestResultDataByTstCod (long TstCod,time_t *TstTimeUTC,
*TstTimeUTC = Dat_GetUNIXTimeFromStr (row[2]);
/* Get number of questions (row[3]) */
if (sscanf (row[3],"%u",NumQsts) != 1)
*NumQsts = 0;
if (sscanf (row[3],"%u",&Gbl.Test.NumQsts) != 1)
Gbl.Test.NumQsts = 0;
/* Get number of questions not blank (row[4]) */
if (sscanf (row[4],"%u",NumQstsNotBlank) != 1)

View File

@ -142,6 +142,7 @@ struct Tst_Stats
void Tst_ShowFormAskTst (void);
void Tst_ShowNewTest (void);
void Tst_AssessTest (void);
void Tst_ShowTstTotalMark (unsigned NumQsts,double TotalScore);
void Tst_WriteQstStem (const char *Stem,const char *ClassStem);
void Tst_WriteQstFeedback (const char *Feedback,const char *ClassFeedback);
@ -211,6 +212,7 @@ void Tst_SelDatesToSeeMyTstResults (void);
void Tst_ShowMyTstResults (void);
void Tst_ShowUsrsTstResults (void);
void Tst_ShowOneTstResult (void);
void Tst_ShowTestResult (unsigned NumQsts,time_t TstTimeUTC);
void Tst_RemoveTestResultsMadeByUsrInAllCrss (long UsrCod);
void Tst_RemoveTestResultsMadeByUsrInCrs (long UsrCod,long CrsCod);
void Tst_RemoveCrsTestResults (long CrsCod);