From eb330da7f225665d4302f003e796c6d089e0e514 Mon Sep 17 00:00:00 2001 From: acanas Date: Tue, 19 Jul 2022 14:08:49 +0200 Subject: [PATCH] Version 21.109: Jul 19, 2022 Changes in edition of program items. --- swad_action.c | 2 + swad_action.h | 209 ++++++++++++++++++------------------ swad_attendance.c | 2 +- swad_browser.c | 2 +- swad_changelog.h | 3 +- swad_game.c | 2 +- swad_group.c | 2 +- swad_icon.c | 4 +- swad_icon.h | 2 +- swad_info.c | 2 +- swad_program.c | 82 +++++++-------- swad_program.h | 18 ++-- swad_program_resource.c | 228 ++++++++++++++++++++++++---------------- swad_program_resource.h | 5 +- swad_text_action.c | 53 +++++++--- swad_timetable.c | 4 +- 16 files changed, 344 insertions(+), 276 deletions(-) diff --git a/swad_action.c b/swad_action.c index 29d6f4ef..486b039f 100644 --- a/swad_action.c +++ b/swad_action.c @@ -442,6 +442,7 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] = [ActLftPrgItm ] = {1834,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_MoveLeftItem ,NULL}, [ActRgtPrgItm ] = {1833,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_MoveRightItem ,NULL}, + [ActFrmSeePrgRsc ] = {1925,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,PrgRsc_ViewResources ,NULL}, [ActFrmEdiPrgRsc ] = {1918,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,PrgRsc_EditResources ,NULL}, [ActReqRemPrgRsc ] = {1919,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,PrgRsc_ReqRemResource ,NULL}, [ActRemPrgRsc ] = {1920,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,PrgRsc_RemoveResource ,NULL}, @@ -3759,6 +3760,7 @@ Act_Action_t Act_FromActCodToAction[1 + Act_MAX_ACTION_COD] = // Do not reuse un ActUnhPrgRsc, // #1922 ActUp_PrgRsc, // #1923 ActDwnPrgRsc, // #1924 + ActFrmSeePrgRsc, // #1925 }; /*****************************************************************************/ diff --git a/swad_action.h b/swad_action.h index 1c664726..ba0a0f18 100644 --- a/swad_action.h +++ b/swad_action.h @@ -65,7 +65,7 @@ typedef enum typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action -#define Act_MAX_ACTION_COD 1924 +#define Act_MAX_ACTION_COD 1925 #define Act_MAX_OPTIONS_IN_MENU_PER_TAB 13 @@ -408,114 +408,115 @@ typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to #define ActDwnPrgItm (ActChgCrsSta + 25) #define ActLftPrgItm (ActChgCrsSta + 26) #define ActRgtPrgItm (ActChgCrsSta + 27) -#define ActFrmEdiPrgRsc (ActChgCrsSta + 28) -#define ActReqRemPrgRsc (ActChgCrsSta + 29) -#define ActRemPrgRsc (ActChgCrsSta + 30) -#define ActHidPrgRsc (ActChgCrsSta + 31) -#define ActUnhPrgRsc (ActChgCrsSta + 32) -#define ActUp_PrgRsc (ActChgCrsSta + 33) -#define ActDwnPrgRsc (ActChgCrsSta + 34) -#define ActEdiTchGui (ActChgCrsSta + 35) -#define ActSeeSylLec (ActChgCrsSta + 36) -#define ActSeeSylPra (ActChgCrsSta + 37) -#define ActEdiSylLec (ActChgCrsSta + 38) -#define ActEdiSylPra (ActChgCrsSta + 39) -#define ActDelItmSylLec (ActChgCrsSta + 40) -#define ActDelItmSylPra (ActChgCrsSta + 41) -#define ActUp_IteSylLec (ActChgCrsSta + 42) -#define ActUp_IteSylPra (ActChgCrsSta + 43) -#define ActDwnIteSylLec (ActChgCrsSta + 44) -#define ActDwnIteSylPra (ActChgCrsSta + 45) -#define ActRgtIteSylLec (ActChgCrsSta + 46) -#define ActRgtIteSylPra (ActChgCrsSta + 47) -#define ActLftIteSylLec (ActChgCrsSta + 48) -#define ActLftIteSylPra (ActChgCrsSta + 49) -#define ActInsIteSylLec (ActChgCrsSta + 50) -#define ActInsIteSylPra (ActChgCrsSta + 51) -#define ActModIteSylLec (ActChgCrsSta + 52) -#define ActModIteSylPra (ActChgCrsSta + 53) +#define ActFrmSeePrgRsc (ActChgCrsSta + 28) +#define ActFrmEdiPrgRsc (ActChgCrsSta + 29) +#define ActReqRemPrgRsc (ActChgCrsSta + 30) +#define ActRemPrgRsc (ActChgCrsSta + 31) +#define ActHidPrgRsc (ActChgCrsSta + 32) +#define ActUnhPrgRsc (ActChgCrsSta + 33) +#define ActUp_PrgRsc (ActChgCrsSta + 34) +#define ActDwnPrgRsc (ActChgCrsSta + 35) +#define ActEdiTchGui (ActChgCrsSta + 36) +#define ActSeeSylLec (ActChgCrsSta + 37) +#define ActSeeSylPra (ActChgCrsSta + 38) +#define ActEdiSylLec (ActChgCrsSta + 39) +#define ActEdiSylPra (ActChgCrsSta + 40) +#define ActDelItmSylLec (ActChgCrsSta + 41) +#define ActDelItmSylPra (ActChgCrsSta + 42) +#define ActUp_IteSylLec (ActChgCrsSta + 43) +#define ActUp_IteSylPra (ActChgCrsSta + 44) +#define ActDwnIteSylLec (ActChgCrsSta + 45) +#define ActDwnIteSylPra (ActChgCrsSta + 46) +#define ActRgtIteSylLec (ActChgCrsSta + 47) +#define ActRgtIteSylPra (ActChgCrsSta + 48) +#define ActLftIteSylLec (ActChgCrsSta + 49) +#define ActLftIteSylPra (ActChgCrsSta + 50) +#define ActInsIteSylLec (ActChgCrsSta + 51) +#define ActInsIteSylPra (ActChgCrsSta + 52) +#define ActModIteSylLec (ActChgCrsSta + 53) +#define ActModIteSylPra (ActChgCrsSta + 54) -#define ActEdiBib (ActChgCrsSta + 54) -#define ActEdiFAQ (ActChgCrsSta + 55) -#define ActEdiCrsLnk (ActChgCrsSta + 56) +#define ActEdiBib (ActChgCrsSta + 55) +#define ActEdiFAQ (ActChgCrsSta + 56) +#define ActEdiCrsLnk (ActChgCrsSta + 57) -#define ActChgFrcReaCrsInf (ActChgCrsSta + 57) -#define ActChgFrcReaTchGui (ActChgCrsSta + 58) -#define ActChgFrcReaSylLec (ActChgCrsSta + 59) -#define ActChgFrcReaSylPra (ActChgCrsSta + 60) -#define ActChgFrcReaBib (ActChgCrsSta + 61) -#define ActChgFrcReaFAQ (ActChgCrsSta + 62) -#define ActChgFrcReaCrsLnk (ActChgCrsSta + 63) +#define ActChgFrcReaCrsInf (ActChgCrsSta + 58) +#define ActChgFrcReaTchGui (ActChgCrsSta + 59) +#define ActChgFrcReaSylLec (ActChgCrsSta + 60) +#define ActChgFrcReaSylPra (ActChgCrsSta + 61) +#define ActChgFrcReaBib (ActChgCrsSta + 62) +#define ActChgFrcReaFAQ (ActChgCrsSta + 63) +#define ActChgFrcReaCrsLnk (ActChgCrsSta + 64) -#define ActChgHavReaCrsInf (ActChgCrsSta + 64) -#define ActChgHavReaTchGui (ActChgCrsSta + 65) -#define ActChgHavReaSylLec (ActChgCrsSta + 66) -#define ActChgHavReaSylPra (ActChgCrsSta + 67) -#define ActChgHavReaBib (ActChgCrsSta + 68) -#define ActChgHavReaFAQ (ActChgCrsSta + 69) -#define ActChgHavReaCrsLnk (ActChgCrsSta + 70) +#define ActChgHavReaCrsInf (ActChgCrsSta + 65) +#define ActChgHavReaTchGui (ActChgCrsSta + 66) +#define ActChgHavReaSylLec (ActChgCrsSta + 67) +#define ActChgHavReaSylPra (ActChgCrsSta + 68) +#define ActChgHavReaBib (ActChgCrsSta + 69) +#define ActChgHavReaFAQ (ActChgCrsSta + 70) +#define ActChgHavReaCrsLnk (ActChgCrsSta + 71) -#define ActSelInfSrcCrsInf (ActChgCrsSta + 71) -#define ActSelInfSrcTchGui (ActChgCrsSta + 72) -#define ActSelInfSrcSylLec (ActChgCrsSta + 73) -#define ActSelInfSrcSylPra (ActChgCrsSta + 74) -#define ActSelInfSrcBib (ActChgCrsSta + 75) -#define ActSelInfSrcFAQ (ActChgCrsSta + 76) -#define ActSelInfSrcCrsLnk (ActChgCrsSta + 77) -#define ActRcvURLCrsInf (ActChgCrsSta + 78) -#define ActRcvURLTchGui (ActChgCrsSta + 79) -#define ActRcvURLSylLec (ActChgCrsSta + 80) -#define ActRcvURLSylPra (ActChgCrsSta + 81) -#define ActRcvURLBib (ActChgCrsSta + 82) -#define ActRcvURLFAQ (ActChgCrsSta + 83) -#define ActRcvURLCrsLnk (ActChgCrsSta + 84) -#define ActRcvPagCrsInf (ActChgCrsSta + 85) -#define ActRcvPagTchGui (ActChgCrsSta + 86) -#define ActRcvPagSylLec (ActChgCrsSta + 87) -#define ActRcvPagSylPra (ActChgCrsSta + 88) -#define ActRcvPagBib (ActChgCrsSta + 89) -#define ActRcvPagFAQ (ActChgCrsSta + 90) -#define ActRcvPagCrsLnk (ActChgCrsSta + 91) -#define ActEditorCrsInf (ActChgCrsSta + 92) -#define ActEditorTchGui (ActChgCrsSta + 93) -#define ActEditorSylLec (ActChgCrsSta + 94) -#define ActEditorSylPra (ActChgCrsSta + 95) -#define ActEditorBib (ActChgCrsSta + 96) -#define ActEditorFAQ (ActChgCrsSta + 97) -#define ActEditorCrsLnk (ActChgCrsSta + 98) -#define ActPlaTxtEdiCrsInf (ActChgCrsSta + 99) -#define ActPlaTxtEdiTchGui (ActChgCrsSta + 100) -#define ActPlaTxtEdiSylLec (ActChgCrsSta + 101) -#define ActPlaTxtEdiSylPra (ActChgCrsSta + 102) -#define ActPlaTxtEdiBib (ActChgCrsSta + 103) -#define ActPlaTxtEdiFAQ (ActChgCrsSta + 104) -#define ActPlaTxtEdiCrsLnk (ActChgCrsSta + 105) -#define ActRchTxtEdiCrsInf (ActChgCrsSta + 106) -#define ActRchTxtEdiTchGui (ActChgCrsSta + 107) -#define ActRchTxtEdiSylLec (ActChgCrsSta + 108) -#define ActRchTxtEdiSylPra (ActChgCrsSta + 109) -#define ActRchTxtEdiBib (ActChgCrsSta + 110) -#define ActRchTxtEdiFAQ (ActChgCrsSta + 111) -#define ActRchTxtEdiCrsLnk (ActChgCrsSta + 112) -#define ActRcvPlaTxtCrsInf (ActChgCrsSta + 113) -#define ActRcvPlaTxtTchGui (ActChgCrsSta + 114) -#define ActRcvPlaTxtSylLec (ActChgCrsSta + 115) -#define ActRcvPlaTxtSylPra (ActChgCrsSta + 116) -#define ActRcvPlaTxtBib (ActChgCrsSta + 117) -#define ActRcvPlaTxtFAQ (ActChgCrsSta + 118) -#define ActRcvPlaTxtCrsLnk (ActChgCrsSta + 119) -#define ActRcvRchTxtCrsInf (ActChgCrsSta + 120) -#define ActRcvRchTxtTchGui (ActChgCrsSta + 121) -#define ActRcvRchTxtSylLec (ActChgCrsSta + 122) -#define ActRcvRchTxtSylPra (ActChgCrsSta + 123) -#define ActRcvRchTxtBib (ActChgCrsSta + 124) -#define ActRcvRchTxtFAQ (ActChgCrsSta + 125) -#define ActRcvRchTxtCrsLnk (ActChgCrsSta + 126) +#define ActSelInfSrcCrsInf (ActChgCrsSta + 72) +#define ActSelInfSrcTchGui (ActChgCrsSta + 73) +#define ActSelInfSrcSylLec (ActChgCrsSta + 74) +#define ActSelInfSrcSylPra (ActChgCrsSta + 75) +#define ActSelInfSrcBib (ActChgCrsSta + 76) +#define ActSelInfSrcFAQ (ActChgCrsSta + 77) +#define ActSelInfSrcCrsLnk (ActChgCrsSta + 78) +#define ActRcvURLCrsInf (ActChgCrsSta + 79) +#define ActRcvURLTchGui (ActChgCrsSta + 80) +#define ActRcvURLSylLec (ActChgCrsSta + 81) +#define ActRcvURLSylPra (ActChgCrsSta + 82) +#define ActRcvURLBib (ActChgCrsSta + 83) +#define ActRcvURLFAQ (ActChgCrsSta + 84) +#define ActRcvURLCrsLnk (ActChgCrsSta + 85) +#define ActRcvPagCrsInf (ActChgCrsSta + 86) +#define ActRcvPagTchGui (ActChgCrsSta + 87) +#define ActRcvPagSylLec (ActChgCrsSta + 88) +#define ActRcvPagSylPra (ActChgCrsSta + 89) +#define ActRcvPagBib (ActChgCrsSta + 90) +#define ActRcvPagFAQ (ActChgCrsSta + 91) +#define ActRcvPagCrsLnk (ActChgCrsSta + 92) +#define ActEditorCrsInf (ActChgCrsSta + 93) +#define ActEditorTchGui (ActChgCrsSta + 94) +#define ActEditorSylLec (ActChgCrsSta + 95) +#define ActEditorSylPra (ActChgCrsSta + 96) +#define ActEditorBib (ActChgCrsSta + 97) +#define ActEditorFAQ (ActChgCrsSta + 98) +#define ActEditorCrsLnk (ActChgCrsSta + 99) +#define ActPlaTxtEdiCrsInf (ActChgCrsSta + 100) +#define ActPlaTxtEdiTchGui (ActChgCrsSta + 101) +#define ActPlaTxtEdiSylLec (ActChgCrsSta + 102) +#define ActPlaTxtEdiSylPra (ActChgCrsSta + 103) +#define ActPlaTxtEdiBib (ActChgCrsSta + 104) +#define ActPlaTxtEdiFAQ (ActChgCrsSta + 105) +#define ActPlaTxtEdiCrsLnk (ActChgCrsSta + 106) +#define ActRchTxtEdiCrsInf (ActChgCrsSta + 107) +#define ActRchTxtEdiTchGui (ActChgCrsSta + 108) +#define ActRchTxtEdiSylLec (ActChgCrsSta + 109) +#define ActRchTxtEdiSylPra (ActChgCrsSta + 110) +#define ActRchTxtEdiBib (ActChgCrsSta + 111) +#define ActRchTxtEdiFAQ (ActChgCrsSta + 112) +#define ActRchTxtEdiCrsLnk (ActChgCrsSta + 113) +#define ActRcvPlaTxtCrsInf (ActChgCrsSta + 114) +#define ActRcvPlaTxtTchGui (ActChgCrsSta + 115) +#define ActRcvPlaTxtSylLec (ActChgCrsSta + 116) +#define ActRcvPlaTxtSylPra (ActChgCrsSta + 117) +#define ActRcvPlaTxtBib (ActChgCrsSta + 118) +#define ActRcvPlaTxtFAQ (ActChgCrsSta + 119) +#define ActRcvPlaTxtCrsLnk (ActChgCrsSta + 120) +#define ActRcvRchTxtCrsInf (ActChgCrsSta + 121) +#define ActRcvRchTxtTchGui (ActChgCrsSta + 122) +#define ActRcvRchTxtSylLec (ActChgCrsSta + 123) +#define ActRcvRchTxtSylPra (ActChgCrsSta + 124) +#define ActRcvRchTxtBib (ActChgCrsSta + 125) +#define ActRcvRchTxtFAQ (ActChgCrsSta + 126) +#define ActRcvRchTxtCrsLnk (ActChgCrsSta + 127) -#define ActPrnCrsTT (ActChgCrsSta + 127) -#define ActEdiCrsTT (ActChgCrsSta + 128) -#define ActChgCrsTT (ActChgCrsSta + 129) -#define ActChgCrsTT1stDay (ActChgCrsSta + 130) +#define ActPrnCrsTT (ActChgCrsSta + 128) +#define ActEdiCrsTT (ActChgCrsSta + 129) +#define ActChgCrsTT (ActChgCrsSta + 130) +#define ActChgCrsTT1stDay (ActChgCrsSta + 131) /*****************************************************************************/ /***************************** Assessment tab ********************************/ diff --git a/swad_attendance.c b/swad_attendance.c index e7e0d010..46d84dae 100644 --- a/swad_attendance.c +++ b/swad_attendance.c @@ -2795,7 +2795,7 @@ static void Att_ListEventsToSelect (const struct Att_Events *Events, static void Att_PutIconToViewAttEvents (__attribute__((unused)) void *Args) { - Ico_PutContextualIconToView (ActSeeAtt, + Ico_PutContextualIconToView (ActSeeAtt,NULL, NULL,NULL); } diff --git a/swad_browser.c b/swad_browser.c index 0d6706a5..0fde5d09 100644 --- a/swad_browser.c +++ b/swad_browser.c @@ -3590,7 +3590,7 @@ static void Brw_PutIconsFileBrowser (__attribute__((unused)) void *Args) case Brw_ICON_NONE: break; case Brw_ICON_VIEW: - Ico_PutContextualIconToView (Brw_ActFromAdmToSee[Gbl.FileBrowser.Type], + Ico_PutContextualIconToView (Brw_ActFromAdmToSee[Gbl.FileBrowser.Type],NULL, Brw_PutHiddenParamFullTreeIfSelected,&Gbl.FileBrowser.FullTree); break; case Brw_ICON_EDIT: diff --git a/swad_changelog.h b/swad_changelog.h index 80695001..8e1671b2 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -606,10 +606,11 @@ TODO: Fix bug: error al enviar un mensaje a dos recipientes, error on duplicate TODO: Attach pdf files in multimedia. */ -#define Log_PLATFORM_VERSION "SWAD 21.108 (2022-07-18)" +#define Log_PLATFORM_VERSION "SWAD 21.109 (2022-07-19)" #define CSS_FILE "swad21.107.1.css" #define JS_FILE "swad21.100.js" /* + Version 21.109: Jul 19, 2022 Changes in edition of program items. (328975 lines) Version 21.108: Jul 18, 2022 Changes in edition of program items. (328908 lines) Version 21.107.1: Jul 17, 2022 Changes in layout of resources of program item. (? lines) Version 21.107: Jul 15, 2022 Move up/down resource of program item. (328953 lines) diff --git a/swad_game.c b/swad_game.c index 9dc0c052..28646ebc 100644 --- a/swad_game.c +++ b/swad_game.c @@ -553,7 +553,7 @@ static void Gam_ShowOneGame (struct Gam_Games *Games, Gam_PutFormsToRemEditOneGame (Games,Game,Anchor); else /* Put icon to view game listing its questions */ - Ico_PutContextualIconToView (ActLstOneGam, + Ico_PutContextualIconToView (ActLstOneGam,NULL, Gam_PutParams,Games); HTM_TD_End (); diff --git a/swad_group.c b/swad_group.c index f0bb4312..2dcb2647 100644 --- a/swad_group.c +++ b/swad_group.c @@ -1359,7 +1359,7 @@ static void Grp_PutIconsEditingGroupTypes (__attribute__((unused)) void *Args) static void Grp_PutIconToViewGroups (void) { - Ico_PutContextualIconToView (ActReqSelGrp, + Ico_PutContextualIconToView (ActReqSelGrp,NULL, NULL,NULL); } diff --git a/swad_icon.c b/swad_icon.c index 73c0f165..be509d1e 100644 --- a/swad_icon.c +++ b/swad_icon.c @@ -263,10 +263,10 @@ void Ico_PutContextualIconToViewFiles (Act_Action_t NextAction, "folder-open.svg",Ico_BLACK); } -void Ico_PutContextualIconToView (Act_Action_t NextAction, +void Ico_PutContextualIconToView (Act_Action_t NextAction,const char *Anchor, void (*FuncParams) (void *Args),void *Args) { - Lay_PutContextualLinkOnlyIcon (NextAction,NULL, + Lay_PutContextualLinkOnlyIcon (NextAction,Anchor, FuncParams,Args, "list.svg",Ico_BLACK); } diff --git a/swad_icon.h b/swad_icon.h index 22cd5883..cf31e6b5 100644 --- a/swad_icon.h +++ b/swad_icon.h @@ -72,7 +72,7 @@ void Ico_PutContextualIconToEdit (Act_Action_t NextAction,const char *Anchor, void (*FuncParams) (void *Args),void *Args); void Ico_PutContextualIconToViewFiles (Act_Action_t NextAction, void (*FuncParams) (void *Args),void *Args); -void Ico_PutContextualIconToView (Act_Action_t NextAction, +void Ico_PutContextualIconToView (Act_Action_t NextAction,const char *Anchor, void (*FuncParams) (void *Args),void *Args); void Ico_PutContextualIconToUnhide (Act_Action_t NextAction,const char *Anchor, void (*FuncParams) (void *Args),void *Args); diff --git a/swad_info.c b/swad_info.c index 4756fa7f..c8bf86d0 100644 --- a/swad_info.c +++ b/swad_info.c @@ -414,7 +414,7 @@ static void Inf_PutButtonToEditInfo (void) static void Inf_PutIconToViewInfo (void *Type) { if (Type) - Ico_PutContextualIconToView (Inf_ActionsSeeInfo[*((Inf_Type_t *) Type)], + Ico_PutContextualIconToView (Inf_ActionsSeeInfo[*((Inf_Type_t *) Type)],NULL, NULL,NULL); } diff --git a/swad_program.c b/swad_program.c index 4412d45b..7f6f410a 100644 --- a/swad_program.c +++ b/swad_program.c @@ -109,8 +109,8 @@ static void Prg_PutIconsListItems (__attribute__((unused)) void *Args); static void Prg_PutIconToCreateNewItem (void); static void Prg_PutButtonToCreateNewItem (void); -static void Prg_WriteRowItem (unsigned NumItem,struct Prg_Item *Item, - Prg_ShowItemForm_t ShowItemForm); +static void Prg_WriteRowItem (Prg_ListingItem_t ListingItem, + unsigned NumItem,struct Prg_Item *Item); static void Prg_WriteRowToCreateItem (long ItmCod,unsigned FormLevel); static void Prg_SetTitleClass (char **TitleClass,unsigned Level,bool LightStyle); static void Prg_FreeTitleClass (char *TitleClass); @@ -187,14 +187,14 @@ void Prg_ShowCourseProgram (void) void Prg_ShowCourseProgramHighlightingItem (const struct Prg_ItemRange *ToHighlight) { /***** Show all program items *****/ - Prg_ShowAllItems (Prg_ITEM_VIEW,ToHighlight,-1L,-1L,0); + Prg_ShowAllItems (Prg_EDIT_LIST,ToHighlight,-1L,-1L,0); } /*****************************************************************************/ /************************* Show all program items ****************************/ /*****************************************************************************/ -void Prg_ShowAllItems (Prg_ShowItemForm_t ShowItemForm, +void Prg_ShowAllItems (Prg_ListingItem_t ListingItem, const struct Prg_ItemRange *ToHighlight, long ParentItmCod,long ItmCod,unsigned FormLevel) { @@ -244,27 +244,24 @@ void Prg_ShowAllItems (Prg_ShowItemForm_t ShowItemForm, } /* Show form to create item */ - switch (ShowItemForm) + switch (ListingItem) { - case Prg_ITEM_PRINT: - case Prg_ITEM_VIEW: - case Prg_ITEM_EDIT_BUTTONS: - Prg_WriteRowItem (NumItem,&Item,Prg_ITEM_EDIT_BUTTONS); + case Prg_PRINT: + case Prg_VIEW: + case Prg_EDIT_LIST: + Prg_WriteRowItem (ListingItem,NumItem,&Item); break; - case Prg_ITEM_CREATE_FORM: - Prg_WriteRowItem (NumItem,&Item,Prg_ITEM_EDIT_BUTTONS); + case Prg_NEW_ITEM: + Prg_WriteRowItem (Prg_EDIT_LIST,NumItem,&Item); if (Item.Hierarchy.ItmCod == ItmCod) Prg_WriteRowToCreateItem (ParentItmCod,FormLevel); break; - case Prg_ITEM_CHANGE_FORM: - Prg_WriteRowItem (NumItem,&Item, - Item.Hierarchy.ItmCod == ItmCod ? Prg_ITEM_CHANGE_FORM : - Prg_ITEM_EDIT_BUTTONS); - break; - case Prg_ITEM_CHANGE_RESOURCES: - Prg_WriteRowItem (NumItem,&Item, - Item.Hierarchy.ItmCod == ItmCod ? Prg_ITEM_CHANGE_RESOURCES : - Prg_ITEM_EDIT_BUTTONS); + case Prg_EDIT_ITEM: + case Prg_EDIT_RESOURCES: + case Prg_END_EDIT_RES: + Prg_WriteRowItem (Item.Hierarchy.ItmCod == ItmCod ? ListingItem : + Prg_EDIT_LIST, + NumItem,&Item); break; } @@ -280,7 +277,7 @@ void Prg_ShowAllItems (Prg_ShowItemForm_t ShowItemForm, } /***** Create item at the end? *****/ - if (ItmCod <= 0 && ShowItemForm == Prg_ITEM_CREATE_FORM) + if (ItmCod <= 0 && ListingItem == Prg_NEW_ITEM) Prg_WriteRowToCreateItem (-1L,1); /***** End table *****/ @@ -353,8 +350,8 @@ static void Prg_PutButtonToCreateNewItem (void) /************************** Show one program item ****************************/ /*****************************************************************************/ -static void Prg_WriteRowItem (unsigned NumItem,struct Prg_Item *Item, - Prg_ShowItemForm_t ShowItemForm) +static void Prg_WriteRowItem (Prg_ListingItem_t ListingItem, + unsigned NumItem,struct Prg_Item *Item) { static unsigned UniqueId = 0; bool LightStyle; @@ -382,11 +379,12 @@ static void Prg_WriteRowItem (unsigned NumItem,struct Prg_Item *Item, HTM_TR_Begin (NULL); /***** Forms to remove/edit this program item *****/ - switch (ShowItemForm) + switch (ListingItem) { - case Prg_ITEM_EDIT_BUTTONS: - case Prg_ITEM_CHANGE_FORM: - case Prg_ITEM_CHANGE_RESOURCES: + case Prg_EDIT_LIST: + case Prg_EDIT_ITEM: + case Prg_EDIT_RESOURCES: + case Prg_END_EDIT_RES: HTM_TD_Begin ("rowspan=\"2\" class=\"PRG_COL1 LT %s\"", The_GetColorRows ()); Prg_PutFormsToRemEditOneItem (NumItem,Item); @@ -413,9 +411,9 @@ static void Prg_WriteRowItem (unsigned NumItem,struct Prg_Item *Item, /***** Title *****/ ColSpan = (Prg_GetMaxItemLevel () + 2) - Item->Hierarchy.Level; - switch (ShowItemForm) + switch (ListingItem) { - case Prg_ITEM_PRINT: + case Prg_PRINT: HTM_TD_Begin ("colspan=\"%u\" class=\"PRG_MAIN %s\"", ColSpan,TitleClass); break; @@ -436,9 +434,9 @@ static void Prg_WriteRowItem (unsigned NumItem,struct Prg_Item *Item, { if (asprintf (&Id,"scd_date_%u_%u",(unsigned) StartEndTime,UniqueId) < 0) Err_NotEnoughMemoryExit (); - switch (ShowItemForm) + switch (ListingItem) { - case Prg_ITEM_PRINT: + case Prg_PRINT: HTM_TD_Begin ("id=\"%s\" class=\"PRG_DATE LT %s_%s\"", Id, LightStyle ? (Item->Open ? "DATE_GREEN_LIGHT" : @@ -473,9 +471,9 @@ static void Prg_WriteRowItem (unsigned NumItem,struct Prg_Item *Item, /* Begin text and resources */ ColSpan += 2; - switch (ShowItemForm) + switch (ListingItem) { - case Prg_ITEM_PRINT: + case Prg_PRINT: HTM_TD_Begin ("colspan=\"%u\" class=\"PRG_MAIN\"",ColSpan); break; default: @@ -485,9 +483,9 @@ static void Prg_WriteRowItem (unsigned NumItem,struct Prg_Item *Item, } /* Item text / form */ - switch (ShowItemForm) + switch (ListingItem) { - case Prg_ITEM_CHANGE_FORM: + case Prg_EDIT_ITEM: /* Form to change item title, dates and text */ HTM_ARTICLE_Begin ("item_form"); Prg_ShowFormToChangeItem (Item->Hierarchy.ItmCod); @@ -509,15 +507,7 @@ static void Prg_WriteRowItem (unsigned NumItem,struct Prg_Item *Item, } /* List of resources */ - switch (ShowItemForm) - { - case Prg_ITEM_CHANGE_RESOURCES: - PrgRsc_ListResourcesToEdit (Item->Hierarchy.ItmCod); - break; - default: - PrgRsc_ListResourcesToShow (Item->Hierarchy.ItmCod); - break; - } + PrgRsc_ListItemResources (ListingItem,Item->Hierarchy.ItmCod); /* End text and resources */ HTM_TD_End (); @@ -1625,7 +1615,7 @@ void Prg_RequestCreateItem (void) /***** Show current program items, if any *****/ Prg_SetItemRangeEmpty (&ToHighlight); - Prg_ShowAllItems (Prg_ITEM_CREATE_FORM, + Prg_ShowAllItems (Prg_NEW_ITEM, &ToHighlight,ParentItmCod,ItmCodBeforeForm,FormLevel); /***** Free list of program items *****/ @@ -1649,7 +1639,7 @@ void Prg_RequestChangeItem (void) /***** Show current program items, if any *****/ Prg_SetItemRangeEmpty (&ToHighlight); - Prg_ShowAllItems (Prg_ITEM_CHANGE_FORM, + Prg_ShowAllItems (Prg_EDIT_ITEM, &ToHighlight,-1L,ItmCod,FormLevel); /***** Free list of program items *****/ diff --git a/swad_program.h b/swad_program.h index b125951c..9358726c 100644 --- a/swad_program.h +++ b/swad_program.h @@ -71,15 +71,17 @@ typedef enum Prg_MOVE_RIGHT, } Prg_MoveLeftRight_t; +#define Prg_NUM_LISTING_ITEM_TYPES 7 typedef enum { - Prg_ITEM_PRINT, - Prg_ITEM_VIEW, - Prg_ITEM_EDIT_BUTTONS, - Prg_ITEM_CREATE_FORM, - Prg_ITEM_CHANGE_FORM, - Prg_ITEM_CHANGE_RESOURCES, - } Prg_ShowItemForm_t; + Prg_PRINT, // List items ready to be printed + Prg_VIEW, // List items without any edition + Prg_EDIT_LIST, // Buttons to edit list of items + Prg_NEW_ITEM, // Form to create a new item + Prg_EDIT_ITEM, // Form to edit a selected item + Prg_EDIT_RESOURCES, // List resources of a selected item for edition + Prg_END_EDIT_RES, // List resources of a selected item after edition + } Prg_ListingItem_t; /*****************************************************************************/ /***************************** Public prototypes *****************************/ @@ -88,7 +90,7 @@ typedef enum void Prg_ShowCourseProgram (void); void Prg_ShowCourseProgramHighlightingItem (const struct Prg_ItemRange *ToHighlight); -void Prg_ShowAllItems (Prg_ShowItemForm_t ShowItemForm, +void Prg_ShowAllItems (Prg_ListingItem_t ListingItem, const struct Prg_ItemRange *ToHighlight, long ParentItmCod,long ItmCod,unsigned FormLevel); diff --git a/swad_program_resource.c b/swad_program_resource.c index f79526b6..5e4e2593 100644 --- a/swad_program_resource.c +++ b/swad_program_resource.c @@ -61,14 +61,16 @@ static const char *PrgRsc_RESOURCE_SECTION_ID = "rsc_section"; /***************************** Private prototypes ****************************/ /*****************************************************************************/ -static void PrgRsc_PutIconsListResources (__attribute__((unused)) void *Args); +static void PrgRsc_PutIconsViewResources (void *ItmCod); +static void PrgRsc_PutIconsEditResources (void *ItmCod); +static void PrgSrc_PutIconToViewResources (long ItmCod); static void PrgSrc_PutIconToEditResources (long ItmCod); static void PrgRsc_GetDataOfResourceByCod (struct PrgRsc_Resource *Resource); static void PrgRsc_GetDataOfResource (struct PrgRsc_Resource *Resource, MYSQL_RES **mysql_res); static void PrgRsc_ResetResource (struct PrgRsc_Resource *Resource); -static void PrgRsc_WriteRowShowResource (unsigned NumRsc, +static void PrgRsc_WriteRowViewResource (unsigned NumRsc, struct PrgRsc_Resource *Resource); static void PrgRsc_WriteRowEditResource (unsigned NumRsc,unsigned NumResources, struct PrgRsc_Resource *Resource); @@ -85,6 +87,34 @@ static void PrgRsc_MoveUpDownResource (PrgRsc_MoveUpDown_t UpDown); static bool PrgRsc_ExchangeResources (const struct PrgRsc_Rsc *Rsc1, const struct PrgRsc_Rsc *Rsc2); +/*****************************************************************************/ +/****************************** View resources *******************************/ +/*****************************************************************************/ + +void PrgRsc_ViewResources (void) + { + long ItmCod; + unsigned FormLevel; + struct Prg_ItemRange ToHighlight; + + /***** Get list of program items *****/ + Prg_GetListItems (); + + /***** Get the code of the program item *****/ + if ((ItmCod = Prg_GetParamItmCod ()) > 0) + FormLevel = Prg_GetLevelFromNumItem (Prg_GetNumItemFromItmCod (ItmCod)); + else + FormLevel = 0; + + /***** Show current program items, if any *****/ + Prg_SetItemRangeEmpty (&ToHighlight); + Prg_ShowAllItems (Prg_END_EDIT_RES, + &ToHighlight,-1L,ItmCod,FormLevel); + + /***** Free list of program items *****/ + Prg_FreeListItems (); + } + /*****************************************************************************/ /****************************** Edit resources *******************************/ /*****************************************************************************/ @@ -106,7 +136,7 @@ void PrgRsc_EditResources (void) /***** Show current program items, if any *****/ Prg_SetItemRangeEmpty (&ToHighlight); - Prg_ShowAllItems (Prg_ITEM_CHANGE_RESOURCES, + Prg_ShowAllItems (Prg_EDIT_RESOURCES, &ToHighlight,-1L,ItmCod,FormLevel); /***** Free list of program items *****/ @@ -114,56 +144,10 @@ void PrgRsc_EditResources (void) } /*****************************************************************************/ -/****************************** Show resources *******************************/ +/****************************** List resources *******************************/ /*****************************************************************************/ -void PrgRsc_ListResourcesToShow (long ItmCod) - { - extern const char *Txt_Resources; - MYSQL_RES *mysql_res; - unsigned NumRsc; - unsigned NumResources; - struct PrgRsc_Resource Resource; - - /***** Trivial check *****/ - if (ItmCod <= 0) - return; - - /***** Begin box *****/ - Box_BoxBegin ("100%",Txt_Resources, - PrgRsc_PutIconsListResources,&ItmCod, - NULL,Box_NOT_CLOSABLE); - - /***** Get list of item resources from database *****/ - if ((NumResources = Prg_DB_GetListResources (&mysql_res,ItmCod, - false))) // Don't get hidden resources - { - /***** Table *****/ - HTM_TABLE_BeginWideMarginPadding (2); - HTM_TBODY_Begin (NULL); - - /***** Write all item resources *****/ - for (NumRsc = 1; - NumRsc <= NumResources; - NumRsc++) - { - /* Get data of this item resource */ - PrgRsc_GetDataOfResource (&Resource,&mysql_res); - - /* Show item */ - PrgRsc_WriteRowShowResource (NumRsc,&Resource); - } - - /***** End table *****/ - HTM_TBODY_End (); - HTM_TABLE_End (); - } - - /***** End box *****/ - Box_BoxEnd (); - } - -void PrgRsc_ListResourcesToEdit (long ItmCod) +void PrgRsc_ListItemResources (Prg_ListingItem_t ListingItem,long ItmCod) { extern const char *Hlp_COURSE_Program; extern const char *Txt_Remove_resource; @@ -172,6 +156,26 @@ void PrgRsc_ListResourcesToEdit (long ItmCod) unsigned NumRsc; unsigned NumResources; struct PrgRsc_Resource Resource; + static bool GetHiddenResources[Prg_NUM_LISTING_ITEM_TYPES] = + { + [Prg_PRINT ] = false, + [Prg_VIEW ] = false, + [Prg_EDIT_LIST ] = false, + [Prg_NEW_ITEM ] = false, + [Prg_EDIT_ITEM ] = false, + [Prg_EDIT_RESOURCES] = true, + [Prg_END_EDIT_RES ] = false, + }; + static bool FeaturedList[Prg_NUM_LISTING_ITEM_TYPES] = + { + [Prg_PRINT ] = false, + [Prg_VIEW ] = false, + [Prg_EDIT_LIST ] = false, + [Prg_NEW_ITEM ] = false, + [Prg_EDIT_ITEM ] = false, + [Prg_EDIT_RESOURCES] = true, + [Prg_END_EDIT_RES ] = true, + }; /***** Trivial check *****/ if (ItmCod <= 0) @@ -179,64 +183,102 @@ void PrgRsc_ListResourcesToEdit (long ItmCod) /***** Get list of item resources from database *****/ NumResources = Prg_DB_GetListResources (&mysql_res,ItmCod, - true); // Get hidden resources + GetHiddenResources[ListingItem]); /***** Begin section *****/ - HTM_SECTION_Begin (PrgRsc_RESOURCE_SECTION_ID); + if (FeaturedList[ListingItem]) + HTM_SECTION_Begin (PrgRsc_RESOURCE_SECTION_ID); - /***** Show possible alerts *****/ + /***** Show possible alerts *****/ + if (FeaturedList[ListingItem]) switch (Gbl.Action.Act) - { + { case ActReqRemPrgRsc: - /* Alert with button to remove resource */ + /* Alert with button to remove resource */ Ale_ShowLastAlertAndButton (ActRemPrgRsc,PrgRsc_RESOURCE_SECTION_ID,NULL, PrgRsc_PutParams,&PrgSrc_RscCodToBeRemoved, Btn_REMOVE_BUTTON,Txt_Remove_resource); break; default: - Ale_ShowAlerts (PrgRsc_RESOURCE_SECTION_ID); - break; - } + Ale_ShowAlerts (PrgRsc_RESOURCE_SECTION_ID); + break; + } - /***** Begin box *****/ - Box_BoxBegin ("100%",Txt_Resources, - NULL,NULL, - Hlp_COURSE_Program,Box_NOT_CLOSABLE); + /***** Begin box *****/ + switch (ListingItem) + { + case Prg_EDIT_LIST: + case Prg_NEW_ITEM: + case Prg_EDIT_ITEM: + case Prg_END_EDIT_RES: + Box_BoxBegin ("100%",Txt_Resources, + PrgRsc_PutIconsEditResources,&ItmCod, + Hlp_COURSE_Program,Box_NOT_CLOSABLE); + break; + case Prg_EDIT_RESOURCES: + Box_BoxBegin ("100%",Txt_Resources, + PrgRsc_PutIconsViewResources,&ItmCod, + Hlp_COURSE_Program,Box_NOT_CLOSABLE); + break; + default: + Box_BoxBegin ("100%",Txt_Resources, + NULL,NULL, + Hlp_COURSE_Program,Box_NOT_CLOSABLE); + break; + } - /***** Table *****/ - HTM_TABLE_BeginWideMarginPadding (2); - HTM_TBODY_Begin (NULL); + /***** Table *****/ + HTM_TABLE_BeginWideMarginPadding (2); + HTM_TBODY_Begin (NULL); - /***** Write all item resources *****/ - for (NumRsc = 0; - NumRsc < NumResources; - NumRsc++) - { - /* Get data of this item resource */ - PrgRsc_GetDataOfResource (&Resource,&mysql_res); + /***** Write all item resources *****/ + for (NumRsc = 0; + NumRsc < NumResources; + NumRsc++) + { + /* Get data of this item resource */ + PrgRsc_GetDataOfResource (&Resource,&mysql_res); - /* Show item */ - PrgRsc_WriteRowEditResource (NumRsc,NumResources,&Resource); + /* Show item */ + switch (ListingItem) + { + case Prg_EDIT_RESOURCES: + PrgRsc_WriteRowEditResource (NumRsc,NumResources,&Resource); + break; + default: + PrgRsc_WriteRowViewResource (NumRsc,&Resource); + break; + } - The_ChangeRowColor (); - } + The_ChangeRowColor (); + } - /***** End table *****/ - HTM_TBODY_End (); - HTM_TABLE_End (); + /***** End table *****/ + HTM_TBODY_End (); + HTM_TABLE_End (); - /***** End box *****/ - Box_BoxEnd (); + /***** End box *****/ + Box_BoxEnd (); /***** End section *****/ - HTM_SECTION_End (); + if (FeaturedList[ListingItem]) + HTM_SECTION_End (); } /*****************************************************************************/ /************** Put contextual icons in list of item resources ***************/ /*****************************************************************************/ -static void PrgRsc_PutIconsListResources (void *ItmCod) +static void PrgRsc_PutIconsViewResources (void *ItmCod) + { + /***** Put icon to create a new item resource *****/ + if (ItmCod) + if (*((long *) ItmCod) > 0) + if (Prg_CheckIfICanCreateItems ()) + PrgSrc_PutIconToViewResources (*((long *) ItmCod)); + } + +static void PrgRsc_PutIconsEditResources (void *ItmCod) { /***** Put icon to create a new item resource *****/ if (ItmCod) @@ -249,6 +291,12 @@ static void PrgRsc_PutIconsListResources (void *ItmCod) /********************* Put icon to edit item resources ***********************/ /*****************************************************************************/ +static void PrgSrc_PutIconToViewResources (long ItmCod) + { + Ico_PutContextualIconToView (ActFrmSeePrgRsc,PrgRsc_RESOURCE_SECTION_ID, + Prg_PutParams,&ItmCod); + } + static void PrgSrc_PutIconToEditResources (long ItmCod) { Ico_PutContextualIconToEdit (ActFrmEdiPrgRsc,PrgRsc_RESOURCE_SECTION_ID, @@ -329,7 +377,7 @@ static void PrgRsc_ResetResource (struct PrgRsc_Resource *Resource) /************************** Show one item resource ***************************/ /*****************************************************************************/ -static void PrgRsc_WriteRowShowResource (unsigned NumRsc, +static void PrgRsc_WriteRowViewResource (unsigned NumRsc, struct PrgRsc_Resource *Resource) { /***** Begin row *****/ @@ -338,7 +386,7 @@ static void PrgRsc_WriteRowShowResource (unsigned NumRsc, /***** Resource number *****/ HTM_TD_Begin ("class=\"PRG_NUM PRG_RSC_%s RT %s\"", The_GetSuffix (),The_GetColorRows ()); - HTM_Unsigned (NumRsc); + HTM_Unsigned (NumRsc + 1); HTM_TD_End (); /***** Title *****/ @@ -502,7 +550,7 @@ void PrgRsc_ReqRemResource (void) /***** Show current program items, if any *****/ Prg_SetItemRangeEmpty (&ToHighlight); - Prg_ShowAllItems (Prg_ITEM_CHANGE_RESOURCES, + Prg_ShowAllItems (Prg_EDIT_RESOURCES, &ToHighlight,-1L,ItmCod,FormLevel); /***** Free list of program items *****/ @@ -543,7 +591,7 @@ void PrgRsc_RemoveResource (void) /***** Show current program items, if any *****/ Prg_SetItemRangeEmpty (&ToHighlight); - Prg_ShowAllItems (Prg_ITEM_CHANGE_RESOURCES, + Prg_ShowAllItems (Prg_EDIT_RESOURCES, &ToHighlight,-1L,ItmCod,FormLevel); /***** Free list of program items *****/ @@ -589,7 +637,7 @@ static void PrgRsc_HideOrUnhideResource (bool Hide) /***** Show current program items, if any *****/ Prg_SetItemRangeEmpty (&ToHighlight); - Prg_ShowAllItems (Prg_ITEM_CHANGE_RESOURCES, + Prg_ShowAllItems (Prg_EDIT_RESOURCES, &ToHighlight,-1L,ItmCod,FormLevel); /***** Free list of program items *****/ @@ -652,7 +700,7 @@ static void PrgRsc_MoveUpDownResource (PrgRsc_MoveUpDown_t UpDown) /***** Show current program items, if any *****/ Prg_SetItemRangeEmpty (&ToHighlight); - Prg_ShowAllItems (Prg_ITEM_CHANGE_RESOURCES, + Prg_ShowAllItems (Prg_EDIT_RESOURCES, &ToHighlight,-1L,ItmCod,FormLevel); /***** Free list of program items *****/ diff --git a/swad_program_resource.h b/swad_program_resource.h index da675a39..52de0b53 100644 --- a/swad_program_resource.h +++ b/swad_program_resource.h @@ -52,10 +52,11 @@ struct PrgRsc_Resource /***************************** Public prototypes *****************************/ /*****************************************************************************/ +void PrgRsc_ViewResources (void); void PrgRsc_EditResources (void); -void PrgRsc_ListResourcesToShow (long ItmCod); -void PrgRsc_ListResourcesToEdit (long ItmCod); +void PrgRsc_ListItemResources (Prg_ListingItem_t ListingItem,long ItmCod); + void PrgRsc_RequestCreateResource (void); void PrgRsc_ReqRemResource (void); diff --git a/swad_text_action.c b/swad_text_action.c index 383a33f2..477e738d 100644 --- a/swad_text_action.c +++ b/swad_text_action.c @@ -5695,29 +5695,52 @@ const char *Txt_Actions[Act_NUM_ACTIONS] = "Move right program item" // Precisa de tradução #elif L==10 // tr "Move right program item" // Çeviri lazim! +#endif + , + [ActFrmSeePrgRsc] = +#if L==1 // ca + "Veure recursos" +#elif L==2 // de + "Siehe Ressourcen" +#elif L==3 // en + "See resources" +#elif L==4 // es + "Ver recursos" +#elif L==5 // fr + "Voir ressources" +#elif L==6 // gn + "Editar recursos" // Okoteve traducción +#elif L==7 // it + "Vedi risorse" +#elif L==8 // pl + "Zobacz zasoby" +#elif L==9 // pt + "Ver recursos" +#elif L==10 // tr + "Kaynakları düzenle" #endif , [ActFrmEdiPrgRsc] = #if L==1 // ca - "Edit resources" // Necessita traducció + "Editar recursos" #elif L==2 // de - "Edit resources" // Need Übersetzung + "Ressourcen bearbeiten" #elif L==3 // en "Edit resources" #elif L==4 // es "Editar recursos" #elif L==5 // fr - "Edit resources" // Besoin de traduction + "Modifier ressources" #elif L==6 // gn "Editar recursos" // Okoteve traducción #elif L==7 // it - "Edit resources" // Bisogno di traduzione + "Modifica risorse" #elif L==8 // pl - "Edit resources" // Potrzebujesz tlumaczenie + "Edytuj zasoby" #elif L==9 // pt - "Edit resources" // Precisa de tradução + "Editar recursos" #elif L==10 // tr - "Edit resources" // Çeviri lazim! + "Kaynakları düzenle" #endif , [ActReqRemPrgRsc] = @@ -17360,25 +17383,25 @@ const char *Txt_Actions[Act_NUM_ACTIONS] = , [ActSeeDocCrs] = #if L==1 // ca - "See documents zone of the course" // Necessita traducció + "Veure zona de documents de l'assignatura" #elif L==2 // de - "See documents zone of the course" // Need Übersetzung + "Siehe Dokumentenbereich der Kurs" #elif L==3 // en - "See documents zone of the course" + "See document area of the course" #elif L==4 // es "Ver zona de documentos de la asignatura" #elif L==5 // fr - "See documents zone of the course" // Besoin de traduction + "Voir la zone de documents de la matière" #elif L==6 // gn "Ver zona de documentos de la asignatura" // Okoteve traducción #elif L==7 // it - "See documents zone of the course" // Bisogno di traduzione + "Vedi area documenti del corso" #elif L==8 // pl - "See documents zone of the course" // Potrzebujesz tlumaczenie + "Zobacz obszar dokumentu kursu" #elif L==9 // pt - "See documents zone of the course" // Precisa de tradução + "Ver a área de documentos da disciplina" #elif L==10 // tr - "See documents zone of the course" // Çeviri lazim! + "Kursun belge alanına bakın" #endif , [ActExpSeeDocCrs] = diff --git a/swad_timetable.c b/swad_timetable.c index 3d2bf42b..966c3095 100644 --- a/swad_timetable.c +++ b/swad_timetable.c @@ -486,7 +486,7 @@ void Tmt_EditMyTutTimeTable (void) static void Tmt_PutIconToViewCrsTT (__attribute__((unused)) void *Args) { - Ico_PutContextualIconToView (ActSeeCrsTT, + Ico_PutContextualIconToView (ActSeeCrsTT,NULL, NULL,NULL); } @@ -496,7 +496,7 @@ static void Tmt_PutIconToViewCrsTT (__attribute__((unused)) void *Args) static void Tmt_PutIconToViewMyTT (__attribute__((unused)) void *Args) { - Ico_PutContextualIconToView (ActSeeMyTT, + Ico_PutContextualIconToView (ActSeeMyTT,NULL, NULL,NULL); }