From: Bastian Dehn Date: Fri, 21 Jun 2024 18:35:39 +0000 (+0200) Subject: rename main to feierabend X-Git-Tag: 1.2.0^2~19 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=b9845d5ee9966fd28be8a5294e8304b04a85bd34;p=feierabend.git rename main to feierabend --- diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 955c9c0..1c27bc5 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -13,7 +13,7 @@ CONFIGURE_FILE(config.h.in config.h) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) ADD_EXECUTABLE(${PROJECT_NAME} - main.c + feierabend.c time_format.c worktime.c break.c) \ No newline at end of file diff --git a/src/feierabend.c b/src/feierabend.c new file mode 100644 index 0000000..1a70fef --- /dev/null +++ b/src/feierabend.c @@ -0,0 +1,144 @@ +#include +#include +#include +#include "time_format.h" +#include "worktime.h" +#include "break.h" +#include "config.h" + +#define ONE_HOUR 3600 + +typedef struct { + time_t* now; + time_t* begin; + time_t* worktime; + struct tm* now_tm; + struct tm* begin_tm; + struct tm* work_end_tm; + char* weekday; + char* timestr; +} feierabend; + +void init_feierabend(feierabend* fabend) +{ + fabend->now = malloc(sizeof(time_t)); + fabend->begin = malloc(sizeof(time_t)); + fabend->worktime = malloc(sizeof(time_t)); + fabend->weekday = malloc(sizeof(char) * 11); + fabend->timestr = malloc(sizeof(char) * 7); +} + +void free_feierabend(feierabend* fabend) +{ + free(fabend->now); + free(fabend->begin); + free(fabend->worktime); + free(fabend->weekday); + free(fabend->timestr); + fabend->now = NULL; + fabend->begin = NULL; + fabend->worktime = NULL; + fabend->weekday = NULL; + fabend->timestr = NULL; +} + +int main(int argc, char* argv[]) +{ + if (argc < 3 || (argc > 3 && argc < 5)) { + printf("ERROR: %s [ }\n", argv[0]); + return 1; + } + + feierabend* fabend = malloc(sizeof(feierabend)); + init_feierabend(fabend); + + printf("Version: %s\n\n", PROJECT_VERSION); + + time(fabend->begin); + fabend->begin_tm = localtime(fabend->begin); + fabend->begin_tm->tm_hour = atoi(argv[1]); + fabend->begin_tm->tm_min = atoi(argv[2]); + *fabend->begin = mktime(fabend->begin_tm); + get_weekday(fabend->begin_tm->tm_wday, fabend->weekday); + printf("Arbeitsbeginn: %s %02d.%02d.%04d %02d:%02d\n", + fabend->weekday, + fabend->begin_tm->tm_mday, + fabend->begin_tm->tm_mon + 1, + fabend->begin_tm->tm_year + 1900, + fabend->begin_tm->tm_hour, + fabend->begin_tm->tm_min); + + time(fabend->now); + fabend->now_tm = localtime(fabend->now); + if (argc == 5) { + fabend->now_tm->tm_hour = atoi(argv[3]); + fabend->now_tm->tm_min = atoi(argv[4]); + *fabend->now = mktime(fabend->now_tm); + } + get_weekday(fabend->now_tm->tm_wday, fabend->weekday); + printf("Aktuelle Zeit: %s %02d.%02d.%04d %02d:%02d\n", + fabend->weekday, + fabend->now_tm->tm_mday, + fabend->now_tm->tm_mon + 1, + fabend->now_tm->tm_year + 1900, + fabend->now_tm->tm_hour, + fabend->now_tm->tm_min); + + printf("\n"); + + *fabend->worktime = get_eight_hour_end_worktime(*fabend->begin); + fabend->work_end_tm = localtime(fabend->worktime); + printf("Arbeitsende %02d:%02d Std: %s %02d.%02d.%04d %02d:%02d\n", + SOLL_HOUR, + SOLL_MINUTES, + fabend->weekday, + fabend->work_end_tm->tm_mday, + fabend->work_end_tm->tm_mon + 1, + fabend->work_end_tm->tm_year + 1900, + fabend->work_end_tm->tm_hour, + fabend->work_end_tm->tm_min); + + *fabend->worktime = get_ten_hour_end_worktime(*fabend->begin); + fabend->work_end_tm = localtime(fabend->worktime); + printf("Arbeitsende 10:00 Std: %s %02d.%02d.%04d %02d:%02d\n", + fabend->weekday, + fabend->work_end_tm->tm_mday, + fabend->work_end_tm->tm_mon + 1, + fabend->work_end_tm->tm_year + 1900, + fabend->work_end_tm->tm_hour, + fabend->work_end_tm->tm_min); + + printf("\n"); + + *fabend->worktime = get_brutto_worktime(*fabend->begin, *fabend->now); + get_time_str(*fabend->worktime, fabend->timestr); + printf("%-26s% 6s\n", "Brutto Arbeitzeit:", fabend->timestr); + + *fabend->worktime = get_current_worktime(*fabend->begin, *fabend->now); + get_time_str(*fabend->worktime, fabend->timestr); + printf("%-26s% 6s\n", "Netto Arbeitzeit:", fabend->timestr); + + *fabend->worktime = get_brutto_worktime(*fabend->begin, *fabend->now); + *fabend->worktime = get_break_time(*fabend->worktime); + get_time_str(*fabend->worktime, fabend->timestr); + printf("%-26s% 6s\n", "Aktuelle Pausenzeit:", fabend->timestr); + + printf("\n"); + + *fabend->worktime = get_current_worktime_diff_to_end_eight_hour(*fabend->begin, *fabend->now); + get_time_str(*fabend->worktime, fabend->timestr); + printf("Arbeitzeit bis %02d:%02d Std: % 6s\n", + SOLL_HOUR, + SOLL_MINUTES, + fabend->timestr); + + *fabend->worktime = get_current_worktime_diff_to_end_ten_hour(*fabend->begin, *fabend->now); + get_time_str(*fabend->worktime, fabend->timestr); + printf("Arbeitzeit bis 10:00 Std: % 6s\n", fabend->timestr); + + free_feierabend(fabend); + free(fabend); + fabend = NULL; + + return 0; +} \ No newline at end of file diff --git a/src/main.c b/src/main.c deleted file mode 100644 index 1a70fef..0000000 --- a/src/main.c +++ /dev/null @@ -1,144 +0,0 @@ -#include -#include -#include -#include "time_format.h" -#include "worktime.h" -#include "break.h" -#include "config.h" - -#define ONE_HOUR 3600 - -typedef struct { - time_t* now; - time_t* begin; - time_t* worktime; - struct tm* now_tm; - struct tm* begin_tm; - struct tm* work_end_tm; - char* weekday; - char* timestr; -} feierabend; - -void init_feierabend(feierabend* fabend) -{ - fabend->now = malloc(sizeof(time_t)); - fabend->begin = malloc(sizeof(time_t)); - fabend->worktime = malloc(sizeof(time_t)); - fabend->weekday = malloc(sizeof(char) * 11); - fabend->timestr = malloc(sizeof(char) * 7); -} - -void free_feierabend(feierabend* fabend) -{ - free(fabend->now); - free(fabend->begin); - free(fabend->worktime); - free(fabend->weekday); - free(fabend->timestr); - fabend->now = NULL; - fabend->begin = NULL; - fabend->worktime = NULL; - fabend->weekday = NULL; - fabend->timestr = NULL; -} - -int main(int argc, char* argv[]) -{ - if (argc < 3 || (argc > 3 && argc < 5)) { - printf("ERROR: %s [ }\n", argv[0]); - return 1; - } - - feierabend* fabend = malloc(sizeof(feierabend)); - init_feierabend(fabend); - - printf("Version: %s\n\n", PROJECT_VERSION); - - time(fabend->begin); - fabend->begin_tm = localtime(fabend->begin); - fabend->begin_tm->tm_hour = atoi(argv[1]); - fabend->begin_tm->tm_min = atoi(argv[2]); - *fabend->begin = mktime(fabend->begin_tm); - get_weekday(fabend->begin_tm->tm_wday, fabend->weekday); - printf("Arbeitsbeginn: %s %02d.%02d.%04d %02d:%02d\n", - fabend->weekday, - fabend->begin_tm->tm_mday, - fabend->begin_tm->tm_mon + 1, - fabend->begin_tm->tm_year + 1900, - fabend->begin_tm->tm_hour, - fabend->begin_tm->tm_min); - - time(fabend->now); - fabend->now_tm = localtime(fabend->now); - if (argc == 5) { - fabend->now_tm->tm_hour = atoi(argv[3]); - fabend->now_tm->tm_min = atoi(argv[4]); - *fabend->now = mktime(fabend->now_tm); - } - get_weekday(fabend->now_tm->tm_wday, fabend->weekday); - printf("Aktuelle Zeit: %s %02d.%02d.%04d %02d:%02d\n", - fabend->weekday, - fabend->now_tm->tm_mday, - fabend->now_tm->tm_mon + 1, - fabend->now_tm->tm_year + 1900, - fabend->now_tm->tm_hour, - fabend->now_tm->tm_min); - - printf("\n"); - - *fabend->worktime = get_eight_hour_end_worktime(*fabend->begin); - fabend->work_end_tm = localtime(fabend->worktime); - printf("Arbeitsende %02d:%02d Std: %s %02d.%02d.%04d %02d:%02d\n", - SOLL_HOUR, - SOLL_MINUTES, - fabend->weekday, - fabend->work_end_tm->tm_mday, - fabend->work_end_tm->tm_mon + 1, - fabend->work_end_tm->tm_year + 1900, - fabend->work_end_tm->tm_hour, - fabend->work_end_tm->tm_min); - - *fabend->worktime = get_ten_hour_end_worktime(*fabend->begin); - fabend->work_end_tm = localtime(fabend->worktime); - printf("Arbeitsende 10:00 Std: %s %02d.%02d.%04d %02d:%02d\n", - fabend->weekday, - fabend->work_end_tm->tm_mday, - fabend->work_end_tm->tm_mon + 1, - fabend->work_end_tm->tm_year + 1900, - fabend->work_end_tm->tm_hour, - fabend->work_end_tm->tm_min); - - printf("\n"); - - *fabend->worktime = get_brutto_worktime(*fabend->begin, *fabend->now); - get_time_str(*fabend->worktime, fabend->timestr); - printf("%-26s% 6s\n", "Brutto Arbeitzeit:", fabend->timestr); - - *fabend->worktime = get_current_worktime(*fabend->begin, *fabend->now); - get_time_str(*fabend->worktime, fabend->timestr); - printf("%-26s% 6s\n", "Netto Arbeitzeit:", fabend->timestr); - - *fabend->worktime = get_brutto_worktime(*fabend->begin, *fabend->now); - *fabend->worktime = get_break_time(*fabend->worktime); - get_time_str(*fabend->worktime, fabend->timestr); - printf("%-26s% 6s\n", "Aktuelle Pausenzeit:", fabend->timestr); - - printf("\n"); - - *fabend->worktime = get_current_worktime_diff_to_end_eight_hour(*fabend->begin, *fabend->now); - get_time_str(*fabend->worktime, fabend->timestr); - printf("Arbeitzeit bis %02d:%02d Std: % 6s\n", - SOLL_HOUR, - SOLL_MINUTES, - fabend->timestr); - - *fabend->worktime = get_current_worktime_diff_to_end_ten_hour(*fabend->begin, *fabend->now); - get_time_str(*fabend->worktime, fabend->timestr); - printf("Arbeitzeit bis 10:00 Std: % 6s\n", fabend->timestr); - - free_feierabend(fabend); - free(fabend); - fabend = NULL; - - return 0; -} \ No newline at end of file