]> gitweb.hhaalo.de Git - feierabend.git/commitdiff
add set time method
authorBastian Dehn <hhaalo@arcor.de>
Sun, 9 Feb 2025 10:49:40 +0000 (11:49 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 9 Feb 2025 10:49:40 +0000 (11:49 +0100)
src/feierabend.c

index 3bee416340911f408644a1a4eab971230bdfc098..48f31e5722f1478452c056e93b5afd8dbd9d2db8 100644 (file)
@@ -59,6 +59,17 @@ void print_german_long_date(struct tm* time_info)
        weekday = NULL;
 }
 
+void set_time(time_t* value, struct tm* tm_value, int hour, int minutes)
+{
+       time(value);
+
+       localtime_r(value, tm_value);
+       tm_value->tm_hour = hour;
+       tm_value->tm_min = minutes;
+
+       *value = mktime(tm_value);
+}
+
 int main(int argc, char* argv[])
 {
        if (argc < 3 || (argc > 3 && argc < 5)) {
@@ -70,19 +81,12 @@ int main(int argc, char* argv[])
 
        printf("Version: %s\n\n", PROJECT_VERSION);
 
-       time(fabend->begin);
-       localtime_r(fabend->begin, fabend->begin_tm);
-       fabend->begin_tm->tm_hour = atoi(argv[1]);
-       fabend->begin_tm->tm_min = atoi(argv[2]);
-       *fabend->begin = mktime(fabend->begin_tm);
+       set_time(fabend->begin, fabend->begin_tm,  atoi(argv[1]),  atoi(argv[2]));
 
        time(fabend->now);
        localtime_r(fabend->now, fabend->now_tm);
-       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);
-       }
+       if (argc == 5)
+               set_time(fabend->now, fabend->now_tm, atoi(argv[3]), atoi(argv[4]));
 
        *fabend->worktime = get_eight_hour_end_worktime(*fabend->begin);
        localtime_r(fabend->worktime, fabend->work_end_tm);