diff --git a/source/ubl-settings-services.c b/source/ubl-settings-services.c
index 00a3d1f..3d1fc8a 100644
--- a/source/ubl-settings-services.c
+++ b/source/ubl-settings-services.c
@@ -1487,7 +1487,6 @@ gboolean on_tooltip_show(GtkWidget*, gint x, gint y, gboolean, GtkTooltip* toolt
GtkTreeIter iter;
if (gtk_tree_model_get_iter(model, &iter, path)) {
gchar *name, *description, *state, *name_target;
- gint64 activa, deactiva;
int size;
gtk_tree_model_get(model, &iter, 5, &name, 6, &description, 11, &state, -1);
name_target = yon_char_new(name);
@@ -1503,8 +1502,6 @@ gboolean on_tooltip_show(GtkWidget*, gint x, gint y, gboolean, GtkTooltip* toolt
yon_char_remove_last_symbol(target[1], '\n');
free(yon_char_divide_search(target[2], "=", -1));
yon_char_remove_last_symbol(target[2], '\n');
- activa = g_ascii_strtoll(target[1], NULL, 10);
- deactiva = g_ascii_strtoll(target[1], NULL, 10);
gtk_label_set_text(GTK_LABEL(widgets->UnitLabel), target[0]);
}
gtk_label_set_text(GTK_LABEL(widgets->NameLabel), name);
@@ -1516,21 +1513,35 @@ gboolean on_tooltip_show(GtkWidget*, gint x, gint y, gboolean, GtkTooltip* toolt
free(state);
if (target){
- gchar *formatted_activa = NULL;
- gchar *formatted_deactiva = NULL;
- if (activa) {
- GDateTime *datetime = g_date_time_new_from_unix_local(activa);
- formatted_activa = g_date_time_format(datetime, "%d:%m:%Y %T");
- g_date_time_unref(datetime);
- } else {
- formatted_activa = g_strdup(NULL_LABEL);
+ gchar *formatted_activa = g_strdup(NULL_LABEL);//!yon_char_is_empty(target[1])&&strcmp(target[1],"0")?target[1]:g_strdup(NULL_LABEL);
+ gchar *formatted_deactiva = g_strdup(NULL_LABEL);//!yon_char_is_empty(target[2])&&strcmp(target[2],"0")?target[2]:g_strdup(NULL_LABEL);
+ if (strcmp(target[1],"0")){
+ int activated_size;
+ config_str activated_parsed = yon_char_parse(target[1],&activated_size," ");
+ int date_size;
+ config_str date_parsed = yon_char_parse(activated_parsed[1],&date_size,"-");
+ if (date_size>2){
+ char *temp = date_parsed[0];
+ date_parsed[0]=date_parsed[2];
+ date_parsed[2]=temp;
+ formatted_deactiva = yon_char_unite(date_parsed?yon_char_parsed_to_string(date_parsed,date_size,"."):""," ",activated_parsed[2],NULL);
+ if (date_size) yon_char_parsed_free(date_parsed,date_size);
+ }
+ if (activated_size) yon_char_parsed_free(activated_parsed,activated_size);
}
- if (deactiva) {
- GDateTime *datetime = g_date_time_new_from_unix_local(deactiva);
- formatted_deactiva = g_date_time_format(datetime, "%d:%m:%Y %T");
- g_date_time_unref(datetime);
- } else {
- formatted_deactiva = g_strdup(NULL_LABEL);
+ if (strcmp(target[2],"0")){
+ int deactivated_size;
+ config_str deactivated_parsed = yon_char_parse(target[2],&deactivated_size," ");
+ int date_size;
+ config_str date_parsed = yon_char_parse(deactivated_parsed[1],&date_size,"-");
+ if (date_size>=2){
+ char *temp = date_parsed[0];
+ date_parsed[0]=date_parsed[2];
+ date_parsed[2]=temp;
+ formatted_deactiva = yon_char_unite(date_parsed?yon_char_parsed_to_string(date_parsed,date_size,"."):""," ",deactivated_parsed[2],NULL);
+ if (date_size) yon_char_parsed_free(date_parsed,date_size);
+ }
+ if (deactivated_size) yon_char_parsed_free(deactivated_parsed,deactivated_size);
}
gtk_label_set_text(GTK_LABEL(widgets->ActivateLabel), formatted_activa);
diff --git a/source/ubl-settings-services.h b/source/ubl-settings-services.h
index 1b5c73d..f5ab444 100644
--- a/source/ubl-settings-services.h
+++ b/source/ubl-settings-services.h
@@ -77,7 +77,7 @@
#define list_of_sockets_command "systemctl list-sockets --all --no-pager| sed -e 's/ */;/g'"
#define list_of_timers_command "systemctl list-timers --all --no-pager| sed -e 's/ */;/g'"
#define list_of_session_command "while IFS=\" \" read -r GET_SESSION GET_UID GET_USER GET_SEAT GET_TTY; do echo -e \"${GET_SESSION} $(loginctl session-status ${GET_SESSION} --no-page | sed -Enr \"s/^\\s*State: (.*)$/\1/p\") ${GET_UID} ${GET_USER} ${GET_SEAT} ${GET_TTY}\"; done < <(loginctl list-sessions --no-legend)"
-#define get_activate_deactivate_times(target) yon_char_append("systemctl show -p ActiveEnterTimestampMonotonic -p InactiveEnterTimestampMonotonic -p Names ",target)
+#define get_activate_deactivate_times(target) yon_char_append("systemctl show --timestamp=utc -p Names -p ActiveEnterTimestamp -p InactiveEnterTimestampMonotonic ",target)
#define config_get_command(target) yon_char_append("cat ",target)
diff --git a/ubl-settings-services.glade b/ubl-settings-services.glade
index 860abb8..3a2b971 100644
--- a/ubl-settings-services.glade
+++ b/ubl-settings-services.glade
@@ -15,15 +15,19 @@
@@ -2081,7 +2085,7 @@