Version19.76.4

This commit is contained in:
Antonio Cañas Vargas 2019-11-22 01:04:03 +01:00
parent 397b46748e
commit 1176fe30e2
15 changed files with 391 additions and 386 deletions

View File

@ -490,7 +490,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.76.3 (2019-11-21)"
#define Log_PLATFORM_VERSION "SWAD 19.76.4 (2019-11-22)"
#define CSS_FILE "swad19.74.3.css"
#define JS_FILE "swad19.70.js"
/*
@ -498,6 +498,7 @@ ps2pdf source.ps destination.pdf
// TODO: Impedir la creación y edición de proyectos si no son editables.
// TODO: En cada juego, poder listar los resultados en una tabla como la de resultados globales
Version 19.76.4: Nov 22, 2019 Code refactoring related to vectors. (246851 lines)
Version 19.76.3: Nov 21, 2019 Code refactoring related to vectors. (246850 lines)
Version 19.76.2: Nov 21, 2019 Code refactoring related to vectors. (246966 lines)
Version 19.76.1: Nov 21, 2019 Code refactoring related to vectors. (247023 lines)

View File

@ -83,103 +83,103 @@ typedef enum
#define Net_MAX_BYTES_NETWORK_NAME 32
const char *Net_WebsAndSocialNetworksDB[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] =
static const char *Net_WebsAndSocialNetworksDB[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] =
{
"www", // Net_WWW
"500px", // Net_500PX
"delicious", // Net_DELICIOUS
"deviantart", // Net_DEVIANTART
"diaspora", // Net_DIASPORA
"edmodo", // Net_EDMODO
"facebook", // Net_FACEBOOK
"flickr", // Net_FLICKR
"foursquare", // Net_FOURSQUAREhub
"github", // Net_GITHUB
"gnusocial", // Net_GNU_SOCIAL
"googleplus", // Net_GOOGLE_PLUS
"googlescholar", // Net_GOOGLE_SCHOLAR
"identica", // Net_IDENTICA
"instagram", // Net_INSTAGRAM
"linkedin", // Net_LINKEDIN
"orcid", // Net_ORCID
"paperli", // Net_PAPERLI
"pinterest", // Net_PINTEREST
"researchgate", // Net_RESEARCH_GATE
"researcherid", // Net_RESEARCHERID
"scoopit", // Net_SCOOPIT
"slideshare", // Net_SLIDESHARE
"stackoverflow", // Net_STACK_OVERFLOW
"storify", // Net_STORIFY
"tumblr", // Net_TUMBLR
"twitter", // Net_TWITTER
"wikipedia", // Net_WIKIPEDIA
"youtube", // Net_YOUTUBE
[Net_WWW ] = "www",
[Net_500PX ] = "500px",
[Net_DELICIOUS ] = "delicious",
[Net_DEVIANTART ] = "deviantart",
[Net_DIASPORA ] = "diaspora",
[Net_EDMODO ] = "edmodo",
[Net_FACEBOOK ] = "facebook",
[Net_FLICKR ] = "flickr",
[Net_FOURSQUARE ] = "foursquare",
[Net_GITHUB ] = "github",
[Net_GNU_SOCIAL ] = "gnusocial",
[Net_GOOGLE_PLUS ] = "googleplus",
[Net_GOOGLE_SCHOLAR] = "googlescholar",
[Net_IDENTICA ] = "identica",
[Net_INSTAGRAM ] = "instagram",
[Net_LINKEDIN ] = "linkedin",
[Net_ORCID ] = "orcid",
[Net_PAPERLI ] = "paperli",
[Net_PINTEREST ] = "pinterest",
[Net_RESEARCH_GATE ] = "researchgate",
[Net_RESEARCHERID ] = "researcherid",
[Net_SCOOPIT ] = "scoopit",
[Net_SLIDESHARE ] = "slideshare",
[Net_STACK_OVERFLOW] = "stackoverflow",
[Net_STORIFY ] = "storify",
[Net_TUMBLR ] = "tumblr",
[Net_TWITTER ] = "twitter",
[Net_WIKIPEDIA ] = "wikipedia",
[Net_YOUTUBE ] = "youtube",
};
const char *Net_WebsAndSocialNetworksIcons[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] =
static const char *Net_WebsAndSocialNetworksIcons[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] =
{
"globe.svg", // Net_WWW
"500px-brands.svg", // Net_500PX
"delicious-brands.svg", // Net_DELICIOUS
"deviantart-brands.svg", // Net_DEVIANTART
"diaspora-brands.svg", // Net_DIASPORA
"edmodo64x64.png", // Net_EDMODO
"facebook-brands.svg", // Net_FACEBOOK
"flickr-brands.svg", // Net_FLICKR
"foursquare-brands.svg", // Net_FOURSQUAREhub
"github-brands.svg", // Net_GITHUB
"gnusocial64x64.png", // Net_GNU_SOCIAL
"google-plus-brands.svg", // Net_GOOGLE_PLUS
"googlescholar.svg", // Net_GOOGLE_SCHOLAR
"identica64x64.png", // Net_IDENTICA
"instagram-brands.svg", // Net_INSTAGRAM
"linkedin-brands.svg", // Net_LINKEDIN
"orcid64x64.png", // Net_ORCID
"paperli64x64.png", // Net_PAPERLI
"pinterest-brands.svg", // Net_PINTEREST
"researchgate-brands.svg", // Net_RESEARCH_GATE
"researcherid64x64.png", // Net_RESEARCHERID
"scoopit64x64.png", // Net_SCOOPIT
"slideshare-brands.svg", // Net_SLIDESHARE
"stack-overflow-brands.svg", // Net_STACK_OVERFLOW
"storify64x64.png", // Net_STORIFY
"tumblr-brands.svg", // Net_TUMBLR
"twitter-brands.svg", // Net_TWITTER
"wikipedia-w-brands.svg", // Net_WIKIPEDIA
"youtube-brands.svg", // Net_YOUTUBE
[Net_WWW ] = "globe.svg",
[Net_500PX ] = "500px-brands.svg",
[Net_DELICIOUS ] = "delicious-brands.svg",
[Net_DEVIANTART ] = "deviantart-brands.svg",
[Net_DIASPORA ] = "diaspora-brands.svg",
[Net_EDMODO ] = "edmodo64x64.png",
[Net_FACEBOOK ] = "facebook-brands.svg",
[Net_FLICKR ] = "flickr-brands.svg",
[Net_FOURSQUARE ] = "foursquare-brands.svg",
[Net_GITHUB ] = "github-brands.svg",
[Net_GNU_SOCIAL ] = "gnusocial64x64.png",
[Net_GOOGLE_PLUS ] = "google-plus-brands.svg",
[Net_GOOGLE_SCHOLAR] = "googlescholar.svg",
[Net_IDENTICA ] = "identica64x64.png",
[Net_INSTAGRAM ] = "instagram-brands.svg",
[Net_LINKEDIN ] = "linkedin-brands.svg",
[Net_ORCID ] = "orcid64x64.png",
[Net_PAPERLI ] = "paperli64x64.png",
[Net_PINTEREST ] = "pinterest-brands.svg",
[Net_RESEARCH_GATE ] = "researchgate-brands.svg",
[Net_RESEARCHERID ] = "researcherid64x64.png",
[Net_SCOOPIT ] = "scoopit64x64.png",
[Net_SLIDESHARE ] = "slideshare-brands.svg",
[Net_STACK_OVERFLOW] = "stack-overflow-brands.svg",
[Net_STORIFY ] = "storify64x64.png",
[Net_TUMBLR ] = "tumblr-brands.svg",
[Net_TWITTER ] = "twitter-brands.svg",
[Net_WIKIPEDIA ] = "wikipedia-w-brands.svg",
[Net_YOUTUBE ] = "youtube-brands.svg",
};
const char *Net_WebsAndSocialNetworksTitle[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] =
static const char *Net_WebsAndSocialNetworksTitle[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] =
{
"WWW", // Net_WWW
"500px", // Net_500PX
"Delicious", // Net_DELICIOUS
"DeviantArt", // Net_DEVIANTART
"Diaspora", // Net_DIASPORA
"Edmodo", // Net_EDMODO
"Facebook", // Net_FACEBOOK
"Flickr", // Net_FLICKR
"Foursquare", // Net_FOURSQUARE
"GitHub", // Net_GITHUB
"GNU Social", // Net_GNU_SOCIAL
"Google+", // Net_GOOGLE_PLUS
"Google Scholar", // Net_GOOGLE_SCHOLAR
"identi.ca", // Net_IDENTICA
"Instagram", // Net_INSTAGRAM
"LinkedIn", // Net_LINKEDIN
"ORCID", // Net_ORCID
"Paper.li", // Net_PAPERLI
"Pinterest", // Net_PINTEREST
"Research Gate", // Net_RESEARCH_GATE
"ResearcherID", // Net_RESEARCHERID
"Scoop.it", // Net_SCOOPIT
"Slideshare", // Net_SLIDESHARE
"Stack Overflow", // Net_STACK_OVERFLOW
"Storify", // Net_STORIFY
"Tumblr", // Net_TUMBLR
"Twitter", // Net_TWITTER
"Wikipedia", // Net_WIKIPEDIA
"YouTube", // Net_YOUTUBE
[Net_WWW ] = "WWW",
[Net_500PX ] = "500px",
[Net_DELICIOUS ] = "Delicious",
[Net_DEVIANTART ] = "DeviantArt",
[Net_DIASPORA ] = "Diaspora",
[Net_EDMODO ] = "Edmodo",
[Net_FACEBOOK ] = "Facebook",
[Net_FLICKR ] = "Flickr",
[Net_FOURSQUARE ] = "Foursquare",
[Net_GITHUB ] = "GitHub",
[Net_GNU_SOCIAL ] = "GNU Social",
[Net_GOOGLE_PLUS ] = "Google+",
[Net_GOOGLE_SCHOLAR] = "Google Scholar",
[Net_IDENTICA ] = "identi.ca",
[Net_INSTAGRAM ] = "Instagram",
[Net_LINKEDIN ] = "LinkedIn",
[Net_ORCID ] = "ORCID",
[Net_PAPERLI ] = "Paper.li",
[Net_PINTEREST ] = "Pinterest",
[Net_RESEARCH_GATE ] = "Research Gate",
[Net_RESEARCHERID ] = "ResearcherID",
[Net_SCOOPIT ] = "Scoop.it",
[Net_SLIDESHARE ] = "Slideshare",
[Net_STACK_OVERFLOW] = "Stack Overflow",
[Net_STORIFY ] = "Storify",
[Net_TUMBLR ] = "Tumblr",
[Net_TWITTER ] = "Twitter",
[Net_WIKIPEDIA ] = "Wikipedia",
[Net_YOUTUBE ] = "YouTube",
};
#define Net_MY_WEBS_ID "my_webs_section"

View File

@ -55,16 +55,16 @@ extern struct Globals Gbl;
#define Not_MAX_CHARS_ON_NOTICE 40 // Maximum number of characters in notices (when not expanded)
const unsigned Not_ContainerWidth[Not_NUM_TYPES_LISTING] =
static const unsigned Not_ContainerWidth[Not_NUM_TYPES_LISTING] =
{
148 + 50, // Not_LIST_BRIEF_NOTICES
500 + 50, // Not_LIST_FULL_NOTICES
[Not_LIST_BRIEF_NOTICES] = 148 + 50,
[Not_LIST_FULL_NOTICES ] = 500 + 50,
};
const unsigned Not_MaxCharsURLOnScreen[Not_NUM_TYPES_LISTING] =
static const unsigned Not_MaxCharsURLOnScreen[Not_NUM_TYPES_LISTING] =
{
15, // Not_LIST_BRIEF_NOTICES
50, // Not_LIST_FULL_NOTICES
[Not_LIST_BRIEF_NOTICES] = 15,
[Not_LIST_FULL_NOTICES ] = 50,
};
/*****************************************************************************/

