swad-core/swad_exam.h

122 lines
4.1 KiB
C
Raw Normal View History

2020-04-20 01:26:46 +02:00
// swad_exam.h: exams
2014-12-01 23:55:08 +01:00
#ifndef _SWAD_EXA
#define _SWAD_EXA
/*
2020-04-20 01:26:46 +02:00
SWAD (Shared Workspace At a Distance),
2014-12-01 23:55:08 +01:00
is a web platform developed at the University of Granada (Spain),
and used to support university teaching.
This file is part of SWAD core.
2020-01-01 14:53:57 +01:00
Copyright (C) 1999-2020 Antonio Ca<EFBFBD>as Vargas
2014-12-01 23:55:08 +01:00
This program is free software: you can redistribute it and/or modify
2020-04-20 01:26:46 +02:00
it under the terms of the GNU Affero General 3 License as
2014-12-01 23:55:08 +01:00
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
2020-04-20 01:26:46 +02:00
2014-12-01 23:55:08 +01:00
/*****************************************************************************/
/********************************* Headers ***********************************/
/*****************************************************************************/
2020-05-05 21:49:00 +02:00
// #include "swad_date.h"
// #include "swad_exam_event.h"
#include "swad_exam_type.h"
// #include "swad_scope.h"
2016-12-12 02:21:41 +01:00
2014-12-01 23:55:08 +01:00
/*****************************************************************************/
/************************** Public types and constants ***********************/
/*****************************************************************************/
/*****************************************************************************/
/***************************** Public prototypes *****************************/
/*****************************************************************************/
2020-04-20 01:26:46 +02:00
void Exa_ResetExams (struct Exa_Exams *Exams);
2020-04-23 23:09:28 +02:00
void Exa_ResetExam (struct Exa_Exam *Exam);
2020-04-20 01:26:46 +02:00
void Exa_SeeAllExams (void);
void Exa_SeeOneExam (void);
void Exa_ShowOnlyOneExam (struct Exa_Exams *Exams,
struct Exa_Exam *Exam,
2020-05-05 21:49:00 +02:00
struct ExaEvt_Event *Event,
bool PutFormEvent);
2020-04-20 01:26:46 +02:00
void Exa_ShowOnlyOneExamBegin (struct Exa_Exams *Exams,
struct Exa_Exam *Exam,
2020-05-05 21:49:00 +02:00
struct ExaEvt_Event *Event,
bool PutFormEvent);
2020-04-20 01:26:46 +02:00
void Exa_ShowOnlyOneExamEnd (void);
void Exa_SetCurrentExaCod (long ExaCod);
2020-04-27 14:20:21 +02:00
void ExaSet_PutParamsOneSet (void *Exams);
2020-04-20 01:26:46 +02:00
void Exa_PutParams (void *Exams);
void Exa_PutParamExamCod (long ExaCod);
long Exa_GetParamExamCod (void);
2020-04-25 01:36:53 +02:00
long ExaSet_GetParamSetCod (void);
void Exa_GetParams (struct Exa_Exams *Exams);
2020-04-20 01:26:46 +02:00
void Exa_GetListExams (struct Exa_Exams *Exams,Exa_Order_t SelectedOrder);
void Exa_GetListSelectedExaCods (struct Exa_Exams *Exams);
void Exa_GetDataOfExamByCod (struct Exa_Exam *Exam);
void Exa_GetDataOfExamByFolder (struct Exa_Exam *Exam);
void Exa_FreeListExams (struct Exa_Exams *Exams);
void Exa_AskRemExam (void);
void Exa_RemoveExam (void);
void Exa_RemoveExamsCrs (long CrsCod);
void Exa_HideExam (void);
void Exa_UnhideExam (void);
void Exa_RequestCreatOrEditExam (void);
2020-05-05 21:49:00 +02:00
void ExaSet_ReceiveFormSet (void);
2020-04-27 02:09:56 +02:00
void ExaSet_ChangeSetTitle (void);
2020-04-27 03:16:55 +02:00
void ExaSet_ChangeNumQstsToExam (void);
2020-04-27 02:09:56 +02:00
2020-05-05 21:49:00 +02:00
void Exa_ReceiveFormExam (void);
2020-04-20 01:26:46 +02:00
2020-04-26 03:07:55 +02:00
unsigned ExaSet_GetNumSetsExam (long ExaCod);
unsigned ExaSet_GetNumQstsExam (long ExaCod);
2020-04-24 02:49:51 +02:00
2020-04-25 01:36:53 +02:00
void ExaSet_RequestCreatOrEditSet (void);
2020-04-27 14:20:21 +02:00
void ExaSet_ReqSelectQstsToAddToSet (void);
void ExaSet_ListQstsToAddToSet (void);
2020-04-20 01:26:46 +02:00
void Exa_PutParamQstInd (unsigned QstInd);
unsigned Exa_GetParamQstInd (void);
long Exa_GetQstCodFromQstInd (long ExaCod,unsigned QstInd);
2020-04-26 11:56:52 +02:00
2020-04-20 01:26:46 +02:00
unsigned Exa_GetPrevQuestionIndexInExam (long ExaCod,unsigned QstInd);
unsigned Exa_GetNextQuestionIndexInExam (long ExaCod,unsigned QstInd);
2020-04-27 14:20:21 +02:00
void ExaSet_AddQstsToSet (void);
2020-04-24 02:49:51 +02:00
2020-04-25 01:36:53 +02:00
void ExaSet_RequestRemoveSet (void);
void ExaSet_RemoveSet (void);
2020-04-24 02:49:51 +02:00
2020-04-25 01:36:53 +02:00
void ExaSet_MoveUpSet (void);
void ExaSet_MoveDownSet (void);
2020-04-20 01:26:46 +02:00
2020-04-27 19:37:49 +02:00
void ExaSet_RequestRemoveQstFromSet (void);
void ExaSet_RemoveQstFromSet (void);
2020-04-12 20:08:37 +02:00
2020-04-20 01:26:46 +02:00
unsigned Exa_GetNumCoursesWithExams (Hie_Level_t Scope);
unsigned Exa_GetNumExams (Hie_Level_t Scope);
double Exa_GetNumQstsPerCrsExam (Hie_Level_t Scope);
2016-06-01 19:34:44 +02:00
2020-04-20 01:26:46 +02:00
void Exa_ShowTstTagsPresentInAnExam (long ExaCod);
2019-03-25 19:05:10 +01:00
2020-04-20 01:26:46 +02:00
void Exa_GetScoreRange (long ExaCod,double *MinScore,double *MaxScore);
2014-12-01 23:55:08 +01:00
#endif