From 1c70e5c92b253b54e13cd4c48217eb9de8a226b9 Mon Sep 17 00:00:00 2001 From: acanas Date: Thu, 24 Mar 2022 01:18:19 +0100 Subject: [PATCH] Version 21.85: Mar 24, 2022 Working on design of dark theme. --- .settings/language.settings.xml | 2 +- css/{swad21.83.8.css => swad21.85.css} | 693 +++++++++++++------------ swad_account.c | 6 +- swad_agenda.c | 2 +- swad_assignment.c | 2 +- swad_attendance.c | 10 +- swad_browser.c | 4 +- swad_building.c | 2 +- swad_center.c | 4 +- swad_changelog.h | 5 +- swad_connected.c | 4 +- swad_country.c | 4 +- swad_course.c | 4 +- swad_degree.c | 4 +- swad_degree_type.c | 2 +- swad_duplicate.c | 4 +- swad_exam.c | 2 +- swad_exam_log.c | 4 +- swad_exam_print.c | 2 +- swad_exam_result.c | 8 +- swad_exam_session.c | 4 +- swad_exam_set.c | 8 +- swad_follow.c | 2 +- swad_forum.c | 2 +- swad_game.c | 6 +- swad_global.c | 3 - swad_global.h | 1 - swad_indicator.c | 8 +- swad_institution.c | 4 +- swad_match.c | 4 +- swad_match_result.c | 4 +- swad_photo.c | 2 +- swad_profile.c | 4 +- swad_program.c | 4 +- swad_project.c | 4 +- swad_question.c | 16 +- swad_question_import.c | 3 +- swad_record.c | 2 +- swad_room.c | 2 +- swad_statistic.c | 4 +- swad_survey.c | 6 +- swad_syllabus.c | 2 +- swad_test_print.c | 14 +- swad_theme.c | 9 +- swad_theme.h | 1 + swad_timetable.c | 28 +- swad_user.c | 21 +- 47 files changed, 470 insertions(+), 466 deletions(-) rename css/{swad21.83.8.css => swad21.85.css} (80%) diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml index 5f749312..977d024a 100644 --- a/.settings/language.settings.xml +++ b/.settings/language.settings.xml @@ -11,7 +11,7 @@ - + diff --git a/css/swad21.83.8.css b/css/swad21.85.css similarity index 80% rename from css/swad21.83.8.css rename to css/swad21.85.css index 056d012a..ff996bbe 100644 --- a/css/swad21.83.8.css +++ b/css/swad21.85.css @@ -29,11 +29,11 @@ body font-size:1em; overflow-y:scroll; /* force vertical scrollbar */ } -.BODY_BG_WHITE {background-color:white;} -.BODY_BG_GREY {background-color:white;} -.BODY_BG_PURPLE {background-color:white;} -.BODY_BG_BLUE {background-color:white;} -.BODY_BG_YELLOW {background-color:white;} +.BODY_BG_WHITE, +.BODY_BG_GREY, +.BODY_BG_PURPLE, +.BODY_BG_BLUE, +.BODY_BG_YELLOW, .BODY_BG_PINK {background-color:white;} .BODY_BG_DARK {background-color:#383838;} @@ -50,11 +50,11 @@ textarea font-size:13pt; font-family:"Helvetica Neue",Helvetica,Arial,sans-serif; } -.INPUT_WHITE {} -.INPUT_GREY {} -.INPUT_PURPLE {} -.INPUT_BLUE {} -.INPUT_YELLOW {} +.INPUT_WHITE, +.INPUT_GREY, +.INPUT_PURPLE, +.INPUT_BLUE, +.INPUT_YELLOW, .INPUT_PINK {} .INPUT_DARK {border-color:#505050;background-color:#1f1f1f;color:white;} @@ -814,13 +814,12 @@ a:hover /* Default ==> underlined */ padding:4px 0; } /* Creating filter from RGB: https://codepen.io/sosuke/pen/Pjoqqp */ -.TAB_ICO_WHITE {} /* #000000 */ -.TAB_ICO_GREY {} /* #000000 */ -.TAB_ICO_PURPLE {} /* #000000 */ -.TAB_ICO_BLUE {} /* #000000 */ -.TAB_ICO_YELLOW {} /* #000000 */ -.TAB_ICO_PINK {} /* #000000 */ -/* .TAB_ICO_DARK {filter: invert(100%) sepia(0%) saturate(7483%) hue-rotate(109deg) brightness(106%) contrast(106%);} */ /* #ffffff */ +.TAB_ICO_WHITE, +.TAB_ICO_GREY, +.TAB_ICO_PURPLE, +.TAB_ICO_BLUE, +.TAB_ICO_YELLOW, +.TAB_ICO_PINK {} .TAB_ICO_DARK {filter:invert(1);} /*********************** Layout (fourth row, main zone) **********************/ @@ -1130,13 +1129,12 @@ a:hover /* Default ==> underlined */ } } /* Creating filter from RGB: https://codepen.io/sosuke/pen/Pjoqqp */ -.MENU_ICO_WHITE {} /* #000000 */ -.MENU_ICO_GREY {} /* #000000 */ -.MENU_ICO_PURPLE {} /* #000000 */ -.MENU_ICO_BLUE {} /* #000000 */ -.MENU_ICO_YELLOW {} /* #000000 */ -.MENU_ICO_PINK {} /* #000000 */ -/* .MENU_ICO_DARK {filter: invert(100%) sepia(0%) saturate(7483%) hue-rotate(109deg) brightness(106%) contrast(106%);} */ /* #ffffff */ +.MENU_ICO_WHITE, +.MENU_ICO_GREY, +.MENU_ICO_PURPLE, +.MENU_ICO_BLUE, +.MENU_ICO_YELLOW, +.MENU_ICO_PINK {} .MENU_ICO_DARK {filter:invert(1);} /********************************* Menu fonts ********************************/ @@ -1190,13 +1188,15 @@ a:hover /* Default ==> underlined */ overflow:hidden; text-overflow:ellipsis; } -.CON_WHITE {color:#398000;} -.CON_GREY {color:#398000;} -.CON_PURPLE {color:#398000;} -.CON_BLUE {color:#398000;} -.CON_YELLOW {color:#398000;} + +.CON_WHITE, +.CON_GREY, +.CON_PURPLE, +.CON_BLUE, +.CON_YELLOW, .CON_PINK {color:#398000;} .CON_DARK {color:#80c040;} + .CON_LIST { box-sizing:border-box; @@ -1483,67 +1483,67 @@ a:hover img.CENTER_PHOTO_SHOW text-transform:uppercase; } -.DAY_WRK_HEAD_WHITE {color:#4d88a1;} -.DAY_WRK_HEAD_GREY {color:#4d88a1;} -.DAY_WRK_HEAD_PURPLE {color:#4d88a1;} -.DAY_WRK_HEAD_BLUE {color:#4d88a1;} -.DAY_WRK_HEAD_YELLOW {color:#4d88a1;} +.DAY_WRK_HEAD_WHITE, +.DAY_WRK_HEAD_GREY, +.DAY_WRK_HEAD_PURPLE, +.DAY_WRK_HEAD_BLUE, +.DAY_WRK_HEAD_YELLOW, .DAY_WRK_HEAD_PINK {color:#4d88a1;} .DAY_WRK_HEAD_DARK {color:#8cbcce;} -.DAY_NO_WRK_HEAD_WHITE {color:red;} -.DAY_NO_WRK_HEAD_GREY {color:red;} -.DAY_NO_WRK_HEAD_PURPLE {color:red;} -.DAY_NO_WRK_HEAD_BLUE {color:red;} -.DAY_NO_WRK_HEAD_YELLOW {color:red;} +.DAY_NO_WRK_HEAD_WHITE, +.DAY_NO_WRK_HEAD_GREY, +.DAY_NO_WRK_HEAD_PURPLE, +.DAY_NO_WRK_HEAD_BLUE, +.DAY_NO_WRK_HEAD_YELLOW, .DAY_NO_WRK_HEAD_PINK {color:red;} .DAY_NO_WRK_HEAD_DARK {color:#ff8080;} -.DAY_WRK_WHITE {color:#202020;} -.DAY_WRK_GREY {color:#202020;} -.DAY_WRK_PURPLE {color:#202020;} -.DAY_WRK_BLUE {color:#202020;} -.DAY_WRK_YELLOW {color:#202020;} +.DAY_WRK_WHITE, +.DAY_WRK_GREY, +.DAY_WRK_PURPLE, +.DAY_WRK_BLUE, +.DAY_WRK_YELLOW, .DAY_WRK_PINK {color:#202020;} .DAY_WRK_DARK {color:white;} -.DAY_NO_WORK_WHITE {color:#c04080;} -.DAY_NO_WORK_GREY {color:#c04080;} -.DAY_NO_WORK_PURPLE {color:#c04080;} -.DAY_NO_WORK_BLUE {color:#c04080;} -.DAY_NO_WORK_YELLOW {color:#c04080;} +.DAY_NO_WORK_WHITE, +.DAY_NO_WORK_GREY, +.DAY_NO_WORK_PURPLE, +.DAY_NO_WORK_BLUE, +.DAY_NO_WORK_YELLOW, .DAY_NO_WORK_PINK {color:#c04080;} .DAY_NO_WORK_DARK {color:#e0a0c0;} -.DAY_HLD_WHITE {color:red;} -.DAY_HLD_GREY {color:red;} -.DAY_HLD_PURPLE {color:red;} -.DAY_HLD_BLUE {color:red;} -.DAY_HLD_YELLOW {color:red;} +.DAY_HLD_WHITE, +.DAY_HLD_GREY, +.DAY_HLD_PURPLE, +.DAY_HLD_BLUE, +.DAY_HLD_YELLOW, .DAY_HLD_PINK {color:red;} .DAY_HLD_DARK {color:#ff8080;} -.DAY_WRK_LIGHT_WHITE {color:#e0e0e0;} -.DAY_WRK_LIGHT_GREY {color:#e0e0e0;} -.DAY_WRK_LIGHT_PURPLE {color:#e0e0e0;} -.DAY_WRK_LIGHT_BLUE {color:#e0e0e0;} -.DAY_WRK_LIGHT_YELLOW {color:#e0e0e0;} +.DAY_WRK_LIGHT_WHITE, +.DAY_WRK_LIGHT_GREY, +.DAY_WRK_LIGHT_PURPLE, +.DAY_WRK_LIGHT_BLUE, +.DAY_WRK_LIGHT_YELLOW, .DAY_WRK_LIGHT_PINK {color:#e0e0e0;} .DAY_WRK_LIGHT_DARK {color:#606060;} -.DAY_NO_WORK_LIGHT_WHITE {color:#ffe0ff;} -.DAY_NO_WORK_LIGHT_GREY {color:#ffe0ff;} -.DAY_NO_WORK_LIGHT_PURPLE {color:#ffe0ff;} -.DAY_NO_WORK_LIGHT_BLUE {color:#ffe0ff;} -.DAY_NO_WORK_LIGHT_YELLOW {color:#ffe0ff;} +.DAY_NO_WORK_LIGHT_WHITE, +.DAY_NO_WORK_LIGHT_GREY, +.DAY_NO_WORK_LIGHT_PURPLE, +.DAY_NO_WORK_LIGHT_BLUE, +.DAY_NO_WORK_LIGHT_YELLOW, .DAY_NO_WORK_LIGHT_PINK {color:#ffe0ff;} .DAY_NO_WORK_LIGHT_DARK {color:#807080;} -.DAY_HLD_LIGHT_WHITE {color:#ffe0e0;} -.DAY_HLD_LIGHT_GREY {color:#ffe0e0;} -.DAY_HLD_LIGHT_PURPLE {color:#ffe0e0;} -.DAY_HLD_LIGHT_BLUE {color:#ffe0e0;} -.DAY_HLD_LIGHT_YELLOW {color:#ffe0e0;} +.DAY_HLD_LIGHT_WHITE, +.DAY_HLD_LIGHT_GREY, +.DAY_HLD_LIGHT_PURPLE, +.DAY_HLD_LIGHT_BLUE, +.DAY_HLD_LIGHT_YELLOW, .DAY_HLD_LIGHT_PINK {color:#ffe0e0;} .DAY_HLD_LIGHT_DARK {color:#807070;} @@ -1739,11 +1739,11 @@ a:hover img.CENTER_PHOTO_SHOW text-align:right; overflow:hidden; } -.NOTICE_DATE_WHITE {color:#202020;} -.NOTICE_DATE_GREY {color:#202020;} -.NOTICE_DATE_PURPLE {color:#202020;} -.NOTICE_DATE_BLUE {color:#202020;} -.NOTICE_DATE_YELLOW {color:#202020;} +.NOTICE_DATE_WHITE, +.NOTICE_DATE_GREY, +.NOTICE_DATE_PURPLE, +.NOTICE_DATE_BLUE, +.NOTICE_DATE_YELLOW, .NOTICE_DATE_PINK {color:#202020;} .NOTICE_DATE_DARK {color:white;} .NOTICE_SUBJECT @@ -1754,11 +1754,11 @@ a:hover img.CENTER_PHOTO_SHOW text-align:center; overflow:hidden; } -.NOTICE_SUBJECT_WHITE {color:#202020;} -.NOTICE_SUBJECT_GREY {color:#202020;} -.NOTICE_SUBJECT_PURPLE {color:#202020;} -.NOTICE_SUBJECT_BLUE {color:#202020;} -.NOTICE_SUBJECT_YELLOW {color:#202020;} +.NOTICE_SUBJECT_WHITE, +.NOTICE_SUBJECT_GREY, +.NOTICE_SUBJECT_PURPLE, +.NOTICE_SUBJECT_BLUE, +.NOTICE_SUBJECT_YELLOW, .NOTICE_SUBJECT_PINK {color:#202020;} .NOTICE_SUBJECT_DARK {color:white;} .NOTICE_TEXT_BRIEF @@ -1774,11 +1774,11 @@ a:hover img.CENTER_PHOTO_SHOW font-size:12pt; overflow:hidden; } -.NOTICE_TEXT_WHITE {color:#204080;} -.NOTICE_TEXT_GREY {color:#204080;} -.NOTICE_TEXT_PURPLE {color:#204080;} -.NOTICE_TEXT_BLUE {color:#204080;} -.NOTICE_TEXT_YELLOW {color:#204080;} +.NOTICE_TEXT_WHITE, +.NOTICE_TEXT_GREY, +.NOTICE_TEXT_PURPLE, +.NOTICE_TEXT_BLUE, +.NOTICE_TEXT_YELLOW, .NOTICE_TEXT_PINK {color:#204080;} .NOTICE_TEXT_DARK {color:#f0f8ff;} .NOTICE_AUTHOR @@ -1793,11 +1793,11 @@ a:hover img.CENTER_PHOTO_SHOW text-overflow:ellipsis; font-size:12pt; } -.NOTICE_AUTHOR_WHITE {color:#202020;} -.NOTICE_AUTHOR_GREY {color:#202020;} -.NOTICE_AUTHOR_PURPLE {color:#202020;} -.NOTICE_AUTHOR_BLUE {color:#202020;} -.NOTICE_AUTHOR_YELLOW {color:#202020;} +.NOTICE_AUTHOR_WHITE, +.NOTICE_AUTHOR_GREY, +.NOTICE_AUTHOR_PURPLE, +.NOTICE_AUTHOR_BLUE, +.NOTICE_AUTHOR_YELLOW, .NOTICE_AUTHOR_PINK {color:#202020;} .NOTICE_AUTHOR_DARK {color:white;} .NOTICE_USERS @@ -1859,11 +1859,11 @@ a:hover img.CENTER_PHOTO_SHOW border-radius:2px; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 2px 1px -2px rgba(0,0,0,0.2), 0 1px 5px 0 rgba(0,0,0,0.12); } -.ALERT_BG_WHITE {background-color:#fff8e5;} -.ALERT_BG_GREY {background-color:#fff8e5;} -.ALERT_BG_PURPLE {background-color:#fff8e5;} -.ALERT_BG_BLUE {background-color:#fff8e5;} -.ALERT_BG_YELLOW {background-color:#fff8e5;} +.ALERT_BG_WHITE, +.ALERT_BG_GREY, +.ALERT_BG_PURPLE, +.ALERT_BG_BLUE, +.ALERT_BG_YELLOW, .ALERT_BG_PINK {background-color:#fff8e5;} .ALERT_BG_DARK {background-color:#808080;} @@ -1888,11 +1888,11 @@ a:hover img.CENTER_PHOTO_SHOW text-align:left; overflow:hidden; } -.ALERT_TXT_WHITE {color:#632921;} -.ALERT_TXT_GREY {color:#632921;} -.ALERT_TXT_PURPLE {color:#632921;} -.ALERT_TXT_BLUE {color:#632921;} -.ALERT_TXT_YELLOW {color:#632921;} +.ALERT_TXT_WHITE, +.ALERT_TXT_GREY, +.ALERT_TXT_PURPLE, +.ALERT_TXT_BLUE, +.ALERT_TXT_YELLOW, .ALERT_TXT_PINK {color:#632921;} .ALERT_TXT_DARK {color:white;} @@ -1951,35 +1951,35 @@ a:hover img.CENTER_PHOTO_SHOW vertical-align:middle; } /* Creating filter from RGB: https://codepen.io/sosuke/pen/Pjoqqp */ -.BLACK_ICO_WHITE {filter: invert(26%) sepia(0%) saturate(1%) hue-rotate(288deg) brightness(97%) contrast(102%);} /* #404040 */ -.BLACK_ICO_GREY {filter: invert(26%) sepia(0%) saturate(1%) hue-rotate(288deg) brightness(97%) contrast(102%);} /* #404040 */ -.BLACK_ICO_PURPLE {filter: invert(26%) sepia(0%) saturate(1%) hue-rotate(288deg) brightness(97%) contrast(102%);} /* #404040 */ -.BLACK_ICO_BLUE {filter: invert(26%) sepia(0%) saturate(1%) hue-rotate(288deg) brightness(97%) contrast(102%);} /* #404040 */ -.BLACK_ICO_YELLOW {filter: invert(26%) sepia(0%) saturate(1%) hue-rotate(288deg) brightness(97%) contrast(102%);} /* #404040 */ +.BLACK_ICO_WHITE, +.BLACK_ICO_GREY, +.BLACK_ICO_PURPLE, +.BLACK_ICO_BLUE, +.BLACK_ICO_YELLOW, .BLACK_ICO_PINK {filter: invert(26%) sepia(0%) saturate(1%) hue-rotate(288deg) brightness(97%) contrast(102%);} /* #404040 */ .BLACK_ICO_DARK {filter: invert(92%) sepia(44%) saturate(2%) hue-rotate(176deg) brightness(110%) contrast(88%);} /* #f0f0f0 */ -.GREEN_ICO_WHITE {filter: invert(31%) sepia(16%) saturate(3727%) hue-rotate(60deg) brightness(94%) contrast(104%);} /* #246600 */ -.GREEN_ICO_GREY {filter: invert(31%) sepia(16%) saturate(3727%) hue-rotate(60deg) brightness(94%) contrast(104%);} /* #246600 */ -.GREEN_ICO_PURPLE {filter: invert(31%) sepia(16%) saturate(3727%) hue-rotate(60deg) brightness(94%) contrast(104%);} /* #246600 */ -.GREEN_ICO_BLUE {filter: invert(31%) sepia(16%) saturate(3727%) hue-rotate(60deg) brightness(94%) contrast(104%);} /* #246600 */ -.GREEN_ICO_YELLOW {filter: invert(31%) sepia(16%) saturate(3727%) hue-rotate(60deg) brightness(94%) contrast(104%);} /* #246600 */ +.GREEN_ICO_WHITE, +.GREEN_ICO_GREY, +.GREEN_ICO_PURPLE, +.GREEN_ICO_BLUE, +.GREEN_ICO_YELLOW, .GREEN_ICO_PINK {filter: invert(31%) sepia(16%) saturate(3727%) hue-rotate(60deg) brightness(94%) contrast(104%);} /* #246600 */ .GREEN_ICO_DARK {filter: invert(75%) sepia(13%) saturate(1915%) hue-rotate(46deg) brightness(89%) contrast(89%);} /* #80c040 */ -.RED_ICO_WHITE {filter: invert(8%) sepia(61%) saturate(5373%) hue-rotate(0deg) brightness(92%) contrast(114%);} /* #660000 */ -.RED_ICO_GREY {filter: invert(8%) sepia(61%) saturate(5373%) hue-rotate(0deg) brightness(92%) contrast(114%);} /* #660000 */ -.RED_ICO_PURPLE {filter: invert(8%) sepia(61%) saturate(5373%) hue-rotate(0deg) brightness(92%) contrast(114%);} /* #660000 */ -.RED_ICO_BLUE {filter: invert(8%) sepia(61%) saturate(5373%) hue-rotate(0deg) brightness(92%) contrast(114%);} /* #660000 */ -.RED_ICO_YELLOW {filter: invert(8%) sepia(61%) saturate(5373%) hue-rotate(0deg) brightness(92%) contrast(114%);} /* #660000 */ +.RED_ICO_WHITE, +.RED_ICO_GREY, +.RED_ICO_PURPLE, +.RED_ICO_BLUE, +.RED_ICO_YELLOW, .RED_ICO_PINK {filter: invert(8%) sepia(61%) saturate(5373%) hue-rotate(0deg) brightness(92%) contrast(114%);} /* #660000 */ .RED_ICO_DARK {filter: invert(51%) sepia(58%) saturate(1457%) hue-rotate(320deg) brightness(126%) contrast(104%);} /* #ff8080 */ -.WHITE_ICO_WHITE {filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(194deg) brightness(106%) contrast(105%);} /* #ffffff */ -.WHITE_ICO_GREY {filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(194deg) brightness(106%) contrast(105%);} /* #ffffff */ -.WHITE_ICO_PURPLE {filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(194deg) brightness(106%) contrast(105%);} /* #ffffff */ -.WHITE_ICO_BLUE {filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(194deg) brightness(106%) contrast(105%);} /* #ffffff */ -.WHITE_ICO_YELLOW {filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(194deg) brightness(106%) contrast(105%);} /* #ffffff */ +.WHITE_ICO_WHITE, +.WHITE_ICO_GREY, +.WHITE_ICO_PURPLE, +.WHITE_ICO_BLUE, +.WHITE_ICO_YELLOW, .WHITE_ICO_PINK {filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(194deg) brightness(106%) contrast(105%);} /* #ffffff */ .WHITE_ICO_DARK {filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(194deg) brightness(106%) contrast(105%);} /* #ffffff */ @@ -2009,11 +2009,11 @@ a:hover img.CENTER_PHOTO_SHOW text-align:center; overflow:hidden; } -.FRAME_WHITE {background-color:white;} -.FRAME_GREY {background-color:white;} -.FRAME_PURPLE {background-color:white;} -.FRAME_BLUE {background-color:white;} -.FRAME_YELLOW {background-color:white;} +.FRAME_WHITE, +.FRAME_GREY, +.FRAME_PURPLE, +.FRAME_BLUE, +.FRAME_YELLOW, .FRAME_PINK {background-color:white;} .FRAME_DARK {background-color:#444444;} @@ -2031,11 +2031,11 @@ a:hover img.CENTER_PHOTO_SHOW text-align:center; overflow:hidden; } -.FRAME_SHADOW_WHITE {background-color:#ddecf1; animation:fadetowhite 2s linear forwards;} -.FRAME_SHADOW_GREY {background-color:#ddecf1; animation:fadetowhite 2s linear forwards;} -.FRAME_SHADOW_PURPLE {background-color:#ddecf1; animation:fadetowhite 2s linear forwards;} -.FRAME_SHADOW_BLUE {background-color:#ddecf1; animation:fadetowhite 2s linear forwards;} -.FRAME_SHADOW_YELLOW {background-color:#ddecf1; animation:fadetowhite 2s linear forwards;} +.FRAME_SHADOW_WHITE, +.FRAME_SHADOW_GREY, +.FRAME_SHADOW_PURPLE, +.FRAME_SHADOW_BLUE, +.FRAME_SHADOW_YELLOW, .FRAME_SHADOW_PINK {background-color:#ddecf1; animation:fadetowhite 2s linear forwards;} .FRAME_SHADOW_DARK {background-color:#707070; animation:fadetodark 2s linear forwards;} @keyframes fadetowhite {to {background-color:white;}} @@ -2091,11 +2091,11 @@ a:hover img.CENTER_PHOTO_SHOW { font-size:18pt; } -.FRAME_TITLE_WHITE {color:#404040;} -.FRAME_TITLE_GREY {color:#404040;} -.FRAME_TITLE_PURPLE {color:#404040;} -.FRAME_TITLE_BLUE {color:#404040;} -.FRAME_TITLE_YELLOW {color:#404040;} +.FRAME_TITLE_WHITE, +.FRAME_TITLE_GREY, +.FRAME_TITLE_PURPLE, +.FRAME_TITLE_BLUE, +.FRAME_TITLE_YELLOW, .FRAME_TITLE_PINK {color:#404040;} .FRAME_TITLE_DARK {color:#d0d0d0;} @@ -2324,21 +2324,19 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} } /************************** Listing of users *********************************/ -.USR_LIST_NUM {color:#a0a0a0; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_WHITE {color:#a0a0a0; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_GREY {color:#a0a0a0; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_PURPLE {color:#a0a0a0; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_BLUE {color:#a0a0a0; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_YELLOW {color:#a0a0a0; font-size:15pt; font-weight:bold;} +.USR_LIST_NUM_WHITE, +.USR_LIST_NUM_GREY, +.USR_LIST_NUM_PURPLE, +.USR_LIST_NUM_BLUE, +.USR_LIST_NUM_YELLOW, .USR_LIST_NUM_PINK {color:#a0a0a0; font-size:15pt; font-weight:bold;} .USR_LIST_NUM_DARK {color:#808080; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_N {color:#202020; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_N_WHITE {color:#202020; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_N_GREY {color:#202020; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_N_PURPLE {color:#202020; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_N_BLUE {color:#202020; font-size:15pt; font-weight:bold;} -.USR_LIST_NUM_N_YELLOW {color:#202020; font-size:15pt; font-weight:bold;} +.USR_LIST_NUM_N_WHITE, +.USR_LIST_NUM_N_GREY, +.USR_LIST_NUM_N_PURPLE, +.USR_LIST_NUM_N_BLUE, +.USR_LIST_NUM_N_YELLOW, .USR_LIST_NUM_N_PINK {color:#202020; font-size:15pt; font-weight:bold;} .USR_LIST_NUM_N_DARK {color:#e0e0e0; font-size:15pt; font-weight:bold;} @@ -2406,19 +2404,19 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} .RB {text-align:right; vertical-align:bottom;} /* Right Bottom */ /***************** Colors used in headers, backgrounds, etc. *****************/ -.COLOR0_WHITE {background-color:#f4f2ea;} -.COLOR0_GREY {background-color:#f4f2ea;} -.COLOR0_PURPLE {background-color:#f4f2ea;} -.COLOR0_BLUE {background-color:#f4f2ea;} -.COLOR0_YELLOW {background-color:#f4f2ea;} +.COLOR0_WHITE, +.COLOR0_GREY, +.COLOR0_PURPLE, +.COLOR0_BLUE, +.COLOR0_YELLOW, .COLOR0_PINK {background-color:#f4f2ea;} .COLOR0_DARK {background-color:#404040;} -.COLOR1_WHITE {background-color:#fbfaf7;} -.COLOR1_GREY {background-color:#fbfaf7;} -.COLOR1_PURPLE {background-color:#fbfaf7;} -.COLOR1_BLUE {background-color:#fbfaf7;} -.COLOR1_YELLOW {background-color:#fbfaf7;} +.COLOR1_WHITE, +.COLOR1_GREY, +.COLOR1_PURPLE, +.COLOR1_BLUE, +.COLOR1_YELLOW, .COLOR1_PINK {background-color:#fbfaf7;} .COLOR1_DARK {background-color:#484848;} @@ -2507,11 +2505,11 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} text-overflow:ellipsis; } -.FILENAME_BIG_WHITE {color:#202020; font-size:18pt; font-weight:bold;} -.FILENAME_BIG_GREY {color:#202020; font-size:18pt; font-weight:bold;} -.FILENAME_BIG_PURPLE {color:#202020; font-size:18pt; font-weight:bold;} -.FILENAME_BIG_BLUE {color:#202020; font-size:18pt; font-weight:bold;} -.FILENAME_BIG_YELLOW {color:#202020; font-size:18pt; font-weight:bold;} +.FILENAME_BIG_WHITE, +.FILENAME_BIG_GREY, +.FILENAME_BIG_PURPLE, +.FILENAME_BIG_BLUE, +.FILENAME_BIG_YELLOW, .FILENAME_BIG_PINK {color:#202020; font-size:18pt; font-weight:bold;} .FILENAME_BIG_DARK {color:#f0f0f0; font-size:18pt; font-weight:bold;} @@ -2523,27 +2521,27 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} box-sizing:border-box; width:100%; } -.LST_WHITE {color:#202020; font-size:11pt; white-space:nowrap;} -.LST_GREY {color:#202020; font-size:11pt; white-space:nowrap;} -.LST_PURPLE {color:#202020; font-size:11pt; white-space:nowrap;} -.LST_BLUE {color:#202020; font-size:11pt; white-space:nowrap;} -.LST_YELLOW {color:#202020; font-size:11pt; white-space:nowrap;} +.LST_WHITE, +.LST_GREY, +.LST_PURPLE, +.LST_BLUE, +.LST_YELLOW, .LST_PINK {color:#202020; font-size:11pt; white-space:nowrap;} .LST_DARK {color:#e0e0e0; font-size:11pt; white-space:nowrap;} -.LST_HID_WHITE {color:#a0a0a0; font-size:11pt; white-space:nowrap;} -.LST_HID_GREY {color:#a0a0a0; font-size:11pt; white-space:nowrap;} -.LST_HID_PURPLE {color:#a0a0a0; font-size:11pt; white-space:nowrap;} -.LST_HID_BLUE {color:#a0a0a0; font-size:11pt; white-space:nowrap;} -.LST_HID_YELLOW {color:#a0a0a0; font-size:11pt; white-space:nowrap;} +.LST_HID_WHITE, +.LST_HID_GREY, +.LST_HID_PURPLE, +.LST_HID_BLUE, +.LST_HID_YELLOW, .LST_HID_PINK {color:#a0a0a0; font-size:11pt; white-space:nowrap;} .LST_HID_DARK {color:#909090; font-size:11pt; white-space:nowrap;} -.LST_REC_WHITE {color:#246600; font-size:11pt; white-space:nowrap;} -.LST_REC_GREY {color:#246600; font-size:11pt; white-space:nowrap;} -.LST_REC_PURPLE {color:#246600; font-size:11pt; white-space:nowrap;} -.LST_REC_BLUE {color:#246600; font-size:11pt; white-space:nowrap;} -.LST_REC_YELLOW {color:#246600; font-size:11pt; white-space:nowrap;} +.LST_REC_WHITE, +.LST_REC_GREY, +.LST_REC_PURPLE, +.LST_REC_BLUE, +.LST_REC_YELLOW, .LST_REC_PINK {color:#246600; font-size:11pt; white-space:nowrap;} .LST_REC_DARK {color:#80c040; font-size:11pt; white-space:nowrap;} @@ -2557,35 +2555,35 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} .LST_EDIT {width:250px; font-weight:bold; font-size:11pt; height:20px; padding:0; margin:-1px; border-width:1px; border-style:solid;} -.LST_EDIT_WHITE {color:#202020; border-color:#ece9d8;} -.LST_EDIT_GREY {color:#202020; border-color:#ece9d8;} -.LST_EDIT_PURPLE {color:#202020; border-color:#ece9d8;} -.LST_EDIT_BLUE {color:#202020; border-color:#ece9d8;} -.LST_EDIT_YELLOW {color:#202020; border-color:#ece9d8;} +.LST_EDIT_WHITE, +.LST_EDIT_GREY, +.LST_EDIT_PURPLE, +.LST_EDIT_BLUE, +.LST_EDIT_YELLOW, .LST_EDIT_PINK {color:#202020; border-color:#ece9d8;} .LST_EDIT_DARK {color:#e0e0e0; border-color:#ece9d8;} -.LST_EDIT_HID_WHITE {color:#a0a0a0; border-color:#ece9d8;} -.LST_EDIT_HID_GREY {color:#a0a0a0; border-color:#ece9d8;} -.LST_EDIT_HID_PURPLE {color:#a0a0a0; border-color:#ece9d8;} -.LST_EDIT_HID_BLUE {color:#a0a0a0; border-color:#ece9d8;} -.LST_EDIT_HID_YELLOW {color:#a0a0a0; border-color:#ece9d8;} +.LST_EDIT_HID_WHITE, +.LST_EDIT_HID_GREY, +.LST_EDIT_HID_PURPLE, +.LST_EDIT_HID_BLUE, +.LST_EDIT_HID_YELLOW, .LST_EDIT_HID_PINK {color:#a0a0a0; border-color:#ece9d8;} .LST_EDIT_HID_DARK {color:#909090; border-color:#ece9d8;} -.LST_EDIT_REC_WHITE {color:#008000; border-color:#ece9d8;} -.LST_EDIT_REC_GREY {color:#008000; border-color:#ece9d8;} -.LST_EDIT_REC_PURPLE {color:#008000; border-color:#ece9d8;} -.LST_EDIT_REC_BLUE {color:#008000; border-color:#ece9d8;} -.LST_EDIT_REC_YELLOW {color:#008000; border-color:#ece9d8;} +.LST_EDIT_REC_WHITE, +.LST_EDIT_REC_GREY, +.LST_EDIT_REC_PURPLE, +.LST_EDIT_REC_BLUE, +.LST_EDIT_REC_YELLOW, .LST_EDIT_REC_PINK {color:#008000; border-color:#ece9d8;} .LST_EDIT_REC_DARK {color:#008000; border-color:#ece9d8;} -.LST_EDIT_REC_HID_WHITE {color:#89be87; border-color:#ece9d8;} -.LST_EDIT_REC_HID_GREY {color:#89be87; border-color:#ece9d8;} -.LST_EDIT_REC_HID_PURPLE {color:#89be87; border-color:#ece9d8;} -.LST_EDIT_REC_HID_BLUE {color:#89be87; border-color:#ece9d8;} -.LST_EDIT_REC_HID_YELLOW {color:#89be87; border-color:#ece9d8;} +.LST_EDIT_REC_HID_WHITE, +.LST_EDIT_REC_HID_GREY, +.LST_EDIT_REC_HID_PURPLE, +.LST_EDIT_REC_HID_BLUE, +.LST_EDIT_REC_HID_YELLOW, .LST_EDIT_REC_HID_PINK {color:#89be87; border-color:#ece9d8;} .LST_EDIT_REC_HID_DARK {color:#89be87; border-color:#ece9d8;} @@ -2607,59 +2605,59 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} .T2 {color:#202020; font-size:13pt;} .T3 {color:#202020; font-size:12pt;} -.DAT_WHITE {color:#404040; font-size:13pt;} -.DAT_GREY {color:#404040; font-size:13pt;} -.DAT_PURPLE {color:#404040; font-size:13pt;} -.DAT_BLUE {color:#404040; font-size:13pt;} -.DAT_YELLOW {color:#404040; font-size:13pt;} +.DAT_WHITE, +.DAT_GREY, +.DAT_PURPLE, +.DAT_BLUE, +.DAT_YELLOW, .DAT_PINK {color:#404040; font-size:13pt;} .DAT_DARK {color:#d0d0d0; font-size:13pt;} -.DAT_STRONG_WHITE {color:black; font-size:13pt;} -.DAT_STRONG_GREY {color:black; font-size:13pt;} -.DAT_STRONG_PURPLE {color:black; font-size:13pt;} -.DAT_STRONG_BLUE {color:black; font-size:13pt;} -.DAT_STRONG_YELLOW {color:black; font-size:13pt;} +.DAT_STRONG_WHITE, +.DAT_STRONG_GREY, +.DAT_STRONG_PURPLE, +.DAT_STRONG_BLUE, +.DAT_STRONG_YELLOW, .DAT_STRONG_PINK {color:black; font-size:13pt;} .DAT_STRONG_DARK {color:white; font-size:13pt;} -.DAT_LIGHT_WHITE {color:#a0a0a0; font-size:13pt;} -.DAT_LIGHT_GREY {color:#a0a0a0; font-size:13pt;} -.DAT_LIGHT_PURPLE {color:#a0a0a0; font-size:13pt;} -.DAT_LIGHT_BLUE {color:#a0a0a0; font-size:13pt;} -.DAT_LIGHT_YELLOW {color:#a0a0a0; font-size:13pt;} +.DAT_LIGHT_WHITE, +.DAT_LIGHT_GREY, +.DAT_LIGHT_PURPLE, +.DAT_LIGHT_BLUE, +.DAT_LIGHT_YELLOW, .DAT_LIGHT_PINK {color:#a0a0a0; font-size:13pt;} .DAT_LIGHT_DARK {color:#909090; font-size:13pt;} -.DAT_SMALL_WHITE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt;} -.DAT_SMALL_GREY {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt;} -.DAT_SMALL_PURPLE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt;} -.DAT_SMALL_BLUE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt;} -.DAT_SMALL_YELLOW {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt;} +.DAT_SMALL_WHITE, +.DAT_SMALL_GREY, +.DAT_SMALL_PURPLE, +.DAT_SMALL_BLUE, +.DAT_SMALL_YELLOW, .DAT_SMALL_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt;} .DAT_SMALL_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#d0d0d0; font-size:12pt;} -.DAT_SMALL_STRONG_WHITE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt;} -.DAT_SMALL_STRONG_GREY {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt;} -.DAT_SMALL_STRONG_PURPLE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt;} -.DAT_SMALL_STRONG_BLUE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt;} -.DAT_SMALL_STRONG_YELLOW {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt;} +.DAT_SMALL_STRONG_WHITE, +.DAT_SMALL_STRONG_GREY, +.DAT_SMALL_STRONG_PURPLE, +.DAT_SMALL_STRONG_BLUE, +.DAT_SMALL_STRONG_YELLOW, .DAT_SMALL_STRONG_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt;} .DAT_SMALL_STRONG_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:white; font-size:12pt;} -.DAT_SMALL_NOBR_WHITE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt; white-space:nowrap;} -.DAT_SMALL_NOBR_GREY {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt; white-space:nowrap;} -.DAT_SMALL_NOBR_PURPLE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt; white-space:nowrap;} -.DAT_SMALL_NOBR_BLUE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt; white-space:nowrap;} -.DAT_SMALL_NOBR_YELLOW {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt; white-space:nowrap;} +.DAT_SMALL_NOBR_WHITE, +.DAT_SMALL_NOBR_GREY, +.DAT_SMALL_NOBR_PURPLE, +.DAT_SMALL_NOBR_BLUE, +.DAT_SMALL_NOBR_YELLOW, .DAT_SMALL_NOBR_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#404040; font-size:12pt; white-space:nowrap;} .DAT_SMALL_NOBR_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#d0d0d0; font-size:12pt; white-space:nowrap;} -.DAT_SMALL_NOBR_STRONG_WHITE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt; white-space:nowrap;} -.DAT_SMALL_NOBR_STRONG_GREY {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt; white-space:nowrap;} -.DAT_SMALL_NOBR_STRONG_PURPLE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt; white-space:nowrap;} -.DAT_SMALL_NOBR_STRONG_BLUE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt; white-space:nowrap;} -.DAT_SMALL_NOBR_STRONG_YELLOW {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt; white-space:nowrap;} +.DAT_SMALL_NOBR_STRONG_WHITE, +.DAT_SMALL_NOBR_STRONG_GREY, +.DAT_SMALL_NOBR_STRONG_PURPLE, +.DAT_SMALL_NOBR_STRONG_BLUE, +.DAT_SMALL_NOBR_STRONG_YELLOW, .DAT_SMALL_NOBR_STRONG_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:black; font-size:12pt; white-space:nowrap;} .DAT_SMALL_NOBR_STRONG_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:white; font-size:12pt; white-space:nowrap;} @@ -2691,43 +2689,43 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} border-width:1px; } -.DAT_SMALL_LIGHT_WHITE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#A0A0A0; font-size:12pt;} -.DAT_SMALL_LIGHT_GREY {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#A0A0A0; font-size:12pt;} -.DAT_SMALL_LIGHT_PURPLE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#A0A0A0; font-size:12pt;} -.DAT_SMALL_LIGHT_BLUE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#A0A0A0; font-size:12pt;} -.DAT_SMALL_LIGHT_YELLOW {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#A0A0A0; font-size:12pt;} -.DAT_SMALL_LIGHT_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#A0A0A0; font-size:12pt;} -.DAT_SMALL_LIGHT_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#A0A0A0; font-size:12pt;} +.DAT_SMALL_LIGHT_WHITE, +.DAT_SMALL_LIGHT_GREY, +.DAT_SMALL_LIGHT_PURPLE, +.DAT_SMALL_LIGHT_BLUE, +.DAT_SMALL_LIGHT_YELLOW, +.DAT_SMALL_LIGHT_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#a0a0a0; font-size:12pt;} +.DAT_SMALL_LIGHT_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#a0a0a0; font-size:12pt;} -.DAT_SMALL_BLUE_WHITE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#0080FF; font-size:12pt;} -.DAT_SMALL_BLUE_GREY {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#0080FF; font-size:12pt;} -.DAT_SMALL_BLUE_PURPLE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#0080FF; font-size:12pt;} -.DAT_SMALL_BLUE_BLUE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#0080FF; font-size:12pt;} -.DAT_SMALL_BLUE_YELLOW {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#0080FF; font-size:12pt;} -.DAT_SMALL_BLUE_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#0080FF; font-size:12pt;} -.DAT_SMALL_BLUE_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#0080FF; font-size:12pt;} +.DAT_SMALL_BLUE_WHITE, +.DAT_SMALL_BLUE_GREY, +.DAT_SMALL_BLUE_PURPLE, +.DAT_SMALL_BLUE_BLUE, +.DAT_SMALL_BLUE_YELLOW, +.DAT_SMALL_BLUE_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#0080ff; font-size:12pt;} +.DAT_SMALL_BLUE_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#0080ff; font-size:12pt;} -.DAT_SMALL_GREEN_WHITE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#246600; font-size:12pt;} -.DAT_SMALL_GREEN_GREY {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#246600; font-size:12pt;} -.DAT_SMALL_GREEN_PURPLE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#246600; font-size:12pt;} -.DAT_SMALL_GREEN_BLUE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#246600; font-size:12pt;} -.DAT_SMALL_GREEN_YELLOW {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#246600; font-size:12pt;} +.DAT_SMALL_GREEN_WHITE, +.DAT_SMALL_GREEN_GREY, +.DAT_SMALL_GREEN_PURPLE, +.DAT_SMALL_GREEN_BLUE, +.DAT_SMALL_GREEN_YELLOW, .DAT_SMALL_GREEN_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#246600; font-size:12pt;} .DAT_SMALL_GREEN_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#80c040; font-size:12pt;} -.DAT_SMALL_RED_WHITE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#660000; font-size:12pt;} -.DAT_SMALL_RED_GREY {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#660000; font-size:12pt;} -.DAT_SMALL_RED_PURPLE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#660000; font-size:12pt;} -.DAT_SMALL_RED_BLUE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#660000; font-size:12pt;} -.DAT_SMALL_RED_YELLOW {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#660000; font-size:12pt;} +.DAT_SMALL_RED_WHITE, +.DAT_SMALL_RED_GREY, +.DAT_SMALL_RED_PURPLE, +.DAT_SMALL_RED_BLUE, +.DAT_SMALL_RED_YELLOW, .DAT_SMALL_RED_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#660000; font-size:12pt;} .DAT_SMALL_RED_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#ff8080; font-size:12pt;} -.DAT_SMALL_YELLOW_WHITE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#C0C000; font-size:12pt;} -.DAT_SMALL_YELLOW_GREY {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#C0C000; font-size:12pt;} -.DAT_SMALL_YELLOW_PURPLE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#C0C000; font-size:12pt;} -.DAT_SMALL_YELLOW_BLUE {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#C0C000; font-size:12pt;} -.DAT_SMALL_YELLOW_YELLOW {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#C0C000; font-size:12pt;} +.DAT_SMALL_YELLOW_WHITE, +.DAT_SMALL_YELLOW_GREY, +.DAT_SMALL_YELLOW_PURPLE, +.DAT_SMALL_YELLOW_BLUE, +.DAT_SMALL_YELLOW_YELLOW, .DAT_SMALL_YELLOW_PINK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#C0C000; font-size:12pt;} .DAT_SMALL_YELLOW_DARK {font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; color:#C0C000; font-size:12pt;} @@ -2865,29 +2863,29 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} text-overflow:ellipsis; margin:0 auto; } -.CLASSPHOTO_WHITE {color:#404040;} -.CLASSPHOTO_GREY {color:#404040;} -.CLASSPHOTO_PURPLE {color:#404040;} -.CLASSPHOTO_BLUE {color:#404040;} -.CLASSPHOTO_YELLOW {color:#404040;} +.CLASSPHOTO_WHITE, +.CLASSPHOTO_GREY, +.CLASSPHOTO_PURPLE, +.CLASSPHOTO_BLUE, +.CLASSPHOTO_YELLOW, .CLASSPHOTO_PINK {color:#404040;} .CLASSPHOTO_DARK {color:#d0d0d0;} /************************** Left column menu *********************************/ -.INS_LNK_WHITE, .MFU_WHITE, .MONTH_WHITE {color:#4d88a1;} -.INS_LNK_GREY, .MFU_GREY, .MONTH_GREY {color:#4d88a1;} -.INS_LNK_PURPLE, .MFU_PURPLE, .MONTH_PURPLE {color:#4d88a1;} -.INS_LNK_BLUE, .MFU_BLUE, .MONTH_BLUE {color:#4d88a1;} -.INS_LNK_YELLOW, .MFU_YELLOW, .MONTH_YELLOW {color:#4d88a1;} +.INS_LNK_WHITE, .MFU_WHITE, .MONTH_WHITE, +.INS_LNK_GREY, .MFU_GREY, .MONTH_GREY, +.INS_LNK_PURPLE, .MFU_PURPLE, .MONTH_PURPLE, +.INS_LNK_BLUE, .MFU_BLUE, .MONTH_BLUE, +.INS_LNK_YELLOW, .MFU_YELLOW, .MONTH_YELLOW, .INS_LNK_PINK, .MFU_PINK, .MONTH_PINK {color:#4d88a1;} .INS_LNK_DARK, .MFU_DARK, .MONTH_DARK {color:#8cbcce;} /*****************************************************************************/ -.TIT_TBL_WHITE {color:#4d88a1;} -.TIT_TBL_GREY {color:#4d88a1;} -.TIT_TBL_PURPLE {color:#4d88a1;} -.TIT_TBL_BLUE {color:#4d88a1;} -.TIT_TBL_YELLOW {color:#4d88a1;} +.TIT_TBL_WHITE, +.TIT_TBL_GREY, +.TIT_TBL_PURPLE, +.TIT_TBL_BLUE, +.TIT_TBL_YELLOW, .TIT_TBL_PINK {color:#4d88a1;} .TIT_TBL_DARK {color:#afc4cc;} @@ -3479,7 +3477,7 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} width:100%; margin:0 auto; } -.Tmt_CELL +.Tmt_TXT { box-sizing:border-box; max-width:80px; @@ -3487,11 +3485,8 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} overflow:hidden; text-overflow:ellipsis; margin:0 auto; - } -.Tmt_TXT - { font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; - color:#345C6C; + color:#345c6c; font-size:10pt; line-height:100%; letter-spacing:0; @@ -3504,19 +3499,19 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} letter-spacing:0; } -.Tmt_DAY_WHITE {color:#202020;} -.Tmt_DAY_GREY {color:#202020;} -.Tmt_DAY_PURPLE {color:#202020;} -.Tmt_DAY_BLUE {color:#202020;} -.Tmt_DAY_YELLOW {color:#202020;} +.Tmt_DAY_WHITE, +.Tmt_DAY_GREY, +.Tmt_DAY_PURPLE, +.Tmt_DAY_BLUE, +.Tmt_DAY_YELLOW, .Tmt_DAY_PINK {color:#202020;} .Tmt_DAY_DARK {color:#e0e0e0;} -.Tmt_SUNDAY_WHITE {color:#660000;} -.Tmt_SUNDAY_GREY {color:#660000;} -.Tmt_SUNDAY_PURPLE {color:#660000;} -.Tmt_SUNDAY_BLUE {color:#660000;} -.Tmt_SUNDAY_YELLOW {color:#660000;} +.Tmt_SUNDAY_WHITE, +.Tmt_SUNDAY_GREY, +.Tmt_SUNDAY_PURPLE, +.Tmt_SUNDAY_BLUE, +.Tmt_SUNDAY_YELLOW, .Tmt_SUNDAY_PINK {color:#660000;} .Tmt_SUNDAY_DARK {color:#ff8080;} @@ -3531,32 +3526,64 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} letter-spacing:0; } -.Tmt_HOUR00_WHITE {color:#808080;} -.Tmt_HOUR00_GREY {color:#808080;} -.Tmt_HOUR00_PURPLE {color:#808080;} -.Tmt_HOUR00_BLUE {color:#808080;} -.Tmt_HOUR00_YELLOW {color:#808080;} +.Tmt_HOUR00_WHITE, +.Tmt_HOUR00_GREY, +.Tmt_HOUR00_PURPLE, +.Tmt_HOUR00_BLUE, +.Tmt_HOUR00_YELLOW, .Tmt_HOUR00_PINK {color:#808080;} .Tmt_HOUR00_DARK {color:#d0d0d0;} -.Tmt_HOURXX_WHITE {color:#d0d0d0;} -.Tmt_HOURXX_GREY {color:#d0d0d0;} -.Tmt_HOURXX_PURPLE {color:#d0d0d0;} -.Tmt_HOURXX_BLUE {color:#d0d0d0;} -.Tmt_HOURXX_YELLOW {color:#d0d0d0;} +.Tmt_HOURXX_WHITE, +.Tmt_HOURXX_GREY, +.Tmt_HOURXX_PURPLE, +.Tmt_HOURXX_BLUE, +.Tmt_HOURXX_YELLOW, .Tmt_HOURXX_PINK {color:#d0d0d0;} .Tmt_HOURXX_DARK {color:#808080;} .Tmt_HOURCOL {box-sizing:border-box; height:16px; width:7%;} .Tmt_MINICOL {box-sizing:border-box; height:16px; width:2%;} .Tmt_ALIGN {box-sizing:border-box; height:16px; width:1%;} -.Tmt_FREE0 {box-sizing:border-box; height:16px; background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #EEEADC #F4F2EA;} -.Tmt_FREE1 {box-sizing:border-box; height:16px; background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #E0D9C2 #F4F2EA;} -.Tmt_FREE2 {box-sizing:border-box; height:16px; background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #F5F2E9 #FBFAF7;} -.Tmt_FREE3 {box-sizing:border-box; height:16px; background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #E0D9C2 #FBFAF7;} -.Tmt_LECT {box-sizing:border-box; height:16px; background-color:#C0DAE4; border:solid 2px; border-color:#D5F1FC #AAC1C9 #AAC1C9 #D5F1FC;} -.Tmt_PRAC {box-sizing:border-box; height:16px; background-color:#DBE5E9; border:solid 2px; border-color:#EDF8FC #C7D0D4 #C7D0D4 #EDF8FC;} -.Tmt_TUTO {box-sizing:border-box; height:16px; background-color:#D6E9C3; border:solid 2px; border-color:#E8FCD3 #C2D4B1 #C2D4B1 #E8FCD3;} + +.Tmt_CELL {box-sizing:border-box; height:16px; border:solid 1px;} + +.Tmt_FREE0_WHITE, +.Tmt_FREE0_GREY, +.Tmt_FREE0_PURPLE, +.Tmt_FREE0_BLUE, +.Tmt_FREE0_YELLOW, +.Tmt_FREE0_PINK {background-color:#f4f2ea; border-color:#f4f2ea #e0d9c2 #eeeadc #f4f2ea;} +.Tmt_FREE0_DARK {background-color:#404040; border-color:#404040 #686868 #505050 #404040;} + +.Tmt_FREE1_WHITE, +.Tmt_FREE1_GREY, +.Tmt_FREE1_PURPLE, +.Tmt_FREE1_BLUE, +.Tmt_FREE1_YELLOW, +.Tmt_FREE1_PINK {background-color:#f4f2ea; border-color:#f4f2ea #e0d9c2 #e0d9c2 #f4f2ea;} +.Tmt_FREE1_DARK {background-color:#404040; border-color:#404040 #686868 #686868 #404040;} + +.Tmt_FREE2_WHITE, +.Tmt_FREE2_GREY, +.Tmt_FREE2_PURPLE, +.Tmt_FREE2_BLUE, +.Tmt_FREE2_YELLOW, +.Tmt_FREE2_PINK {background-color:#fbfaf7; border-color:#fbfaf7 #e0d9c2 #f5f2e9 #fbfaf7;} +.Tmt_FREE2_DARK {background-color:#484848; border-color:#484848 #686868 #585858 #484848;} + +.Tmt_FREE3_WHITE, +.Tmt_FREE3_GREY, +.Tmt_FREE3_PURPLE, +.Tmt_FREE3_BLUE, +.Tmt_FREE3_YELLOW, +.Tmt_FREE3_PINK {background-color:#fbfaf7; border-color:#fbfaf7 #e0d9c2 #e0d9c2 #fbfaf7;} +.Tmt_FREE3_DARK {background-color:#484848; border-color:#484848 #686868 #686868 #484848;} + +.Tmt_LECT {background-color:#c0dae4; border-color:#d5f1fc #aac1c9 #aac1c9 #d5f1fc;} +.Tmt_PRAC {background-color:#dbe5e9; border-color:#edf8fc #c7d0d4 #c7d0d4 #edf8fc;} +.Tmt_TUTO {background-color:#d6e9c3; border-color:#e8fcd3 #c2d4b1 #c2d4b1 #e8fcd3;} + .Tmt_TYP, .Tmt_DUR, .Tmt_GRP, .Tmt_INF { width:80px; @@ -3595,11 +3622,11 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} vertical-align:middle; border:solid 1px; } -.PREF_ON_WHITE {border-color:#c0dae4; background-color:#ddecf1;} -.PREF_ON_GREY {border-color:#c0dae4; background-color:#ddecf1;} -.PREF_ON_PURPLE {border-color:#c0dae4; background-color:#ddecf1;} -.PREF_ON_BLUE {border-color:#c0dae4; background-color:#ddecf1;} -.PREF_ON_YELLOW {border-color:#c0dae4; background-color:#ddecf1;} +.PREF_ON_WHITE, +.PREF_ON_GREY, +.PREF_ON_PURPLE, +.PREF_ON_BLUE, +.PREF_ON_YELLOW, .PREF_ON_PINK {border-color:#c0dae4; background-color:#ddecf1;} .PREF_ON_DARK {border-color:#808080; background-color:#707070;} @@ -3763,12 +3790,11 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} font-size:13pt; font-weight:bold; } -.ATT_CHECK {color:#246600;} -.ATT_CHECK_WHITE {color:#246600;} -.ATT_CHECK_GREY {color:#246600;} -.ATT_CHECK_PURPLE {color:#246600;} -.ATT_CHECK_BLUE {color:#246600;} -.ATT_CHECK_YELLOW {color:#246600;} +.ATT_CHECK_WHITE, +.ATT_CHECK_GREY, +.ATT_CHECK_PURPLE, +.ATT_CHECK_BLUE, +.ATT_CHECK_YELLOW, .ATT_CHECK_PINK {color:#246600;} .ATT_CHECK_DARK {color:#80c040;} @@ -3779,12 +3805,11 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} font-weight:bold; opacity:0.2; } -.ATT_CROSS {color:#660000;} -.ATT_CROSS_WHITE {color:#660000;} -.ATT_CROSS_GREY {color:#660000;} -.ATT_CROSS_PURPLE {color:#660000;} -.ATT_CROSS_BLUE {color:#660000;} -.ATT_CROSS_YELLOW {color:#660000;} +.ATT_CROSS_WHITE, +.ATT_CROSS_GREY, +.ATT_CROSS_PURPLE, +.ATT_CROSS_BLUE, +.ATT_CROSS_YELLOW, .ATT_CROSS_PINK {color:#660000;} .ATT_CROSS_DARK {color:#ff8080;} @@ -4015,11 +4040,11 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;} overflow:hidden; text-overflow:ellipsis; } -.Tml_TXT_WHITE {color:#202020;} -.Tml_TXT_GREY {color:#202020;} -.Tml_TXT_PURPLE {color:#202020;} -.Tml_TXT_BLUE {color:#202020;} -.Tml_TXT_YELLOW {color:#202020;} +.Tml_TXT_WHITE, +.Tml_TXT_GREY, +.Tml_TXT_PURPLE, +.Tml_TXT_BLUE, +.Tml_TXT_YELLOW, .Tml_TXT_PINK {color:#202020;} .Tml_TXT_DARK {color:#e0e0e0;} @@ -4259,11 +4284,11 @@ a.PAG:hover, .PAG_CUR } /***************************** Calls for exams *******************************/ -.EXAM_TIT_WHITE {color:#202020; font-size:18pt; font-weight:bold;} -.EXAM_TIT_GREY {color:#202020; font-size:18pt; font-weight:bold;} -.EXAM_TIT_PURPLE {color:#202020; font-size:18pt; font-weight:bold;} -.EXAM_TIT_BLUE {color:#202020; font-size:18pt; font-weight:bold;} -.EXAM_TIT_YELLOW {color:#202020; font-size:18pt; font-weight:bold;} +.EXAM_TIT_WHITE, +.EXAM_TIT_GREY, +.EXAM_TIT_PURPLE, +.EXAM_TIT_BLUE, +.EXAM_TIT_YELLOW, .EXAM_TIT_PINK {color:#202020; font-size:18pt; font-weight:bold;} .EXAM_TIT_DARK {color:#f0f0f0; font-size:18pt; font-weight:bold;} diff --git a/swad_account.c b/swad_account.c index 4afa4c21..ff8be436 100644 --- a/swad_account.c +++ b/swad_account.c @@ -231,7 +231,7 @@ void Acc_CheckIfEmptyAccountExists (void) /***** List users found *****/ for (NumUsr = 1; NumUsr <= NumUsrs; - NumUsr++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumUsr++, The_ChangeRowColor ()) { /***** Get user's data from query result *****/ /* Get user's code */ @@ -277,6 +277,7 @@ void Acc_CheckIfEmptyAccountExists (void) static void Acc_WriteRowEmptyAccount (unsigned NumUsr,const char *ID,struct UsrData *UsrDat) { + extern const char *The_Colors[The_NUM_THEMES]; extern const char *The_ClassDatStrong[The_NUM_THEMES]; extern const char *Txt_ID; extern const char *Txt_Name; @@ -287,7 +288,8 @@ static void Acc_WriteRowEmptyAccount (unsigned NumUsr,const char *ID,struct UsrD HTM_TR_Begin (NULL); /***** Write number of user in the list *****/ - HTM_TD_Begin ("rowspan=\"2\" class=\"USR_LIST_NUM_N RT %s\"", + HTM_TD_Begin ("rowspan=\"2\" class=\"RT USR_LIST_NUM_N_%s %s\"", + The_Colors[Gbl.Prefs.Theme], The_GetColorRows ()); HTM_Unsigned (NumUsr); HTM_TD_End (); diff --git a/swad_agenda.c b/swad_agenda.c index eefb971a..6301a3a4 100644 --- a/swad_agenda.c +++ b/swad_agenda.c @@ -900,7 +900,7 @@ static void Agd_ShowOneEvent (struct Agd_Agenda *Agenda, /***** Free anchor string *****/ Frm_FreeAnchorStr (Anchor); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_assignment.c b/swad_assignment.c index a63e7e7c..6d2f21dc 100644 --- a/swad_assignment.c +++ b/swad_assignment.c @@ -520,7 +520,7 @@ static void Asg_ShowOneAssignment (struct Asg_Assignments *Assignments, /***** Free anchor string *****/ Frm_FreeAnchorStr (Anchor); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); /***** Mark possible notification as seen *****/ Ntf_DB_MarkNotifAsSeenUsingCod (Ntf_EVENT_ASSIGNMENT,AsgCod); diff --git a/swad_attendance.c b/swad_attendance.c index e20f8851..7d276755 100644 --- a/swad_attendance.c +++ b/swad_attendance.c @@ -578,7 +578,7 @@ static void Att_ShowOneAttEvent (struct Att_Events *Events, /***** Free anchor string *****/ Frm_FreeAnchorStr (Anchor); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ @@ -1847,7 +1847,7 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr, /***** End table row *****/ HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ @@ -2717,7 +2717,7 @@ static void Att_ListEventsToSelect (const struct Att_Events *Events, /***** List the events *****/ for (NumAttEvent = 0, UniqueId = 1; NumAttEvent < Events->Num; - NumAttEvent++, UniqueId++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumAttEvent++, UniqueId++, The_ChangeRowColor ()) { /* Get data of the attendance event from database */ Att_GetDataOfAttEventByCodAndCheckCrs (&Events->Lst[NumAttEvent]); @@ -3040,7 +3040,7 @@ static void Att_WriteRowUsrSeveralAttEvents (const struct Att_Events *Events, HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ @@ -3291,5 +3291,5 @@ static void Att_ListAttEventsForAStd (const struct Att_Events *Events, } } - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } diff --git a/swad_browser.c b/swad_browser.c index c96d2f2c..0b0dff8e 100644 --- a/swad_browser.c +++ b/swad_browser.c @@ -4679,7 +4679,7 @@ static bool Brw_WriteRowFileBrowser (unsigned Level,const char *RowId, free (Anchor); HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); if (RowSetAsHidden && (SeeDocsZone || SeeMarks)) return false; @@ -10176,7 +10176,7 @@ static void Brw_WriteRowDocData (unsigned *NumDocsNotHidden,MYSQL_ROW row) HTM_TD_End (); HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } } diff --git a/swad_building.c b/swad_building.c index 9939875a..56d13491 100644 --- a/swad_building.c +++ b/swad_building.c @@ -144,7 +144,7 @@ void Bld_SeeBuildings (void) /***** Write list of buildings *****/ for (NumBuilding = 0; NumBuilding < Buildings.Num; - NumBuilding++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumBuilding++, The_ChangeRowColor ()) { HTM_TR_Begin (NULL); diff --git a/swad_center.c b/swad_center.c index d7f05964..b2debd9e 100644 --- a/swad_center.c +++ b/swad_center.c @@ -138,7 +138,7 @@ void Ctr_SeeCtrWithPendingDegs (void) /***** List the centers *****/ for (NumCtr = 0; NumCtr < NumCtrs; - NumCtr++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumCtr++, The_ChangeRowColor ()) { /* Get next center */ row = mysql_fetch_row (mysql_res); @@ -400,7 +400,7 @@ static void Ctr_ListOneCenterForSeeing (struct Ctr_Center *Ctr,unsigned NumCtr) HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_changelog.h b/swad_changelog.h index 9d9b8b3a..dcbd4a5b 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.84 (2022-03-19)" -#define CSS_FILE "swad21.83.8.css" +#define Log_PLATFORM_VERSION "SWAD 21.85 (2022-03-23)" +#define CSS_FILE "swad21.85.css" #define JS_FILE "swad21.78.2.js" /* + Version 21.85: Mar 24, 2022 Working on design of dark theme. (323634 lines) Version 21.84: Mar 19, 2022 Code refactoring on row colors. (323626 lines) Version 21.83.8: Mar 16, 2022 Working on design of dark theme. (323610 lines) Version 21.83.7: Mar 16, 2022 Code refactoring in forms (input image). (323585 lines) diff --git a/swad_connected.c b/swad_connected.c index 7688db5c..00ccc8ac 100644 --- a/swad_connected.c +++ b/swad_connected.c @@ -642,7 +642,7 @@ static void Con_WriteRowConnectedUsrOnRightColumn (Rol_Role_t Role) /***** Free memory used for user's data *****/ Usr_UsrDataDestructor (&OtherUsrDat); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ @@ -749,7 +749,7 @@ static void Con_ShowConnectedUsrsCurrentLocationOneByOneOnMainZone (Rol_Role_t R HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } } diff --git a/swad_country.c b/swad_country.c index 1388b7ff..8e861686 100644 --- a/swad_country.c +++ b/swad_country.c @@ -136,7 +136,7 @@ void Cty_SeeCtyWithPendingInss (void) /***** List the countries *****/ for (NumCty = 0; NumCty < NumCtys; - NumCty++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumCty++, The_ChangeRowColor ()) { /* Get next country */ row = mysql_fetch_row (mysql_res); @@ -460,7 +460,7 @@ static void Cty_ListOneCountryForSeeing (struct Cty_Countr *Cty,unsigned NumCty) HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_course.c b/swad_course.c index 2319cd8f..15991f4a 100644 --- a/swad_course.c +++ b/swad_course.c @@ -859,7 +859,7 @@ static void Crs_ListCourses (void) Year <= Deg_MAX_YEARS_PER_DEGREE; Year++) if (Crs_ListCoursesOfAYearForSeeing (Year)) // If this year has courses ==> - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; // ==> change color for the next year + The_ChangeRowColor (); // ==> change color for the next year Crs_ListCoursesOfAYearForSeeing (0); // Courses without a year selected /***** End table *****/ @@ -2510,7 +2510,7 @@ static void Crs_WriteRowCrsData (unsigned NumCrs,MYSQL_ROW row,bool WriteColumnA HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_degree.c b/swad_degree.c index 21c1f571..81cd1e8e 100644 --- a/swad_degree.c +++ b/swad_degree.c @@ -140,7 +140,7 @@ void Deg_SeeDegWithPendingCrss (void) /***** List the degrees *****/ for (NumDeg = 0; NumDeg < NumDegs; - NumDeg++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumDeg++, The_ChangeRowColor ()) { /* Get next degree */ row = mysql_fetch_row (mysql_res); @@ -870,7 +870,7 @@ static void Deg_ListOneDegreeForSeeing (struct Deg_Degree *Deg,unsigned NumDeg) /***** End table row *****/ HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_degree_type.c b/swad_degree_type.c index c348ea96..c9dd8c56 100644 --- a/swad_degree_type.c +++ b/swad_degree_type.c @@ -322,7 +322,7 @@ static void DegTyp_ListDegreeTypesForSeeing (void) /***** List degree types with forms for edition *****/ for (NumDegTyp = 0; NumDegTyp < Gbl.DegTypes.Num; - NumDegTyp++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumDegTyp++, The_ChangeRowColor ()) { BgColor = (Gbl.DegTypes.Lst[NumDegTyp].DegTypCod == Gbl.Hierarchy.Deg.DegTypCod) ? "BG_HIGHLIGHT" : diff --git a/swad_duplicate.c b/swad_duplicate.c index 4664b284..09c5f9bb 100644 --- a/swad_duplicate.c +++ b/swad_duplicate.c @@ -192,7 +192,7 @@ void Dup_ListDuplicateUsrs (void) HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } else // User does not exists ==> // remove user from table of possible duplicate users @@ -320,7 +320,7 @@ static void Dup_ListSimilarUsrs (void) HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } } diff --git a/swad_exam.c b/swad_exam.c index e6935ce8..1d6ce042 100644 --- a/swad_exam.c +++ b/swad_exam.c @@ -635,7 +635,7 @@ static void Exa_ShowOneExam (struct Exa_Exams *Exams, if (ShowOnlyThisExam) HTM_TABLE_End (); else - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); /***** Free anchor string *****/ Frm_FreeAnchorStr (Anchor); diff --git a/swad_exam_log.c b/swad_exam_log.c index e8e1c617..8180785f 100644 --- a/swad_exam_log.c +++ b/swad_exam_log.c @@ -284,10 +284,8 @@ void ExaLog_ShowExamLog (const struct ExaPrn_Print *Print) /***** Write clicks *****/ for (NumClick = 0; NumClick < NumClicks; - NumClick++) + NumClick++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = NumClick % 2; - /***** Get row *****/ row = mysql_fetch_row (mysql_res); diff --git a/swad_exam_print.c b/swad_exam_print.c index af2614c9..1904bb99 100644 --- a/swad_exam_print.c +++ b/swad_exam_print.c @@ -394,7 +394,7 @@ static unsigned ExaPrn_GetSomeQstsFromSetToPrint (struct ExaPrn_Print *Print, NumQstInSet < NumQstsInSet; NumQstInSet++, (*NumQstsInPrint)++) { - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); /***** Get question data *****/ row = mysql_fetch_row (mysql_res); diff --git a/swad_exam_result.c b/swad_exam_result.c index 9eff36cd..d8a524a7 100644 --- a/swad_exam_result.c +++ b/swad_exam_result.c @@ -614,7 +614,7 @@ static void ExaRes_ListExamsToSelect (struct Exa_Exams *Exams) /***** List the sessions *****/ for (NumExam = 0, UniqueId = 1; NumExam < Exams->Num; - NumExam++, UniqueId++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumExam++, UniqueId++, The_ChangeRowColor ()) { /* Get data of this exam */ Exam.ExaCod = Exams->Lst[NumExam].ExaCod; @@ -1110,7 +1110,7 @@ static void ExaRes_ShowResults (struct Exa_Exams *Exams, /***** Free structure that stores the query result *****/ DB_FreeMySQLResult (&mysql_res); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ @@ -1834,10 +1834,8 @@ static void ExaRes_ShowExamAnswers (struct UsrData *UsrDat, for (QstInd = 0; QstInd < Print->NumQsts.All; - QstInd++) + QstInd++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = QstInd % 2; - /***** Create test question *****/ Qst_QstConstructor (&Question); Question.QstCod = Print->PrintedQuestions[QstInd].QstCod; diff --git a/swad_exam_session.c b/swad_exam_session.c index 01e101e9..cdc14227 100644 --- a/swad_exam_session.c +++ b/swad_exam_session.c @@ -293,10 +293,8 @@ static void ExaSes_ListOneOrMoreSessions (struct Exa_Exams *Exams, /***** Write rows *****/ for (NumSession = 0, UniqueId = 1; NumSession < NumSessions; - NumSession++, UniqueId++) + NumSession++, UniqueId++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = NumSession % 2; - /***** Get exam session data from row *****/ ExaSes_GetSessionDataFromRow (mysql_res,&Session); diff --git a/swad_exam_set.c b/swad_exam_set.c index c6502e0e..a659fa45 100644 --- a/swad_exam_set.c +++ b/swad_exam_set.c @@ -737,10 +737,8 @@ static void ExaSet_ListOneOrMoreSetsForEdition (struct Exa_Exams *Exams, /***** Write rows *****/ for (NumSet = 0; NumSet < NumSets; - NumSet++) + NumSet++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = NumSet % 2; - /***** Create set of questions *****/ ExaSet_ResetSet (&Set); @@ -982,10 +980,8 @@ static void ExaSet_ListOneOrMoreQuestionsForEdition (struct Exa_Exams *Exams, /***** Write rows *****/ for (QstInd = 0; QstInd < NumQsts; - QstInd++) + QstInd++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = QstInd % 2; - /***** Create test question *****/ Qst_QstConstructor (&Question); diff --git a/swad_follow.c b/swad_follow.c index 3bc17b4c..0a9c6dcc 100644 --- a/swad_follow.c +++ b/swad_follow.c @@ -726,7 +726,7 @@ static void Fol_WriteRowUsrToFollowOnRightColumn (struct UsrData *UsrDat) HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_forum.c b/swad_forum.c index 7f1bfee5..887e4dd7 100644 --- a/swad_forum.c +++ b/swad_forum.c @@ -2195,7 +2195,7 @@ static void For_ListForumThrs (struct For_Forums *Forums, /***** List threads *****/ for (NumThr = PaginationThrs->FirstItemVisible, NumThrInScreen = 0, UniqueId = 0; NumThr <= PaginationThrs->LastItemVisible; - NumThr++, NumThrInScreen++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumThr++, NumThrInScreen++, The_ChangeRowColor ()) { /***** Get the data of this thread *****/ Thr.ThrCod = ThrCods[NumThrInScreen]; diff --git a/swad_game.c b/swad_game.c index e5d7dcd4..0810b6b2 100644 --- a/swad_game.c +++ b/swad_game.c @@ -686,7 +686,7 @@ static void Gam_ShowOneGame (struct Gam_Games *Games, if (ShowOnlyThisGame) HTM_TABLE_End (); else - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); /***** Free anchor string *****/ Frm_FreeAnchorStr (Anchor); @@ -1727,10 +1727,8 @@ static void Gam_ListOneOrMoreQuestionsForEdition (struct Gam_Games *Games, /***** Write rows *****/ for (NumQst = 0; NumQst < NumQsts; - NumQst++) + NumQst++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = NumQst % 2; - /***** Create test question *****/ Qst_QstConstructor (&Question); diff --git a/swad_global.c b/swad_global.c index 4663e395..c9b6341a 100644 --- a/swad_global.c +++ b/swad_global.c @@ -280,9 +280,6 @@ void Gbl_InitializeGlobals (void) Gbl.FileBrowser.FilFolLnk.Type = Brw_IS_UNKNOWN; Gbl.FileBrowser.UploadingWithDropzone = false; - /* To alternate colors where listing rows */ - Gbl.RowEvenOdd = 0; - Gbl.WebService.Function = API_unknown; /* Flush caches */ diff --git a/swad_global.h b/swad_global.h index 8de85922..c3fcbedb 100644 --- a/swad_global.h +++ b/swad_global.h @@ -175,7 +175,6 @@ struct Globals time_t StartExecutionTimeUTC; struct Dat_DateTime Now; struct Dat_Date Yesterday; - unsigned RowEvenOdd; // To alternate row colors in listings const char *XMLPtr; struct { diff --git a/swad_indicator.c b/swad_indicator.c index 0e8c5a7b..60a2d014 100644 --- a/swad_indicator.c +++ b/swad_indicator.c @@ -411,9 +411,9 @@ static void Ind_GetNumCoursesWithIndicators (unsigned NumCrssWithIndicatorYes[1 NumCrssWithIndicatorYes[Ind] = 0; /***** List courses *****/ - for (Gbl.RowEvenOdd = 1, NumCrs = 0; + for (NumCrs = 0; NumCrs < NumCrss; - NumCrs++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumCrs++, The_ChangeRowColor ()) { /* Get next course */ row = mysql_fetch_row (mysql_res); @@ -681,9 +681,9 @@ static void Ind_ShowTableOfCoursesWithIndicators (const struct Ind_Indicators *I /***** List courses *****/ mysql_data_seek (mysql_res,0); - for (NumCrs = 0, Gbl.RowEvenOdd = 1; + for (NumCrs = 0; NumCrs < NumCrss; - NumCrs++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumCrs++, The_ChangeRowColor ()) { /* Get next course */ row = mysql_fetch_row (mysql_res); diff --git a/swad_institution.c b/swad_institution.c index 160b7f46..12284f00 100644 --- a/swad_institution.c +++ b/swad_institution.c @@ -188,7 +188,7 @@ void Ins_SeeInsWithPendingCtrs (void) HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /***** End table and box *****/ @@ -443,7 +443,7 @@ static void Ins_ListOneInstitutionForSeeing (struct Ins_Instit *Ins,unsigned Num HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_match.c b/swad_match.c index a4e81cb2..ca2a1f0f 100644 --- a/swad_match.c +++ b/swad_match.c @@ -401,10 +401,8 @@ static void Mch_ListOneOrMoreMatches (struct Gam_Games *Games, /***** Write rows *****/ for (NumMatch = 0, UniqueId = 1; NumMatch < NumMatches; - NumMatch++, UniqueId++) + NumMatch++, UniqueId++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = NumMatch % 2; - /***** Get match data from row *****/ Mch_GetMatchDataFromRow (mysql_res,&Match); diff --git a/swad_match_result.c b/swad_match_result.c index 0711b524..9b3f6eec 100644 --- a/swad_match_result.c +++ b/swad_match_result.c @@ -571,7 +571,7 @@ static void MchRes_ListGamesToSelect (struct Gam_Games *Games) /***** List the events *****/ for (NumGame = 0, UniqueId = 1; NumGame < Games->Num; - NumGame++, UniqueId++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumGame++, UniqueId++, The_ChangeRowColor ()) { /* Get data of this game */ Game.GamCod = Games->Lst[NumGame].GamCod; @@ -970,7 +970,7 @@ static void MchRes_ShowMchResults (struct Gam_Games *Games, /***** Free structure that stores the query result *****/ DB_FreeMySQLResult (&mysql_res); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_photo.c b/swad_photo.c index 0547d5a5..a6bc09da 100644 --- a/swad_photo.c +++ b/swad_photo.c @@ -2241,7 +2241,7 @@ static void Pho_ShowOrPrintListDegrees (struct Pho_DegPhotos *DegPhotos, /***** Get degrees *****/ for (NumDeg = 0, NumDegsNotEmpty = 0; NumDeg < NumDegs; - NumDeg++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumDeg++, The_ChangeRowColor ()) { /***** Get next degree *****/ row = mysql_fetch_row (mysql_res); diff --git a/swad_profile.c b/swad_profile.c index efa5ee66..fa313f2e 100644 --- a/swad_profile.c +++ b/swad_profile.c @@ -1191,7 +1191,7 @@ void Prf_ShowRankingFigure (MYSQL_RES **mysql_res,unsigned NumUsrs) for (NumUsr = 1, Rank = 1; NumUsr <= NumUsrs; - NumUsr++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumUsr++, The_ChangeRowColor ()) { /***** Get user and number of clicks *****/ row = mysql_fetch_row (*mysql_res); @@ -1263,7 +1263,7 @@ void Prf_GetAndShowRankingClicksPerDay (void) for (NumUsr = 1, Rank = 1; NumUsr <= NumUsrs; - NumUsr++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumUsr++, The_ChangeRowColor ()) { /***** Get user and number of clicks *****/ row = mysql_fetch_row (mysql_res); diff --git a/swad_program.c b/swad_program.c index 8f03e600..cadddce4 100644 --- a/swad_program.c +++ b/swad_program.c @@ -290,7 +290,7 @@ static void Prg_ShowAllItems (Prg_CreateOrChangeItem_t CreateOrChangeItem, HTM_TBODY_Begin (NULL); // 3rd tbody begin } - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /***** Create item at the end? *****/ @@ -514,7 +514,7 @@ static void Prg_WriteRowWithItemForm (Prg_CreateOrChangeItem_t CreateOrChangeIte /***** Change color row? *****/ if (CreateOrChangeItem == Prg_PUT_FORM_CREATE_ITEM) - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); /***** Begin row *****/ HTM_TR_Begin (NULL); diff --git a/swad_project.c b/swad_project.c index 597cb2fa..9e6816d9 100644 --- a/swad_project.c +++ b/swad_project.c @@ -1571,7 +1571,7 @@ static void Prj_ShowOneProject (struct Prj_Projects *Projects, /***** Free anchor string *****/ Frm_FreeAnchorStr (Anchor); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ @@ -1776,7 +1776,7 @@ static void Prj_ShowTableAllProjectsOneRow (struct Prj_Project *Prj) /***** End row *****/ HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_question.c b/swad_question.c index cdbed45c..5fc27df9 100644 --- a/swad_question.c +++ b/swad_question.c @@ -870,10 +870,8 @@ void Qst_ListOneOrMoreQstsForEdition (struct Qst_Questions *Questions, /***** Write rows *****/ for (QstInd = 0; QstInd < Questions->NumQsts; - QstInd++) + QstInd++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = QstInd % 2; - /***** Create test question *****/ Qst_QstConstructor (&Questions->Question); @@ -1152,10 +1150,8 @@ void Qst_ListOneOrMoreQstsForSelectionForExamSet (struct Exa_Exams *Exams, /***** Write rows *****/ for (QstInd = 0; QstInd < NumQsts; - QstInd++) + QstInd++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = QstInd % 2; - /* Create test question */ Qst_QstConstructor (&Question); @@ -1236,10 +1232,8 @@ void Qst_ListOneOrMoreQstsForSelectionForGame (struct Gam_Games *Games, /***** Write rows *****/ for (QstInd = 0; QstInd < NumQsts; - QstInd++) + QstInd++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = QstInd % 2; - /* Create test question */ Qst_QstConstructor (&Question); @@ -2147,10 +2141,8 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question) Question->Answer.Type != Qst_ANS_TEXT; for (NumOpt = 0; NumOpt < Qst_MAX_OPTIONS_PER_QUESTION; - NumOpt++) + NumOpt++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = NumOpt % 2; - AnswerHasContent = false; if (Question->Answer.Options[NumOpt].Text) if (Question->Answer.Options[NumOpt].Text[0] || // Text diff --git a/swad_question_import.c b/swad_question_import.c index 2c97c259..9fee5b5e 100644 --- a/swad_question_import.c +++ b/swad_question_import.c @@ -878,7 +878,6 @@ static void QstImp_WriteRowImportedQst (struct XMLElement *StemElem, const char *ClassStem = QuestionExists ? "TEST_TXT_LIGHT" : "TEST_TXT"; - Gbl.RowEvenOdd = NumQst % 2; NumQst++; HTM_TR_Begin (NULL); @@ -1061,4 +1060,6 @@ static void QstImp_WriteRowImportedQst (struct XMLElement *StemElem, HTM_TD_End (); HTM_TR_End (); + + The_ChangeRowColor (); } diff --git a/swad_record.c b/swad_record.c index 6d5ca09f..9b8b783f 100644 --- a/swad_record.c +++ b/swad_record.c @@ -1690,7 +1690,7 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView, /***** Fields of the record that depends on the course *****/ for (NumField = 0; NumField < Gbl.Crs.Records.LstFields.Num; - NumField++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumField++, The_ChangeRowColor ()) { ShowField = !(TypeOfView == Rec_CRS_MY_RECORD_AS_STUDENT_FORM || TypeOfView == Rec_CRS_MY_RECORD_AS_STUDENT_CHECK) || diff --git a/swad_room.c b/swad_room.c index 6ce09e12..9884f308 100644 --- a/swad_room.c +++ b/swad_room.c @@ -214,7 +214,7 @@ void Roo_SeeRooms (void) /***** Write list of rooms *****/ for (NumRoom = 0; NumRoom < Rooms.Num; - NumRoom++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumRoom++, The_ChangeRowColor ()) { HTM_TR_Begin (NULL); diff --git a/swad_statistic.c b/swad_statistic.c index c673cd5b..151023e5 100644 --- a/swad_statistic.c +++ b/swad_statistic.c @@ -1212,7 +1212,7 @@ static void Sta_ShowDetailedAccessesList (const struct Sta_Stats *Stats, /***** Write rows back *****/ for (NumRow = LastRow, UniqueId = 1; NumRow >= FirstRow; - NumRow--, UniqueId++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumRow--, UniqueId++, The_ChangeRowColor ()) { mysql_data_seek (mysql_res,(my_ulonglong) (NumRow - 1)); row = mysql_fetch_row (mysql_res); @@ -1347,7 +1347,7 @@ static void Sta_ShowNumHitsPerUsr (Sta_CountType_t CountType, /***** Write rows *****/ for (NumHit = 1, Hits.Max = 0.0; NumHit <= NumHits; - NumHit++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumHit++, The_ChangeRowColor ()) { row = mysql_fetch_row (mysql_res); diff --git a/swad_survey.c b/swad_survey.c index 3843d92e..13b13337 100644 --- a/swad_survey.c +++ b/swad_survey.c @@ -693,7 +693,7 @@ static void Svy_ShowOneSurvey (struct Svy_Surveys *Surveys, HTM_TR_End (); } - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); /***** Mark possible notification as seen *****/ if (Svy.Scope == HieLvl_CRS) // Only course surveys are notified @@ -2801,10 +2801,8 @@ static void Svy_ListSvyQuestions (struct Svy_Surveys *Surveys, /***** Write questions one by one *****/ for (NumQst = 0; NumQst < NumQsts; - NumQst++) + NumQst++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = (int) (NumQst % 2); - /* Initialize question to zero */ Svy_InitQst (&SvyQst); diff --git a/swad_syllabus.c b/swad_syllabus.c index 2341d47c..d2e82675 100644 --- a/swad_syllabus.c +++ b/swad_syllabus.c @@ -758,7 +758,7 @@ static void Syl_ShowRowSyllabus (struct Syl_Syllabus *Syllabus,unsigned NumItem, /***** End of the row *****/ HTM_TR_End (); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ diff --git a/swad_test_print.c b/swad_test_print.c index 2e7d04f1..f7b0438c 100644 --- a/swad_test_print.c +++ b/swad_test_print.c @@ -231,10 +231,8 @@ void TstPrn_ShowTestPrintToFillIt (struct TstPrn_Print *Print, /***** Write one row for each question *****/ for (QstInd = 0; QstInd < Print->NumQsts.All; - QstInd++) + QstInd++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = QstInd % 2; - /* Create test question */ Qst_QstConstructor (&Question); Question.QstCod = Print->PrintedQuestions[QstInd].QstCod; @@ -547,10 +545,8 @@ void TstPrn_ShowPrintAfterAssess (struct TstPrn_Print *Print) for (QstInd = 0; QstInd < Print->NumQsts.All; - QstInd++) + QstInd++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = QstInd % 2; - /***** Create test question *****/ Qst_QstConstructor (&Question); Question.QstCod = Print->PrintedQuestions[QstInd].QstCod; @@ -2051,7 +2047,7 @@ static void TstPrn_ShowUsrPrints (struct UsrData *UsrDat) /***** Free structure that stores the query result *****/ DB_FreeMySQLResult (&mysql_res); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } /*****************************************************************************/ @@ -2474,10 +2470,8 @@ void TstPrn_ShowPrintAnswers (struct UsrData *UsrDat, for (QstInd = 0; QstInd < NumQsts; - QstInd++) + QstInd++, The_ChangeRowColor ()) { - Gbl.RowEvenOdd = QstInd % 2; - /***** Create test question *****/ Qst_QstConstructor (&Question); Question.QstCod = PrintedQuestions[QstInd].QstCod; diff --git a/swad_theme.c b/swad_theme.c index eb120ebf..f06ed55f 100644 --- a/swad_theme.c +++ b/swad_theme.c @@ -460,6 +460,8 @@ The_Theme_t The_GetThemeFromStr (const char *Str) /******** Get background colors for rows depending on selected theme *********/ /*****************************************************************************/ +static unsigned The_RowEvenOdd = 0; // To alternate row colors in listings + const char *The_GetColorRows (void) { static const char *The_ClassColorRows[2][The_NUM_THEMES] = @@ -481,7 +483,12 @@ const char *The_GetColorRows (void) [1][The_THEME_DARK ] = "COLOR1_DARK", }; - return The_ClassColorRows[Gbl.RowEvenOdd][Gbl.Prefs.Theme]; + return The_ClassColorRows[The_RowEvenOdd][Gbl.Prefs.Theme]; + } + +void The_ChangeRowColor (void) + { + The_RowEvenOdd = 1 - The_RowEvenOdd; } /*****************************************************************************/ diff --git a/swad_theme.h b/swad_theme.h index 50042517..80fe8762 100644 --- a/swad_theme.h +++ b/swad_theme.h @@ -55,6 +55,7 @@ The_Theme_t The_GetParamTheme (void); The_Theme_t The_GetThemeFromStr (const char *Str); const char *The_GetColorRows (void); +void The_ChangeRowColor (void); //-------------------------------- Figures ------------------------------------ void The_GetAndShowNumUsrsPerTheme (void); diff --git a/swad_timetable.c b/swad_timetable.c index 492012b2..af914fb0 100644 --- a/swad_timetable.c +++ b/swad_timetable.c @@ -1313,7 +1313,7 @@ static void Tmt_TimeTableDrawCell (const struct Tmt_Timetable *Timetable, Tmt_IntervalType_t IntervalType,Tmt_ClassType_t ClassType, unsigned DurationNumIntervals,const char *Info) { - extern const char *The_ClassDatSmall[The_NUM_THEMES]; + extern const char *The_Colors[The_NUM_THEMES]; extern const char *Txt_All_groups; static const char *TimeTableClasses[Tmt_NUM_CLASS_TYPES] = { @@ -1378,19 +1378,19 @@ static void Tmt_TimeTableDrawCell (const struct Tmt_Timetable *Timetable, if (asprintf (&ColSpanStr,"%s","") < 0) Err_NotEnoughMemoryExit (); } - if (ClassType == Tmt_FREE) + switch (ClassType) { - if (asprintf (&ClassStr,"%s%u", - TimeTableClasses[ClassType], - WhichCell->Interval % 4) < 0) - Err_NotEnoughMemoryExit (); - } - else - { - if (asprintf (&ClassStr,"%s %s CM", - TimeTableClasses[ClassType], - The_ClassDatSmall[Gbl.Prefs.Theme]) < 0) - Err_NotEnoughMemoryExit (); + case Tmt_FREE: + if (asprintf (&ClassStr,"Tmt_CELL Tmt_FREE%u_%s", + WhichCell->Interval % 4, + The_Colors[Gbl.Prefs.Theme]) < 0) + Err_NotEnoughMemoryExit (); + break; + default: + if (asprintf (&ClassStr,"Tmt_CELL %s", + TimeTableClasses[ClassType]) < 0) + Err_NotEnoughMemoryExit (); + break; } /* Begin cell */ @@ -1439,7 +1439,7 @@ static void Tmt_TimeTableDrawCellView (const struct Tmt_Timetable *Timetable, struct GroupData GrpDat; /***** Begin cell *****/ - HTM_DIV_Begin ("class=\"Tmt_CELL Tmt_TXT\""); + HTM_DIV_Begin ("class=\"Tmt_TXT\""); /***** Course name *****/ if (Timetable->Type == Tmt_MY_TIMETABLE) diff --git a/swad_user.c b/swad_user.c index 01f7ae53..8a3947de 100644 --- a/swad_user.c +++ b/swad_user.c @@ -2560,7 +2560,8 @@ static void Usr_WriteRowAdmData (unsigned NumUsr,struct UsrData *UsrDat) HTM_TR_Begin (NULL); /***** Write number of user *****/ - HTM_TD_Begin ("class=\"USR_LIST_NUM_N CM %s\"", + HTM_TD_Begin ("class=\"CM USR_LIST_NUM_N_%s %s\"", + The_Colors[Gbl.Prefs.Theme], The_GetColorRows ()); HTM_Unsigned (NumUsr); HTM_TD_End (); @@ -4079,7 +4080,7 @@ static void Usr_ListMainDataGsts (bool PutCheckBoxToSelectUsr) /***** List guests' data *****/ for (NumUsr = 0; NumUsr < Gbl.Usrs.LstUsrs[Rol_GST].NumUsrs; - NumUsr++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumUsr++, The_ChangeRowColor ()) { /* Copy user's basic data from list */ Usr_CopyBasicUsrDataFromList (&UsrDat,&Gbl.Usrs.LstUsrs[Rol_GST].Lst[NumUsr]); @@ -4149,7 +4150,7 @@ static void Usr_ListMainDataStds (bool PutCheckBoxToSelectUsr) /***** List students' data *****/ for (NumUsr = 0; NumUsr < Gbl.Usrs.LstUsrs[Rol_STD].NumUsrs; - NumUsr++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumUsr++, The_ChangeRowColor ()) { /* Copy user's basic data from list */ Usr_CopyBasicUsrDataFromList (&UsrDat,&Gbl.Usrs.LstUsrs[Rol_STD].Lst[NumUsr]); @@ -4221,7 +4222,7 @@ static void Usr_ListMainDataTchs (Rol_Role_t Role, /***** List teachers' data *****/ for (NumUsr = 0; NumUsr < Gbl.Usrs.LstUsrs[Role].NumUsrs; - NumUsr++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumUsr++, The_ChangeRowColor ()) { /* Copy user's basic data from list */ Usr_CopyBasicUsrDataFromList (&UsrDat,&Gbl.Usrs.LstUsrs[Role].Lst[NumUsr]); @@ -4331,7 +4332,7 @@ void Usr_ListAllDataGsts (void) NumUsr++; Usr_WriteRowGstAllData (&UsrDat); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } } @@ -4530,7 +4531,7 @@ void Usr_ListAllDataStds (void) NumUsr++; Usr_WriteRowStdAllData (&UsrDat,GroupNames); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } } @@ -4594,7 +4595,7 @@ static void Usr_ListUsrsForSelection (Rol_Role_t Role, UsrDat.Accepted = Gbl.Usrs.LstUsrs[Role].Lst[NumUsr].Accepted; Usr_WriteRowUsrMainData (++NumUsr,&UsrDat,true,Role,SelectedUsrs); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } } @@ -4732,7 +4733,7 @@ static void Usr_ListRowsAllDataTchs (Rol_Role_t Role, NumUsr++; Usr_WriteRowTchAllData (&UsrDat); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } } @@ -4793,7 +4794,7 @@ unsigned Usr_ListUsrsFound (Rol_Role_t Role, /***** List data of users *****/ for (NumUsr = 0; NumUsr < NumUsrs; - NumUsr++, Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd) + NumUsr++, The_ChangeRowColor ()) { UsrInList = &Gbl.Usrs.LstUsrs[Role].Lst[NumUsr]; @@ -4978,7 +4979,7 @@ void Usr_ListDataAdms (void) UsrDat.Accepted = Gbl.Usrs.LstUsrs[Rol_DEG_ADM].Lst[NumUsr].Accepted; Usr_WriteRowAdmData (++NumUsr,&UsrDat); - Gbl.RowEvenOdd = 1 - Gbl.RowEvenOdd; + The_ChangeRowColor (); } }