diff --git a/css/swad19.136.css b/css/swad19.136.css index 4ee38369..051d193c 100644 --- a/css/swad19.136.css +++ b/css/swad19.136.css @@ -1590,6 +1590,12 @@ a:hover img.CENTRE_PHOTO_SHOW box-sizing:border-box; width:86px; } + +.PRG_TITLE_DESCRIPTION_WIDTH + { + box-sizing:border-box; + width:100%; + } /********************************** Notice ***********************************/ .NOTICE_HIGHLIGHT diff --git a/swad_agenda.c b/swad_agenda.c index 117ef319..541a9dbb 100644 --- a/swad_agenda.c +++ b/swad_agenda.c @@ -646,7 +646,7 @@ static void Agd_PutIconToCreateNewEvent (void) static void Agd_PutIconToViewEditMyFullAgenda (void) { - Ico_PutContextualIconToEdit (ActSeeMyAgd,NULL); + Ico_PutContextualIconToEdit (ActSeeMyAgd,NULL,NULL); } static void Agd_PutIconToShowQR (void) @@ -845,7 +845,7 @@ static void Agd_PutFormsToRemEditOneEvent (struct AgendaEvent *AgdEvent, Ico_PutContextualIconToHide (ActHidEvtMyAgd,Anchor,Agd_PutCurrentParamsMyAgenda); /***** Put form to edit event *****/ - Ico_PutContextualIconToEdit (ActEdiOneEvtMyAgd,Agd_PutCurrentParamsMyAgenda); + Ico_PutContextualIconToEdit (ActEdiOneEvtMyAgd,NULL,Agd_PutCurrentParamsMyAgenda); /***** Put form to make event public/private *****/ if (AgdEvent->Public) diff --git a/swad_assignment.c b/swad_assignment.c index a4bd48c8..c2c493c5 100644 --- a/swad_assignment.c +++ b/swad_assignment.c @@ -584,7 +584,7 @@ static void Asg_PutFormsToRemEditOneAsg (const struct Assignment *Asg, Ico_PutContextualIconToHide (ActHidAsg,Anchor,Asg_PutParams); /***** Put form to edit assignment *****/ - Ico_PutContextualIconToEdit (ActEdiOneAsg,Asg_PutParams); + Ico_PutContextualIconToEdit (ActEdiOneAsg,NULL,Asg_PutParams); /* falls through */ /* no break */ case Rol_STD: diff --git a/swad_attendance.c b/swad_attendance.c index cce15ae2..d5282786 100644 --- a/swad_attendance.c +++ b/swad_attendance.c @@ -554,7 +554,7 @@ static void Att_PutFormsToRemEditOneAttEvent (const struct AttendanceEvent *Att, Ico_PutContextualIconToHide (ActHidAtt,Anchor,Att_PutParams); /***** Put form to edit attendance event *****/ - Ico_PutContextualIconToEdit (ActEdiOneAtt,Att_PutParams); + Ico_PutContextualIconToEdit (ActEdiOneAtt,NULL,Att_PutParams); } /*****************************************************************************/ @@ -3114,7 +3114,7 @@ static void Att_ListEventsToSelect (void) static void Att_PutIconToEditAttEvents (void) { - Ico_PutContextualIconToEdit (ActSeeAtt,NULL); + Ico_PutContextualIconToEdit (ActSeeAtt,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_banner.c b/swad_banner.c index b65f58cf..85a54124 100644 --- a/swad_banner.c +++ b/swad_banner.c @@ -186,7 +186,7 @@ static void Ban_PutIconsListingBanners (void) static void Ban_PutIconToEditBanners (void) { - Ico_PutContextualIconToEdit (ActEdiBan,NULL); + Ico_PutContextualIconToEdit (ActEdiBan,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_centre.c b/swad_centre.c index 02fc9ee1..57c78f7b 100644 --- a/swad_centre.c +++ b/swad_centre.c @@ -340,7 +340,7 @@ static void Ctr_PutIconsListingCentres (void) static void Ctr_PutIconToEditCentres (void) { - Ico_PutContextualIconToEdit (ActEdiCtr,NULL); + Ico_PutContextualIconToEdit (ActEdiCtr,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_changelog.h b/swad_changelog.h index 7f3119ab..f88ed641 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -497,7 +497,7 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - * En OpenSWAD: ps2pdf source.ps destination.pdf */ -#define Log_PLATFORM_VERSION "SWAD 19.141 (2020-03-03)" +#define Log_PLATFORM_VERSION "SWAD 19.141.1 (2020-03-03)" #define CSS_FILE "swad19.136.css" #define JS_FILE "swad19.91.1.js" /* @@ -521,8 +521,10 @@ Param // TODO: No se puede entrar con DNI '1' suponiendo que no tenga password ¿por qué? // TODO: En la lista de conectados central, poner el logo de la institución a la que pertenece el usuario // TODO: Miguel Damas: por defecto, marcar "Permitir que los profesores..." en los test (que ya esté marcado en lugar de desmarcado) +// TODO: Miguel Damas: al principio de los exámenes tendría que poner cuánto resta cada pregunta // TODO: Si el alumno ha marcado "Permitir que los profesores...", entonces pedir confirmación al pulsar el botón azul, para evitar que se envíe por error antes de tiempo + Version 19.141.1: Mar 03, 2020 Form to create new item inside course program. (282123 lines) Version 19.141: Mar 03, 2020 Remove groups in course program. (282052 lines) 1 change necessary in database: DROP TABLE IF EXISTS prg_grp; diff --git a/swad_classroom.c b/swad_classroom.c index eb77259a..bb7cf6fa 100644 --- a/swad_classroom.c +++ b/swad_classroom.c @@ -224,7 +224,7 @@ static void Cla_PutIconsListingClassrooms (void) static void Cla_PutIconToEditClassrooms (void) { - Ico_PutContextualIconToEdit (ActEdiCla,NULL); + Ico_PutContextualIconToEdit (ActEdiCla,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_country.c b/swad_country.c index 9ca1e8cd..88573757 100644 --- a/swad_country.c +++ b/swad_country.c @@ -482,7 +482,7 @@ bool Cty_CheckIfICanEditCountries (void) static void Cty_PutIconToEditCountries (void) { - Ico_PutContextualIconToEdit (ActEdiCty,NULL); + Ico_PutContextualIconToEdit (ActEdiCty,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_course.c b/swad_course.c index fdcf3537..7b810d6d 100644 --- a/swad_course.c +++ b/swad_course.c @@ -868,7 +868,7 @@ static void Crs_PutIconsListCourses (void) static void Crs_PutIconToEditCourses (void) { - Ico_PutContextualIconToEdit (ActEdiCrs,NULL); + Ico_PutContextualIconToEdit (ActEdiCrs,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_degree.c b/swad_degree.c index 6b2c0fe0..4be5ecf7 100644 --- a/swad_degree.c +++ b/swad_degree.c @@ -833,7 +833,7 @@ static void Deg_PutIconsListingDegrees (void) static void Deg_PutIconToEditDegrees (void) { - Ico_PutContextualIconToEdit (ActEdiDeg,NULL); + Ico_PutContextualIconToEdit (ActEdiDeg,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_degree_type.c b/swad_degree_type.c index ad33ba95..4533315f 100644 --- a/swad_degree_type.c +++ b/swad_degree_type.c @@ -369,7 +369,7 @@ static void DT_PutIconToEditDegTypes (void) { if (Gbl.Hierarchy.Level == Hie_CTR && // Only editable if centre tab is visible DT_CheckIfICanCreateDegreeTypes ()) - Ico_PutContextualIconToEdit (ActEdiDegTyp,NULL); + Ico_PutContextualIconToEdit (ActEdiDegTyp,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_department.c b/swad_department.c index 4cea1297..cfffd395 100644 --- a/swad_department.c +++ b/swad_department.c @@ -227,7 +227,7 @@ static void Dpt_GetParamDptOrder (void) static void Dpt_PutIconToEditDpts (void) { - Ico_PutContextualIconToEdit (ActEdiDpt,NULL); + Ico_PutContextualIconToEdit (ActEdiDpt,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_exam.c b/swad_exam.c index 08755a5e..553df5d3 100644 --- a/swad_exam.c +++ b/swad_exam.c @@ -1505,7 +1505,7 @@ static void Exa_PutIconsExamAnnouncement (void) } /***** Link to edit this exam announcement *****/ - Ico_PutContextualIconToEdit (ActEdiExaAnn,Exa_PutParamExaCodToEdit); + Ico_PutContextualIconToEdit (ActEdiExaAnn,NULL,Exa_PutParamExaCodToEdit); } /***** Link to print view *****/ diff --git a/swad_file_browser.c b/swad_file_browser.c index e7d799d3..7f674536 100644 --- a/swad_file_browser.c +++ b/swad_file_browser.c @@ -3731,6 +3731,7 @@ static void Brw_PutIconsFileBrowser (void) break; case Brw_ICON_EDIT: Ico_PutContextualIconToEdit (Brw_ActFromSeeToAdm[Gbl.FileBrowser.Type], + NULL, Brw_PutHiddenParamFullTreeIfSelected); break; } diff --git a/swad_game.c b/swad_game.c index 4032628f..7afee020 100644 --- a/swad_game.c +++ b/swad_game.c @@ -648,7 +648,7 @@ static void Gam_PutFormsToRemEditOneGame (const struct Game *Game, Ico_PutContextualIconToHide (ActHidGam,Anchor,Gam_PutParams); /***** Put icon to edit game *****/ - Ico_PutContextualIconToEdit (ActEdiOneGam,Gam_PutParams); + Ico_PutContextualIconToEdit (ActEdiOneGam,NULL,Gam_PutParams); } /*****************************************************************************/ @@ -1933,7 +1933,7 @@ static void Gam_ListOneOrMoreQuestionsForEdition (long GamCod,unsigned NumQsts, /* Put icon to edit the question */ if (ICanEditQuestions) - Ico_PutContextualIconToEdit (ActEdiOneTstQst,Tst_PutParamQstCod); + Ico_PutContextualIconToEdit (ActEdiOneTstQst,NULL,Tst_PutParamQstCod); HTM_TD_End (); diff --git a/swad_group.c b/swad_group.c index e2fbe829..1f9cc271 100644 --- a/swad_group.c +++ b/swad_group.c @@ -1834,7 +1834,7 @@ void Grp_ShowLstGrpsToChgMyGrps (void) static void Grp_PutIconToEditGroups (void) { - Ico_PutContextualIconToEdit (ActReqEdiGrp,NULL); + Ico_PutContextualIconToEdit (ActReqEdiGrp,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_holiday.c b/swad_holiday.c index 40fca304..1cbc4de0 100644 --- a/swad_holiday.c +++ b/swad_holiday.c @@ -224,7 +224,7 @@ static void Hld_PutIconsSeeHolidays (void) { /***** Edit holidays calendar *****/ if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM) - Ico_PutContextualIconToEdit (ActEdiHld,NULL); + Ico_PutContextualIconToEdit (ActEdiHld,NULL,NULL); /***** View calendar *****/ Cal_PutIconToSeeCalendar (); diff --git a/swad_icon.c b/swad_icon.c index 54098446..70fe43f7 100644 --- a/swad_icon.c +++ b/swad_icon.c @@ -235,11 +235,12 @@ void Ico_PutContextualIconToRemove (Act_Action_t NextAction,void (*FuncParams) ( Txt_Remove); } -void Ico_PutContextualIconToEdit (Act_Action_t NextAction,void (*FuncParams) (void)) +void Ico_PutContextualIconToEdit (Act_Action_t NextAction,const char *Anchor, + void (*FuncParams) (void)) { extern const char *Txt_Edit; - Lay_PutContextualLinkOnlyIcon (NextAction,NULL,FuncParams, + Lay_PutContextualLinkOnlyIcon (NextAction,Anchor,FuncParams, "pen.svg", Txt_Edit); } diff --git a/swad_icon.h b/swad_icon.h index 9cc11920..910d1d17 100644 --- a/swad_icon.h +++ b/swad_icon.h @@ -59,7 +59,8 @@ void Ico_PutContextualIconToAdd (Act_Action_t NextAction,const char *Anchor, void (*FuncParams) (void), const char *Txt); void Ico_PutContextualIconToRemove (Act_Action_t NextAction,void (*FuncParams) (void)); -void Ico_PutContextualIconToEdit (Act_Action_t NextAction,void (*FuncParams) (void)); +void Ico_PutContextualIconToEdit (Act_Action_t NextAction,const char *Anchor, + void (*FuncParams) (void)); void Ico_PutContextualIconToViewFiles (Act_Action_t NextAction,void (*FuncParams) (void)); void Ico_PutContextualIconToView (Act_Action_t NextAction,void (*FuncParams) (void)); void Ico_PutContextualIconToUnhide (Act_Action_t NextAction,const char *Anchor,void (*FuncParams) (void)); diff --git a/swad_info.c b/swad_info.c index 84d20474..64d75fe8 100644 --- a/swad_info.c +++ b/swad_info.c @@ -447,7 +447,7 @@ static void Inf_PutIconToViewInfo (void) void Inf_PutIconToEditInfo (void) { - Ico_PutContextualIconToEdit (Inf_ActionsEditInfo[Gbl.Crs.Info.Type],NULL); + Ico_PutContextualIconToEdit (Inf_ActionsEditInfo[Gbl.Crs.Info.Type],NULL,NULL); } /*****************************************************************************/ diff --git a/swad_institution.c b/swad_institution.c index ce7a8166..0e1aaee7 100644 --- a/swad_institution.c +++ b/swad_institution.c @@ -365,7 +365,7 @@ static void Ins_PutIconsListingInstitutions (void) static void Ins_PutIconToEditInstitutions (void) { - Ico_PutContextualIconToEdit (ActEdiIns,NULL); + Ico_PutContextualIconToEdit (ActEdiIns,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_link.c b/swad_link.c index 8e281c12..bfd7f934 100644 --- a/swad_link.c +++ b/swad_link.c @@ -145,7 +145,7 @@ static void Lnk_PutIconsListingLinks (void) static void Lnk_PutIconToEditLinks (void) { - Ico_PutContextualIconToEdit (ActEdiLnk,NULL); + Ico_PutContextualIconToEdit (ActEdiLnk,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_mail.c b/swad_mail.c index 04d77e7d..2d725722 100644 --- a/swad_mail.c +++ b/swad_mail.c @@ -199,7 +199,7 @@ static void Mai_GetParamMaiOrder (void) static void Mai_PutIconToEditMailDomains (void) { - Ico_PutContextualIconToEdit (ActEdiMai,NULL); + Ico_PutContextualIconToEdit (ActEdiMai,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_place.c b/swad_place.c index d22a0683..09405fc1 100644 --- a/swad_place.c +++ b/swad_place.c @@ -253,7 +253,7 @@ static void Plc_PutIconsListingPlaces (void) static void Plc_PutIconToEditPlaces (void) { - Ico_PutContextualIconToEdit (ActEdiPlc,NULL); + Ico_PutContextualIconToEdit (ActEdiPlc,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_plugin.c b/swad_plugin.c index bd4ab305..2319bac8 100644 --- a/swad_plugin.c +++ b/swad_plugin.c @@ -169,7 +169,7 @@ void Plg_ListPlugins (void) static void Plg_PutIconToEditPlugins (void) { - Ico_PutContextualIconToEdit (ActEdiPlg,NULL); + Ico_PutContextualIconToEdit (ActEdiPlg,NULL,NULL); } /*****************************************************************************/ diff --git a/swad_program.c b/swad_program.c index c117d66b..68f3616b 100644 --- a/swad_program.c +++ b/swad_program.c @@ -60,6 +60,13 @@ extern struct Globals Gbl; /******************************* Private types *******************************/ /*****************************************************************************/ +typedef enum + { + Prg_DONT_PUT_FORM_ITEM, + Prg_PUT_FORM_CREATE_ITEM, + Prg_PUT_FORM_CHANGE_ITEM, + } Prg_CreateOrChangeItem_t; + /*****************************************************************************/ /***************************** Private variables *****************************/ /*****************************************************************************/ @@ -73,12 +80,15 @@ static unsigned *Prg_NumItem = NULL; // Numbers for each level from 1 to maximum /***************************** Private prototypes ****************************/ /*****************************************************************************/ -static void Prg_ShowAllItems (void); +static void Prg_ShowAllItems (Prg_CreateOrChangeItem_t CreateOrChangeItem, + long ItmCod); static bool Prg_CheckIfICanCreateItems (void); static void Prg_PutIconsListItems (void); static void Prg_PutIconToCreateNewItem (void); static void Prg_PutButtonToCreateNewItem (void); -static void Prg_ShowOneItem (unsigned NumItem,bool PrintView); +static void Prg_ShowOneItem (unsigned NumItem, + Prg_CreateOrChangeItem_t CreateOrChangeItem, + bool PrintView); static void Prg_CreateNumbers (unsigned MaxLevel); static void Prg_FreeNumbers (void); @@ -119,8 +129,8 @@ static void Prg_MoveItemAndChildrenLeft (unsigned NumItem); static void Prg_MoveItemAndChildrenRight (unsigned NumItem); static bool Prg_CheckIfSimilarPrgItemExists (const char *Field,const char *Value,long ItmCod); -static void Prg_ShowFormToCreatePrgItem (void); -static void Prg_ShowFormToChangePrgItem (void); +static void Prg_ShowFormToCreatePrgItem (long ParentItmCod); +static void Prg_ShowFormToChangePrgItem (long ItmCod); static void Prg_ShowFormToPrgItem (const struct ProgramItem *Item, const Dat_SetHMS SetHMS[Dat_NUM_START_END_TIME], const char *Txt); @@ -136,14 +146,15 @@ static void Prg_UpdatePrgItem (struct ProgramItem *Item,const char *Txt); void Prg_SeeCourseProgram (void) { /***** Show all the program items *****/ - Prg_ShowAllItems (); + Prg_ShowAllItems (Prg_DONT_PUT_FORM_ITEM,-1L); } /*****************************************************************************/ /*********************** Show all the program items **************************/ /*****************************************************************************/ -static void Prg_ShowAllItems (void) +static void Prg_ShowAllItems (Prg_CreateOrChangeItem_t CreateOrChangeItem, + long ItmCod) { extern const char *Hlp_COURSE_Program; extern const char *Txt_Course_program; @@ -174,6 +185,8 @@ static void Prg_ShowAllItems (void) NumItem < Gbl.Prg.Num; NumItem++) Prg_ShowOneItem (NumItem, + ItmCod == Gbl.Prg.LstItems[NumItem].ItmCod ? CreateOrChangeItem : + Prg_DONT_PUT_FORM_ITEM, false); // Not print view /***** End table *****/ @@ -255,7 +268,9 @@ static void Prg_PutButtonToCreateNewItem (void) #define Prg_WIDTH_NUM_ITEM 20 -static void Prg_ShowOneItem (unsigned NumItem,bool PrintView) +static void Prg_ShowOneItem (unsigned NumItem, + Prg_CreateOrChangeItem_t CreateOrChangeItem, + bool PrintView) { char *Anchor = NULL; static unsigned UniqueId = 0; @@ -365,8 +380,61 @@ static void Prg_ShowOneItem (unsigned NumItem,bool PrintView) free (Id); } + /***** End row *****/ HTM_TR_End (); + /***** Form to create/change item *****/ + switch (CreateOrChangeItem) + { + case Prg_DONT_PUT_FORM_ITEM: + break; + case Prg_PUT_FORM_CREATE_ITEM: + case Prg_PUT_FORM_CHANGE_ITEM: + /* Start row */ + HTM_TR_Begin (NULL); + + /* Column under icons */ + HTM_TD_Begin ("class=\"PRG_COL1 LT COLOR%u\"",Gbl.RowEvenOdd); + HTM_TD_End (); + + /* Indent depending on the level */ + if (Item.Hierarchy.Level > 1) + { + HTM_TD_Begin ("colspan=\"%u\" class=\"COLOR%u\"", + Item.Hierarchy.Level - 1,Gbl.RowEvenOdd); + HTM_TD_End (); + } + + if (CreateOrChangeItem == Prg_PUT_FORM_CREATE_ITEM) + { + /* Column under item number */ + HTM_TD_Begin ("class=\"COLOR%u\" style=\"width:%dpx;\"", + Gbl.RowEvenOdd, + Item.Hierarchy.Level * Prg_WIDTH_NUM_ITEM); + HTM_TD_End (); + + /* Show form to create new item as child */ + ColSpan = Prg_MaxLevel - Item.Hierarchy.Level + 3; + HTM_TD_Begin ("colspan=\"%u\" class=\"LT COLOR%u\"", + ColSpan,Gbl.RowEvenOdd); + Prg_ShowFormToCreatePrgItem (Item.Hierarchy.ItmCod); + HTM_TD_End (); + } + else + { + /* Show form to edit current item */ + ColSpan = Prg_MaxLevel - Item.Hierarchy.Level + 4; + HTM_TD_Begin ("colspan=\"%u\" class=\"LT COLOR%u\"", + ColSpan,Gbl.RowEvenOdd); + Prg_ShowFormToChangePrgItem (Item.Hierarchy.ItmCod); + HTM_TD_End (); + } + + /* End row */ + HTM_TR_End (); + break; + } + /***** Free anchor string *****/ Frm_FreeAnchorStr (Anchor); @@ -477,7 +545,7 @@ static void Prg_PutFormsToRemEditOnePrgItem (unsigned NumItem,const char *Anchor Ico_PutContextualIconToHide (ActHidPrgItm,Anchor,Prg_PutParams); /***** Put form to edit program item *****/ - Ico_PutContextualIconToEdit (ActFrmChgPrgItm,Prg_PutParams); + Ico_PutContextualIconToEdit (ActFrmChgPrgItm,Anchor,Prg_PutParams); /***** Put form to add a new child item inside this item *****/ Ico_PutContextualIconToAdd (ActFrmNewPrgItm,Anchor,Prg_PutParams,Txt_New_item); @@ -1432,27 +1500,31 @@ static bool Prg_CheckIfSimilarPrgItemExists (const char *Field,const char *Value void Prg_RequestCreatePrgItem (void) { - /***** Show form to create item *****/ - Prg_ShowFormToCreatePrgItem (); + long ParentItmCod; + + /***** Get the code of the parent program item *****/ + ParentItmCod = Prg_GetParamItmCod (); /***** Show current program items, if any *****/ - Prg_ShowAllItems (); + Prg_ShowAllItems (Prg_PUT_FORM_CREATE_ITEM,ParentItmCod); } void Prg_RequestChangePrgItem (void) { - /***** Show form to change item *****/ - Prg_ShowFormToChangePrgItem (); + long ItmCod; + + /***** Get the code of the program item *****/ + ItmCod = Prg_GetParamItmCod (); /***** Show current program items, if any *****/ - Prg_ShowAllItems (); + Prg_ShowAllItems (Prg_PUT_FORM_CHANGE_ITEM,ItmCod); } /*****************************************************************************/ /***************** Put a form to create a new program item *******************/ /*****************************************************************************/ -static void Prg_ShowFormToCreatePrgItem (void) +static void Prg_ShowFormToCreatePrgItem (long ParentItmCod) { extern const char *Hlp_COURSE_Program_new_item; extern const char *Txt_New_item; @@ -1465,8 +1537,8 @@ static void Prg_ShowFormToCreatePrgItem (void) Dat_HMS_TO_235959 }; - /***** Get the code of the parent program item *****/ - ParentItem.Hierarchy.ItmCod = Prg_GetParamItmCod (); + /***** Get data of the parent program item from database *****/ + ParentItem.Hierarchy.ItmCod = ParentItmCod; Prg_GetDataOfItemByCod (&ParentItem); /***** Initialize to empty program item *****/ @@ -1481,7 +1553,7 @@ static void Prg_ShowFormToCreatePrgItem (void) Prg_PutParams (); /***** Begin box and table *****/ - Box_BoxTableBegin (NULL,Txt_New_item,NULL, + Box_BoxTableBegin ("100%",Txt_New_item,NULL, Hlp_COURSE_Program_new_item,Box_NOT_CLOSABLE,2); /***** Show form *****/ @@ -1498,7 +1570,7 @@ static void Prg_ShowFormToCreatePrgItem (void) /***************** Put a form to create a new program item *******************/ /*****************************************************************************/ -static void Prg_ShowFormToChangePrgItem (void) +static void Prg_ShowFormToChangePrgItem (long ItmCod) { extern const char *Hlp_COURSE_Program_edit_item; extern const char *Txt_Edit_item; @@ -1511,14 +1583,9 @@ static void Prg_ShowFormToChangePrgItem (void) Dat_HMS_DO_NOT_SET }; - /***** Get the code of the program item *****/ - Item.Hierarchy.ItmCod = Prg_GetParamItmCod (); - - /***** Get from the database the data of the program item *****/ - /* Get data of the program item from database */ + /***** Get data of the program item from database *****/ + Item.Hierarchy.ItmCod = ItmCod; Prg_GetDataOfItemByCod (&Item); - - /* Get text of the program item from database */ Prg_GetPrgItemTxtFromDB (Item.Hierarchy.ItmCod,Txt); /***** Begin form *****/ @@ -1527,7 +1594,7 @@ static void Prg_ShowFormToChangePrgItem (void) Prg_PutParams (); /***** Begin box and table *****/ - Box_BoxTableBegin (NULL, + Box_BoxTableBegin ("100%", Item.Title[0] ? Item.Title : Txt_Edit_item, NULL, @@ -1564,7 +1631,7 @@ static void Prg_ShowFormToPrgItem (const struct ProgramItem *Item, HTM_TD_Begin ("class=\"LM\""); HTM_INPUT_TEXT ("Title",Prg_MAX_CHARS_PROGRAM_ITEM_TITLE,Item->Title,false, "id=\"Title\" required=\"required\"" - " class=\"TITLE_DESCRIPTION_WIDTH\""); + " class=\"PRG_TITLE_DESCRIPTION_WIDTH\""); HTM_TD_End (); HTM_TR_End (); @@ -1583,7 +1650,7 @@ static void Prg_ShowFormToPrgItem (const struct ProgramItem *Item, /* Data */ HTM_TD_Begin ("class=\"LT\""); HTM_TEXTAREA_Begin ("id=\"Txt\" name=\"Txt\" rows=\"10\"" - " class=\"TITLE_DESCRIPTION_WIDTH\""); + " class=\"PRG_TITLE_DESCRIPTION_WIDTH\""); if (Txt) if (Txt[0]) HTM_Txt (Txt); @@ -1662,7 +1729,7 @@ void Prg_RecFormNewPrgItem (void) else /***** Show form to create item *****/ // TODO: The form should be filled with partial data, now is always empty - Prg_ShowFormToCreatePrgItem (); + Prg_ShowFormToCreatePrgItem (ParentItem.Hierarchy.ItmCod); /***** Show program items again *****/ Prg_SeeCourseProgram (); @@ -1736,7 +1803,7 @@ void Prg_RecFormChgPrgItem (void) else /***** Show form to change item *****/ // TODO: The form should be filled with partial data, now is always empty - Prg_ShowFormToChangePrgItem (); + Prg_ShowFormToChangePrgItem (NewItem.Hierarchy.ItmCod); /***** Show program items again *****/ Prg_SeeCourseProgram (); diff --git a/swad_project.c b/swad_project.c index d7e6ec3b..e181752f 100644 --- a/swad_project.c +++ b/swad_project.c @@ -2606,7 +2606,7 @@ static void Prj_PutFormsToRemEditOnePrj (const struct Project *Prj, } /***** Put form to edit project *****/ - Ico_PutContextualIconToEdit (ActEdiOnePrj,Prj_PutCurrentParams); + Ico_PutContextualIconToEdit (ActEdiOnePrj,NULL,Prj_PutCurrentParams); } /***** Put form to admin project documents *****/ diff --git a/swad_survey.c b/swad_survey.c index a8b8c34b..954bf53d 100644 --- a/swad_survey.c +++ b/swad_survey.c @@ -851,7 +851,7 @@ static void Svy_PutFormsToRemEditOneSvy (const struct Survey *Svy, Ico_PutContextualIconToUnhide (ActShoSvy,Anchor,Svy_PutParams); /***** Put form to edit survey *****/ - Ico_PutContextualIconToEdit (ActEdiOneSvy,Svy_PutParams); + Ico_PutContextualIconToEdit (ActEdiOneSvy,NULL,Svy_PutParams); } /*****************************************************************************/ @@ -3247,7 +3247,7 @@ static void Svy_ListSvyQuestions (struct Survey *Svy) /* Write icon to edit the question */ Svy_CurrentSvyCod = Svy->SvyCod; Svy_CurrentQstCod = SvyQst.QstCod; - Ico_PutContextualIconToEdit (ActEdiOneSvyQst,Svy_PutParamsToEditQuestion); + Ico_PutContextualIconToEdit (ActEdiOneSvyQst,NULL,Svy_PutParamsToEditQuestion); HTM_TD_End (); } diff --git a/swad_test.c b/swad_test.c index 1f89eb03..0a1ab1e1 100644 --- a/swad_test.c +++ b/swad_test.c @@ -1350,7 +1350,7 @@ static void Tst_PutIconsTests (void) { /***** Put form to edit existing test questions *****/ if (Gbl.Action.Act != ActEdiTstQst) - Ico_PutContextualIconToEdit (ActEdiTstQst,NULL); + Ico_PutContextualIconToEdit (ActEdiTstQst,NULL,NULL); /***** Put form to create a new test question *****/ if (Gbl.Action.Act != ActEdiOneTstQst) @@ -2817,7 +2817,7 @@ static void Tst_ListOneOrMoreQuestionsForEdition (unsigned long NumRows, Frm_EndForm (); /* Write icon to edit the question */ - Ico_PutContextualIconToEdit (ActEdiOneTstQst,Tst_PutParamQstCod); + Ico_PutContextualIconToEdit (ActEdiOneTstQst,NULL,Tst_PutParamQstCod); HTM_TD_End (); diff --git a/swad_timetable.c b/swad_timetable.c index 839bd59a..f8dfdc42 100644 --- a/swad_timetable.c +++ b/swad_timetable.c @@ -401,15 +401,15 @@ void TT_ShowClassTimeTable (void) static void TT_PutContextualIcons (void) { if (Gbl.TimeTable.ContextualIcons.PutIconEditCrsTT) - Ico_PutContextualIconToEdit (ActEdiCrsTT,Grp_PutParamWhichGrps); + Ico_PutContextualIconToEdit (ActEdiCrsTT,NULL,Grp_PutParamWhichGrps); if (Gbl.TimeTable.ContextualIcons.PutIconEditOfficeHours) - Ico_PutContextualIconToEdit (ActEdiTut,NULL); + Ico_PutContextualIconToEdit (ActEdiTut,NULL,NULL); if (Gbl.TimeTable.ContextualIcons.PutIconPrint) Ico_PutContextualIconToPrint (Gbl.TimeTable.Type == TT_COURSE_TIMETABLE ? ActPrnCrsTT : - ActPrnMyTT, - Grp_PutParamWhichGrps); + ActPrnMyTT, + Grp_PutParamWhichGrps); } /*****************************************************************************/