View File

@ -68,12 +68,12 @@ extern struct Globals Gbl;
/***************************** Private constants *****************************/
/*****************************************************************************/
const char *Pho_StrAvgPhotoDirs[Pho_NUM_AVERAGE_PHOTO_TYPES] =
static const char *Pho_StrAvgPhotoDirs[Pho_NUM_AVERAGE_PHOTO_TYPES] =
{
Cfg_FOLDER_DEGREE_PHOTO_MEDIAN,
Cfg_FOLDER_DEGREE_PHOTO_AVERAGE,
};
const char *Pho_StrAvgPhotoPrograms[Pho_NUM_AVERAGE_PHOTO_TYPES] =
static const char *Pho_StrAvgPhotoPrograms[Pho_NUM_AVERAGE_PHOTO_TYPES] =
{
Cfg_COMMAND_DEGREE_PHOTO_MEDIAN,
Cfg_COMMAND_DEGREE_PHOTO_AVERAGE,

View File

@ -49,11 +49,11 @@ extern struct Globals Gbl;
/***** Visibility (who can see user's photo or public profile) *****/
const char *Pri_VisibilityDB[Pri_NUM_OPTIONS_PRIVACY] =
{
"unknown", // Pri_VISIBILITY_UNKNOWN
"user", // Pri_VISIBILITY_USER
"course", // Pri_VISIBILITY_COURSE
"system", // Pri_VISIBILITY_SYSTEM
"world", // Pri_VISIBILITY_WORLD
[Pri_VISIBILITY_UNKNOWN] = "unknown",
[Pri_VISIBILITY_USER ] = "user",
[Pri_VISIBILITY_COURSE ] = "course",
[Pri_VISIBILITY_SYSTEM ] = "system",
[Pri_VISIBILITY_WORLD ] = "world",
};
/*****************************************************************************/

View File

@ -1659,13 +1659,12 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
extern const char *Txt_Save_changes;
const char *Rec_RecordHelp[Rec_COURSE_NUM_VIEW_TYPES] =
{
Hlp_USERS_Students_course_record_card, // Rec_CRS_MY_RECORD_AS_STUDENT_FORM
Hlp_USERS_Students_course_record_card, // Rec_CRS_MY_RECORD_AS_STUDENT_CHECK
Hlp_USERS_Students_course_record_card, // Rec_CRS_LIST_ONE_RECORD
Hlp_USERS_Students_course_record_card, // Rec_CRS_LIST_SEVERAL_RECORDS
NULL, // Rec_CRS_PRINT_ONE_RECORD
NULL, // Rec_CRS_PRINT_SEVERAL_RECORDS
// Rec_CRS_RECORD_PRINT
[Rec_CRS_MY_RECORD_AS_STUDENT_FORM ] = Hlp_USERS_Students_course_record_card,
[Rec_CRS_MY_RECORD_AS_STUDENT_CHECK] = Hlp_USERS_Students_course_record_card,
[Rec_CRS_LIST_ONE_RECORD ] = Hlp_USERS_Students_course_record_card,
[Rec_CRS_LIST_SEVERAL_RECORDS ] = Hlp_USERS_Students_course_record_card,
[Rec_CRS_PRINT_ONE_RECORD ] = NULL,
[Rec_CRS_PRINT_SEVERAL_RECORDS ] = NULL,
};
char StrRecordWidth[Cns_MAX_DECIMAL_DIGITS_UINT + 1];
bool ItsMe;
@ -2148,30 +2147,30 @@ void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
extern const char *Txt_Confirm;
const char *Rec_RecordHelp[Rec_SHARED_NUM_VIEW_TYPES] =
{
Hlp_USERS_SignUp, // Rec_SHA_SIGN_UP_IN_CRS_FORM
[Rec_SHA_SIGN_UP_IN_CRS_FORM ] = Hlp_USERS_SignUp,
Hlp_PROFILE_Record, // Rec_SHA_MY_RECORD_FORM
[Rec_SHA_MY_RECORD_FORM ] = Hlp_PROFILE_Record,
NULL, // Rec_SHA_OTHER_EXISTING_USR_FORM
NULL, // Rec_SHA_OTHER_NEW_USR_FORM
NULL, // Rec_SHA_OTHER_USR_CHECK
[Rec_SHA_OTHER_EXISTING_USR_FORM] = NULL,
[Rec_SHA_OTHER_NEW_USR_FORM ] = NULL,
[Rec_SHA_OTHER_USR_CHECK ] = NULL,
NULL, // Rec_SHA_RECORD_LIST
NULL, // Rec_SHA_RECORD_PRINT
Hlp_START_Profiles_view_public_profile, // Rec_SHA_RECORD_PUBLIC
[Rec_SHA_RECORD_LIST ] = NULL,
[Rec_SHA_RECORD_PRINT ] = NULL,
[Rec_SHA_RECORD_PUBLIC ] = Hlp_START_Profiles_view_public_profile,
};
const char *Rec_RecordListHelp[Rol_NUM_ROLES] =
{
NULL, // Rol_UNK
Hlp_USERS_Guests, // Rol_GST
NULL, // Rol_USR
Hlp_USERS_Students_shared_record_card, // Rol_STD
Hlp_USERS_Teachers_shared_record_card, // Rol_NET
Hlp_USERS_Teachers_shared_record_card, // Rol_TCH
NULL, // Rol_DEG_ADM
NULL, // Rol_CTR_ADM
NULL, // Rol_INS_ADM
NULL, // Rol_SYS_ADM
[Rol_UNK ] = NULL,
[Rol_GST ] = Hlp_USERS_Guests,
[Rol_USR ] = NULL,
[Rol_STD ] = Hlp_USERS_Students_shared_record_card,
[Rol_NET ] = Hlp_USERS_Teachers_shared_record_card,
[Rol_TCH ] = Hlp_USERS_Teachers_shared_record_card,
[Rol_DEG_ADM] = NULL,
[Rol_CTR_ADM] = NULL,
[Rol_INS_ADM] = NULL,
[Rol_SYS_ADM] = NULL,
};
char StrRecordWidth[Cns_MAX_DECIMAL_DIGITS_UINT + 1];
const char *ClassForm = "REC_DAT";

View File

@ -40,16 +40,16 @@
#define Rol_NUM_ROLES 10
const char *Rol_Icons[Rol_NUM_ROLES] =
{
"user.svg", // Rol_UNK
"user.svg", // Rol_GST
"user.svg", // Rol_USR
"user.svg", // Rol_STD
"user-tie.svg", // Rol_NET
"user-tie.svg", // Rol_TCH
"user-tie.svg", // Rol_DEG_ADM
"user-tie.svg", // Rol_CTR_ADM
"user-tie.svg", // Rol_INS_ADM
"user-tie.svg", // Rol_SYS_ADM
[Rol_UNK ] = "user.svg",
[Rol_GST ] = "user.svg",
[Rol_USR ] = "user.svg",
[Rol_STD ] = "user.svg",
[Rol_NET ] = "user-tie.svg",
[Rol_TCH ] = "user-tie.svg",
[Rol_DEG_ADM] = "user-tie.svg",
[Rol_CTR_ADM] = "user-tie.svg",
[Rol_INS_ADM] = "user-tie.svg",
[Rol_SYS_ADM] = "user-tie.svg",
};
/*****************************************************************************/

View File

@ -116,20 +116,20 @@ static void Sch_PutFormToSearchWithWhatToSearchAndScope (Act_Action_t Action,Hie
extern const char *Txt_Search;
const char *Titles[Sch_NUM_WHAT_TO_SEARCH] =
{
"", // Sch_SEARCH_UNKNOWN
Txt_all, // Sch_SEARCH_ALL
Txt_countries, // Sch_SEARCH_COUNTRIES
Txt_institutions, // Sch_SEARCH_INSTITS
Txt_centres, // Sch_SEARCH_CENTRES
Txt_degrees, // Sch_SEARCH_DEGREES
Txt_courses, // Sch_SEARCH_COURSES
Txt_users[Usr_SEX_UNKNOWN], // Sch_SEARCH_USERS
Txt_ROLES_PLURAL_abc[Rol_TCH][Usr_SEX_UNKNOWN], // Sch_SEARCH_TEACHERS
Txt_ROLES_PLURAL_abc[Rol_STD][Usr_SEX_UNKNOWN], // Sch_SEARCH_STUDENTS
Txt_ROLES_PLURAL_abc[Rol_GST][Usr_SEX_UNKNOWN], // Sch_SEARCH_GUESTS
Txt_open_documents, // Sch_SEARCH_OPEN_DOCUMENTS
Txt_documents_in_my_courses, // Sch_SEARCH_DOCUM_IN_MY_COURSES
Txt_my_documents, // Sch_SEARCH_MY_DOCUMENTS
[Sch_SEARCH_UNKNOWN ] = "",
[Sch_SEARCH_ALL ] = Txt_all,
[Sch_SEARCH_COUNTRIES ] = Txt_countries,
[Sch_SEARCH_INSTITS ] = Txt_institutions,
[Sch_SEARCH_CENTRES ] = Txt_centres,
[Sch_SEARCH_DEGREES ] = Txt_degrees,
[Sch_SEARCH_COURSES ] = Txt_courses,
[Sch_SEARCH_USERS ] = Txt_users[Usr_SEX_UNKNOWN],
[Sch_SEARCH_TEACHERS ] = Txt_ROLES_PLURAL_abc[Rol_TCH][Usr_SEX_UNKNOWN],
[Sch_SEARCH_STUDENTS ] = Txt_ROLES_PLURAL_abc[Rol_STD][Usr_SEX_UNKNOWN],
[Sch_SEARCH_GUESTS ] = Txt_ROLES_PLURAL_abc[Rol_GST][Usr_SEX_UNKNOWN],
[Sch_SEARCH_OPEN_DOCUMENTS ] = Txt_open_documents,
[Sch_SEARCH_DOCUM_IN_MY_COURSES] = Txt_documents_in_my_courses,
[Sch_SEARCH_MY_DOCUMENTS ] = Txt_my_documents,
};
Sch_WhatToSearch_t WhatToSearch;
unsigned WTS;
@ -200,22 +200,22 @@ static void Sch_PutFormToSearchWithWhatToSearchAndScope (Act_Action_t Action,Hie
static bool Sch_CheckIfIHavePermissionToSearch (Sch_WhatToSearch_t WhatToSearch)
{
unsigned Permissions[Sch_NUM_WHAT_TO_SEARCH] =
static unsigned Permissions[Sch_NUM_WHAT_TO_SEARCH] =
{
0x000, // Sch_SEARCH_UNKNOWN
0x3FF, // Sch_SEARCH_ALL
0x3FF, // Sch_SEARCH_COUNTRIES
0x3FF, // Sch_SEARCH_INSTITS
0x3FF, // Sch_SEARCH_CENTRES
0x3FF, // Sch_SEARCH_DEGREES
0x3FF, // Sch_SEARCH_COURSES
0x3FF, // Sch_SEARCH_USERS
0x3FF, // Sch_SEARCH_TEACHERS
0x3FF, // Sch_SEARCH_STUDENTS
0x3FF, // Sch_SEARCH_GUESTS
0x3FF, // Sch_SEARCH_OPEN_DOCUMENTS
0x3FE, // Sch_SEARCH_DOCUM_IN_MY_COURSES Only if I am logged
0x3FE, // Sch_SEARCH_MY_DOCUMENTS Only if I am logged
[Sch_SEARCH_UNKNOWN ] = 0x000,
[Sch_SEARCH_ALL ] = 0x3FF,
[Sch_SEARCH_COUNTRIES ] = 0x3FF,
[Sch_SEARCH_INSTITS ] = 0x3FF,
[Sch_SEARCH_CENTRES ] = 0x3FF,
[Sch_SEARCH_DEGREES ] = 0x3FF,
[Sch_SEARCH_COURSES ] = 0x3FF,
[Sch_SEARCH_USERS ] = 0x3FF,
[Sch_SEARCH_TEACHERS ] = 0x3FF,
[Sch_SEARCH_STUDENTS ] = 0x3FF,
[Sch_SEARCH_GUESTS ] = 0x3FF,
[Sch_SEARCH_OPEN_DOCUMENTS ] = 0x3FF,
[Sch_SEARCH_DOCUM_IN_MY_COURSES] = 0x3FE, // Only if I am logged
[Sch_SEARCH_MY_DOCUMENTS ] = 0x3FE, // Only if I am logged
};
return (Permissions[WhatToSearch] & (1 << Gbl.Usrs.Me.Role.Logged));

View File

@ -53,7 +53,7 @@ extern struct Globals Gbl;
#define Sta_SECONDS_IN_RECENT_LOG ((time_t) (Cfg_DAYS_IN_RECENT_LOG * 24UL * 60UL * 60UL)) // Remove entries in recent log oldest than this time
const unsigned Sta_CellPadding[Sta_NUM_CLICKS_GROUPED_BY] =
static const unsigned Sta_CellPadding[Sta_NUM_CLICKS_GROUPED_BY] =
{
[Sta_CLICKS_CRS_DETAILED_LIST ] = 2,

View File

@ -41,24 +41,6 @@ extern struct Globals Gbl;
/****************************** Private constants ****************************/
/*****************************************************************************/
const char *Tab_TabIcons[Tab_NUM_TABS] =
{
/* TabUnk */ NULL,
/* TabStr */ "home",
/* TabSys */ "sitemap",
/* TabCty */ "globe",
/* TabIns */ "university",
/* TabCtr */ "building",
/* TabDeg */ "graduation-cap",
/* TabCrs */ "list-ol",
/* TabAss */ "check",
/* TabFil */ "folder-open",
/* TabUsr */ "users",
/* TabMsg */ "envelope",
/* TabAna */ "chart-bar",
/* TabPrf */ "user",
};
/*****************************************************************************/
/******************************* Private types *******************************/
/*****************************************************************************/
@ -88,14 +70,14 @@ void Tab_DrawTabs (void)
extern const char *Txt_TABS_TXT[Tab_NUM_TABS];
Tab_Tab_t NumTab;
bool ICanViewTab;
const char *ClassHeadRow3[The_NUM_THEMES] =
static const char *ClassHeadRow3[The_NUM_THEMES] =
{
"HEAD_ROW_3_WHITE", // The_THEME_WHITE
"HEAD_ROW_3_GREY", // The_THEME_GREY
"HEAD_ROW_3_PURPLE", // The_THEME_PURPLE
"HEAD_ROW_3_BLUE", // The_THEME_BLUE
"HEAD_ROW_3_YELLOW", // The_THEME_YELLOW
"HEAD_ROW_3_PINK", // The_THEME_PINK
[The_THEME_WHITE ] = "HEAD_ROW_3_WHITE",
[The_THEME_GREY ] = "HEAD_ROW_3_GREY",
[The_THEME_PURPLE] = "HEAD_ROW_3_PURPLE",
[The_THEME_BLUE ] = "HEAD_ROW_3_BLUE",
[The_THEME_YELLOW] = "HEAD_ROW_3_YELLOW",
[The_THEME_PINK ] = "HEAD_ROW_3_PINK",
};
/***** Start tabs container *****/
@ -201,6 +183,24 @@ static bool Tab_CheckIfICanViewTab (Tab_Tab_t Tab)
static const char *Tab_GetIcon (Tab_Tab_t NumTab)
{
static const char *Tab_TabIcons[Tab_NUM_TABS] =
{
[TabUnk] = NULL,
[TabStr] = "home",
[TabSys] = "sitemap",
[TabCty] = "globe",
[TabIns] = "university",
[TabCtr] = "building",
[TabDeg] = "graduation-cap",
[TabCrs] = "list-ol",
[TabAss] = "check",
[TabFil] = "folder-open",
[TabUsr] = "users",
[TabMsg] = "envelope",
[TabAna] = "chart-bar",
[TabPrf] = "user",
};
if (NumTab < (Tab_Tab_t) 1 || NumTab >= Tab_NUM_TABS)
return NULL;

View File

@ -61,22 +61,22 @@
// strings are limited to Tst_MAX_BYTES_FEEDBACK_TYPE bytes
const char *Tst_FeedbackXML[Tst_NUM_TYPES_FEEDBACK] =
{
"nothing",
"totalResult",
"eachResult",
"eachGoodBad",
"fullFeedback",
[Tst_FEEDBACK_NOTHING ] = "nothing",
[Tst_FEEDBACK_TOTAL_RESULT ] = "totalResult",
[Tst_FEEDBACK_EACH_RESULT ] = "eachResult",
[Tst_FEEDBACK_EACH_GOOD_BAD] = "eachGoodBad",
[Tst_FEEDBACK_FULL_FEEDBACK] = "fullFeedback",
};
// strings are limited to Tst_MAX_BYTES_ANSWER_TYPE characters
const char *Tst_StrAnswerTypesXML[Tst_NUM_ANS_TYPES] =
{
"int",
"float",
"TF",
"uniqueChoice",
"multipleChoice",
"text",
[Tst_ANS_INT ] = "int",
[Tst_ANS_FLOAT ] = "float",
[Tst_ANS_TRUE_FALSE ] = "TF",
[Tst_ANS_UNIQUE_CHOICE ] = "uniqueChoice",
[Tst_ANS_MULTIPLE_CHOICE] = "multipleChoice",
[Tst_ANS_TEXT ] = "text",
};
/*****************************************************************************/

View File

@ -53,248 +53,252 @@ extern struct Globals Gbl;
const char *The_ThemeId[The_NUM_THEMES] =
{
"white",
"grey",
"purple",
"blue",
"yellow",
"pink",
[The_THEME_WHITE ] = "white",
[The_THEME_GREY ] = "grey",
[The_THEME_PURPLE] = "purple",
[The_THEME_BLUE ] = "blue",
[The_THEME_YELLOW] = "yellow",
[The_THEME_PINK ] = "pink",
};
const char *The_ThemeNames[The_NUM_THEMES] =
{
"White",
"Grey",
"Purple",
"Blue",
"Yellow",
"Pink",
[The_THEME_WHITE ] = "White",
[The_THEME_GREY ] = "Grey",
[The_THEME_PURPLE] = "Purple",
[The_THEME_BLUE ] = "Blue",
[The_THEME_YELLOW] = "Yellow",
[The_THEME_PINK ] = "Pink",
};
const char *The_TabOnBgColors[The_NUM_THEMES] =
{
"TAB_ON_WHITE",
"TAB_ON_GREY",
"TAB_ON_PURPLE",
"TAB_ON_BLUE",
"TAB_ON_YELLOW",
"TAB_ON_PINK",
[The_THEME_WHITE ] = "TAB_ON_WHITE",
[The_THEME_GREY ] = "TAB_ON_GREY",
[The_THEME_PURPLE] = "TAB_ON_PURPLE",
[The_THEME_BLUE ] = "TAB_ON_BLUE",
[The_THEME_YELLOW] = "TAB_ON_YELLOW",
[The_THEME_PINK ] = "TAB_ON_PINK",
};
const char *The_TabOffBgColors[The_NUM_THEMES] =
{
"TAB_OFF_WHITE",
"TAB_OFF_GREY",
"TAB_OFF_PURPLE",
"TAB_OFF_BLUE",
"TAB_OFF_YELLOW",
"TAB_OFF_PINK",
[The_THEME_WHITE ] = "TAB_OFF_WHITE",
[The_THEME_GREY ] = "TAB_OFF_GREY",
[The_THEME_PURPLE] = "TAB_OFF_PURPLE",
[The_THEME_BLUE ] = "TAB_OFF_BLUE",
[The_THEME_YELLOW] = "TAB_OFF_YELLOW",
[The_THEME_PINK ] = "TAB_OFF_PINK",
};
const char *The_ClassTagline[The_NUM_THEMES] =
{
"BT_LINK TAGLINE_WHITE",
"BT_LINK TAGLINE_GREY",
"BT_LINK TAGLINE_PURPLE",
"BT_LINK TAGLINE_BLUE",
"BT_LINK TAGLINE_YELLOW",
"BT_LINK TAGLINE_PINK",
[The_THEME_WHITE ] = "BT_LINK TAGLINE_WHITE",
[The_THEME_GREY ] = "BT_LINK TAGLINE_GREY",
[The_THEME_PURPLE] = "BT_LINK TAGLINE_PURPLE",
[The_THEME_BLUE ] = "BT_LINK TAGLINE_BLUE",
[The_THEME_YELLOW] = "BT_LINK TAGLINE_YELLOW",
[The_THEME_PINK ] = "BT_LINK TAGLINE_PINK",
};
const char *The_ClassNotif[The_NUM_THEMES] =
{
"BT_LINK NOTIF_WHITE",
"BT_LINK NOTIF_GREY",
"BT_LINK NOTIF_PURPLE",
"BT_LINK NOTIF_BLUE",
"BT_LINK NOTIF_YELLOW",
"BT_LINK NOTIF_PINK",
[The_THEME_WHITE ] = "BT_LINK NOTIF_WHITE",
[The_THEME_GREY ] = "BT_LINK NOTIF_GREY",
[The_THEME_PURPLE] = "BT_LINK NOTIF_PURPLE",
[The_THEME_BLUE ] = "BT_LINK NOTIF_BLUE",
[The_THEME_YELLOW] = "BT_LINK NOTIF_YELLOW",
[The_THEME_PINK ] = "BT_LINK NOTIF_PINK",
};
const char *The_ClassUsr[The_NUM_THEMES] =
{
"USR_WHITE",
"USR_GREY",
"USR_PURPLE",
"USR_BLUE",
"USR_YELLOW",
"USR_PINK",
[The_THEME_WHITE ] = "USR_WHITE",
[The_THEME_GREY ] = "USR_GREY",
[The_THEME_PURPLE] = "USR_PURPLE",
[The_THEME_BLUE ] = "USR_BLUE",
[The_THEME_YELLOW] = "USR_YELLOW",
[The_THEME_PINK ] = "USR_PINK",
};
const char *The_ClassBreadcrumb[The_NUM_THEMES] =
{
"BC_WHITE",
"BC_GREY",
"BC_PURPLE",
"BC_BLUE",
"BC_YELLOW",
"BC_PINK",
[The_THEME_WHITE ] = "BC_WHITE",
[The_THEME_GREY ] = "BC_GREY",
[The_THEME_PURPLE] = "BC_PURPLE",
[The_THEME_BLUE ] = "BC_BLUE",
[The_THEME_YELLOW] = "BC_YELLOW",
[The_THEME_PINK ] = "BC_PINK",
};
const char *The_ClassCourse[The_NUM_THEMES] =
{
"MAIN_TITLE_WHITE",
"MAIN_TITLE_GREY",
"MAIN_TITLE_PURPLE",
"MAIN_TITLE_BLUE",
"MAIN_TITLE_YELLOW",
"MAIN_TITLE_PINK",
[The_THEME_WHITE ] = "MAIN_TITLE_WHITE",
[The_THEME_GREY ] = "MAIN_TITLE_GREY",
[The_THEME_PURPLE] = "MAIN_TITLE_PURPLE",
[The_THEME_BLUE ] = "MAIN_TITLE_BLUE",
[The_THEME_YELLOW] = "MAIN_TITLE_YELLOW",
[The_THEME_PINK ] = "MAIN_TITLE_PINK",
};
const char *The_ClassTxtMenu[The_NUM_THEMES] =
{
"MENU_TXT_WHITE",
"MENU_TXT_GREY",
"MENU_TXT_PURPLE",
"MENU_TXT_BLUE",
"MENU_TXT_YELLOW",
"MENU_TXT_PINK",
[The_THEME_WHITE ] = "MENU_TXT_WHITE",
[The_THEME_GREY ] = "MENU_TXT_GREY",
[The_THEME_PURPLE] = "MENU_TXT_PURPLE",
[The_THEME_BLUE ] = "MENU_TXT_BLUE",
[The_THEME_YELLOW] = "MENU_TXT_YELLOW",
[The_THEME_PINK ] = "MENU_TXT_PINK",
};
const char *The_ClassTxtTabOff[The_NUM_THEMES] =
{
"TAB_OFF_TXT_WHITE",
"TAB_OFF_TXT_GREY",
"TAB_OFF_TXT_PURPLE",
"TAB_OFF_TXT_BLUE",
"TAB_OFF_TXT_YELLOW",
"TAB_OFF_TXT_PINK",
[The_THEME_WHITE ] = "TAB_OFF_TXT_WHITE",
[The_THEME_GREY ] = "TAB_OFF_TXT_GREY",
[The_THEME_PURPLE] = "TAB_OFF_TXT_PURPLE",
[The_THEME_BLUE ] = "TAB_OFF_TXT_BLUE",
[The_THEME_YELLOW] = "TAB_OFF_TXT_YELLOW",
[The_THEME_PINK ] = "TAB_OFF_TXT_PINK",
};
const char *The_ClassTxtTabOn[The_NUM_THEMES] =
{
"TAB_ON_TXT_WHITE",
"TAB_ON_TXT_GREY",
"TAB_ON_TXT_PURPLE",
"TAB_ON_TXT_BLUE",
"TAB_ON_TXT_YELLOW",
"TAB_ON_TXT_PINK",
[The_THEME_WHITE ] = "TAB_ON_TXT_WHITE",
[The_THEME_GREY ] = "TAB_ON_TXT_GREY",
[The_THEME_PURPLE] = "TAB_ON_TXT_PURPLE",
[The_THEME_BLUE ] = "TAB_ON_TXT_BLUE",
[The_THEME_YELLOW] = "TAB_ON_TXT_YELLOW",
[The_THEME_PINK ] = "TAB_ON_TXT_PINK",
};
const char *The_ClassTitleAction[The_NUM_THEMES] =
{
"TITLE_ACTION_WHITE",
"TITLE_ACTION_GREY",
"TITLE_ACTION_PURPLE",
"TITLE_ACTION_BLUE",
"TITLE_ACTION_YELLOW",
"TITLE_ACTION_PINK",
[The_THEME_WHITE ] = "TITLE_ACTION_WHITE",
[The_THEME_GREY ] = "TITLE_ACTION_GREY",
[The_THEME_PURPLE] = "TITLE_ACTION_PURPLE",
[The_THEME_BLUE ] = "TITLE_ACTION_BLUE",
[The_THEME_YELLOW] = "TITLE_ACTION_YELLOW",
[The_THEME_PINK ] = "TITLE_ACTION_PINK",
};
const char *The_ClassSubtitleAction[The_NUM_THEMES] =
{
"SUBTITLE_ACTION_WHITE",
"SUBTITLE_ACTION_GREY",
"SUBTITLE_ACTION_PURPLE",
"SUBTITLE_ACTION_BLUE",
"SUBTITLE_ACTION_YELLOW",
"SUBTITLE_ACTION_PINK",
[The_THEME_WHITE ] = "SUBTITLE_ACTION_WHITE",
[The_THEME_GREY ] = "SUBTITLE_ACTION_GREY",
[The_THEME_PURPLE] = "SUBTITLE_ACTION_PURPLE",
[The_THEME_BLUE ] = "SUBTITLE_ACTION_BLUE",
[The_THEME_YELLOW] = "SUBTITLE_ACTION_YELLOW",
[The_THEME_PINK ] = "SUBTITLE_ACTION_PINK",
};
const char *The_ClassTitle[The_NUM_THEMES] =
{
"TITLE_WHITE",
"TITLE_GREY",
"TITLE_PURPLE",
"TITLE_BLUE",
"TITLE_YELLOW",
"TITLE_PINK",
[The_THEME_WHITE ] = "TITLE_WHITE",
[The_THEME_GREY ] = "TITLE_GREY",
[The_THEME_PURPLE] = "TITLE_PURPLE",
[The_THEME_BLUE ] = "TITLE_BLUE",
[The_THEME_YELLOW] = "TITLE_YELLOW",
[The_THEME_PINK ] = "TITLE_PINK",
};
const char *The_ClassFormLinkInBox[The_NUM_THEMES] =
{
"BT_LINK FORM_IN_WHITE",
"BT_LINK FORM_IN_GREY",
"BT_LINK FORM_IN_PURPLE",
"BT_LINK FORM_IN_BLUE",
"BT_LINK FORM_IN_YELLOW",
"BT_LINK FORM_IN_PINK",
[The_THEME_WHITE ] = "BT_LINK FORM_IN_WHITE",
[The_THEME_GREY ] = "BT_LINK FORM_IN_GREY",
[The_THEME_PURPLE] = "BT_LINK FORM_IN_PURPLE",
[The_THEME_BLUE ] = "BT_LINK FORM_IN_BLUE",
[The_THEME_YELLOW] = "BT_LINK FORM_IN_YELLOW",
[The_THEME_PINK ] = "BT_LINK FORM_IN_PINK",
};
const char *The_ClassFormInBox[The_NUM_THEMES] =
{
"FORM_IN_WHITE",
"FORM_IN_GREY",
"FORM_IN_PURPLE",
"FORM_IN_BLUE",
"FORM_IN_YELLOW",
"FORM_IN_PINK",
[The_THEME_WHITE ] = "FORM_IN_WHITE",
[The_THEME_GREY ] = "FORM_IN_GREY",
[The_THEME_PURPLE] = "FORM_IN_PURPLE",
[The_THEME_BLUE ] = "FORM_IN_BLUE",
[The_THEME_YELLOW] = "FORM_IN_YELLOW",
[The_THEME_PINK ] = "FORM_IN_PINK",
};
const char *The_ClassFormLinkInBoxBold[The_NUM_THEMES] =
{
"BT_LINK FORM_IN_WHITE BOLD",
"BT_LINK FORM_IN_GREY BOLD",
"BT_LINK FORM_IN_PURPLE BOLD",
"BT_LINK FORM_IN_BLUE BOLD",
"BT_LINK FORM_IN_YELLOW BOLD",
"BT_LINK FORM_IN_PINK BOLD",
[The_THEME_WHITE ] = "BT_LINK FORM_IN_WHITE BOLD",
[The_THEME_GREY ] = "BT_LINK FORM_IN_GREY BOLD",
[The_THEME_PURPLE] = "BT_LINK FORM_IN_PURPLE BOLD",
[The_THEME_BLUE ] = "BT_LINK FORM_IN_BLUE BOLD",
[The_THEME_YELLOW] = "BT_LINK FORM_IN_YELLOW BOLD",
[The_THEME_PINK ] = "BT_LINK FORM_IN_PINK BOLD",
};
const char *The_ClassFormInBoxBold[The_NUM_THEMES] =
{
"FORM_IN_WHITE BOLD",
"FORM_IN_GREY BOLD",
"FORM_IN_PURPLE BOLD",
"FORM_IN_BLUE BOLD",
"FORM_IN_YELLOW BOLD",
"FORM_IN_PINK BOLD",
[The_THEME_WHITE ] = "FORM_IN_WHITE BOLD",
[The_THEME_GREY ] = "FORM_IN_GREY BOLD",
[The_THEME_PURPLE] = "FORM_IN_PURPLE BOLD",
[The_THEME_BLUE ] = "FORM_IN_BLUE BOLD",
[The_THEME_YELLOW] = "FORM_IN_YELLOW BOLD",
[The_THEME_PINK ] = "FORM_IN_PINK BOLD",
};
const char *The_ClassFormLinkInBoxNoWrap[The_NUM_THEMES] =
{
"BT_LINK FORM_IN_WHITE NOWRAP",
"BT_LINK FORM_IN_GREY NOWRAP",
"BT_LINK FORM_IN_PURPLE NOWRAP",
"BT_LINK FORM_IN_BLUE NOWRAP",
"BT_LINK FORM_IN_YELLOW NOWRAP",
"BT_LINK FORM_IN_PINK NOWRAP",
[The_THEME_WHITE ] = "BT_LINK FORM_IN_WHITE NOWRAP",
[The_THEME_GREY ] = "BT_LINK FORM_IN_GREY NOWRAP",
[The_THEME_PURPLE] = "BT_LINK FORM_IN_PURPLE NOWRAP",
[The_THEME_BLUE ] = "BT_LINK FORM_IN_BLUE NOWRAP",
[The_THEME_YELLOW] = "BT_LINK FORM_IN_YELLOW NOWRAP",
[The_THEME_PINK ] = "BT_LINK FORM_IN_PINK NOWRAP",
};
const char *The_ClassFormInBoxNoWrap[The_NUM_THEMES] =
{
"FORM_IN_WHITE NOWRAP",
"FORM_IN_GREY NOWRAP",
"FORM_IN_PURPLE NOWRAP",
"FORM_IN_BLUE NOWRAP",
"FORM_IN_YELLOW NOWRAP",
"FORM_IN_PINK NOWRAP",
[The_THEME_WHITE ] = "FORM_IN_WHITE NOWRAP",
[The_THEME_GREY ] = "FORM_IN_GREY NOWRAP",
[The_THEME_PURPLE] = "FORM_IN_PURPLE NOWRAP",
[The_THEME_BLUE ] = "FORM_IN_BLUE NOWRAP",
[The_THEME_YELLOW] = "FORM_IN_YELLOW NOWRAP",
[The_THEME_PINK ] = "FORM_IN_PINK NOWRAP",
};
const char *The_ClassFormLinkOutBox[The_NUM_THEMES] =
{
"BT_LINK FORM_OUT_WHITE",
"BT_LINK FORM_OUT_GREY",
"BT_LINK FORM_OUT_PURPLE",
"BT_LINK FORM_OUT_BLUE",
"BT_LINK FORM_OUT_YELLOW",
"BT_LINK FORM_OUT_PINK",
[The_THEME_WHITE ] = "BT_LINK FORM_OUT_WHITE",
[The_THEME_GREY ] = "BT_LINK FORM_OUT_GREY",
[The_THEME_PURPLE] = "BT_LINK FORM_OUT_PURPLE",
[The_THEME_BLUE ] = "BT_LINK FORM_OUT_BLUE",
[The_THEME_YELLOW] = "BT_LINK FORM_OUT_YELLOW",
[The_THEME_PINK ] = "BT_LINK FORM_OUT_PINK",
};
const char *The_ClassFormOutBox[The_NUM_THEMES] =
{
"FORM_OUT_WHITE",
"FORM_OUT_GREY",
"FORM_OUT_PURPLE",
"FORM_OUT_BLUE",
"FORM_OUT_YELLOW",
"FORM_OUT_PINK",
[The_THEME_WHITE ] = "FORM_OUT_WHITE",
[The_THEME_GREY ] = "FORM_OUT_GREY",
[The_THEME_PURPLE] = "FORM_OUT_PURPLE",
[The_THEME_BLUE ] = "FORM_OUT_BLUE",
[The_THEME_YELLOW] = "FORM_OUT_YELLOW",
[The_THEME_PINK ] = "FORM_OUT_PINK",
};
const char *The_ClassFormLinkOutBoxBold[The_NUM_THEMES] =
{
"BT_LINK FORM_OUT_WHITE BOLD",
"BT_LINK FORM_OUT_GREY BOLD",
"BT_LINK FORM_OUT_PURPLE BOLD",
"BT_LINK FORM_OUT_BLUE BOLD",
"BT_LINK FORM_OUT_YELLOW BOLD",
"BT_LINK FORM_OUT_PINK BOLD",
[The_THEME_WHITE ] = "BT_LINK FORM_OUT_WHITE BOLD",
[The_THEME_GREY ] = "BT_LINK FORM_OUT_GREY BOLD",
[The_THEME_PURPLE] = "BT_LINK FORM_OUT_PURPLE BOLD",
[The_THEME_BLUE ] = "BT_LINK FORM_OUT_BLUE BOLD",
[The_THEME_YELLOW] = "BT_LINK FORM_OUT_YELLOW BOLD",
[The_THEME_PINK ] = "BT_LINK FORM_OUT_PINK BOLD",
};
const char *The_ClassFormOutBoxBold[The_NUM_THEMES] =
{
"FORM_OUT_WHITE BOLD",
"FORM_OUT_GREY BOLD",
"FORM_OUT_PURPLE BOLD",
"FORM_OUT_BLUE BOLD",
"FORM_OUT_YELLOW BOLD",
"FORM_OUT_PINK BOLD",
[The_THEME_WHITE ] = "FORM_OUT_WHITE BOLD",
[The_THEME_GREY ] = "FORM_OUT_GREY BOLD",
[The_THEME_PURPLE] = "FORM_OUT_PURPLE BOLD",
[The_THEME_BLUE ] = "FORM_OUT_BLUE BOLD",
[The_THEME_YELLOW] = "FORM_OUT_YELLOW BOLD",
[The_THEME_PINK ] = "FORM_OUT_PINK BOLD",
};
/*****************************************************************************/

View File

@ -77,6 +77,7 @@ typedef enum
TL_TIMELINE_GBL, // Show the timeline of the users follwed by me
} TL_TimelineUsrOrGbl_t;
#define TL_NUM_WHAT_TO_GET_FROM_TIMELINE 3
typedef enum
{
TL_GET_ONLY_NEW_PUBS, // New publications are retrieved via AJAX
@ -560,11 +561,11 @@ static void TL_BuildQueryToGetTimeline (char **Query,
unsigned NumPub;
long PubCod;
long NotCod;
const unsigned MaxPubsToGet[3] =
static const unsigned MaxPubsToGet[TL_NUM_WHAT_TO_GET_FROM_TIMELINE] =
{
TL_MAX_NEW_PUBS_TO_GET_AND_SHOW, // TL_GET_ONLY_NEW_PUBS
TL_MAX_REC_PUBS_TO_GET_AND_SHOW, // TL_GET_RECENT_TIMELINE
TL_MAX_OLD_PUBS_TO_GET_AND_SHOW, // TL_GET_ONLY_OLD_PUBS
[TL_GET_ONLY_NEW_PUBS ] = TL_MAX_NEW_PUBS_TO_GET_AND_SHOW,
[TL_GET_RECENT_TIMELINE] = TL_MAX_REC_PUBS_TO_GET_AND_SHOW,
[TL_GET_ONLY_OLD_PUBS ] = TL_MAX_OLD_PUBS_TO_GET_AND_SHOW,
};
/***** Clear timeline for this session in database *****/
@ -4929,12 +4930,12 @@ static void TL_GetDataOfCommByCod (struct TL_Comment *SocCom)
static void TL_GetDataOfPublicationFromRow (MYSQL_ROW row,struct TL_Publication *SocPub)
{
const TL_TopMessage_t TopMessages[TL_NUM_PUB_TYPES] =
static const TL_TopMessage_t TopMessages[TL_NUM_PUB_TYPES] =
{
TL_TOP_MESSAGE_NONE, // TL_PUB_UNKNOWN
TL_TOP_MESSAGE_NONE, // TL_PUB_ORIGINAL_NOTE
TL_TOP_MESSAGE_SHARED, // TL_PUB_SHARED_NOTE
TL_TOP_MESSAGE_COMMENTED, // TL_PUB_COMMENT_TO_NOTE
[TL_PUB_UNKNOWN ] = TL_TOP_MESSAGE_NONE,
[TL_PUB_ORIGINAL_NOTE ] = TL_TOP_MESSAGE_NONE,
[TL_PUB_SHARED_NOTE ] = TL_TOP_MESSAGE_SHARED,
[TL_PUB_COMMENT_TO_NOTE] = TL_TOP_MESSAGE_COMMENTED,
};
/***** Get code of publication (row[0]) *****/

View File

@ -113,7 +113,7 @@ struct TT_Cell *TT_TimeTable[TT_DAYS_PER_WEEK];
/* Possible resolutions of the timetable in minutes */
#define TT_NUM_RESOLUTIONS 3
unsigned TT_MinutesPerInterval[TT_NUM_RESOLUTIONS] =
static const unsigned TT_MinutesPerInterval[TT_NUM_RESOLUTIONS] =
{
5, // 5 minutes
15, // 15 minutes // Use 10 or 15 minutes (15 looks better), never both together
@ -316,7 +316,7 @@ void TT_ShowClassTimeTable (void)
[TT_MY_TIMETABLE ] = Hlp_PROFILE_Timetable,
[TT_TUTORING_TIMETABLE] = NULL,
};
static Act_Action_t ActChgTT1stDay[TT_NUM_TIMETABLE_TYPES] =
static const Act_Action_t ActChgTT1stDay[TT_NUM_TIMETABLE_TYPES] =
{
[TT_COURSE_TIMETABLE ] = ActChgCrsTT1stDay,
[TT_MY_TIMETABLE ] = ActChgMyTT1stDay,
@ -418,7 +418,7 @@ static void TT_PutContextualIcons (void)
static void TT_PutFormToSelectWhichGroupsToShow (void)
{
Act_Action_t ActSeeTT[TT_NUM_TIMETABLE_TYPES] =
static const Act_Action_t ActSeeTT[TT_NUM_TIMETABLE_TYPES] =
{
ActSeeCrsTT, // TT_COURSE_TIMETABLE
ActSeeMyTT, // TT_MY_TIMETABLE

View File

@ -74,25 +74,25 @@
const char *Usr_StringsSexIcons[Usr_NUM_SEXS] =
{
"?", // Usr_SEX_UNKNOWN
"&female;", // Usr_SEX_FEMALE
"&male;", // Usr_SEX_MALE
"*", // Usr_SEX_ALL
[Usr_SEX_UNKNOWN] = "?",
[Usr_SEX_FEMALE ] = "&female;",
[Usr_SEX_MALE ] = "&male;",
[Usr_SEX_ALL ] = "*",
};
const char *Usr_StringsSexDB[Usr_NUM_SEXS] =
{
"unknown", // Usr_SEX_UNKNOWN
"female", // Usr_SEX_FEMALE
"male", // Usr_SEX_MALE
"all", // Usr_SEX_ALL
[Usr_SEX_UNKNOWN] = "unknown",
[Usr_SEX_FEMALE ] = "female",
[Usr_SEX_MALE ] = "male",
[Usr_SEX_ALL ] = "all",
};
const char *Usr_StringsUsrListTypeInDB[Usr_NUM_USR_LIST_TYPES] =
{
"", // Usr_LIST_UNKNOWN
"classphoto", // Usr_LIST_AS_CLASS_PHOTO
"list", // Usr_LIST_AS_LISTING
[Usr_LIST_UNKNOWN ] = "",
[Usr_LIST_AS_CLASS_PHOTO] = "classphoto",
[Usr_LIST_AS_LISTING ] = "list",
};
/*****************************************************************************/
@ -8496,14 +8496,14 @@ static void Usr_PutOptionsListUsrs (const bool ICanChooseOption[Usr_LIST_USRS_NU
extern const char *Txt_Continue;
const char *Label[Usr_LIST_USRS_NUM_OPTIONS] =
{
NULL, // Usr_OPTION_UNKNOWN
Txt_View_records, // Usr_OPTION_RECORDS
Txt_View_homework, // Usr_OPTION_HOMEWORK
Txt_View_attendance, // Usr_OPTION_ATTENDANCE
Txt_Send_message, // Usr_OPTION_MESSAGE
Txt_Create_email_message, // Usr_OPTION_EMAIL
Txt_Follow, // Usr_OPTION_FOLLOW
Txt_Unfollow, // Usr_OPTION_UNFOLLOW
[Usr_OPTION_UNKNOWN ] = NULL,
[Usr_OPTION_RECORDS ] = Txt_View_records,
[Usr_OPTION_HOMEWORK ] = Txt_View_homework,
[Usr_OPTION_ATTENDANCE] = Txt_View_attendance,
[Usr_OPTION_MESSAGE ] = Txt_Send_message,
[Usr_OPTION_EMAIL ] = Txt_Create_email_message,
[Usr_OPTION_FOLLOW ] = Txt_Follow,
[Usr_OPTION_UNFOLLOW ] = Txt_Unfollow,
};
Usr_ListUsrsOption_t Opt;